:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f8fafc;background-color:#030712;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body,#root{margin:0;min-height:100vh;width:100%}body{background-color:#030712}#root{position:relative;overflow:hidden}button{font-family:inherit}.app-shell{position:relative;min-height:100vh;width:100%;color:#f8fafc;font-size:16px}.canvas-host{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}.ui-layer{position:relative;z-index:1;display:flex;flex-direction:column;min-height:100vh;padding:1.5rem clamp(1rem,4vw,3rem) 2rem;background:linear-gradient(180deg,#030712a6,#030712f2 60%)}.top-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.top-bar__actions{display:flex;gap:.5rem}.label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;margin:0 0 .125rem}.player-id{font-family:JetBrains Mono,SFMono-Regular,Menlo,monospace;font-size:.85rem;background:#0f172a99;padding:.3rem .6rem;border-radius:.4rem;word-break:break-all}.phase-chip{border-radius:999px;padding:.35rem .9rem;background:#3b82f633;border:1px solid rgba(59,130,246,.5);font-weight:600;font-size:.85rem}.layout{display:flex;flex-direction:column;gap:1.5rem;flex:1}.view-container{flex:1;display:flex;align-items:center;justify-content:center}.question-card,.scoreboard,.menu-card,.panel,.lobby-card,.splash{background:#0f172ad9;border:1px solid rgba(148,163,184,.2);border-radius:1.25rem;padding:1.5rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.menu-card{max-width:680px;text-align:left}.menu-card h1{margin-top:.25rem;margin-bottom:.75rem;font-size:clamp(1.9rem,6vw,2.6rem)}.menu-card p{margin-bottom:1rem;color:#cbd5f5}.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.menu-tile{border:1px solid rgba(59,130,246,.35);background:#1e293be6;border-radius:1rem;padding:1.25rem;text-align:left;display:flex;flex-direction:column;gap:.25rem;color:inherit;font-size:1.1rem;cursor:pointer;transition:border .2s ease,transform .2s ease}.menu-tile small{color:#94a3b8}.menu-tile:hover{border-color:#3b82f6b3;transform:translateY(-2px)}.scene-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem}.scene-tile{border:1px solid rgba(59,130,246,.35);background:linear-gradient(180deg,#1e293bf2,#0f172af2);border-radius:1rem;padding:1.1rem;text-align:left;display:flex;flex-direction:column;gap:.4rem;color:inherit;cursor:pointer;transition:border .2s ease,transform .2s ease}.scene-tile:hover{border-color:#3b82f6bf;transform:translateY(-2px)}.scene-tile__header{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline;font-weight:700}.scene-tile__header small{color:#94a3b8}.scene-tile p{margin:0;color:#cbd5f5}.scene-tile__cta{margin-top:.3rem;font-size:.9rem;color:#a5b4fc}.panel,.lobby-card,.splash{width:min(520px,100%)}.panel h2,.splash h2{margin-top:.5rem}.panel__form{display:flex;flex-direction:column;gap:.6rem;margin:1rem 0}.panel__form label{font-weight:600}.panel__form input,.panel__form textarea,.question-card__form input{width:100%;padding:.85rem 1rem;border-radius:.9rem;border:1px solid rgba(148,163,184,.4);background:#0f172acc;color:inherit;font-size:1rem}.question-card__form button,.action-footer button,.panel button:not(.ghost),.lobby-card button:not(.ghost){border:none;border-radius:999px;padding:.85rem 1.5rem;font-weight:600;font-size:1rem;background:linear-gradient(135deg,#38bdf8,#6366f1);color:#0f172a;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.question-card__form button:disabled,.action-footer button:disabled{opacity:.4;cursor:not-allowed}.ghost{border-radius:999px;padding:.5rem 1.25rem;border:1px solid rgba(148,163,184,.5);background:transparent;color:#e2e8f0;cursor:pointer}.ghost--accent-orange{border:none;padding:.75rem 1.35rem;font-weight:700;background:linear-gradient(135deg,#fb923c,#ef4444);color:#1f0a08}.ghost--accent-orange:hover{transform:translateY(-1px);background:linear-gradient(135deg,#f97316,#dc2626)}.splash{text-align:center}.highlight{background:#3b82f626;border:1px dashed rgba(59,130,246,.5);border-radius:1rem;padding:1rem;margin:1.25rem 0}.code-display{font-family:JetBrains Mono,SFMono-Regular,Menlo,monospace;font-size:1.5rem;letter-spacing:.2em;margin:.25rem 0 0}.panel__actions{display:flex;flex-direction:column;gap:.5rem}.lobby-card header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.lobby-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0 1.5rem}.stat{font-size:1.6rem;font-weight:700}.lobby-actions{display:flex;flex-direction:column;gap:.5rem}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin:1rem 0 1.5rem}.avatar-tile{border:1px solid rgba(148,163,184,.4);border-radius:1rem;padding:1rem;background:#0f172a99;display:flex;flex-direction:column;gap:.35rem;cursor:pointer}.avatar-tile small{color:#94a3b8}.avatar-tile.is-active{border-color:#3b82f6e6;background:#3b82f626}.question-card h1{margin:.35rem 0 .5rem;font-size:clamp(1.6rem,5vw,2.3rem)}.question-card p{margin:0 0 1.25rem;color:#cbd5f5}.question-card__meta{display:flex;justify-content:space-between;align-items:center;gap:1rem}.badge{padding:.15rem .75rem;background:#818cf833;border:1px solid rgba(129,140,248,.4);border-radius:999px;font-size:.85rem}.timer{font-weight:700;font-size:1.25rem}.question-card__form{display:flex;flex-direction:column;gap:.75rem}.scoreboard header{display:grid;grid-template-columns:1fr 70px;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;margin-bottom:.5rem}.scoreboard ul{display:flex;flex-direction:column;list-style:none;padding:0;margin:0;gap:.5rem}.scoreboard li{display:grid;grid-template-columns:1fr 70px;gap:.4rem}.scoreboard li span{display:flex;align-items:center;padding:.6rem .35rem;border-radius:.8rem;background:#1e293be6}.scoreboard li[data-self] span{background:#3b82f64d}.answers-hint{margin-top:1.25rem;font-size:.85rem;color:#94a3b8}.answers-board{display:grid;gap:.75rem;margin-top:.75rem}.answers-stack{grid-template-columns:1fr}.answers-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.answer-card{background:#1e293bd9;border:1px solid rgba(148,163,184,.35);border-radius:.9rem;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 8px 30px #0f172a40}.answer-card__text{margin:0;font-size:1.1rem;font-weight:700;color:#e2e8f0;word-break:break-word}.answer-card__players{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.player-dot{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f699,#6d28d999);border:1px solid rgba(255,255,255,.15);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;box-shadow:0 4px 14px #00000040}.action-footer{display:flex;flex-direction:column;gap:.35rem;margin-top:1.5rem}.view-footer{align-items:flex-start}.helper-text{margin:0;font-size:.75rem;color:#94a3b8}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.scene-view{position:relative;width:100%;min-height:calc(100vh - 80px);border-radius:1.25rem;overflow:hidden;border:1px solid rgba(148,163,184,.2);background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.08),transparent 35%),radial-gradient(circle at 80% 0%,rgba(236,72,153,.08),transparent 30%),#050814}.scene-view__canvas{position:absolute;top:0;right:0;bottom:0;left:0}.scene-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(1rem,3vw,1.5rem);pointer-events:none}.scene-overlay__card{pointer-events:auto;width:min(560px,100%)}.scene-overlay__footer{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.scene-overlay__actions{display:flex;gap:.5rem}.scene-overlay__actions button{border:none;border-radius:999px;padding:.75rem 1.35rem;font-weight:700;font-size:1rem;background:linear-gradient(135deg,#38bdf8,#6366f1);color:#0f172a;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.scene-overlay__actions button:hover{transform:translateY(-1px)}.playground-form{display:flex;flex-direction:column;gap:.6rem;margin-top:.75rem}.playground-form label{font-size:.9rem;color:#475569}.playground-form input{width:100%;padding:.65rem .75rem;border-radius:.75rem;border:1px solid #cbd5e1;background:#fff}.playground-footer{gap:1rem;align-items:center}.playground-hint{margin-left:auto;display:flex;justify-content:flex-end}.error-text{margin:0;font-size:.85rem;color:#ef4444}.joystick{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#3b82f640,#6366f126),#e2e8f0;box-shadow:inset 0 0 0 1px #94a3b866,0 10px 25px #0f172a1a;position:relative;touch-action:none;overflow:hidden}.joystick__thumb{width:56px;height:56px;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 30% 30%,#93c5fd,#2563eb);box-shadow:0 8px 18px #2563eb66;transition:box-shadow .15s ease,transform .08s ease}.joystick__thumb.is-active{box-shadow:0 10px 24px #4f46e559}.playground-hint p{margin:0;color:#475569;max-width:360px}@media (max-width: 720px){.playground-footer{flex-direction:column;align-items:flex-start}.playground-hint{align-self:flex-end}.joystick{width:108px;height:108px}}@media (min-width: 900px){.layout{flex-direction:row}.question-card,.scoreboard{flex:1}.view-container{justify-content:flex-start}}
