*{box-sizing:border-box;margin:0;padding:0}:root{--primary: #2563eb;--primary-dark: #1d4ed8;--danger: #dc2626;--success: #16a34a;--bg: #0f172a;--bg-card: #1e293b;--bg-input: #334155;--text: #f1f5f9;--text-muted: #94a3b8;--border: #334155;--radius: 8px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;border-radius:var(--radius);font-size:.95rem;padding:.5rem 1.2rem;transition:opacity .15s,background .15s}button:hover{opacity:.88}button:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text)}input,select,textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:.95rem;padding:.5rem .75rem;width:100%;outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--primary)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.page{max-width:700px;margin:0 auto;padding:1.5rem 1rem}.error{color:var(--danger);font-size:.88rem;margin-top:.4rem}.text-muted{color:var(--text-muted);font-size:.88rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}
