:root{-webkit-text-size-adjust:100%;text-size-adjust:100%;--blue:#193d75;--ink:#202329;--muted:#747573;--paper:#fefefe;--cream:#f2ece3;--line:#e9e7e2;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--nav-height:58px;--nav-gap:14px;--nav-offset:max(8px,var(--safe-bottom));--serif:'Khean Serif','Noto Serif SC',serif;font-family:'Khean Sans','Noto Sans SC',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}svg{width:22px;height:22px;flex-shrink:0}h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:5px}a:active,button:active{opacity:.78}button{cursor:pointer}#main:focus{outline:0}.site-shell{position:fixed;inset:0;width:100%;max-width:520px;margin:0 auto;background:var(--paper);display:flex;flex-direction:column;padding-top:var(--safe-top);padding-bottom:calc(var(--nav-height) + var(--nav-gap) + var(--nav-offset))}.skip-link{position:fixed;z-index:10;top:-60px;left:15px;background:white;padding:10px}.skip-link:focus{top:10px}.page-content{flex:1;min-height:0;overflow-y:auto;overflow-x:clip;overscroll-behavior-y:contain}#main{padding-bottom:14px;overflow-x:clip}.brand{height:106px;padding:20px 27px 0;display:flex;justify-content:flex-end;align-items:flex-start;position:relative;z-index:1;pointer-events:none}.brand[hidden]{display:none}.hero{height:auto;min-height:284px;padding-bottom:12px;position:relative;overflow:visible;isolation:isolate}.hero-image{mix-blend-mode:darken;mask-image:linear-gradient(to right,transparent,#000 23%,#000 74%,transparent),linear-gradient(to bottom,transparent,#000 3%,#000 96%,transparent);mask-composite:intersect;position:absolute;width:400px;height:400px;max-width:none;object-fit:contain;right:-4px;top:-107px;z-index:-1}.hero-copy{position:relative;margin-left:27px;padding-top:6px;max-width:220px;transform:none}.eyebrow{font-size:11px;font-weight:500;letter-spacing:2px;line-height:16px;margin-bottom:12px}.hero h1{font-family:var(--serif);font-weight:700;font-size:44px;line-height:1.14;letter-spacing:.5px;color:#14171b}.hero-description{margin-top:22px;font-size:14px;line-height:1.65;color:#62635f}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--blue);color:white;padding:0 22px;min-height:44px;border-radius:28px;font-size:14px;margin-top:15px}.button svg{width:18px;height:18px}.button.secondary{color:var(--blue);border:1px solid #d6dce5;background:white}.home-content{padding:0 18px}.beginner-card{display:flex;align-items:center;justify-content:space-between;min-height:83px;padding:14px 19px;background-color:var(--cream);background-image:linear-gradient(to right,var(--cream) 35%,transparent 85%),url("./assets/bamboo.webp");background-size:100% 100%,auto 100%;background-position:right;background-repeat:no-repeat;border-radius:11px;gap:12px}.beginner-card h2{font:700 22px/1.3 var(--serif);letter-spacing:.3px}.beginner-card p{font-size:15px;color:#77746e;margin-top:5px}.round-arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.product-card{min-width:0;overflow:hidden;border-radius:11px;background:#fff;box-shadow:0 2px 8px #3f312009}.product-image{height:150px;padding:8px;background:#f0ede7;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:darken}.image-pending{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:#78736b;text-align:center;padding:8px}.image-pending>span{font-size:12px}.image-pending small{font-size:10px;line-height:1.6;color:#807b73}.listen-entry{margin-top:12px;background-image:none}.bottom-nav{position:fixed;left:0;right:0;bottom:var(--nav-offset);flex-shrink:0;z-index:5;margin:0 auto;width:calc(100% - 100px);max-width:350px;min-width:260px;min-height:58px;height:auto;border-radius:40px;background:#fff;box-shadow:0 7px 25px #3c31281c;display:grid;grid-template-columns:repeat(4,1fr);padding:7px 9px 3px;border:1px solid #f0eeeb}.bottom-nav a{display:flex;align-items:center;justify-content:flex-start;flex-direction:column;position:relative;font-size:10px;gap:3px;color:#5e5e59;min-height:44px}.bottom-nav svg{width:22px;height:22px}.bottom-nav a[aria-current]{color:var(--blue)}.bottom-nav a[aria-current] svg:has(path){fill:#193d7510}.bottom-nav a[aria-current] i{position:absolute;bottom:0;width:3px;height:3px;border-radius:50%;background:var(--blue)}.inner-page{padding:9px 23px 20px}.page-heading{margin:12px 0 24px}.page-heading h1{font:700 28px/1.35 var(--serif);letter-spacing:.6px}.page-heading p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:9px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.catalog-grid .product-image{height:190px}.back-link{font-size:13px;color:var(--muted);display:inline-flex;align-items:center;min-height:44px;margin-bottom:10px}.detail-image{height:330px;background:#f1efe9;border-radius:16px;overflow:hidden}.detail-image img{width:100%;height:100%;object-fit:contain}.detail-image .image-pending span{font-size:20px}.detail-image .image-pending small{font-size:14px}.image-note{font-size:11px;color:var(--muted);margin:8px 0 22px}.price{font-size:14px;color:var(--muted);padding:0 0 20px}.price strong{font-size:20px;color:var(--ink);font-weight:500;margin-left:10px}.detail-section{padding:24px 0;border-top:1px solid var(--line)}.detail-section h2,.notice h2{font-size:18px;font-weight:600;margin-bottom:10px}.muted{font-size:14px;line-height:1.8;color:var(--muted)}dl{margin:12px 0 0}dl>div{display:flex;justify-content:space-between;font-size:14px;padding:11px 0}dt{color:var(--muted)}dd{margin:0}.tone-options{display:flex;gap:10px;margin:27px 0 24px}.tone-button{min-width:0;white-space:nowrap;padding-inline:4px;min-height:46px;flex:1;border:1px solid #e0e0db;background:#fff;border-radius:26px;color:#4d514f;font-size:16px}.tone-button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}.notice{background:#f4f2ee;padding:30px 22px;border-radius:14px;min-height:165px;display:flex;justify-content:center;flex-direction:column}.notice h2{font-size:17px}.notice p{font-size:14px;color:var(--muted);line-height:1.9}.footnote{font-size:12px;color:var(--muted);line-height:1.9;margin-top:22px}.context-note{font-size:13px;padding:12px;background:var(--cream);border-radius:8px}.inner-page>.button{margin-right:5px}.video-panel video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 38%;background:#17191c}.related-products{margin-top:16px}.related-products a{display:flex;align-items:center;justify-content:space-between;padding:12px 0;font-size:14px}
@media(min-width:440px){.hero-copy{margin-left:30px}.hero-image{right:3px;width:400px;height:400px;top:-107px}.hero h1{font-size:44px}.hero-description{font-size:15px}.hero{min-height:284px}}
@media(max-width:374px){.hero-copy{margin-left:22px}.hero h1{font-size:42px}.hero-description{font-size:13px}.hero-image{right:-17px;width:400px;height:400px;top:-107px}.home-content{padding:0 16px}.product-grid{gap:7px}.bottom-nav{width:calc(100% - 76px)}}
@media(prefers-reduced-motion:no-preference){a,button{transition:opacity .15s,background-color .15s}}

/* 主图按参考向右出血，裁切仅发生在手机画布边界。 */
.site-shell{overflow-x:clip}.hero-image{right:calc(-70px - 5%)}
@media(min-width:440px){.hero-image{right:calc(-56px - 5%)}}
@media(max-width:374px){.hero-image{right:calc(-74px - 5%)}}
.image-pending small{color:#625e57}.beginner-card p{color:#6a665e}

@media(min-width:375px) and (max-width:389px){.hero h1{font-size:42px}}

.explore-button{font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;font-size:14px;font-weight:400;letter-spacing:normal;line-height:normal;color:#fff;width:128px;height:44px;flex-shrink:0}

/* 首页功能卡统一紧凑排列，教程页沿用原有卡片。 */
.home-content{display:flex;flex-direction:column;gap:9px}
.home-content .beginner-card{min-height:64px;padding-block:8px;margin-top:0;background:#fff;border:1px solid #000;border-radius:17px;box-shadow:none}
.home-content .beginner-card>div{min-width:0;flex:1}
.home-content .round-arrow{width:22px;height:22px;background:none;border-radius:0;flex-shrink:0}
.home-content .beginner-card h2{font-size:19px;line-height:1.25}
.home-content .beginner-card p{font-size:13px;line-height:1.45;margin-top:3px}

.hero .explore-button{margin-top:24px}
/* 只预留导航实际占位；安全区只在导航底部距离中计算一次。 */
body:has(.hero){--nav-gap:10px}

@media(max-width:389px){.hero{min-height:264px}.hero-copy{padding-top:6px}.hero-image{width:380px;height:380px;right:calc(-60px - 5%)}}

.tone-button[data-tone="other"]{font-size:12.8px}

.listen-page .tone-options{margin:0 0 18px}
.video-card{position:relative;flex:1;min-height:240px;container:listen-video / size;overflow:hidden;border-radius:16px;background:#17191c}
.video-start{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;appearance:none}
.video-start[hidden]{display:none}
.video-start img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.video-play-icon{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fffffff2;color:#202329;box-shadow:0 2px 12px #00000018}
.video-play-icon svg{width:23px;height:23px;margin-left:1px}
.video-caption{margin-top:13px;font-size:14px;font-weight:500;line-height:1.6;color:var(--ink)}
.video-empty{padding:24px 0;font-size:14px;color:var(--muted);line-height:1.7}

.video-start:focus-visible{outline:3px solid var(--blue);outline-offset:-4px}

#main:has(>.listen-page){min-height:100%;display:flex;flex-direction:column}
.listen-page{display:flex;flex-direction:column;flex:1;padding-bottom:4px}
.listen-page>.page-heading,.listen-page>.tone-options,.listen-page>.context-note,.video-caption{flex-shrink:0}
.listen-page #video-content{display:flex;flex:1;min-height:0}
.listen-page .video-panel{display:flex;flex-direction:column;flex:1;min-width:0}
/* 只在轻度裁切范围内铺满；矮屏、横屏和特别修长的屏幕优先保留完整主体。 */
@container listen-video (min-aspect-ratio:2/3){.video-card>video,.video-start img{object-fit:contain}}
@container listen-video (max-aspect-ratio:1/2){.video-card>video,.video-start img{object-fit:contain}}

.basic-detail dl>div{gap:18px;align-items:baseline}
.basic-detail dt{flex-shrink:0}
.basic-detail dd{text-align:right;line-height:1.7;min-width:0}
.basic-detail .product-introduction{margin:16px 0 0;border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.basic-detail .product-introduction img{width:100%;height:auto;object-fit:contain}



.purchase-page .purchase-card{display:flex;align-items:center;gap:14px;padding:20px 18px;background:#fff;border:1px solid #d8d8d8;border-radius:18px}
.purchase-page .purchase-card>img{width:44px;height:44px;object-fit:contain;flex-shrink:0;border-radius:10px}
.purchase-page .purchase-card-copy{flex:1;min-width:0}
.purchase-page .purchase-card h2{font-size:16px;font-weight:600;line-height:1.5}
.purchase-page .purchase-card p{margin-top:5px;font-size:13px;line-height:1.65;color:var(--muted)}
.purchase-page .purchase-card>svg{width:20px;height:20px}
.purchase-page .purchase-copy{display:block;min-height:44px;margin-top:4px;padding:0;border:0;background:none;color:var(--blue);font-size:13px}
.purchase-page .purchase-link-fallback{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:16px;color:var(--ink);background:#fff}

/* 产品选购页：仅调整此页，原有详情和导航保持不变。 */
.configurator{padding-top:18px;background:#fff}
.configurator .configuration-photo{margin-bottom:32px;border-radius:18px;overflow:hidden}
.configurator .configuration-photo>img{width:100%;height:auto;object-fit:contain;border-radius:inherit}
.configurator fieldset{padding:0;border:0;margin:0 0 32px;min-width:0}
.configurator legend{padding:0;margin-bottom:16px;font-size:20px;line-height:1.5;font-weight:600}
.configurator legend strong{font-weight:600}.configurator legend span{color:#8a8a8e}
.configuration-choices{display:grid;gap:10px}
.configuration-choice{position:relative;display:flex;align-items:center;gap:12px;min-height:68px;padding:16px 18px;border:1px solid #d8d8d8;border-radius:18px;background:#fff;cursor:pointer}
.configuration-choice:has(input:checked){border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.configuration-choice:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:4px}
.configuration-choice input{position:absolute;width:1px;height:1px;opacity:0}
.choice-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
.choice-name{font-size:16px;line-height:1.5;font-weight:600}
.choice-description,.choice-detail{font-size:13px;line-height:1.6;color:#62635f}
.choice-detail{flex-shrink:0;text-align:right}
.configuration-summary{padding:0 0 4px}
.configuration-summary h2{font-size:18px;line-height:1.5;font-weight:600;margin-bottom:10px}
.configuration-summary [data-selection-summary]{font-size:14px;line-height:1.8}
.configuration-price{margin:14px 0 10px;font-size:28px;line-height:1.3;font-weight:600;letter-spacing:-.3px}
.configurator>.button{margin:16px 0 28px}

.configurator fieldset:disabled .configuration-choice{border-color:#e5e5e5;color:#999;opacity:.65;cursor:default}
.configurator fieldset:disabled .choice-description,.configurator fieldset:disabled .choice-detail{color:inherit}
.configuration-price.is-pending{font-size:14px;font-weight:400;line-height:1.8;letter-spacing:normal;color:var(--muted)}
@media(prefers-reduced-motion:no-preference){.configuration-choice{transition:border-color .16s,color .16s,opacity .16s}.choice-description,.choice-detail{transition:color .16s}}
.configurator fieldset:disabled legend{color:#999}
.configurator fieldset:disabled legend span{color:inherit}
@media(prefers-reduced-motion:no-preference){.configurator legend,.configurator legend span{transition:color .16s}}

.configurator .choice-detail{font-size:14px;color:var(--ink);font-variant-numeric:tabular-nums}
.appearance-preview{margin:0 0 18px;border-radius:16px;overflow:hidden;background:#fafafa}
.appearance-preview img{width:100%;height:300px;object-fit:contain}
.configuration-price strong{font:inherit}
.configuration-price-caption{font-size:14px;font-weight:400;letter-spacing:normal}
.purchase-selection{margin-bottom:22px;font-size:14px;line-height:1.8}
.purchase-selection h2{font-size:16px;font-weight:600;margin-bottom:8px}
.purchase-selection p+p{margin-top:6px}

.configurator legend h1{font:inherit;letter-spacing:inherit}

.purchase-channels{display:grid;gap:16px}
.purchase-platform-note{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:20px}

/* 初学者引导沿用现有字号、白色卡片及品牌按钮，仅作用于该页面。 */
.beginner-page h1:focus{outline:none}
.faq-list{margin-top:24px}
.faq-list details{border-bottom:1px solid #ededed}
.faq-list summary{padding:17px 0;min-height:58px;font-size:14px;line-height:1.65;cursor:pointer;display:flex;gap:16px;justify-content:space-between;align-items:center;list-style:none}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'';width:6px;height:6px;flex:0 0 6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-right:3px;color:var(--muted)}
.faq-list details[open] summary::after{transform:rotate(225deg)}
@media(prefers-reduced-motion:no-preference){.faq-list summary::after{transition:transform .18s ease}}
.faq-list details>p{padding:0 24px 17px 0;color:var(--muted);font-size:13px;line-height:1.8}
.faq-list summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.beginner-progress{margin:52px 0 30px}
.beginner-progress-track{height:4px;background:var(--line);border-radius:3px;overflow:hidden}
.beginner-progress-fill{display:block;height:100%;background:var(--blue);transform-origin:left center}
@media(prefers-reduced-motion:no-preference){.beginner-progress-fill{transition:transform .2s ease}}
.beginner-form fieldset{border:0;padding:0;margin:0;min-width:0}
.beginner-form legend{padding:0;margin-bottom:24px;width:100%}
.beginner-form h1{font:700 26px/1.45 var(--serif);letter-spacing:0}
.beginner-options{display:grid;gap:12px}
.beginner-option{position:relative;display:flex;align-items:stretch;background:#fff;border:1px solid #d8d8d8;border-radius:16px;min-height:68px}
.beginner-option:has(input:checked){border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.beginner-option:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:4px}
.beginner-option label{display:flex;align-items:center;flex:1;min-width:0;cursor:pointer;padding:18px;font-size:15px;font-weight:500;line-height:1.6}
.beginner-option input{position:absolute;width:1px;height:1px;opacity:0}
.beginner-preview{display:flex;align-items:center;gap:5px;flex-shrink:0;padding:0 16px;border:0;background:transparent;color:var(--blue);font-size:13px;border-radius:16px}
.beginner-preview svg{width:19px;height:19px}
.beginner-preview[aria-pressed=true]{text-decoration:underline;text-underline-offset:4px}
.beginner-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px}
.beginner-actions .button{margin-top:0;border:1px solid transparent;cursor:pointer}
.beginner-actions .button.secondary{border-color:#d6dce5}
.beginner-page #video-content:empty{display:none}
.beginner-page #video-content{margin-top:24px;flex:none;min-height:0}
.beginner-page .video-panel{height:auto;min-height:0}
.beginner-page .video-card{height:320px;min-height:0;flex:none}
.beginner-page .video-card video,.beginner-page .video-start img{object-fit:contain;background:#17191c}
.beginner-result{padding:24px;border:1px solid #d8d8d8;border-radius:18px;background:#fff}
.beginner-result>.muted{font-size:14px;line-height:1.6}
.beginner-result h2{font-size:28px;line-height:1.5;font-weight:600;margin-top:8px}
.beginner-result-price{font-size:24px;font-weight:600;line-height:1.5;margin-top:16px}
.beginner-result-price span{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:4px}
.beginner-budget-note{font-size:14px;line-height:1.8;margin-top:20px}
@media(prefers-reduced-motion:no-preference){.beginner-option{transition:border-color .15s,box-shadow .15s}}

.beginner-option-copy{display:block;min-width:0}
.beginner-option-copy:has(.beginner-tone-description)>span{font-weight:600}
.beginner-tone-description{display:block;font-size:13px;font-weight:400;line-height:1.65;color:var(--muted);margin-top:4px}

.configurator .configuration-photo:has(+.product-guide-entry){margin-bottom:18px}
.product-guide-entry{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #e5e5e5;border-radius:16px;background:#fff;margin-bottom:28px}
.product-guide-entry>div{min-width:0;flex:1}
.product-guide-entry h2{font-size:16px;line-height:1.5;font-weight:600}
.product-guide-entry p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:5px}
.product-guide-entry>svg{width:18px;height:18px;color:var(--blue)}

.configuration-explainer{margin:-4px 0 18px;font-size:13px;line-height:1.8}
.configuration-explainer summary{display:inline-flex;align-items:center;min-height:44px;color:var(--blue);cursor:pointer;list-style:none}
.configuration-explainer summary::-webkit-details-marker{display:none}
.configuration-explainer summary::after{content:'';width:6px;height:6px;flex-shrink:0;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin:0 0 3px 9px}
.configuration-explainer[open] summary::after{transform:rotate(225deg)}
@media(prefers-reduced-motion:no-preference){.configuration-explainer summary::after{transition:transform .18s ease}}
.configuration-explainer p{color:var(--muted);margin-top:12px}
.configuration-explainer strong{color:var(--ink);font-weight:600}
.product-preorder{padding:18px;background:#f5f5f5;border-radius:16px;margin-top:16px}
.product-preorder h2{font-size:15px;line-height:1.6;font-weight:600}
.product-preorder p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:8px}

.product-tone-explainer .tone-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 14px}
.product-tone-explainer .tone-button{min-width:0;padding:9px 4px;letter-spacing:0}
.product-tone-explainer .tone-button strong{display:block;font-size:14px}
.product-tone-explainer .tone-button small{display:block;margin-top:3px;font-size:11px;font-weight:400;color:var(--muted)}
.product-tone-explainer .video-card{height:260px;min-height:0;flex:none}
.product-tone-explainer .video-card>video,.product-tone-explainer .video-start img{object-fit:contain}
.product-tone-explainer .video-caption{font-size:12px;margin:8px 0;color:var(--muted)}
.product-tone-explainer .tone-button[aria-pressed="true"] strong,.product-tone-explainer .tone-button[aria-pressed="true"] small{color:#fff}

.configurator .choice-name:has(.appearance-swatch){display:flex;align-items:center;gap:10px}
.appearance-swatch{display:inline-block;width:20px;height:20px;flex:0 0 20px;border-radius:50%;border:1px solid #00000014}
.swatch-natural{background:#C69A6B}
.swatch-black{background:#242424}
.swatch-patterned{background:linear-gradient(45deg,#D3AE78 0 50%,#765031 50% 100%)}

.beginner-price-explainer{margin:0 0 16px}
.beginner-price-explainer p{margin-top:6px}
.beginner-result-specs{font-size:14px;line-height:1.8;margin:18px 0 0}
.beginner-result-specs>div{padding:0;display:flex;gap:16px;justify-content:space-between;margin-top:5px}
.beginner-result-specs dt{color:var(--muted);flex-shrink:0}
.beginner-result-specs dd{margin:0;text-align:right}
.beginner-result-price small{font-size:14px;font-weight:400}
.beginner-alternatives{margin-top:24px}
.beginner-alternatives h2{font-size:16px;line-height:1.6}
.beginner-alternatives>a{display:flex;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid #ededed;font-size:13px;line-height:1.7}
.beginner-alternatives span{display:inline-flex;gap:6px;align-items:center;white-space:nowrap;color:var(--blue)}
.beginner-alternatives svg{width:16px;height:16px}
.product-recommendation{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:20px}
.product-recommendation strong{font-weight:500}

.listen-page>.back-link{flex-shrink:0;align-self:flex-start}

#song-preview #video-content{margin-top:0}

.song-option #song-preview .video-card{aspect-ratio:1;height:auto;min-height:0;container-type:normal;border-radius:16px;background:#000}
.song-option #song-preview .video-card video,.song-option #song-preview .video-start img{object-fit:contain;object-position:center;background:#000}
.song-option #song-preview{margin-top:10px}

.beginner-page .product-tone-explainer .video-card{aspect-ratio:1;height:auto;min-height:0;container-type:normal;background:#000}
.beginner-page .product-tone-explainer .video-card>video,.beginner-page .product-tone-explainer .video-start img{object-fit:contain;object-position:center;background:#000}

.beginner-faq-entry{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:14px 18px;margin-top:20px;background:#f5f5f5;border-radius:16px;font-size:14px;line-height:1.6}
.beginner-faq-entry svg{width:16px;height:16px;color:var(--muted)}

.scores-page #scores-title,.maintenance-section h2{font-size:18px;font-weight:600;line-height:1.5;margin-bottom:16px}
.maintenance-section{margin-top:30px}
.maintenance-card{display:flex;align-items:center;gap:14px;padding:16px;background:#fff;border:1px solid #e3e3e3;border-radius:16px}
.maintenance-card+.maintenance-card{margin-top:12px}
.maintenance-icon{width:44px;height:44px;flex-shrink:0;object-fit:contain;border-radius:12px}
.maintenance-copy{flex:1;min-width:0}
.maintenance-copy h3{font-size:15px;font-weight:600;line-height:1.5}
.maintenance-copy p{margin-top:4px;font-size:12px;line-height:1.6;color:var(--muted)}
.maintenance-copy>span{display:block;margin-top:6px;font-size:12px;line-height:1.6;color:var(--blue)}
.maintenance-card>svg{width:18px;height:18px;color:var(--blue)}
.maintenance-card[aria-disabled=true]{cursor:default}
.scores-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px}
.score-card{min-width:0;background:#fff;border:1px solid #e3e3e3;border-radius:16px;overflow:hidden}
.score-preview{display:block;width:100%;aspect-ratio:4/3;padding:0;border:0;border-bottom:1px solid #eee;background:#fff}
.score-preview img{width:100%;height:100%;object-fit:cover;object-position:center top}
.score-preview:focus-visible{outline-offset:-4px}
.score-info{display:flex;align-items:center;min-height:80px;padding:10px 0 10px 10px}
.score-copy{min-width:0;flex:1}
.score-copy h3{font-size:13px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.score-copy p{font-size:11px;line-height:1.6;color:var(--muted);margin-top:4px}
.score-download{display:grid;place-items:center;width:44px;min-height:44px;flex-shrink:0;color:var(--blue)}
.score-download svg{width:18px;height:18px}
.score-card{cursor:pointer}
body:not(.score-keyboard) :is(.score-preview,.score-download,.score-close):focus{outline:none;box-shadow:none}
.score-viewer{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--ink);overflow:hidden;touch-action:none}
.score-viewer[open]{display:block}
body:has(.score-viewer[open])>:is(.site-shell,.bottom-nav){filter:blur(4px)}
.score-keyboard :is(.score-preview,.score-download,.score-close):focus{outline:2px solid var(--blue);outline-offset:-4px}
.score-viewer::backdrop{background:rgba(35,39,45,.22)}
.score-close{position:absolute;z-index:1;top:max(12px,var(--safe-top));right:16px;width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:var(--ink);font-size:28px;line-height:1;cursor:pointer}
.score-stage{position:absolute;inset:calc(72px + var(--safe-top)) 16px max(20px,var(--safe-bottom));touch-action:none}
.score-frame{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:16px;background:#fff;border:1px solid #e5e5e7;box-shadow:0 12px 40px rgba(0,0,0,.08);overflow:hidden}
.score-pan{position:absolute;inset:8px;overflow:hidden;touch-action:none}
.score-viewer .score-original{position:absolute;left:50%;top:50%;width:0;max-width:none;height:auto;transform-origin:center;user-select:none;-webkit-user-select:none;touch-action:none}
@media(prefers-reduced-motion:no-preference){.score-viewer[open],.score-viewer::backdrop{animation:score-reveal .2s ease-out}@keyframes score-reveal{from{opacity:0}to{opacity:1}}}
@media(max-width:339px){.scores-grid{grid-template-columns:1fr}}
