@import url('/games/audience.css');
:root{color-scheme:dark;--night:#091519;--panel:#14272b;--ink:#e6ecdf;--muted:#9daea6;--mint:#afccaf;--gold:#efc581;--line:#b5cdba24;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;background:var(--night);color:var(--ink)}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:1px solid var(--line);background:#213638;border-radius:10px;padding:13px 17px;transition:background .15s,transform .15s}button:hover{background:#2d4747}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button:disabled{opacity:.46;cursor:default;transform:none}a{color:inherit;text-decoration:none}[hidden]{display:none!important}kbd{font:10px system-ui;border:1px solid currentColor;opacity:.55;padding:2px 5px;border-radius:4px;white-space:nowrap}.game-shell{max-width:1600px;margin:0 auto;padding:0 30px}.topbar{height:87px;display:flex;align-items:center;gap:18px}.back{display:grid;place-items:center;border:1px solid var(--line);width:40px;height:40px;border-radius:50%;font-size:22px;color:var(--mint)}.brand{flex:1}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.6px;color:var(--mint)}h1{font-size:23px;font-weight:600;letter-spacing:2px;margin:4px 0 0}h1 span{font-weight:400;font-size:11px;letter-spacing:.8px;margin-left:18px;color:var(--muted)}.wallet{display:flex;align-items:center;gap:11px;padding:0 20px;border-right:1px solid var(--line)}.wallet span{font-size:11px;color:var(--muted)}.wallet strong{font-size:22px;font-weight:500;font-variant-numeric:tabular-nums}.wallet i{font-style:normal;color:var(--gold)}.quiet{background:transparent;font-size:12px;border:none}.quiet kbd{margin-left:10px}
.play-area{height:calc(100dvh - 251px);min-height:380px;max-height:830px;position:relative;overflow:hidden;border-radius:20px;border:1px solid #79988935;background:#071014;isolation:isolate}canvas{display:block;width:100%;height:100%;outline:none;touch-action:none}.scene-heading{position:absolute;left:31px;top:27px;pointer-events:none;text-shadow:0 2px 14px #000}.scene-heading h2{font-size:24px;letter-spacing:2px;font-weight:500;margin:9px 0}.scene-heading p{font-size:12px;color:#c1cbbb;margin:0;max-width:500px;line-height:1.8}.location-tag{position:absolute;right:27px;top:28px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:30px;padding:8px 12px;background:#07101480;font-size:11px;letter-spacing:1px}.live-dot{width:5px;height:5px;border-radius:50%;background:#aed0a9;box-shadow:0 0 12px #d0e2a0}.journey{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:31%;min-width:240px;display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:10px;color:#b2bdaa;text-shadow:0 1px 3px #000}.journey span:last-child{text-align:right;grid-column:2;grid-row:1}.journey-track{grid-column:1/3;position:relative;height:3px;background:#a8b8a42a;border-radius:4px}.journey-track i{display:block;width:0;height:3px;background:var(--gold);box-shadow:0 0 8px #efc58170}.journey-track b{position:absolute;top:-2px;width:6px;height:6px;background:#60776e;border-radius:50%;left:25%}.journey-track b:nth-of-type(2){left:50%}.journey-track b:nth-of-type(3){left:75%}.cockpit-hotspots{position:absolute;inset:auto 0 78px;display:flex;justify-content:space-between;padding:0 37px;pointer-events:none}.hotspot{pointer-events:auto;display:grid;grid-template-columns:33px 1fr;gap:4px 10px;text-align:left;background:#182a24c7;border:1px solid #baae7980;backdrop-filter:blur(8px);border-radius:12px;padding:12px 16px;box-shadow:0 5px 30px #0003}.hotspot>span{font-size:29px;grid-row:1/3;color:var(--gold)}.hotspot strong{font-weight:500;font-size:12px;letter-spacing:1px}.hotspot small{font-size:10px;color:#c6c5a9}.hotspot kbd{margin-left:6px}.hotspot.portal{border-color:#b5a1d27a;background:#292a3ac7}.portal>span{color:#c5b0df}.notice{position:absolute;left:50%;top:31%;transform:translate(-50%,-7px);opacity:0;pointer-events:none;max-width:80%;padding:12px 22px;border-radius:30px;background:#101f24ee;border:1px solid #cbb68050;box-shadow:0 8px 30px #0006;font-size:13px;text-align:center;transition:opacity .2s,transform .2s;z-index:3}.notice.show{opacity:1;transform:translate(-50%,0)}.notice[data-type=damage]{border-color:#d89771;color:#ffccb6}.fork-panel{position:absolute;top:35%;left:50%;transform:translateX(-50%);background:#112328f0;backdrop-filter:blur(16px);padding:23px;border:1px solid #cbb68070;border-radius:17px;width:min(550px,92%);box-shadow:0 20px 90px #000a;text-align:center;z-index:2}.fork-panel h3{font-size:21px;font-weight:500;margin:10px 0 20px}.fork-panel>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fork-panel button{font-size:14px;color:var(--gold);line-height:1.8}.fork-panel small{display:block;font-size:11px;color:var(--muted)}
.dashboard{display:flex;align-items:center;gap:25px;min-height:118px;padding:20px 4px;border-bottom:1px solid var(--line)}.gauges{flex:1;min-width:205px}.gauge{max-width:330px}.gauge>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:12px}.gauge strong{font-weight:500;font-size:12px;font-variant-numeric:tabular-nums}.meter{height:5px;margin-top:9px;background:#8ba29329;border-radius:5px;overflow:hidden}.meter i{height:100%;width:100%;display:block;background:var(--mint);border-radius:5px;transition:width .15s}.gauge small{display:block;font-size:10px;color:var(--muted);margin-top:8px}.supplies{display:flex;gap:19px;color:var(--muted);font-size:11px;margin-top:10px}.supplies b{color:var(--gold);font-weight:500;margin-left:4px}.supplies span:last-child{font-size:10px}.actions{display:flex;gap:9px}.actions button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;min-width:122px;height:70px;font-size:12px;letter-spacing:.7px}.actions button.primary{background:var(--mint);color:#16362c;border-color:var(--mint)}.actions button.primary:hover{background:#c4dfc4}.actions kbd{font-size:9px}.game-footer{display:flex;justify-content:space-between;gap:15px;padding:14px 0 18px;font-size:10px;color:#899c94}.game-footer span:last-child{white-space:nowrap}.touch-move{display:none;position:fixed;bottom:134px;left:35px;grid-template-columns:repeat(3,42px);gap:4px;z-index:2}.touch-move button{padding:10px;touch-action:none;background:#173430cc}.touch-move button:first-child{grid-column:2}.touch-move button:nth-child(2){grid-column:1;grid-row:2}.touch-move button:nth-child(3){grid-column:2;grid-row:2}.touch-move button:nth-child(4){grid-column:3;grid-row:2}
dialog{padding:0;border:1px solid #879b7d4d;border-radius:21px;background:#13262b;color:var(--ink);width:min(710px,94vw);max-height:90dvh;box-shadow:0 35px 120px #000b}dialog::backdrop{background:#020a10b9;backdrop-filter:blur(6px)}#dialog-art:empty{display:none}#dialog-art{height:250px;background:url('cover.png') center 52%/cover;position:relative}#dialog-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 60%,#13262b)}.dialog-content{padding:28px 32px 31px}.dialog-content h2{font-size:28px;font-weight:500;letter-spacing:2px;margin:8px 0 15px}.dialog-content>p{font-size:13px;line-height:1.9;color:#bbc8b9;white-space:pre-line}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.dialog-actions button{font-size:13px}.dialog-actions .primary{background:var(--mint);color:#19372c;border-color:transparent}.shop-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.shop-item{display:grid;grid-template-columns:35px 1fr;gap:9px;text-align:left;padding:15px;background:#1b3135}.shop-item .item-icon{font-size:24px;grid-row:1/4;color:var(--gold)}.shop-item strong{font-size:13px;font-weight:500}.shop-item small{font-size:11px;line-height:1.7;color:var(--muted)}.shop-item em{font-size:11px;font-style:normal;color:var(--gold)}.workshop-summary{padding:12px 15px;background:#0d1f24;border-radius:10px;color:#b9c6b7;font-size:12px;line-height:1.9}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:12px;margin:15px 0;color:var(--muted)}.guide-grid kbd{margin-right:8px}.route-log{font-size:12px;line-height:2;color:var(--muted)}
@media(min-width:1500px){.game-shell{padding:0 45px}.topbar{height:95px}.play-area{height:calc(100dvh - 266px)}}
@media(max-width:1050px){.game-shell{padding:0 18px}.actions button{min-width:98px;padding:12px}.dashboard{gap:18px}.scene-heading h2{font-size:21px}.location-tag{top:auto;bottom:20px;right:20px}.cockpit-hotspots{padding:0 24px}.scene-heading{left:24px}.journey{width:36%;left:38%}}
@media(max-width:760px){.game-shell{padding:0 10px}.topbar{height:70px;gap:10px}h1{font-size:18px}h1 span{display:none}.eyebrow{font-size:8px}.back{width:33px;height:33px}.wallet{padding:0 10px;gap:7px}.wallet strong{font-size:17px}.quiet{padding:9px;font-size:11px}.quiet kbd{display:none}.play-area{height:calc(100dvh - 290px);min-height:310px;border-radius:13px}.scene-heading{top:20px;left:20px;right:20px}.scene-heading h2{font-size:18px;margin:7px 0}.scene-heading p{font-size:11px}.cockpit-hotspots{padding:0 14px;bottom:54px}.hotspot{padding:9px 10px;gap:3px 5px;grid-template-columns:25px 1fr}.hotspot>span{font-size:24px}.hotspot strong{font-size:10px;letter-spacing:0}.hotspot small{font-size:9px}.journey{bottom:20px;left:50%;width:60%;min-width:195px}.location-tag{display:none}.dashboard{flex-direction:column;gap:13px;padding:15px 2px 10px;align-items:stretch}.gauges{display:flex;gap:20px;align-items:center}.gauge{width:54%;flex:1}.gauge small{display:none}.supplies{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px;margin-top:0;font-size:10px}.supplies span:last-child{grid-column:1/3}.actions{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.actions button{min-width:0;height:55px;padding:9px;font-size:10px;gap:5px}.game-footer{font-size:9px;padding:10px 0}.game-footer span:last-child{display:none}.dialog-content{padding:22px}.dialog-content h2{font-size:24px}#dialog-art{height:190px}.shop-grid{gap:7px}.shop-item{padding:10px;grid-template-columns:23px 1fr}.shop-item .item-icon{font-size:20px}.shop-item strong{font-size:12px}.touch-move{left:20px;bottom:211px}.fork-panel{padding:17px}.fork-panel h3{font-size:18px}.fork-panel button{font-size:12px}}
@media(max-height:580px) and (min-width:761px){.topbar{height:62px}.play-area{min-height:230px;height:calc(100dvh - 190px)}.dashboard{min-height:90px;padding:10px 0}.actions button{height:58px}.game-footer{padding:8px 0}.scene-heading{top:18px}.scene-heading h2{font-size:18px}.cockpit-hotspots{bottom:53px}.hotspot{padding:9px 12px}.journey{bottom:15px}.scene-heading p{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

@media(pointer:coarse){.touch-move{display:grid}}
