:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#020202;--surface:#0a0a0ae0;--surface-strong:#120f0cf0;--surface-soft:#fff0d614;--line:#ffbf5e38;--line-strong:#ffbf5e6b;--ink:#f5ecd7;--muted:#f5ecd7b8;--accent:#e79b35;--accent-deep:#7a4617;color:var(--ink);background:radial-gradient(circle at 50% -10%,#e79b3529,#0000 36%),linear-gradient(#0a0908 0%,#020202 52%,#000 100%);font-family:Trebuchet MS,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%;margin:0}body{background:0 0;min-height:100dvh}body.body--play{overflow:hidden}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.app-shell{min-height:100dvh;padding:max(14px, env(safe-area-inset-top,0px)) max(14px, env(safe-area-inset-right,0px)) max(14px, env(safe-area-inset-bottom,0px)) max(14px, env(safe-area-inset-left,0px))}.app-shell--play{overflow:hidden}.topbar{border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#00000094;border-radius:1.1rem;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem;padding:.8rem 1rem;display:flex}.topbar__eyebrow,.panel__eyebrow,.stage-banner__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 .32rem;font-size:.74rem}.topbar__meta,.panel__meta{color:var(--muted);margin:0;font-size:.93rem}.topbar__nav{flex-wrap:wrap;gap:.55rem;display:flex}.topbar__nav a{border:1px solid var(--line);background:#ffffff0a;border-radius:999px;padding:.55rem .82rem}.topbar__nav a.active{border-color:var(--line-strong);color:#fff7ea;background:linear-gradient(135deg,#e79b35e0,#7a4617eb)}.app-content{min-height:calc(100dvh - 5.8rem)}.app-shell--play .app-content{height:calc(100dvh - 5.8rem);min-height:0}.play-view{grid-template-rows:minmax(0,1fr) auto;gap:.9rem;height:100%;min-height:0;display:grid}.play-view__stage{gap:.75rem;min-height:0;display:grid}.stage-banner,.panel{border:1px solid var(--line);background:linear-gradient(180deg, var(--surface) 0%, var(--surface-strong) 100%);border-radius:1.25rem;box-shadow:0 18px 48px #00000047}.stage-banner{justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.1rem;display:flex}.stage-banner h1,.panel h2,.panel h3{margin:0}.stage-banner h1{font-size:clamp(1.4rem,1.7vw + 1rem,2.2rem);line-height:.96}.stage-banner__status{min-width:min(100%,320px)}.stage-banner__status p{color:var(--muted);margin:0}.button{appearance:none;cursor:pointer;background:linear-gradient(135deg, var(--accent), var(--accent-deep));color:#fff7ea;border:0;border-radius:999px;padding:.78rem 1.08rem;font-weight:700}.button:disabled{cursor:not-allowed;opacity:.55}.button--ghost{background:#fff0d60f;border:1px solid #fff0d629}.panel{padding:1rem 1.05rem}.panel--compact{padding:.95rem 1rem}.game-frame{border:1px solid var(--line);background:#000;border-radius:1.45rem;width:100%;min-height:0;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000057}.game-frame__iframe{background:#000;border:0;width:100%;height:min(76dvh,100dvh - 14.5rem);min-height:420px;display:block}.game-frame__rotate,.game-frame__hint,.game-frame__launcher{z-index:2;position:absolute;left:0}.game-frame__rotate{text-align:center;background:#000000d6;justify-content:center;padding:1.5rem;display:none;inset:0}.game-frame__hint{max-width:min(34ch,100% - 1.8rem);color:var(--ink);pointer-events:none;background:#000000b8;border:1px solid #ffbf5e4d;border-radius:999px;padding:.6rem .85rem;font-size:.9rem;top:.9rem;left:auto;right:.9rem}.game-frame__launcher{cursor:pointer;z-index:4;pointer-events:auto;background:0 0;border:0;place-items:center;display:grid;inset:0}.game-frame__launcher-label{color:var(--ink);letter-spacing:.05em;text-transform:uppercase;background:#000000bd;border:1px solid #ffbf5e52;border-radius:999px;padding:.8rem 1.05rem;font-weight:700}.play-view__dock{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:.9rem;display:grid}.profile-card{align-items:center;gap:.8rem;display:flex}.profile-card__avatar{object-fit:cover;background:#140d09;border:1px solid #ffbf5e47;border-radius:50%;width:52px;height:52px}.profile-card__avatar--fallback{background:#e79b3529;place-items:center;font-weight:700;display:grid}.profile-card strong,.profile-card p{margin:0;display:block}.profile-card p{color:var(--muted);font-size:.9rem}.stack-actions{flex-wrap:wrap;gap:.7rem;margin-top:.85rem;display:flex}.panel-details{border-top:1px solid #fff0d61a;margin-top:.95rem;padding-top:.95rem}.panel-details summary{cursor:pointer;color:var(--ink);font-weight:600}.field{gap:.45rem;margin:.9rem 0;display:grid}.relay-editor textarea,.field textarea,.field select{width:100%;color:var(--ink);background:#090807db;border:1px solid #fff0d624;border-radius:.85rem;padding:.8rem}.field span{color:var(--muted)}.stat-list{gap:.75rem;margin:.9rem 0 0;display:grid}.stat-list div{border-bottom:1px solid #fff0d614;justify-content:space-between;gap:1rem;padding-bottom:.5rem;display:flex}.stat-list--inline{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.3rem}.stat-list--inline div{border-bottom:0;justify-content:start;gap:.2rem;padding-bottom:0;display:grid}.stat-list dt{color:var(--muted)}.stat-list dd{overflow-wrap:anywhere;margin:0}.notice{border-radius:.85rem;margin-top:.95rem;padding:.75rem .9rem}.notice--success{background:#2e6a3a40}.notice--error{background:#7b2b1e52}.page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.page-grid--single{grid-template-columns:1fr}.plain-list{margin:1rem 0 0;padding-left:1.1rem}@media (width<=1040px){.topbar,.stage-banner,.play-view__dock,.page-grid{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.game-frame__iframe{height:min(68dvh,100dvh - 19rem)}.stat-list--inline{grid-template-columns:1fr;gap:.55rem}}@media (height<=560px){.topbar{margin-bottom:.65rem;padding:.65rem .85rem}.stage-banner,.play-view__dock{display:none}.game-frame__iframe{height:min(78dvh,100dvh - 5.5rem);min-height:240px}}@media (width<=720px){.app-shell{padding:max(10px, env(safe-area-inset-top,0px)) max(10px, env(safe-area-inset-right,0px)) max(10px, env(safe-area-inset-bottom,0px)) max(10px, env(safe-area-inset-left,0px))}.topbar{padding:.75rem .85rem}.game-frame__iframe{min-height:320px}}@media (orientation:portrait) and (width<=900px){.game-frame__rotate{display:flex}}
