*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f8f8f7;--surface: #ffffff;--border: #e5e5e3;--text: #1a1a18;--muted: #6b6b68;--accent: #1a1a18;--danger: #dc2626;--radius: 10px;--shadow: 0 1px 3px rgba(0,0,0,.08)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;color:var(--text);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:14px;cursor:pointer;border:none;border-radius:var(--radius);transition:opacity .15s}button:disabled{opacity:.45;cursor:not-allowed}button:not(:disabled):hover{opacity:.82}input[type=text],input[type=password]{width:100%;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius);font-family:inherit;font-size:14px;color:var(--text);background:var(--surface);outline:none;transition:border-color .15s}input:focus{border-color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.btn-primary{background:var(--accent);color:#fff;padding:10px 20px;font-weight:500}.btn-secondary{background:transparent;color:var(--muted);padding:10px 20px;border:1px solid var(--border)}.btn-danger{background:var(--danger);color:#fff;padding:10px 20px}.btn-ghost{background:none;color:var(--muted);padding:4px 0;font-size:13px;text-decoration:underline}.error-text{color:var(--danger);font-size:13px}.muted{color:var(--muted)}
