@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Mono:wght@400;500&display=swap');
/* Night-shift frac-panel finish: steel depth, work-light contrast, and restrained safety color. */
.profile-card{width:min(100%,460px);background:linear-gradient(145deg,#202728,#111617 62%);border:1px solid #4b5754;padding:29px 22px 24px;position:relative;box-shadow:inset 0 1px #ffffff13,0 24px 80px #000}.profile-card h1{font-size:38px;letter-spacing:1.4px;margin:4px 0 20px}.profile-summary{display:flex;align-items:center;gap:12px;padding:14px;background:#29332e;border-left:2px solid var(--yellow)}.profile-summary .avatar{width:39px;height:39px}.profile-summary b{display:block;font-size:17px;color:var(--yellow)}.profile-summary small{display:block;font:9px 'DM Mono',monospace;color:#adbab2;margin-top:4px}.role-label{font:10px 'DM Mono',monospace;letter-spacing:1.1px;color:#acb9b0;margin:23px 0 10px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.role-grid button{min-height:43px;border:1px solid #43504b;background:#19201d;color:#dce1d9;font:800 14px 'Barlow Condensed';letter-spacing:.5px;cursor:pointer}.role-grid button:hover,.role-grid button.selected{background:#384638;border-color:#b4da68;color:#f5bf38;box-shadow:inset 3px 0 #b4da68}.clear-role{width:100%;margin-top:15px;border:0;background:transparent;color:#aebbb0;font:700 12px 'Barlow Condensed';letter-spacing:1px;padding:10px;cursor:pointer}
:root{--ink:#0d1011;--panel:#15191b;--panel2:#1b2022;--line:#384044;--bone:#f3f0e6;--muted:#a8b0ae;--orange:#ff6a3d;--yellow:#f5bf38;--lime:#b4da68;--steel:#22292d}
body{background:radial-gradient(ellipse at 50% -8%,#38413f 0,#171c1d 32%,#0c0f10 74%)!important}.app-shell{background:linear-gradient(90deg,transparent 0 10px,#101415cc 10px calc(100% - 10px),transparent calc(100% - 10px)),repeating-linear-gradient(90deg,transparent 0 47px,#ffffff08 48px,transparent 49px)!important;box-shadow:inset 0 0 90px #0008}.topbar{border-bottom-color:#3b4444!important;box-shadow:0 2px 0 #090b0c,0 3px 0 #31393b}.brand-mark{color:#17110e!important;box-shadow:0 0 16px #ff6a3d55}.top-actions button{border-color:#4b5354!important;background:linear-gradient(135deg,#2a3031,#15191b)!important;box-shadow:inset 0 1px #ffffff18,0 2px 4px #000}.profile{color:#29210d!important}.eyebrow{color:#c1c9c4!important}.eyebrow span:not(.live-dot){color:#66716c!important}.score-box strong{color:var(--yellow)!important;text-shadow:0 0 16px #f5bf3833}.mission{border-color:#4b5455!important;background:linear-gradient(90deg,#273033,#171c1e)!important;box-shadow:inset 0 1px #ffffff0d,0 5px 14px #0005}.mission:after{border-color:#303a3b!important}.gauge-card{background:linear-gradient(160deg,#1a2021,#0c1011 58%)!important;border-color:#4a5453!important;box-shadow:inset 0 0 0 3px #111617,inset 0 1px #ffffff13,0 18px 32px #0008!important}.gauge-card:before{content:'SYSTEM / PRESSURE CONTROL';display:block;font:8px 'DM Mono',monospace;letter-spacing:1.4px;color:#64716c;margin-bottom:8px}.gauge{background:repeating-linear-gradient(90deg,transparent 0 9%,#596461 9.2% 9.5%,transparent 9.7% 10%)!important}.ticks{background:linear-gradient(90deg,#293231,#101415 15%,#101415 85%,#293231)!important}.good-zone{background:#b4da681f!important;border-color:#b4da68!important}.great-zone{background:#f5bf3835!important;border-color:#f5bf38!important}.perfect-zone{background:#ff6a3d!important;border-color:#ffac92!important}.needle{box-shadow:0 0 12px #fff,0 0 20px #f5bf3844!important}.gauge-ends{color:#a8b0ae!important}.combo b{background:#29382c!important;color:#cbe989!important}.last-hit{color:#aeb9b2!important}.stop-button{background:linear-gradient(180deg,#ff764a,#e7552f)!important;border:1px solid #ff9b7b!important;box-shadow:inset 0 1px #fff5,0 5px 0 #8f2d1b,0 12px 22px #0009!important}.stop-button:active{box-shadow:inset 0 1px #fff5,0 1px 0 #8f2d1b!important}.rank-card{background:linear-gradient(100deg,#242b2c,#161b1c)!important;border-left-color:var(--yellow)!important;box-shadow:inset 0 1px #ffffff0a}.bottom-nav{background:#101415!important;border-top-color:#3c4645!important;box-shadow:0 -8px 20px #0008}.result-card,.board-card{background:linear-gradient(145deg,#202728,#111617 62%)!important;border-color:#4b5754!important;box-shadow:inset 0 1px #ffffff13,0 24px 80px #000!important}.next-target{background:#29332e!important}.leaders .target-player{background:#303c36!important}.board-foot{color:#9daaa3!important}
:root{--ink:#080c0a;--panel:#111714;--panel2:#151d19;--line:#2b3730;--bone:#f2efdf;--muted:#9aa49c;--orange:#f25a2e;--yellow:#f7c948;--lime:#a9e35b}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% -20%,#26382c 0,#0a100d 42%,#070a08 100%);color:var(--bone);font-family:'Barlow Condensed',Impact,sans-serif;min-height:100vh}.app-shell{max-width:680px;margin:auto;min-height:100vh;padding:0 18px 92px}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #28322c}.brand{display:flex;align-items:center;gap:9px;color:var(--bone);font-size:20px;font-weight:900;letter-spacing:1.4px;text-decoration:none}.brand-mark{display:grid;place-items:center;background:var(--orange);color:#0a0c0b;width:27px;height:27px;font-size:19px;clip-path:polygon(50% 0,100% 22%,100% 78%,50% 100%,0 78%,0 22%)}.top-actions{display:flex;gap:10px}.top-actions button{border:1px solid #354037;background:#131914;color:var(--bone);width:34px;height:34px;border-radius:50%;font-family:inherit;font-weight:800}.profile{font-size:12px;background:var(--yellow)!important;color:#222!important;border:none!important}.game-view{padding-top:24px}.eyebrow{font-family:'DM Mono',monospace;color:#aab6ac;font-size:10px;letter-spacing:1.3px;font-weight:500;display:flex;gap:7px;align-items:center}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 9px var(--lime)}.eyebrow span:not(.live-dot){color:#586359}.game-head{display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:end;padding:18px 2px 20px}.game-head>div:last-child{text-align:right}.score-box{text-align:center}.label{font-family:'DM Mono',monospace;color:var(--muted);font-size:9px;letter-spacing:1.2px;margin:0 0 4px}.game-head strong{font-size:30px;line-height:.9;letter-spacing:.5px}.score-box strong{font-size:39px;color:var(--yellow)}#misses{font-size:17px;color:var(--orange);letter-spacing:2px}.mission{display:flex;align-items:center;gap:11px;border:1px solid var(--line);background:linear-gradient(90deg,#18231c,#111713);padding:10px 12px;position:relative;overflow:hidden}.mission:after{content:'';position:absolute;right:-30px;top:-15px;width:75px;height:75px;border:12px solid #233128;transform:rotate(45deg)}.mission-icon{color:var(--orange);font-size:25px}.mission p{font-family:'DM Mono',monospace;color:var(--orange);font-size:9px;letter-spacing:1.5px;margin:0 0 2px}.mission strong{font-size:18px;letter-spacing:.7px}.seed{margin-left:auto;font-family:'DM Mono',monospace;font-size:9px;color:#849087;z-index:1}.gauge-card{margin-top:16px;padding:19px 15px 13px;background:#0b100d;border:1px solid #2a352e;box-shadow:inset 0 0 0 3px #101712,0 18px 32px #0005}.gauge-topline,.gauge-ends{display:flex;justify-content:space-between;font-family:'DM Mono',monospace;font-size:9px;color:#8c988e;letter-spacing:.7px}.gauge{height:116px;margin:10px 0 4px;position:relative;border-bottom:3px solid #3e4a42;background:repeating-linear-gradient(90deg,transparent 0 9%,#364239 9.2% 9.5%,transparent 9.7% 10%)}.ticks{position:absolute;inset:0;background:linear-gradient(90deg,#1d2821,#0b100d 15%,#0b100d 85%,#1d2821);opacity:.8}.target{position:absolute;bottom:0;height:78px;left:50%;transform:translateX(-50%);clip-path:polygon(9% 0,91% 0,100% 10%,100% 100%,0 100%,0 10%)}.good-zone{width:39%;background:#a9e35b25;border:1px solid #a9e35b}.great-zone{width:22%;background:#f7c94835;border:1px solid #f7c948}.perfect-zone{width:7%;background:#f25a2e;border-color:#ff936e}.needle{position:absolute;bottom:-8px;left:10%;width:4px;height:108px;background:#f3f0e2;box-shadow:0 0 10px #fff;transform:translateX(-50%);z-index:3}.needle:before{content:'';position:absolute;top:-6px;left:-5px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:13px solid #f3f0e2}.needle i{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);width:20px;height:20px;background:#f3f0e2;border-radius:50%;border:4px solid #26332a}.gauge-label{position:absolute;bottom:7px;font-family:'DM Mono',monospace;font-size:7px;letter-spacing:.6px;color:#d9e7ce}.good-label{left:33%}.perfect-label{left:50%;transform:translateX(-50%);color:#fff}.combo-row{display:flex;justify-content:space-between;align-items:center;height:54px}.combo{display:flex;gap:7px;align-items:center;font-size:18px;font-weight:800}.flame{color:var(--orange);font-size:24px}.combo b{font-family:'DM Mono',monospace;font-size:13px;background:#243328;color:var(--lime);padding:4px 6px}.last-hit{font-family:'DM Mono',monospace;color:#9aa49c;font-size:9px;letter-spacing:.5px}.last-hit.perfect{color:var(--yellow)}.stop-button{width:100%;border:0;background:var(--orange);color:#160a05;min-height:78px;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:35px;letter-spacing:2px;box-shadow:0 5px 0 #9c2c14,0 12px 22px #0009;cursor:pointer;transition:transform .08s,filter .15s}.stop-button:hover{filter:brightness(1.1)}.stop-button:active{transform:translateY(4px);box-shadow:0 1px 0 #9c2c14}.stop-button small{display:block;font-family:'DM Mono',monospace;font-size:9px;letter-spacing:2.8px;margin-top:-5px}.hint{text-align:center;font-family:'DM Mono',monospace;font-size:9px;color:#809087;margin:18px auto 28px;max-width:300px;line-height:1.5}.rank-card{display:flex;justify-content:space-between;align-items:center;background:#161e18;border-left:3px solid var(--yellow);padding:14px 13px;margin-top:7px}.rank-copy strong{display:block;font-size:19px}.rank-copy span{font-family:'DM Mono',monospace;font-size:9px;color:#91a095}.view-board{background:none;border:0;color:var(--yellow);font:800 14px 'Barlow Condensed';letter-spacing:1px;white-space:nowrap}.view-board span{font-size:20px;margin-left:3px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#0b100d;border-top:1px solid #27322b;display:flex;justify-content:center;z-index:4}.bottom-nav button{width:min(25%,170px);height:67px;background:none;border:0;color:#849087;font:700 11px 'Barlow Condensed';letter-spacing:.7px}.bottom-nav span{display:block;font-size:19px;line-height:25px}.bottom-nav .active{color:var(--yellow)}.overlay{position:fixed;inset:0;background:#020403d9;z-index:10;display:grid;place-items:center;padding:20px;backdrop-filter:blur(5px)}.hidden{display:none}.result-card,.board-card{width:min(100%,460px);background:#121914;border:1px solid #344138;padding:29px 22px 24px;position:relative;box-shadow:0 24px 80px #000}.close{position:absolute;right:12px;top:8px;background:none;border:0;color:#aebbb0;font-size:28px}.danger{color:var(--orange)}.result-card h1,.board-card h1{font-size:50px;letter-spacing:1.4px;margin:4px 0 0}.downtime{font-family:'DM Mono',monospace;color:#aeb9b0;font-size:11px;margin:0 0 25px}.result-stats{display:grid;grid-template-columns:1.3fr 1fr 1fr;border-block:1px solid #334138;padding:16px 0;margin-bottom:20px}.result-stats div+div{border-left:1px solid #334138;padding-left:13px;margin-left:10px}.result-stats span,.next-target p{display:block;font-family:'DM Mono',monospace;color:#98a69a;font-size:9px;letter-spacing:1px}.result-stats strong{font-size:24px;color:var(--yellow)}.next-target{padding:14px;background:#1b251e;margin-bottom:25px}.next-target p{margin:0 0 10px}.next-target>div{display:flex;align-items:center;gap:10px}.avatar{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:#405447;color:#e8e5d6;font-family:'DM Mono',monospace;font-size:10px}.avatar.orange{background:var(--orange);color:#1a100c}.avatar.yellow{background:var(--yellow);color:#241f09}.next-target b{font-size:17px;display:block}.next-target small{font-family:'DM Mono',monospace;font-size:9px;color:#92a197;display:block}.next-target strong{margin-left:auto;color:var(--orange);font-size:18px}.replay{min-height:62px;font-size:25px}.replay span{margin-left:10px}.board-card{padding-top:28px}.tabs{display:flex;border-bottom:1px solid #344138;margin:19px 0 9px}.tabs button{flex:1;background:0;border:0;color:#829087;padding:10px 2px;font:700 12px 'Barlow Condensed';letter-spacing:.7px}.tabs .selected{color:var(--yellow);border-bottom:2px solid var(--yellow)}.leaders{list-style:none;margin:0;padding:0}.leaders li{display:flex;align-items:center;gap:10px;padding:11px 3px;border-bottom:1px solid #27332b}.leaders em{font-style:normal;color:#809087;width:14px;font-family:'DM Mono',monospace;font-size:12px}.leaders b{font-size:17px;line-height:.9}.leaders b small{display:block;font:9px 'DM Mono',monospace;color:#89968d;margin-top:5px}.leaders strong{margin-left:auto;color:var(--yellow);font:500 13px 'DM Mono',monospace}.leaders .target-player{background:#273627;margin-inline:-8px;padding-inline:11px;border-left:2px solid var(--orange)}.board-foot{text-align:center;color:#839088;font:8px 'DM Mono',monospace;letter-spacing:.5px;margin:18px 0 0}@media(min-width:700px){.app-shell{padding-inline:32px}.game-view{padding-top:35px}.gauge{height:140px}.needle{height:132px}.gauge-card{padding:23px}.stop-button{min-height:88px}}
.account-panel{border-top:1px solid #43504b;margin-top:22px;padding-top:2px}.account-panel input{display:block;width:100%;min-height:44px;margin:8px 0;border:1px solid #43504b;background:#111816;color:#f2efdf;padding:0 11px;font:12px 'DM Mono',monospace;letter-spacing:.35px}.account-panel input:focus{outline:1px solid var(--yellow);border-color:var(--yellow)}.account-actions{display:flex;gap:8px;margin-top:10px}.account-actions button{flex:1;min-height:42px;border:1px solid var(--yellow);background:#f5bf38;color:#1d180d;font:800 14px 'Barlow Condensed';letter-spacing:.7px;cursor:pointer}.account-actions .quiet-action{background:transparent;color:#b6c0b8;border-color:#4c5750}.account-signed-out small,.account-message{display:block;font:10px/1.45 'DM Mono',monospace;color:#aebbb0;margin:10px 0 0}.account-message{min-height:15px;color:#f5bf38}.account-message.error{color:#ff8a68}
.top-actions .profile{position:relative;display:grid;place-items:center;background:#1b2220!important;color:#bac5bd!important;border:1px solid #617068!important;box-shadow:0 0 0 2px #111817!important;font-size:11px!important}.top-actions .profile.connected{background:var(--yellow)!important;color:#17130b!important;border-color:#ffd467!important;box-shadow:0 0 0 2px #111817,0 0 16px #f5bf3844!important}.top-actions .profile:after{display:none;content:'';position:absolute;right:-1px;bottom:-1px;width:8px;height:8px;border-radius:50%;background:var(--lime);border:2px solid #111817;box-shadow:0 0 7px #b4da68}.top-actions .profile.connected:after{display:block}.pulse-card{display:block;padding:0;margin-top:16px;border-left:3px solid var(--yellow);overflow:hidden}.pulse-head{display:flex;justify-content:space-between;align-items:center;padding:13px 13px 10px;background:linear-gradient(100deg,#293130,#1a1f20)}.pulse-head .view-board{padding:0}.pulse-head strong{display:block;font-size:18px;letter-spacing:.6px}.pulse-head small{display:block;color:#b4da68;font:8px 'DM Mono',monospace;letter-spacing:.7px;margin-top:3px}.pulse-rank{display:flex;gap:10px;align-items:center;padding:12px 13px 10px;background:#202927;border-bottom:1px solid #38463f}.pulse-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--yellow);color:#1b160a;font:700 11px 'DM Mono',monospace;border:2px solid #ffe287;box-shadow:0 0 12px #f5bf3838}.pulse-rank p{margin:0;color:#aebbb1;font:8px 'DM Mono',monospace;letter-spacing:1px}.pulse-rank strong{display:block;font-size:20px;letter-spacing:.6px;line-height:1;margin:3px 0}.pulse-rank small{display:block;color:#aebbb1;font:9px 'DM Mono',monospace}.pulse-rank .pulse-move{color:var(--lime);letter-spacing:.4px;margin-top:2px}.crew-marker{margin:0;padding:7px 13px;background:#17201c;color:#b4da68;font:9px 'DM Mono',monospace;letter-spacing:.8px}.pulse-leaders{display:grid;grid-template-columns:repeat(3,1fr);background:#151b1b}.pulse-leader{min-width:0;padding:10px 7px;border-right:1px solid #37413e;display:grid;grid-template-columns:15px 22px 1fr;column-gap:5px;align-items:center}.pulse-leader:last-child{border-right:0}.pulse-leader em{align-self:start;color:#87938b;font:9px 'DM Mono',monospace;font-style:normal}.role-glyph{display:grid;place-items:center;width:22px;height:22px;color:#f5bf38;font:16px 'DM Mono',monospace}.leaders .role-glyph{width:30px;height:30px;border:1px solid #566159;background:#1b2421}.pulse-leader b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1}.pulse-leader small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9ca99f;font:8px 'DM Mono',monospace;margin-top:3px}.pulse-leader strong{grid-column:2 / 4;color:var(--yellow);font:500 10px 'DM Mono',monospace;margin-top:6px}.pulse-empty{grid-column:1 / -1;margin:0;padding:12px;color:#9ca99f;font:9px 'DM Mono',monospace;text-align:center}.progress-strip{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-top:11px;padding:9px 11px;background:#1a221e;border:1px solid #3e4d45}.progress-strip span,.progress-strip small{color:#a6b3aa;font:8px 'DM Mono',monospace;letter-spacing:.7px}.progress-strip b{color:#b4da68;font-size:13px;letter-spacing:.5px}
.brand-sub,.desktop-nav{display:none}@media(min-width:900px){body{background:#050809 url('night-frac-location-v2.png') center top/cover fixed no-repeat!important}body:after{content:'';position:fixed;inset:0;background:radial-gradient(ellipse at 50% 22%,transparent 0 23%,#02040580 74%,#020405cc 100%);pointer-events:none;z-index:-1}.app-shell{max-width:1160px;padding:0 42px 50px;background:linear-gradient(90deg,#090d0df0 0%,#101515f8 11%,#101515fc 89%,#090d0df0 100%)!important;box-shadow:0 0 90px #000c,inset 0 0 0 1px #ffffff08}.topbar{height:100px;gap:20px}.brand{font-size:27px;gap:11px;white-space:nowrap}.brand-mark{width:39px;height:39px;font-size:27px}.brand-sub{display:inline-block;color:#8f9995;font-size:20px;letter-spacing:1px;margin-left:5px}.desktop-nav{display:flex;align-items:stretch;gap:33px;margin-left:auto;height:100%}.desktop-nav button{position:relative;background:none;border:0;color:#8e9994;font:800 15px 'Barlow Condensed',sans-serif;letter-spacing:1px;padding:0 1px;cursor:pointer}.desktop-nav button:hover,.desktop-nav button.active{color:var(--yellow)}.desktop-nav button.active:after{content:'';position:absolute;height:3px;left:0;right:0;bottom:25px;background:var(--yellow);box-shadow:0 0 9px #f5bf3844}.top-actions{margin-left:7px}.top-actions button{width:43px;height:43px}.game-view{padding-top:29px}.eyebrow{font-size:12px}.game-head{padding:22px 4px 28px}.game-head strong{font-size:47px}.score-box strong{font-size:66px}.mission{padding:15px 19px}.mission strong{font-size:25px}.mission-icon{font-size:32px}.gauge-card{margin-top:21px;padding:25px 28px 17px}.gauge-card:before{font-size:10px;margin-bottom:13px}.gauge-topline,.gauge-ends{font-size:11px}.gauge{height:178px;margin:14px 0 5px}.needle{height:165px}.target{height:112px}.combo-row{height:66px}.combo{font-size:25px}.last-hit{font-size:11px}.stop-button{min-height:105px;font-size:46px}.hint{margin:20px auto 31px;font-size:10px}.pulse-card{display:grid;grid-template-columns:310px 1fr;margin-top:24px;border:1px solid #3c4745!important;border-left:5px solid var(--yellow)!important;background:#111818!important;box-shadow:0 18px 40px #0009!important}.pulse-head{grid-column:1/-1;padding:14px 18px 12px;border-bottom:1px solid #3b4642;background:linear-gradient(90deg,#28312f,#151b1b 72%)}.pulse-head .label{display:inline;margin-right:8px}.pulse-head strong{display:inline;font-size:23px}.pulse-head small{display:inline;margin-left:10px;font-size:10px}.pulse-rank{grid-column:1;grid-row:2;min-height:130px;padding:22px 20px;background:#202927;border-bottom:0;border-right:1px solid #3b4642}.pulse-avatar{width:50px;height:50px;font-size:14px}.pulse-rank strong{font-size:42px;line-height:.88}.pulse-rank p{font-size:10px}.pulse-rank small{font-size:10px;margin-top:6px}.crew-marker{grid-column:1;grid-row:3;padding:12px 20px;border-top:1px solid #3b4642;font-size:10px}.pulse-leaders{grid-column:2;grid-row:2 / span 2;display:block;padding:8px 20px;background:#151b1b}.pulse-leader{padding:9px 0;border-right:0;border-bottom:1px solid #303a37;display:grid;grid-template-columns:30px 30px minmax(160px,1fr) 100px;column-gap:8px}.pulse-leader:last-child{border-bottom:0}.pulse-leader em{align-self:center;font-size:12px}.pulse-leader .role-glyph{width:28px;height:28px;font-size:18px}.pulse-leader b{font-size:17px;letter-spacing:.4px}.pulse-leader small{font-size:9px;margin-top:4px}.pulse-leader strong{grid-column:4;grid-row:1 / span 2;align-self:center;justify-self:end;font-size:13px;margin:0}.bottom-nav{display:none}}
.crew-glyph{display:inline-grid;place-items:center;width:16px;height:16px;margin-right:6px;color:var(--yellow);font:14px 'DM Mono',monospace;vertical-align:-3px}.pulse-columns{display:none}.pulse-rank.rank-updated{animation:rank-confirm 1.1s ease-in-out 2}@keyframes rank-confirm{0%,100%{background:#202927}50%{background:#34452e;box-shadow:inset 0 0 0 1px var(--lime),0 0 20px #a9e35b33}}@media(min-width:900px){.pulse-columns{grid-column:2;grid-row:2;display:grid;grid-template-columns:68px minmax(160px,1fr) 100px 150px;gap:8px;padding:12px 20px 7px;background:#151b1b;border-bottom:1px solid #303a37;color:#849087;font:9px 'DM Mono',monospace;letter-spacing:.8px}.pulse-columns span:nth-child(2){grid-column:2}.pulse-columns span:nth-child(3){grid-column:3;text-align:right}.pulse-columns span:nth-child(4){grid-column:4;text-align:right}.pulse-leaders{grid-row:3;padding-top:1px}.pulse-leader{grid-template-columns:30px 30px minmax(160px,1fr) 100px 150px}.pulse-leader strong{grid-column:4;grid-row:1;align-self:center}.pulse-leader small{grid-column:5;grid-row:1;align-self:center;justify-self:end;margin:0;text-align:right}.pulse-empty{padding:28px 0;text-align:left}.pulse-rank.rank-updated{animation:rank-confirm 1.1s ease-in-out 2}}
@media(min-width:900px){.app-shell{max-width:1060px;padding:0 32px 42px}.topbar{height:84px}.brand{font-size:23px}.brand-mark{width:34px;height:34px;font-size:23px}.brand-sub{font-size:17px}.desktop-nav{gap:26px}.desktop-nav button{font-size:13px}.desktop-nav button.active:after{bottom:19px}.top-actions button{width:38px;height:38px}.game-view{padding-top:21px}.eyebrow{font-size:10px}.game-head{padding:16px 3px 19px}.game-head strong{font-size:38px}.score-box strong{font-size:54px}.mission{padding:12px 15px}.mission strong{font-size:21px}.mission-icon{font-size:27px}.gauge-card{margin-top:16px;padding:18px 21px 13px}.gauge-card:before{font-size:9px;margin-bottom:9px}.gauge-topline,.gauge-ends{font-size:9px}.gauge{height:142px;margin:10px 0 4px}.needle{height:132px}.target{height:89px}.combo-row{height:53px}.combo{font-size:21px}.last-hit{font-size:9px}.stop-button{min-height:86px;font-size:38px}.hint{margin:15px auto 22px;font-size:9px}.pulse-card{margin-top:18px;grid-template-columns:270px 1fr}.pulse-head{padding:11px 14px 9px}.pulse-head strong{font-size:19px}.pulse-head small{font-size:9px}.pulse-rank{min-height:110px;padding:16px}.pulse-avatar{width:42px;height:42px;font-size:12px}.pulse-rank strong{font-size:34px}.pulse-rank p,.pulse-rank small{font-size:9px}.crew-marker{padding:10px 16px;font-size:9px}.pulse-columns{padding:9px 14px 6px;font-size:8px}.pulse-leaders{padding-inline:14px}.pulse-leader{padding:7px 0}.pulse-leader b{font-size:15px}.pulse-leader small{font-size:8px}.pulse-leader strong{font-size:11px}}
.progress-strip{grid-template-columns:1fr auto auto}.progress-strip .progress-note{grid-column:1/-1;color:#8d9b91;padding-top:2px}
.transfer-confirm{margin-top:12px;padding:12px;border:1px solid #f5bf38;background:#29291d;box-shadow:inset 3px 0 #f5bf38}.transfer-confirm p{margin:0;color:#f5bf38;font:800 13px 'Barlow Condensed';letter-spacing:.8px}.transfer-confirm b{display:block;margin-top:3px;font-size:17px;letter-spacing:.5px}.transfer-confirm small{display:block;margin-top:7px;color:#c1c9c0;font:9px/1.45 'DM Mono',monospace}.transfer-confirm div{display:flex;gap:8px;margin-top:11px}.transfer-confirm button{flex:1;min-height:36px;border:1px solid #f5bf38;background:#f5bf38;color:#1d180d;font:800 12px 'Barlow Condensed';letter-spacing:.6px}.transfer-confirm button+button{background:transparent;color:#c4cec5;border-color:#59655d}
.challenge-badge{position:absolute;display:none;width:8px;height:8px;border-radius:50%;background:#87938b;border:1px solid #111817;box-shadow:0 0 0 1px #111817}.challenge-badge.active,.challenge-badge.scheduled,.challenge-badge.urgent{display:block}.challenge-badge.active{background:var(--lime);box-shadow:0 0 8px var(--lime),0 0 0 1px #111817;animation:callout-live 1.8s ease-in-out infinite}.challenge-badge.scheduled{background:var(--yellow);box-shadow:0 0 6px #f5bf3866,0 0 0 1px #111817}.challenge-badge.urgent{background:var(--orange);box-shadow:0 0 9px var(--orange),0 0 0 1px #111817;animation:callout-live .7s ease-in-out infinite}@keyframes callout-live{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.72);opacity:.55}}#challenges-nav{position:relative}#challenges-nav .challenge-badge{top:10px;right:calc(50% - 19px)}.callout-role{display:flex!important;align-items:center;gap:6px}.versus>div:last-child .callout-role{justify-content:flex-end}.callout-role i{display:grid;place-items:center;width:20px;height:20px;border:1px solid #566159;background:#1b2421;color:var(--yellow);font:13px 'DM Mono',monospace;font-style:normal}.versus .callout-role>span{color:#f5bf38;font:800 14px 'Barlow Condensed';letter-spacing:.8px}@media(min-width:900px){#desktop-challenges{position:relative}#desktop-challenges .challenge-badge{top:27px;right:-10px}}
.callout-card{width:min(100%,460px);background:linear-gradient(145deg,#202728,#111617 62%);border:1px solid #4b5754;padding:29px 22px 24px;position:relative;box-shadow:inset 0 1px #ffffff13,0 24px 80px #000}.callout-card h1{font-size:43px;letter-spacing:1.2px;margin:5px 0 0}.callout-countdown{font:10px 'DM Mono',monospace;color:#b4da68;letter-spacing:.8px;margin:8px 0 22px}.versus{display:grid;grid-template-columns:1fr 32px 1fr;align-items:stretch;border-block:1px solid #43504b}.versus>div{padding:15px 8px}.versus>div:last-child{text-align:right}.versus span{display:block;color:#f5bf38;font:800 14px 'Barlow Condensed';letter-spacing:.8px}.versus strong{display:block;font-size:30px;line-height:1;margin:6px 0}.versus small,.callout-banks small{display:block;color:#96a49b;font:8px 'DM Mono',monospace;letter-spacing:.5px}.versus>b{align-self:center;text-align:center;color:#ff6a3d;font:700 11px 'DM Mono',monospace}.callout-rule{margin-top:14px;padding:13px;background:#29332e;border-left:3px solid var(--yellow)}.callout-rule p{font:10px/1.45 'DM Mono',monospace;color:#c0c9c2;margin:0}.callout-rule strong{display:block;color:var(--yellow);font-size:16px;letter-spacing:.6px;margin-top:7px}.callout-banks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.callout-banks span{background:#17201c;border:1px solid #39463f;padding:10px}.callout-banks span:last-child{text-align:right}.callout-banks b{display:block;color:#f2efdf;font:700 20px 'Barlow Condensed';margin-top:3px}.callout-note{font:9px/1.45 'DM Mono',monospace;color:#94a198;text-align:center;margin:16px 7px 0}
.tabs{overflow-x:auto;justify-content:flex-start}.tabs button{flex:0 0 auto;padding-inline:10px;white-space:nowrap}.long-run-metrics{display:flex;gap:8px;margin:13px 0 4px}.long-run-metrics button{flex:1;padding:8px 5px;border:1px solid #43504b;background:#171e1b;color:#9daaa3;font:700 11px 'Barlow Condensed';letter-spacing:.7px}.long-run-metrics button.selected{color:#17130b;background:var(--yellow);border-color:#ffd467}
.long-run-note{margin:9px 0 3px;text-align:center;color:#9daaa3;font:8px 'DM Mono',monospace;letter-spacing:.8px}

/* The frac pad is a visible part of play, not just a faint page backdrop. */
.field-banner{min-height:164px;margin-top:22px;padding:18px;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #55605b;background:linear-gradient(90deg,#09100feb 0%,#0b1311a8 46%,#07100ce6 100%),url('night-frac-location-v2.png') center 56%/cover no-repeat;box-shadow:inset 0 0 0 1px #ffffff12,0 14px 30px #000a}
.field-banner:before{content:'';position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0 59px,#d6e2d50b 60px 61px)}
.field-banner:after{content:'';position:absolute;z-index:-1;left:0;right:0;bottom:44px;border-top:1px solid #f7c94855;box-shadow:0 -3px 12px #f7c94822}
.field-banner-copy p{display:flex;align-items:center;gap:7px;margin:0;color:#c4d0c8;font:9px 'DM Mono',monospace;letter-spacing:1.15px}.field-banner-copy strong{display:block;margin-top:8px;color:#f2efdf;font-size:33px;letter-spacing:1.2px;line-height:.92;text-shadow:0 2px 12px #000}.field-banner-copy small{display:block;margin-top:5px;color:#f7c948;font:9px 'DM Mono',monospace;letter-spacing:1.1px}.field-assets{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.field-assets span{min-width:0;padding:6px 7px;background:#0a110fec;border:1px solid #647068a8;border-left:3px solid #f7c948}.field-assets b,.field-assets small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.field-assets b{color:#e8eee8;font-size:12px;letter-spacing:.5px}.field-assets small{margin-top:2px;color:#a9e35b;font:8px 'DM Mono',monospace;letter-spacing:.65px}
@media(min-width:900px){.field-banner{min-height:205px;margin-top:24px;padding:22px 26px;background-position:center 59%}.field-banner-copy strong{font-size:43px}.field-assets{width:430px;gap:10px}.field-assets span{padding:8px 10px}.field-assets b{font-size:14px}.field-assets small{font-size:9px}}
@media(max-width:390px){.field-banner{min-height:146px;margin-top:18px;padding:14px}.field-banner-copy strong{font-size:29px}.field-assets{gap:5px}.field-assets span{padding:5px}.field-assets b{font-size:10px}.field-assets small{font-size:7px}}

/* Dodge the Downtime: three physical lanes across a live treating line. */
.game-mode-switch{display:flex;gap:7px;margin:18px 0 0}.game-mode-switch button{flex:1;min-height:35px;padding:6px 8px;border:1px solid #4b5750;background:#111815;color:#aebbb1;font:800 13px 'Barlow Condensed';letter-spacing:.6px}.game-mode-switch button.selected{background:#f7c948;color:#17130b;border-color:#ffe08b}.game-mode-switch small{display:block;font:7px 'DM Mono',monospace;letter-spacing:.7px;margin-top:2px}.game-mode-switch button.selected small{color:#5c4916}.dodge-mode{padding-top:16px}.dodge-mission{margin:0}.yard-card{margin-top:16px;padding:14px;border:1px solid #4a5453;background:linear-gradient(160deg,#1a2021,#0c1011 58%);box-shadow:inset 0 0 0 3px #111617,0 18px 32px #0008}.yard-label{margin:0 0 10px;color:#68756f;font:8px 'DM Mono',monospace;letter-spacing:1.2px}.yard-lanes{height:190px;display:grid;grid-template-columns:repeat(3,1fr);position:relative;overflow:hidden;border-bottom:3px solid #4b5b50;background:repeating-linear-gradient(90deg,#18211e 0 calc(33.333% - 2px),#56645a calc(33.333% - 2px) 33.333%)}.yard-lane{position:relative;display:flex;align-items:flex-end;justify-content:center;padding-bottom:10px;background:linear-gradient(180deg,#ffffff05,transparent 35%)}.yard-lane span{color:#8f9c94;font:9px 'DM Mono',monospace;letter-spacing:.9px}.yard-lane.selected:after{content:'YOUR LINE';position:absolute;bottom:31px;left:50%;transform:translateX(-50%);padding:4px 5px;background:#f7c948;color:#17130b;font:700 8px 'DM Mono',monospace;letter-spacing:.4px;white-space:nowrap;box-shadow:0 0 13px #f7c94866}.yard-obstacle{position:absolute;top:8px;left:calc(var(--obstacle-lane, 1) * 33.333% + 3%);width:27.333%;padding:8px 4px;background:linear-gradient(180deg,#f9774c,#d83f24);border:1px solid #ffb09a;color:#1a0b06;text-align:center;box-shadow:0 5px 14px #0008;transform:translateY(var(--obstacle-progress, 0));will-change:transform}.yard-obstacle b,.yard-obstacle small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yard-obstacle b{font-size:13px;letter-spacing:.4px}.yard-obstacle small{margin-top:2px;font:7px 'DM Mono',monospace;letter-spacing:.7px}.yard-status{min-height:18px;margin:10px 0 0;color:#b4da68;text-align:center;font:9px 'DM Mono',monospace;letter-spacing:.45px}.yard-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.yard-controls button{min-height:58px;border:1px solid #57645b;background:#1a2320;color:#f2efdf;font:800 15px 'Barlow Condensed';letter-spacing:.5px;touch-action:manipulation}.yard-controls button:active{background:#f7c948;color:#17130b;transform:translateY(2px)}
@media(min-width:900px){.game-mode-switch{margin-top:19px}.yard-card{padding:18px}.yard-lanes{height:232px}.yard-controls button{min-height:68px;font-size:18px}.yard-obstacle b{font-size:16px}}
@media(max-width:390px){.game-mode-switch button{font-size:11px}.yard-lanes{height:165px}.yard-controls button{font-size:12px;min-height:53px}.yard-obstacle b{font-size:10px}}

/* Role-specific field controls: every crew reads its own tool and operating line. */
.gauge-card:before{display:none!important}
.gauge-system{margin:0 0 8px;color:#64716c;font:8px 'DM Mono',monospace;letter-spacing:1.35px}
.mission-meta{margin-left:auto;display:grid;gap:3px;justify-items:end;z-index:1}
.mission-tool{color:var(--lime);font:8px 'DM Mono',monospace;letter-spacing:.55px;white-space:nowrap}
.mission-meta .seed{margin-left:0;white-space:nowrap}
.mission-icon{min-width:25px;text-align:center}
@media(max-width:390px){.mission-meta{display:none}.mission-icon{min-width:20px}.gauge-system{font-size:7px;letter-spacing:1px}}

/* Mobile field fit: avoid legacy Safari input zoom and keep gameplay taps from becoming scroll gestures. */
html{width:100%;min-height:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{width:100%;min-height:100svh;overflow-x:hidden;overscroll-behavior-x:none}
.app-shell{width:100%;min-height:100svh;padding-bottom:calc(92px + env(safe-area-inset-bottom));overflow-x:clip}
.bottom-nav{padding-bottom:env(safe-area-inset-bottom)}
.bottom-nav button,.top-actions button,.view-board,.stop-button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.stop-button{touch-action:none;-webkit-user-select:none;user-select:none}
.account-panel input{font-size:16px}
@media(max-width:390px){
  .app-shell{padding-inline:14px}
  .topbar{height:68px}
  .brand{font-size:18px;letter-spacing:1.1px}
  .top-actions{gap:7px}
  .game-view{padding-top:18px}
  .game-head{padding:15px 1px 17px}
  .game-head strong{font-size:27px}
  .score-box strong{font-size:34px}
  .mission{padding-inline:10px;gap:9px}
  .mission strong{font-size:17px}
  .gauge-card{padding-inline:11px}
  .last-hit{font-size:8px}
  .stop-button{min-height:74px;font-size:32px}
}
