:root{color-scheme:dark;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#edf3ff;background:#07101c;--gold:#ffd27d;--cyan:#46dbe1}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:wait}[hidden]{display:none!important}a{color:var(--cyan)}
#welcome{min-height:100svh;max-width:640px;margin:auto;padding:28px 24px 35px;text-align:center;background:radial-gradient(ellipse at 50% 35%,#13334b,transparent 65%)}.home{display:block;text-align:left;color:#a8b6ca;text-decoration:none;font-size:14px}.brand{width:180px;height:150px;object-fit:contain;margin-top:25px}.eyebrow{color:var(--gold);font-size:12px;letter-spacing:2px;font-weight:700}h1{font-size:clamp(25px,6vw,36px);line-height:1.18}p{color:#b3c2d6;line-height:1.6}.primary{border:1px solid #ffe1a0;background:linear-gradient(115deg,#fdd185,#ea983d);color:#211407;font-weight:750;padding:14px 20px;border-radius:12px;min-height:48px}.secondary{border:1px solid #40546a;background:#1a293c;padding:12px 18px;border-radius:12px;min-height:44px}#start{min-width:240px}.fine{font-size:12px;color:#94a8c1}.secondary-link{display:inline-block;margin:8px 0;text-decoration:none}
body.playing{position:fixed;inset:0;overflow:hidden;overscroll-behavior:none}#game{position:fixed;inset:0;background:#03070c;overflow:hidden}#viewport{position:absolute;left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);top:calc(42px + env(safe-area-inset-top,0px));bottom:env(safe-area-inset-bottom,0px);display:flex;align-items:center;justify-content:center}#unity-canvas{display:block;width:100%;height:100%;object-fit:contain;outline:0;touch-action:none;user-select:none;-webkit-user-select:none}#toolbar{position:absolute;z-index:3;top:env(safe-area-inset-top,0px);left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);height:42px;display:flex;align-items:center;gap:8px;padding:0 8px;background:#0b1523}#toolbar button{border:1px solid #344758;border-radius:8px;background:#172a3e;min-width:44px;height:36px;font-size:15px}#status{flex:1;font-size:12px;color:#9fe3d7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#menu{font-size:20px!important}#fullscreen{font-size:24px!important}#loading{position:absolute;inset:42px 0 0;background:#07101c;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;padding:24px;text-align:center}#loading img{width:140px;max-height:100px;object-fit:contain}#loading progress{width:min(70vw,320px);height:8px;accent-color:var(--cyan)}#load-percent{margin:10px;color:var(--gold);font-size:13px}#rotate{position:absolute;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:12px;right:12px;background:#10253bef;border:1px solid #3c6584;border-radius:12px;padding:12px 45px 12px 14px;font-size:13px;z-index:4}#dismiss-rotate{position:absolute;right:4px;top:0;height:40px;width:40px;background:none;border:0;font-size:25px}
.modal{position:fixed;inset:0;background:#01060cb8;z-index:10;display:flex;align-items:center;justify-content:center;padding:calc(12px + env(safe-area-inset-top,0px)) calc(16px + env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) calc(16px + env(safe-area-inset-left,0px));overflow:auto;overscroll-behavior:contain}.sheet{width:100%;max-width:420px;max-height:100%;overflow:auto;padding:20px;border:1px solid #35536e;border-radius:18px;background:#101e30;box-shadow:0 20px 70px #0008}.sheet h2{font-size:19px;margin:0 0 16px;color:#ffe0a2}.sheet-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.sheet-head button{border:0;background:#22364c;border-radius:8px;font-size:22px;min-width:40px;min-height:40px;margin-top:-8px}form label{display:block;font-size:13px;margin:10px 0 6px;color:#bfd0e2}input,select{width:100%;font-size:16px;color:#fff;background:#081421;border:1px solid #395570;border-radius:9px;padding:11px;min-height:44px}input:focus,select:focus{outline:2px solid var(--cyan);outline-offset:1px}#enter{width:100%;margin-top:16px}#phase{font-size:13px}#disconnect{width:100%}.sheet-links{display:flex;justify-content:space-between;font-size:12px;margin-top:18px}.chat-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
@media(orientation:landscape) and (max-height:500px){#welcome{padding:16px 25px;max-width:100%;min-height:100svh}.brand{width:100px;height:65px;margin:0}.eyebrow{margin:4px}h1{font-size:24px;margin:8px}#welcome>p:not(.eyebrow){margin:6px}.home{position:absolute;top:18px;left:20px}.secondary-link{font-size:13px}.sheet{max-width:560px;padding:16px}#login{display:grid;grid-template-columns:90px 1fr;gap:6px 12px;align-items:center}#login label{margin:0}#enter{grid-column:1/-1;margin-top:6px;min-height:40px;padding:8px}#phase{margin:8px 0}.sheet-links{margin-top:10px}#rotate{display:none}}

#game.landscape-fallback{position:fixed;right:auto;bottom:auto;top:0;transform-origin:0 0;transform:rotate(90deg)}
#game.landscape-fallback #viewport{left:env(safe-area-inset-top,0px);right:env(safe-area-inset-bottom,0px);top:42px;bottom:0}
#game.landscape-fallback #toolbar{left:env(safe-area-inset-top,0px);right:env(safe-area-inset-bottom,0px);top:0}
#unity-canvas{object-fit:fill}
