/* Typography uses local system stacks for zero-dependency deployment. */
:root{--ink:#17211d;--muted:#68736d;--paper:#f3f5f1;--line:#d7ddd7;--green:#1f6b4c;--lime:#d9efbd;--red:#b55242;--max:1240px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,system-ui,sans-serif}a{color:inherit;text-decoration:none}.site-header{border-bottom:1px solid var(--line);background:rgba(243,245,241,.94);position:sticky;top:0;z-index:4;backdrop-filter:blur(10px)}.header-inner{max-width:var(--max);margin:auto;height:74px;display:flex;align-items:center;gap:54px;padding:0 28px}.brand{display:flex;align-items:center;gap:9px;font-size:10px;line-height:1.04;letter-spacing:.13em;font-weight:700}.brand b{letter-spacing:.19em}.brand-mark{display:grid;place-items:center;width:29px;height:29px;background:var(--ink);color:var(--lime);font:500 10px 'DM Mono';letter-spacing:-.08em}.site-header nav{display:flex;gap:26px;height:100%;align-items:center}.nav-link{font-size:12px;color:var(--muted);height:100%;display:grid;place-items:center;border-bottom:2px solid transparent}.nav-link.active,.nav-link:hover{color:var(--ink);border-bottom-color:var(--green)}.header-meta{margin-left:auto;font:11px 'DM Mono';color:var(--muted);display:flex;gap:8px;align-items:center}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #d5e6d7}.hero,.split-section,.method-section,.page-head,.table-section,.hot-section,.detail-head,.detail-grid{max-width:var(--max);margin:auto;padding-left:28px;padding-right:28px}.hero{min-height:492px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;border-bottom:1px solid var(--line)}.eyebrow,.section-kicker{font:11px 'DM Mono';letter-spacing:.1em;color:var(--green);text-transform:uppercase}.hero h1,.page-head h1{font-size:clamp(40px,4.8vw,66px);line-height:1.02;letter-spacing:-.07em;margin:19px 0 20px;max-width:700px;font-weight:700}.hero h1 em,.page-head h1 em,h2 em{font-style:normal;color:var(--green)}.hero-lede{font-size:17px;line-height:1.7;color:var(--muted);max-width:480px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:34px}.button{background:var(--ink);color:var(--paper);padding:13px 17px;font-size:12px;font-weight:700}.button span{color:var(--lime);margin-left:18px}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid var(--green);padding-bottom:5px}.hero-index{border-left:1px solid var(--line);min-height:280px;padding-left:9vw;display:flex;flex-direction:column;justify-content:center}.index-label{font:11px 'DM Mono';color:var(--muted)}.index-orbit{width:235px;height:235px;border:1px solid #b7c6b8;border-radius:50%;margin:18px 0;display:flex;flex-direction:column;justify-content:center;padding-left:42px;position:relative}.index-orbit:after{content:'';position:absolute;width:8px;height:8px;background:var(--green);border-radius:50%;top:31px;right:28px}.index-orbit span,.index-orbit small{font:10px 'DM Mono';color:var(--green)}.index-orbit strong{font-size:89px;line-height:.95;letter-spacing:-.09em}.index-caption{font-size:11px;line-height:1.5;max-width:245px;color:var(--muted)}.signal-strip{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);padding:0 28px}.stat{padding:26px 18px 25px 0;border-right:1px solid var(--line);margin-right:20px;display:flex;flex-direction:column;gap:6px}.stat:last-child{border:0}.stat strong{font-size:25px;letter-spacing:-.06em}.stat span{font-size:12px;font-weight:700}.stat small{font:10px 'DM Mono';color:var(--muted)}.split-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:10%;padding-top:94px;padding-bottom:104px}.section-kicker{display:flex;justify-content:space-between;border-top:1px solid var(--ink);padding-top:12px}.section-kicker a{color:var(--ink)}.section-heading h2,.method-grid h2,.detail-grid h2{font-size:42px;line-height:1.08;letter-spacing:-.07em;margin:55px 0 18px}.section-heading p{font-size:13px;line-height:1.75;color:var(--muted);max-width:330px}.rank-list{border-top:1px solid var(--line);margin-top:40px}.rank-row{display:grid;grid-template-columns:48px 1fr 100px 85px;gap:12px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}.rank-row:hover{color:var(--green)}.rank-number{font:12px 'DM Mono';color:var(--green)}.rank-title{font-size:14px;font-weight:700}.rank-language{font-size:11px;color:var(--muted)}.rank-change{font:11px 'DM Mono';text-align:right}.positive{color:var(--green)}.negative{color:var(--red)}.method-section{border-top:1px solid var(--line);padding-top:27px;padding-bottom:108px}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.method-grid h2{margin:61px 0 0}.method-grid p{font-size:14px;line-height:1.8;color:var(--muted);max-width:450px;margin:61px 0 28px}.page-head{padding-top:87px;padding-bottom:60px;border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(42px,5.2vw,70px);max-width:620px;margin-bottom:39px}.page-head-meta{display:flex;gap:32px;font:11px 'DM Mono';color:var(--muted)}.page-head.compact p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:420px;line-height:1.6}.table-section{padding-top:30px}.table-note,.table-head,.table-row{display:grid;grid-template-columns:62px 1.6fr .65fr 1fr .75fr .65fr .55fr;gap:14px;align-items:center}.table-note{display:flex;justify-content:space-between;font:10px 'DM Mono';color:var(--muted);padding-bottom:19px}.table-head{font:10px 'DM Mono';color:var(--muted);padding:13px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}.table-row{padding:18px 0;border-bottom:1px solid var(--line);font-size:11px}.table-row:hover{background:#e9eee8}.table-title{display:flex;flex-direction:column;gap:5px}.table-title b{font-size:13px}.table-title small{color:var(--muted);font:10px 'DM Mono'}.footnote{max-width:var(--max);margin:25px auto 100px;padding:0 28px;font:10px 'DM Mono';color:var(--muted)}.hot-section{padding-top:31px;padding-bottom:30px}.hot-section.muted{border-top:1px solid var(--line);padding-top:40px;padding-bottom:100px}.hot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:28px}.hot-card{border:1px solid var(--line);background:#edf1ec;display:grid;grid-template-columns:145px 1fr;min-height:220px}.hot-card:hover{border-color:var(--green);transform:translateY(-2px)}.poster{min-height:220px;padding:14px;display:flex;flex-direction:column;justify-content:space-between;color:#edf1ec;background:#254d3e}.poster-2{background:#6c4037}.poster-3{background:#344d62}.poster-4{background:#6a6a42}.poster-5{background:#493d59}.poster span,.poster small{font:10px 'DM Mono';opacity:.8}.poster strong{font-size:22px;line-height:1.1;letter-spacing:-.06em}.hot-card-body{padding:22px 20px;display:flex;flex-direction:column}.tag,.detail-tags span{align-self:flex-start;background:var(--lime);color:var(--green);font:10px 'DM Mono';padding:5px 7px}.hot-card h3{font-size:21px;line-height:1.15;letter-spacing:-.05em;margin:19px 0 9px}.hot-card p{font-size:11px;color:var(--muted);margin:0}.hot-card-foot{display:flex;justify-content:space-between;align-items:end;margin-top:auto;font-size:20px;font-weight:700}.hot-card-foot small{font:10px 'DM Mono';color:var(--muted)}.detail-head{display:grid;grid-template-columns:280px 1fr;gap:70px;padding-top:88px;padding-bottom:81px;align-items:center}.detail-head .poster{height:390px}.detail-copy h1{font-size:clamp(44px,6vw,76px);line-height:1.02;letter-spacing:-.07em;margin:19px 0 8px}.original{font:12px 'DM Mono';color:var(--muted)}.detail-tags{display:flex;gap:8px;margin:25px 0}.detail-tags span{background:transparent;border:1px solid var(--line);color:var(--muted)}.detail-tags .status-rising{color:var(--green);border-color:var(--green)}.detail-synopsis{color:var(--muted);font-size:15px;line-height:1.75;max-width:500px;margin:30px 0}.detail-metrics{max-width:var(--max);margin:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:0 28px}.detail-metrics .stat{margin:0;padding-left:18px}.detail-metrics .stat:first-child{padding-left:0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:89px;padding-bottom:120px}.detail-grid h2{margin-top:55px}.detail-note{padding-top:55px;color:var(--muted);font-size:14px;line-height:1.8}.detail-note dl{display:grid;grid-template-columns:1fr 2fr;border-top:1px solid var(--line);margin-top:40px;padding-top:16px;font:11px 'DM Mono'}.detail-note dt{padding:9px 0;color:var(--green)}.detail-note dd{padding:9px 0;margin:0}.empty{max-width:var(--max);margin:auto;min-height:500px;padding:100px 28px}.empty h1{font-size:60px;letter-spacing:-.06em}footer{max-width:var(--max);margin:auto;border-top:1px solid var(--line);padding:23px 28px 30px;display:flex;justify-content:space-between;font:10px 'DM Mono';color:var(--muted)}footer div{display:flex;gap:20px}.brand-word{color:var(--ink);font-weight:700}@media(max-width:800px){.header-inner{gap:20px;padding:0 18px}.header-meta{display:none}.site-header nav{gap:13px}.hero,.split-section,.method-grid,.detail-grid,.detail-head{grid-template-columns:1fr}.hero{padding-top:55px;padding-bottom:50px}.hero-index{border:0;padding:45px 0 0}.signal-strip{grid-template-columns:repeat(2,1fr)}.stat{border-bottom:1px solid var(--line)}.split-section{gap:35px;padding-top:60px}.section-heading h2,.method-grid h2,.detail-grid h2{margin-top:40px}.rank-row{grid-template-columns:35px 1fr 65px}.rank-language{display:none}.page-head{padding-top:55px}.page-head-meta{flex-wrap:wrap;gap:12px}.table-section{overflow-x:auto}.table-head,.table-row{min-width:760px}.hot-grid{grid-template-columns:1fr}.detail-head{gap:35px;padding-top:55px}.detail-head .poster{height:300px}.detail-metrics{grid-template-columns:repeat(2,1fr)}footer{display:block;line-height:2.1}footer div{display:block}.hero h1{font-size:48px}}

/* Homepage ranking entries are compact Top 3 index cards, not prose blocks. */
.market-entry-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.market-entry-grid>a{display:flex;flex-direction:column;min-width:0;min-height:430px;padding:32px 28px 24px;background:var(--paper);transition:background .2s ease}
.market-entry-grid>a:hover{background:#e9eee8}
.market-entry-grid>a:focus-visible{outline:3px solid var(--red);outline-offset:-3px}
.market-entry-grid>a>h2{font-size:38px;line-height:1.02;letter-spacing:-.07em;margin:17px 0 24px}
.home-entry-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);min-width:0}
.home-entry-grid>a{display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:188px;padding:26px 28px 24px;background:var(--paper);transition:background .2s ease}
.home-entry-grid>a:hover{background:#e9eee8}.home-entry-grid>a:focus-visible{outline:3px solid var(--red);outline-offset:-3px}.home-entry-grid>a h2{margin:0;font-size:24px;line-height:1.1;letter-spacing:-.05em}.home-entry-grid>a p{margin:0;color:var(--muted);font-size:12px;line-height:1.6;max-width:260px}.home-entry-grid>a strong{margin-top:auto;font-size:12px;color:var(--green);white-space:nowrap}
.ranking-top3{display:flex;flex-direction:column;border-top:1px solid var(--ink);margin-top:auto}
.ranking-top3-row{display:grid;grid-template-columns:28px 48px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:78px;padding:11px 0;border-bottom:1px solid var(--line)}
.ranking-top3-row>.entity-icon{--icon-size:48px!important}
.ranking-top3-rank{font:12px 'DM Mono';color:var(--green)}
.ranking-top3-name{display:flex;flex-direction:column;gap:4px;min-width:0}
.ranking-top3-name b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ranking-top3-name small,.ranking-top3-score small{font:10px 'DM Mono';color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ranking-top3-score{display:grid;grid-template-columns:auto;justify-items:end;gap:3px;min-width:76px;text-align:right}
.ranking-top3-score b{font:600 14px 'DM Mono';font-variant-numeric:tabular-nums}
.ranking-top3-score em{font:10px 'DM Mono';font-style:normal;white-space:nowrap}
.ranking-top3-empty{display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:235px;border-top:1px solid var(--ink);margin-top:auto;color:var(--muted)}
.ranking-top3-empty strong{font-size:16px;color:var(--ink)}
.ranking-top3-empty span,.ranking-card-footer{font:10px 'DM Mono';color:var(--muted)}
.ranking-card-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:18px}
.ranking-card-footer strong{color:var(--ink);white-space:nowrap}
@media(max-width:800px){.market-entry-grid{grid-template-columns:1fr}.market-entry-grid>a{min-height:390px;padding:28px 18px 22px}.market-entry-grid>a>h2{font-size:34px}.ranking-top3-row{grid-template-columns:26px 44px minmax(0,1fr) auto;gap:11px;min-height:72px}.ranking-top3-row>.entity-icon{--icon-size:44px!important}.ranking-top3-score{min-width:68px}.ranking-card-footer{padding-top:15px}}
@media(max-width:1000px){.home-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.home-entry-grid{grid-template-columns:1fr}.home-entry-grid>a{min-height:152px;padding:22px 18px}.home-entry-grid>a h2{font-size:22px}.home-entry-grid>a p{max-width:none}}
.community-nav,.community-layout,.form-shell,.mine-grid,.auth-shell,.prose{max-width:var(--max);margin-left:auto;margin-right:auto;padding-left:28px;padding-right:28px;min-width:0}.community-nav{display:flex;flex-wrap:wrap;gap:8px 20px;border-bottom:1px solid var(--line);padding-top:18px;padding-bottom:18px;font:11px 'DM Mono'}.community-nav a{padding-bottom:4px;border-bottom:1px solid transparent}.community-nav a:hover,.community-nav a:focus-visible{border-color:var(--green);color:var(--green)}.community-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;padding-top:36px;padding-bottom:90px}.community-feed,.community-aside{min-width:0}.community-aside{border-left:1px solid var(--line);padding:24px}.community-card{min-width:0;padding:20px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.community-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--muted);font:10px 'DM Mono'}.community-card h3{margin:13px 0 8px;font-size:20px;line-height:1.2}.community-card p{font-size:13px;line-height:1.7;color:var(--muted)}.community-card-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font:11px 'DM Mono'}.form-shell{max-width:780px;padding-top:38px;padding-bottom:100px}.form-shell form{display:grid;gap:16px}.form-shell label{display:grid;gap:7px;font:11px 'DM Mono';color:var(--muted)}.form-shell input,.form-shell select,.form-shell textarea{width:100%;max-width:100%;box-sizing:border-box;border:1px solid #cbd4cc;background:var(--paper);color:var(--ink);padding:11px 12px;font:13px ui-sans-serif,system-ui;line-height:1.45}.form-shell textarea{min-height:110px;resize:vertical}.form-help{color:var(--muted);font:10px 'DM Mono';line-height:1.6}.mine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;padding-top:36px;padding-bottom:100px;min-width:0}.mine-list{list-style:none;margin:0;padding:0}.mine-list li{min-width:0;padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.auth-shell{max-width:620px;padding-top:90px;padding-bottom:120px}.auth-shell form{display:grid;gap:16px;max-width:440px}.prose{max-width:820px;padding-top:35px;padding-bottom:100px;line-height:1.8}.prose h2{margin-top:30px}@media(max-width:800px){.community-nav,.community-layout,.form-shell,.mine-grid,.auth-shell,.prose{padding-left:18px;padding-right:18px}.community-layout{grid-template-columns:1fr;gap:28px}.community-aside{border-left:0;border-top:1px solid var(--line);padding:24px 0}.mine-grid{grid-template-columns:1fr}.auth-shell{padding-top:55px}}
.home-hot-section{max-width:var(--max);margin:auto;padding:42px 28px 58px;border-bottom:1px solid var(--line);min-width:0}.home-hot-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.home-hot-heading h2{font-size:38px;line-height:1.05;letter-spacing:-.07em;margin:24px 0 0}.home-hot-intro{max-width:420px;color:var(--muted);font-size:13px;line-height:1.7;margin:14px 0 24px}.home-hot-grid{display:grid;grid-template-columns:1fr;gap:1px;background:var(--line);min-width:0}.home-hot-card{display:flex;flex-direction:column;min-width:0;background:var(--paper);transition:background .2s ease}.home-hot-card:hover{background:#e9eee8}.home-hot-card:focus-visible{outline:3px solid var(--red);outline-offset:-3px}.home-hot-card-media{aspect-ratio:3 / 2;min-width:0;overflow:hidden;background:#e4e9e5}.home-hot-card-media .drama-cover{display:grid;width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0}.home-hot-card-media .drama-cover img{width:100%;height:100%;object-fit:cover}.home-hot-card-copy{display:flex;flex-direction:column;gap:12px;min-width:0;padding:16px 16px 18px}.home-hot-card-copy strong{font-size:16px;line-height:1.2;letter-spacing:-.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-hot-card-meta{display:flex;gap:12px;min-width:0;color:var(--muted);font:10px 'DM Mono'}.home-hot-card-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-hot-card-meta span+span{padding-left:12px;border-left:1px solid var(--line)}.home-hot-card-text{min-height:128px;justify-content:end}.home-hot-card-text .home-hot-card-copy{padding-top:24px}@media(min-width:600px){.home-hot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1000px){.home-hot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1240px){.home-hot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.home-hot-empty-body{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:100px;border-top:1px solid var(--line);margin-top:28px}.home-hot-empty-body strong{font-size:18px}@media(max-width:800px){.home-hot-section{padding:38px 18px 42px}.home-hot-heading{align-items:start;gap:16px}.home-hot-heading h2{font-size:32px;margin-top:18px}.home-hot-heading .text-link{white-space:nowrap}.home-hot-intro{margin:12px 0 20px}.home-hot-card-media{aspect-ratio:16 / 10}.home-hot-card-copy{padding:14px 14px 16px}.home-hot-card-text{min-height:112px}}
.hero-hot-panel{min-width:0;max-width:100%;min-height:280px;padding:24px 0 24px 9vw;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.hero-hot-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--ink);padding-bottom:10px}.hero-hot-heading span{font-size:18px;font-weight:700}.hero-hot-heading small,.hero-hot-footer{font:10px 'DM Mono';color:var(--muted)}.hero-hot-list{display:flex;flex-direction:column;min-width:0}.hero-hot-row{display:grid;grid-template-columns:24px 52px minmax(0,1fr);gap:10px;align-items:center;min-width:0;padding:8px 0;border-bottom:1px solid var(--line)}.hero-hot-row .drama-cover{width:52px;height:68px;min-width:52px;flex-basis:52px}.hero-hot-row .entity-icon{width:52px;height:52px;flex-basis:52px}.hero-hot-rank{font:11px 'DM Mono';color:var(--green)}.hero-hot-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.hero-hot-copy b,.hero-hot-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-hot-copy b{font-size:12px}.hero-hot-copy small{font:10px 'DM Mono';color:var(--muted)}.hero-hot-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:12px}.hero-hot-footer .text-link{font:10px 'DM Mono'}.hero-hot-empty{justify-content:center}.hero-hot-empty .empty-inline{margin:18px 0}.hero-hot-visual-pending{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--line);background:#e7ece7;color:var(--muted);font:9px 'DM Mono';text-align:center}@media(max-width:800px){.hero-hot-panel{border-left:0;border-top:1px solid var(--line);padding:28px 0 0;margin-top:35px;min-height:0}.hero-hot-row{grid-template-columns:24px 52px minmax(0,1fr)}}
/* Mobile pass: keep the SSR content readable at 320px without horizontal tables. */
html,body{max-width:100%;overflow-x:hidden}button,input,select,textarea{font:inherit}*:focus-visible{outline:2px solid var(--green);outline-offset:2px}
@media(max-width:800px){.header-inner{padding-left:14px;padding-right:14px}.brand{font-size:9px;gap:7px;letter-spacing:.08em}.brand-mark{width:27px;height:27px}.account-toggle{max-width:132px;padding-left:6px;padding-right:6px}.account-label{font-size:10px}.hero{min-height:0;padding:42px 18px 34px}.hero h1{font-size:clamp(38px,12vw,50px);line-height:1.04;margin-top:15px}.hero-lede{font-size:14px;line-height:1.65}.hero-actions{align-items:flex-start;flex-wrap:wrap;gap:18px;margin-top:25px}.hero-index{min-height:0;padding-top:32px}.hero-index strong{font-size:20px}.signal-strip{padding:0 18px}.stat{padding:18px 12px 17px 0;margin-right:12px}.stat strong{font-size:20px}.page-head{padding:42px 18px 34px}.page-head h1{font-size:clamp(38px,12vw,56px);line-height:1.05;margin:14px 0 22px}.page-head.compact p:not(.eyebrow){font-size:14px}.page-head-meta{font-size:10px;line-height:1.5}footer{padding-left:18px;padding-right:18px}}
/* Authentication pages use a compact product surface rather than the generic form layout. */
.auth-page{max-width:900px;display:grid;grid-template-columns:minmax(0,540px) minmax(180px,1fr);gap:66px;align-items:center;padding-top:56px;padding-bottom:92px;min-height:calc(100vh - 166px)}
.auth-card{background:#f8faf7;border:1px solid #cbd5cc;box-shadow:0 16px 34px rgba(23,33,29,.07);padding:36px 38px 32px;min-width:0}
.auth-intro{border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:25px}.auth-intro .eyebrow{margin:0}.auth-intro h1{font-size:clamp(38px,5vw,56px);line-height:1;letter-spacing:-.07em;margin:14px 0 12px}.auth-intro p:last-child{color:var(--muted);font-size:13px;line-height:1.6;margin:0;max-width:34ch}
.auth-form{display:grid;gap:16px;max-width:none!important}.auth-field{display:grid;gap:7px;font:11px 'DM Mono';color:var(--muted)}.auth-field input{width:100%;min-height:46px;border:1px solid #bfcac1;border-radius:2px;background:#fff;color:var(--ink);padding:11px 12px;font:14px ui-sans-serif,system-ui;line-height:1.45;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.auth-field input:hover{border-color:#8ca495}.auth-field input:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px rgba(31,107,76,.16);background:#fff}.auth-field input:disabled{cursor:not-allowed;background:#e9eee9;color:var(--muted)}
.auth-consent{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font:11px/1.6 ui-sans-serif,system-ui}.auth-consent input{width:16px;height:16px;margin:2px 0 0;accent-color:var(--green);flex:0 0 auto}.auth-consent a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.auth-error{margin:-7px 0 1px;padding:10px 12px;border:1px solid #e0b5ad;background:#fff5f2;color:#8b3c32;font-size:12px;line-height:1.55}.auth-submit{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:3px;border:1px solid var(--ink);cursor:pointer;transition:background .2s ease,color .2s ease,transform .12s ease,box-shadow .2s ease}.auth-submit span{color:var(--lime);margin-left:auto}.auth-submit:hover{background:var(--green);border-color:var(--green);box-shadow:0 8px 16px rgba(31,107,76,.16)}.auth-submit:active{transform:translateY(1px);box-shadow:none}.auth-submit:focus-visible{outline:3px solid rgba(31,107,76,.38);outline-offset:3px}.auth-submit:disabled{cursor:not-allowed;background:#9aa69e;border-color:#9aa69e;color:#edf1ec}.auth-switch{margin:24px 0 0;color:var(--muted);font-size:12px}.auth-switch .text-link{margin-left:4px;color:var(--ink)}
.auth-context{align-self:center;padding-left:25px;border-left:1px solid var(--line);max-width:220px}.auth-context .eyebrow{margin:0 0 20px}.auth-context strong{display:block;font-size:22px;line-height:1.2;letter-spacing:-.05em}.auth-context>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.75;margin:12px 0 0}.auth-rule{display:flex;gap:10px;align-items:flex-start;border-top:1px solid var(--line);margin-top:28px;padding-top:14px}.auth-rule span{width:7px;height:7px;flex:0 0 auto;background:var(--green);margin-top:4px}.auth-rule small{color:var(--muted);font:10px/1.6 'DM Mono'}
@media(max-width:800px){.auth-page{display:block;min-height:0;padding-top:34px;padding-bottom:68px}.auth-card{padding:28px 22px 25px}.auth-context{margin:30px 4px 0;padding:22px 0 0;border-left:0;border-top:1px solid var(--line);max-width:none}.auth-context .eyebrow{margin-bottom:12px}.auth-context strong{font-size:19px}.auth-rule{margin-top:18px}.auth-intro h1{font-size:42px}}

/* Keep the homepage ranking overview compact and close to its source cards. */
.signal-strip .stat{padding-top:18px;padding-bottom:17px}
@media(max-width:800px){.signal-strip .stat{padding-top:15px;padding-bottom:14px}}
.hot-market-section{min-width:0;max-width:100%;overflow-x:clip}.hot-product-index{min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap}.hot-product-index a{flex:0 0 auto;white-space:nowrap}
/* Homepage hero dual-value presentation from f85bf14, merged onto the stable production CSS. */
.header-meta{white-space:nowrap}.hero h1{max-width:620px}.hero-actions{flex-wrap:wrap;row-gap:14px}.hero-focus{max-width:360px}.hero-focus-title{font-size:clamp(36px,4.4vw,58px);line-height:1.02;letter-spacing:-.07em;margin:22px 0 18px}.hero-focus-title em{font-style:normal;color:var(--green)}.hero-focus-copy{max-width:300px;color:var(--muted);font-size:14px;line-height:1.75;margin:0 0 24px}.hero-focus .text-link{font-size:12px}@media(max-width:800px){.header-meta{font-size:10px}.hero-actions{gap:14px 20px}.hero-focus{max-width:420px}.hero-focus-title{font-size:38px;margin-top:18px}}

/* APP detail global history uses real daily app_rankings snapshots only. */
.app-history-section{max-width:var(--max);margin:auto;padding:54px 28px 26px;border-top:1px solid var(--line);min-width:0}.app-history-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:24px 0 20px}.app-history-head h2{margin:0;font-size:clamp(30px,4vw,44px);line-height:1.05;letter-spacing:-.06em}.history-window-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.history-window-link{border:1px solid var(--line);padding:7px 10px;font:10px 'DM Mono';color:var(--muted);background:#eef2ed}.history-window-link.selected,.history-window-link:hover{border-color:var(--green);color:var(--green);background:#e3eddf}.history-table-wrap{width:100%;max-width:100%;overflow-x:auto;border-top:1px solid var(--ink);-webkit-overflow-scrolling:touch}.history-table{width:100%;min-width:620px;border-collapse:collapse}.history-table th,.history-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}.history-table th{font:10px 'DM Mono';color:var(--muted);font-weight:500}.history-table td:first-child{font-family:'DM Mono',monospace;color:var(--muted)}.app-history-section .empty-inline{margin:0}@media(max-width:800px){.app-history-section{padding:42px 18px 20px}.app-history-head{display:block;margin-top:18px}.history-window-links{justify-content:flex-start;margin-top:16px}.history-table th,.history-table td{padding:12px 10px}.history-table{min-width:560px}}

/* P0 global container alignment: one responsive gutter shared with the header. */
:root{--page-gutter:28px}
.header-inner,.hero,.page-head,.table-section,.footnote,.signal-strip,.home-hot-section,.detail-head,.detail-grid,.app-history-section,footer{max-width:var(--max);margin-left:auto;margin-right:auto;padding-left:var(--page-gutter);padding-right:var(--page-gutter);min-width:0}
@media(max-width:800px){:root{--page-gutter:14px}.header-inner,.hero,.page-head,.table-section,.footnote,.signal-strip,.home-hot-section,.detail-head,.detail-grid,.app-history-section,footer{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}}
.country-history-section{padding-top:38px}.country-history-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(190px,1fr) auto;gap:12px;align-items:end;margin:0 0 18px;max-width:820px}.country-history-controls label{display:grid;gap:7px;font:10px 'DM Mono';color:var(--muted)}.country-history-controls select{width:100%;min-height:42px;border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 10px;font:13px system-ui,sans-serif}.country-history-table{min-width:720px}@media(max-width:800px){.country-history-controls{grid-template-columns:1fr}.country-history-controls .button{width:100%;text-align:center}.country-history-table{min-width:660px}}

/* fcd10a5: compact single homepage hero, preserving the global container. */
.hero{display:block;min-height:0;padding-top:52px;padding-bottom:46px;overflow:hidden}
.hero-copy{min-width:0;max-width:100%}
.hero .eyebrow{margin:0}
.hero h1{max-width:100%;margin:16px 0 18px;font-size:clamp(50px,5.35vw,72px);line-height:1.03;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:break-word}
.hero-lede{max-width:620px;margin:0;font-size:16px;line-height:1.65;text-wrap:pretty}
.hero-actions{display:flex;align-items:stretch;gap:0;margin-top:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hero-actions a{display:flex;align-items:center;justify-content:space-between;gap:26px;min-width:168px;padding:13px 18px 13px 0;border-right:1px solid var(--line);font-size:12px;font-weight:700;transition:color .2s ease,background .2s ease,padding .2s ease}
.hero-actions a+a{padding-left:18px}
.hero-actions a:last-child{border-right:0}
.hero-actions a:hover{color:var(--green);background:#e9eee8}
.hero-actions a:active{transform:translateY(1px)}
.hero-actions a:focus-visible{outline:3px solid var(--red);outline-offset:-3px}
.hero-actions b{color:var(--green);font:500 13px 'DM Mono'}
.home-hot-card-icon{padding:16px 16px 0}.home-hot-card-icon>.entity-icon{--icon-size:40px!important}.home-hot-card-icon-only{min-height:138px}
.language-switch{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.language-switch>span:first-child{font:9px 'DM Mono';letter-spacing:.1em;text-transform:uppercase}.language-switch a{padding:2px 0;color:var(--muted);border-bottom:1px solid transparent}.language-switch a:hover,.language-switch a:focus-visible{color:var(--ink);border-color:currentColor}.language-switch a.active{color:var(--green);font-weight:800;border-color:var(--green)}
@media(max-width:800px){.header-meta{font-size:10px}.hero{padding-top:40px;padding-bottom:36px}.hero h1{max-width:14ch;margin:13px 0 16px;font-size:clamp(40px,8.4vw,52px);line-height:1.07;letter-spacing:-.05em}.hero-lede{max-width:38ch;font-size:14px}.hero-actions{margin-top:25px;gap:0}.hero-actions a{flex:1 1 0;min-width:0;gap:10px;padding:12px 12px 12px 0}.hero-actions a+a{padding-left:12px}.home-hot-card-icon{padding:14px 14px 0}}
@media(max-width:480px){.home-hot-heading{flex-direction:column;align-items:flex-start}.home-hot-heading .text-link{white-space:normal}footer .language-switch{display:flex;margin:8px 0}}
@media(max-width:420px){.hero{padding-top:34px;padding-bottom:30px}.hero h1{font-size:38px}.hero-actions{display:block}.hero-actions a,.hero-actions a+a{width:100%;padding:10px 0;border-right:0;border-bottom:1px solid var(--line)}.hero-actions a:last-child{border-bottom:0}}
/* P0 public hero cleanup: keep the home hero to eyebrow + title only. */
.hero{display:block;min-height:0;padding-top:44px;padding-bottom:34px;overflow:hidden}
.hero-copy{min-width:0;max-width:100%}
.hero .eyebrow{margin:0}
.hero h1{max-width:100%;margin:16px 0 0;font-size:clamp(50px,5.35vw,72px);line-height:1.03;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:break-word}
@media(max-width:800px){.hero{padding-top:32px;padding-bottom:27px}.hero h1{max-width:14ch;margin-top:13px;font-size:clamp(40px,8.4vw,52px);line-height:1.07;letter-spacing:-.05em}}
@media(max-width:420px){.hero{padding-top:29px;padding-bottom:24px}.hero h1{font-size:38px}}
.product-store-links{display:block;margin-top:4px;color:var(--muted);font:10px 'DM Mono';line-height:1.6}.product-store-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}.form-data-inline{font:inherit;color:inherit}
.home-notes{max-width:var(--max);margin:auto;padding:58px 28px 64px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:64px;min-width:0}.home-note-intro{min-width:0}.home-note-intro .section-kicker{display:block;border-top:1px solid var(--ink);padding-top:12px;margin:0 0 34px}.home-note-intro h2{font-size:38px;line-height:1.06;margin:0 0 16px;max-width:430px;text-wrap:balance}.home-note-intro p:not(.section-kicker){color:var(--muted);font-size:13px;line-height:1.75;max-width:360px}.home-note-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);min-width:0}.home-note-items article{min-width:0;background:var(--paper);padding:22px 20px 24px;display:flex;flex-direction:column;gap:14px;min-height:196px}.home-note-items article span{font:10px 'DM Mono';color:var(--green)}.home-note-items h3{font-size:18px;line-height:1.15;margin:0;text-wrap:balance}.home-note-items p{margin:auto 0 0;color:var(--muted);font-size:12px;line-height:1.65;overflow-wrap:anywhere}.home-sponsor-shell{background:#eef3ea!important;outline:1px dashed #aebdaf;outline-offset:-12px}@media(max-width:900px){.home-notes{grid-template-columns:1fr;gap:30px;padding:44px 18px 48px}.home-note-intro h2{font-size:32px}.home-note-items{grid-template-columns:1fr}.home-note-items article{min-height:138px;padding:20px 18px}}@media(max-width:620px){body{overflow-x:hidden}.site-header{position:relative}.header-inner{height:auto;min-height:68px;align-items:flex-start;gap:12px;flex-wrap:wrap;padding:12px 18px}.brand{flex:0 0 auto}.site-header nav{order:3;width:100%;height:auto;display:flex;overflow-x:auto;gap:16px;padding-top:4px;scrollbar-width:none}.site-header nav::-webkit-scrollbar{display:none}.nav-link{height:auto;min-height:28px;white-space:nowrap}.header-tools{margin-left:auto;max-width:calc(100% - 122px)}.account-menu{max-width:100%}.account-toggle{max-width:100%;min-width:0}.account-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-head,.table-section,.hot-section,.detail-head,.detail-grid,.detail-metrics,.ranking-summary,.footnote{padding-left:18px;padding-right:18px}.page-head h1{font-size:clamp(38px,13vw,52px);overflow-wrap:anywhere}.page-head-meta{display:grid;grid-template-columns:1fr;gap:8px}.ranking-filters{grid-template-columns:1fr!important}.ranking-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.table-section{overflow-x:auto}.table-head,.table-row{min-width:680px}.hot-card{grid-template-columns:1fr}.poster{min-height:170px}.detail-metrics{grid-template-columns:1fr}.language-switch{max-width:100%;justify-content:flex-start}.language-switch>span:first-child{flex-basis:100%}}@media(max-width:360px){.header-inner{padding-left:14px;padding-right:14px}.hero,.home-hot-section,.home-notes,.home-entry-grid>a,.market-entry-grid>a,.page-head,.table-section,.community-nav,.community-layout,.form-shell,.auth-shell,.prose{padding-left:14px;padding-right:14px}.ranking-top3-row{grid-template-columns:22px 38px minmax(0,1fr);gap:9px}.ranking-top3-score{grid-column:3;justify-items:start;text-align:left;min-width:0}.ranking-top3-row>.entity-icon{--icon-size:38px!important}.hero h1{font-size:34px}.hero-actions a{font-size:11px}.home-hot-card-copy strong{white-space:normal}.hot-card h3{font-size:19px}}


/* Final mobile guard: history tables scroll inside their own rail, not the page. */
.app-history-section,.country-history-section{overflow:hidden}
.history-table-wrap{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain}
.history-table{table-layout:auto}
@media(max-width:620px){
  .app-history-section{padding-left:14px;padding-right:14px}
  .history-table{min-width:540px}
  .country-history-table{min-width:560px}
  .history-table th,.history-table td{padding:10px 8px;font-size:11px;white-space:nowrap}
}
@media(max-width:420px){
  .country-history-table{min-width:540px}
  .history-table-wrap{margin-left:0;margin-right:0}
}

/* 2026-08-17 detail-page fix: keep long app names and filters aligned. */
.detail-head{
  grid-template-columns:minmax(220px,280px) minmax(0,1fr);
}
.detail-head>div,
.detail-copy{
  min-width:0;
}
.detail-copy h1{
  max-width:900px;
  overflow-wrap:anywhere;
  letter-spacing:0!important;
}
.detail-tags,
.app-store-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.app-store-actions{
  margin:18px 0 2px;
}
.store-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
  border:1px solid var(--line);
  padding:10px 12px;
  font-size:12px;
  font-weight:700;
  color:var(--green);
  background:#edf2ec;
}
.store-link span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.country-history-controls{
  width:100%;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto!important;
}
.country-history-controls label,
.country-history-controls select{
  min-width:0;
}
.app-facts dl{
  display:grid;
  grid-template-columns:minmax(120px,.32fr) minmax(0,1fr);
  gap:0;
  max-width:760px;
  margin:34px 0 28px;
  border-top:1px solid var(--line);
}
.app-facts dt,
.app-facts dd{
  margin:0;
  min-width:0;
  padding:14px 0;
  border-bottom:1px solid var(--line);
  line-height:1.45;
}
.app-facts dt{
  color:var(--green);
  font:700 12px system-ui,sans-serif;
}
.app-facts dd{
  font-size:14px;
  color:var(--ink);
  overflow-wrap:anywhere;
}
@media(max-width:800px){
  .detail-head{
    grid-template-columns:1fr;
  }
  .country-history-controls{
    grid-template-columns:1fr!important;
  }
  .app-facts dl{
    grid-template-columns:1fr;
    max-width:none;
  }
  .app-facts dt{
    padding-bottom:4px;
    border-bottom:0;
  }
  .app-facts dd{
    padding-top:0;
  }
}

/* 2026-08-12 UI hotfix: tighten first viewport and stabilize ranking typography. */
.hero{
  padding-top:30px!important;
  padding-bottom:18px!important;
  border-bottom:1px solid var(--line);
}
.hero h1{
  margin-top:14px!important;
  font-size:clamp(48px,4.85vw,66px)!important;
  line-height:1.05!important;
  letter-spacing:0!important;
  text-wrap:balance;
}
.market-entry-grid>a{
  min-height:350px!important;
  padding-top:26px!important;
}
.ranking-page-head{
  padding-top:48px!important;
  padding-bottom:32px!important;
}
.ranking-page-head h1{
  max-width:none!important;
  display:grid;
  grid-template-columns:minmax(220px,.72fr) minmax(420px,1.28fr);
  gap:40px;
  align-items:start;
  margin:18px 0 26px!important;
  font-size:clamp(58px,5.4vw,82px)!important;
  line-height:.98!important;
  letter-spacing:0!important;
  text-wrap:balance;
}
.ranking-page-head h1 em{
  display:block;
  font-style:normal;
  color:var(--green);
  white-space:nowrap;
}
.ranking-page-head .page-head-meta{
  align-items:center;
  gap:26px;
  flex-wrap:wrap;
  font-family:system-ui,sans-serif;
  font-size:13px;
  line-height:1.45;
}
.ranking-page-table .table-head.app-table,
.ranking-page-table .table-row.app-table{
  grid-template-columns:56px 48px minmax(360px,1.35fr) minmax(86px,.45fr) minmax(86px,.42fr) minmax(120px,.52fr) minmax(120px,.52fr) minmax(92px,.42fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.ranking-page-table .table-head.app-table{
  align-items:center!important;
}
.ranking-page-table .table-row.app-table{
  padding:19px 0!important;
  min-height:86px;
}
.ranking-page-table .table-row.app-table>.rank-number{
  padding-top:7px;
  font-size:14px;
  line-height:1;
}
.ranking-page-table .table-row.app-table>.entity-icon{
  margin-top:0;
  --icon-size:34px!important;
}
.ranking-page-table .table-row.app-table>.table-title{
  gap:6px;
  padding-top:0;
  min-width:0;
}
.ranking-page-table .table-row.app-table>.table-title b{
  font-size:17px;
  line-height:1.12;
  letter-spacing:0;
}
.ranking-page-table .table-row.app-table>.table-title small{
  font-family:system-ui,sans-serif;
  font-size:13px;
  line-height:1.35;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ranking-page-table .table-row.app-table>strong,
.ranking-page-table .table-row.app-table>.app-secondary,
.ranking-page-table .table-row.app-table>.trend{
  padding-top:7px;
  line-height:1.2;
}
.ranking-page-table .table-row.app-table>strong{
  font-size:14px;
  font-variant-numeric:tabular-nums;
}
.ranking-page-table .app-secondary{
  font-size:13px;
  white-space:nowrap;
}
@media(max-width:900px){
  .hero{padding-top:26px!important;padding-bottom:16px!important}
  .hero h1{font-size:clamp(38px,10vw,52px)!important;line-height:1.08!important;max-width:15ch!important}
  .market-entry-grid>a{min-height:320px!important}
  .ranking-page-head h1{display:block;font-size:clamp(42px,11vw,58px)!important;line-height:1.04!important}
  .ranking-page-head h1 em{white-space:normal}
  .ranking-page-table .table-head.app-table,
  .ranking-page-table .table-row.app-table{min-width:900px!important}
}

/* P0 homepage hero density: 20260812-ui-a14 */
.hero{
  padding-top:32px!important;
  padding-bottom:24px!important;
}
.hero h1{
  max-width:980px!important;
  margin-top:12px!important;
  font-size:clamp(42px,4vw,56px)!important;
  line-height:1.08!important;
  letter-spacing:0!important;
}
html:lang(en) .hero h1{
  max-width:1040px!important;
  font-size:clamp(38px,3.45vw,50px)!important;
  line-height:1.1!important;
}
@media(max-width:900px){
  .hero{
    padding-top:26px!important;
    padding-bottom:18px!important;
  }
  .hero h1,
  html:lang(en) .hero h1{
    max-width:100%!important;
    font-size:clamp(32px,8.5vw,44px)!important;
  }
}

/* P0 homepage hero title scale: 20260812-ui-a16 */
.hero{
  padding-top:28px!important;
  padding-bottom:20px!important;
}
.hero h1,
html:lang(en) .hero h1,
html:lang(zh-CN) .hero h1{
  max-width:920px!important;
  margin-top:10px!important;
  margin-bottom:0!important;
  font-size:clamp(34px,3.1vw,44px)!important;
  line-height:1.12!important;
  letter-spacing:0!important;
}
@media(max-width:900px){
  .hero{
    padding-top:24px!important;
    padding-bottom:18px!important;
  }
  .hero h1,
html:lang(en) .hero h1,
html:lang(zh-CN) .hero h1{
    max-width:100%!important;
    font-size:clamp(28px,7.4vw,38px)!important;
    line-height:1.14!important;
  }
}

/* Header fit: keep public navigation readable at 1280px without clipping account tools. */
.header-inner{
  gap:clamp(18px,2.4vw,40px)!important;
}
.site-header nav.content-nav{
  flex:1 1 auto;
  min-width:0;
  justify-content:center;
  gap:clamp(12px,1.45vw,22px)!important;
  overflow:visible;
}
.nav-link{
  white-space:nowrap;
  font-size:clamp(11px,.9vw,12px)!important;
  letter-spacing:0!important;
}
.header-tools{
  flex:0 1 auto;
  min-width:0;
}
.header-meta{
  white-space:nowrap;
}
.account-toggle{
  max-width:150px;
}
.account-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media(max-width:1180px){
  .header-inner{
    padding-inline:20px!important;
    gap:16px!important;
  }
  .brand{
    flex:0 0 auto;
  }
  .site-header nav.content-nav{
    justify-content:flex-start;
    gap:12px!important;
  }
  .header-meta{
    display:none!important;
  }
  .account-toggle{
    max-width:124px;
  }
}

/* Long history pages. */
.history-pagination{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  margin-top:16px;
  font:10px 'DM Mono',monospace;
  color:var(--muted);
}
.history-page-link{
  border:1px solid var(--line);
  background:#eef2ed;
  color:var(--green);
  padding:7px 10px;
}
.history-page-link.disabled{
  color:var(--muted);
  opacity:.55;
}
@media(max-width:800px){
  .history-pagination{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}

/* PWA install affordance and mobile ranking polish: 20260825-pwa-mobile-01 */
.header-tools{
  display:flex;
  align-items:center;
  gap:10px;
}
.pwa-install-card{
  position:fixed;
  left:50%;
  bottom:18px;
  z-index:20;
  width:min(560px,calc(100vw - 28px));
  transform:translateX(-50%);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:14px;
  align-items:center;
  padding:14px;
  border:1px solid #b8c5ba;
  background:rgba(248,250,247,.96);
  box-shadow:0 18px 42px rgba(23,33,29,.16);
  backdrop-filter:blur(14px);
}
.pwa-install-card[hidden]{
  display:none!important;
}
.pwa-install-card strong,
.pwa-install-card span,
.pwa-install-card small{
  display:block;
}
.pwa-install-card strong{
  font-size:14px;
  line-height:1.25;
}
.pwa-install-card span,
.pwa-install-card small{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
  margin-top:3px;
}
.pwa-install-card small{
  display:none;
}
.pwa-install-card[data-mode="native"] [data-pwa-native],
.pwa-install-card[data-mode="desktop"] [data-pwa-desktop],
.pwa-install-card[data-mode="ios"] [data-pwa-ios]{
  display:block;
}
.pwa-install-card[data-mode="desktop"] .pwa-install-action,
.pwa-install-card[data-mode="ios"] .pwa-install-action{
  display:none;
}
.pwa-install-action{
  min-height:38px;
  border:0;
  cursor:pointer;
}
.pwa-install-dismiss{
  appearance:none;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid var(--line);
  background:transparent;
  color:var(--muted);
  cursor:pointer;
  font-size:20px;
  line-height:1;
}
.pwa-install-dismiss:hover{
  color:var(--ink);
  border-color:var(--green);
}
.pwa-footer-install{
  appearance:none;
  border:0;
  border-bottom:1px solid var(--green);
  border-radius:0;
  background:transparent;
  color:var(--ink);
  padding:0 0 3px;
  font:inherit;
  cursor:pointer;
}
.pwa-footer-install:hover{
  color:var(--green);
}
.offline-page{
  min-height:52vh;
}
@media(max-width:720px){
  body{
    background:linear-gradient(180deg,#f7f9f5 0,#f3f5f1 170px);
  }
  .site-header{
    position:relative!important;
  }
  .site-header .header-inner{
    min-height:0!important;
    padding-top:9px!important;
    padding-bottom:8px!important;
    align-items:center!important;
  }
  .site-header .content-nav{
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    gap:20px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-top:7px!important;
    padding-bottom:0!important;
    border-top:1px solid var(--line);
    scrollbar-width:none;
  }
  .site-header .content-nav::-webkit-scrollbar{
    display:none;
  }
  .site-header .content-nav .nav-link{
    height:28px!important;
    flex:0 0 auto;
    font-size:11px!important;
    white-space:nowrap;
  }
  html:lang(en) .site-header .content-nav .nav-link{
    font-size:10px!important;
  }
  .site-header .header-tools{
    display:flex;
    align-items:center;
    gap:6px!important;
    margin-left:auto!important;
    max-width:none!important;
  }
  .site-header .account-toggle{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
  }
  .site-header .account-avatar{
    margin:0!important;
  }
  .site-header .account-label,
  .site-header .account-caret{
    display:none!important;
  }
  .ranking-page-head{
    padding-top:28px!important;
    padding-bottom:24px!important;
  }
  .ranking-page-head h1,
  html:lang(en) .ranking-page-head h1,
  html:lang(zh-CN) .ranking-page-head h1{
    display:block!important;
    max-width:12.5ch!important;
    margin:12px 0 16px!important;
    font-size:clamp(34px,10.5vw,46px)!important;
    line-height:1.08!important;
  }
  .ranking-page-head .page-head-lede{
    max-width:42ch;
    margin:0;
    font-size:13px;
    line-height:1.62;
  }
  .ranking-page-head .page-head-meta{
    display:flex;
    gap:8px;
    margin-top:16px;
    font-size:11px;
  }
  .ranking-page-head .page-head-meta span{
    padding:6px 8px;
    border:1px solid var(--line);
    background:#eef3ea;
  }
  .ranking-page-summary{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:1px;
    padding-top:0;
    padding-bottom:0;
    background:var(--line);
  }
  .ranking-page-summary .stat{
    margin:0!important;
    padding:14px 12px!important;
    border:0!important;
    background:var(--paper);
    min-height:98px;
  }
  .ranking-page-summary .stat strong{
    font-size:20px;
  }
  .ranking-page-summary .stat span{
    font-size:11px;
    line-height:1.25;
  }
  .ranking-page-summary .stat small{
    font-size:9px;
    line-height:1.35;
  }
  .ranking-page-table{
    overflow:visible!important;
    padding-top:20px!important;
  }
  .ranking-filters{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:14px!important;
    margin-bottom:16px!important;
    border:1px solid var(--line);
    background:#f8faf7;
  }
  .ranking-filters label{
    gap:6px;
    font-size:10px;
  }
  .ranking-filters input,
  .ranking-filters select,
  .ranking-filters .button,
  .ranking-filters button{
    width:100%;
    min-height:42px;
  }
  .ranking-page-table .table-head.app-table{
    display:none!important;
  }
  .ranking-page-table .table-body{
    display:grid;
    gap:10px;
  }
  .ranking-page-table .table-row.app-table{
    min-width:0!important;
    width:100%;
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto auto!important;
    grid-template-areas:
      "icon title title rank"
      "icon score markets trend";
    gap:9px 12px!important;
    align-items:center!important;
    min-height:0!important;
    padding:14px!important;
    border:1px solid var(--line)!important;
    background:#f8faf7;
  }
  .ranking-page-table .table-row.app-table:hover{
    background:#eef3ea;
  }
  .ranking-page-table .table-row.app-table>.rank-number{
    grid-area:rank;
    justify-self:end;
    align-self:start;
    min-width:38px;
    padding:5px 7px!important;
    background:var(--ink);
    color:var(--lime);
    text-align:center;
    font-size:11px!important;
  }
  .ranking-page-table .table-row.app-table>.entity-icon{
    grid-area:icon;
    --icon-size:44px!important;
    margin:0!important;
  }
  .ranking-page-table .table-row.app-table>.table-title{
    grid-area:title;
    min-width:0;
    padding:0!important;
  }
  .ranking-page-table .table-row.app-table>.table-title b{
    display:block;
    font-size:16px!important;
    line-height:1.16!important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .ranking-page-table .table-row.app-table>.table-title small{
    display:block;
    margin-top:4px;
    font-size:12px!important;
    line-height:1.32!important;
    color:var(--muted);
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap!important;
  }
  .ranking-page-table .table-row.app-table>strong,
  .ranking-page-table .table-row.app-table>.app-secondary,
  .ranking-page-table .table-row.app-table>.trend{
    grid-row:2;
    padding:0!important;
    line-height:1.2;
  }
  .ranking-page-table .table-row.app-table>strong:nth-of-type(1)::before{
    content:"Score";
  }
  .ranking-page-table .table-row.app-table>strong:nth-of-type(2)::before{
    content:"Markets";
  }
  html:lang(zh-CN) .ranking-page-table .table-row.app-table>strong:nth-of-type(1)::before{
    content:"分数";
  }
  html:lang(zh-CN) .ranking-page-table .table-row.app-table>strong:nth-of-type(2)::before{
    content:"市场";
  }
  .ranking-page-table .table-row.app-table>strong{
    display:flex;
    flex-direction:column;
    gap:2px;
    min-width:56px;
    font-size:14px!important;
    font-variant-numeric:tabular-nums;
  }
  .ranking-page-table .table-row.app-table>strong::before{
    color:var(--muted);
    font:9px 'DM Mono';
  }
  .ranking-page-table .table-row.app-table>strong:nth-of-type(1){
    grid-area:score;
  }
  .ranking-page-table .table-row.app-table>strong:nth-of-type(2){
    grid-area:markets;
  }
  .ranking-page-table .table-row.app-table>.app-secondary{
    display:none;
  }
  .ranking-page-table .table-row.app-table>.trend{
    grid-area:trend;
    justify-self:end;
    margin-left:auto;
    font-size:12px;
  }
  .ranking-page-footnote{
    margin-top:18px;
    margin-bottom:78px;
    line-height:1.55;
  }
  .pwa-install-card{
    bottom:calc(10px + env(safe-area-inset-bottom));
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    padding:12px;
  }
  .pwa-install-card strong{
    font-size:13px;
  }
  .pwa-install-card span,
  .pwa-install-card small{
    font-size:11px;
  }
  .pwa-install-dismiss{
    position:absolute;
    top:6px;
    right:6px;
    width:26px;
    height:26px;
    border:0;
    background:transparent;
  }
  .pwa-install-action{
    padding:10px 12px;
  }
}
@media(max-width:720px) and (display-mode:standalone){
  .pwa-install-card{
    display:none!important;
  }
  .site-header .header-inner{
    padding-top:calc(9px + env(safe-area-inset-top,0px))!important;
  }
}

/* Mobile restore: keep the primary nav compact and horizontally scrollable. */
@media(max-width:720px){
  .site-header{
    position:relative!important;
  }
  .site-header .header-inner{
    height:auto!important;
    min-height:0!important;
    padding:9px 20px 8px!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:8px 12px!important;
  }
  .site-header .brand{
    flex:0 0 auto!important;
  }
  .site-header .header-tools{
    margin-left:auto!important;
    max-width:none!important;
  }
  .site-header .content-nav{
    order:3!important;
    flex:1 1 100%!important;
    width:100%!important;
    min-width:100%!important;
    display:flex!important;
    grid-template-columns:none!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    gap:20px!important;
    height:auto!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-top:7px!important;
    padding-bottom:0!important;
    border-top:1px solid var(--line)!important;
    scrollbar-width:none!important;
  }
  .site-header .content-nav::-webkit-scrollbar{
    display:none!important;
  }
  .site-header .content-nav .nav-link{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:auto!important;
    height:28px!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }
  html:lang(en) .site-header .content-nav .nav-link{
    font-size:10px!important;
  }
}

/* Home compact: keep the 7-day trending intro on one line. */
.home-hot-intro{
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Home stats: align separators with the ranking cards above. */
.signal-strip .stat{
  margin-right:0!important;
  padding-left:26px!important;
  padding-right:26px!important;
}
@media(max-width:380px){
  .ranking-page-table .table-row.app-table{
    grid-template-columns:40px minmax(0,1fr) auto auto!important;
    gap:8px 10px!important;
    padding:12px!important;
  }
  .ranking-page-table .table-row.app-table>.entity-icon{
    --icon-size:40px!important;
  }
  .ranking-page-table .table-row.app-table>strong{
    min-width:48px;
  }
}

/* Ranking mobile density pass: keep the useful rows closer to the first viewport. */
@media(max-width:720px){
  .ranking-page-head{
    padding-top:16px!important;
    padding-bottom:14px!important;
  }
  .ranking-page-head .eyebrow{
    font-size:10px;
    line-height:1.35;
    letter-spacing:.06em;
  }
  .ranking-page-head h1,
  html:lang(en) .ranking-page-head h1,
  html:lang(zh-CN) .ranking-page-head h1{
    max-width:13.5ch!important;
    margin:7px 0 8px!important;
    font-size:clamp(29px,8.4vw,38px)!important;
    line-height:1.04!important;
  }
  .ranking-page-head .page-head-lede{
    font-size:12px;
    line-height:1.5;
    max-width:36ch;
  }
  html:lang(en) .ranking-page-head .page-head-lede{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  html:lang(zh-CN) .ranking-page-head .page-head-lede{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .ranking-page-head .page-head-meta{
    margin-top:10px;
  }
  .ranking-page-head .page-head-meta span{
    padding:5px 7px;
    font-size:10px;
  }
  .ranking-page-summary{
    margin-top:0;
  }
  .ranking-page-summary .stat{
    min-height:70px;
    padding:9px 10px!important;
  }
  .ranking-page-summary .stat strong{
    font-size:19px;
    line-height:1;
  }
  .ranking-page-summary .stat span{
    margin-top:2px;
    font-size:10px;
  }
  .ranking-page-summary .stat small{
    margin-top:2px;
  }
  .ranking-page-table{
    padding-top:10px!important;
  }
  .ranking-filters{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:7px!important;
    padding:9px!important;
    margin-bottom:10px!important;
  }
  .ranking-filters label:first-child{
    grid-column:1 / -1;
  }
  .ranking-filters label{
    font-size:9px;
  }
  .ranking-filters input,
  .ranking-filters select,
  .ranking-filters .button,
  .ranking-filters button{
    min-height:34px;
    padding:7px 9px;
    font-size:12px;
  }
  .ranking-filters .button,
  .ranking-filters button{
    grid-column:1 / -1;
  }
  .ranking-page-table .table-row.app-table{
    padding:12px!important;
    min-height:92px!important;
  }
}
