:root{--bg: #f3f5f8;--bg-accent: #e6ebf3;--surface: rgba(255, 255, 255, .84);--surface-strong: #ffffff;--surface-muted: #f7f9fc;--line: rgba(15, 23, 42, .09);--line-strong: rgba(15, 23, 42, .16);--text: #111827;--muted: #667085;--accent: #2563eb;--accent-strong: #1d4ed8;--accent-soft: rgba(37, 99, 235, .1);--danger: #c2410c;font-family:Avenir Next,Segoe UI Variable,SF Pro Display,IBM Plex Sans,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(37,99,235,.1),transparent 28%),radial-gradient(circle at top right,rgba(15,23,42,.05),transparent 24%),linear-gradient(180deg,#fbfcfe 0%,var(--bg) 100%)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;padding:1rem}.centered{display:grid;place-items:center}.hero,.table-layout{width:min(1280px,100%);margin:0 auto}.hero{display:grid;gap:1rem;margin-bottom:1rem}.hero h1,.board h2,.board h3,.board h4{margin:0}.hero>div:first-child{padding:.5rem .25rem}.eyebrow{margin:0 0 .6rem;color:var(--accent);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700}.lede{max-width:44rem;margin:.75rem 0 0;color:var(--muted);font-size:1.02rem;line-height:1.6}.subtle,.hint{color:var(--muted)}.hero-card,.invite-panel,.board,.center-panel,.summary-card,.log-card,.resume-banner{background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:0 10px 30px #0f172a0f,inset 0 1px #ffffffa6;backdrop-filter:blur(10px)}.hero-card{padding:1.15rem;display:grid;gap:.9rem}.field{display:grid;gap:.42rem}.field span{font-size:.84rem;color:var(--muted);font-weight:600}.field input,.field textarea,.invite-text{width:100%;border-radius:16px;border:1px solid var(--line);background:var(--surface-strong);color:var(--text);padding:.9rem 1rem;outline:none;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.field input:focus,.field textarea:focus,.invite-text:focus{border-color:#2563eb73;box-shadow:0 0 0 4px #2563eb1f}.join-form{display:grid;gap:.75rem}.primary,.secondary,.ghost{min-height:48px;border-radius:14px;border:1px solid transparent;padding:.85rem 1rem;font-weight:600;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease}.primary:hover,.secondary:hover,.ghost:hover{transform:translateY(-1px)}.primary{background:linear-gradient(180deg,var(--accent) 0%,var(--accent-strong) 100%);color:#fff;box-shadow:0 10px 22px #2563eb38}.secondary{background:var(--surface-strong);color:var(--text);border-color:var(--line)}.ghost{background:transparent;color:var(--muted);border-color:var(--line)}button:disabled{cursor:not-allowed;opacity:.5;transform:none;box-shadow:none}.resume-banner{padding:1rem;background:linear-gradient(180deg,#2563eb0f,#ffffffb3)}.resume-banner p{margin:0 0 .8rem}.resume-actions{display:flex;gap:.75rem;flex-wrap:wrap}.error-banner{width:min(1280px,100%);margin:0 auto 1rem;border-radius:18px;border:1px solid rgba(194,65,12,.18);background:#fff7edeb;color:var(--danger);padding:.9rem 1rem}.table-layout{display:grid;gap:1rem}.invite-panel{padding:1rem;display:grid;gap:1rem}.qr-card{background:var(--surface-strong);border:1px solid var(--line);border-radius:20px;padding:1rem;display:grid;place-items:center}.facts{margin:0;display:grid;gap:.75rem}.facts div{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem .9rem;border-radius:16px;background:#f8fafcdb;border:1px solid rgba(15,23,42,.05)}.facts dt{color:var(--muted)}.facts dd{margin:0;font-weight:700}.board{padding:1rem;display:grid;gap:1rem}.board-header{display:grid;gap:1rem}.score-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.score-badge{background:var(--surface-muted);border-radius:18px;padding:.95rem 1rem;border:1px solid var(--line)}.score-badge.active{border-color:#2563eb42;background:linear-gradient(180deg,#2563eb14,#fffffff2);box-shadow:inset 0 0 0 1px #2563eb14}.score-badge span{display:block;color:var(--muted)}.score-badge strong{display:block;font-size:2rem;margin-top:.15rem;letter-spacing:-.04em}.lane,.actions-panel,.summary-card,.log-card{background:var(--surface-muted);border:1px solid var(--line);border-radius:20px;padding:1rem}.lane-header,.summary-columns,.actions-panel{display:grid;gap:.75rem}.lane-header{grid-template-columns:1fr auto;align-items:center}.lane-header span{color:var(--muted);font-size:.95rem}.card-row{display:flex;gap:.75rem;overflow-x:auto;padding:.2rem 0 .35rem}.card,.mini-card{width:72px;aspect-ratio:5 / 7;border-radius:18px;border:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#eef2f7);color:var(--text);display:grid;place-items:center;font-weight:700;box-shadow:0 10px 24px #0f172a14}.card span,.mini-card span{font-size:1.1rem}.card small,.mini-card small{font-size:1.15rem}.card.actionable{border-color:#0f172a1a}.card.actionable:not(:disabled):hover{transform:translateY(-3px);box-shadow:0 16px 28px #0f172a1f}.card.selected{border-color:#2563eb66;outline:3px solid rgba(37,99,235,.14);transform:translateY(-6px)}.card.ghost{background:linear-gradient(180deg,#eef2f7,#e5eaf1);color:#94a3b8}.ghost-row{min-height:120px}.center-stack{display:grid;gap:1rem}.center-panel{padding:1rem;display:grid;gap:.8rem}.cut-row,.starter-slot{display:flex;gap:.75rem;align-items:center}.starter-slot{min-height:88px;color:var(--muted)}.peg-total{font-size:clamp(2.4rem,5vw,3.3rem);line-height:1;margin:0;letter-spacing:-.05em}.pegging-strip{display:flex;gap:.75rem;overflow-x:auto}.peg-play{display:grid;gap:.35rem;justify-items:center;color:var(--muted);font-size:.95rem}.mini-card{width:56px}.actions-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.summary-columns{display:grid;gap:1rem}.score-list ul,.log-card ul{list-style:none;padding:0;margin:0}.score-list li,.log-card li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid rgba(15,23,42,.06)}.score-list li:last-child,.log-card li:last-child{border-bottom:none}.score-list span,.log-card li{color:#344054}@media(min-width:960px){.app-shell{padding:1.5rem}.hero{grid-template-columns:1.25fr .75fr;align-items:start;margin-bottom:1.25rem}.table-layout{grid-template-columns:320px minmax(0,1fr);align-items:start}.board-header,.center-stack,.summary-columns{grid-template-columns:repeat(3,minmax(0,1fr))}}
