@charset "UTF-8";:root{--accent: #635bff;--accent-600: #5249f0;--accent-700: #443cd6;--accent-soft: rgba(99, 91, 255, .12);--ink: #181825;--ink-2: #2c2c44;--muted: #6e6e82;--line: #e7e7ef;--bg: #f6f6fb;--surface: #ffffff;--surface-2: #fafafd;--ok: #16a34a;--warn: #d97706;--warn-soft: #fef3e2;--danger: #e11d48;--radius: 16px;--radius-sm: 10px;--shadow-sm: 0 1px 2px rgba(20, 20, 40, .06), 0 1px 1px rgba(20, 20, 40, .04);--shadow: 0 10px 30px -12px rgba(30, 25, 90, .18);--shadow-lg: 0 30px 60px -18px rgba(30, 25, 90, .3);--maxw: 1080px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.02em}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--radius-sm);padding:12px 20px;font-size:15px;font-weight:600;transition:transform .12s ease,box-shadow .2s ease,background .2s ease}.btn:active{transform:translateY(1px)}.btn--primary{color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-700));box-shadow:0 8px 20px -8px #635bffb3}.btn--primary:hover{box-shadow:0 12px 26px -8px #635bffcc}.btn--ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.btn--ghost:hover{background:var(--surface-2)}.btn--danger{background:transparent;color:var(--danger);border:1px solid rgba(225,29,72,.25)}.btn--danger:hover{background:#e11d4812}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--block{width:100%}.field{display:flex;flex-direction:column;gap:6px}.field>label{font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:.01em}.input,.select,.textarea{width:100%;padding:11px 13px;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);transition:border-color .15s ease,box-shadow .15s ease;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.textarea{resize:vertical;min-height:84px}.input.ng-invalid.ng-touched,.select.ng-invalid.ng-touched{border-color:var(--danger)}.field__err{font-size:12px;color:var(--danger)}
