@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap";.match-settings{margin-top:18px;padding:12px;background:#edf3e5;border-radius:5px}.match-settings label{display:block;font-size:13px;font-weight:800;margin-bottom:8px}.match-settings select{width:100%;padding:9px;border:1px solid #728b7d;border-radius:4px;background:#fffdf7;color:#263f3a;font:inherit;font-size:14px}.match-settings select:disabled{opacity:1;color:#52685c}.match-settings p{font-size:10px;line-height:1.8;margin:7px 0 0}.match-settings select:focus-visible{outline:3px solid #4d9d86;outline-offset:2px}.current-reward{display:block;width:100%;padding:7px 10px;background:#263f3a;color:#fff6d8;border-radius:4px;font-size:14px}.current-reward[data-tier=fast]{background:#286c55}.current-reward[data-tier=slow]{background:#80572a}.round-scores{min-width:240px;text-align:left}.round-scores>div{display:flex;align-items:center;gap:12px;padding:7px 0;border-bottom:1px solid #dcded2;font-size:12px}.round-scores>div>span{flex:1;overflow-wrap:anywhere}.round-scores small{font-size:10px}.round-scores b{font-size:18px;font-variant-numeric:tabular-nums}.role-banner{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;margin-top:14px;padding:12px 16px;border:2px solid #b78313;border-left-width:8px;border-radius:5px;background:#fff0b9;color:#634508}.role-banner strong{font-size:19px;font-weight:900}.role-banner>span{font-size:12px;font-weight:700}.role-banner[data-role=child]{background:#dcefe9;border-color:#328570;color:#205b50}#child-time{margin-left:auto;font-size:14px;color:var(--ink);font-weight:900}.music-controls{display:flex;align-items:center;gap:8px}.music-controls button{border:1px solid #728b7d;border-radius:4px;background:#fffdf7;color:#263f3a;padding:6px 8px;font-size:10px;font-weight:800;white-space:nowrap}.music-controls button[aria-pressed=true]{background:#263f3a;color:#fff6d8}.music-controls label{display:flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap}.music-controls input{width:62px;height:24px;padding:0;accent-color:#328570}.music-controls audio{display:none}@media(max-width:760px){.top-meta{flex-wrap:wrap;justify-content:flex-end;gap:4px}.music-controls{gap:5px}.role-banner{padding:9px 12px;gap:4px}.role-banner strong{font-size:17px}.role-banner>span{font-size:11px;width:100%}.top-meta .live-dot{display:none}}:root{font-family:Noto Sans JP,Yu Gothic,sans-serif;color:#263f3a;background:#f6f4ed;font-synthesis:none;--ink:#263f3a;--muted:#7a8379;--yellow:#eeb526;--line:#dcded2}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #4d9d86;outline-offset:4px}button{transition:background .15s,transform .15s}button:not(:disabled):active{transform:translateY(1px)}.hidden{display:none!important}.topbar{height:94px;display:flex;align-items:center;justify-content:space-between;max-width:1440px;margin:auto;padding:0 52px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:900;letter-spacing:-1px}.brand svg{width:43px;height:43px;color:var(--yellow);background:var(--ink);border-radius:11px;padding:4px}.brand small{display:block;font-size:9px;letter-spacing:1.8px;font-weight:600;margin-top:2px}.top-meta{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:600}.live-dot{width:7px;height:7px;display:inline-block;background:#54977d;border-radius:50%;box-shadow:0 0 0 4px #54977d13;margin:0 4px}main{max-width:1440px;margin:auto;padding:0 52px}.landing{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;padding:54px 0 42px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.4px;font-weight:700;margin:0 0 20px}.intro>.eyebrow{font-family:monospace;font-size:10px;color:#758175}.intro>.eyebrow span{color:var(--ink);font-family:inherit;font-size:11px;letter-spacing:1px;margin-right:10px}h1{font-size:clamp(56px,5.6vw,82px);line-height:1.3;letter-spacing:-5px;font-weight:900;margin:0 0 26px}.underlined{position:relative;isolation:isolate}.underlined:after{content:"";position:absolute;left:0;bottom:5px;width:100%;height:17px;background:var(--yellow);z-index:-1;transform:rotate(-1deg)}.lead{font-size:15px;line-height:2.1;color:#69776a;letter-spacing:.7px}.lead strong{color:var(--ink)}.hero-art{max-width:530px;position:relative;margin-top:8px}.hero-art svg{display:block;width:100%}.quick-facts{display:flex;gap:28px;margin-top:5px;font-size:11px;color:#718071}.quick-facts span+span{border-left:1px solid var(--line);padding-left:28px}.quick-facts b{font-size:20px;color:var(--ink);margin-right:5px}.entry-panel{background:#fffdf7;border:1px solid #d9dcd0;box-shadow:6px 6px #e6e8dc;border-radius:6px;padding:29px 32px 25px;position:relative}.entry-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:repeating-linear-gradient(135deg,var(--yellow),var(--yellow) 10px,var(--ink) 10px,var(--ink) 20px);border-radius:6px 6px 0 0}.panel-label{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px;font-weight:700}.small-stamp{font-size:9px;padding:3px 6px;border:1px solid #b8c8b9;border-radius:2px;color:#6e8e71;transform:rotate(3deg)}h2{font-size:27px;letter-spacing:-1px;margin:22px 0 8px}.muted{font-size:11px;color:var(--muted);line-height:1.7}.field-label{display:block;font-size:11px;font-weight:700;margin:24px 0 9px}input{width:100%;height:49px;border:1px solid #d9ddd0;background:#f7f7ef;border-radius:4px;padding:0 14px;font-size:14px;color:var(--ink);min-width:0}input::placeholder{color:#9a9f92}#room-code{text-transform:uppercase;font-family:monospace;font-size:19px;letter-spacing:4px}.button{border:0;border-radius:4px;min-height:46px;padding:12px 18px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:12px;font-weight:800;white-space:nowrap}.primary{background:var(--yellow);color:var(--ink)}.primary:hover:not(:disabled){background:#f8c23d}.dark{background:var(--ink);color:#fffcf1}.dark:hover:not(:disabled){background:#3a5850}#create-room{width:100%;margin-top:14px;justify-content:space-between;font-size:14px}#create-room span{font-size:23px}.divider{display:flex;align-items:center;gap:12px;margin:23px 0 20px;color:#899080;font-size:10px}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.divider+.field-label{margin-top:0}.join-line{display:flex;gap:9px}.entry-note{font-size:10px;color:#85907e;margin:12px 0 24px;text-align:center}.safety-note{border-top:1px dashed #ccd2c4;padding-top:20px}.safety-note b{font-size:12px}.safety-note p{font-size:11px;color:#7e877b;line-height:1.9;margin-bottom:0}.how-to{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding:29px 0 34px;gap:32px}.how-to article{display:flex;align-items:center;gap:19px}.how-to article>span{font-size:28px;font-weight:800;color:#aab6a5;font-family:monospace}.how-to h3{margin:0;font-size:13px}.how-to p{margin:5px 0 0;font-size:10px;color:#7e877b}footer{max-width:1336px;margin:0 auto;border-top:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;font-size:10px;font-weight:600;color:#75816f}footer i{font-style:normal;font-size:8px;letter-spacing:1px;margin-left:12px}footer>span:nth-child(3){font-family:monospace;font-size:9px;letter-spacing:1px}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:#fff9e5;border:1px solid #61766a;padding:16px 24px;border-radius:6px;box-shadow:0 8px 30px #20352f25;opacity:0;pointer-events:none;transition:.2s;max-width:90vw;font-size:13px;z-index:99}#toast.visible{opacity:1;transform:translate(-50%)}.room-bar{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.room-code-block{display:flex;align-items:center;gap:14px}.room-code-block .eyebrow{margin:0;font-size:9px;color:#7b8777}.room-code-block button{background:none;border:0;font-family:monospace;font-weight:700;letter-spacing:3px;font-size:21px;color:var(--ink);padding:5px}.room-code-block button span{font-size:17px;color:#97a48f}.phase-track{display:flex;gap:7px}.phase-track span{padding:7px 13px;border-radius:3px;font-size:11px;color:#92a08c;font-weight:600}.phase-track .current{background:var(--ink);color:#fff6d8}.text-button{border:0;background:none;font-size:11px;font-weight:600;color:#748470;padding:10px;white-space:nowrap}.text-button:hover{background:#e9ede0}.game-heading{display:flex;justify-content:space-between;align-items:center;padding:23px 0 21px;gap:20px}.game-heading .eyebrow{margin:0 0 8px;font-size:9px;color:#7c8975}.game-heading h2{font-size:27px;margin:0 0 6px}.game-heading p:last-child{font-size:11px;color:#7c8975;margin:0;line-height:1.8}.clock{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:0 8px;min-width:94px;border-left:1px solid var(--line);padding-left:24px}.clock span{grid-column:1/3;font-size:9px;letter-spacing:1px;color:#7c8975}.clock b{font-family:monospace;font-size:43px;font-weight:700;line-height:1.15}.clock small{font-size:10px;color:#7c8975}.clock.urgent b{color:#bd583f}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;margin-bottom:26px}.stage-column{min-width:0}.stage-frame{position:relative;aspect-ratio:16/9;background:#e4ebe0;border:1px solid #b9c8b4;border-radius:5px;overflow:hidden}#game{position:absolute;inset:0}#game canvas{display:block;max-width:100%;max-height:100%;outline:none}.stage-corner{position:absolute;bottom:5px;right:13px;font:7px monospace;color:#ecdfb9;pointer-events:none;letter-spacing:1.5px}.toolbar{min-height:76px;border:1px solid var(--line);border-top:0;background:#fffdf7;display:flex;align-items:center;justify-content:space-between;padding:10px;gap:7px;border-radius:0 0 5px 5px}.parts{display:flex;gap:5px}.part{border:1px solid #dce1d1;background:#f6f7ef;border-radius:4px;padding:5px 8px;display:grid;grid-template-columns:auto auto;gap:1px 7px;min-width:69px;color:var(--ink)}.part.selected{border-color:var(--ink);background:#f8e4a8;box-shadow:0 0 0 1px var(--ink)}.part kbd{font-size:8px;padding:0 3px;grid-row:1}.part>span{font-size:13px;line-height:15px}.part b{font-size:10px}.part small{font-size:8px;color:#7c8975}.toolbar .button{font-size:10px;padding:10px;min-height:38px}.toolbar .text-button{font-size:9px;padding:6px}.toolbar-status{font-size:11px;font-weight:600;display:flex;align-items:center;gap:7px;padding:0 5px}.toolbar-hint{font:9px monospace;color:#87927e;white-space:nowrap;padding:0 4px}.controls{display:flex;gap:20px;align-items:center;margin-top:13px;color:#809079;font-size:9px}.controls span:last-child{margin-left:auto;font-size:9px}kbd{display:inline-block;border:1px solid #cbd2c1;border-bottom-width:2px;border-radius:3px;padding:1px 5px;font:9px monospace;background:#fffdf5;margin-right:3px;color:#60755e}.crew-panel{border:1px solid var(--line);background:#fffdf7;border-radius:5px;padding:20px 17px;align-self:start}.crew-panel>.panel-label{padding-bottom:16px;border-bottom:1px solid var(--line)}.crew-row{display:flex;gap:9px;align-items:center;padding:17px 0;border-bottom:1px solid #ebeddf}.avatar{width:34px;height:39px;flex-shrink:0;position:relative;color:var(--worker)}.avatar svg{width:34px;height:34px;background:#edf0e5;border-radius:8px}.avatar>span{position:absolute;bottom:-1px;right:-2px;font:8px monospace;background:var(--ink);color:#fff9df;border-radius:50%;padding:2px 4px}.crew-name{flex:1;min-width:0}.crew-name b{font-size:11px;display:block;overflow-wrap:anywhere}.crew-name b small{font-size:7px;margin-left:5px;color:#85997d;font-weight:500}.crew-name>span{display:block;font-size:8px;color:#83907a;margin-top:4px}.points{font-family:monospace;font-size:23px;font-weight:700;text-align:right}.points small{display:block;font-size:8px;color:#92a188}.points em{font-style:normal;color:#4e9175}.empty-slot{font-size:10px;color:#9ca693;border-bottom:1px dashed var(--line);padding:22px 0}.room-actions .button,#room-actions>.button{width:100%;margin-top:20px}#room-actions>.muted{text-align:center;font-size:9px}.score-note{border-top:1px dashed var(--line);margin-top:23px;padding-top:18px}.score-note b{font-size:10px}.score-note p{font-size:9px;line-height:2.2;color:#8a957f;margin:7px 0 0}.role-badge{font-size:9px;line-height:2;padding-top:16px;color:#7c8d75}.role-badge b{display:block;font-size:13px;color:var(--ink)}.waiting-note{font-size:10px;color:#7f8d77;line-height:1.8;padding-top:10px}.stage-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#e5eadb66;pointer-events:none;z-index:15}.overlay-card{background:#fffdf0f0;border:2px solid var(--ink);box-shadow:6px 6px #29413d25;padding:25px 35px;text-align:center;max-width:85%;border-radius:5px}.overlay-card .eyebrow{color:#8b9b7a;font-size:9px}.overlay-card h3{font-size:25px;margin:8px 0;color:var(--ink)}.overlay-card p{font-size:12px;line-height:1.8;overflow-wrap:anywhere}@media(min-width:1500px){.landing{gap:100px;padding-top:70px;padding-bottom:60px}}@media(max-width:1100px){main{padding:0 26px}.topbar{padding:0 26px}.landing{gap:35px;padding-top:40px}.entry-panel{padding:27px 23px}.intro>.eyebrow{font-size:8px}.intro>.eyebrow span{display:block;margin-bottom:8px}.workspace{grid-template-columns:minmax(0,1fr) 220px;gap:15px}.toolbar{flex-wrap:wrap}.toolbar .parts{flex:1}.part{min-width:58px}.phase-track span{padding:6px;font-size:10px}.game-heading h2{font-size:23px}footer{margin:0 26px}.quick-facts{gap:16px}.quick-facts span+span{padding-left:16px}.controls{gap:10px}.controls span:last-child{display:none}}@media(max-width:760px){.topbar{height:75px;padding:0 20px}.brand{font-size:21px}.top-meta{font-size:9px}main{padding:0 20px}.landing{grid-template-columns:1fr;gap:30px;padding-top:35px}.intro>.eyebrow span{display:inline}.intro h1{font-size:59px}.lead{font-size:13px}.hero-art{max-width:420px}.quick-facts{justify-content:center}.entry-panel{max-width:520px;width:100%;margin:auto}.how-to{grid-template-columns:1fr;gap:20px}.workspace{grid-template-columns:1fr}.crew-panel,.phase-track{display:none}.game-heading h2{font-size:19px}.game-heading p:last-child{font-size:10px}.clock b{font-size:33px}.room-bar{height:64px}.overlay-card{padding:15px}.overlay-card h3{font-size:18px}.overlay-card p,.toolbar-status{font-size:10px}.toolbar-hint{display:none}.parts{justify-content:space-between}.part{flex:1}.toolbar .text-button{padding:8px}.toolbar .button{margin-left:auto}footer{margin:0 20px;gap:20px;font-size:9px}footer>span:nth-child(3){display:none}.entry-panel:after{content:"PCブラウザ＋キーボード・マウスで遊べます";display:block;color:#86917c;font-size:10px;text-align:center;margin-top:20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.clock{min-width:132px;padding:10px 18px;background:#e8eee2;border:2px solid #61765c;border-radius:7px;flex-shrink:0}.clock span{font-size:11px;color:#344c3a}.clock b{font-size:52px;font-variant-numeric:tabular-nums}.clock small{font-size:14px;color:#344c3a}.clock.warning{background:#fff0b9;border-color:#af7a16}.clock.urgent{background:#ffe2d8;border-color:#b9412a}.clock.urgent b{color:#b23721}.build-timer{display:flex;align-items:center;gap:20px;padding:10px 18px;background:#edf3e5;border:2px solid #56754e;border-top:0;color:#29413d;position:sticky;bottom:0;z-index:16}.build-time{flex-shrink:0;min-width:102px}.build-time>span{font-size:11px;font-weight:800}.build-time>div{display:flex;align-items:baseline;gap:6px}.build-time b{font:800 38px/1.1 monospace;font-variant-numeric:tabular-nums}.build-time>div>span{font-size:13px;font-weight:700}.build-timer-detail{flex:1;min-width:0}.build-timer-detail strong{font-size:14px}.build-timer-detail p{font-size:10px;margin:4px 0 7px}.build-timer progress{display:block;appearance:none;width:100%;height:9px;border:0;border-radius:9px;overflow:hidden;background:#d1dbc8}.build-timer progress::-webkit-progress-bar{background:#d1dbc8}.build-timer progress::-webkit-progress-value{background:#4b7854}.build-timer progress::-moz-progress-bar{background:#4b7854}.build-timer.warning{background:#fff0b9;border-color:#af7a16;color:#6c4908}.build-timer.warning progress::-webkit-progress-value{background:#b98213}.build-timer.warning progress::-moz-progress-bar{background:#b98213}.build-timer.urgent{background:#ffe2d8;border:3px solid #b9412a;color:#932f20}.build-timer.urgent progress::-webkit-progress-value{background:#b9412a}.build-timer.urgent progress::-moz-progress-bar{background:#b9412a}@media(max-width:760px){.crew-panel{display:block}.build-timer{gap:10px;padding:10px}.build-time{min-width:80px}.build-timer-detail strong{font-size:12px}.build-timer-detail p{font-size:10px}.clock{min-width:116px;padding:8px 12px}}.challenge-hint{padding:12px 15px;background:#fffdf5;border:1px solid #c1ceba;border-top:0;color:#344c48;position:sticky;bottom:0;z-index:16}.hint-heading{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.hint-heading strong{font-size:13px}.hint-heading>span{font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.hint-stages{display:flex;gap:6px}.hint-stages>span{flex:1;text-align:center;font-size:9px;padding:6px;border-radius:4px;background:#edf0e5;color:#7c8c74;line-height:1.6}.hint-stages b{font-size:11px}.hint-stages>span.current{background:#344c48;color:#fff6d8;box-shadow:inset 0 0 0 2px #344c48}.challenge-hint[data-stage=near],.challenge-hint[data-stage=middle]{background:#fff0bc;border-color:#b88a27}.challenge-hint[data-stage=reveal]{background:#dceee0;border:2px solid #448867}.in-room .topbar{height:66px}.in-room .brand{font-size:21px}.in-room .brand svg{width:35px;height:35px}.in-room .room-bar{height:54px}.in-room .game-heading{padding:16px 0}.in-room .game-heading h2{font-size:23px}.in-room .stage-frame{width:100%;max-height:calc(100dvh - 320px)}.in-room .crew-row{padding:13px 0}.in-room .empty-slot{padding:15px 0}.in-room .score-note{margin-top:16px;padding-top:12px}.in-room footer{padding:12px 0}.in-room .workspace{margin-bottom:16px}.in-room .workspace{grid-template-columns:minmax(0,1fr);gap:16px}.in-room .topbar{height:54px}.in-room .room-bar{height:44px}.in-room .role-banner{margin-top:8px;padding:8px 12px}.in-room .game-heading{padding:10px 0}.in-room .game-heading h2{font-size:21px}.in-room .toolbar{min-height:56px}.in-room .stage-frame{max-height:none;width:min(100%,max(410px,calc((100dvh - 280px) * 16 / 9)));margin-inline:auto}.in-room.is-building .stage-frame{width:min(100%,max(410px,calc((100dvh - 390px) * 16 / 9)))}.in-room.is-challenging .stage-frame{width:min(100%,max(410px,calc((100dvh - 430px) * 16 / 9)))}.in-room .crew-panel{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:12px 24px;padding:16px}.crew-roster{min-width:0}.crew-roster>.panel-label{padding-bottom:10px}#crew{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.in-room .crew-row{padding:10px;background:#f3f5ed;border:1px solid var(--line);border-radius:5px;gap:8px}.crew-row.is-me{border-color:#728b7d}.in-room .empty-slot{padding:10px;display:flex;align-items:center;justify-content:center;text-align:center;border:1px dashed var(--line);border-radius:5px}.in-room .crew-panel .match-settings{margin-top:0}.in-room .crew-panel #room-actions>.button{margin-top:10px}.in-room .crew-panel #room-actions>.button:first-child{margin-top:0}.in-room .role-badge{padding-top:0}.score-rules{grid-column:1 / -1;border-top:1px solid var(--line);padding-top:10px}.score-rules summary{cursor:pointer;width:fit-content;font-size:12px;font-weight:700}.score-rules summary:focus-visible{outline:3px solid #4d9d86;outline-offset:4px}.in-room .score-rules .score-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 32px;margin:10px 0 0;padding:0;border:0}.score-rules .score-note p{font-size:11px;color:#60755e}@media(max-width:1100px){#crew{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.in-room .crew-panel{grid-template-columns:minmax(0,1fr)}.in-room .crew-panel #room-actions{border-top:1px solid var(--line);padding-top:12px}}.match-settings .grid-option{display:flex;align-items:center;gap:8px;margin:14px 0 0;cursor:pointer}.grid-option input{width:18px;height:18px;flex-shrink:0;margin:0;padding:0;accent-color:#328570}.grid-option:has(input:disabled){cursor:default}.intro .instruction-title{font-size:clamp(32px,3.6vw,52px);letter-spacing:-2px;line-height:1.55}.lobby-menu{position:absolute;inset:0;z-index:20;display:flex;padding:16px;overflow:auto;background:#e4ebe026}.lobby-card{width:360px;max-width:100%;margin:auto;flex-shrink:0;padding:20px;border:1px solid #728b7d;border-radius:8px;background:#fffdf7f5;box-shadow:0 6px 24px #263f3a20}.lobby-card h3{margin:0 0 14px;font-size:20px}.lobby-card .match-settings{margin-top:0}#lobby-actions>.button{width:100%;margin-top:14px}#lobby-actions>.muted,#lobby-actions>.waiting-note{text-align:center;margin-bottom:0}#room-actions:empty{display:none}.in-room .crew-panel:has(#room-actions:empty){grid-template-columns:minmax(0,1fr)}.match-settings .work-time-label{margin-top:14px}.toolbar{flex-wrap:wrap}.toolbar .parts{flex:1 1 auto;flex-wrap:wrap}.part-actions{display:flex;align-items:center;gap:7px;margin-left:auto}.part-help{flex-basis:100%;margin:0;font-size:10px;line-height:1.5;color:#52685c}.parent-lives{margin-left:auto;padding:5px 10px;border:1px solid currentColor;border-radius:4px;white-space:nowrap;font-size:12px}.parent-lives.last-life{color:#a63826;background:#fff0dd}.part{cursor:grab;touch-action:none;user-select:none}#game canvas{touch-action:none}.drag-feedback{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:25;padding:8px 14px;border:2px solid #28745d;border-radius:5px;background:#fffdf0f2;color:#28745d;font-size:12px;font-weight:700;white-space:nowrap;pointer-events:none}.drag-feedback.returning{color:#a63826;border-color:#a63826}.toolbar.returning-part .parts{outline:3px dashed #a63826;outline-offset:4px;background:#fff0dd}.in-room.is-building .stage-frame{width:min(100%,var(--build-stage-width, 100%))}.in-room.is-building .game-heading{padding:6px 0}.in-room.is-building .game-heading h2{font-size:18px;margin-bottom:2px}.in-room.is-building .game-heading .eyebrow{margin-bottom:3px}.in-room.is-building .clock{display:none}.in-room.is-building .build-timer{position:static;gap:14px;padding:6px 12px;border-width:2px;border-top:0}.in-room.is-building .build-time{display:flex;align-items:center;gap:10px;min-width:0}.in-room.is-building .build-time b{font-size:30px}.in-room.is-building .build-timer-detail strong{font-size:12px}.in-room.is-building .build-timer-detail p{margin:2px 0 4px}.in-room.is-building .build-timer progress{height:6px}.in-room.is-building .toolbar{padding:8px}.in-room.is-building .controls{margin-top:6px}.toolbar .parts{flex:0 1 auto;gap:6px}.toolbar .part{display:flex;align-items:center;justify-content:center;flex:0 0 88px;width:88px;min-width:0;height:64px;padding:4px;border:1px solid #b9c8b4;background:#edf2e7}.toolbar .part svg{display:block;width:100%;height:100%;pointer-events:none}.toolbar .part:hover{background:#fff0bd}.toolbar .part.selected{border-color:#29413d;background:#f8e4a8;box-shadow:0 0 0 1px #29413d}.toolbar .part.placed{border-style:dashed}.toolbar .part.placed svg{opacity:.5}.toolbar .part[data-slot=conveyor][data-direction="-1"] svg{transform:scaleX(-1)}@media(max-width:1100px){.toolbar .part{flex-basis:76px;width:76px;height:60px}}.countdown-overlay{pointer-events:auto;background:#e5eadb55}.countdown-card{min-width:min(340px,80%);padding:16px 26px}.countdown-card[data-active=true]{background:#fff1bcf5;border-color:#ac7b14}.countdown-card h3{font-size:clamp(18px,2vw,26px);margin:0}#countdown-number{display:block;font:900 clamp(54px,9vh,104px)/1.1 monospace;color:#29413d;font-variant-numeric:tabular-nums}.countdown-card p{margin:6px 0 0}.timecard-overlay{pointer-events:auto;overflow-y:auto;padding:12px}.timecard-overlay .overlay-card{max-height:100%;overflow-y:auto}.clock-out-button{width:100%}.round-scores .overtime-change,.round-scores .overtime-total{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;gap:3px;white-space:nowrap}.round-scores .overtime-change b{color:#9a5424}.round-scores .overtime-total{padding-left:12px;border-left:1px solid #dcded2}.monthly-report-overlay{pointer-events:auto;padding:12px;overflow-y:auto;background:#e5eadbaa}.overlay-card.monthly-report{width:700px;max-width:100%;max-height:100%;overflow-y:auto;padding:20px 28px;text-align:left}.monthly-report header{border-bottom:1px solid #ccd5c7;padding-bottom:10px;margin-bottom:12px}.monthly-report .eyebrow{letter-spacing:2px;color:#5e7566}.monthly-report h3{margin:4px 0}.monthly-report header p{margin:0;color:#5e7566}.overtime-chart-scale{display:flex;justify-content:space-between;margin:0 72px 4px 132px;color:#6e7d70;font:11px monospace}.overtime-chart{list-style:none;padding:0;margin:0;display:grid;gap:10px}.overtime-chart li{display:grid;grid-template-columns:120px minmax(0,1fr) 60px;align-items:center;gap:12px;min-height:30px}.overtime-chart-name{font-size:12px;font-weight:700;overflow-wrap:anywhere}.overtime-chart-name small{display:block;font-size:9px;color:#6e7d70}.overtime-chart-track{display:block;height:24px;background:repeating-linear-gradient(90deg,#e7ecdf 0 calc(25% - 1px),#d1dacb calc(25% - 1px) 25%);border-left:1px solid #839481}.overtime-chart-bar{display:block;height:100%;border-radius:0 3px 3px 0}.overtime-chart strong{text-align:right;font-size:21px;font-variant-numeric:tabular-nums;white-space:nowrap}.overtime-chart strong small{font-size:10px;margin-left:3px}.monthly-report .monthly-message{margin:16px 0 0;border-top:1px solid #ccd5c7;padding-top:12px;font-size:17px;font-weight:800;text-align:center}@media(max-width:760px){.overlay-card.monthly-report{padding:14px}.overtime-chart li{grid-template-columns:84px minmax(0,1fr) 56px;gap:8px}.overtime-chart-scale{margin-left:92px;margin-right:64px}}.monthly-actions{margin-top:14px;text-align:center}.monthly-actions .button{width:100%}.monthly-actions .muted{margin:8px 0 0}footer{flex-wrap:wrap;gap:12px 20px}.audio-credits{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px 24px;padding-top:10px;border-top:1px dashed var(--line);font-size:11px;line-height:1.8}.audio-credits a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.audio-credits a:hover{color:#28745d}
