.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}:root{--color-bg: #f5f3ee;--color-surface: #ffffff;--color-surface-subtle: #faf9f6;--color-surface-hover: #f1eee7;--color-surface-sunken: #ece9e1;--color-border: #e5e1d8;--color-border-strong: #d0cbc0;--color-text: #1c1e1b;--color-text-secondary: #5b5f58;--color-text-tertiary: #858980;--color-text-inverse: #ffffff;--color-accent: #6b3f7c;--color-accent-hover: #57326a;--color-accent-subtle: #f1e9f3;--color-accent-text: #5a3368;--color-success: #2c6a4f;--color-success-subtle: #e5eee8;--color-warning: #8f6210;--color-warning-subtle: #f6eedb;--color-danger: #b03f2c;--color-danger-hover: #943322;--color-danger-subtle: #f8e8e3;--color-info: #3b647d;--color-info-subtle: #e7eef2;--color-focus-ring: rgba(107, 63, 124, .3);--color-overlay: rgba(28, 30, 27, .4);--category-1: #2c6a4f;--category-2: #b0763a;--category-3: #3b647d;--category-4: #8a5a83;--category-5: #a8503f;--category-6: #5f7a3a;--category-7: #6c6f68;--category-8: #4b6fa0;--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;--font-size-meta: 12px;--font-size-secondary: 13px;--font-size-body: 14px;--font-size-section: 15px;--font-size-title: 26px;--font-size-figure: 22px;--font-family: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-display: Newsreader, Georgia, "Times New Roman", serif;--font-family-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Consolas, monospace;--line-height: 1.5;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--control-height: 34px;--control-height-sm: 28px;--row-height: 44px;--icon-size: 16px;--shell-sidebar-width: 232px;--shell-tabbar-height: 60px;--content-max-width: 1180px;--form-max-width: 560px;--shadow-overlay: 0 12px 32px rgba(28, 30, 27, .14), 0 2px 6px rgba(28, 30, 27, .08);--transition-fast: .12s ease}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%}h1,h2,h3,h4,p,dl,dd,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}img,svg{display:block}input,button,select,textarea{font:inherit;color:inherit}button{cursor:pointer}table{border-collapse:collapse}html{scrollbar-gutter:stable}body{font-family:var(--font-family);font-size:var(--font-size-body);line-height:var(--line-height);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}a{color:var(--color-accent-text);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:2px}:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}h1{font-family:var(--font-family-display);font-size:var(--font-size-title);font-weight:var(--font-weight-medium);line-height:32px;letter-spacing:-.01em}h2{font-size:var(--font-size-section);font-weight:var(--font-weight-semibold);line-height:24px}::selection{background:var(--color-accent-subtle)}.page{max-width:var(--content-max-width);margin:0 auto;padding:var(--space-8) var(--space-8) var(--space-12)}@media(max-width:899.98px){.page{padding:var(--space-5) var(--space-4) var(--space-10)}}.page--narrow{max-width:calc(var(--form-max-width) + 2 * var(--space-8))}.page--wide{max-width:1400px}.section+.section{margin-top:var(--space-8)}.section__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.layout-split{display:grid;gap:var(--space-6);align-items:start}@media(min-width:1200px){.layout-split{grid-template-columns:minmax(0,1fr) 360px}}.stack{display:grid;gap:var(--space-6);align-content:start;min-width:0}.text-secondary{font-size:var(--font-size-secondary);line-height:18px;color:var(--color-text-secondary)}.text-meta{font-size:var(--font-size-meta);line-height:16px;color:var(--color-text-tertiary)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.eyebrow{color:var(--color-text-tertiary);font-size:11px;font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase}.panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.panel__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:48px;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border)}.panel__title{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--font-size-section);font-weight:var(--font-weight-semibold)}.panel__count{color:var(--color-text-tertiary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-regular)}.panel__body{padding:var(--space-4)}.panel__footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);font-size:var(--font-size-secondary)}.panel>.table-wrap{border:0;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.panel>.toolbar{margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.rows>li,.row{display:flex;align-items:center;gap:var(--space-3);min-height:var(--row-height);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border)}.rows>li:last-child{border-bottom:0}.row__main{display:grid;flex:1;min-width:0;line-height:1.35}.row__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-medium)}.row__meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-meta);line-height:16px;color:var(--color-text-tertiary)}.row__end{display:flex;flex-shrink:0;align-items:center;gap:var(--space-2)}.rows__group{padding:var(--space-3) var(--space-4) var(--space-1);border-bottom:0}.figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}@media(max-width:639.98px){.figures{grid-template-columns:1fr 1fr}}.figure{display:grid;align-content:start;gap:2px;min-width:0;padding:var(--space-4) var(--space-5)}.figure+.figure{border-left:1px solid var(--color-border)}@media(max-width:639.98px){.figure{padding:var(--space-3)}.figure+.figure{border-left:0}.figure:nth-child(odd):not(:last-child){border-right:1px solid var(--color-border)}.figure:nth-child(n+3){border-top:1px solid var(--color-border)}}.figure__label{font-size:var(--font-size-secondary);line-height:18px;color:var(--color-text-secondary)}.figure__value{overflow-wrap:anywhere;font-size:var(--font-size-figure);font-weight:var(--font-weight-medium);line-height:1.25;letter-spacing:-.01em}@media(max-width:639.98px){.figure__value{font-size:17px}}.figure__hint{font-size:var(--font-size-meta);line-height:16px;color:var(--color-text-tertiary)}.meter{position:relative;display:block;height:4px;overflow:hidden;border-radius:2px;background:var(--color-surface-sunken)}.meter>span{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--color-accent)}.meter.meter--warning>span{background:var(--color-warning)}.meter.meter--over>span{background:var(--color-danger)}.tone-danger{color:var(--color-danger)}.tone-warning{color:var(--color-warning)}.tone-accent{color:var(--color-accent-text)}.tone-muted{color:var(--color-text-tertiary)}.category{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0}.category:before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:2px;background:var(--category-color, var(--color-text-tertiary))}.alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle);font-size:var(--font-size-secondary)}.alert>app-icon{margin-top:2px}.alert--success{border-color:color-mix(in srgb,var(--color-success) 25%,transparent);background:var(--color-success-subtle)}.alert--success>app-icon{color:var(--color-success)}.alert--warning{border-color:color-mix(in srgb,var(--color-warning) 25%,transparent);background:var(--color-warning-subtle)}.alert--warning>app-icon{color:var(--color-warning)}.alert--danger{border-color:color-mix(in srgb,var(--color-danger) 25%,transparent);background:var(--color-danger-subtle)}.alert--danger>app-icon{color:var(--color-danger)}.alert--info{border-color:color-mix(in srgb,var(--color-info) 25%,transparent);background:var(--color-info-subtle)}.alert--info>app-icon{color:var(--color-info)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);white-space:nowrap;text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.btn:hover:not(:disabled){background:var(--color-surface-hover);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn[aria-busy=true]{cursor:progress}@media(max-width:639.98px){.btn{min-height:40px}}.btn--primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-inverse)}.btn--primary:hover:not(:disabled){border-color:var(--color-accent-hover);background:var(--color-accent-hover)}.btn--danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-text-inverse)}.btn--danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn--ghost{border-color:transparent;background:transparent;color:var(--color-text-secondary)}.btn--ghost:hover:not(:disabled){color:var(--color-text)}.btn--link{height:auto;padding:0;border:0;background:none;color:var(--color-accent-text)}.btn--link:hover:not(:disabled){background:none;text-decoration:underline;text-underline-offset:2px}@media(max-width:639.98px){.btn--link{min-height:0}}.btn--sm{height:var(--control-height-sm);padding:0 var(--space-2);font-size:var(--font-size-secondary)}@media(max-width:639.98px){.btn--sm{min-height:36px}}.btn--icon{width:var(--control-height);padding:0}.btn--icon.btn--sm{width:var(--control-height-sm)}@media(max-width:639.98px){.btn--icon.btn--sm{width:36px}}@media(max-width:639.98px){.btn--icon{width:40px}}.spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.segmented{display:inline-flex;max-width:100%;overflow-x:auto;padding:2px;border-radius:var(--radius-md);background:var(--color-surface-sunken)}.segmented button,.segmented a{display:inline-flex;align-items:center;gap:6px;height:calc(var(--control-height) - 4px);padding:0 var(--space-3);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-secondary);font-weight:var(--font-weight-medium);white-space:nowrap;text-decoration:none}.segmented button:hover,.segmented a:hover{color:var(--color-text)}.segmented button[aria-pressed=true],.segmented button[aria-current=page],.segmented a[aria-pressed=true],.segmented a[aria-current=page]{background:var(--color-surface);color:var(--color-text);box-shadow:0 1px 2px #1c1e1b1a}.form{display:grid;gap:var(--space-4);max-width:var(--form-max-width)}.form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media(max-width:639.98px){.form__row{grid-template-columns:1fr}}.form__actions{display:flex;gap:var(--space-2);padding-top:var(--space-2)}.form-error{padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb,var(--color-danger) 30%,transparent);border-radius:var(--radius-md);background:var(--color-danger-subtle);color:var(--color-danger);font-size:var(--font-size-secondary)}.input,.select,.textarea{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--font-size-body);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input::placeholder,.select::placeholder,.textarea::placeholder{color:var(--color-text-tertiary)}.input:hover:not(:disabled),.select:hover:not(:disabled),.textarea:hover:not(:disabled){border-color:var(--color-text-tertiary)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-focus-ring)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--color-surface-subtle);color:var(--color-text-tertiary);cursor:not-allowed}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--color-danger)}@media(max-width:639.98px){.input,.select,.textarea{height:40px;font-size:16px}}.input--amount{text-align:right}.textarea{height:auto;min-height:88px;padding:var(--space-2) var(--space-3);resize:vertical}.select{padding-right:var(--space-8);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%235b5f58' stroke-width='1.5'%3E%3Cpath d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center}.checkbox{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.checkbox input{width:16px;height:16px;margin:0;accent-color:var(--color-accent)}.table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.table{width:100%}.table th,.table td{height:var(--row-height);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}.table th{height:36px;color:var(--color-text-tertiary);font-size:var(--font-size-meta);font-weight:var(--font-weight-medium);white-space:nowrap}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover td{background:var(--color-surface-subtle)}.table .num{text-align:right}.table .actions{width:1%;text-align:right;white-space:nowrap}.table .actions>*+*{margin-left:var(--space-1)}.table .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}@media(max-width:639.98px){.table--stack thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.table--stack tr{display:grid;grid-template-columns:1fr auto;gap:2px var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.table--stack tbody tr:last-child{border-bottom:0}.table--stack td{height:auto;padding:0;border:0}.table--stack td[data-secondary]{grid-column:1;color:var(--color-text-tertiary);font-size:var(--font-size-meta)}.table--stack td.num{grid-row:1;grid-column:2}.table--stack td.actions{grid-row:2;grid-column:2;width:auto}.table--stack td[data-primary]{grid-column:1;font-weight:var(--font-weight-medium)}.table--stack td[data-hide-sm]{display:none}}.person{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0}.skeleton{display:block;height:12px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-surface-hover) 25%,var(--color-surface-subtle) 50%,var(--color-surface-hover) 75%);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}@keyframes shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton,.spinner{animation-duration:2.4s}}.badge{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text-secondary);font-size:var(--font-size-meta);font-weight:var(--font-weight-medium);white-space:nowrap}.badge--accent{background:var(--color-accent-subtle);color:var(--color-accent-text)}.details{display:grid;grid-template-columns:minmax(110px,max-content) 1fr;gap:var(--space-3) var(--space-5)}.details dt{font-size:var(--font-size-secondary);line-height:18px;color:var(--color-text-secondary)}.details dd{min-width:0}.cdk-overlay-dark-backdrop{background:var(--color-overlay)}.menu{min-width:200px;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-overlay)}.menu__item{display:flex;align-items:center;gap:var(--space-2);width:100%;height:var(--control-height);padding:0 var(--space-2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);text-align:left;text-decoration:none}.menu__item>app-icon{color:var(--color-text-secondary)}.menu__item:hover,.menu__item:focus-visible,.menu__item.cdk-menu-item-active{outline:none;background:var(--color-surface-hover);text-decoration:none}.menu__item.menu__item--danger,.menu__item.menu__item--danger>app-icon{color:var(--color-danger)}.menu__hint{margin-left:auto;color:var(--color-text-tertiary);font-size:var(--font-size-meta)}.menu__separator{height:1px;margin:var(--space-1) 0;background:var(--color-border)}.tooltip{max-width:280px;padding:6px 10px;border-radius:var(--radius-sm);background:#262824;color:#fff;font-size:var(--font-size-meta);line-height:1.45;pointer-events:none}.dialog{display:block;padding:var(--space-6);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-overlay)}@media(max-width:639.98px){.dialog{padding:var(--space-5) var(--space-4)}}.dialog__title{font-size:17px;font-weight:var(--font-weight-semibold);line-height:24px}.dialog__body{margin-top:var(--space-2)}.dialog__form{display:grid;gap:var(--space-4);margin-top:var(--space-5)}.dialog__actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-6)}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-4)}.toolbar__spacer{flex:1}.toolbar .select{width:auto;min-width:150px}
