@charset "UTF-8";@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/plus-jakarta-sans-cyrillic-ext-wght-normal-JQUONSEA.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/plus-jakarta-sans-vietnamese-wght-normal-TOS5SH3L.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/plus-jakarta-sans-latin-ext-wght-normal-UBEBQO7H.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/plus-jakarta-sans-latin-wght-normal-XZSBT77D.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url("./media/jetbrains-mono-cyrillic-ext-wght-normal-BUWC6ZS3.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url("./media/jetbrains-mono-cyrillic-wght-normal-ENSFVLK4.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url("./media/jetbrains-mono-greek-wght-normal-Y3BRZMJV.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url("./media/jetbrains-mono-vietnamese-wght-normal-SP6EBKAH.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url("./media/jetbrains-mono-latin-ext-wght-normal-TSLVDSQR.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url("./media/jetbrains-mono-latin-wght-normal-VBS632QH.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f4f5f8;--surface: #ffffff;--surface-2: #eff1f5;--border: #e3e6ed;--rule: #edf0f4;--text: #0f1729;--muted: #5e6880;--faint: #9aa3b5;--accent: #2b5cff;--accent-strong: #1d47e0;--accent-soft: #ebf0ff;--accent-2: #7c4dff;--on-accent: #ffffff;--ai: linear-gradient(120deg, #2b5cff 0%, #7c4dff 50%, #12b5cb 100%);--danger: #e0433e;--success: #11a06b;--warning: #d97a06;--status-declared: #2b5cff;--status-review: #d97a06;--status-info: #7c4dff;--status-approved: #11a06b;--status-rejected: #e0433e;--status-settled: #0d8c8f;--radius: 18px;--radius-sm: 11px;--shadow: 0 1px 2px rgb(15 23 41 / 4%), 0 2px 6px -2px rgb(15 23 41 / 5%);--shadow-lg: 0 24px 50px -24px rgb(15 23 41 / 28%), 0 2px 8px rgb(15 23 41 / 5%);--focus: 0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent);--sans: "Plus Jakarta Sans Variable", ui-sans-serif, system-ui, sans-serif;--mono: "JetBrains Mono Variable", ui-monospace, monospace;color-scheme:light}[data-theme=dark]{--bg: #0a0e1a;--surface: #111729;--surface-2: #182036;--border: #232c45;--rule: #1b2339;--text: #e9edf7;--muted: #98a2bd;--faint: #626d89;--accent: #7b9bff;--accent-strong: #9db4ff;--accent-soft: #1a2448;--accent-2: #a98bff;--on-accent: #0a0e1a;--ai: linear-gradient(120deg, #7b9bff 0%, #a98bff 50%, #4fd8e8 100%);--danger: #ff6f6a;--success: #3ccf95;--warning: #f2a93b;--status-declared: #7b9bff;--status-review: #f2a93b;--status-info: #b49bff;--status-approved: #3ccf95;--status-rejected: #ff6f6a;--status-settled: #4fd1d4;--shadow: 0 1px 2px rgb(0 0 0 / 40%);--shadow-lg: 0 24px 50px -20px rgb(0 0 0 / 75%);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:14.5px/1.55 var(--sans);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}h1,h2,h3{font-weight:700;line-height:1.2;letter-spacing:-.02em}h1{font-size:clamp(1.65rem,3vw,2.1rem);letter-spacing:-.035em;margin:0}h2{font-size:1.02rem;margin:0 0 .9rem}h3{font-size:.95rem;margin:1rem 0 .5rem}a{color:var(--accent);text-underline-offset:3px}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:6px}::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}input,select,textarea{font:inherit;width:100%;padding:.62rem .8rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);transition:border-color .15s,box-shadow .15s}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--text) 18%,var(--border))}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus)}input[aria-invalid=true].ng-touched,select[aria-invalid=true].ng-touched,textarea[aria-invalid=true].ng-touched{border-color:var(--danger)}textarea{resize:vertical}table{width:100%;border-collapse:collapse}th,td{padding:.8rem .9rem;text-align:left;border-bottom:1px solid var(--rule)}th{font-size:.76rem;font-weight:600;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap}tbody tr{transition:background-color .12s}tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}tbody tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums}.ref{font-family:var(--mono);font-size:.92em;font-weight:600;letter-spacing:-.01em}.button,button.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font:inherit;font-size:.88rem;font-weight:650;padding:.58rem 1.05rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-decoration:none;white-space:nowrap;box-shadow:var(--shadow);transition:transform .12s,background-color .15s,border-color .15s,box-shadow .15s}.button:hover:not(:disabled),button.button:hover:not(:disabled){border-color:color-mix(in srgb,var(--text) 22%,var(--border))}.button:active:not(:disabled),button.button:active:not(:disabled){transform:scale(.98)}.button:disabled,button.button:disabled{opacity:.45;cursor:not-allowed}.button.primary,button.button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 1px #ffffff2e inset,0 6px 16px -6px color-mix(in srgb,var(--accent) 70%,transparent)}.button.primary:hover:not(:disabled),button.button.primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.button.success,button.button.success{background:var(--success);border-color:var(--success);color:#fff}.button.danger,button.button.danger{background:var(--surface);border-color:color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger)}.button.danger:hover:not(:disabled),button.button.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 7%,var(--surface));border-color:var(--danger)}.button.ghost,button.button.ghost{background:transparent;border-color:transparent;box-shadow:none}.button.ghost:hover:not(:disabled),button.button.ghost:hover:not(:disabled){background:var(--surface-2)}.button.sm,button.button.sm{padding:.36rem .75rem;font-size:.8rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem;box-shadow:var(--shadow)}.card-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.card-title h2{margin:0;display:flex;align-items:center;gap:.5rem}.page-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem}.eyebrow{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:var(--muted);margin-bottom:.35rem}.muted{color:var(--muted);margin:0}.back{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.85rem;font-size:.85rem;font-weight:500;text-decoration:none;color:var(--muted)}.back:hover{color:var(--accent)}.alert{margin:0;padding:.8rem 1rem .8rem 2rem;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--danger) 25%,transparent);background:color-mix(in srgb,var(--danger) 6%,var(--surface));color:var(--danger);font-size:.88rem}p.alert{padding-left:1rem}.field-error{color:var(--danger);font-weight:500;font-size:.8rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.18rem .6rem;border-radius:999px;font-size:.74rem;font-weight:600;background:var(--surface-2);color:var(--muted);white-space:nowrap}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-2) 25%,color-mix(in srgb,var(--surface-2) 40%,var(--surface)) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-200% 0}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
