/* Shared mobile presentation with the WeChat mini program; business logic stays in existing scripts. */
body:is([data-violin-display="home"],[data-violin-display="course"],[data-violin-display="audio"],[data-violin-display="store"]){padding-left:0!important;padding-right:0!important}
body[data-violin-display]>.profile-header{box-sizing:border-box;width:min(1180px,calc(100% - 32px))!important;margin:0 auto!important;padding:0!important}
body[data-violin-display]>.notice-bar{box-sizing:border-box;width:100%!important;max-width:none!important;margin:10px 0 0!important;padding:8px 12px!important;line-height:1.5;font-size:14px}
body[data-violin-display]>.search-bar{box-sizing:border-box;width:min(1180px,calc(100% - 32px))!important;margin:12px auto 0!important}
body[data-violin-display]>.search-bar+.violin-section-heading{margin-top:12px!important}
body[data-violin-display="audio"]>.content-wrapper{box-sizing:border-box;width:min(1180px,calc(100% - 32px))!important;margin:12px auto 0!important;padding:0!important;display:flow-root}
body[data-violin-display="audio"]>.search-bar+.content-wrapper>.violin-section-heading{margin-top:0!important}
body[data-violin-display="course"]>.violin-section-heading,body[data-violin-display="store"]>.violin-section-heading{box-sizing:border-box;width:min(1180px,calc(100% - 32px))!important;margin-left:auto!important;margin-right:auto!important}
body.violin-home #homeCarousel{box-sizing:border-box;width:min(1180px,calc(100% - 32px));aspect-ratio:1672/941;height:auto;margin:12px auto 0;align-items:stretch}
body.violin-home #homeCarousel .swiper-slide{height:100%;aspect-ratio:1672/941}
body.violin-home #homeCarousel :is(img,video){display:block;width:100%;height:100%!important;max-height:none;aspect-ratio:1672/941;object-fit:contain;object-position:center;background:#eae2d8}
body.violin-home #bannerDots{margin:0 auto;gap:0}
body.violin-home #bannerDots .dot{flex:0 0 10px;width:10px;height:18px}
body.violin-home #bannerDots .dot::before{width:5px;height:5px}
body.violin-home #bannerDots .dot.active{flex-basis:20px;width:20px}
body.violin-home #bannerDots .dot.active::before{width:15px}
body.violin-home #homeHighlights{box-sizing:border-box;width:calc(100% - 32px);max-width:400px;margin:0 auto;padding:0;gap:6px 8px}
body.violin-home #homeCourses{box-sizing:border-box;width:min(1180px,calc(100% - 32px));margin:0 auto;padding:0;display:flow-root}
body.violin-home #homeCourses>.violin-section-heading{margin-top:12px}
body.violin-detail-page>:is(.bottom-toolbar,.action-bar){box-sizing:border-box;width:min(1180px,calc(100% - 32px))!important;min-height:72px;padding:12px!important;border:1px solid #eee8e0!important;border-radius:16px!important;margin-left:auto!important;margin-right:auto!important;box-shadow:0 2px 8px #0000000d!important}
body.violin-detail-page .toolbar-left{margin-left:0!important;margin-right:10px!important;gap:8px!important}
body.violin-detail-page .toolbar-icon-btn{min-width:38px;min-height:46px}
body.violin-detail-page .toolbar-right{gap:8px;flex-wrap:nowrap;min-width:0;margin-right:8px}
body.violin-detail-page .toolbar-right button{min-width:0;min-height:44px;font-size:clamp(11px,3.2vw,14px)}
@media(min-width:900px){body.violin-home #homeHighlights{max-width:760px}body[data-violin-display]>.notice-bar{width:min(1180px,calc(100vw - 48px))!important;margin-left:auto!important;margin-right:auto!important}}

html body[data-violin-display]>.bottom-nav,html body[data-violin-display]>.footer,html body.violin-detail-page>.bottom-nav,html body.violin-detail-page>.footer{box-sizing:border-box;width:min(1180px,calc(100% - 32px))!important}
body.violin-detail-page{--violin-detail-width:min(1180px,calc(100% - 32px))}

/* Physical detail: same two icons as digital content, one full-width purchase CTA. */
body.violin-detail-product>.action-bar{gap:10px!important}
body.violin-detail-product .action-left{gap:8px;margin:0;flex:0 0 auto}
body.violin-detail-product .action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:38px;min-height:46px;padding:0;border:0;background:transparent;box-shadow:none;border-radius:0;font:inherit;font-size:12px;line-height:18px;color:#5a4e44;white-space:nowrap}
body.violin-detail-product .action-btn svg{display:block;width:26px;height:26px}
body.violin-detail-product .action-right{flex:1;min-width:0;margin:0}
body.violin-detail-product .action-right .btn-buy{display:block;width:100%;min-width:0;min-height:44px;padding:10px 0;font-size:14px;line-height:1.6;border-radius:30px;box-shadow:0 2px 8px #8b3a3a26}

/* Keep detail cards at one 16px rhythm, including an empty contact footer. */
html body.violin-detail-page.violin-footer-layout>.footer{width:min(1180px,calc(100% - 32px))!important;margin-bottom:0!important}
html body.violin-detail-product>.detail-gallery{margin-bottom:0!important}
html body.violin-detail-product>.action-bar{margin-top:16px!important}
