:root{--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--primary:var(--gray-700);--bg-color:#fff;--card-bg:#fff;--text-main:var(--gray-900);--text-dim:var(--gray-500);--radius:16px;--transition:all .25s cubic-bezier(.4, 0, .2, 1);--accent-0:#ff8a8a;--accent-1:#7db1ff;--accent-2:#82d6a5;--accent-3:#ffce7d;--accent-4:#c08eff;--accent-5:#ff9d7d}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0;font-family:Inter,system-ui,-apple-system,sans-serif}body{background:var(--bg-color);color:var(--text-main);justify-content:center;align-items:flex-start;min-height:100vh;margin:0;display:flex}#root{width:100%;max-width:480px;margin:0 auto;padding:1rem}.container{flex-direction:column;height:100%;display:flex}.card{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--gray-200);margin-bottom:1.5rem;padding:1.5rem;animation:.4s ease-out fadeIn;box-shadow:0 4px 20px -5px #0000000d,0 10px 10px -5px #00000005}h1{background:linear-gradient(to right, var(--gray-900), var(--gray-600));-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;font-family:Outfit,sans-serif}button{background:var(--gray-800);color:#fff;cursor:pointer;transition:var(--transition);border:none;border-radius:12px;padding:.875rem 1.25rem;font-size:1rem;font-weight:600}button:hover{background:var(--gray-900);transform:translateY(-1px)}button:active{transform:scale(.98)}input{background:var(--gray-50);border:1px solid var(--gray-200);color:var(--text-main);width:100%;transition:var(--transition);border-radius:12px;padding:.875rem 1rem;font-size:1.1rem}input:focus{border-color:var(--gray-400);background:#fff;outline:none;box-shadow:0 0 0 4px #00000005}h2,h3{letter-spacing:-.025em;color:var(--gray-800);margin-bottom:1.25rem;font-weight:700}.player-input-row{gap:.5rem;margin-bottom:1rem;display:flex}.score-grid{gap:1rem;margin-top:1.5rem;display:grid}.score-item{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.score-item:last-child{border-bottom:none}.player-name-tag{align-items:center;gap:.5rem;font-weight:600;display:flex}.player-dot{border:2px solid #fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 3px #00000026}.table-container{margin-top:1rem;overflow-x:auto}.score-input-large{text-align:center;font-weight:700;color:var(--primary)!important;padding:.5rem!important;font-size:1.5rem!important}table{border-collapse:collapse;table-layout:fixed;width:100%;margin-top:1rem}th,td{text-align:center;vertical-align:middle;text-overflow:ellipsis;border-bottom:1px solid #ffffff1a;padding:1rem .5rem;overflow:hidden}th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;background:var(--gray-50);font-size:.75rem;font-weight:700}td{font-variant-numeric:tabular-nums;transition:var(--transition);color:var(--gray-700)}tr:hover td{background:var(--gray-50)}th:first-child,td:first-child{width:60px}th:last-child,td:last-child{width:50px}.totals-section{animation:.4s ease-out slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.editable-score{cursor:pointer;transition:var(--transition);border-radius:8px;padding:8px 12px;font-weight:600;display:inline-block}.editable-score:hover{background:var(--gray-100);color:var(--gray-900)}.turn-badge{background:var(--gray-100);color:var(--gray-600);border-radius:6px;padding:4px 8px;font-size:.75rem;font-weight:600}.actions{justify-content:center;gap:1rem;margin-top:2rem;display:flex}.secondary-btn{border:1px solid var(--gray-200);color:var(--gray-600);background:0 0}.secondary-btn:hover{background:var(--gray-50);border-color:var(--gray-300);color:var(--gray-900)}.color-0{background:var(--accent-0)}.color-1{background:var(--accent-1)}.color-2{background:var(--accent-2)}.color-3{background:var(--accent-3)}.color-4{background:var(--accent-4)}.color-5{background:var(--accent-5)}
