:root{--bg0:#f4f7fb;--bg1:#e9eef5;--bg2:#dfe6f0;--panel:#ffffff;--line:rgba(20,40,70,0.12);--ink:#152033;--muted:#5a6b7d;--accent:#0f766e;--accent-strong:#0d9488;--teal:#0d9488;--teal-glow:rgba(13,148,136,0.22);--warn:#c2410c;--danger:#dc2626;--ok:#15803d;--radius:10px;--font-display:"Syne","Avenir Next",sans-serif;--font-body:"IBM Plex Sans","Segoe UI",sans-serif;--shadow-soft:0 10px 28px rgba(21,32,51,0.08)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:radial-gradient(900px 480px at 50% -10%,rgba(13,148,136,.1),transparent 55%),radial-gradient(700px 420px at 100% 100%,rgba(37,99,235,.06),transparent 50%),linear-gradient(180deg,#f8fafc 0,var(--bg0) 40%,#eef3f8 100%);color:var(--ink);font-family:var(--font-body);background-attachment:fixed}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100dvh;display:flex;flex-direction:column}.container{width:min(1100px,calc(100% - 2rem));margin:0 auto}.brand{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}.brand,.btn{color:var(--ink)}.btn{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:.7rem 1.2rem;transition:transform .15s ease,background .15s ease,border-color .15s ease;box-shadow:0 1px 2px rgba(21,32,51,.04)}.btn:hover{transform:translateY(-1px);border-color:var(--accent)}.btn-primary{background:linear-gradient(180deg,#14b8a6,#0f766e);border-color:#0b5f59;color:#fff;font-weight:700}.btn-accent{background:linear-gradient(135deg,#1d4ed8,#1e40af);border-color:transparent;color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.card{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-soft)}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}.field label{color:var(--muted);font-size:.9rem}.field input,.field select,.field textarea{background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink);padding:.7rem .85rem}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(13,148,136,.35);border-color:var(--accent)}.meet{display:grid;grid-template-rows:auto 1fr auto;min-height:100dvh;background:var(--bg0)}.meet-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.1rem;border-bottom:1px solid var(--line);background:rgba(255,255,255,.9)}.meet-stage{position:relative;min-height:0}.meet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:.85rem;gap:.85rem;padding:1rem;align-content:start}.pitch-countdown{position:absolute;inset:1rem;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:18px;background:rgba(255,255,255,.92);border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;text-align:center;padding:1.5rem;box-shadow:var(--shadow-soft)}.pitch-countdown-ready{font-family:var(--font-display);font-size:clamp(2.4rem,8vw,4rem);letter-spacing:.04em;color:var(--ink);animation:countdown-pulse 1.2s ease-in-out infinite}.pitch-countdown-num{font-family:var(--font-display);font-size:clamp(4.5rem,16vw,7rem);line-height:1;color:var(--accent-strong);animation:countdown-pop .85s ease}@keyframes countdown-pulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.03)}}@keyframes countdown-pop{0%{opacity:.2;transform:scale(1.35)}to{opacity:1;transform:scale(1)}}.verdict-overlay{position:absolute;inset:1rem;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;border-radius:18px;background:radial-gradient(ellipse at 50% 20%,rgba(13,148,136,.14),transparent 55%),radial-gradient(ellipse at 80% 80%,rgba(37,99,235,.08),transparent 45%),rgba(255,255,255,.96);border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;padding:1.5rem 1.25rem;overflow:auto;pointer-events:auto;animation:verdict-fade-in .45s ease;box-shadow:var(--shadow-soft)}.verdict-overlay-eyebrow{font-size:.95rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);animation:countdown-pulse 1.1s ease-in-out infinite}.verdict-overlay-title{font-family:var(--font-display);font-size:clamp(2rem,7vw,3.6rem);line-height:1.05;margin:0;color:var(--ink);animation:countdown-pop .7s ease}.verdict-overlay-title.tie{color:var(--muted)}.verdict-overlay-title.winner{background:linear-gradient(120deg,#0d9488,#1d4ed8 55%,#0d9488);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:verdict-shine 2.4s ease infinite,countdown-pop .7s ease}.verdict-overlay-explainer{max-width:36rem;margin:0;color:var(--muted);font-size:1.05rem;line-height:1.45;white-space:pre-wrap;animation:verdict-fade-in .6s ease .15s both}.verdict-scoreboard{width:min(100%,420px);display:flex;flex-direction:column;gap:.65rem;margin-top:.35rem}.verdict-score-row{text-align:left;animation:verdict-slide-up .5s ease both}.verdict-score-row:first-child{animation-delay:.05s}.verdict-score-row:nth-child(2){animation-delay:.15s}.verdict-score-row:nth-child(3){animation-delay:.25s}.verdict-score-row:nth-child(4){animation-delay:.35s}.verdict-score-meta{display:flex;justify-content:space-between;gap:.75rem;font-size:.95rem;margin-bottom:.28rem}.verdict-score-meta strong{font-family:var(--font-display)}.verdict-score-track{height:10px;border-radius:999px;background:rgba(21,32,51,.08);overflow:hidden}.verdict-score-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#0f766e,#14b8a6);transform-origin:left center;animation:verdict-bar .9s cubic-bezier(.22,1,.36,1) both}.verdict-score-row.is-winner .verdict-score-fill{background:linear-gradient(90deg,#1d4ed8,#38bdf8)}.verdict-overlay .btn{margin-top:.5rem;pointer-events:auto}@keyframes verdict-fade-in{0%{opacity:0}to{opacity:1}}@keyframes verdict-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes verdict-bar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes verdict-shine{0%{background-position:0}to{background-position:200%}}.tile{position:relative;aspect-ratio:16/10;border-radius:16px;background:radial-gradient(circle at 30% 20%,rgba(13,148,136,.1),transparent 45%),linear-gradient(160deg,#ffffff,#eef3f8);border:1px solid var(--line);overflow:hidden;display:flex;align-items:center;justify-content:center;transition:box-shadow .2s ease,border-color .2s ease;box-shadow:var(--shadow-soft)}.tile.speaking{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal-glow),var(--shadow-soft)}.tile.thinking{border-color:var(--warn);box-shadow:0 0 0 2px rgba(194,65,12,.25),var(--shadow-soft);animation:tile-think 1.1s ease-in-out infinite}@keyframes tile-think{0%,to{filter:brightness(1)}50%{filter:brightness(1.04)}}.tile-avatar{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-size:1.6rem;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}.tile-meta{position:absolute;left:.7rem;bottom:.7rem;right:.7rem;display:flex;justify-content:space-between;gap:.5rem;font-size:.85rem}.pill{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:999px;padding:.2rem .55rem;color:var(--ink)}.meet-side{border-left:1px solid var(--line);background:rgba(255,255,255,.94);padding:1rem;overflow:auto}.meet-body{display:grid;grid-template-columns:1fr min(340px,36vw);min-height:0}@media (max-width:900px){.meet-body{grid-template-columns:1fr;grid-template-rows:1fr auto}.meet-side{border-left:none;border-top:1px solid var(--line);max-height:40vh}}.meet-controls{display:flex;justify-content:center;gap:.65rem;flex-wrap:wrap;padding:.9rem;border-top:1px solid var(--line);background:rgba(255,255,255,.95)}.control{min-width:52px;width:52px;height:52px;flex-shrink:0;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--ink);display:grid;place-items:center;font-size:.72rem;font-weight:600;line-height:1.1;padding:.2rem;text-align:center}.control.danger{background:var(--danger)}.control.active,.control.danger{border-color:transparent;color:#fff}.control.active{background:var(--teal)}.control-pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem 1.1rem;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:.85rem;font-weight:600;letter-spacing:.01em;white-space:nowrap;flex-shrink:0}.control-pill.is-listen{color:var(--muted);cursor:default;opacity:.92}.control-pill.is-leave{background:var(--danger);border-color:transparent;color:#fff}.pulse{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.85}}.hero{padding:4.5rem 0 3rem}.hero h1{font-family:var(--font-display);font-size:clamp(2.6rem,7vw,4.4rem);line-height:.95;margin:0 0 .8rem;max-width:12ch}.hero p{color:var(--muted);max-width:42ch;font-size:1.15rem}.game-menu,.game-shell{min-height:100dvh}.game-menu{display:grid;grid-template-columns:200px 1fr;position:relative}.game-menu:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(21,32,51,.04) 1px,transparent 0),linear-gradient(90deg,rgba(21,32,51,.04) 1px,transparent 0);background-size:48px 48px}.game-menu-rail{position:relative;z-index:1;display:flex;flex-direction:column;gap:.55rem;padding:1.5rem 1rem;border-right:1px solid var(--line);background:rgba(255,255,255,.82)}.game-menu-rail-title{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}.game-menu-user{font-family:var(--font-display);font-size:1.05rem;color:var(--accent-strong)}.game-menu-side-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:transparent;color:var(--ink);text-align:left;padding:.45rem .55rem;border-radius:4px;font:inherit;cursor:pointer;text-decoration:none}.game-menu-side-link:hover{border-color:var(--line);background:rgba(13,148,136,.08)}.game-menu-center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1.25rem 3rem;gap:.35rem}.game-menu-title{font-size:clamp(3rem,10vw,5.5rem);margin:0;letter-spacing:-.03em;color:var(--ink);animation:game-title-in .7s ease both}.game-menu-tagline{margin:.35rem 0 0;font-size:1.15rem;color:var(--muted);animation:game-fade-up .6s ease .12s both}.game-menu-hint{margin:.25rem 0 1.4rem;font-size:.92rem;max-width:28rem;animation:game-fade-up .6s ease .2s both}.game-menu-stack{display:flex;flex-direction:column;gap:.65rem;width:min(100%,320px);animation:game-fade-up .65s ease .28s both}.game-menu-btn{display:block;width:100%;text-align:center;padding:.85rem 1rem;border:2px solid rgba(21,32,51,.12);border-radius:6px;background:#fff;color:var(--ink);font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.02em;transition:transform .12s ease,border-color .12s ease,background .12s ease;box-shadow:var(--shadow-soft)}.game-menu-btn:hover{transform:scale(1.02);border-color:var(--accent);background:#f0fdfa}.game-menu-btn-primary{background:linear-gradient(180deg,#14b8a6,#0f766e);border-color:#0b5f59;color:#fff}.game-menu-btn-primary:hover{background:linear-gradient(180deg,#2dd4bf,#0f766e)}.game-menu-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;width:min(100%,820px);margin-top:2.25rem;animation:game-fade-up .7s ease .38s both}.game-mode-tile{position:relative;text-align:left;padding:1rem .9rem .9rem;border:1px solid var(--line);border-radius:8px;background:#fff;min-height:7.5rem;color:inherit;text-decoration:none;box-shadow:var(--shadow-soft)}.game-mode-tile h3{margin:.35rem 0;font-size:1.05rem}.game-mode-tile p{margin:0;font-size:.82rem;line-height:1.35}.game-mode-tile.is-locked{opacity:.55;filter:grayscale(.2);pointer-events:none;cursor:not-allowed}.game-mode-tile.is-live{border-color:rgba(13,148,136,.45);transition:transform .15s ease,border-color .15s ease}.game-mode-tile.is-live:hover{transform:translateY(-2px);border-color:var(--accent)}.coming-soon-badge{position:absolute;top:.55rem;right:.55rem;z-index:2;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.28rem .45rem;border-radius:4px;background:var(--bg1);color:var(--muted);border:1px solid var(--line)}.mode-card{position:relative;cursor:pointer;transition:transform .18s ease,border-color .18s ease}.mode-card.is-locked{opacity:.55;cursor:not-allowed;filter:grayscale(.2)}@keyframes game-title-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes game-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:800px){.game-menu{grid-template-columns:1fr}.game-menu-rail{flex-direction:row;flex-wrap:wrap;align-items:center;border-right:none;border-bottom:1px solid var(--line);padding:.85rem 1rem}.game-menu-rail-title{width:100%;margin-bottom:0}.game-menu-modes{grid-template-columns:1fr}}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem;margin:2rem 0}@media (max-width:800px){.mode-grid{grid-template-columns:1fr}}.mode-card.selected,.mode-card:hover{transform:translateY(-3px);border-color:var(--accent)}.mode-card.is-locked:hover{transform:none;border-color:var(--line)}.alert{border-left:3px solid var(--warn);background:rgba(194,65,12,.08);padding:.65rem .8rem;border-radius:8px;margin:.5rem 0;font-size:.92rem}.score-row{gap:.5rem;padding:.25rem 0;border-bottom:1px dashed var(--line);font-size:.9rem}.score-row,.topbar{display:flex;justify-content:space-between}.topbar{align-items:center;padding:1rem 0}.muted{color:var(--muted)}.listening-banner{display:inline-flex;align-items:center;gap:.45rem;background:rgba(13,148,136,.1);border:1px solid rgba(13,148,136,.35);color:#0f766e;border-radius:999px;padding:.35rem .75rem;font-size:.85rem}.splash{position:fixed;inset:0;z-index:9999;display:grid;place-content:center;justify-items:center;grid-gap:.55rem;gap:.55rem;background:radial-gradient(600px 340px at 50% 35%,rgba(13,148,136,.14),transparent 60%),linear-gradient(160deg,#f8fafc,#eef3f8 45%,#e8eef6);opacity:0;transform:scale(1.02);transition:opacity .55s ease,transform .55s ease,visibility .55s;overflow:hidden}.splash.is-ready{opacity:1;transform:scale(1)}.splash.is-exit{opacity:0;transform:scale(1.04);pointer-events:none;visibility:hidden}.splash-aura{position:absolute;width:min(70vw,520px);height:min(70vw,520px);border-radius:50%;background:radial-gradient(circle,rgba(13,148,136,.14),transparent 68%);animation:splash-pulse 2.2s ease-in-out infinite}.splash-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(21,32,51,.045) 1px,transparent 0),linear-gradient(90deg,rgba(21,32,51,.045) 1px,transparent 0);background-size:48px 48px;-webkit-mask-image:radial-gradient(circle at 50% 45%,#000 20%,transparent 70%);mask-image:radial-gradient(circle at 50% 45%,#000 20%,transparent 70%);opacity:.7}.splash-mark{position:relative;width:78px;height:78px;color:var(--accent);display:grid;place-items:center;animation:splash-rise .7s cubic-bezier(.22,1,.36,1) both}.splash-gavel{width:64px;height:64px}.splash-stroke{stroke-dasharray:180;stroke-dashoffset:180;animation:splash-draw 1.1s ease .15s forwards}.splash-brand{font-size:clamp(2.6rem,8vw,4.2rem);letter-spacing:-.03em;color:var(--ink);animation:splash-rise .75s cubic-bezier(.22,1,.36,1) .12s both}.splash-brand,.splash-tag{position:relative;margin:0}.splash-tag{color:var(--muted);font-size:1rem;letter-spacing:.04em;animation:splash-rise .75s cubic-bezier(.22,1,.36,1) .22s both}.splash-bar{position:relative;width:0;height:2px;margin-top:.85rem;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:splash-bar .9s ease .45s forwards}@keyframes splash-draw{to{stroke-dashoffset:0}}@keyframes splash-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-bar{to{width:min(220px,50vw)}}@keyframes splash-pulse{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.06);opacity:1}}