@charset "UTF-8";
:root{--bg:#101e27;--panel:#162830;--line:rgba(178,202,190,.15);--text:#e6e9dd;--muted:#8b9e9e;--green:#b6d29e;--dark:#173c34;--amber:#dbc190;font-family:"PingFang TC","Noto Sans TC","Microsoft JhengHei",system-ui,sans-serif;font-synthesis:none;color:var(--text);color-scheme:dark;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);overflow:hidden}button,input,select,textarea{font:inherit}button{color:inherit;border:0;background:none;cursor:pointer;transition:background .18s,color .18s,transform .18s}button:hover{color:#fff}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px}button:active{transform:translateY(1px)}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.hidden{display:none!important}.header{height:92px;margin:0 42px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;z-index:5}.brand-lockup{display:flex;align-items:center;gap:13px;text-align:left;padding:0;font-size:20px;letter-spacing:.14em;font-weight:650}.brandmark{border:1px solid #90a58b;width:43px;height:46px;display:grid;place-items:center;border-radius:11px;color:var(--green)}.brandmark svg{width:27px;height:27px}.brand-lockup small{display:block;font-size:9px;color:var(--muted);font-weight:400;letter-spacing:.13em;margin-top:5px}.brand-lockup small i{font-size:8px;font-style:normal;margin-left:7px}.location{font-size:11px;color:var(--muted);letter-spacing:.06em;display:flex;align-items:center;gap:10px}.live-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--green);box-shadow:0 0 9px #b6d29e33;flex-shrink:0}.header-actions{display:flex;align-items:center;gap:13px}.version{font-size:9px;color:#738e92;letter-spacing:.13em;margin-right:16px}.icon-btn{width:34px;height:34px;display:grid;place-items:center;position:relative;border-radius:50%;color:#a2b5af}.icon-btn:hover{background:#24383f}.sound-off{position:absolute;left:16px;top:7px;width:1px;height:22px;background:#9fb5aa;transform:rotate(40deg)}main{position:relative;height:calc(100dvh - 92px);min-height:530px}#stage{position:absolute;left:330px;top:116px;right:0;bottom:96px;overflow:hidden}#scene{width:100%;height:100%;min-height:300px;touch-action:none}#scene canvas{display:block;width:100%;height:100%}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#101e2700 70%,#101e2755)}.scene-caption{position:absolute;left:36px;top:30px;display:flex;flex-direction:column;gap:8px;pointer-events:none;color:#b8c9be;font-size:12px}.eyebrow{color:#758e90;font-size:9px;letter-spacing:.15em;font-weight:600}.scene-tools{position:absolute;top:23px;right:34px;display:flex;align-items:center;gap:4px;z-index:2}.tool{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:6px;font-size:11px;height:33px;padding:0 10px;background:#172b32b5;color:#abbeb5}.tool:hover{background:#30474a}.tool svg{width:15px;height:15px}.tool.compact{padding:0;width:32px;justify-content:center;font-size:20px}.tool-divider{height:20px;width:1px;background:var(--line);margin:0 6px}.scene-hint{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);font-size:10px;white-space:nowrap;color:#758d8d;display:flex;gap:9px;pointer-events:none}.north{position:absolute;bottom:22px;right:43px;font-size:9px;display:flex;flex-direction:column;align-items:center;color:#92a7a4;gap:2px}.north span{font-size:28px;color:#b4c4b8}.hero{position:absolute;top:50%;transform:translateY(-55%);left:7%;z-index:3;pointer-events:none}.hero button{pointer-events:auto}.edition{font-size:10px;letter-spacing:.17em;color:var(--green);display:flex;gap:9px;align-items:center}.edition span{height:1px;width:24px;background:var(--green)}h1{font-family:"Songti TC","Noto Serif TC","PMingLiU",serif;font-weight:600;font-size:clamp(42px,4.2vw,68px);letter-spacing:.09em;line-height:1.5;margin:18px 0 14px}h1 span{color:var(--green)}.hero-copy{font-size:16px;line-height:1.9;letter-spacing:.12em;color:#c3cdc4;margin:0}.hero-rule{height:1px;width:36px;background:#516361;margin:25px 0}.hero-desc{font-size:12px;line-height:2;color:#7f9595;letter-spacing:.025em}.primary{background:var(--green);color:#183b32;border-radius:5px;height:43px;display:flex;align-items:center;justify-content:center;gap:14px;padding:0 22px;font-size:13px;font-weight:600;letter-spacing:.05em}.primary:hover{background:#c9e3b3;color:#102c22}.primary svg{width:18px}.hero-start{width:242px;height:50px;justify-content:space-between;margin-top:26px}.hero-secondary{display:flex;gap:18px;margin:17px 0}.hero-secondary button{color:#9eb4a7;padding:0;font-size:11px;border-bottom:1px solid #58715e;padding-bottom:5px}.hero-note{font-size:10px;color:#657e80;margin-top:40px;letter-spacing:.04em}.hero-note span{font-family:monospace;margin-right:13px;color:#8ca58e}.welcome #stage{left:26%;top:0;bottom:58px}.welcome .scene-caption{left:auto;right:52px;top:auto;bottom:54px;text-align:right;gap:8px}.welcome .scene-tools{top:21px}.welcome .scene-hint{bottom:8px}.welcome-footer{position:absolute;bottom:25px;left:42px;right:42px;display:flex;justify-content:space-between;color:#667e80;font-size:9px;letter-spacing:.1em}.game-only{display:none}.playing .game-only{display:flex}.playing #hero,.playing .welcome-footer{display:none}.playing .scene-caption{top:14px}.playing .scene-tools{top:9px}.playing .location{color:#b1c4b8}.playing .header{height:78px}.playing main{height:calc(100dvh - 78px)}#dashboard{position:absolute;left:35px;right:35px;top:19px;height:77px;gap:0;align-items:center;border-bottom:1px solid var(--line)}#dashboard>div{padding:0 37px;border-right:1px solid var(--line);min-width:180px}#dashboard>div:first-child{padding-left:6px;min-width:294px}#dashboard>div:last-child{border:0;min-width:80px}small{color:var(--muted);font-size:10px;letter-spacing:.035em}#dashboard strong{display:block;font-size:27px;font-weight:450;letter-spacing:.02em;font-variant-numeric:tabular-nums;margin-top:5px}#dashboard strong span{font-size:12px;color:#6c8686;margin-left:5px}#dashboard>div:first-child strong{color:var(--green)}#dashboard .level-stat strong{font-size:22px;color:var(--amber)}#management{position:absolute;left:34px;top:116px;width:286px;bottom:96px;border:1px solid var(--line);border-radius:10px;flex-direction:column;background:linear-gradient(145deg,#1b2e34ee,#14252dee);z-index:4;overflow:hidden}.tabs{display:flex;border-bottom:1px solid var(--line);padding:5px 8px 0;gap:4px}.tabs button{padding:11px 7px 10px;display:flex;flex:1;align-items:center;flex-direction:column;gap:6px;font-size:10px;color:#809897;border-bottom:2px solid transparent}.tabs button.active{color:var(--green);border-bottom-color:var(--green)}.tabs button svg{width:18px;height:18px}.panel{padding:20px 18px;overflow:auto;flex:1;scrollbar-width:thin;scrollbar-color:#405859 transparent}.panel h2{font-size:17px;margin:0 0 5px;font-weight:500;letter-spacing:.03em}.panel .subtitle{font-size:11px;line-height:1.8;color:var(--muted);margin:0 0 18px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-head h2{margin:0}.pill{font-size:9px;padding:4px 8px;border:1px solid #66827766;border-radius:20px;color:var(--green)}.mini-label{font-size:10px;color:#8aa39e;display:flex;justify-content:space-between;margin:16px 0 8px}.bar{background:#0d2026;height:4px;border-radius:4px;overflow:hidden}.bar i{display:block;height:100%;background:#9bbd91;transition:width .3s}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:17px 0}.summary-grid>div{padding:12px;border:1px solid var(--line);border-radius:6px}.summary-grid b{display:block;font-weight:500;margin-top:7px;font-size:17px}.panel h3{font-size:12px;font-weight:500;margin:19px 0 10px}.secondary{border:1px solid #75958166;border-radius:5px;padding:10px 12px;font-size:11px;color:#c3d4bd;background:#203a3722;display:flex;align-items:center;justify-content:center;gap:8px}.secondary:hover{background:#2c443d}.wide{width:100%}.spaced{margin-top:10px}.note{font-size:10px;line-height:1.8;color:#799290}.log-line{border-left:1px solid #567467;padding:2px 0 2px 10px;margin:10px 0;font-size:10px;color:#a1b6ac;line-height:1.7}.log-line time{display:block;font-size:9px;color:#667e7d}.tip{padding:12px;background:#9fbd8620;border:1px solid #8ba87733;border-radius:5px;font-size:11px;color:#b6c9b2;line-height:1.8;margin-bottom:14px}.build-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.build-item{background:#0f232a;border:1px solid var(--line);border-radius:6px;min-height:112px;text-align:left;padding:10px;position:relative}.build-item:hover,.build-item.selected{background:#29463f;border-color:#99bd8e}.build-item b{display:block;font-weight:500;font-size:11px;margin-top:7px}.build-item small{font-size:10px;display:block;margin-top:5px}.mini-fixture{display:block;width:42px;height:35px;position:relative;transform:skewY(-6deg);border:3px solid #abb9a1;background:repeating-linear-gradient(0deg,var(--item-color) 0 6px,#cee0ba 6px 8px);box-shadow:5px 2px 0 #506e62,0 5px 10px #05121a}.mini-fixture:after{content:'';position:absolute;top:5px;left:6px;height:19px;width:20px;background:repeating-linear-gradient(90deg,#fff4 0 3px,transparent 3px 7px)}.stock-row,.staff-card,.mission{border:1px solid var(--line);border-radius:7px;padding:12px;margin-bottom:11px;background:#11262c55}.stock-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.stock-top b{font-size:12px;font-weight:500}.stock-top .badge{font-size:9px;color:#dbb780}.stock-numbers{display:flex;gap:13px;font-size:10px;color:var(--muted);margin:10px 0}.stock-numbers b{font-weight:500;color:#d5deca}.stock-actions{display:flex;gap:6px;margin-top:10px}.stock-actions select{flex:1;min-width:0;font-size:10px}.stock-actions button{font-size:10px;padding:6px 7px;color:var(--green);border:1px solid #64887666;border-radius:4px}select,input,textarea{border:1px solid var(--line);background:#11232a;color:#c8d5c7;border-radius:4px;padding:7px;max-width:100%}select{cursor:pointer}textarea{width:100%;resize:vertical;font-family:monospace;font-size:11px;min-height:110px}.staff-top{display:flex;gap:10px;align-items:center}.avatar{width:36px;height:40px;border-radius:14px 14px 8px 8px;background:#97aa82;position:relative;overflow:hidden}.avatar:before{content:'';position:absolute;left:9px;top:6px;width:18px;height:22px;border-radius:40%;background:#d4b592;border-top:6px solid #565342}.avatar:after{content:'';position:absolute;left:5px;top:29px;width:28px;height:15px;background:#3c796e;border-radius:10px}.staff-top b{font-size:12px;font-weight:500}.staff-top small{display:block;font-size:9px;margin-top:4px}.staff-card select{width:100%;margin-top:10px;font-size:11px}.mission b{font-size:12px;font-weight:500}.mission p{font-size:10px;color:var(--muted);margin:7px 0 12px}.mission .secondary{padding:6px;font-size:10px;margin-top:10px}.panel-foot{display:flex;align-items:center;gap:7px;border-top:1px solid var(--line);padding:12px 14px;font-size:9px;color:#79958c;flex-shrink:0}.panel-foot span:last-child{margin-left:auto}.demand-card{position:absolute;right:36px;top:172px;max-width:220px;display:flex;flex-direction:column;background:#13262bbd;border:1px solid var(--line);border-radius:7px;padding:15px;pointer-events:none;z-index:2;backdrop-filter:blur(5px)}.demand-card h3{font-size:13px;font-weight:500;margin:9px 0 6px;color:#d1d9c4}.demand-card p{font-size:10px;color:#96ada3;line-height:1.8;margin:0}.demand-card #eventTags{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}.demand-card em{font-size:9px;color:#c1cfaa;font-style:normal;background:#48604444;padding:3px 6px;border-radius:3px}.bottom-hud{position:absolute;bottom:24px;left:35px;right:35px;height:58px;align-items:center;gap:25px;border-top:1px solid var(--line);padding-top:16px;z-index:4}.store-status{display:flex;align-items:center;gap:11px;flex:1}.store-status b{font-weight:500;font-size:12px;display:block}.store-status small{display:block;margin-top:5px;font-size:10px}.time-controls{display:flex;align-items:center;gap:3px;background:#142930;border:1px solid var(--line);padding:4px;border-radius:5px}.time-controls button{font-size:11px;width:33px;height:28px;border-radius:3px;color:#8ba69c}.time-controls button.active{color:var(--green);background:#36514388}.time-controls #pauseBtn{font-size:16px}.bottom-hud .primary{min-width:180px}.selection-card{position:absolute;left:30px;bottom:45px;min-width:240px;max-width:300px;padding:16px;background:#1a3037ef;border:1px solid #a3b18c66;border-radius:8px;z-index:5;box-shadow:0 8px 26px #0003}.selection-card h3{font-weight:500;font-size:14px;margin:0 0 5px}.selection-card p{font-size:10px;color:var(--muted);line-height:1.7;margin:8px 0}.selection-card .actions{display:flex;gap:5px}.selection-card .actions button{font-size:10px;padding:7px;background:#3d514b66;border-radius:4px}.selection-card .x{position:absolute;top:9px;right:10px;font-size:17px}.selection-card .danger{color:#d9a08b}.build-banner{font-size:11px;color:var(--green)}#toast{position:fixed;bottom:100px;left:50%;transform:translateX(-50%) translateY(10px);max-width:85vw;opacity:0;pointer-events:none;transition:.2s;z-index:30;border:1px solid #90aa7b55;color:#d6e1c9;background:#213932f2;box-shadow:0 8px 24px #0002;padding:12px 20px;border-radius:7px;font-size:12px}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}dialog{border:1px solid #7f9b7744;border-radius:14px;background:#182c33;color:var(--text);padding:36px;width:620px;max-width:calc(100vw - 28px);max-height:88dvh;overflow:auto;box-shadow:0 40px 100px #0008}dialog::backdrop{background:#071218ba;backdrop-filter:blur(6px)}.close-modal{position:absolute;top:12px;right:16px;font-size:25px;color:#92a799}.modal-eyebrow{font-size:9px;color:#a6c590;letter-spacing:.15em}.modal-title{font-size:26px;font-weight:500;letter-spacing:.07em;margin:10px 0 10px}.modal-sub{color:#8fa79e;font-size:12px;line-height:1.9;margin-bottom:24px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0 22px}.choice{border:1px solid var(--line);padding:15px;border-radius:7px;text-align:left;position:relative;background:#11252c}.choice.selected{border-color:#b5cd9b;background:#2c4439}.choice b{font-size:14px;font-weight:500}.choice small{display:block;margin:7px 0 0;font-size:10px;line-height:1.6}.choice i{height:3px;display:block;width:30px;margin-bottom:9px}.config-line{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.config-line label{font-size:11px;color:#a8bfae}.config-line select{display:block;width:100%;margin-top:8px}.modal-actions{display:flex;gap:10px;margin-top:24px;justify-content:flex-end}.receipt{border:1px solid #65796155;border-radius:6px;background:#0f242b;padding:19px}.receipt-row{display:flex;justify-content:space-between;gap:20px;padding:8px 0;font-size:12px;color:#a2b7a8}.receipt-row b{font-weight:500;color:#d9e1c9;font-variant-numeric:tabular-nums}.receipt-row.total{border-top:1px dashed #56715b;margin-top:8px;padding-top:18px;font-size:17px}.receipt-row.total b{color:var(--green)}.report-hero{display:flex;gap:25px;padding:15px 0 24px}.report-hero div{flex:1}.report-hero b{display:block;font-size:28px;font-weight:400;color:var(--green);margin-top:6px}.manual{display:grid;grid-template-columns:30px 1fr;gap:16px 12px;margin:20px 0}.manual .n{color:var(--green);font-size:16px;font-family:monospace}.manual b{font-size:13px;font-weight:500}.manual p{font-size:11px;color:#8fa99b;line-height:1.8;margin:6px 0}.key{border:1px solid var(--line);border-radius:3px;padding:1px 5px;font:10px monospace}.chart{height:80px;display:flex;gap:7px;align-items:flex-end;margin:14px 0 4px}.chart div{flex:1;max-width:30px;background:#8ba97788;border-radius:3px 3px 0 0;min-height:2px}.danger-text{color:#dfac94!important}#fallback{position:absolute;inset:35%;font-size:16px;line-height:2;color:var(--amber)}
@media(min-width:1550px){.hero{left:8%}#management{width:310px}#stage{left:355px}.demand-card{right:50px}}
@media(max-width:1150px){.header{margin:0 24px}.location{display:none}.version{font-size:8px;margin:0}.hero{left:5%}h1{font-size:46px}.hero-desc{font-size:11px}.welcome #stage{left:24%}#dashboard>div{min-width:145px;padding:0 25px}#dashboard>div:first-child{min-width:274px}#dashboard .level-stat{display:none}#management{left:24px;width:264px}#stage{left:298px}.scene-tools{right:18px}.scene-caption{left:20px}.playing .scene-caption{display:none}.demand-card{right:20px;max-width:190px;top:167px}.bottom-hud{left:24px;right:24px}.tool.compact{width:27px}}
@media(max-height:800px) and (min-width:761px){.header{height:76px}main{height:calc(100dvh - 76px)}.hero{transform:translateY(-52%)}h1{font-size:47px;margin:10px 0}.hero-copy{font-size:14px}.hero-rule{margin:16px 0}.hero-note{margin-top:25px}.hero-start{margin-top:18px}.hero-desc{line-height:1.8}.playing .header{height:68px}.playing main{height:calc(100dvh - 68px)}#dashboard{top:8px;height:66px}#management{top:93px;bottom:88px}#stage{top:93px;bottom:88px}.demand-card{top:146px}.bottom-hud{bottom:19px}#dashboard strong{font-size:23px}}
@media(max-width:760px){body{overflow:auto}.header{height:72px;margin:0 20px;gap:10px}.brand-lockup{font-size:17px;gap:10px}.brandmark{width:34px;height:37px;border-radius:8px}.brandmark svg{width:22px}.brand-lockup small{font-size:8px}.brand-lockup small i{display:none}.version{display:none}.header-actions{gap:5px}.icon-btn{width:29px}.location{display:none}main{height:auto;min-height:calc(100dvh - 72px)}.welcome #stage{position:relative;left:auto;right:auto;top:auto;height:46dvh;min-height:310px;bottom:auto;width:100%}.welcome .hero{position:relative;left:auto;top:auto;transform:none;padding:0 27px 68px;margin-top:-4px}.hero h1{font-size:36px;line-height:1.4;margin:12px 0}.hero h1 br{display:none}.hero-copy{font-size:13px;line-height:1.8}.hero-copy br{display:none}.hero-rule,.hero-desc,.hero-note{display:none}.hero-start{width:100%;margin-top:22px;height:47px}.hero-secondary{justify-content:space-between}.welcome .scene-caption{display:none}.scene-tools{right:20px;top:10px;left:20px;justify-content:flex-end}.tool{height:30px;font-size:10px;padding:0 8px}.tool.compact{width:27px;font-size:18px}.scene-hint{font-size:9px;bottom:11px}.north{right:23px;bottom:20px}.welcome-footer{bottom:18px;left:25px;right:25px;font-size:8px}.welcome-footer span:nth-child(2){display:none}.welcome .hero .edition{font-size:9px}.playing .header{height:65px}.playing main{height:auto;display:flex;flex-direction:column;padding-bottom:110px}.playing #dashboard{position:relative;left:auto;right:auto;top:auto;margin:0 18px;height:82px;flex-shrink:0;gap:0}#dashboard>div{flex:1;padding:0 10px;min-width:0!important}#dashboard>div:first-child{padding-left:0}#dashboard strong{font-size:18px!important;margin-top:7px;white-space:nowrap}#dashboard small{font-size:8px;white-space:nowrap}#dashboard strong span{display:none}#dashboard>div:nth-child(4){border:0}#dashboard .level-stat{display:none}.playing #stage{position:relative;left:auto;top:auto;right:auto;bottom:auto;height:43dvh;min-height:330px;flex-shrink:0}.playing .scene-tools{top:12px;right:16px;left:16px}.playing .scene-caption{display:none}.playing .demand-card{display:none}#management{position:relative;left:auto;top:auto;width:auto;bottom:auto;margin:0 16px;min-height:290px;max-height:470px;overflow:hidden;flex-shrink:0}.tabs{position:sticky;top:0}.tabs button{flex-direction:row;gap:7px;justify-content:center;font-size:11px;padding:11px 5px}.tabs button svg{width:16px}.panel{padding:17px;min-height:230px}.panel-foot{padding:10px 14px}.build-grid{grid-template-columns:repeat(3,1fr)}.build-item{min-height:103px}.summary-grid{grid-template-columns:repeat(4,1fr);gap:6px}.summary-grid>div{padding:9px 5px}.summary-grid small{font-size:8px}.summary-grid b{font-size:14px}.bottom-hud{position:fixed;bottom:0;left:0;right:0;padding:13px 17px calc(13px + env(safe-area-inset-bottom));height:auto;min-height:77px;background:#11262ef2;backdrop-filter:blur(10px);gap:10px;z-index:8;box-shadow:0 -5px 25px #0002}.store-status{min-width:85px}.store-status small{display:none}.store-status b{font-size:11px}.bottom-hud .primary{min-width:110px;padding:0 11px;font-size:11px;height:39px;gap:8px}.time-controls{padding:3px;gap:0}.time-controls button{width:24px;font-size:10px}.time-controls #pauseBtn{font-size:13px}.selection-card{left:17px;bottom:32px;min-width:220px;max-width:85vw;padding:13px}.stock-row{margin-bottom:9px}dialog{padding:27px 22px}.modal-title{font-size:23px}.choices{gap:8px}.choice{padding:13px}.choice b{font-size:13px}.choice small{font-size:9px}.report-hero{gap:12px}.report-hero b{font-size:23px}.receipt{padding:13px}.receipt-row{font-size:11px}#toast{bottom:92px;width:max-content;max-width:88vw;font-size:11px;padding:10px 14px}.config-line{gap:9px}.tool-divider{margin:0 2px}.scene-hint span:last-child{max-width:170px;overflow:hidden;text-overflow:ellipsis}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.welcome .game-only{display:none!important}

@media(max-width:760px){.playing #dashboard{order:-1}}

/* Daylight edition: original start screen, illustrated crew and real equipment art. */
.welcome{overflow:auto;background:#152d30}.welcome main{height:auto;min-height:calc(100dvh - 92px)}.welcome #stage{display:none}.welcome .hero{position:relative;left:auto;top:auto;transform:none;pointer-events:auto;width:min(760px,calc(100vw - 40px));margin:22px auto 30px;padding:0}.original-menu{background:#f3e8cf;border:1px solid #c5ad7b;border-radius:13px;overflow:hidden;box-shadow:0 20px 80px #04191966}.original-titlebar{height:37px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:#385e4f;color:#fcf3d7;font-size:12px;letter-spacing:.08em}.original-titlebar small{color:#bed3b5;font-size:8px}.original-cover{width:100%;display:block;max-height:calc(100dvh - 310px);object-fit:contain;background:#80cddd}.original-controls{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;padding:20px 18px 0}.original-controls .hero-start{margin:0;width:220px;height:45px;background:#3b7859;color:#fff3d8}.original-controls .secondary{border-color:#9ba991;color:#47654a;height:45px;background:#fff9e844}.original-controls .secondary:hover{background:#dfe6cc}.original-description{text-align:center;color:#52654c;line-height:1.9;font-size:11px;letter-spacing:.03em;margin:14px 12px 18px}.original-description span{font-size:10px;color:#8c9175}.welcome .welcome-footer{position:relative;left:auto;right:auto;bottom:auto;margin:0 35px 24px}.welcome .location{color:#bfd0b9}.welcome .header{height:76px}
.equipment-art{display:block;width:100%;height:78px;margin:0 auto 5px;background:radial-gradient(ellipse,#e5e6cb,#c5d6c288);border-radius:6px}.build-item{padding:8px;min-height:130px}.build-item b{font-size:11px;line-height:1.4;margin-top:8px}.build-item small{font-size:10px;margin-top:4px}.build-item.selected .equipment-art{background:#e9ddba}.crew-card{background:#ede8d7;color:#354e46;border-radius:10px;overflow:hidden;margin-bottom:15px;border:1px solid #bcc9b3;box-shadow:0 4px 10px #0417141a}.crew-id{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;background:var(--crew);color:#f3ecd9;font:8px/1.2 monospace;letter-spacing:.06em}.crew-id em{font:9px/1.2 sans-serif;font-style:normal;background:#fff2;padding:3px 6px;border-radius:9px}.crew-profile{display:flex;align-items:center;gap:12px;padding:14px 12px 5px}.crew-profile .portrait{width:69px;height:76px;flex-shrink:0;stroke:none}.crew-profile h3{font-size:17px!important;font-weight:650!important;color:#334d42;margin:0 0 5px!important}.crew-rank{font-size:9px;color:var(--crew);border-bottom:1px solid #a4b3a0;padding-bottom:3px}.crew-profile p{font-size:9px;line-height:1.7;color:#7f8772;margin:7px 0 2px}.crew-profile small{font-size:9px;color:#727e6b}.crew-stats{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#7a8673;margin:12px 13px 7px}.crew-stats b{color:#476052;font-size:11px;font-weight:600;margin-left:4px}.crew-card .bar{margin:0 13px;height:5px;background:#cfd6c1}.crew-role{display:block;font-size:9px;color:#7c8974;margin:12px 13px 14px}.crew-role select{width:100%;display:block;background:#faf5e5;color:#3e5c4c;border:1px solid #c7cfb8;font-size:11px;padding:8px 9px;border-radius:5px;margin-top:6px}
#stage.daylight .scene-caption,#stage.daylight .scene-hint,#stage.daylight .north{color:#526e60}#stage.daylight .eyebrow{color:#668275}#stage.daylight .vignette{background:linear-gradient(0deg,transparent 75%,#d8e6d440)}#stage.daylight .scene-tools .tool{background:#edf0dce0;color:#416b5a;border-color:#99b29b}#stage.daylight .north span{color:#5a7a63}.daycycle{position:absolute;left:26px;bottom:47px;width:185px;background:#122d36b8;border:1px solid #a0b8983b;border-radius:9px;padding:11px 12px 8px;pointer-events:none;backdrop-filter:blur(5px)}.daycycle>div:first-child{display:flex;flex-direction:column;gap:5px;margin-bottom:9px}.daycycle b{font-size:12px;color:#e0e5cd;letter-spacing:.1em}.daycycle span{font-size:8px;color:#9cb4a6}.daycycle-track,.light-gradient{height:5px;border-radius:5px;background:linear-gradient(90deg,#213b59,#66858f 23%,#eac388 28%,#f5e9af 50%,#ddb67f 70%,#c68982 77%,#2b4660 90%);position:relative}.daycycle-track i{position:absolute;top:-3px;transform:translateX(-50%);width:11px;height:11px;border:2px solid #ffefc6;border-radius:50%;background:#fff7cf;box-shadow:0 0 8px #e9d68888}.daycycle-ticks{display:flex;justify-content:space-between;margin-top:6px}.daycycle-ticks span{font:7px monospace;opacity:.75}.daylight .daycycle{background:#eef0dce0;border-color:#a7b9a2}.daylight .daycycle b{color:#486956}.daylight .daycycle span{color:#6a8271}#stage:has(.selection-card:not(.hidden)) .daycycle{visibility:hidden}.light-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.light-label b{font:30px monospace;color:#ecdfad}.light-label span{font-size:11px;color:#8ea997}.light-gradient{height:18px}.light-preview input{width:100%;padding:0;accent-color:#b6d29e;margin:12px 0;background:transparent}.light-ticks{display:flex;justify-content:space-between;font:10px monospace;color:#8caaa0}.light-presets{display:flex;gap:8px;justify-content:space-between;margin-top:22px}.light-presets button{flex:1}.setup-modal{width:910px;background:#f0ebdb;color:#375346;border:1px solid #b6c4a5;padding:27px 30px}.setup-modal .modal-title{color:#2f5341;font-size:25px;letter-spacing:.03em;margin-top:21px}.setup-modal .modal-eyebrow{color:#84977a;font-size:10px;letter-spacing:.1em}.setup-modal .modal-sub{color:#849078;font-size:11px;margin-bottom:20px}.setup-modal .close-modal{color:#70836c}.setup-modal::backdrop{background:#0b2525d6}.setup-modal .primary{background:#427659;color:#fff4d4}.setup-modal .primary:hover{background:#548869}.setup-modal .secondary{color:#667d5e;border-color:#b1bfa1;background:#f7f4e7}.setup-progress{display:flex;align-items:center;gap:18px;border-bottom:1px solid #cbd2ba;padding:16px 0 15px;flex-wrap:wrap}.setup-progress span{display:flex;gap:7px;align-items:center;font-size:10px;color:#99a18b}.setup-progress i{font:9px monospace;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#dce0ce;color:#829779;font-style:normal}.setup-progress .active{color:#427153;font-weight:600}.setup-progress .active i{background:#49775b;color:#fff0ca}.brand-choices{display:grid;grid-template-columns:1fr 1fr;gap:15px}.setup-card{display:block;position:relative;width:100%;background:#f9f6e9;text-align:left;padding:15px;border:1px solid #cad2bd;border-radius:9px;transition:background .15s,box-shadow .15s;color:#45614c}.setup-card:hover{background:#fffaf0;border-color:#87a282}.setup-card.selected{border-color:#59865c;box-shadow:0 0 0 2px #59865c;background:#e5edda}.setup-card .choice-check{display:none;position:absolute;top:9px;right:9px;width:16px;height:16px;border-radius:50%;background:#538064;color:#fff6dc;text-align:center;font-size:10px;line-height:16px}.setup-card.selected .choice-check{display:block}.setup-card h3{font-size:13px;margin:12px 0 6px;font-weight:600;line-height:1.5}.setup-card p{font-size:10px;line-height:1.8;color:#7a8b70;margin:0}.setup-card em{font-size:9px;font-style:normal;color:#a88146}.brand-sign{background:#fff8e4;border-radius:4px;border-bottom:4px solid var(--brand);box-shadow:0 4px 0 var(--accent);padding:11px 16px 9px;max-width:200px;margin:0 auto 18px;color:var(--brand);position:relative}.brand-sign>b{font-size:25px;font-weight:750;letter-spacing:.12em;display:block;text-align:center}.brand-sign>small{font-size:8px;letter-spacing:.12em;color:var(--brand);display:block;text-align:center;margin-top:3px}.brand-sign>span{position:absolute;left:7px;top:5px;font-size:7px}.setup-selection{margin-top:18px;border-left:3px solid #6a966f;padding:10px 13px;background:#e1e7d3}.setup-selection b{display:block;font-size:13px;margin-bottom:5px}.setup-selection span{font-size:11px;color:#778b6d}.setup-heading{font-size:13px;color:#55744e;margin:23px 0 10px}.setup-heading small{font-size:9px;font-weight:400;margin-left:8px;color:#8a9c7d}.city-choices,.size-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.lot-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.lot-choices .setup-card{padding:13px}.lot-number{font:13px Georgia,serif;color:#9eb18a}.setup-card h3 small{font-size:10px;color:#889b7a;font-weight:400}.city-preview{display:block;width:100%;height:100px;object-fit:cover;border-radius:5px;border:1px solid #acbfa344;background:#e4eadb}.city-scene-name{display:block;font:8px "PingFang TC",sans-serif;letter-spacing:.12em;color:#7f9271;margin-top:7px}.setup-card .city-scene-description{font-size:9px;color:#5d7b60;margin-bottom:7px}.city-choices .setup-card h3{margin-top:5px}.size-plan{display:block;border:2px solid #a5b78e;border-radius:2px;background-color:#edf1db;background-image:linear-gradient(#c5d1ae 1px,transparent 1px),linear-gradient(90deg,#c5d1ae 1px,transparent 1px);background-size:calc(100% / var(--cols)) calc(100% / var(--rows));transform:skewY(-7deg);margin:4px 0 15px;box-shadow:3px 3px 0 #7e9774}.location-hint{margin-top:18px;padding:12px 16px;background:#e3e9d5;border-radius:6px;border-left:3px solid #88a172}.location-hint b{font-size:11px}.location-hint p{font-size:10px;color:#7e906f;line-height:1.8;margin:5px 0 0}.contract-summary{display:flex;gap:20px;justify-content:space-between;margin-top:22px;border-top:1px solid #c4ceb3;padding-top:17px}.contract-summary small{color:#839577;font-size:9px}.contract-summary b{display:block;color:#3f704b;font-size:23px;font-weight:500;line-height:1.6}.setup-footnote{font-size:9px;color:#8a997a;line-height:1.8}.setup-modal .modal-actions{margin-top:16px}.setup-modal .modal-actions button{height:42px}.setup-modal .modal-actions .secondary{font-size:11px}
@media(max-width:760px){.welcome .hero{width:calc(100vw - 26px);margin:13px auto 24px}.welcome .header{height:67px}.original-cover{max-height:none}.original-titlebar{font-size:10px;padding:0 12px}.original-titlebar small{font-size:6px}.original-controls{gap:8px;padding:14px 12px 0}.original-controls .hero-start{width:100%;justify-content:center}.original-controls .secondary{flex:1;font-size:11px;height:38px}.original-description{font-size:9px}.original-description span{font-size:9px}.welcome .welcome-footer{margin:0 15px 18px;font-size:7px}.equipment-art{height:70px}.crew-profile .portrait{width:80px;height:88px}.crew-profile{gap:18px;padding-top:16px}.crew-profile h3{font-size:19px!important}.crew-profile p{font-size:10px}.crew-card{max-width:430px;margin-left:auto;margin-right:auto}.crew-stats{font-size:10px}.crew-role{font-size:10px}.crew-id{font-size:9px}.daycycle{left:16px;bottom:39px;width:140px;padding:8px 10px}.daycycle b{font-size:10px}.daycycle span{font-size:7px}.daycycle>div:first-child{margin-bottom:8px;gap:4px}.daycycle-ticks span{font-size:6px}.setup-modal{padding:24px 17px;max-height:92dvh}.setup-progress{gap:9px;padding:13px 0}.setup-progress span{font-size:8px;gap:4px}.setup-progress i{width:20px;height:20px;font-size:8px}.setup-modal .modal-title{font-size:21px}.setup-modal .modal-sub{font-size:10px}.brand-choices{gap:10px}.brand-choices .setup-card{padding:12px 10px}.brand-sign{padding:13px 4px 8px;margin-bottom:15px}.brand-sign>b{font-size:21px;letter-spacing:.03em}.brand-sign>small{font-size:6px}.setup-card h3{font-size:11px}.setup-card p{font-size:9px}.city-choices{gap:7px}.city-choices .setup-card{padding:9px}.city-sketch{padding:0 2px;gap:2px;height:35px}.city-sketch i{width:9px!important}.city-choices .setup-card h3{font-size:10px;white-space:normal}.city-choices .setup-card p{font-size:8px;line-height:1.9}.lot-choices{grid-template-columns:repeat(2,1fr);gap:9px}.size-choices{gap:7px}.size-choices .setup-card{padding:11px 8px}.size-plan{max-width:64px}.size-choices h3 small{display:block;margin-top:3px}.contract-summary{gap:10px}.contract-summary small{font-size:8px}.contract-summary b{font-size:20px}.setup-heading{font-size:12px}.setup-heading small{display:block;margin-left:0;margin-top:4px}.setup-modal .modal-actions{gap:9px}.setup-modal .modal-actions button{font-size:10px;padding:0 12px;gap:6px}.light-presets{gap:5px}.light-presets .secondary{padding:9px 6px}.light-preview+.modal-actions{flex-wrap:wrap}.crew-role select{font-size:12px;min-height:37px}.crew-card .bar{height:5px}}

.setup-card:hover{color:#45614c}.setup-card:focus-visible{outline:3px solid #a8ba88;outline-offset:4px}

.cover-art{position:relative}.cover-heading{position:absolute;left:0;right:0;top:20px;text-align:center;color:#345f50;text-shadow:0 1px 12px #e2ead3}.cover-heading h1{font-size:34px;line-height:1.3;margin:3px 0 2px;letter-spacing:.13em;font-weight:700}.cover-heading small{font-size:7px;letter-spacing:.2em;color:#7c9176}.cover-heading p{margin:0;font-size:10px;letter-spacing:.5em;color:#647e65}.original-cover{background:#dce2c8}
@media(max-width:760px){.cover-heading{top:12px}.cover-heading h1{font-size:24px!important;margin:2px 0!important}.cover-heading small{font-size:5px}.cover-heading p{font-size:7px;letter-spacing:.3em}.original-titlebar small{font-size:6px}}
/* A living miniature, from the title screen to the last customer. */
.welcome.live-cover .hero{width:min(1080px,calc(100vw - 40px))}.live-cover .original-cover{display:none}.welcome.live-cover #stage{display:block;position:relative;inset:auto;width:100%;height:min(62dvh,610px);min-height:390px}.welcome.live-cover .cover-heading{top:23px;pointer-events:none;z-index:2}.welcome .scene-caption,.welcome .daycycle,.welcome .north{display:none}.welcome.live-cover .scene-tools{top:auto;bottom:35px;left:auto;right:18px;max-width:95%}.welcome.live-cover .scene-tools .tool{font-size:10px}.welcome.live-cover .scene-hint{bottom:12px;color:#567361;letter-spacing:.08em}.live-cover .cover-heading h1{font-size:31px}.cover-heading p{letter-spacing:.24em}.welcome .vignette{background:linear-gradient(#dce5ce77,transparent 25%)!important}.tabs button{padding-left:4px;padding-right:4px}.prep-box{background:#b6d29e0b;padding:12px;border:1px solid #a2b59633;border-radius:9px;margin:15px 0}.prep-box>.eyebrow{display:block;margin-bottom:10px}.prep-box .secondary{font-size:10px;justify-content:center;padding-left:8px;padding-right:8px}.text-action{font-size:11px;color:#b6d29e;padding:11px 0}.parking-card{border:1px solid #849f783d;border-radius:9px;padding:12px;margin:12px 0;background:#12332d55}.parking-card div{display:flex;flex-direction:column;gap:7px}.parking-card span{font-size:9px;color:#9cafa0}.parking-card b{font-size:12px;color:#c5d3ad}.parking-card p{font-size:10px;line-height:1.7;color:#92a698;margin:8px 0 0}.parking-card.blocked{border-color:#b4875a88;background:#734b292b}.parking-card.blocked b{color:#e4bc8b}.parking-card button{margin-top:12px;font-size:11px}.layout-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.layout-choices article{background:#213c38;border:1px solid #78957655;border-radius:9px;padding:13px}.layout-choices h3{font-size:14px;margin-top:14px}.layout-choices p{font-size:11px;color:#a6b39b;line-height:1.8;min-height:42px}.layout-map{display:grid;grid-template-columns:repeat(var(--w),1fr);grid-template-rows:repeat(var(--h),1fr);gap:2px;aspect-ratio:1.3;padding:6px;border:2px solid #9bab8d;background:#9fa993;transform:perspective(400px) rotateX(14deg);border-bottom:7px solid #607d66}.layout-map i{border-radius:1px;box-shadow:1px 1px 0 #57705d44}.layout-choices button{font-size:11px;padding:10px 7px}.upgrade-card{padding:16px;border:1px solid #9dad8233;background:#20362f;border-radius:10px;margin:13px 0}.upgrade-number{font:25px Georgia;color:#d5bd86}.upgrade-card h3{font-size:15px;margin:12px 0}.upgrade-card p{font-size:11px;color:#a4b69f;line-height:1.9}.upgrade-card small{display:block;font-size:9px;color:#8ba080;margin:9px 0 13px}.upgrade-card .secondary{font-size:11px}.chat-panel{position:absolute;right:20px;bottom:40px;width:275px;z-index:4;background:#f0ead8f2;border:1px solid #acba9d;border-radius:10px;box-shadow:0 5px 28px #0a282426;color:#355346;backdrop-filter:blur(8px);overflow:hidden}.chat-panel #chatToggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#456d57;color:#f5edda;font-size:12px;letter-spacing:.05em}.chat-panel #chatToggle small{font:9px monospace;background:#d3dec333;padding:3px 6px;border-radius:8px;margin-left:5px}.chat-panel #chatToggle b{font:20px monospace}.chat-panel #chatPeek{display:none;font-size:10px;color:#778672;padding:10px 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-panel.collapsed #chatPeek{display:block}.chat-panel.collapsed #chatMessages{display:none}#chatMessages{max-height:230px;overflow:auto;overscroll-behavior:contain;padding:5px 12px}.chat-message{padding:11px 0;border-bottom:1px solid #cbd3bb}.chat-message div{display:flex;justify-content:space-between;align-items:center;gap:5px}.chat-message b{font-size:10px;font-weight:650}.chat-message time{font-size:8px;color:#839077;font-variant-numeric:tabular-nums}.chat-message p{font-size:11px;line-height:1.7;margin:7px 0 2px;color:#68765c}.chat-message.negative p{color:#a1684c}.chat-message.happy p{color:#5e7c48}.chat-message button{font-size:9px;padding:5px 8px;background:#dae3ca;border-radius:4px;color:#467153;margin-top:6px}.chat-empty{font-size:11px;line-height:1.9;color:#738268;padding:10px}.crew-id{gap:8px}.crew-id em{max-width:170px;text-align:right;line-height:1.5}.scene-tools{flex-wrap:wrap;max-width:calc(100% - 30px)}.playing .scene-caption{max-width:210px}.playing .scene-caption #captionTitle{font-size:12px}.playing .demand-card{max-width:235px;font-size:11px}.playing #stage:has(#floorBtn:not(.hidden)) .scene-tools{gap:5px}.playing #stage:has(#floorBtn:not(.hidden)) .tool{font-size:10px;padding:0 8px}
@media(max-width:1000px){.playing .scene-caption{display:none}.chat-panel{width:235px;right:12px}.playing .demand-card{display:none}.tabs button svg{width:16px}.tabs button{font-size:10px}.tabs{gap:0}}
@media(max-width:760px){.welcome.live-cover .hero{width:calc(100vw - 22px)}.welcome.live-cover #stage{height:49dvh;min-height:360px}.live-cover .cover-heading{top:15px!important}.live-cover .cover-heading h1{font-size:24px!important}.welcome.live-cover .scene-tools{bottom:34px;left:10px;right:10px;justify-content:center;gap:5px}.welcome.live-cover .tool.compact{width:25px}.welcome.live-cover .scene-hint{font-size:8px;bottom:12px}.chat-panel{width:195px;right:10px;bottom:32px}.chat-panel #chatToggle{font-size:10px;padding:8px 10px}.chat-panel #chatToggle b{font-size:16px}.chat-panel #chatPeek{font-size:9px;padding:7px 10px}#chatMessages{max-height:175px;padding:4px 10px}.chat-message p{font-size:10px}.chat-message time{font-size:7px}.chat-panel:not(.collapsed)~.daycycle{visibility:hidden}.daycycle{width:125px;left:10px}.tabs button{font-size:10px;flex-direction:column;gap:4px;padding:10px 3px}.tabs button svg{width:16px;height:16px}.layout-choices{grid-template-columns:1fr;gap:12px}.layout-choices article{display:grid;grid-template-columns:90px 1fr;column-gap:13px}.layout-map{grid-row:1/4}.layout-choices h3{margin:0}.layout-choices p{margin:7px 0;min-height:0;font-size:10px}.layout-choices button{min-height:34px}.playing .scene-tools .tool{font-size:9px!important;min-height:28px}.playing #stage:has(#floorBtn:not(.hidden)) .tool-divider{display:none}}
.playing .chat-panel{display:block}.playing #stage:has(.chat-panel:not(.collapsed)) .daycycle{bottom:43px}
.sound-panel{position:absolute;right:0;top:65px;width:286px;border:1px solid #a8b899;border-radius:12px;padding:21px;background:#eee9d8f7;color:#3e5d4d;box-shadow:0 12px 50px #001b2a40;backdrop-filter:blur(14px);z-index:25}.sound-panel .eyebrow{font-size:8px;letter-spacing:.13em;color:#8a9e7f}.sound-panel h3{font-family:"Songti TC",serif;font-size:24px;letter-spacing:.1em;margin:9px 0 10px;font-weight:600}.sound-panel #soundStatus{font-size:10px;color:#72866b;line-height:1.8;min-height:18px;margin-bottom:22px}.sound-panel #closeSound{position:absolute;right:12px;top:10px;font-size:23px;color:#809177}.sound-panel label{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.03em}.sound-panel output{font:11px monospace;color:#92a17f}.sound-panel input[type=range]{width:100%;height:19px;margin:10px 0 20px;padding:0;accent-color:#648963;background:transparent;cursor:pointer}.sound-panel .audio-note{font-size:10px;line-height:1.8;color:#8a967b;margin:0 0 12px}.sound-panel a{font-size:9px;color:#738767;text-underline-offset:4px}.header:has(.sound-panel:not(.hidden)){z-index:30}.header-actions{gap:9px}.welcome.live-cover .cover-heading{text-shadow:0 2px 14px #e6ecda,0 0 30px #e6ecda}.welcome .vignette{background:linear-gradient(#dce5ce44,transparent 21%)!important}@media(max-width:760px){.sound-panel{position:fixed;top:62px;right:12px;width:min(286px,calc(100vw - 24px));padding:20px}.header-actions{gap:3px}.header .icon-btn{width:27px}.sound-panel input[type=range]{height:25px}}

.period-demand{border-top:1px solid #71857b55;margin-top:13px;padding-top:12px;display:grid;gap:5px}.period-demand>span{font-size:9px;letter-spacing:.08em;color:#91aaa0}.period-demand b{font-size:12px;font-weight:600;color:#d8dec5}.period-demand p{font-size:10px;margin:0!important}.period-demand em{font-size:10px;font-style:normal;color:#c7d6af}

/* v5.1: a visible master level and a stable drag handle. */
.header .sound-trigger{width:auto;min-width:75px;padding:0 10px;gap:7px;display:flex;border:1px solid #8da89640;border-radius:18px}.sound-trigger span{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.sound-trigger.is-muted{color:#9aa79a}.sound-trigger.is-muted svg{opacity:.55}.sound-panel{max-height:calc(100dvh - 85px);overflow:auto}.master-volume{padding:15px 13px 13px;margin:0 -4px 22px;background:#dce3ce;border:1px solid #adbda066;border-radius:9px}.master-volume label{font-weight:650}.master-volume output{font-size:16px;color:#456c50}.master-volume input[type=range]{margin-bottom:1px}.volume-scale{display:flex;justify-content:space-between;gap:5px;font-size:9px;color:#7b8a6c}.sound-actions{display:flex;gap:8px;margin-top:15px}.sound-actions button{flex:1;border-radius:5px;min-height:31px;background:#eef0e0;color:#426447;font-size:11px}.sound-actions #testSound{background:#557b59;color:#fff4df}.sound-actions button:hover{filter:brightness(1.08)}
.chat-header{display:flex;align-items:center;gap:2px;background:#456d57;color:#f5edda;padding:0 7px}.chat-header #chatDragHandle{display:flex;align-items:center;gap:7px;flex:1;min-width:0;padding:12px 4px;font-size:12px;letter-spacing:.02em;text-align:left;color:inherit;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.chat-grip{font-size:21px;opacity:.5;line-height:1}.chat-header small{font:9px monospace;background:#d3dec333;color:#d7e4ce;padding:3px 6px;border-radius:8px;margin-left:4px}.chat-panel .chat-header #chatToggle,.chat-panel .chat-header #chatReset{width:27px;height:30px;flex-shrink:0;padding:0;display:grid;place-items:center;font-size:18px;background:transparent;color:inherit;border-radius:4px}.chat-panel .chat-header #chatToggle:hover,.chat-panel .chat-header #chatReset:hover{background:#eff5d820}.chat-panel .chat-header #chatReset{font-size:17px;opacity:.7}.chat-panel.dragging{box-shadow:0 14px 45px #061b3950;user-select:none;z-index:32}.chat-panel.dragging #chatDragHandle{cursor:grabbing}.chat-header button:active{transform:none}#chatMessages{max-height:min(230px,calc(100dvh - 95px))}
@media(max-width:760px){.header .sound-trigger{min-width:65px;padding:0 7px;gap:5px}.sound-trigger span{font-size:10px}.sound-trigger svg{width:17px}.chat-header{padding:0 5px}.chat-header #chatDragHandle{font-size:10px;gap:4px;padding:8px 1px}.chat-grip{font-size:18px}.chat-header small{font-size:8px;margin-left:1px;padding:2px 4px}.chat-panel .chat-header #chatToggle,.chat-panel .chat-header #chatReset{width:21px;height:26px;font-size:17px}.sound-panel{max-height:calc(100dvh - 77px)}#chatMessages{max-height:min(175px,calc(100dvh - 90px))}}

.volume-scale{display:block;position:relative;height:13px}.volume-scale span:nth-child(2){position:absolute;left:66.666%;transform:translateX(-50%);white-space:nowrap}.volume-scale span:last-child{position:absolute;right:0}.chat-panel.floating{z-index:15}.chat-panel.floating.dragging{z-index:32}

/* The newspaper stays in its scene corner and can become a single compact tab. */
.playing .demand-card{display:flex;top:57px;right:20px;width:235px;max-width:calc(100% - 40px);max-height:calc(100% - 106px);pointer-events:auto;padding:12px 14px;z-index:3;overflow:hidden}
#demandToggle{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:25px;width:100%;padding:0;color:#d5dfc5;flex-shrink:0;background:transparent;text-align:left}
#demandToggle .eyebrow{color:#a0b7ad;font-size:10px}
#demandToggleIcon{font:20px monospace;color:#e1e7cf}
#demandToggle:hover .eyebrow{color:#edf0da}
#demandContent{min-height:0;overflow:auto;overscroll-behavior:contain}
#demandContent[hidden]{display:none}
.playing .demand-card.collapsed{width:155px;padding:7px 12px}
@media(max-width:760px){.playing .demand-card{top:78px;right:14px;width:220px;max-height:calc(100% - 123px)}.playing .demand-card.collapsed{width:143px;padding:5px 10px}#demandToggle{min-height:28px}}

.cover-naming{display:grid;grid-template-columns:auto minmax(120px,230px) auto;align-items:center;gap:7px 14px;padding:15px 22px 0;max-width:710px;margin:auto;color:#506c50}
.cover-naming label{font-size:12px}.cover-naming>div{display:flex;align-items:center;gap:7px;font-size:12px}.cover-naming input,.setup-naming input,.rename-form input{min-width:0;width:100%;border:1px solid #a5b698;border-radius:6px;background:#fff9e9;color:#3b604c;padding:9px 10px;font-size:14px}
.cover-naming small{grid-column:2;font-size:9px;color:#8a987a}.cover-naming output{grid-column:3;grid-row:1/3;font-size:14px;font-weight:650;max-width:220px;overflow-wrap:anywhere}
.setup-naming{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;background:#e1e7d3;padding:15px;margin-top:18px;border-radius:6px;align-items:center}.setup-naming label{font-size:12px;grid-column:1/-1}.setup-naming small{font-size:9px;margin-left:8px;color:#7a8f70}.setup-naming output{font-size:17px;font-weight:600;overflow-wrap:anywhere}.rename-form{display:grid;gap:15px}.rename-form output{overflow-wrap:anywhere;font-size:20px;color:#b6d29e}.rename-form input{font-size:18px}
.panel-head h2{overflow-wrap:anywhere}.cover-naming+ .original-controls{padding-top:12px}
@media(min-width:761px){.welcome.live-cover #stage{height:min(53dvh,540px);min-height:300px}}
@media(max-width:760px){.cover-naming{grid-template-columns:1fr auto;gap:7px 10px;padding:14px 15px 0}.cover-naming label{grid-column:1/-1}.cover-naming>div{grid-column:1/-1}.cover-naming small{grid-column:1;grid-row:3}.cover-naming output{grid-column:2;grid-row:3;font-size:11px;max-width:145px}.setup-naming{grid-template-columns:1fr}.setup-naming label,.setup-naming output{grid-column:1}.setup-naming small{display:block;margin:6px 0 0}}

.playing .demand-card:not(.collapsed){z-index:6}

.cover-naming>div>span{flex-shrink:0;white-space:nowrap}

.music-library{border-top:1px solid #b4c1a377;padding-top:12px;margin-bottom:20px}.music-library h4{margin:0 0 10px;font-size:12px;color:#5e7858}#musicChoices{display:grid;gap:7px}#musicChoices button{position:relative;text-align:left;border:1px solid #b5c1a5;border-radius:7px;padding:9px 32px 9px 11px;color:#536e54;background:#f5f1e3}#musicChoices button span{display:block;font-size:12px;font-weight:600}#musicChoices button small{display:block;font-size:9px;margin-top:4px;color:#839274}#musicChoices button b{position:absolute;right:13px;top:15px;opacity:.3}#musicChoices button.selected{border-color:#648563;background:#dce6ce}#musicChoices button.selected b{opacity:1;color:#4b7856}.cover-music{display:block;margin:12px auto 0;padding:6px 15px;border:1px solid #a9b89888;border-radius:18px;background:#e1e8d1;color:#56724f;font-size:11px}.cover-music:hover{background:#d3dfbf;color:#355e45}
