:root{font-family:IBM Plex Sans,Segoe UI,sans-serif;color:#f6f2eb;background:radial-gradient(circle at top,rgba(244,186,86,.2),transparent 30%),linear-gradient(160deg,#0f1720,#16202a,#1d2b36)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}.page-shell{display:grid;place-items:center;min-height:100vh;padding:24px}.hero-card{width:min(1180px,100%);padding:32px;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:#070c11b8;box-shadow:0 28px 90px #00000052;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.top-nav{display:flex;gap:12px;margin-bottom:20px}.nav-button{padding:10px 16px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#ffffff0a;color:#f6f2eb;font:inherit;cursor:pointer}.nav-button.is-active{background:#f4ba56;color:#0c1218;border-color:transparent;font-weight:700}.eyebrow{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#f4ba56}h1{margin:0;font-size:clamp(2.3rem,5vw,4rem);line-height:.95}.lede{margin:16px 0 0;max-width:50ch;color:#f6f2ebc2;font-size:1.05rem}.status-card{margin-top:28px;padding:20px;border-radius:18px;background:#ffffff0f;border:1px solid rgba(255,255,255,.09)}.upload-form{display:grid;gap:12px}.submit-button{width:fit-content;padding:12px 18px;border:0;border-radius:999px;background:#f4ba56;color:#0c1218;font:inherit;font-weight:700;cursor:pointer}.submit-button:hover{filter:brightness(1.04)}.danger-button{width:fit-content;border:0;border-radius:999px;background:#c8515c;color:#fff6f3;font:inherit;font-weight:700;cursor:pointer}.icon-button{display:inline-grid;place-items:center;width:36px;height:36px;padding:0}.danger-button:hover{filter:brightness(1.05)}.trash-icon{width:16px;height:16px}.status-label{margin:0 0 12px;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#f6f2eb99}.payload p,.error-text{margin:8px 0}.muted-text{color:#f6f2eb99}.selected-files{display:grid;gap:6px;padding:12px 14px;border-radius:14px;background:#ffffff0a}.selected-files p{margin:0;font-size:.95rem}.file-results{display:grid;gap:12px;margin-top:16px}.file-result{padding:14px;border-radius:14px;background:#ffffff0d}.tournament-groups{display:grid;gap:16px}.tournament-group{border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#ffffff08;overflow:hidden}.tournament-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;cursor:pointer;list-style:none}.tournament-summary::-webkit-details-marker{display:none}.tournament-summary:after{content:"+";margin-left:auto;margin-right:12px;color:#f6f2eb99;font-size:1.2rem;line-height:1}.tournament-group[open] .tournament-summary:after{content:"−"}.hands-table-wrap{overflow-x:auto;padding:0 18px 18px}.hands-table{width:100%;border-collapse:collapse}.hands-table th,.hands-table td{padding:12px 10px;text-align:left;border-top:1px solid rgba(255,255,255,.08);vertical-align:middle}.hands-table th{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#f6f2eb9e}.card-images{display:flex;gap:8px;align-items:center}.card-image{width:42px;height:58px;border-radius:10px;box-shadow:0 10px 24px #00000038}.error-text{color:#ffb4a2}@media(max-width:640px){.hero-card{padding:24px}}
