/* Taste v2.1.5 app screen directions. All rules are scoped; original stays intact.
   A at 1440: 220px frame + 8px inset + 1212px sheet; sheet padding 32px.
   B at 1440: (1440 - 1100) / 2 = 170px paired gutters.
   C at 1440: (1440 - 1200) / 2 = 120px paired gutters. */
html[data-design][data-taste]{font-size:14px!important;--bg:#f1f4f2;--surface:#fff;--ink:#232a26;--muted:#606963;--line:#e3e7e4;--green:#245e48;--soft:#f2f5f3;--win:#b53b35;--loss:#59615b;--push:#246fa0;--radius:8px;font-family:"PingFang SC","Microsoft YaHei",sans-serif;color-scheme:light}
html[data-design][data-taste] main{animation:none!important;max-width:1200px;padding:28px 32px 48px}
html[data-design][data-taste] .eyebrow{display:none}
html[data-design][data-taste] h1{font-size:24px!important;font-weight:600;letter-spacing:0;line-height:1.4;margin:0 0 6px}
html[data-design][data-taste] .page-head{margin-bottom:20px}
html[data-design][data-taste] .sub{font-size:13px;line-height:1.7;margin:0}
html[data-design][data-taste] .head-actions{padding:0}
html[data-design][data-taste] .head-actions button{height:36px;min-height:36px;font-size:12px}
html[data-design][data-taste] .masthead{background:transparent;border-bottom:1px solid var(--line);min-height:72px}
html[data-design][data-taste] .brand{color:var(--ink)}
html[data-design][data-taste] .brand svg{color:var(--green)}
html[data-design][data-taste] .brand strong{font-size:24px;letter-spacing:1px}
html[data-design][data-taste] .brand-caption{font-size:12px}
html[data-design][data-taste] .brand-caption small{display:none}
html[data-design][data-taste] .edition{font-size:12px;color:var(--muted)}
html[data-design][data-taste] nav a{font-size:14px;color:var(--muted);font-weight:400}
html[data-design][data-taste] nav a[aria-current=page]{color:var(--ink);background:transparent;border-color:var(--ink)}
html[data-design][data-taste] .design-bar{background:var(--bg);color:var(--muted);border-color:var(--line);padding:6px 24px;min-height:48px;gap:16px;font-size:12px}
html[data-design][data-taste] .design-tabs a{padding:6px 12px;min-height:36px;color:var(--muted);font-size:12px}
html[data-design][data-taste] .design-tabs a[aria-current]{background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-design][data-taste] .design-tabs a span{font-size:12px}
html[data-design][data-taste] .design-bar-label,html[data-design][data-taste] .design-stage{display:none}
html[data-design][data-taste] .design-back{font-size:12px;min-height:36px}
html[data-design][data-taste] .toolbar{background:transparent;border:0;border-radius:0;padding:0 0 16px;gap:12px 20px;margin-bottom:0;border-bottom:1px solid var(--line)}
html[data-design][data-taste] .filter{gap:6px}
html[data-design][data-taste] .filter-label,html[data-design][data-taste] label>span{font-size:12px;color:var(--muted)}
html[data-design][data-taste] .segmented{background:transparent;padding:0;gap:2px;border-radius:0}
html[data-design][data-taste] .segmented button{min-height:36px;padding:7px 10px;border-radius:5px;color:var(--muted);font-size:13px;box-shadow:none}
html[data-design][data-taste] .segmented button[aria-pressed=true]{background:var(--soft);color:var(--ink);box-shadow:none}
html[data-design][data-taste] input,html[data-design][data-taste] select,html[data-design][data-taste] textarea{background:var(--surface);color:var(--ink);border-color:#c4cdc7;font-size:13px}
html[data-design][data-taste] input::placeholder{color:var(--muted)}
html[data-design][data-taste] .search-filter{margin-left:auto}
html[data-design][data-taste] input[type=search]{width:210px;min-height:36px;height:36px}
html[data-design][data-taste] button,html[data-design][data-taste] .button{font-size:13px;box-shadow:none}
html[data-design][data-taste] button.primary,html[data-design][data-taste] .button.primary{background:var(--ink);color:var(--surface);border-color:var(--ink)}
html[data-design][data-taste] .small-button{font-size:12px}
html[data-design][data-taste] .text-button{color:var(--ink)}
html[data-design][data-taste] .active-button{color:var(--ink);background:var(--soft);border-color:var(--line)}
html[data-design][data-taste] .simple-coverage{font-size:12px;margin:12px 0 18px;color:var(--muted)}
html[data-design][data-taste] .panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:none}
html[data-design][data-taste] .panel-head{padding:16px 20px;background:transparent;border-bottom:1px solid var(--line)}
html[data-design][data-taste] .panel-head h2{font-size:15px;font-weight:600}
html[data-design][data-taste] .panel-head span,html[data-design][data-taste] .panel-head .sort-note{font-size:12px}
html[data-design][data-taste] .rules-button{font-size:12px;color:var(--muted)}
html[data-design][data-taste] .sample-tools{padding:0 20px;border-bottom:0}
html[data-design][data-taste] .qualification-tabs{gap:20px}
html[data-design][data-taste] .qualification-tabs button{font-size:14px;color:var(--muted);padding:14px 0;min-height:48px;border-radius:0;border:0;border-bottom:2px solid transparent;background:transparent;font-weight:400}
html[data-design][data-taste] .qualification-tabs button[aria-pressed=true]{background:transparent;color:var(--ink);border-bottom-color:var(--green);font-weight:600}
html[data-design][data-taste] .qualification-tabs small{font-size:12px;background:transparent;color:var(--muted);font-variant-numeric:tabular-nums}
html[data-design][data-taste] .scope-summary{background:transparent;font-size:12px;padding:10px 20px;color:var(--muted);gap:4px 16px}
html[data-design][data-taste] .scope-summary strong{font-size:12px;color:var(--ink)}
html[data-design][data-taste] .ranking-tools{padding:10px 20px;color:var(--muted);font-size:12px}
html[data-design][data-taste] .ranking-tools>span{font-size:12px}
html[data-design][data-taste] .data-table th{background:transparent!important;font-size:12px;font-weight:400;color:var(--muted);padding:10px 20px;border-bottom-color:var(--line)}
html[data-design][data-taste] .data-table td{padding:15px 20px;border-bottom-color:var(--line);height:88px}
html[data-design][data-taste] .data-table tbody tr:hover{background:transparent;outline:1px solid var(--line);outline-offset:-1px}
html[data-design][data-taste] .data-table .author-name{font-size:15px!important;font-weight:600;color:var(--ink)}
html[data-design][data-taste] .data-table .author-meta{font-size:12px;margin-top:7px;color:var(--muted);line-height:1.7;white-space:normal}
html[data-design][data-taste] .data-table .num{font-family:"Avenir Next","PingFang SC",sans-serif;font-size:18px!important;font-variant-numeric:tabular-nums}
html[data-design][data-taste] .data-table .rate-line{font-size:21px;font-weight:500}
html[data-design][data-taste] .data-table th.num{font-family:inherit;font-size:12px!important}
html[data-design][data-taste] .result-counts{gap:6px 14px}
html[data-design][data-taste] .result-count{font-size:12px;color:var(--muted);gap:3px}
html[data-design][data-taste] .result-count b{font-size:13px;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}
html[data-design][data-taste] .result-icon{width:14px;height:14px}
html[data-design][data-taste] .result-icon.win{color:var(--win)}
html[data-design][data-taste] .result-icon.loss{color:var(--loss)}
html[data-design][data-taste] .result-icon.push{color:var(--push)}
html[data-design][data-taste] .rank{font-size:13px;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}
html[data-design][data-taste] .rank-medal svg{display:none}
html[data-design][data-taste] .rank-medal{display:inline;color:var(--ink);font-size:14px;font-weight:600}
html[data-design][data-taste] .rank-medal::after{content:attr(aria-label)}
html[data-design][data-taste] .sample-warning{background:transparent;color:var(--muted);font-size:12px;line-height:1.6;padding:2px 0;white-space:normal}
html[data-design][data-taste] .count-pill{font-size:12px;background:transparent;color:var(--muted)}
html[data-design][data-taste] .data-explanation>summary,html[data-design][data-taste] .batch-review>summary,html[data-design][data-taste] .more-stats>summary{font-size:12px;color:var(--muted);min-height:44px}
html[data-design][data-taste] .inline-notice,html[data-design][data-taste] .guest-note{background:var(--soft);border-color:var(--line);color:var(--muted);font-size:13px}
html[data-design][data-taste] .footer{padding:24px 32px;max-width:1200px;font-size:12px}
html[data-design][data-taste] .footer p,html[data-design][data-taste] .footer>a:last-child{font-size:12px}
html[data-design][data-taste] .footer-brand span{display:none}
html[data-design][data-taste] .summary-rate strong{font-size:28px;font-variant-numeric:tabular-nums}
html[data-design][data-taste] .reading-note{font-size:14px;color:var(--muted)}
html[data-design][data-taste] .author-summary{background:var(--surface);border-color:var(--line)}
html[data-design][data-taste] .summary-range,html[data-design][data-taste] .total-note,html[data-design][data-taste] .source-line em,html[data-design][data-taste] .recent-label,html[data-design][data-taste] .back,html[data-design][data-taste] .reading li{font-size:12px;color:var(--muted)}
html[data-design][data-taste] .summary-top h2{font-size:16px}
html[data-design][data-taste] .insight-strip,html[data-design][data-taste] .poster-wrap{background:var(--surface);border-color:var(--line)}
html[data-design][data-taste] .insight span,html[data-design][data-taste] .insight small,html[data-design][data-taste] .refresh-time,html[data-design][data-taste] .filter-help{font-size:12px}
html[data-design][data-taste] .comparison th:first-child,html[data-design][data-taste] .comparison td:first-child{background:var(--soft)}
/* A: product-green frame; the working data lives on one white sheet. */
html[data-design][data-taste=ledger] .masthead{position:fixed;top:64px;left:0;bottom:0;width:220px;padding:24px 20px;display:flex;flex-direction:column;align-items:stretch;gap:28px;border:0}
html[data-design][data-taste=ledger] .brand{flex-wrap:wrap;gap:8px}
html[data-design][data-taste=ledger] .brand-caption{flex-basis:100%;border:0;padding:4px 0 0;margin:0}
html[data-design][data-taste=ledger] nav{display:flex;flex-direction:column;gap:4px;align-self:stretch;flex:0}
html[data-design][data-taste=ledger] nav a{width:100%;min-height:44px;padding:12px 16px;border:0;border-radius:6px}
html[data-design][data-taste=ledger] nav a[aria-current=page]{background:#e2e8e3;color:var(--ink)}
html[data-design][data-taste=ledger] .edition{margin-top:auto}
html[data-design][data-taste=ledger] main{margin:8px 8px 8px 228px;max-width:none;background:var(--surface);border:1px solid var(--line);border-radius:16px;min-height:calc(100vh - 72px)}
html[data-design][data-taste=ledger] .footer{margin-left:228px}
html[data-design][data-taste=ledger] .panel{border:0;border-radius:0;border-top:1px solid var(--line)}
/* B: 1100px centred field journal, one tonal layer, regular-weight figures. */
html[data-design][data-taste=fieldnote]{--bg:#fff;--surface:#fff;--soft:#f3f5f3;--line:#e2e6e3}
html[data-design][data-taste=fieldnote] .masthead{max-width:1164px;margin:auto;padding:0 32px;gap:48px}
html[data-design][data-taste=fieldnote] main{max-width:1164px;padding-top:32px}
html[data-design][data-taste=fieldnote] h1{font-family:"Songti SC","STSong",serif;font-size:28px!important;font-weight:600}
html[data-design][data-taste=fieldnote] .panel{border:0;border-radius:0}
html[data-design][data-taste=fieldnote] .panel-head{padding-left:0;padding-right:0;border-top:1px solid var(--ink)}
html[data-design][data-taste=fieldnote] .scope-summary{background:var(--soft)}
html[data-design][data-taste=fieldnote] .data-table .rate-line{font-size:24px;font-weight:400}
html[data-design][data-taste=fieldnote] .data-table .result-count b{font-weight:400}
html[data-design][data-taste=fieldnote] .footer{max-width:1100px;padding-left:0;padding-right:0}
/* C: neutral darks, no glow. The same 1px line marks all selected controls. */
html[data-design][data-taste=terminal]{--bg:#161616;--surface:#111;--ink:#f0f0f0;--muted:#b8b8b8;--line:#333;--green:#92bba6;--soft:#232323;--win:#f09389;--loss:#b8b8b8;--push:#7ebde4;color-scheme:dark!important}
html[data-design][data-taste=terminal] .masthead{max-width:1200px;margin:auto;padding:0 32px}
html[data-design][data-taste=terminal] .design-tabs a[aria-current]{border:0;border-bottom:1px solid var(--green);border-radius:0;background:transparent}
html[data-design][data-taste=terminal] nav a[aria-current=page]{border-bottom:1px solid var(--green)}
html[data-design][data-taste=terminal] .segmented button[aria-pressed=true],html[data-design][data-taste=terminal] .qualification-tabs button[aria-pressed=true]{border-bottom:1px solid var(--green);border-radius:0;background:transparent;color:var(--ink);font-weight:400}
html[data-design][data-taste=terminal] button,html[data-design][data-taste=terminal] .button{background:transparent;border-color:#484848;color:var(--ink)}
html[data-design][data-taste=terminal] .segmented button{border:0;border-bottom:1px solid transparent;color:var(--muted)}
html[data-design][data-taste=terminal] .text-button{border-color:transparent}
html[data-design][data-taste=terminal] input,html[data-design][data-taste=terminal] select,html[data-design][data-taste=terminal] textarea{border-color:#484848}
html[data-design][data-taste=terminal] .data-table .num,html[data-design][data-taste=terminal] .rank,html[data-design][data-taste=terminal] .result-count b,html[data-design][data-taste=terminal] .summary-rate strong{font-family:"SFMono-Regular",Menlo,Consolas,monospace}
html[data-design][data-taste=terminal] .panel{border:0;border-top:1px solid var(--line);border-radius:0}
html[data-design][data-taste=terminal] .scope-summary{border-bottom-color:var(--line)}
html[data-design][data-taste=terminal] .ranking-tools,html[data-design][data-taste=terminal] .sample-tools,html[data-design][data-taste=terminal] .scope-summary{background:var(--surface)}
html[data-design][data-taste=terminal] .source-line,html[data-design][data-taste=terminal] .reading ul,html[data-design][data-taste=terminal] .reading-note{color:var(--muted)}
html[data-design][data-taste=terminal] .source-table th:first-child,html[data-design][data-taste=terminal] .source-table td:first-child{background:var(--surface)}
html[data-design][data-taste=terminal] #toast{background:#eee;color:#111}
@media(max-width:1100px){html[data-design][data-taste] .search-filter{margin-left:0}html[data-design][data-taste=ledger] .masthead{width:180px;padding:24px 16px}html[data-design][data-taste=ledger] main{margin-left:188px;padding:24px}html[data-design][data-taste=ledger] .footer{margin-left:188px}}
@media(max-width:760px){
 html[data-design][data-taste] .design-bar{display:flex;flex-wrap:wrap;gap:0;padding:4px 12px;min-height:0}
 html[data-design][data-taste] .design-back{font-size:12px;min-height:32px}
 html[data-design][data-taste] .design-tabs{display:flex;flex:1 1 100%;gap:4px;justify-content:space-between}
 html[data-design][data-taste] .design-tabs a{flex:1;padding:4px 3px;gap:3px;min-height:44px}
 html[data-design][data-taste] .design-tabs a span{font-size:12px}html[data-design][data-taste] .design-tabs a b{display:none}
 html[data-design][data-taste] .masthead{position:relative;inset:auto;max-width:none;width:auto;padding:12px 16px 0;min-height:0;display:flex;flex-direction:row;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--line)}
 html[data-design][data-taste] .brand{margin:0 0 8px;padding:0;gap:8px;flex-wrap:nowrap}
 html[data-design][data-taste] .brand strong{font-size:22px}
 html[data-design][data-taste] .brand-caption{font-size:12px;flex-basis:auto;margin-left:6px;border-left:1px solid var(--line);padding:0 0 0 10px}
 html[data-design][data-taste] .brand-caption small{display:none}
 html[data-design][data-taste] nav{width:100%;flex-basis:100%;display:flex;flex-direction:row;flex:1 1 100%;gap:0;justify-content:space-between}
 html[data-design][data-taste] nav a{font-size:14px;min-height:44px;padding:12px 4px;border:0;border-bottom:2px solid transparent;text-align:center;border-radius:0;flex:1;width:auto}
 html[data-design][data-taste] nav a[aria-current=page]{background:transparent;border-bottom-color:var(--ink)}
 html[data-design][data-taste] .edition{display:none}
 html[data-design][data-taste] main{max-width:none;margin:0;padding:20px 16px 40px;border:0;border-radius:0;min-height:calc(100vh - 200px)}
 html[data-design][data-taste] h1{font-size:23px!important;line-height:1.4}
 html[data-design][data-taste] .page-head{margin-bottom:16px;gap:10px}
 html[data-design][data-taste] .page-head .sub{display:none}
 html[data-design][data-taste] .toolbar{padding:0 0 12px;gap:10px}
 html[data-design][data-taste] .segmented button{font-size:14px;min-height:44px;padding:8px 10px}
 html[data-design][data-taste] .search-filter{display:flex;flex:1;min-width:100px}
 html[data-design][data-taste] .advanced-filter{width:100%}
 html[data-design][data-taste] .advanced-filter summary{font-size:12px;min-height:44px}
 html[data-design][data-taste] .filter-label{display:none}
 html[data-design][data-taste] .simple-coverage{font-size:12px;margin:10px 0 12px}
 html[data-design][data-taste] .panel-head{padding:12px 4px}
 html[data-design][data-taste] .panel-head h2{font-size:14px}
 html[data-design][data-taste] .panel-head .sort-note{display:none}
 html[data-design][data-taste] .sample-tools{padding:0 4px}
 html[data-design][data-taste] .qualification-tabs button{font-size:14px;min-height:44px;padding:10px 0}
 html[data-design][data-taste] .scope-summary{padding:8px 4px;font-size:12px;line-height:1.7;gap:2px}
 html[data-design][data-taste] .scope-summary strong{font-size:12px}
 html[data-design][data-taste] .scope-summary span{flex-basis:100%}
 html[data-design][data-taste] .ranking-tools{padding:6px 4px}
 html[data-design][data-taste] .data-table th{font-size:12px;padding:8px 4px}
 html[data-design][data-taste] .data-table td{padding:14px 4px;height:98px}
 html[data-design][data-taste] .ranking-table th:first-child{width:32px;padding:0 2px}
 html[data-design][data-taste] .ranking-table th.rate-col{width:78px}
 html[data-design][data-taste] .ranking-table th.mobile-cell{width:38px}
 html[data-design][data-taste] .data-table .rank{padding:14px 2px;font-size:12px}
 html[data-design][data-taste] .rank-medal{font-size:12px}
 html[data-design][data-taste] .rank-medal::after{content:attr(data-rank)}
 html[data-design][data-taste] .medal-1::after{content:'01'}html[data-design][data-taste] .medal-2::after{content:'02'}html[data-design][data-taste] .medal-3::after{content:'03'}
 html[data-design][data-taste] .data-table .author-name{font-size:14px!important}
 html[data-design][data-taste] .data-table .author-meta{font-size:12px;line-height:1.7;margin-top:6px}
 html[data-design][data-taste] .ranking-table .result-counts{gap:4px 8px;flex-wrap:wrap}
 html[data-design][data-taste] .ranking-table .result-count{font-size:12px;gap:2px;white-space:nowrap}
 html[data-design][data-taste] .result-count b{font-size:12px}
 html[data-design][data-taste] .result-icon{width:13px;height:13px}
 html[data-design][data-taste] .data-table .rate-line{font-size:18px}
 html[data-design][data-taste] .sample-warning{font-size:12px;max-width:none}
 html[data-design][data-taste] .mobile-cell .button{min-height:44px;min-width:32px;padding:8px 4px}
 html[data-design][data-taste] .data-table .rate-col{white-space:normal}
 html[data-design][data-taste] .footer{margin:0;padding:20px 16px}
 html[data-design][data-taste] .summary-rate strong{font-size:25px}
 html[data-design][data-taste] .summary-range{font-size:12px}
 html[data-design][data-taste] .head-actions button{min-height:44px;font-size:12px}
 html[data-design][data-taste] .source-line,html[data-design][data-taste] .definition{font-size:13px}
 html[data-design][data-taste] .guest-note{font-size:12px}
 html[data-design][data-taste=fieldnote] .data-table .rate-line{font-size:20px}
}
@media(prefers-reduced-motion:reduce){html[data-design][data-taste] *{animation:none!important;transition:none!important}}
/* Keep controls available while making the first results visible on small screens. */
html[data-design][data-taste] .qualification-tabs{background:transparent;padding:0;border-radius:0}
html[data-design][data-taste] .period-buttons button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--green)}
html[data-design][data-taste] .data-table .rate-line{color:var(--ink)}
html[data-design][data-taste] .advanced-filter{padding-top:0}
html[data-design][data-taste] .advanced-filter>summary{min-height:32px}
@media(max-width:760px){
 html[data-design][data-taste] .design-bar{position:fixed;bottom:0;left:0;right:0;display:flex;flex-wrap:nowrap;min-height:56px;height:56px;gap:8px;border-top:1px solid var(--line);border-bottom:0;z-index:10}
 html[data-design][data-taste] .design-back{flex:0 0 64px;min-height:44px}
 html[data-design][data-taste] .design-tabs{flex:1;min-width:0;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;gap:4px}
 html[data-design][data-taste] .design-tabs a{flex:0 0 auto;padding:6px 10px}
 html[data-design][data-taste] .masthead{padding:0 12px;min-height:56px;gap:12px;flex-wrap:nowrap;align-items:center}
 html[data-design][data-taste] .brand{margin:0;gap:5px;flex:0 0 auto}
 html[data-design][data-taste] .brand svg{width:22px;height:22px}
 html[data-design][data-taste] .brand strong{font-size:20px}
 html[data-design][data-taste] .brand-caption{display:none}
 html[data-design][data-taste] nav{width:auto;flex:1;flex-basis:auto;gap:8px}
 html[data-design][data-taste] nav a{font-size:12px;padding:15px 0;min-height:56px}
 html[data-design][data-taste] main{padding-top:18px}
 html[data-design][data-taste] .page-head{margin-bottom:12px;min-height:44px;align-items:center}
 html[data-design][data-taste] h1{font-size:22px!important;margin:0}
 html[data-design][data-taste] .toolbar{display:flex;flex-wrap:wrap;gap:6px 10px;padding:0 0 6px}
 html[data-design][data-taste] .toolbar>.period-filter{flex:1 1 100%;order:0}
 html[data-design][data-taste] .toolbar>.sport-filter{order:1}
 html[data-design][data-taste] .toolbar>.search-filter{order:2;flex:1}
 html[data-design][data-taste] .toolbar>.advanced-filter{order:3;flex-basis:auto;width:auto;margin-left:auto;border:0}
 html[data-design][data-taste] .advanced-filter[open]{flex-basis:100%;order:4}
 html[data-design][data-taste] .advanced-filter summary{min-height:44px}
 html[data-design][data-taste] input[type=search]{width:100%;min-height:44px;height:44px;font-size:14px}
 html[data-design][data-taste] .toolbar>.search-filter{display:none}
 html[data-design][data-taste] .advanced-content .search-filter{display:flex}
 html[data-design][data-taste] .segmented button{font-size:13px;padding:8px 10px}
 html[data-design][data-taste] .simple-coverage{margin:10px 0 14px}
 html[data-design][data-taste] main[data-page=board] .panel:has(.ranking-table){position:relative}
 html[data-design][data-taste] main[data-page=board] .panel:has(.ranking-table)>.panel-head{position:absolute;right:0;top:0;border:0;padding:2px 0;background:transparent;z-index:1}
 html[data-design][data-taste] main[data-page=board] .panel:has(.ranking-table)>.panel-head h2{display:none}
 html[data-design][data-taste] .rules-button{min-height:44px;padding:8px 4px}
 html[data-design][data-taste] .sample-tools{padding-right:86px;min-height:48px}
 html[data-design][data-taste] .scope-summary strong{display:none}
 html[data-design][data-taste] .ranking-tools{min-height:48px}
 html[data-design][data-taste] .footer{padding-bottom:80px}
}
html[data-design][data-taste] .taste-extra{width:130px}
html[data-design][data-taste] td.taste-extra{font-size:16px!important;vertical-align:middle}
html[data-design][data-taste] .taste-extra small{display:block;color:var(--muted);font-family:"PingFang SC",sans-serif;font-size:12px;margin-top:6px;font-weight:400}
html[data-design][data-taste] .coverage,html[data-design][data-taste] .coverage span,html[data-design][data-taste] .coverage strong,html[data-design][data-taste] .review-expand,html[data-design][data-taste] .review-content,html[data-design][data-taste] .recent-direction,html[data-design][data-taste] .range-inputs span{font-size:12px}
html[data-design][data-taste] .result-count span{font-size:13px}
html[data-design][data-taste] .data-table .author-meta{font-size:13px}
html[data-design][data-taste] .qualification-tabs small{font-size:13px}
html[data-design][data-taste] .period-tabs button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--green)}
@media(min-width:761px){
 html[data-design][data-taste] .toolbar{gap:12px;flex-wrap:wrap}
 html[data-design][data-taste] .toolbar .period-filter{flex:1}
 html[data-design][data-taste] .toolbar .period-tabs{width:max-content;max-width:100%}
 html[data-design][data-taste] .toolbar>.advanced-filter{flex-basis:auto;border:0;margin-left:auto;padding:0}
 html[data-design][data-taste] .toolbar>.advanced-filter[open]{flex-basis:100%;border-top:1px solid var(--line);margin-left:0}
 html[data-design][data-taste] .toolbar>.advanced-filter>summary{min-height:36px}
 html[data-design][data-taste] main[data-page=board] .panel:has(.ranking-table){position:relative}
 html[data-design][data-taste] main[data-page=board] .panel:has(.ranking-table)>.panel-head{position:absolute;right:0;top:0;padding:6px 0;border:0}
 html[data-design][data-taste] main[data-page=board] .panel:has(.ranking-table)>.panel-head h2,html[data-design][data-taste] main[data-page=board] .panel-head .sort-note{display:none}
 html[data-design][data-taste] .sample-tools{padding-left:0;padding-right:110px;border-top:1px solid var(--line)}
 html[data-design][data-taste] .data-table td{padding-top:12px;padding-bottom:12px;height:88px}
 html[data-design][data-taste] .ranking-table .author-col{min-width:160px}
 html[data-design][data-taste] .ranking-table th.rate-col{width:140px}
 html[data-design][data-taste] .ranking-table th.desktop-only{width:150px}
}
@media(max-width:760px){
 html[data-design][data-taste] .taste-extra{display:none}
 html[data-design][data-taste] .data-table .author-meta{font-size:12px}
 html[data-design][data-taste] .result-count span{font-size:12px}
 html[data-design][data-taste] .design-bar{padding-left:16px;padding-right:16px}
}
html[data-design][data-taste=terminal] .skip{background:var(--ink);color:var(--surface)}
@media(min-width:761px) and (max-width:1200px){html[data-design][data-taste=fieldnote] .footer{margin:0 32px;padding-left:0;padding-right:0}}
html[data-design][data-taste] .period-tabs button[aria-pressed=true]{border-bottom-color:var(--green)!important}
html[data-design][data-taste] .taste-recency{display:none}
@media(min-width:761px){html[data-design][data-taste] .ranking-table .author-meta{display:none}html[data-design][data-taste] .taste-recency{display:block;color:var(--muted);font-size:12px;line-height:1.7;margin-top:6px}}
@media(min-width:761px) and (max-width:1100px){
 html[data-design][data-taste] .taste-extra{display:none}
 html[data-design][data-taste] .ranking-table .author-meta{display:block}
 html[data-design][data-taste] .taste-recency{display:none}
 html[data-design][data-taste=ledger] .masthead{position:relative;inset:auto;width:auto;padding:0 24px;min-height:72px;display:flex;flex-direction:row;align-items:center;gap:24px}
 html[data-design][data-taste=ledger] .brand{flex-wrap:nowrap}
 html[data-design][data-taste=ledger] .brand-caption{display:none}
 html[data-design][data-taste=ledger] nav{flex:1;flex-direction:row;align-self:stretch;align-items:center}
 html[data-design][data-taste=ledger] nav a{width:auto;min-height:44px;padding:12px}
 html[data-design][data-taste=ledger] .edition{display:none}
 html[data-design][data-taste=ledger] main{margin:8px;padding:24px}
 html[data-design][data-taste=ledger] .footer{margin:0 24px}
}
html[data-design][data-taste] .period-tabs button[aria-pressed=true]::after{height:2px;background:var(--green);border-radius:0}
html[data-design][data-taste=terminal] .period-tabs button[aria-pressed=true]::after{height:1px}
html[data-design][data-taste] .period-tabs button:hover{color:var(--ink)}
@media(max-width:760px){html[data-design][data-taste] .toolbar .period-tabs button{font-size:13px}}
html[data-design][data-taste] .comparison td{text-align:right;height:56px;padding-top:12px;padding-bottom:12px;font-variant-numeric:tabular-nums}
html[data-design][data-taste] .comparison th:not(:first-child){text-align:right}
html[data-design][data-taste] .comparison .big{font-size:24px;font-weight:400}
/* Second round: D/E/F have distinct information layouts, using the same ranked rows.
   D: 1248px canvas = 2*32px gutter + 1184px content.
   E: 1200px canvas = 2*32px gutter + (560px*2 + 16px gap).
   F: 1280px canvas = 2*32px gutter + 1216px compact ledger. */
html[data-design][data-taste] .design-tabs{min-width:0;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
html[data-design][data-taste] .design-tabs a{flex-shrink:0}
html[data-design][data-taste=pitch]{--bg:#f5f8f5;--surface:#fff;--soft:#eaf1ec;--line:#dce5de;--ink:#1d3429;--muted:#59695f;--green:#245e48}
html[data-design][data-taste=pitch] .masthead{padding:0 32px;max-width:1248px;margin:auto;min-height:80px}
html[data-design][data-taste=pitch] main{max-width:1248px}
html[data-design][data-taste=pitch] h1{font-size:30px!important;font-weight:750;letter-spacing:-1px}
html[data-design][data-taste=pitch] .panel{border:0;border-radius:0}
html[data-design][data-taste=pitch] .scope-summary{background:var(--soft)}
html[data-design][data-taste=pitch] .data-table .rank{font-size:20px;font-weight:600;color:var(--green);width:70px}
html[data-design][data-taste=pitch] .ranking-table .author-name{font-size:16px!important}
html[data-design][data-taste=pitch] .ranking-table .rate-line{font-size:27px;font-weight:650;color:var(--green)}
html[data-design][data-taste=pitch] .ranking-table th.rate-col{width:170px}
html[data-design][data-taste=pitch] .taste-rate-track{display:block;width:100%;height:5px;background:#e8eee9;margin:8px 0 0;overflow:hidden}
html[data-design][data-taste=pitch] .taste-rate-track i{display:block;height:100%;background:var(--green)}
html[data-design][data-taste=pitch] .rank-medal::after{font-size:22px}
html[data-design][data-taste=pitch] .ranking-table td{height:100px}
html[data-design][data-taste=soft]{--bg:#f7f6f3;--surface:#fff;--soft:#edf2ed;--line:#e5e5df;--ink:#303a32;--muted:#686d65;--green:#3b6651;--radius:20px}
html[data-design][data-taste=soft] .masthead{max-width:1200px;margin:auto;padding:0 32px;border:0;min-height:88px}
html[data-design][data-taste=soft] nav a[aria-current=page]{border:0;background:#e8eee7;border-radius:20px}
html[data-design][data-taste=soft] main{max-width:1200px}
html[data-design][data-taste=soft] h1{font-size:26px!important;font-weight:500}
html[data-design][data-taste=soft] .panel{background:transparent;border:0;overflow:visible}
html[data-design][data-taste=soft] .sample-tools{border:0}
html[data-design][data-taste=soft] .scope-summary{border-radius:10px;background:#eeeee8;padding:10px 14px}
html[data-design][data-taste=soft] .ranking-tools{padding-left:0;padding-right:0}
html[data-design][data-taste=soft] .ranking-table,html[data-design][data-taste=soft] .ranking-table tbody{display:block;width:100%}
html[data-design][data-taste=soft] .ranking-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
html[data-design][data-taste=soft] .ranking-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
html[data-design][data-taste=soft] .ranking-table tr{display:grid;grid-template-columns:34px minmax(0,1fr) 106px;gap:0 12px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:20px;align-items:start}
html[data-design][data-taste=soft] .ranking-table td{display:block;border:0;height:auto;padding:0;min-width:0}
html[data-design][data-taste=soft] .ranking-table td.rank{grid-row:1;grid-column:1;padding-top:2px;font-weight:400}
html[data-design][data-taste=soft] .ranking-table td:nth-child(2){grid-row:1;grid-column:2}
html[data-design][data-taste=soft] .ranking-table .author-name{font-size:16px!important;margin-bottom:6px;font-weight:500}
html[data-design][data-taste=soft] .ranking-table .author-meta{display:block;font-size:12px;line-height:1.8}
html[data-design][data-taste=soft] .ranking-table .taste-recency{display:none}
html[data-design][data-taste=soft] .ranking-table .taste-extra{display:none}
html[data-design][data-taste=soft] .ranking-table td.rate-col{grid-row:1;grid-column:3;white-space:normal;text-align:right}
html[data-design][data-taste=soft] .ranking-table .rate-line{font-size:26px;font-weight:500}
html[data-design][data-taste=soft] .ranking-table .rate-col::before{content:'开花率';display:block;color:var(--muted);font-size:12px;margin-bottom:6px}
html[data-design][data-taste=soft] .ranking-table td.desktop-only{grid-column:2/4;grid-row:2;padding-top:14px;margin-top:14px;border-top:1px solid #f0f0eb}
html[data-design][data-taste=soft] .ranking-table .row-actions{justify-content:flex-end}
html[data-design][data-taste=soft] .ranking-table td.mobile-cell{display:none}
html[data-design][data-taste=soft] .ranking-table .result-counts{flex-wrap:wrap;gap:4px 8px}
html[data-design][data-taste=soft] .ranking-table .result-count{font-size:12px}
html[data-design][data-taste=soft] .small-button{border-radius:10px}
html[data-design][data-taste=compact]{--bg:#fff;--surface:#fff;--soft:#f5f5f5;--line:#dedede;--ink:#202020;--muted:#666;--green:#202020;--radius:0}
html[data-design][data-taste=compact] .masthead{max-width:1280px;margin:auto;padding:0 32px;min-height:56px}
html[data-design][data-taste=compact] .brand strong{font-size:21px}
html[data-design][data-taste=compact] main{max-width:1280px;padding-top:20px}
html[data-design][data-taste=compact] h1{font-size:20px!important;font-weight:500}
html[data-design][data-taste=compact] .page-head{margin-bottom:14px}
html[data-design][data-taste=compact] .panel{border:0;border-radius:0}
html[data-design][data-taste=compact] .ranking-table td{height:64px;padding-top:9px;padding-bottom:9px}
html[data-design][data-taste=compact] .ranking-table .author-name{font-size:14px!important;font-weight:400}
html[data-design][data-taste=compact] .ranking-table .taste-recency{display:none}
html[data-design][data-taste=compact] .ranking-table .rate-line{font-size:20px;font-weight:400}
html[data-design][data-taste=compact] .taste-extra{width:120px}
html[data-design][data-taste=compact] .ranking-table .num,html[data-design][data-taste=compact] .result-count b{font-family:"SFMono-Regular",Menlo,monospace;font-weight:400}
html[data-design][data-taste=compact] .ranking-table .taste-extra small{display:none}
html[data-design][data-taste=compact] .ranking-table .result-counts{margin-top:5px}
html[data-design][data-taste=compact] .scope-summary{padding:8px 0}
html[data-design][data-taste=compact] .ranking-tools{padding:8px 0}
html[data-design][data-taste=compact] .small-button,html[data-design][data-taste=compact] .segmented button{border-radius:0}
html[data-design][data-taste=compact] .data-table th{padding-top:8px;padding-bottom:8px}
@media(min-width:761px){html[data-design][data-taste=soft] main[data-page=board] .panel:has(.ranking-table)>.panel-head{top:0}}
@media(max-width:1100px){html[data-design][data-taste=soft] .ranking-table tbody{grid-template-columns:1fr}}
@media(max-width:760px){
 html[data-design][data-taste=pitch] .masthead,html[data-design][data-taste=soft] .masthead,html[data-design][data-taste=compact] .masthead{min-height:56px;padding:0 12px}
 html[data-design][data-taste=pitch] h1{font-size:24px!important}
 html[data-design][data-taste=pitch] .ranking-table th.rate-col{width:88px}
 html[data-design][data-taste=pitch] .ranking-table .rate-line{font-size:21px}
 html[data-design][data-taste=pitch] .ranking-table td.rank{width:auto;font-size:12px}
 html[data-design][data-taste=pitch] .rank-medal::after{font-size:14px}
 html[data-design][data-taste=soft] nav a[aria-current=page]{border-radius:0;background:transparent;border-bottom:2px solid var(--ink)}
 html[data-design][data-taste=soft] .ranking-table tbody{gap:12px}
 html[data-design][data-taste=soft] .ranking-table tr{grid-template-columns:22px minmax(0,1fr) 78px;padding:16px 12px;gap:0 8px}
 html[data-design][data-taste=soft] .ranking-table .author-name{font-size:14px!important}
 html[data-design][data-taste=soft] .ranking-table .rate-line{font-size:20px}
 html[data-design][data-taste=soft] .ranking-table .author-meta{font-size:12px}
 html[data-design][data-taste=soft] .ranking-table td.desktop-only{display:none}
 html[data-design][data-taste=soft] .ranking-table td.mobile-cell{display:block;grid-row:2;grid-column:3;text-align:right;padding-top:8px}
 html[data-design][data-taste=soft] .ranking-table .result-counts{gap:3px 6px}
 html[data-design][data-taste=compact] .ranking-table td{height:82px;padding-top:10px;padding-bottom:10px}
 html[data-design][data-taste=compact] .ranking-table .author-meta{margin-top:4px}
 html[data-design][data-taste=compact] .ranking-table .rate-line{font-size:18px}
 html[data-design][data-taste=compact] h1{font-size:20px!important}
}
/* Card cells must stop inheriting fixed table-column widths. */
html[data-design][data-taste=soft]{--bg:#f6f6f4}
html[data-design][data-taste=soft] .ranking-table tr{grid-template-columns:44px minmax(0,1fr) 106px}
html[data-design][data-taste=soft] .ranking-table td{width:auto}
html[data-design][data-taste=soft] .ranking-table .rank{text-align:left}
html[data-design][data-taste=soft] .medal-1::after{content:'01'}
html[data-design][data-taste=soft] .medal-2::after{content:'02'}
html[data-design][data-taste=soft] .medal-3::after{content:'03'}
html[data-design][data-taste=compact] .data-table .num{font-family:"SFMono-Regular",Menlo,"PingFang SC",monospace}
@media(max-width:760px){html[data-design][data-taste=soft] .ranking-table tr{grid-template-columns:22px minmax(0,1fr) 78px}}
html[data-design][data-taste=compact] .ranking-table .rank,html[data-design][data-taste=compact] .rank-medal{font-family:"SFMono-Regular",Menlo,monospace}
/* Selected E: mobile readers first. Preview controls exist only on explicit design URLs. */
html[data-design=soft][data-design-preview=false] .masthead{min-height:72px}
@media(max-width:760px){
 html[data-design][data-taste=soft] main{padding:16px 16px 32px}
 html[data-design][data-taste=soft] h1{font-size:23px!important;font-weight:600}
 html[data-design][data-taste=soft] .ranking-table tr{grid-template-columns:22px minmax(0,1fr) 84px;padding:16px 12px;gap:0 8px}
 html[data-design][data-taste=soft] .ranking-table .author-name{font-size:15px!important;line-height:1.65;overflow-wrap:anywhere}
 html[data-design][data-taste=soft] .ranking-table .rate-line{font-size:23px;font-weight:550}
 html[data-design][data-taste=soft] .ranking-table .result-counts{gap:4px 8px;margin-top:5px}
 html[data-design][data-taste=soft] .ranking-table .result-count span,html[data-design][data-taste=soft] .ranking-table .result-count b{font-size:12px}
 html[data-design][data-taste=soft] .ranking-table td.desktop-only{display:block;grid-row:2;grid-column:1/3;padding-top:10px;margin-top:10px;border-top:1px solid #f0f0eb}
 html[data-design][data-taste=soft] .ranking-table .row-actions{justify-content:flex-start;gap:6px}
 html[data-design][data-taste=soft] .ranking-table .row-actions button{min-height:44px;min-width:64px;font-size:13px;padding:8px 12px}
 html[data-design][data-taste=soft] .ranking-table td.mobile-cell{grid-row:2;grid-column:3;padding:10px 0 0!important;margin-top:10px;border-top:1px solid #f0f0eb;align-self:stretch}
 html[data-design][data-taste=soft] .ranking-table .mobile-cell .button{width:100%;min-height:44px;font-size:16px}
 html[data-design][data-taste=soft] .ranking-tools{min-height:32px;padding:4px 0 8px}
 html[data-design][data-taste=soft] .advanced-content>[data-ranking-export]{min-height:44px;font-size:13px;justify-self:start}
 html[data-design][data-taste=soft] .footer{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
 html[data-design=soft][data-design-preview=false] .masthead{min-height:56px;padding:0 16px;border-bottom:1px solid var(--line)}
 html[data-design=soft][data-design-preview=false] .brand-caption{display:block;border:0;margin-left:8px;padding:0;font-size:12px}
 html[data-design=soft][data-design-preview=false] #navigation{position:fixed;bottom:0;left:0;right:0;z-index:20;height:calc(60px + env(safe-area-inset-bottom));padding:4px 12px calc(4px + env(safe-area-inset-bottom));gap:8px;background:#fff;border-top:1px solid var(--line);display:flex;align-items:center}
 html[data-design=soft][data-design-preview=false] #navigation a{padding:12px 8px;min-height:48px;border:0;border-radius:12px;font-size:14px;color:var(--muted)}
 html[data-design=soft][data-design-preview=false] #navigation a[aria-current=page]{background:#edf2ed;color:var(--green);font-weight:600;border:0}
 html[data-design=soft][data-design-preview=false] #toast{bottom:calc(76px + env(safe-area-inset-bottom))}
}
@media(max-width:760px){html[data-design][data-taste=soft] .ranking-table .mobile-cell .button{gap:4px;font-size:13px}html[data-design][data-taste=soft] .ranking-table .mobile-cell .button::before{content:'详情'}}
