.jl-app { --jl-teal:#83d8c4; --jl-purple:#c7a5e4; --jl-yellow:#e4ce8b; background:#10171d; }
.jl-app .primary { background:#8edac4; color:#142e31; }.jl-app .primary:hover { background:#b3e9d3; }.jl-app .secondary { background:#23323c; color:#d1e1e4; border:1px solid #58717b; border-radius:5px; font:600 16px var(--display); padding:10px 14px; cursor:pointer; }.jl-app button:disabled { cursor:default; opacity:.45; }.jl-app [hidden] { display:none!important; }.jl-app button:focus-visible,.jl-app select:focus-visible,.jl-app textarea:focus-visible { outline:2px solid #ffe5a5; outline-offset:3px; }.jl-app .petal-light { opacity:.25; }.jl-app .wrench-circuit { opacity:.15; }
.jl-hero { display:grid; grid-template-columns:.85fr 1.15fr; gap:7%; align-items:center; padding:58px 0 45px; }.jl-hero h1 { font:800 clamp(76px,7.9vw,118px)/.84 var(--display); text-transform:uppercase; margin:0 0 28px; }.jl-hero h1 em { display:inline-block; font:400 .78em/1 'Lacquer',cursive; color:var(--drip-ink); transform:rotate(-4deg); padding-top:12px; text-shadow:var(--drip-shadow); }.jl-hero .eyebrow { font-size:9px; gap:13px; margin-bottom:26px; }.jl-intro { font:600 23px/1.25 var(--display); color:#c6dedb; max-width:380px; margin-bottom:14px; }.jl-description { color:#9fb2bd; font-size:13px; line-height:1.75; max-width:390px; margin-bottom:25px; }#station-form .primary { margin-top:18px; }.jl-hero-scene { background:#1b2a34; border:1px solid #5b737b; border-radius:15px 15px 9px 9px; box-shadow:0 25px 80px #0005,inset 0 0 0 6px #13222c; overflow:hidden; transform:rotate(1deg); }.scene-header { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:18px 20px; font:8px var(--mono); color:#b0c7c9; letter-spacing:1px; border-bottom:1px solid #425b63; }.scene-header i { display:inline-block; height:6px; width:6px; margin-right:6px; border-radius:50%; background:#90d9ac; box-shadow:0 0 12px #75dfb9; }.blueprint-scene { background-image:linear-gradient(#7b9c9e0b 1px,transparent 1px),linear-gradient(90deg,#7b9c9e0b 1px,transparent 1px); background-size:22px 22px; position:relative; padding:15px 10px 0; }.refinery-art { display:block; width:100%; aspect-ratio:620/350; }.machine-sticker { position:absolute; right:24px; top:30px; background:#e8d99b; color:#484638; font:800 17px/.95 var(--display); padding:10px 9px; transform:rotate(11deg); box-shadow:1px 3px 0 #07131a55; }.crew-row { display:flex; justify-content:center; align-items:center; gap:15px; margin-top:-26px; }.crew-row>div { width:115px; text-align:center; }.crew-row svg { display:block; width:100%; aspect-ratio:1; }.crew-row>div>span { display:block; font:8px var(--mono); color:#bbcecf; letter-spacing:1.3px; margin:5px 0 16px; }.radio-link { color:#d9a5b4; font:20px var(--mono); padding-top:30px; }.lobby-radio { margin:10px 20px 20px; padding:18px 22px; border:1px solid #548175; background:#173a36; border-radius:9px; box-shadow:inset 0 3px 8px #0a252a; }.radio-small { font:8px var(--mono); color:#83beac; letter-spacing:1.5px; }.lobby-radio p { font:600 24px/1.25 var(--display); color:#c8e9d5; margin:12px 0; }.lobby-radio strong { font-weight:600; color:#f1e6bb; }.lobby-radio small { color:#92b8ab; font-size:10px; line-height:1.5; display:block; }
.jl-game-title { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:30px 0 24px; }.jl-game-title .eyebrow { margin-bottom:12px; font-size:9px; }.jl-game-title h1 { margin:0; font:800 44px/1 var(--display); text-transform:uppercase; }.jl-game-title h1 em { font:400 .9em 'Lacquer',cursive; color:var(--drip-ink);text-shadow:var(--drip-shadow);}.jl-title-actions { display:flex; gap:18px; align-items:center; }#station-connected { color:#93b9ab; font:10px var(--mono); }.jl-share { background:#1b3534; border:1px solid #50776d; padding:15px 18px; margin-bottom:20px; border-radius:7px; }.jl-share label { display:block; font:10px var(--mono); color:#bdd3c8; margin-bottom:8px; }.jl-share>div { display:flex; gap:10px; }.jl-share .primary { width:145px; flex-shrink:0; }.jl-share small { display:block; font-size:11px; color:#9ab8ac; margin-top:8px; }.jl-share input { font-size:12px; }
.jl-crew { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:20px; }.crew-card { display:flex; gap:12px; align-items:center; background:#1c2b35; border:1px solid #3e5961; border-radius:9px; padding:9px 13px; min-width:0; }.crew-card svg { width:55px; height:55px; flex-shrink:0; }.crew-card strong { font:600 21px var(--display); color:#d7e9e3; }.crew-card small { display:block; font:9px var(--mono); color:#9cb5bf; margin-top:4px; }.crew-card button { margin-left:auto; font:10px var(--mono); color:#b8ccce; text-decoration:underline; padding:8px; max-width:130px; background:none; }.crew-card .seat-empty { font-size:12px; color:#b6a4c9; }
.jl-tabs { display:flex; align-items:center; gap:5px; margin-bottom:22px; border-bottom:1px solid #425762; }.jl-tabs button { background:transparent; padding:13px 17px; color:#94acb7; border-bottom:3px solid transparent; font:600 18px var(--display); }.jl-tabs button[aria-pressed=true] { border-color:var(--jl-teal); color:#cef0dd; }.jl-tabs>span { margin-left:auto; font:8px var(--mono); color:#809b9e; }.jl-tabs .radio-tab { display:none; }#radio-unread { background:#d9aecb; color:#292037; border-radius:10px; padding:2px 6px; font:10px var(--mono); }.jl-error { color:#efb7a2; padding-bottom:15px; font-size:13px; }.jl-error:empty { display:none; }.jl-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:24px; align-items:start; }.jl-main-column { min-width:0; }.incident-heading { position:relative; padding-right:100px; margin-bottom:18px; }.incident-heading>p { font:9px var(--mono); color:#a4bdbb; letter-spacing:1.5px; margin:0 0 7px; }.incident-heading h2 { font:600 31px/1.1 var(--display); text-transform:uppercase; color:#dfebdf; margin:0; }#role-badge { position:absolute; right:0; top:18px; color:#cbb0e1; border:1px solid #79668c; border-radius:4px; padding:6px 8px; font:9px var(--mono); }
.jl-meter-row { display:grid; grid-template-columns:1fr 1fr 75px; gap:18px; margin-bottom:18px; }.jl-meter-row label { display:flex; justify-content:space-between; color:#93abb8; font-size:11px; gap:5px; margin-bottom:7px; }.jl-meter-row b { color:#c9dfd6; font:10px var(--mono); }.jl-meter-row progress { width:100%; height:7px; display:block; appearance:none; border:0; border-radius:5px; overflow:hidden; background:#2c404b; }.jl-meter-row progress::-webkit-progress-bar { background:#2c404b; }.jl-meter-row progress::-webkit-progress-value { background:#83c9ad; border-radius:5px; }#heat-meter::-webkit-progress-value { background:#dfa484; }.turn-count { border-left:1px solid #3d5761; text-align:center; display:grid; align-items:center; }.turn-count strong { font:800 30px/1 var(--display); color:#e1d7ad; }.turn-count span { font:7px var(--mono); color:#829ca8; }
.work-scene { position:relative; overflow:hidden; border:1px solid #506973; border-radius:10px; background:radial-gradient(ellipse at 50% 60%,#38555377,#182a35 70%); }.work-scene .scene-header { padding:12px 15px; font-size:8px; }.work-scene>.refinery-art { padding:5px 18px 30px; max-height:330px; }.scene-crew { position:absolute; display:flex; justify-content:space-between; inset:125px 13px auto; pointer-events:none; }.scene-crew svg { width:80px; height:80px; filter:drop-shadow(0 3px 1px #101921); }.scene-crew svg:last-child { margin-top:35px; }.work-scene.wrecked { background:radial-gradient(ellipse,#563b4e88,#1d2732); }.work-scene.wrecked>.refinery-art { opacity:.4; filter:grayscale(.8); transform:rotate(-3deg); }.work-scene.wrecked .scene-header { color:#edbba4; }.work-scene.cleared { border-color:#80c8a7; }.dialogue-overlay { display:flex; gap:10px; align-items:flex-start; margin:0 14px 14px; padding:12px; background:#0e202c; border:1px solid #617f8b; border-radius:11px; position:relative; box-shadow:0 5px 0 #0b1824; min-height:86px; }.dialogue-overlay:before { content:''; position:absolute; top:-9px; right:42px; width:16px; height:16px; border-top:1px solid #617f8b; border-left:1px solid #617f8b; background:#0e202c; transform:rotate(45deg); }.dialogue-overlay>svg { width:45px; height:45px; flex-shrink:0; }.dialogue-overlay>div { flex:1; min-width:0; }.dialogue-overlay span { font:9px var(--mono); color:#c5a6de; letter-spacing:1px; }.dialogue-overlay p { font-size:13px; line-height:1.65; color:#d2e1e3; margin:5px 0 0; max-height:125px; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; }.dialogue-overlay button { padding:5px; align-self:end; background:none; color:#d9c495; }
.event-card { display:flex; gap:12px; padding:14px 0; border-bottom:1px solid #394e5b; margin-bottom:20px; }.event-card>span { flex-shrink:0; color:#a2b4bc; font:8px var(--mono); padding-top:4px; }.event-card p { font-size:12px; line-height:1.6; color:#9fb8c3; margin:0; }.event-card.good p { color:#a4d8b6; }.event-card.bad p,.event-card.fatal p { color:#e9b29e; }
.jl-console { border:1px solid #405b67; border-radius:8px; background:#1b2b36; padding:18px; margin-bottom:20px; }.console-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:14px; }.console-heading h3 { font:600 23px var(--display); color:#d1e3de; margin:0; }.console-heading>span { font:8px var(--mono); color:#91a9b8; }.readout { display:flex; align-items:center; gap:18px; padding:14px; background:#0c2027; border:1px solid #446e6b; border-radius:6px; }.readout>div>span { display:block; color:#89b9ad; font:9px var(--mono); margin-bottom:7px; }.readout strong { font:800 39px/1 var(--display); color:#b8e6b1; letter-spacing:3px; }#instrument-symbol { font:32px var(--mono); color:#d8d197; }.readout .secondary { margin-left:auto; font-size:13px; max-width:155px; }.console-hint { font-size:11px; color:#92aab7; line-height:1.6; margin:12px 0; }.control-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:16px 0; }.control-grid label { font:9px var(--mono); color:#a1b9c3; text-transform:uppercase; letter-spacing:.5px; }.control-grid select { display:block; margin-top:7px; width:100%; padding:12px 10px; color:#d6e5df; background:#11232f; border:1px solid #506e7a; border-radius:5px; font:600 17px var(--display); }.jl-app #apply-repair { border-radius:5px; }.jl-app #apply-repair span { font:9px var(--mono); }.manual-module { color:#e1d6b4; font:600 24px var(--display); margin:0 0 6px; }.manual-rows { display:grid; gap:9px; }.manual-row { border:1px solid #526276; background:#202f3d; border-radius:5px; padding:12px; display:grid; grid-template-columns:62px 1fr; gap:10px; }.manual-row>strong { font:600 27px var(--display); color:#dbc5ef; }.manual-row p { font:11px/1.7 var(--mono); color:#bccbd0; margin:0; }.manual-row button { grid-column:2; text-align:left; background:none; color:#b3e2ce; font:600 15px var(--display); padding:3px 0; }.dispatch-support { border-top:1px solid #45596a; margin-top:18px; padding-top:16px; }.dispatch-support>p { margin:8px 0; font-size:11px; color:#9fb4bd; }#patch-tools { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }#patch-tools button { font-size:13px; padding:9px; }
.tool-bench { margin:22px 0; }.tool-bench .quiet { font-size:13px; color:#e0ce9c; }.tool-status { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }.tool-card { display:flex; align-items:center; gap:10px; border:1px solid #3f5961; border-radius:6px; padding:10px; background:#1c2c34; color:#9ecabc; }.tool-card svg { height:34px; width:34px; flex-shrink:0; }.tool-card strong { display:block; font:600 16px var(--display); color:#bfd3cf; }.tool-card small { display:block; font:8px var(--mono); color:#89a9a6; margin-top:5px; }.tool-card.broken { border-color:#895e62; color:#c09495; background:#322a32; }.tool-card.broken strong { text-decoration:line-through; color:#c7a9b6; }.tool-card.broken small { color:#d7a3a2; }#wear-note { color:#8fa6b1; font-size:11px; line-height:1.6; margin:12px 0; }.current-log { border-top:1px solid #3b5461; padding:14px 0 22px; }.current-log summary { cursor:pointer; color:#bdcece; font:600 18px var(--display); }.current-log summary>span { color:#819aa9; font:9px var(--mono); float:right; }.current-log ol { padding:0; margin:15px 0 0; list-style:none; }.current-log li { padding:10px 0; border-top:1px solid #2c424f; color:#9eb5c0; font-size:11px; line-height:1.6; }.current-log li b { display:inline-block; margin-right:10px; color:#d9c58f; font:9px var(--mono); }.current-log li.good { color:#a2cfb0; }.current-log li.bad,.current-log li.fatal { color:#d5a49a; }
.incident-outcome { padding:22px; margin:20px 0; background:#253e38; border:1px solid #78a68b; border-radius:9px; }.incident-outcome.wrecked { background:#3a2d3d; border-color:#a07a9c; }.incident-outcome>p:first-child { font:9px var(--mono); letter-spacing:1px; color:#d8c28f; }.incident-outcome h2 { font:800 35px var(--display); text-transform:uppercase; color:#e5e9d6; margin:7px 0 10px; }.incident-outcome p { font-size:13px; line-height:1.6; color:#b9c9c5; }.incident-outcome .primary { margin-top:16px; border-radius:5px; }
.career-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }.career-stats>div { text-align:center; padding:18px 8px; background:#20313c; border:1px solid #48626d; border-radius:7px; }.career-stats strong { display:block; color:#e4d19b; font:800 36px var(--display); }.career-stats span { color:#96adbc; font:8px var(--mono); text-transform:uppercase; }.workshop-note { font-size:12px; color:#a0b6bf; line-height:1.7; margin:18px 0; }.upgrade-cards { display:grid; gap:12px; }.upgrade-card { background:#21313c; border:1px solid #536779; border-radius:8px; padding:18px; }.upgrade-card h3 { display:flex; justify-content:space-between; gap:10px; margin:0 0 8px; font:600 24px var(--display); color:#d9c3e5; }.upgrade-card h3 small { font:9px var(--mono); color:#a998b9; margin-top:7px; }.upgrade-card p { color:#9bb4bf; font-size:12px; line-height:1.6; }.upgrade-card .secondary { font-size:15px; }.upgrade-card svg { float:right; width:58px; height:48px; }.logbook-heading { margin-top:30px; }.incident-archive { list-style:none; padding:0; margin:0 0 14px; }.incident-archive li { border-top:1px solid #3c5360; padding:14px 0; display:flex; gap:14px; }.incident-archive .archive-number { font:600 27px var(--display); color:#6e8b95; }.incident-archive strong { color:#d7e5dd; display:block; font:600 21px var(--display); }.incident-archive p { color:#9bb5bc; font-size:11px; margin:6px 0 0; line-height:1.6; }.incident-archive .wrecked strong { color:#ddb1c5; }
.walkie { background:linear-gradient(110deg,#273c45,#1a2c37); border:2px solid #647a7d; border-radius:24px 24px 18px 18px; padding:17px; position:sticky; top:20px; box-shadow:inset 0 0 0 5px #142732,5px 8px 0 #0b151c,0 18px 50px #0004; margin-top:12px; }.walkie-antenna { position:absolute; width:14px; height:40px; top:-35px; right:32px; background:repeating-linear-gradient(#334c56 0 6px,#20353f 6px 9px); border:2px solid #5a747d; border-radius:7px 7px 0 0; z-index:-1; }.walkie-head { display:flex; align-items:center; gap:10px; padding:8px 5px 12px; }.walkie-head>span { color:#9cceb8; font:18px var(--mono); }.walkie-head h2 { font:600 25px var(--display); text-transform:uppercase; color:#e0dfc8; margin:0; }.walkie-head p { margin:4px 0 0; font:7px var(--mono); color:#96b4b6; letter-spacing:.7px; }.walkie-head i { margin-left:auto; background:#99d9af; border-radius:50%; width:7px; height:7px; box-shadow:0 0 10px #8fd5a880; }.walkie-grille { height:17px; background:repeating-linear-gradient(0deg,transparent 0 2px,#0a1e29 2px 4px); border-radius:10px; margin:0 5px 14px; opacity:.8; }.radio-display { background:#102c2d; border:1px solid #6a9081; border-radius:8px; padding:12px 10px 8px; box-shadow:inset 0 3px 12px #051c23; }.radio-label { display:flex; justify-content:space-between; gap:10px; color:#8caf9f; font:7px var(--mono); padding-bottom:11px; border-bottom:1px solid #345d52; }.radio-transcript { height:310px; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#567a68 #163c35; padding:10px 2px; display:flex; flex-direction:column; gap:12px; overflow-anchor:none; }.radio-empty { font:13px/1.9 var(--sans); color:#86ad9f; padding:25px 12px; text-align:center; margin:auto; }.transmission { padding:10px 11px; border-radius:10px 10px 10px 2px; background:#254c42; border:1px solid #427263; margin-right:20px; max-width:calc(100% - 12px); flex-shrink:0; }.transmission.mine { margin-left:20px; margin-right:0; border-radius:10px 10px 2px 10px; border-color:#746485; background:#393a50; }.transmission header { display:flex; align-items:center; justify-content:space-between; gap:8px; font:8px var(--mono); color:#9bceb0; margin-bottom:7px; }.transmission.mine header { color:#c5b2d9; }.transmission p { margin:0; color:#d2e6d6; font-size:12px; line-height:1.75; white-space:pre-wrap; overflow-wrap:anywhere; }.transmission.mine p { color:#e0dbea; }.transmission footer { margin:6px 0 0; padding:0; border:0; text-align:right; display:block; color:#a2b6b5; font:7px var(--mono); letter-spacing:0; text-transform:none; }.older-messages { background:none; color:#a3c9ba; font:10px var(--mono); text-align:center; padding:10px 0 0; width:100%; }#radio-form { margin-top:15px; }#radio-form>label { display:block; font:9px var(--mono); color:#adbdc1; margin:0 0 8px; }#radio-message { width:100%; resize:vertical; min-height:80px; max-height:200px; background:#10232f; border:1px solid #55717c; border-radius:7px; padding:11px; color:#d7e5e7; font:13px/1.65 var(--sans); }#radio-message::placeholder { color:#839daa; }.radio-compose-footer { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:10px; }.radio-compose-footer small { font:8px var(--mono); color:#8da6b0; }.radio-compose-footer .primary { width:auto; font-size:17px; border-radius:6px; padding:10px 17px; }.radio-error { font-size:11px; line-height:1.6; color:#efb3a2; margin:9px 0 0; }.radio-error:empty { display:none; }.walkie-bottom { display:flex; justify-content:space-between; align-items:center; margin:14px 4px 0; font:6px var(--mono); color:#819ca6; letter-spacing:.7px; }.walkie-bottom>span:last-child { font-size:21px; color:#d3a7bd; }.jl-app #jl-help-dialog { background:#1c2b36; color:#c9dade; border:1px solid #738995; max-width:590px; max-height:90dvh; overflow:auto; }.jl-app #jl-help-dialog h2 { color:#e9dbc0; font-size:35px; }.jl-app #jl-help-dialog .eyebrow { color:#b9a0cf; }.jl-app #jl-help-dialog .dialog-note { color:#9ab2bf; }
@media(min-width:1500px){.jl-layout{grid-template-columns:minmax(0,1fr) 385px;gap:32px;}.radio-transcript{height:390px;}.work-scene>.refinery-art{max-height:370px;}.scene-crew{top:150px;}.scene-crew svg{width:100px;height:100px;}.jl-hero{padding-top:70px;padding-bottom:60px;}}
@media(max-width:1100px){.jl-layout{grid-template-columns:minmax(0,1fr) 315px;gap:18px;}.walkie{padding:13px;}.tool-status{gap:6px;}.tool-card{flex-direction:column;align-items:flex-start;padding:8px;}.tool-card strong{font-size:15px;}.readout{gap:10px;}.readout .secondary{max-width:130px;font-size:12px;padding:8px;}.jl-hero{gap:4%;}.machine-sticker{font-size:14px;}.scene-header{font-size:7px;}.jl-hero h1{font-size:90px;}.jl-tabs>span{display:none;}}
@media(max-width:850px){.jl-layout{grid-template-columns:1fr;}.jl-tabs .radio-tab{display:block;}.jl-tabs{position:sticky;top:0;z-index:8;background:#10171df5;}.jl-tabs button{flex:1;padding:12px 8px;font-size:17px;}.jl-main-column,.walkie{display:none;}body[data-panel=work] .jl-main-column,body[data-panel=workshop] .jl-main-column{display:block;}body[data-panel=radio] .walkie{display:block;}.walkie{position:relative;top:auto;max-width:540px;width:100%;margin:18px auto 20px;}.radio-transcript{height:42dvh;min-height:240px;}.walkie-antenna{height:30px;top:-25px;}.jl-hero{grid-template-columns:1fr 1fr;}.jl-hero h1{font-size:76px;}.jl-intro{font-size:20px;}.crew-row{gap:0;}.crew-row>div{width:90px;}.lobby-radio{margin:10px 12px 15px;padding:15px;}.lobby-radio p{font-size:21px;}.machine-sticker{right:15px;top:12px;font-size:12px;padding:7px;}.scene-header{padding:15px 12px;letter-spacing:.5px;}.scene-crew{top:135px;}.scene-crew svg{width:85px;height:85px;}.work-scene>.refinery-art{max-height:340px;}}
@media(max-width:620px){.jl-hero{grid-template-columns:1fr;padding:32px 0;gap:30px;}.jl-hero h1{font-size:91px;}.jl-hero h1 em{font-size:.74em;}.jl-hero .eyebrow{font-size:8px;gap:12px;margin-bottom:23px;}.jl-intro{font-size:23px;max-width:none;}.jl-description{max-width:none;font-size:13px;}.jl-hero .start-form{max-width:none;}.jl-hero-scene{transform:none;}.crew-row>div{width:100px;}.radio-link{padding:0 13px;font-size:18px;}.lobby-radio p{font-size:24px;}.jl-game-title{padding-top:26px;align-items:flex-start;}.jl-game-title h1{font-size:33px;}.jl-game-title .eyebrow{font-size:8px;gap:7px;}.jl-title-actions{flex-direction:column;align-items:flex-end;gap:9px;}.jl-title-actions .secondary{font-size:13px;padding:9px;}#station-connected{font-size:8px;}.jl-share>div{flex-direction:column;}.jl-share .primary{width:100%;}.jl-share input{font-size:11px;}.jl-crew{gap:9px;}.crew-card{padding:8px;gap:7px;flex-wrap:wrap;}.crew-card svg{width:40px;height:40px;}.crew-card strong{font-size:19px;}.crew-card small{font-size:7px;}.crew-card button{width:100%;max-width:none;margin:0;text-align:left;font-size:9px;padding:5px;}.crew-card .seat-empty{font-size:11px;}.jl-tabs button{font-size:15px;}.incident-heading{padding-right:80px;}.incident-heading h2{font-size:27px;}.incident-heading>p{font-size:8px;}#role-badge{font-size:7px;padding:5px;top:21px;}.jl-meter-row{gap:11px;grid-template-columns:1fr 1fr 55px;}.jl-meter-row label{font-size:10px;}.turn-count strong{font-size:26px;}.turn-count span{font-size:6px;}.work-scene>.refinery-art{padding:0 0 30px;}.work-scene .scene-header{font-size:6px;padding:10px;letter-spacing:.4px;}.scene-crew{top:88px;left:4px;right:4px;}.scene-crew svg{width:60px;height:60px;}.scene-crew svg:last-child{margin-top:12px;}.dialogue-overlay{margin:0 10px 10px;padding:10px;gap:7px;min-height:82px;}.dialogue-overlay>svg{width:35px;height:35px;}.dialogue-overlay p{font-size:12px;}.dialogue-overlay span{font-size:8px;}.event-card{flex-direction:column;gap:4px;padding:12px 0;}.event-card p{font-size:11px;}.jl-console{padding:13px;}.console-heading h3{font-size:21px;}.console-heading>span{font-size:7px;}.readout{flex-wrap:wrap;padding:12px;}.readout strong{font-size:33px;}.readout>div{flex:1;}.readout .secondary{max-width:none;width:100%;font-size:14px;padding:9px;}.control-grid{gap:10px;}.control-grid select{font-size:16px;padding:11px 7px;}.control-grid label{font-size:8px;}.tool-card svg{width:29px;height:29px;}.tool-card strong{font-size:14px;}.tool-card small{font-size:7px;}.tool-bench .quiet{font-size:11px;}.tool-bench .console-heading h3{font-size:19px;}.manual-row{grid-template-columns:55px 1fr;padding:10px;gap:8px;}.manual-row>strong{font-size:24px;}.manual-row p{font-size:10px;}.manual-row button{font-size:14px;}.career-stats{gap:7px;}.career-stats>div{padding:15px 6px;}.career-stats strong{font-size:30px;}.career-stats span{font-size:7px;}.upgrade-card{padding:14px;}.upgrade-card h3{font-size:22px;}.upgrade-card h3 small{font-size:8px;}.walkie{padding:14px;}.incident-outcome h2{font-size:31px;}.jl-app #jl-help-dialog h2{font-size:29px;}}
@media(max-width:360px){.jl-hero h1{font-size:78px;}.jl-tabs button{font-size:13px;padding:12px 5px;}.incident-heading h2{font-size:24px;}.jl-game-title h1{font-size:29px;}.jl-game-title .eyebrow{font-size:7px;}.crew-card strong{font-size:17px;}.scene-crew{top:70px;}.scene-crew svg{width:48px;height:48px;}.dialogue-overlay p{font-size:11px;}.control-grid select{font-size:14px;}.console-heading h3{font-size:19px;}.tool-card strong{font-size:13px;}.readout>div>span{font-size:8px;}.walkie-head h2{font-size:24px;}.radio-transcript{height:39dvh;}}
@media(prefers-reduced-motion:reduce){.jl-app *, .jl-app *:before,.jl-app *:after{animation:none!important;transition:none!important;}}
.jl-app .readout .secondary { white-space:normal; line-height:1.25; }.jl-app .dispatch-support .secondary { white-space:normal; }.jl-app progress { accent-color:#83c9ad; }.jl-app #heat-meter { accent-color:#dfa484; }
