:root{--bg:#0f1a24;--panel:#142434;--text:#f0f5ff;--muted:#9ab0c4;--accent:#41d39e;--danger:#ff6b6b}*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at 20% 10%,#1c3045 0,var(--bg) 35%);color:var(--text)}.container{width:100%;max-width:none;margin:0;padding:24px}.card{background:var(--panel);border:1px solid #20384f;border-radius:12px;padding:16px}button,input,select{border-radius:8px;border:1px solid #314f6c;background:#102235;color:var(--text);padding:8px 10px}button{cursor:pointer}button.primary{background:var(--accent);color:#082018;border-color:var(--accent)}button.danger{background:var(--danger);color:#fff;border-color:var(--danger)}a{color:var(--accent);text-decoration:none}.button-link{display:inline-flex;align-items:center;border-radius:8px;border:1px solid #314f6c;background:#102235;color:var(--text);padding:8px 10px;line-height:1}.button-link:hover{border-color:#3e688e}.button-link.compact{padding:5px 8px;font-size:12px;min-height:28px}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:8px;border-bottom:1px solid #20384f;text-align:left}.row{display:flex;gap:12px;flex-wrap:wrap}.muted{color:var(--muted)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{width:100%;max-width:420px}.settings-form{display:flex;flex-direction:column;gap:12px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:12px;gap:12px}.settings-group{display:grid;grid-gap:10px;gap:10px}.settings-field{display:grid;grid-gap:6px;gap:6px}.settings-label{gap:6px;color:var(--muted);font-size:13px}.settings-label,.settings-tip{display:inline-flex;align-items:center}.settings-tip{justify-content:center;width:16px;height:16px;border-radius:999px;border:1px solid #314f6c;color:#b9cde0;font-size:11px;cursor:help}.settings-formula{margin:0;max-height:260px;overflow:auto;background:#0b1622;border:1px solid #20384f;border-radius:8px;padding:10px;color:#d4e2f1}