:root,[data-theme=dark]{--bg:#080d1a;--bg-card:#0f1729;--bg-elevated:#162038;--border:#1e2d4a;--blue:#3b82f6;--cyan:#06b6d4;--green:#10b981;--red:#ef4444;--orange:#f59e0b;--text:#e2e8f0;--text-muted:#64748b;--text-dim:#94a3b8;--nav-height:65px;--shadow:0 2px 12px #0006}[data-theme=light]{--bg:#f0f4f8;--bg-card:#fff;--bg-elevated:#e8edf3;--border:#d1dbe8;--blue:#2563eb;--cyan:#0891b2;--green:#059669;--red:#dc2626;--orange:#d97706;--text:#0f172a;--text-muted:#64748b;--text-dim:#475569;--nav-height:65px;--shadow:0 2px 12px #00000014}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif;transition:background .2s,color .2s}.app{max-width:430px;min-height:100vh;margin:0 auto;position:relative}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.card{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:20px}.btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 20px;font-size:15px;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border)}input[type=email],input[type=password],input[type=text],input[type=number],textarea,select{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text);border-radius:12px;outline:none;padding:14px 16px;font-family:inherit;font-size:15px;transition:border-color .15s,background .2s}input:focus,textarea:focus,select:focus{border-color:var(--blue)}label{color:var(--text-dim);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-group{margin-bottom:16px}.page{padding:24px 16px;padding-bottom:calc(var(--nav-height) + 24px);min-height:100vh}.page-header{margin-bottom:24px}.page-header h1{color:var(--text);font-size:26px;font-weight:700}.page-header p{color:var(--text-muted);margin-top:4px;font-size:14px}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
