*,*:before,*:after{box-sizing:border-box}:root{color-scheme:light;--ink: #2a1c12;--muted: #6f4d32;--panel: rgba(255, 239, 196, .88);--panel-strong: rgba(255, 247, 219, .94);--stroke: rgba(74, 48, 26, .22);--stroke-strong: rgba(74, 48, 26, .35);--shadow: 0 18px 42px rgba(71, 37, 14, .22);--accent: #4c8b73;--accent-strong: #2d6b58;--warning: #d78b35;--danger: #b64d35}html[data-day-phase=night]{color-scheme:dark;--ink: #f7ead1;--muted: #d8b893;--panel: rgba(20, 24, 41, .84);--panel-strong: rgba(28, 32, 53, .94);--stroke: rgba(216, 179, 127, .16);--stroke-strong: rgba(244, 214, 161, .3);--shadow: 0 18px 42px rgba(9, 12, 23, .5);--accent: #77d1bd;--accent-strong: #4aa892;--warning: #f0be5a;--danger: #ee7d58}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;font-family:Trebuchet MS,Gill Sans,Avenir Next,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at 20% 20%,rgba(255,241,198,.42),transparent 34%),radial-gradient(circle at 82% 8%,rgba(255,210,128,.28),transparent 24%),linear-gradient(180deg,#e3a84f,#d58f39 60%,#b87322)}html[data-day-phase=night],html[data-day-phase=night] body,html[data-day-phase=night] #app{background:radial-gradient(circle at 20% 18%,rgba(93,124,255,.16),transparent 30%),radial-gradient(circle at 80% 14%,rgba(98,196,255,.08),transparent 22%),linear-gradient(180deg,#0b1220,#11192d 58%,#1a2437)}#app{position:relative;isolation:isolate}.shell{position:relative;width:100%;height:100%}#scene{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100vw;height:100vh;touch-action:none}.ui-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.hud,.guide-panel,.toast-stack,.joystick{pointer-events:auto}.hud{position:fixed;top:14px;left:14px;width:min(420px,calc(100vw - 28px));padding:14px;border:1px solid var(--stroke);border-radius:18px;background:linear-gradient(180deg,#fff8e4eb,#fce5a7e0),var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:opacity .18s ease,transform .18s ease}html[data-day-phase=night] .hud{background:linear-gradient(180deg,#191d30f0,#121526e6),var(--panel)}.hud-hidden{opacity:.18;transform:translateY(-8px) scale(.98)}.hud-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.brand-block{display:flex;flex-direction:column;gap:3px}.brand-block strong{font-size:1.15rem;letter-spacing:.08em;text-transform:uppercase}.eyebrow,.card-label{font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.hud-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.hud button,.guide-panel button,.field-grid button,.action-card-actions button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(66,41,19,.18);border-radius:999px;padding:.68rem .9rem;font:inherit;color:inherit;background:linear-gradient(180deg,#fffceff5,#f0dcadeb);box-shadow:0 8px 20px #502c121a;cursor:pointer}html[data-day-phase=night] .hud button,html[data-day-phase=night] .guide-panel button,html[data-day-phase=night] .field-grid button,html[data-day-phase=night] .action-card-actions button{background:linear-gradient(180deg,#303654f5,#1d2134f5);box-shadow:0 8px 20px #04070e47}.hud button:hover,.guide-panel button:hover,.field-grid button:hover,.action-card-actions button:hover{border-color:var(--stroke-strong)}.action-card{padding:13px 14px;border:1px solid var(--stroke);border-radius:16px;background:linear-gradient(145deg,#fffff5e6,#ffe6b0db),var(--panel-strong)}html[data-day-phase=night] .action-card{background:linear-gradient(145deg,#252a42f5,#181c2ce6),var(--panel-strong)}.action-card strong{display:block;margin-top:3px;font-size:1.08rem}.action-mode{display:inline-flex;align-items:center;margin-top:6px;padding:.26rem .62rem;border-radius:999px;border:1px solid rgba(74,48,26,.16);background:#ffffff7a;font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}html[data-day-phase=night] .action-mode{border-color:#d8b37f24;background:#2f354cb3;color:#e8d3af}.action-card p{margin:7px 0 0;font-size:.88rem;line-height:1.45;color:#624129}.action-card-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-top:10px;min-height:2.2rem}.action-card-actions button{min-height:2.2rem;padding-inline:.95rem}html[data-day-phase=night] .action-card p{color:#dfc6a2}.chat-card{margin-top:10px;padding:13px 14px;border:1px solid var(--stroke);border-radius:16px;background:linear-gradient(145deg,#fffbefeb,#f6e2b6e0),var(--panel-strong)}html[data-day-phase=night] .chat-card{background:linear-gradient(145deg,#242a3ff5,#161b2beb),var(--panel-strong)}.chat-card strong{display:block;margin-top:3px;font-size:1.05rem}.chat-card p{margin:7px 0 0;font-size:.88rem;line-height:1.45;color:#624129}html[data-day-phase=night] .chat-card p{color:#dfc6a2}.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}.chat-composer input{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(74,48,26,.22);border-radius:14px;padding:.8rem .9rem;font:inherit;color:inherit;background:#fffaebd1;box-shadow:inset 0 1px #ffffff8f}html[data-day-phase=night] .chat-composer input{border-color:#d8b37f29;background:#1c2132e6;box-shadow:inset 0 1px #ffffff0d}.chat-composer input::placeholder{color:#6f4d32ad}html[data-day-phase=night] .chat-composer input::placeholder{color:#d7c4a39e}.chat-status{margin-top:8px;min-height:1.2em;font-size:.78rem;line-height:1.4;color:var(--muted)}.status-grid,.field-grid{display:grid;gap:8px;margin-top:10px}.status-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.field-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.status-grid div,.field-grid div{min-width:0;padding:8px 9px;border:1px solid rgba(74,48,26,.14);border-radius:14px;background:#fffaebb8}html[data-day-phase=night] .status-grid div,html[data-day-phase=night] .field-grid div{background:#1c2132db}.status-grid span,.field-grid span{display:block;margin-bottom:4px;font-size:.65rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.status-grid strong,.field-grid strong{font-size:1.04rem;line-height:1.08}.field-grid button{width:100%;padding:0;border:0;background:transparent;box-shadow:none;text-align:left}.meter{height:10px;overflow:hidden;margin-bottom:6px;border-radius:999px;background:#5e442924}.meter-fill{width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e3d2a7,#ca9a58 58%,#8d5630);transform-origin:left center;box-shadow:inset 0 1px #fff6;transition:width .18s ease}.hud-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.hud-footer span{min-width:0;font-size:.8rem;line-height:1.35;color:var(--muted)}.guide-panel{position:fixed;top:14px;right:14px;width:min(360px,calc(100vw - 28px));padding:14px;border:1px solid var(--stroke);border-radius:18px;background:linear-gradient(180deg,#fffaecf5,#f9e2afe6),var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.rider-panel{position:fixed;top:14px;left:50%;width:min(360px,calc(100vw - 28px));padding:14px;border:1px solid var(--stroke);border-radius:18px;background:linear-gradient(180deg,#fff9e7f5,#f7e2b1e6),var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transform:translate(-50%)}html[data-day-phase=night] .guide-panel,html[data-day-phase=night] .rider-panel{background:linear-gradient(180deg,#171b2af5,#111522eb),var(--panel)}.guide-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.guide-header h2{margin:4px 0 0;font-size:1.2rem;letter-spacing:.03em}.rider-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.rider-header h2{margin:4px 0 0;font-size:1.2rem;letter-spacing:.03em}.guide-copy p{margin:0 0 10px;font-size:.9rem;line-height:1.5;color:#5f4128}html[data-day-phase=night] .guide-copy p{color:#d5bf99}.rider-copy{display:grid;gap:10px}.rider-copy p{margin:0;font-size:.9rem;line-height:1.5;color:#5f4128}html[data-day-phase=night] .rider-copy p{color:#d5bf99}.account-card{display:grid;gap:10px;padding:12px;border:1px solid rgba(74,48,26,.16);border-radius:16px;background:#fffaecb3}html[data-day-phase=night] .account-card{background:#1f2435d1;border-color:#d8b37f24}.account-card strong{font-size:1rem}.account-card p{margin:0;font-size:.82rem;line-height:1.45;color:#624129}html[data-day-phase=night] .account-card p{color:#dfc6a2}.account-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.account-fields input{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(74,48,26,.22);border-radius:14px;padding:.78rem .85rem;font:inherit;color:inherit;background:#fffaebd1;box-shadow:inset 0 1px #ffffff8f}html[data-day-phase=night] .account-fields input{border-color:#d8b37f29;background:#1c2132e6;box-shadow:inset 0 1px #ffffff0d}.account-fields input::placeholder{color:#6f4d32ad}html[data-day-phase=night] .account-fields input::placeholder{color:#d7c4a39e}.account-actions{display:flex;flex-wrap:wrap;gap:8px}.account-status{min-height:1.2em;font-size:.78rem;line-height:1.4;color:var(--muted)}.rider-label{display:grid;gap:6px}.rider-label span{font-size:.65rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.rider-label input{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(74,48,26,.22);border-radius:14px;padding:.8rem .9rem;font:inherit;color:inherit;background:#fffaebd1;box-shadow:inset 0 1px #ffffff8f}html[data-day-phase=night] .rider-label input{border-color:#d8b37f29;background:#1c2132e6;box-shadow:inset 0 1px #ffffff0d}.rider-actions{display:flex;flex-wrap:wrap;gap:8px}.rider-status{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.78rem;color:var(--muted)}.rider-history{display:flex;flex-wrap:wrap;gap:8px}.rider-chip,.rider-empty{display:inline-flex;align-items:center;min-height:34px;padding:.52rem .78rem;border:1px solid rgba(74,48,26,.18);border-radius:999px;background:#fff8e6eb;color:inherit;font:inherit}.rider-chip{cursor:pointer}html[data-day-phase=night] .rider-chip,html[data-day-phase=night] .rider-empty{background:#1f2435eb;border-color:#d8b37f29;color:#f5e8c9}.toast-stack{position:fixed;left:50%;bottom:18px;display:grid;gap:8px;width:min(380px,calc(100vw - 28px));transform:translate(-50%)}.player-label-layer,.chat-bubble-layer{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.player-label{position:absolute;min-width:6.5rem;padding:.42rem .72rem;border:1px solid rgba(74,48,26,.22);border-radius:999px;background:linear-gradient(180deg,#fff9e7f2,#f6e1b3e0),var(--panel-strong);box-shadow:0 10px 24px #45210a2e;color:var(--ink);font-size:.76rem;font-weight:800;letter-spacing:.08em;line-height:1;text-align:center;text-transform:uppercase;transform-origin:center bottom;transition:opacity .12s linear;will-change:transform,opacity,left,top}.chat-bubble{position:absolute;max-width:min(18rem,calc(100vw - 32px));padding:.55rem .82rem;border:1px solid rgba(74,48,26,.2);border-radius:999px;background:linear-gradient(180deg,#fffbf2fa,#f5e0b4f0),var(--panel-strong);box-shadow:0 12px 28px #45210a33;color:var(--ink);font-size:.82rem;font-weight:700;line-height:1.35;text-align:center;white-space:normal;transform-origin:center bottom;transition:opacity .12s linear;will-change:transform,opacity,left,top}html[data-day-phase=night] .chat-bubble{background:linear-gradient(180deg,#23293dfa,#161b2bf5),var(--panel-strong);border-color:#d8b37f33;box-shadow:0 12px 28px #04070e47;color:#f5e8c9}html[data-day-phase=night] .player-label{background:linear-gradient(180deg,#21273df5,#15192aeb),var(--panel-strong);border-color:#d8b37f33;box-shadow:0 10px 24px #04070e4d;color:#f5e8c9}.player-label.is-local{border-color:#4c8b736b;box-shadow:0 10px 24px #4c8b7333}html[data-day-phase=night] .player-label.is-local{border-color:#77d1bd66;box-shadow:0 10px 24px #102b2757}.toast{padding:12px 14px;border:1px solid rgba(66,41,19,.18);border-radius:14px;background:#251b14db;color:#fff7e2;box-shadow:0 10px 26px #1d10083d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:toast-in .22s ease}html[data-day-phase=night] .toast{background:#0e121ceb;color:#f5e8c9;box-shadow:0 10px 26px #04060c57}.toast.fade-out{opacity:0;transform:translateY(10px);transition:opacity .28s ease,transform .28s ease}.joystick{position:fixed;left:16px;bottom:18px;width:180px;height:180px;border-radius:50%;opacity:.96}.joystick-base,.joystick-knob{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%}.joystick-base{border:1px solid rgba(61,39,18,.18);background:radial-gradient(circle at center,#fff8ec99 0,#fff8ec99 22%,#ffe7ab42 22%,#ffe7ab42 48%,#ffe7ab14 48%,#ffe7ab14);box-shadow:0 10px 28px #45210a33}html[data-day-phase=night] .joystick-base{border-color:#dbc1922e;background:radial-gradient(circle at center,#fff7e475 0,#fff7e475 20%,#758cf03d 20%,#758cf03d 48%,#758cf00f 48%,#758cf00f);box-shadow:0 10px 28px #02050c59}.joystick-knob{top:50%;right:50%;bottom:50%;left:50%;width:70px;height:70px;margin-left:-35px;margin-top:-35px;border:1px solid rgba(57,37,17,.26);background:radial-gradient(circle at 35% 30%,#ffffffe6,#c68d47e6),linear-gradient(180deg,#ffe7b3f5,#c88e40eb);box-shadow:0 10px 24px #5c321242;transform:translate(-50%,-50%)}html[data-day-phase=night] .joystick-knob{border-color:#e2d3a733;background:radial-gradient(circle at 35% 30%,#ffffffeb,#7793ffdb),linear-gradient(180deg,#d3e0fff0,#5a71c2eb);box-shadow:0 10px 24px #050a184d}.guide-panel[hidden],.rider-panel[hidden]{display:none}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(pointer:fine){.joystick{opacity:0;pointer-events:none}}@media(max-width:920px){.hud{width:min(460px,calc(100vw - 24px))}.status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-composer{grid-template-columns:1fr}.rider-panel{top:394px;left:12px;right:12px;width:auto;transform:none}}@media(max-width:640px){.hud{top:auto;bottom:12px;left:12px;right:12px;width:auto}.guide-panel{top:12px;left:12px;right:12px;width:auto}.rider-panel{top:12px;left:12px;right:12px;width:auto;transform:none}.hud-top,.hud-footer,.guide-header,.rider-header{flex-direction:column;align-items:stretch}.hud-actions{justify-content:flex-start}.status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.joystick{width:164px;height:164px;left:14px;bottom:184px}}
