@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700;800;900&family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--bg:#10111f;--bg2:#17182a;--nav:#141626;--panel:#1d2135;--paper:#f7e6bf;--yellow:#f5ba37;--yellow2:#ffe07d;--pink:#ff559f;--violet:#a573f5;--white:#fff8eb;--muted:#a7a6bc;--ink:#080a16;--border:rgba(243,224,177,.22);--fonthead:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--fontbody:'DM Sans',Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--white);background:var(--bg);font:14px/1.5 var(--fontbody);overflow-x:hidden}button{font:inherit;cursor:pointer}button:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--pink);outline-offset:3px}button{transition:background .18s,border-color .18s,transform .18s,color .18s}button:active{transform:translateY(2px)}a{color:inherit}p,h1,h2,h3{margin:0}.paper-grain{pointer-events:none;position:fixed;inset:0;z-index:85;opacity:.10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");mix-blend-mode:screen}.screen-glow{position:fixed;z-index:-1;pointer-events:none;inset:0;background:radial-gradient(ellipse 50% 48% at 81% 15%,rgba(111,58,146,.14),transparent),radial-gradient(ellipse 30% 30% at 9% 80%,rgba(215,110,67,.08),transparent)}.app-shell{min-height:100vh;display:grid;grid-template-columns:226px minmax(0,1fr);grid-template-rows:78px minmax(calc(100vh - 78px),auto)}
.topbar{grid-column:1/-1;grid-row:1;display:flex;position:sticky;top:0;z-index:50;align-items:center;gap:28px;background:rgba(14,15,27,.96);border-bottom:1px solid var(--border);box-shadow:0 8px 22px rgba(0,0,0,.2);padding:0 26px}.brand{display:flex;align-items:center;gap:8px;width:214px;flex-shrink:0;background:none;border:0;color:#fff;text-align:left;padding:4px 0}.brand-icon{height:48px;width:45px;display:flex;align-items:center;justify-content:center}.brand-icon img{max-width:100%;height:100%;object-fit:contain}.brand-copy{display:flex;align-items:center;gap:9px}.brand-copy b{font:900 42px/1 var(--fonthead);letter-spacing:-2px}.brand-period{color:var(--pink)}.brand-copy small{font:800 11px/1.13 var(--fonthead);letter-spacing:.6px;color:#e8c984}.topnav{display:flex;align-items:stretch;gap:2px;height:100%;flex:1}.navitem{border:0;background:none;color:#b6b4c7;font:800 15px var(--fonthead);letter-spacing:1px;padding:0 14px;border-bottom:3px solid transparent}.navitem:hover,.navitem.active{color:var(--white);background:rgba(255,255,255,.04);border-bottom-color:var(--yellow)}.top-actions{display:flex;align-items:center;gap:9px}.online-pill{white-space:nowrap;color:#c7c9d9;font:700 10px var(--fontbody);letter-spacing:1px;margin-right:6px}.online-pill i,.status-lamp,.pulse-dot,.live-blink{display:inline-block;background:#7cfa97;border-radius:50%;width:7px;height:7px;margin-right:6px;box-shadow:0 0 11px rgba(124,250,151,.9);animation:pulse 1.6s infinite}.round-btn{border:1px solid rgba(255,255,255,.18);background:#22253a;color:#fff;width:35px;height:35px;font-size:18px;position:relative}.round-btn:hover{background:#393c59}.has-count span{position:absolute;right:3px;top:2px;width:6px;height:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 8px var(--pink)}.join-btn{background:var(--yellow);border:2px solid #fec94d;color:#18151b;padding:9px 13px;font:900 14px var(--fonthead);letter-spacing:.8px;white-space:nowrap;box-shadow:4px 4px 0 #634228}.join-btn:hover,.button-yellow:hover{background:#ffdb76}.join-btn span{margin-left:9px}
.sidebar{grid-row:2;grid-column:1;position:sticky;top:78px;height:calc(100vh - 78px);min-height:600px;display:flex;flex-direction:column;z-index:20;background:linear-gradient(180deg,#18192c 0,#121422 100%);border-right:1px solid var(--border);padding:27px 12px 15px}.side-head{padding:4px 11px 26px;color:#83849f;display:flex;gap:7px;align-items:center;font:700 10px var(--fonthead);letter-spacing:1.7px}.side-pin{height:8px;width:8px;border:2px solid var(--yellow);transform:rotate(45deg)}.side-line{flex:1;border-top:1px solid #414152;margin-left:7px}.sideitem{display:flex;align-items:center;gap:12px;background:none;border:0;border-left:3px solid transparent;color:#b8b9c9;text-align:left;padding:14px 11px;min-height:54px;font:800 15px var(--fonthead);letter-spacing:1px}.sideitem:hover{background:#26273a;color:white}.sideitem.selected{background:linear-gradient(90deg,rgba(245,186,55,.16),rgba(255,255,255,0));color:var(--yellow);border-left-color:var(--yellow)}.sideitem b{font:600 22px var(--fonthead);margin-left:auto}.side-num{font:800 12px var(--fonthead);color:#75758e}.sideitem.selected .side-num{color:var(--yellow)}.side-sticker{position:relative;overflow:hidden;margin:38px 10px auto;background:#f5bb40;color:#171624;padding:17px 15px 18px;transform:rotate(-3deg);box-shadow:6px 7px 0 #0c0c17}.side-sticker:after{content:'✳';position:absolute;font-size:110px;right:-28px;bottom:-56px;color:rgba(30,22,20,.1)}.side-sticker small{font:800 10px var(--fonthead);letter-spacing:1px}.side-sticker strong{display:block;font:900 40px/.78 var(--fonthead);letter-spacing:-1px;margin:13px 0}.side-sticker span{font:900 17px/1 var(--fonthead);display:block}.side-bottom{margin-top:30px;display:flex;align-items:center;gap:9px;padding:18px 10px 4px;border-top:1px solid var(--border);font:800 12px/1.3 var(--fonthead);letter-spacing:1px}.side-bottom small{font:600 9px var(--fontbody);color:#83849d;letter-spacing:.7px}.tiny-stamp{font:900 11px var(--fonthead);margin-left:auto;padding:3px 6px;border:1px solid #6e6b82;color:#a7a0ae}
.workspace{grid-column:2;grid-row:2;min-width:0;max-width:1900px;width:100%;margin:auto;padding:25px clamp(20px,3vw,54px) 0}.screen{display:none;min-height:calc(100vh - 170px);animation:screenIn .27s ease-out}.screen.active{display:block}.utility-row{display:flex;justify-content:space-between;gap:10px;font:700 10px var(--fontbody);letter-spacing:1.4px;color:#85869f;padding:0 1px 20px}.utility-row span:first-child{color:var(--yellow)}.tiny-square{width:7px;height:7px;display:inline-block;margin-right:8px;background:var(--yellow)}
.hero-grid{display:grid;grid-template-columns:minmax(400px,.94fr) minmax(380px,1.06fr);background:radial-gradient(circle at 90% 8%,#3c2b58 0,transparent 50%),linear-gradient(130deg,#1c1a2e,#181526);border:1px solid #6a5363;min-height:510px;position:relative;box-shadow:11px 11px 0 #080b18;overflow:hidden}.hero-grid:after{content:'';pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(130deg,transparent 0 11px,rgba(255,255,255,.014) 12px 13px);mix-blend-mode:screen}.hero-copy{padding:37px 16px 27px 43px;position:relative;z-index:3}.line-label{font:800 10px var(--fontbody);color:#f5c76b;letter-spacing:1.2px}.pulse-dot{background:var(--pink);box-shadow:0 0 10px var(--pink)}.hero-masthead{display:flex;align-items:start;margin-top:15px;gap:18px}.stencil-fbi{font:900 clamp(80px,9vw,166px)/.8 var(--fonthead);letter-spacing:-5px;color:var(--yellow);text-shadow:-3px 3px #d47736,5px 7px #0c0c17}.flashdot{color:var(--pink);display:inline-block;transform:rotate(10deg)}.title-seal{font:900 19px/.86 var(--fonthead);color:var(--pink);border:4px double var(--pink);padding:8px;transform:rotate(10deg);margin-top:4px}.hero-copy h1{font:900 clamp(48px,5.6vw,88px)/.83 var(--fonthead);letter-spacing:-1px;color:#fff3df;margin:9px 0 22px;transform:skew(-2deg)}.hero-copy h1 em{font-style:normal;color:var(--yellow)}.h1-star{font-size:.45em;color:var(--pink);vertical-align:top;margin-left:8px}.hero-desc{max-width:400px;color:#cbcada;font-size:13px;line-height:1.7}.hero-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.button{border:2px solid transparent;min-height:42px;padding:11px 16px;font:900 15px/1 var(--fonthead);letter-spacing:.8px;display:inline-flex;justify-content:center;align-items:center;gap:12px}.button-yellow{background:var(--yellow);border-color:#f6bd44;color:#121525;box-shadow:4px 4px 0 #67472e}.button-ghost{background:#141727;color:var(--white);border-color:#757086}.button-ghost:hover{background:#363047}.key-tag{font:700 9px var(--fontbody);border:1px solid #826532;padding:3px 4px;letter-spacing:0}.hero-foot{display:flex;gap:14px;align-items:center;margin-top:27px;font:700 10px var(--fonthead);color:#8f8c9e;letter-spacing:1px}.smallbadge{font:900 12px var(--fonthead);color:var(--yellow)}.hero-art{position:relative;min-height:500px;background:linear-gradient(#272037,#281933);border-left:3px solid #a87861;overflow:hidden}.hero-art:before{content:'';position:absolute;z-index:1;left:-50px;top:-30px;height:125%;width:100px;transform:rotate(9deg);background:linear-gradient(90deg,#211e30,#403050);box-shadow:10px 0 var(--yellow)}.hero-art-img{position:absolute;inset:0;background-image:linear-gradient(180deg,transparent 57%,rgba(9,8,25,.7)),url('assets/hero.webp');background-size:cover;background-position:50% center;filter:saturate(1.1) contrast(1.03);transform:scale(1.03);animation:heroDrift 11s ease-in-out infinite alternate}.hero-art-label{position:absolute;z-index:3;right:12px;bottom:20px;background:#100f21e6;border:1px solid #b96c8c;padding:12px 16px;transform:rotate(-2deg);display:flex;flex-direction:column}.hero-art-label b{font:900 25px var(--fonthead);letter-spacing:.3px}.hero-art-label small{font:800 9px var(--fontbody);color:#f8c865;letter-spacing:1.2px}.corner-lock{z-index:3;position:absolute;right:13px;top:13px;background:#111126c9;font:700 10px var(--fontbody);color:#e6dfe9;padding:7px 9px}.hero-soundfx{position:absolute;top:19px;left:47px;z-index:3;font:900 51px var(--fonthead);color:#ffde55;text-shadow:3px 3px 0 #241129,-2px -2px 0 #241129;transform:rotate(-12deg)}
.hq-bottom{margin-top:25px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.8fr);gap:15px}.dash-panel{min-width:0;min-height:176px;background:#1e2034;border:1px solid #505066;position:relative;display:flex;flex-direction:column;overflow:hidden}.panel-top{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:11px 16px;border-bottom:1px solid #48455b;font:900 13px var(--fonthead);letter-spacing:1.2px}.panel-top small{color:#8f8d9e;font:700 9px var(--fontbody)}.dispatch-content{display:flex;gap:15px;padding:15px 16px;flex:1}.dispatch-content .dispatch-symbol{font:900 50px/1 var(--fonthead);color:var(--pink);transform:rotate(-15deg)}.dispatch-content small{font:800 10px var(--fontbody);color:var(--yellow);letter-spacing:1.1px}.dispatch-content h3{font:900 20px/1.05 var(--fonthead);margin:4px 0 5px}.dispatch-content p{font-size:11px;color:#a7a6b8;max-width:400px;line-height:1.55}.dispatch-bottom{padding:0 16px 14px;display:flex;justify-content:space-between;align-items:center;gap:8px}.dispatch-bottom button{color:var(--yellow);border:0;border-bottom:1px solid var(--yellow);padding:0 0 3px;background:none;font:900 13px var(--fonthead);letter-spacing:1px}.dispatch-bottom span{color:#76768b;font:700 9px var(--fontbody)}.dossier-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:20px 11px 12px;text-align:center;flex:1}.dossier-stats>div+div{border-left:1px solid #48445b}.dossier-stats strong{display:block;font:900 43px/.95 var(--fonthead);color:var(--yellow)}.dossier-stats span{font:800 9px var(--fonthead);color:#9998a9;letter-spacing:.7px}.text-action{align-self:stretch;text-align:right;background:none;border:0;border-top:1px solid #474459;color:var(--yellow);font:900 12px var(--fonthead);letter-spacing:1px;padding:9px 15px}.text-action:hover{background:#2c293e}.arcade-tease{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;min-height:100px}.pixel-star{font:900 67px var(--fonthead);color:var(--pink);filter:drop-shadow(4px 3px #49275e);animation:starSpin 4s ease-in-out infinite}.arcade-tease b{font:900 35px/.74 var(--fonthead)}.arcade-tease small{display:block;color:#b5adc1;font:700 9px var(--fonthead);margin-top:9px}.ticker{display:flex;align-items:stretch;border:1px solid #574859;margin:27px 0 0;height:39px;background:#141526;overflow:hidden}.ticker>span{display:flex;align-items:center;background:var(--pink);padding:0 14px;min-width:106px;color:#141123;font:900 15px var(--fonthead);white-space:nowrap}.ticker-clip{flex:1;overflow:hidden;display:flex;align-items:center}.ticker-text{white-space:nowrap;animation:marquee 30s linear infinite;font:800 11px var(--fontbody);letter-spacing:2px;color:#d9c9d7;padding-left:100%}
.screen-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;padding:23px 2px 28px;border-bottom:1px solid var(--border);margin-bottom:22px}.overline{font:800 10px var(--fontbody);letter-spacing:1.6px;color:var(--yellow)}.screen-heading h2{font:900 clamp(48px,7vw,96px)/.9 var(--fonthead);letter-spacing:-2px;margin:10px 0 8px}.screen-heading h2 em{font-style:normal;color:var(--yellow)}.screen-heading p{color:#aaa9bd;font-size:13px;max-width:550px}.heading-counter{min-width:155px;text-align:center;border:2px solid var(--yellow);padding:11px 18px;background:#2b2437;transform:rotate(3deg)}.heading-counter b{display:block;font:900 57px/.9 var(--fonthead);color:var(--yellow)}.heading-counter span{font:800 12px var(--fonthead);letter-spacing:2px}.button-outline-small{border:1px solid #8a83a3;background:#222238;color:#eae1e5;padding:12px 18px}.button-outline-small:hover{border-color:var(--yellow)}
.cases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.case-card{position:relative;display:flex;flex-direction:column;text-align:left;background:#212235;border:1px solid #62596a;padding:0;min-height:306px;overflow:hidden;color:var(--white);box-shadow:5px 5px 0 #0b0e19}.case-card:hover{border-color:var(--yellow);transform:translate(-2px,-3px);box-shadow:8px 8px 0 #0b0e19}.case-photo{height:162px;position:relative;background-position:50% 34%;background-size:cover;filter:saturate(1.05)}.case-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(19,16,33,0) 24%,#1e1e32 100%)}.case-card:nth-child(3n+2) .case-photo{background-position:50% 50%}.case-tag{position:absolute;left:14px;top:14px;background:var(--yellow);padding:6px 9px;font:900 13px var(--fonthead);color:#15141c;transform:rotate(-3deg)}.case-tag.closed{background:#9af3a2}.case-details{padding:14px 17px;display:flex;flex-direction:column;gap:6px;flex:1}.case-details small{font:800 9px var(--fontbody);letter-spacing:1.4px;color:var(--pink)}.case-details h3{font:900 28px/.94 var(--fonthead)}.case-details p{font-size:11px;color:#b3b3c3;line-height:1.5}.case-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #484455;padding:9px 17px;color:#e2d2c5;font:900 12px var(--fonthead);letter-spacing:1px}.case-bottom b{color:var(--yellow);font-size:17px}.archive-strip{display:flex;align-items:center;gap:26px;background:#27253d;border:1px solid #6a5c78;margin:26px 0;padding:17px 26px;min-height:100px}.archive-strip .stamp{transform:rotate(-9deg);border:3px solid #ff627e;color:#ff7589;font:900 24px var(--fonthead);padding:5px 10px;white-space:nowrap}.archive-strip div{flex:1}.archive-strip b{display:block;font:900 25px var(--fonthead)}.archive-strip small{display:block;color:#a9a5b4}
.map-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);gap:18px}.map-stage{position:relative;min-height:510px;overflow:hidden;border:2px solid #6d627f;background:#20213b;box-shadow:6px 6px #0e0f1c}.citymap{position:absolute;inset:0;width:100%;height:100%}.map-overlay-grid{pointer-events:none;position:absolute;z-index:1;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 6px,rgba(0,0,0,.15) 7px);opacity:.6}.map-coord{fill:#f6d075;font:700 15px var(--fonthead);letter-spacing:2px}.map-water{fill:#687bb7;font:900 38px var(--fonthead);letter-spacing:8px}.map-pin{position:absolute;z-index:3;display:flex;align-items:center;flex-direction:column;transform:translate(-50%,-50%);border:0;background:none;color:#fff;text-shadow:2px 3px #080b19;font:900 12px var(--fonthead);letter-spacing:1px}.map-pin b{display:grid;place-items:center;background:#23223c;color:#fff;width:39px;height:39px;border:3px solid #eac278;border-radius:50%;box-shadow:0 0 0 6px #f5ba3726,0 0 20px #f5ba3755;font-size:21px;animation:pinBeat 2s infinite}.map-pin span{margin-top:7px;background:#111326d9;padding:3px 8px;white-space:nowrap}.map-pin:hover b,.map-pin.selected b{background:var(--pink);border-color:#fff}.map-legend{position:absolute;bottom:14px;left:14px;background:#151526df;padding:7px 11px;border:1px solid #77708a;font:700 10px var(--fontbody);letter-spacing:1px}.map-legend span{color:var(--yellow)}.district-card{background:#1d2033;border:1px solid #65586d;padding:25px;display:flex;flex-direction:column;min-height:510px}.card-kicker{font:800 10px var(--fontbody);color:var(--pink);letter-spacing:1px}.district-card h3{font:900 55px/.87 var(--fonthead);margin:16px 0}.district-card p{color:#b3b0bf;font-size:13px;line-height:1.7}.signal-meter{margin-top:auto}.signal-meter span{font:800 10px var(--fontbody);letter-spacing:1.3px;color:#a19aad}.signal-meter div{display:flex;gap:5px;margin-top:8px}.signal-meter i{flex:1;height:9px;background:var(--yellow)}.signal-meter i:last-child{background:#5b5067}.district-case{background:#111628;padding:16px;margin:19px 0}.district-case small{font:800 10px var(--fontbody);color:var(--pink);letter-spacing:1.2px;display:block}.district-case strong{display:block;font:900 24px var(--fonthead);margin-top:5px}.wide{width:100%}.city-news{display:flex;align-items:center;gap:14px;background:#202337;border-left:4px solid var(--pink);padding:18px;margin-top:22px}.city-news b{white-space:nowrap;font:900 16px var(--fonthead);color:#fff}.city-news>span{flex:1;font:700 12px var(--fontbody);color:#bdbacf}.city-news button{background:none;border:0;color:var(--yellow);font:900 12px var(--fonthead);white-space:nowrap}
.arcade-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(275px,.7fr);gap:18px}.arcade-machine{border:2px solid #e7a9b5;background:#17152b;box-shadow:8px 8px #0c0c16;overflow:hidden}.arcade-topline{display:flex;align-items:center;justify-content:space-between;background:#312442;color:#f3c56d;font:900 13px var(--fonthead);letter-spacing:1.3px;padding:11px 17px}#gameState{color:#bdb0c6;font-size:12px}#gameCanvas{display:block;width:100%;height:auto;background:#151a31;touch-action:manipulation;image-rendering:auto}.game-hud{display:flex;align-items:center;justify-content:space-around;gap:6px;padding:11px;border-top:2px solid #675675;background:#1d1a30;font:800 13px var(--fonthead)}.game-hud b{color:var(--yellow);margin-left:8px}.game-actions{display:flex;align-items:center;gap:10px;padding:14px;flex-wrap:wrap}.game-actions span{margin-left:auto;color:#9795a8;font:800 10px var(--fontbody)}.jump-btn{min-width:143px}.arcade-sidebar{display:flex;flex-direction:column;gap:16px}.arcade-instructions,.upgrade-shop{padding:22px;background:#24243b;border:1px solid #665e70}.arcade-instructions>small{color:var(--pink);font:800 11px var(--fontbody);letter-spacing:1.3px}.arcade-instructions h3{font:900 34px/.9 var(--fonthead);margin:11px 0 15px}.arcade-instructions p{color:#b0aabb;font-size:12px;line-height:1.7}.control-keys{display:flex;align-items:center;gap:10px;margin-top:24px;color:#908da2;font:800 10px var(--fontbody)}kbd{background:#15182a;color:#f5cc68;border:1px solid #78717d;padding:8px 13px;font:900 14px var(--fonthead)}.upgrade-shop{padding:17px}.rep-line{display:flex;justify-content:space-between;gap:10px;margin:14px 0;padding-bottom:13px;border-bottom:1px solid #5a5268;color:#aaa9be;font:700 10px var(--fontbody)}.rep-line b{font:900 20px var(--fonthead);color:var(--yellow)}.upgrade-item{display:flex;align-items:center;text-align:left;gap:10px;background:#171a2c;border:1px solid #4d4d5f;color:#fff;width:100%;padding:10px;margin-top:9px}.upgrade-item:hover{border-color:var(--yellow)}.upgrade-item .up-icon{background:#332b48;color:var(--pink);font:900 25px var(--fonthead);width:36px;height:36px;text-align:center}.upgrade-item>span:nth-child(2){flex:1}.upgrade-item b{display:block;font:900 17px var(--fonthead)}.upgrade-item small{display:block;color:#8d889e;font:500 10px var(--fontbody)}.upgrade-item>span:last-child{font:900 10px var(--fonthead);color:var(--yellow)}.upgrade-item:disabled{opacity:.8;cursor:default}
.profile-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:23px}.id-card{background:#efdab1;border:8px solid #181629;box-shadow:0 0 0 2px #ba905d,10px 10px #080b17;color:#161728;transform:rotate(-1.2deg);min-height:510px;align-self:start}.id-top{display:flex;gap:14px;align-items:center;border-bottom:3px solid #1e2036;padding:14px 21px;background:#d2b887}.id-top img{width:70px;height:65px;object-fit:contain}.id-top b{font:900 28px/.85 var(--fonthead)}.id-top small{display:block;font:800 10px var(--fontbody);letter-spacing:2px;margin-top:5px}.id-body{padding:25px;display:grid;grid-template-columns:40% 1fr;gap:17px;min-height:325px}.id-photo{background:#24192f;border:5px solid white;box-shadow:4px 4px #6a6559;max-height:300px;overflow:hidden}.id-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 0}.id-body small{display:block;margin-top:10px;font:800 9px var(--fontbody);letter-spacing:1.3px;color:#65606a}.id-body small:first-child{margin-top:0}.id-body h3{font:900 42px/.9 var(--fonthead);margin:6px 0 17px}.id-body b{font:900 21px var(--fonthead)}.id-body .active-text{color:#397748}.id-bottom{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;border-top:2px solid #1d1823}.id-bottom span{font:700 19px var(--fonthead);letter-spacing:3px}.id-bottom b{font:900 19px var(--fonthead);border:3px solid #b14249;color:#b14249;transform:rotate(-7deg);padding:2px 8px}.profile-report{display:flex;flex-direction:column;gap:15px}.profile-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.profile-stat-row>div{padding:18px;text-align:center;background:#23243a;border:1px solid #655973}.profile-stat-row strong{display:block;font:900 45px/.9 var(--fonthead);color:var(--yellow)}.profile-stat-row span{display:block;font:800 10px var(--fontbody);color:#9a96ae;margin-top:7px}.profile-progress,.profile-note{background:#212238;border:1px solid #595569}.profile-progress #caseChecklist{display:grid;grid-template-columns:1fr 1fr;padding:10px;gap:6px}.checklist-item{display:flex;gap:9px;align-items:center;padding:8px 10px;background:#171a2c;font:800 12px var(--fonthead)}.checklist-item i{font:900 17px var(--fonthead);font-style:normal;color:#71748a}.checklist-item.done i{color:#9bf09c}.profile-note{padding:20px}.profile-note>b{font:900 18px var(--fonthead);color:var(--yellow)}.profile-note p{font-size:12px;color:#aaa7b9;margin:9px 0 19px}.profile-links{display:flex;gap:10px;flex-wrap:wrap}.profile-links button{border:1px solid #84738e;background:#2c263e;color:#fff;padding:12px 15px;font:900 14px var(--fonthead)}.profile-links button:hover{border-color:var(--yellow)}
.footer-line{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:30px 0 22px;margin-top:24px;color:#6b6d85;font:800 9px var(--fontbody);letter-spacing:1px}.footer-line i{color:var(--pink);font-style:normal}
.overlay,.game-result{position:fixed;z-index:100;inset:0;display:flex;align-items:center;justify-content:center;padding:20px}.overlay[hidden],.game-result[hidden],.phone-cover[hidden]{display:none}.shade{position:absolute;inset:0;background:rgba(4,5,16,.85);backdrop-filter:blur(7px)}.case-modal{position:relative;z-index:2;width:min(920px,100%);background:#f1deb7;color:#171727;box-shadow:16px 16px 0 #0e0b19;max-height:min(92vh,900px);overflow:auto;border:6px solid #101222}.modal-top{background:#18182b;color:#f7dc95;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;font:900 14px var(--fonthead);letter-spacing:1.1px}.modal-top button,.phone-top button{color:#fff;background:#493047;border:1px solid #916778;width:32px;height:32px;font-size:15px}.modal-main{display:grid;grid-template-columns:38% 62%;padding:21px;gap:20px}.modal-art{position:relative;min-height:440px;background:#1a1925;overflow:hidden}.modal-art img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:40% center}.modal-art-sticker{position:absolute;bottom:18px;left:18px;transform:rotate(-8deg);border:5px solid #ed5760;color:#ed5760;font:900 29px var(--fonthead);padding:4px 9px;background:#191122d9}.modal-copy{padding-right:18px}.modal-copy .overline{color:#ba466b}.modal-copy h2{font:900 clamp(38px,4vw,60px)/.9 var(--fonthead);margin:10px 0 14px}.modal-copy p{font-size:13px;line-height:1.65}.evidence-box{background:#e4cba1;border:2px dashed #aa9371;margin:17px 0;padding:15px}.evidence-box b{font:900 16px var(--fonthead)}.evidence-box ul{list-style:none;padding:0;margin:10px 0 0}.evidence-box li{margin:5px 0;font-size:12px}.evidence-box li:before{content:'✳';color:#b44968;margin-right:9px}.answers{display:grid;gap:8px;margin-top:9px}.answers button{padding:10px 14px;text-align:left;background:#1f2236;color:#fff;border:2px solid #3d364d;font:800 13px var(--fontbody)}.answers button:hover{background:#34334b;border-color:#eeb74e}.answers button.correct{border-color:#37824e;background:#d5efcc;color:#193c1d}.answers button.incorrect{border-color:#bd4354;background:#eac3b4;color:#642729}.case-feedback{min-height:26px;color:#ad4154;font-weight:800;margin-top:11px!important}.case-feedback.good{color:#267847}
.phone-cover{position:fixed;z-index:87;inset:0;background:rgba(0,0,0,.55)}.phone-drawer{position:fixed;z-index:90;right:18px;bottom:18px;width:min(340px,calc(100vw - 30px));height:min(650px,calc(100vh - 30px));background:#121624;border:6px solid #454354;border-radius:31px;box-shadow:0 15px 70px #050410,0 0 0 3px #a47b49;transform:translateY(calc(100% + 60px));visibility:hidden;pointer-events:none;transition:transform .3s,visibility .3s;display:flex;flex-direction:column;overflow:hidden}.phone-drawer.open{transform:translateY(0);visibility:visible;pointer-events:auto}.phone-top{display:flex;justify-content:space-between;align-items:center;gap:5px;padding:17px 17px 8px;font:900 11px var(--fonthead);letter-spacing:1px}.phone-screen{padding:8px 18px 12px;overflow:auto;flex:1}.phone-status{display:flex;justify-content:space-between;color:#82dfb5;font:800 9px var(--fontbody)}.phone-avatar{margin:21px auto 9px;border:3px solid #e7b64b;border-radius:50%;background:linear-gradient(160deg,#a55b81,#312447);width:65px;height:65px;display:grid;place-items:center;color:#ffdc79;font:900 39px var(--fonthead);box-shadow:0 0 0 6px #7c5c5366}.phone-screen h2{text-align:center;font:900 37px var(--fonthead)}.phone-subtitle{text-align:center;color:#9a91a9;font:800 10px var(--fontbody);letter-spacing:1.5px}.phone-messages{min-height:160px;max-height:235px;overflow:auto;display:flex;flex-direction:column;gap:8px;margin-top:20px}.phone-bubble{padding:10px 12px;font-size:12px;max-width:94%;line-height:1.5}.phone-bubble.in{background:#303046;align-self:flex-start;border-radius:12px 12px 12px 2px}.phone-bubble.out{background:#74603b;color:#ffefca;align-self:flex-end;border-radius:12px 12px 2px 12px}.phone-options{display:flex;flex-direction:column;gap:8px;margin:16px 0}.phone-options button{border:1px solid #8c6e5c;background:#29293c;color:#fff;padding:11px;font:900 14px var(--fonthead);letter-spacing:1px}.phone-options button:hover{background:#4c3c52}.phone-bottom{text-align:center;padding:12px;font:700 8px var(--fontbody);color:#8c8499;border-top:1px solid #554759}.toast{position:fixed;z-index:160;left:50%;bottom:22px;transform:translate(-50%,60px);opacity:0;pointer-events:none;background:#f0b944;color:#161322;padding:12px 22px;box-shadow:5px 5px #1c1026;font:900 15px var(--fonthead);letter-spacing:.8px;max-width:calc(100vw - 24px);transition:opacity .25s,transform .25s}.toast.show{opacity:1;transform:translate(-50%,0)}.game-result{z-index:105;background:#080816dd}.game-result-card{text-align:center;background:#f3d99f;color:#1a1728;border:7px solid #202038;width:min(500px,100%);padding:37px 25px;box-shadow:12px 12px #684267}.result-spark{font:900 90px/.75 var(--fonthead);color:#b64682}.game-result-card h2{font:900 60px/.9 var(--fonthead);margin:15px 0}.game-result-card p{font-size:14px}.result-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:23px}.result-actions .button-ghost{color:#fff}
@keyframes screenIn{0%{opacity:0;transform:translateY(7px)}100%{opacity:1;transform:none}}@keyframes heroDrift{from{transform:scale(1.03) translateX(-3px)}to{transform:scale(1.09) translateX(5px)}}@keyframes pulse{50%{opacity:.25;transform:scale(.8)}}@keyframes pinBeat{50%{box-shadow:0 0 0 12px #f5ba3708,0 0 20px #f5ba3744}}@keyframes marquee{to{transform:translateX(-100%)}}@keyframes starSpin{50%{transform:rotate(17deg) scale(1.07)}}
@media(max-width:1330px){.topbar{gap:11px;padding:0 16px}.brand{width:190px}.navitem{padding:0 10px;font-size:13px}.online-pill{display:none}.app-shell{grid-template-columns:190px minmax(0,1fr)}.hero-copy{padding-left:28px}.hero-grid{grid-template-columns:minmax(330px,1fr) minmax(280px,1fr)}.hero-copy h1{font-size:67px}.hq-bottom{grid-template-columns:1.4fr 1fr}.arcade-panel-small{display:none}}
@media(max-width:1050px){.app-shell{grid-template-columns:1fr;grid-template-rows:70px minmax(calc(100vh - 70px),auto)}.sidebar{display:none}.topbar{height:70px}.brand{width:auto;min-width:155px}.brand-copy b{font-size:37px}.topnav{overflow-x:auto;min-width:0;scrollbar-width:none}.topnav::-webkit-scrollbar{display:none}.navitem{white-space:nowrap}.top-actions .join-btn{display:none}.workspace{grid-column:1;padding:20px 20px 0}.hero-grid{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:clamp(50px,7vw,76px)}.cases-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.app-shell{grid-template-rows:61px auto}.topbar{height:61px;padding:0 11px;gap:6px}.brand{min-width:96px}.brand-icon{height:35px;width:35px}.brand-copy{gap:3px}.brand-copy b{font-size:32px}.brand-copy small{display:none}.navitem{font-size:12px;padding:0 7px;letter-spacing:.3px}.top-actions{gap:5px}.top-actions .round-btn:first-child{display:none}.round-btn{height:29px;width:29px;font-size:15px}.workspace{padding:13px 12px 0}.utility-row{font-size:9px;padding-bottom:13px}.utility-row span:last-child{display:none}.hero-grid{grid-template-columns:1fr;box-shadow:5px 5px #090917}.hero-copy{padding:22px 19px 20px;min-height:auto}.line-label{font-size:9px}.hero-masthead{margin-top:12px}.stencil-fbi{font-size:91px}.title-seal{font-size:14px}.hero-copy h1{font-size:clamp(57px,13vw,89px);margin:3px 0 14px}.hero-desc{font-size:12px}.hero-art{min-height:280px;border-top:3px solid #a87861;border-left:0}.hero-art:before{display:none}.hero-art-img{background-position:50% 40%}.hero-soundfx{left:18px;top:10px;font-size:36px}.hero-art-label{bottom:9px;right:8px;padding:8px}.hero-art-label b{font-size:17px}.hero-art-label small{font-size:8px}.hero-foot{font-size:9px;margin-top:18px}.hq-bottom{display:grid;grid-template-columns:1fr;margin-top:17px}.dash-panel{min-height:148px}.arcade-panel-small{display:flex}.ticker{margin-top:20px}.screen-heading{align-items:start;padding:14px 0 22px;gap:9px}.screen-heading h2{font-size:clamp(57px,12vw,81px)}.heading-counter{min-width:88px;padding:7px}.heading-counter b{font-size:37px}.heading-counter span{font-size:9px}.cases-grid{grid-template-columns:1fr 1fr;gap:10px}.case-card{min-height:260px}.case-photo{height:122px}.case-details{padding:10px 11px}.case-details h3{font-size:23px}.case-details p{font-size:10px}.case-bottom{padding:8px 11px}.archive-strip{padding:13px;flex-wrap:wrap;gap:12px}.archive-strip .stamp{font-size:18px}.archive-strip b{font-size:20px}.map-layout,.arcade-layout,.profile-layout{grid-template-columns:1fr}.map-stage{min-height:400px}.district-card{min-height:250px}.district-card h3{font-size:44px}.signal-meter{margin-top:24px}.arcade-sidebar{display:grid;grid-template-columns:1fr 1fr}.profile-layout{gap:32px}.id-card{min-height:420px}.footer-line{font-size:8px}.modal-main{grid-template-columns:1fr}.modal-art{height:160px;min-height:160px}.modal-art img{object-position:center 34%}.modal-art-sticker{font-size:17px}.modal-copy{padding-right:0}.case-modal{max-height:90vh}.modal-copy h2{font-size:43px}.overlay{padding:10px}}
@media(max-width:500px){.brand{min-width:58px}.brand-icon{height:30px;width:30px}.brand-copy b{font-size:28px}.topnav{gap:0}.navitem{font-size:10px;padding:0 5px}.hero-copy h1{font-size:59px}.stencil-fbi{font-size:83px}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .button{justify-content:space-between}.hero-foot{gap:6px}.hero-art{min-height:235px}.cases-grid{grid-template-columns:1fr}.case-card{min-height:260px}.case-photo{height:155px}.map-stage{min-height:340px}.map-pin span{font-size:9px}.map-pin b{width:32px;height:32px;font-size:17px}.map-legend{font-size:8px}.city-news{flex-wrap:wrap;padding:12px}.city-news>span{flex-basis:100%;order:3}.game-actions{gap:7px}.game-actions span{display:none}.arcade-sidebar{grid-template-columns:1fr}.profile-stat-row strong{font-size:32px}.profile-stat-row>div{padding:10px 5px}.profile-stat-row span{font-size:8px}.id-body{padding:13px;gap:11px;min-height:255px}.id-body h3{font-size:32px}.id-body b{font-size:16px}.id-top b{font-size:21px}.id-top img{width:52px}.id-card{border-width:5px;min-height:360px}.profile-progress #caseChecklist{grid-template-columns:1fr}.archive-strip .button{width:100%}.game-result-card h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Final typography and off-screen drawer safeguards */
.hero-copy h1 .hero-lastword{display:inline-block;font-size:.70em;letter-spacing:-1px;line-height:1.12;max-width:100%}
.phone-drawer{display:none;transform:none;visibility:hidden}
.phone-drawer.open{display:flex;transform:none;visibility:visible;animation:phoneIn .26s ease-out}
@keyframes phoneIn{from{opacity:.35;translate:35px 20px}to{opacity:1;translate:0 0}}
@media(max-width:760px){.hero-copy h1 .hero-lastword{font-size:.67em;letter-spacing:-1px}.hero-cta .key-tag{display:none}}
