:root{--bg:#0c0c0d;--panel:#161618;--panel2:#1b1b1e;--red:#c71217;--gold:#d19c33;--bone:#e8e0ca;--muted:#98989f;--line:#36363a;--safe-top:env(safe-area-inset-top);--safe-bottom:env(safe-area-inset-bottom)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:#f4f3f0;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display",Inter,Arial,sans-serif}body{padding-bottom:var(--safe-bottom)}
.topbar{position:sticky;top:0;z-index:20;height:calc(62px + var(--safe-top));padding:var(--safe-top) 16px 0;display:flex;align-items:center;gap:14px;background:rgba(12,12,13,.94);backdrop-filter:blur(20px);border-bottom:1px solid #252528}.menu-button{display:none;background:none;border:0;color:var(--bone);font-size:22px;padding:8px}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:900;letter-spacing:1.5px}.brand small{display:block;color:var(--muted);font-size:8px;letter-spacing:2px;margin-top:1px}.brand-mark{color:var(--red);font-size:25px}.live-dot{margin-left:auto;width:8px;height:8px;border-radius:50%;background:#34d66b;box-shadow:0 0 10px #34d66b88}
.shell{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 62px)}aside{position:sticky;top:62px;height:calc(100vh - 62px);overflow:auto;padding:16px 12px;border-right:1px solid #252528;background:#111113}nav .group{padding:10px 0;border-bottom:1px solid #27272a}nav button{width:100%;border:0;background:none;color:#b8b7bc;text-align:left;padding:10px 12px;border-radius:9px;font-size:14px}nav button.heading{color:var(--bone);font-weight:800;letter-spacing:.5px;text-transform:uppercase}nav button.active{background:#27272b;color:white}nav button.active.heading{color:var(--gold)}
main{min-width:0;padding:28px clamp(18px,4vw,54px) 50px}.page-head{display:grid;grid-template-columns:1fr auto;margin-bottom:22px}.eyebrow{grid-column:1;color:var(--red);font-size:11px;font-weight:900;letter-spacing:1.6px;margin:0 0 7px}.page-head h1{grid-column:1;margin:0;font-size:clamp(30px,5vw,48px);line-height:1;text-transform:uppercase;letter-spacing:1px}.page-head>p:not(.eyebrow):not(.updated){grid-column:1;color:var(--muted);margin:8px 0 0}.updated{grid-column:2;grid-row:1/4;align-self:center;color:var(--muted);font-size:12px;text-align:right}.updated strong{display:block;color:var(--red);font-size:9px;letter-spacing:1px;margin-bottom:4px}
.dashboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.panel{background:var(--panel);border:1px solid #222225;border-radius:16px;overflow:hidden}.panel-title{padding:16px 16px 8px;color:var(--red);font-size:10px;font-weight:900;letter-spacing:1.4px}.ranking{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--line)}.ranking:last-child{border-bottom:0}.rank{color:#aaa;font-weight:700;text-align:right}.ranking:first-of-type .rank,.ranking:first-of-type .score{color:var(--gold)}.name{font-weight:650;line-height:1.18;overflow-wrap:anywhere}.sub{display:block;color:var(--muted);font-size:12px;font-weight:450;margin-top:3px}.score{font-variant-numeric:tabular-nums;color:#d0cfd2;font-weight:650}.move{display:inline-block;margin-left:6px;font-size:11px}.up{color:#35db6d}.down{color:#ff4d55}.list-panel{max-width:980px}.table-head{display:grid;grid-template-columns:40px minmax(0,1fr) repeat(3,90px);padding:10px 14px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.6px}.wide-row{grid-template-columns:34px minmax(0,1fr) repeat(3,90px)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hero-card{background:linear-gradient(135deg,#2b1719,var(--panel) 58%);border:1px solid #4a2528;border-radius:18px;padding:22px}.hero-card .label{color:var(--gold);font-size:10px;font-weight:900;letter-spacing:1.4px}.hero-card h2{font-size:28px;margin:9px 0 4px}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat{background:var(--panel);border-radius:14px;padding:16px}.stat b{font-size:24px;color:var(--gold)}.stat small{display:block;color:var(--muted);margin-top:5px}.empty,.loading{padding:36px;text-align:center;color:var(--muted);background:var(--panel);border-radius:16px}.error{color:#ff7378}
.draw-hero{margin-bottom:14px}.round-picker{display:none}.bracket-scroll{overflow-x:auto;padding:4px 0 18px;scroll-snap-type:x proximity}.bracket{display:flex;gap:14px;min-width:max-content;align-items:stretch}.round{width:220px;padding:12px;background:#111113;border:1px solid #26262a;border-radius:15px;scroll-snap-align:start}.round h3{position:sticky;top:0;margin:0 0 12px;color:var(--red);font-size:10px;letter-spacing:1px;text-transform:uppercase}.round-matches{height:100%;display:flex;flex-direction:column;justify-content:space-around;gap:7px}.entrant{position:relative;min-height:38px;display:flex;align-items:center;padding:9px 11px;background:var(--panel2);border:1px solid #333338;border-radius:9px;font-size:13px;font-weight:650}.entrant i{position:absolute;right:-20px;width:20px;border-top:1px solid #555}.entrant.champion{border-color:var(--gold);color:var(--gold);background:#2a2115}.entrant.pending{color:var(--muted);font-weight:450}
.artist-bracket{align-items:flex-start}.artist-bracket .round{height:calc(var(--draw-rows) * 23px + 50px)}.round-matches.aligned{height:auto;display:grid;grid-template-rows:repeat(var(--draw-rows),23px);gap:0}.round-matches.aligned .entrant{min-height:38px;align-self:center;z-index:1}.view-tabs{display:inline-flex;gap:3px;padding:3px;margin-bottom:14px;background:#1a1a1d;border:1px solid #2d2d31;border-radius:11px}.view-tabs button{border:0;border-radius:8px;padding:9px 18px;background:transparent;color:var(--muted);font-weight:750}.view-tabs button.active{background:#343438;color:white}.dna-lead{display:grid;grid-template-columns:1.5fr 1fr;gap:14px;margin-bottom:14px}.dna-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dna-stats div{display:flex;flex-direction:column;justify-content:center;padding:18px;background:var(--panel);border:1px solid #242428;border-radius:16px}.dna-stats b{font-size:28px;color:var(--gold)}.dna-stats span{margin-top:5px;color:var(--muted);font-size:12px}.dna-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:14px}.dna-panel{padding-bottom:10px}.dna-bar{display:grid;grid-template-columns:48px minmax(80px,1fr) 38px;align-items:center;gap:9px;padding:9px 14px;font-size:12px}.dna-bar>span{font-weight:700}.dna-bar i{height:8px;background:#29292d;border-radius:8px;overflow:hidden}.dna-bar b{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--gold));border-radius:8px}.dna-bar strong{text-align:right;color:var(--muted);font-size:11px}
.streak-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.streak-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:9px;align-items:center;padding:12px 14px;border-top:1px solid var(--line)}.streak-row.current-streak{background:linear-gradient(90deg,#3b1c14,#181719);box-shadow:inset 3px 0 var(--gold)}.streak-number{text-align:right;color:var(--gold)}.streak-number b{display:block;font-size:20px}.streak-number small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.trophy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.trophy-card{min-height:170px;padding:18px;border-radius:16px;background:linear-gradient(145deg,#1d1a16,var(--panel) 70%);border:1px solid #3c3324}.trophy-card.feature{background:linear-gradient(145deg,#492229,var(--panel) 72%);border-color:#6b353a}.trophy-card>span{color:var(--gold);font-size:22px}.trophy-card .label{margin-top:24px;color:var(--red);font-size:9px;font-weight:900;letter-spacing:1.2px}.trophy-card h2{margin:7px 0 5px;font-size:22px}.trophy-card p{margin:0;color:var(--muted);font-size:12px}
.activity-tabs{display:inline-flex;gap:3px;padding:3px;margin-bottom:14px;background:#1a1a1d;border:1px solid #2d2d31;border-radius:11px}.activity-tabs button{border:0;border-radius:8px;padding:9px 16px;background:transparent;color:var(--muted);font-weight:750}.activity-tabs button.active{background:#343438;color:#fff}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.activity-panel{padding-bottom:10px}.activity-group{padding:0 14px}.activity-group h3{margin:10px 0 5px;font-size:10px;letter-spacing:1.1px}.activity-group h3.up,.activity-icon.up,.activity-change.up{color:#35db6d}.activity-group h3.down,.activity-icon.down,.activity-change.down{color:#ff4d55}.activity-group h3.new,.activity-icon.new,.activity-change.new{color:var(--gold)}.activity-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:39px}.activity-row.activity-new{margin:3px 0;padding:3px 8px;background:#d19c331c;border:1px solid #d19c3347;border-radius:8px}.activity-icon{text-align:center;font-weight:900}.activity-change{text-align:right;font-variant-numeric:tabular-nums}.activity-change b{display:block;font-size:12px}.activity-change small{display:block;margin-top:2px;color:var(--muted);font-size:9px}.activity-none{margin:0;padding:8px 0;color:var(--muted);font-size:12px}.activity-divider{height:1px;margin:9px 14px;background:#ffffff14}
@media(max-width:850px){.dashboard,.streak-grid,.trophy-grid,.dna-grid,.activity-grid{grid-template-columns:1fr}.split,.dna-lead{grid-template-columns:1fr}.updated{grid-column:1;grid-row:auto;text-align:left;margin:14px 0 0}.table-head{display:none}.wide-row{grid-template-columns:30px minmax(0,1fr) auto}.wide-row .mobile-hide{display:none}}
@media(max-width:640px){.menu-button{display:block}.topbar{padding-left:8px}.shell{display:block}aside{position:fixed;z-index:30;left:0;top:0;width:min(82vw,310px);height:100vh;padding:calc(70px + var(--safe-top)) 12px 24px;transform:translateX(-102%);transition:transform .22s ease;box-shadow:18px 0 40px #0008}aside.open{transform:none}.scrim{position:fixed;inset:0;z-index:25;background:#0009;display:none}.scrim.open{display:block}main{padding:24px 12px 40px}.page-head{padding:0 6px}.panel{border-radius:14px}.ranking{padding:12px 11px}.brand{font-size:16px}.score{font-size:13px}.trophy-grid{grid-template-columns:1fr 1fr;gap:9px}.trophy-card{min-height:130px;padding:14px}.trophy-card .label{margin-top:13px}.trophy-card h2{font-size:17px}.trophy-card p{font-size:11px}.dna-stats b{font-size:23px}.view-tabs{display:flex}.view-tabs button{flex:1}.round-picker{display:none}.bracket-scroll{overflow-x:auto;margin:0 -12px;padding:4px 12px 18px;scroll-padding-left:12px;scroll-snap-type:x mandatory}.bracket,.artist-bracket{display:flex;gap:26px;min-width:max-content;align-items:flex-start}.round,.artist-bracket .round{display:block;width:min(82vw,300px);height:calc(var(--draw-rows) * 15px + 57px);padding:12px;scroll-snap-align:start}.round h3{position:static;height:15px;margin:0 0 10px;padding:0;text-align:center;background:transparent;font-size:11px;line-height:15px}.round-matches.aligned{height:auto;display:grid;grid-template-rows:repeat(var(--draw-rows),15px);gap:0}.round-matches.aligned .entrant{height:25px;min-height:25px;align-self:center}.entrant{padding:0 9px;border-radius:5px;font-size:12px;line-height:1.15;white-space:nowrap;overflow:hidden}.entrant span{display:block;overflow:hidden;text-overflow:ellipsis}.entrant i{display:block;right:-26px;width:26px}}
