@import"https://fonts.googleapis.com/css2?family=Bungee&family=DM+Sans:wght@400;500;600;700&display=swap";:root{color-scheme:light;font-family:DM Sans,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg: #fff4e6;--surface: #ffffff;--surface-2: #fff0d9;--text: #1d1b2f;--text-muted: #5f5f6f;--border: rgba(31, 28, 55, .12);--accent: #ff5c8a;--accent-2: #2ec4b6;--accent-3: #4d9de0;--warn: #ffd166;--danger: #ff6b6b;--radius-lg: 24px;--radius-md: 16px;--radius-sm: 12px;--shadow: 0 18px 30px rgba(24, 20, 40, .12)}:root[data-theme=dark]{color-scheme:dark;--bg: #0f1016;--surface: #1a1c26;--surface-2: #232636;--text: #f5f7ff;--text-muted: #c8cfe2;--border: rgba(255, 255, 255, .1);--accent: #ff7bb0;--accent-2: #42e2d0;--accent-3: #6bb6ff;--warn: #ffd166;--danger: #ff8b8b;--shadow: 0 18px 30px rgba(6, 8, 20, .6)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 18%,rgba(255,92,138,.28),transparent 40%),radial-gradient(circle at 85% 12%,rgba(46,196,182,.24),transparent 42%),radial-gradient(circle at 70% 80%,rgba(77,157,224,.24),transparent 45%),linear-gradient(120deg,#ffd16659,#fff4e6e6),var(--bg);color:var(--text)}:root[data-theme=dark] body{background:radial-gradient(circle at 12% 18%,rgba(255,123,176,.16),transparent 45%),radial-gradient(circle at 85% 12%,rgba(66,226,208,.12),transparent 45%),radial-gradient(circle at 70% 80%,rgba(107,182,255,.12),transparent 48%),linear-gradient(160deg,#0a0c14e6,#0f1016fa),var(--bg)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark}:root:not([data-theme]) body{background:radial-gradient(circle at 12% 18%,rgba(255,123,176,.22),transparent 40%),radial-gradient(circle at 85% 12%,rgba(94,230,214,.18),transparent 42%),radial-gradient(circle at 70% 80%,rgba(118,183,255,.18),transparent 45%),linear-gradient(140deg,#ffd16614,#1c1a23f2),var(--bg)}}button,input{font-family:inherit}.app{position:relative;min-height:100vh;padding:28px clamp(20px,4vw,48px) 60px;overflow:hidden}.bg-orb{position:absolute;width:360px;height:360px;border-radius:50%;filter:blur(40px);opacity:.4;pointer-events:none}.bg-orb--one{top:-120px;right:10%;background:#ff5c8a8c}.bg-orb--two{bottom:-160px;left:6%;background:#2ec4b673}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.brand{display:flex;align-items:center;gap:14px}.brand__mark{width:44px;height:44px;border-radius:14px;background:linear-gradient(140deg,#ff5c8af2,#ffd166f2);display:grid;place-items:center;font-family:Bungee,sans-serif;font-weight:700;letter-spacing:.02em;overflow:hidden}.brand__mark img{width:100%;height:100%;object-fit:cover;display:block}.brand__mark span{display:block}.brand__title{font-family:Bungee,sans-serif;font-size:1.3rem;letter-spacing:.02em}.brand__subtitle{color:var(--text-muted);font-size:.85rem}.topbar__center,.topbar__actions{display:flex;align-items:center;gap:12px}.theme-toggle{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:#fff9;font-size:.85rem;color:var(--text)}.theme-toggle__label{color:var(--text-muted);font-weight:600}.switch{position:relative;width:44px;height:24px;display:inline-block}.switch input{opacity:0;width:0;height:0}.switch__track{position:absolute;inset:0;border-radius:999px;background:#00000026;border:1px solid var(--border);transition:background .2s ease,border .2s ease}.switch__track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000040;transition:transform .2s ease}.switch input:checked+.switch__track{background:#42e2d059;border-color:#42e2d099}.switch input:checked+.switch__track:after{transform:translate(20px)}.pill{padding:6px 12px;border-radius:999px;background:#ffffffb3;border:1px solid var(--border);font-size:.85rem;color:var(--text)}.pill--muted{color:var(--text-muted)}.pill--accent{background:#ff5c8a2e;border-color:#ff5c8a66}.demo-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-radius:var(--radius-md);background:#ffffffbf;border:1px solid var(--border);margin-bottom:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.error-banner{margin:12px 0 16px;padding:12px 16px;border-radius:var(--radius-md);background:#ff6b6b2e;border:1px solid rgba(255,107,107,.5);color:var(--text);font-weight:600}.demo-bar__label{font-size:.9rem;color:var(--text-muted)}.demo-bar__controls{display:flex;flex-wrap:wrap;gap:8px}.seg-btn{border:1px solid transparent;background:#ffffffb3;color:var(--text);padding:6px 12px;border-radius:999px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.seg-btn:hover{border-color:#1f1c3733}.seg-btn--active{background:#ff5c8a2e;border-color:#ff5c8a73}.seg-btn:disabled{opacity:.5;cursor:not-allowed;border-color:transparent}.layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:24px}.layout--lobby,.layout--game{grid-template-columns:minmax(0,1.6fr) minmax(0,.6fr)}.panel{background:#ffffffeb;border-radius:var(--radius-lg);border:1px solid var(--border);padding:24px;box-shadow:var(--shadow)}.panel--secondary{background:#ffffffbf}:root[data-theme=dark] .theme-toggle{background:#ffffff0f}:root[data-theme=dark] .switch__track{background:#ffffff14}:root[data-theme=dark] .switch__track:after{background:#f5f7ff}:root[data-theme=dark] .pill,:root[data-theme=dark] .seg-btn,:root[data-theme=dark] .pack-card,:root[data-theme=dark] .player-row,:root[data-theme=dark] .score-row,:root[data-theme=dark] .card,:root[data-theme=dark] .admin-item,:root[data-theme=dark] .submission-status,:root[data-theme=dark] .demo-bar,:root[data-theme=dark] .timer-pill{background:#ffffff0f}:root[data-theme=dark] .panel{background:var(--surface)}:root[data-theme=dark] .panel--secondary{background:var(--surface-2)}:root[data-theme=dark] .card--prompt{background:#ff7bb02e;border-color:#ff7bb080}:root[data-theme=dark] .card--winner{background:#ffd1662e}:root[data-theme=dark] .btn-ghost{background:#ffffff0a}:root[data-theme=dark] .field input,:root[data-theme=dark] .field select,:root[data-theme=dark] .field textarea{background:#ffffff14}.panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.panel__kicker{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.2em}.panel__title{font-size:1.4rem;font-family:Bungee,sans-serif}.timer-pill{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#2ec4b62e;border:1px solid rgba(46,196,182,.45);font-size:.85rem}.timer-pill__label{color:var(--text-muted)}.timer-pill__value{font-weight:600}.btn{border:1px solid transparent;border-radius:999px;padding:10px 18px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#ff5c8a,#ffd166);color:#1d1b2f}.btn-secondary{background:#2ec4b633;border:1px solid rgba(46,196,182,.45);color:var(--text)}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text)}.btn:disabled{opacity:.4;cursor:not-allowed}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px;align-items:center}.hero__title{font-family:Bungee,sans-serif;font-size:clamp(2rem,2.5vw,2.8rem);margin-bottom:12px}.hero__subtitle{color:var(--text-muted);font-size:1rem;margin-bottom:20px}.hero__actions{display:flex;gap:12px}.hero__panel{display:grid;gap:16px}.hero__stack{display:grid;gap:12px}.checkbox{display:flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--text-muted)}.form{display:grid;gap:16px;max-width:420px}.form__title{font-family:Bungee,sans-serif;font-size:1.6rem}.field{display:grid;gap:6px;color:var(--text-muted);font-size:.9rem}.field input{background:#ffffffe6;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:10px 12px}.field select,.field textarea{background:#ffffffe6;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:10px 12px;font-family:inherit}.field textarea{min-height:120px;resize:vertical}.section-title{font-family:Bungee,sans-serif;font-size:1.2rem;margin-bottom:12px}.lobby{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.player-list{display:grid;gap:10px}.player-row{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#ffffffe6;border-radius:var(--radius-sm);border:1px solid var(--border)}.player-row__name{display:flex;align-items:center;gap:8px;font-weight:600}.player-row__meta{color:var(--text-muted)}.badge{padding:2px 8px;border-radius:999px;font-size:.7rem;background:#ffd16666;border:1px solid rgba(255,209,102,.7);color:var(--warn)}.badge--accent{background:#2ec4b633;border-color:#2ec4b68c;color:var(--accent-2)}.settings{display:grid;gap:16px}.setting{display:grid;gap:10px}.setting__label{color:var(--text-muted);font-size:.85rem}.setting__row{display:flex;align-items:center;gap:10px}.setting__row input{width:80px;background:#ffffffe6;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:6px 8px}.pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.pack-card{text-align:left;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#ffffffd9;color:var(--text);cursor:pointer}.pack-card--active{border-color:#2ec4b699;background:#2ec4b629}.pack-card:disabled{opacity:.5;cursor:not-allowed}.pack-card__meta{color:var(--text-muted);font-size:.75rem;margin-top:6px}.game{display:grid;gap:20px}.game__prompt{min-height:140px}.game__stage{display:grid;gap:16px}.stage-title{font-weight:600}.hand{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.submission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.game__actions{display:flex;gap:12px;justify-content:flex-end}.card{padding:16px;border-radius:var(--radius-md);background:#ffffffeb;border:1px solid var(--border);color:var(--text);text-align:left;min-height:90px}.card__label{color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;margin-bottom:10px}.card__text{font-size:1.1rem;font-weight:600}.card--prompt{background:#ff5c8a29;border-color:#ff5c8a80}.card--response{background:#fffffff2}.card--selectable{cursor:pointer;transition:transform .2s ease,border .2s ease}.card--selectable:hover{transform:translateY(-4px);border-color:#1f1c3733}.card--selectable:disabled{opacity:.6;cursor:not-allowed;transform:none}.card--selected{border-color:#2ec4b6cc;box-shadow:0 0 0 2px #2ec4b64d}.card--winner{border-color:#ffd166cc;background:#ffd16640}.hint{color:var(--text-muted)}.submission-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px;padding:12px 14px;border-radius:var(--radius-sm);background:#ffffffb3;border:1px solid var(--border)}.submission-status__label{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;color:var(--text-muted);margin-bottom:6px}.submission-status__list{font-weight:600}.score{display:grid;gap:16px}.score__banner{display:grid;gap:6px}.score__label{text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:var(--text-muted)}.score__name{font-family:Bungee,sans-serif;font-size:2rem}.score__actions{display:flex;gap:12px}.sudden{display:grid;gap:16px}.sudden__alert{padding:10px 14px;background:#ff6b6b33;border:1px solid rgba(255,107,107,.5);border-radius:var(--radius-sm)}.end{display:grid;gap:16px}.end__title{font-family:Bungee,sans-serif;font-size:1.8rem}.end__winner{color:var(--text-muted)}.end__actions{display:flex;gap:12px}.scoreboard{display:grid;gap:10px}.admin{display:grid;gap:24px}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px}.admin-stack{display:grid;gap:16px}.admin-list{display:grid;gap:10px;max-height:320px;overflow:auto}.admin-item{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#ffffffe6;color:var(--text);cursor:pointer;gap:12px}.admin-item--active{border-color:#2ec4b699;box-shadow:0 0 0 2px #2ec4b633}.admin-item__title{font-weight:600}.admin-item__meta{color:var(--text-muted);font-size:.8rem}.admin-detail{display:grid;gap:12px}.admin-toolbar{display:flex;flex-wrap:wrap;gap:10px}.admin-meta{color:var(--text-muted);font-size:.85rem}.admin-versions{display:grid;gap:8px;font-size:.8rem;color:var(--text-muted)}.admin-version{display:grid;grid-template-columns:60px 1fr auto;gap:12px}.admin-filters,.admin-search{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:end}.admin-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.admin-column{display:grid;gap:8px}.score-row{display:grid;grid-template-columns:30px 1fr 40px;align-items:center;padding:10px 12px;border-radius:var(--radius-sm);background:#ffffffe6;border:1px solid var(--border)}.score-row__rank{color:var(--text-muted)}.score-row__score{text-align:right;font-weight:600}.divider{height:1px;background:var(--border);margin:20px 0}.panel__meta{display:grid;gap:8px;color:var(--text-muted);font-size:.85rem}.meta-row{display:flex;justify-content:space-between}@media(max-width:1100px){.layout,.layout--lobby,.layout--game,.hero{grid-template-columns:1fr}.topbar{display:grid;grid-template-columns:1fr auto;grid-template-areas:"brand actions" "center center";align-items:center;row-gap:12px}.brand{grid-area:brand}.topbar__center{grid-area:center}.topbar__actions{grid-area:actions}.topbar__center{width:100%;justify-content:flex-start;flex-wrap:wrap}.topbar__actions{width:auto;justify-content:flex-end;flex-wrap:wrap}.admin-grid{grid-template-columns:1fr}}@media(max-width:720px){.app{padding:20px 16px 40px}.demo-bar{flex-direction:column;align-items:flex-start}.hero__actions,.score__actions,.end__actions,.game__actions{flex-direction:column;align-items:stretch}.lobby{grid-template-columns:1fr}.hand{grid-auto-flow:column;grid-auto-columns:minmax(160px,1fr);grid-template-columns:none;overflow-x:auto;padding-bottom:8px}}
