@font-face{font-family:DC Sans;font-weight:400;src:local("Helvetica Neue"),local("HelveticaNeue"),local("Helvetica Neue Regular")}@font-face{font-family:DC Sans;font-weight:500;src:local("Helvetica Neue Medium"),local("HelveticaNeue-Medium")}@font-face{font-family:DC Sans;font-weight:700;src:local("Helvetica Neue Bold"),local("HelveticaNeue-Bold")}:root{--dc-black:#111729;--dc-primary:#0070E0;--dc-secondary:#003087;--dc-mark-pink:#FF005F;--dc-mark-cyan:#01B6F0;--blue-50:#EEF5FE;--blue-100:#D9E9FC;--blue-200:#B3D3F8;--blue-300:#7FB5F2;--blue-400:#3D90EA;--blue-500:#0070E0;--blue-600:#005FC0;--blue-700:#004A9E;--blue-800:#003087;--blue-900:#001F5C;--gray-0:#FFFFFF;--gray-25:#FAFBFC;--gray-50:#F5F7FA;--gray-100:#EEF1F5;--gray-200:#E3E8EF;--gray-300:#CDD5DF;--gray-400:#9AA4B2;--gray-500:#697586;--gray-600:#4B5565;--gray-700:#364152;--gray-800:#202939;--gray-900:#111729;--green-50:#ECFDF3;--green-100:#D1FADF;--green-500:#12B76A;--green-600:#039855;--green-700:#027A48;--red-50:#FFF1F3;--red-100:#FFE4E8;--red-500:#F04438;--red-600:#D92D20;--red-700:#B42318;--amber-50:#FFFAEB;--amber-100:#FEF0C7;--amber-500:#F79009;--amber-700:#B54708;--violet-50:#F4F3FF;--violet-500:#7A5AF8;--violet-700:#5925DC;--bg-app:var(--gray-50);--surface-card:#FFFFFF;--surface-muted:var(--gray-25);--surface-sunken:var(--gray-100);--surface-inverse:var(--dc-black);--border-subtle:var(--gray-200);--border-default:var(--gray-300);--border-strong:var(--gray-400);--border-focus:var(--dc-primary);--text-strong:var(--dc-black);--text-body:var(--gray-700);--text-muted:var(--gray-500);--text-subtle:var(--gray-400);--text-inverse:#FFFFFF;--text-link:var(--dc-primary);--action-primary:var(--dc-secondary);--action-primary-hover:#00266B;--action-primary-active:#001F5C;--action-accent:var(--dc-primary);--action-accent-hover:var(--blue-600);--status-success-fg:var(--green-700);--status-success-bg:var(--green-50);--status-success-border:var(--green-100);--status-danger-fg:var(--red-700);--status-danger-bg:var(--red-50);--status-danger-border:var(--red-100);--status-warning-fg:var(--amber-700);--status-warning-bg:var(--amber-50);--status-warning-border:var(--amber-100);--status-info-fg:var(--blue-700);--status-info-bg:var(--blue-50);--status-info-border:var(--blue-100);--status-neutral-fg:var(--gray-600);--status-neutral-bg:var(--gray-100);--status-neutral-border:var(--gray-200);--money-in:var(--green-600);--money-out:var(--red-600);--chart-line:var(--green-500);--chart-fill:rgba(18,183,106,.1);--chart-grid:var(--gray-200)}:root{--font-sans:"DC Sans","Helvetica Neue","HelveticaNeue",Helvetica,"Arimo",Arial,sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--fw-regular:400;--fw-medium:500;--fw-bold:700;--fs-display:72px;--fs-h1:48px;--fs-h2:32px;--fs-h3:24px;--fs-h4:20px;--fs-body-lg:16px;--fs-body:14px;--fs-body-sm:13px;--fs-caption:12px;--fs-overline:11px;--fs-amount-xl:40px;--fs-amount-lg:28px;--lh-tight:1.1;--lh-snug:1.25;--lh-body:1.5;--tracking-tight:-.02em;--tracking-normal:0;--tracking-wide:.06em;--text-display:var(--fw-medium) var(--fs-display)/var(--lh-tight) var(--font-sans);--text-h1:var(--fw-bold) var(--fs-h1)/var(--lh-tight) var(--font-sans);--text-h2:var(--fw-bold) var(--fs-h2)/var(--lh-snug) var(--font-sans);--text-h3:var(--fw-medium) var(--fs-h3)/var(--lh-snug) var(--font-sans);--text-h4:var(--fw-medium) var(--fs-h4)/var(--lh-snug) var(--font-sans);--text-body-lg:var(--fw-regular) var(--fs-body-lg)/var(--lh-body) var(--font-sans);--text-body-md:var(--fw-regular) var(--fs-body)/var(--lh-body) var(--font-sans);--text-body-sm:var(--fw-regular) var(--fs-body-sm)/var(--lh-body) var(--font-sans);--text-caption:var(--fw-regular) var(--fs-caption)/1.4 var(--font-sans);--text-overline:var(--fw-medium) var(--fs-overline)/1.3 var(--font-sans)}:root{--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-pill:999px;--shadow-xs:0 1px 2px rgba(17,23,41,.05);--shadow-sm:0 1px 2px rgba(17,23,41,.06),0 1px 3px rgba(17,23,41,.08);--shadow-md:0 4px 8px -2px rgba(17,23,41,.08),0 2px 4px -2px rgba(17,23,41,.05);--shadow-lg:0 12px 24px -6px rgba(17,23,41,.12),0 4px 8px -4px rgba(17,23,41,.06);--shadow-xl:0 24px 48px -12px rgba(17,23,41,.22);--ring-focus:0 0 0 3px rgba(0,112,224,.22);--ring-danger:0 0 0 3px rgba(240,68,56,.18);--control-h-sm:32px;--control-h-md:40px;--control-h-lg:48px;--sidebar-w:232px;--sidebar-w-collapsed:72px;--topbar-h:64px;--ease-standard:cubic-bezier(.2,0,0,1);--ease-emphasized:cubic-bezier(.3,0,0,1.15);--dur-fast:.12s;--dur-base:.18s;--dur-slow:.28s}*,*:before,*:after{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body);background:var(--bg-app);letter-spacing:-.01em;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{color:var(--text-strong);letter-spacing:var(--tracking-tight);margin:0}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--action-accent-hover);text-decoration:underline}.dc-num{font-variant-numeric:tabular-nums}@keyframes dc-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes dc-scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes dc-spin{to{transform:rotate(360deg)}}.dc-icon{display:inline-block;flex-shrink:0;width:18px;height:18px;background-color:currentColor;-webkit-mask:var(--dc-icon) center / contain no-repeat;mask:var(--dc-icon) center / contain no-repeat}.dc-icon-mail{--dc-icon: url(/build/assets/mail-B4u46Cjb.svg)}.dc-icon-lock{--dc-icon: url(/build/assets/lock-Cd2Hw4HL.svg)}.dc-icon-circle-alert{--dc-icon: url(/build/assets/circle-alert-DmEXBHIW.svg)}.dc-icon-check{--dc-icon: url(/build/assets/check-BXir1VcD.svg)}.dc-icon-info{--dc-icon: url(/build/assets/info-VK7bFSTb.svg)}.dc-icon-loader-circle{--dc-icon: url(/build/assets/loader-circle-BTBXu5mB.svg)}[hidden]{display:none!important}.login-page{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-6);min-height:100vh;min-height:100dvh;padding:var(--space-8) var(--space-4);background:var(--bg-app)}.login-background{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;width:100%;height:100%;pointer-events:none}.login-brand{display:flex;align-items:center;gap:10px}.login-brand-mark{display:block;width:30px;height:auto}.login-brand-name{font-size:var(--fs-h4);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:-.03em;color:var(--text-strong)}.login-card{display:flex;flex-direction:column;gap:var(--space-5);width:100%;max-width:400px;padding:var(--space-8);background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs)}.login-title{font-size:var(--fs-h3);font-weight:var(--fw-bold);line-height:var(--lh-snug)}.login-subtitle{margin:var(--space-1) 0 0;font-size:var(--fs-body);color:var(--text-muted);text-wrap:pretty}.login-banner{display:flex;align-items:flex-start;gap:var(--space-2);padding:10px var(--space-3);border:1px solid;border-radius:var(--radius-md);font-size:var(--fs-body-sm);line-height:1.4}.login-banner-danger{color:var(--status-danger-fg);background:var(--status-danger-bg);border-color:var(--status-danger-border)}.login-banner-info{color:var(--status-info-fg);background:var(--status-info-bg);border-color:var(--status-info-border)}.login-banner-icon{width:16px;height:16px;margin-top:1px}.login-field{display:flex;flex-direction:column;gap:6px}.login-label{font-size:var(--fs-body-sm);font-weight:var(--fw-medium);line-height:1.4;color:var(--text-strong)}.login-control{position:relative}.login-control-icon{position:absolute;top:50%;left:var(--space-3);width:16px;height:16px;color:var(--text-muted);transform:translateY(-50%);pointer-events:none}.login-input{width:100%;height:var(--control-h-md);padding:0 var(--space-3) 0 36px;font:inherit;font-size:var(--fs-body);color:var(--text-strong);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.login-input::-moz-placeholder{color:var(--text-muted);opacity:1}.login-input::placeholder{color:var(--text-muted);opacity:1}.login-input:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--ring-focus)}.login-input[aria-invalid=true]{border-color:var(--red-500)}.login-input[aria-invalid=true]:focus{box-shadow:var(--ring-danger)}.login-input:-webkit-autofill{-webkit-text-fill-color:var(--text-strong);box-shadow:inset 0 0 0 40px var(--surface-card)}.login-input:-webkit-autofill:focus{box-shadow:inset 0 0 0 40px var(--surface-card),var(--ring-focus)}.login-field-error{margin:0;font-size:var(--fs-caption);line-height:1.4;color:var(--status-danger-fg)}.login-text-button{padding:0;font:inherit;font-size:var(--fs-body-sm);line-height:1.4;white-space:nowrap;background:none;border:0;cursor:pointer}.login-text-button:focus-visible,.login-forgot:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-xs)}.login-password-toggle{align-self:flex-start;color:var(--text-muted);transition:color var(--dur-fast) var(--ease-standard)}.login-password-toggle:hover{color:var(--text-strong)}.login-forgot{font-size:var(--fs-body-sm);line-height:1.4;white-space:nowrap;color:var(--text-link)}.login-forgot:hover{color:var(--text-link);text-decoration:underline}.login-forgot-hint{margin:0;font-size:var(--fs-body-sm);line-height:1.4;color:var(--text-muted);text-wrap:pretty}.login-options{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.login-remember{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-body);color:var(--text-body);cursor:pointer}.login-checkbox{position:relative;display:inline-flex;flex-shrink:0;width:16px;height:16px}.login-checkbox-input{width:16px;height:16px;margin:0;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-xs);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.login-checkbox-input:checked{background:var(--dc-primary);border-color:var(--dc-primary)}.login-checkbox-input:focus-visible{outline:none;box-shadow:var(--ring-focus)}.login-checkbox-icon{position:absolute;top:2px;left:2px;width:12px;height:12px;color:var(--text-inverse);opacity:0;pointer-events:none}.login-checkbox-input:checked+.login-checkbox-icon{opacity:1}.login-submit{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;height:var(--control-h-lg);font:inherit;font-size:15px;font-weight:var(--fw-medium);color:var(--text-inverse);background:var(--action-primary);border:0;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard)}.login-submit:hover{background:var(--action-primary-hover)}.login-submit:active{background:var(--action-primary-active);transform:scale(.98)}.login-submit:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.login-submit:disabled{background:var(--action-primary);transform:none;cursor:progress}.login-submit-spinner{width:16px;height:16px;animation:dc-spin .7s linear infinite}.login-footer{max-width:400px;margin:0;font-size:12.5px;line-height:1.4;text-align:center;color:var(--gray-600);text-wrap:pretty}@media(max-width:400px){.login-card{padding:var(--space-6)}}@media(prefers-reduced-motion:reduce){.login-input,.login-checkbox-input,.login-password-toggle,.login-submit{transition:none}.login-submit-spinner{animation-duration:1.6s}}
