:root{color-scheme:light;font-family:Space Grotesk,Segoe UI,sans-serif;--bg:#f5f1ea;--panel:#fff;--ink:#1b1b1f;--accent:#2b4eff;--accent-2:#ffb300;--muted:#6b6b76;--border:#e2e2eb;--reserved:#f04e4e;--paid:#1aa34a}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#fff4de 0,var(--bg) 45%,#e7efff 100%);color:var(--ink);min-height:100vh}main{max-width:980px;margin:0 auto;padding:48px 24px 80px}h1{font-size:2.4rem;margin-bottom:8px}p{margin:0 0 16px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));grid-gap:12px;gap:12px;margin-top:32px}.number-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:16px;text-align:center;font-size:1.2rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.number-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(0,0,0,.08)}.number-card.reserved{background:#ffecec;border-color:#ffc0c0;color:var(--reserved);cursor:not-allowed;box-shadow:none}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;padding:24px;z-index:40}.modal{background:var(--panel);border-radius:20px;padding:24px;width:min(420px,100%);box-shadow:0 24px 50px rgba(0,0,0,.2)}.modal h2{margin:0 0 8px}input{width:100%;padding:12px 14px;margin:12px 0 16px;border-radius:12px;border:1px solid var(--border);font-size:1rem}button{border:none;border-radius:12px;padding:12px 16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}button.primary{background:var(--accent);color:#fff;margin-right:8px}a.secondary-link,button.secondary{background:#f0f0f6;color:#1b1b1f}a.secondary-link{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:12px;font-weight:600;text-decoration:none}button.danger{background:#ffebeb;color:#b40000}button:disabled{opacity:.6;cursor:not-allowed}.admin-panel{background:var(--panel);border-radius:20px;padding:24px;margin-top:24px;border:1px solid var(--border)}.admin-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.table-wrap{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:12px 8px;border-bottom:1px solid var(--border)}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.badge{padding:4px 8px;border-radius:999px;font-size:.85rem;font-weight:600}.badge.paid{background:#e7f7ed;color:var(--paid)}.badge.unpaid{background:#fff4de;color:#d17d00}.spinner{width:48px;height:48px;border:4px solid rgba(43,78,255,.2);border-top:4px solid var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:48px auto}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:720px){main{padding:32px 16px 64px}h1{font-size:2rem}.grid{grid-template-columns:repeat(auto-fit,minmax(56px,1fr));gap:10px}.number-card{padding:12px 0;font-size:1rem}.admin-panel{padding:16px}.admin-actions{flex-direction:column;align-items:stretch}.admin-actions a.secondary-link,.admin-actions button{width:100%}.table td,.table th{padding:10px 6px}.modal{padding:20px}button{width:100%}button.primary{margin-right:0;margin-bottom:8px}}