@charset "UTF-8";:root{--boutic-primary: #0f766e;--boutic-primary-hover: #115e59;--boutic-primary-active: #134e4a;--boutic-primary-soft: #f0fdfa;--boutic-primary-border: #99f6e4;--boutic-on-primary: #ffffff;--boutic-accent: #f59e0b;--boutic-accent-hover: #d97706;--boutic-accent-active: #b45309;--boutic-accent-soft: #fffbeb;--boutic-accent-border: #fde68a;--boutic-on-accent: #ffffff;--boutic-dark: #0f172a;--boutic-bg: #f8fafc;--boutic-surface: #ffffff;--boutic-surface-muted: #f1f5f9;--boutic-surface-hover: #f1f5f9;--boutic-overlay: rgba(15, 23, 42, .55);--boutic-border: #e2e8f0;--boutic-border-strong: #cbd5e1;--boutic-text: #0f172a;--boutic-text-body: #334155;--boutic-text-muted: #475569;--boutic-text-faint: #64748b;--boutic-text-inverse: #ffffff;--boutic-success: #22c55e;--boutic-success-strong: #15803d;--boutic-success-soft: #f0fdf4;--boutic-info: #3b82f6;--boutic-info-strong: #1d4ed8;--boutic-info-soft: #eff6ff;--boutic-warning: #f59e0b;--boutic-warning-strong: #b45309;--boutic-warning-soft: #fffbeb;--boutic-error: #ef4444;--boutic-error-strong: #b91c1c;--boutic-error-soft: #fef2f2;--boutic-sidebar-bg: #0f172a;--boutic-sidebar-bg-hover: #1e293b;--boutic-sidebar-text: #cbd5e1;--boutic-sidebar-text-active: #ffffff;--boutic-sidebar-active-bg: rgba(15, 118, 110, .22);--boutic-sidebar-active-marker: #2dd4bf;--boutic-sidebar-section: #64748b;--boutic-sidebar-border: rgba(148, 163, 184, .16);--boutic-status-online: #22c55e;--boutic-status-offline: #94a3b8;--boutic-status-maintenance: #f59e0b;--boutic-status-fault: #ef4444;--boutic-shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--boutic-shadow-md: 0 2px 8px rgba(15, 23, 42, .08);--boutic-shadow-lg: 0 12px 32px rgba(15, 23, 42, .14);--boutic-ring: 0 0 0 3px rgba(15, 118, 110, .28);--boutic-radius-sm: 6px;--boutic-radius-md: 10px;--boutic-radius-lg: 16px;--boutic-radius-pill: 999px;--boutic-font: "Inter", "Roboto", system-ui, -apple-system, "Segoe UI", sans-serif;--boutic-font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--boutic-sidebar-width: 264px;--boutic-sidebar-width-collapsed: 72px;--boutic-navbar-height: 64px}:root{--boutic-space-1: 4px;--boutic-space-2: 6px;--boutic-space-3: 10px;--boutic-space-4: 16px;--boutic-space-5: 20px;--boutic-space-6: 24px;--boutic-space-7: 32px;--boutic-space-8: 48px}.stack{display:flex;flex-direction:column;gap:var(--boutic-space-4)}.stack--tight{gap:var(--boutic-space-2)}.stack--loose{gap:var(--boutic-space-6)}.mt-1{margin-top:var(--boutic-space-1)}.mb-1{margin-bottom:var(--boutic-space-1)}.mt-2{margin-top:var(--boutic-space-2)}.mb-2{margin-bottom:var(--boutic-space-2)}.mt-3{margin-top:var(--boutic-space-3)}.mb-3{margin-bottom:var(--boutic-space-3)}.mt-4{margin-top:var(--boutic-space-4)}.mb-4{margin-bottom:var(--boutic-space-4)}.mt-5{margin-top:var(--boutic-space-5)}.mb-5{margin-bottom:var(--boutic-space-5)}.mt-6{margin-top:var(--boutic-space-6)}.mb-6{margin-bottom:var(--boutic-space-6)}.mt-7{margin-top:var(--boutic-space-7)}.mb-7{margin-bottom:var(--boutic-space-7)}.mt-8{margin-top:var(--boutic-space-8)}.mb-8{margin-bottom:var(--boutic-space-8)}:root{--mat-sys-background: #f9faf3;--mat-sys-error: #ba1a1a;--mat-sys-error-container: #ffdad6;--mat-sys-inverse-on-surface: #f1f1eb;--mat-sys-inverse-primary: #02e600;--mat-sys-inverse-surface: #2f312d;--mat-sys-on-background: #1a1c18;--mat-sys-on-error-container: #93000a;--mat-sys-on-primary-container: #015300;--mat-sys-on-primary-fixed: #002200;--mat-sys-on-primary-fixed-variant: #015300;--mat-sys-on-secondary: #ffffff;--mat-sys-on-secondary-container: #3c4b37;--mat-sys-on-secondary-fixed: #121f0e;--mat-sys-on-secondary-fixed-variant: #3c4b37;--mat-sys-on-surface: #1a1c18;--mat-sys-on-surface-variant: #43483f;--mat-sys-on-tertiary-container: #723600;--mat-sys-on-tertiary-fixed: #311300;--mat-sys-on-tertiary-fixed-variant: #723600;--mat-sys-outline: #73796e;--mat-sys-outline-variant: #c3c8bc;--mat-sys-primary: #026e00;--mat-sys-primary-container: #77ff61;--mat-sys-primary-fixed: #77ff61;--mat-sys-primary-fixed-dim: #02e600;--mat-sys-scrim: #000000;--mat-sys-secondary: #54634d;--mat-sys-secondary-container: #d7e8cd;--mat-sys-secondary-fixed: #d7e8cd;--mat-sys-secondary-fixed-dim: #bbcbb2;--mat-sys-shadow: #000000;--mat-sys-surface: #f9faf3;--mat-sys-surface-bright: #f9faf3;--mat-sys-surface-container: #eeeee7;--mat-sys-surface-container-high: #e8e9e1;--mat-sys-surface-container-highest: #e2e3dc;--mat-sys-surface-container-low: #f3f4ed;--mat-sys-surface-container-lowest: #ffffff;--mat-sys-surface-dim: #dadbd3;--mat-sys-surface-tint: #026e00;--mat-sys-surface-variant: #dfe4d7;--mat-sys-tertiary: #964900;--mat-sys-tertiary-container: #ffdcc7;--mat-sys-tertiary-fixed: #ffdcc7;--mat-sys-tertiary-fixed-dim: #ffb787;--mat-sys-neutral-variant20: #2c3229;--mat-sys-neutral10: #1a1c18;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Inter;--mat-sys-body-large-font: Inter;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Inter;--mat-sys-body-medium-font: Inter;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Inter;--mat-sys-body-small-font: Inter;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Inter;--mat-sys-display-large-font: Inter;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Inter;--mat-sys-display-medium-font: Inter;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Inter;--mat-sys-display-small-font: Inter;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Inter;--mat-sys-headline-large-font: Inter;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Inter;--mat-sys-headline-medium-font: Inter;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Inter;--mat-sys-headline-small-font: Inter;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Inter;--mat-sys-label-large-font: Inter;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Inter;--mat-sys-label-medium-font: Inter;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Inter;--mat-sys-label-small-font: Inter;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Inter;--mat-sys-title-large-font: Inter;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Inter;--mat-sys-title-medium-font: Inter;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Inter;--mat-sys-title-small-font: Inter;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-sys-primary: #0f766e;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #ccfbf1;--mat-sys-on-primary-container: #134e4a;--mat-sys-tertiary: #f59e0b;--mat-sys-on-tertiary: #ffffff;--mat-sys-tertiary-container: #fef3c7;--mat-sys-on-tertiary-container: #78350f;--mat-sys-error: #ef4444;--mat-sys-on-error: #ffffff;--mat-sys-error-container: #fee2e2;--mat-sys-on-error-container: #7f1d1d;--mat-sys-surface: #ffffff;--mat-sys-on-surface: #0f172a;--mat-sys-on-surface-variant: #475569;--mat-sys-surface-container-low: #f8fafc;--mat-sys-surface-container: #f1f5f9;--mat-sys-surface-container-high: #e2e8f0;--mat-sys-background: #f8fafc;--mat-sys-on-background: #334155;--mat-sys-outline: #cbd5e1;--mat-sys-outline-variant: #e2e8f0}mat-chip{min-height:unset!important;height:auto!important;padding:6px!important}mat-chip .operator-logo{width:40px;height:50px;display:block;object-fit:contain}mat-option .operator-logo{width:32px;height:32px;object-fit:contain;display:block}.mat-mdc-card{border:1px solid var(--boutic-border);border-radius:var(--boutic-radius-lg);box-shadow:var(--boutic-shadow-sm)!important}.mat-mdc-button-base{--mat-button-filled-container-shape: var(--boutic-radius-md);--mat-button-outlined-container-shape: var(--boutic-radius-md);--mat-button-protected-container-shape: var(--boutic-radius-md);font-weight:600;letter-spacing:.01em}.boutic-cta{--mat-button-filled-container-color: var(--boutic-accent);--mat-button-filled-label-text-color: var(--boutic-on-accent);--mat-button-protected-container-color: var(--boutic-accent);--mat-button-protected-label-text-color: var(--boutic-on-accent)}.boutic-cta:hover:not(:disabled){--mat-button-filled-container-color: var(--boutic-accent-hover);--mat-button-protected-container-color: var(--boutic-accent-hover)}.mat-mdc-form-field{width:100%}.mat-mdc-table{background:var(--boutic-surface)}.mat-mdc-table .mat-mdc-header-row{background:var(--boutic-surface-muted)}.mat-mdc-table .mat-mdc-header-cell{color:var(--boutic-text-muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.mat-mdc-table .mat-mdc-row:hover{background:var(--boutic-primary-soft)}.mat-mdc-paginator{background:var(--boutic-surface);color:var(--boutic-text-muted)}.mat-mdc-dialog-container{--mdc-dialog-container-shape: var(--boutic-radius-lg)}.boutic-snack{--mat-snack-bar-container-shape: var(--boutic-radius-md);--mat-snack-bar-supporting-text-color: #ffffff;--mat-snack-bar-button-color: #ffffff}.boutic-snack--success{--mat-snack-bar-container-color: var(--boutic-success-strong)}.boutic-snack--info{--mat-snack-bar-container-color: var(--boutic-info-strong)}.boutic-snack--warning{--mat-snack-bar-container-color: var(--boutic-warning-strong)}.boutic-snack--error{--mat-snack-bar-container-color: var(--boutic-error-strong)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--boutic-bg);color:var(--boutic-text-body);font-family:var(--boutic-font);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{margin:0 0 8px;color:var(--boutic-text);font-weight:600;line-height:1.25}h1{font-size:28px;letter-spacing:-.02em}h2{font-size:22px;letter-spacing:-.01em}h3{font-size:18px}h4{font-size:16px}p{margin:0 0 12px}small,.text-caption{color:var(--boutic-text-muted);font-size:12px}a{color:var(--boutic-primary);text-decoration:none}a:hover{color:var(--boutic-primary-hover);text-decoration:underline}code,pre{font-family:var(--boutic-font-mono);font-size:13px}hr{height:1px;margin:20px 0;border:0;background:var(--boutic-border)}::placeholder{color:var(--boutic-text-faint)}::selection{background:var(--boutic-primary-soft);color:var(--boutic-primary-active)}:focus-visible{outline:2px solid var(--boutic-primary);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--boutic-border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--boutic-border-strong);border:2px solid transparent;border-radius:var(--boutic-radius-pill);background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--boutic-text-faint);background-clip:content-box}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 18px;border:1px solid transparent;border-radius:var(--boutic-radius-md);background:transparent;color:inherit;font:inherit;font-weight:600;line-height:1;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.btn:focus-visible{box-shadow:var(--boutic-ring)}.btn:disabled,.btn.is-disabled{opacity:.5;cursor:not-allowed}.btn--sm{height:32px;padding:0 12px;font-size:13px}.btn--lg{height:48px;padding:0 24px;font-size:16px}.btn--block{width:100%}.btn--primary{background:var(--boutic-primary);color:var(--boutic-on-primary)}.btn--primary:hover:not(:disabled){background:var(--boutic-primary-hover)}.btn--primary:active:not(:disabled){background:var(--boutic-primary-active)}.btn--secondary{border-color:var(--boutic-primary);background:var(--boutic-surface);color:var(--boutic-primary)}.btn--secondary:hover:not(:disabled){background:var(--boutic-primary-soft)}.btn--cta{background:var(--boutic-accent);color:var(--boutic-on-accent)}.btn--cta:hover:not(:disabled){background:var(--boutic-accent-hover)}.btn--cta:active:not(:disabled){background:var(--boutic-accent-active)}.btn--ghost{color:var(--boutic-text-muted)}.btn--ghost:hover:not(:disabled){background:var(--boutic-surface-hover);color:var(--boutic-text)}.btn--danger{background:var(--boutic-error);color:#fff}.btn--danger:hover:not(:disabled){background:var(--boutic-error-strong)}.card{padding:20px;border:1px solid var(--boutic-border);border-radius:var(--boutic-radius-lg);background:var(--boutic-surface);box-shadow:var(--boutic-shadow-sm)}.card__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-20px -20px 16px;padding:16px 20px;border-bottom:1px solid var(--boutic-border)}.card__title{margin:0;color:var(--boutic-text);font-size:16px;font-weight:600}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.page-header h1{margin-bottom:4px}.page-header p{margin:0;color:var(--boutic-text-muted)}.stats-card{position:relative;padding:18px 20px;overflow:hidden;border:1px solid var(--boutic-border);border-radius:var(--boutic-radius-lg);background:var(--boutic-surface);box-shadow:var(--boutic-shadow-sm)}.stats-card:before{position:absolute;inset:0 auto 0 0;width:4px;background:var(--boutic-primary);content:""}.stats-card--accent:before{background:var(--boutic-accent)}.stats-card--success:before{background:var(--boutic-success)}.stats-card--error:before{background:var(--boutic-error)}.stats-card__label{color:var(--boutic-text-muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.stats-card__value{margin-top:6px;color:var(--boutic-text);font-size:30px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stats-card__trend{margin-top:4px;font-size:13px;font-weight:600}.stats-card__trend--up{color:var(--boutic-success-strong)}.stats-card__trend--down{color:var(--boutic-error-strong)}.amount{color:var(--boutic-text);font-weight:700;font-variant-numeric:tabular-nums}.amount--price{color:var(--boutic-accent-active);font-size:18px}.amount--credit{color:var(--boutic-success-strong)}.amount--debit{color:var(--boutic-error-strong)}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border:1px solid transparent;border-radius:var(--boutic-radius-pill);font-size:12px;font-weight:600;line-height:18px;white-space:nowrap}.badge__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge--success{border-color:var(--boutic-success);background:var(--boutic-success-soft);color:var(--boutic-success-strong)}.badge--info{border-color:var(--boutic-info);background:var(--boutic-info-soft);color:var(--boutic-info-strong)}.badge--warning{border-color:var(--boutic-warning);background:var(--boutic-warning-soft);color:var(--boutic-warning-strong)}.badge--error{border-color:var(--boutic-error);background:var(--boutic-error-soft);color:var(--boutic-error-strong)}.badge--neutral{border-color:var(--boutic-border-strong);background:var(--boutic-surface-muted);color:var(--boutic-text-muted)}.badge--primary{border-color:var(--boutic-primary-border);background:var(--boutic-primary-soft);color:var(--boutic-primary-active)}.alert{display:flex;gap:12px;padding:14px 16px;border:1px solid;border-left-width:4px;border-radius:var(--boutic-radius-md);font-size:14px}.alert--success{border-color:var(--boutic-success);background:var(--boutic-success-soft);color:var(--boutic-success-strong)}.alert--info{border-color:var(--boutic-info);background:var(--boutic-info-soft);color:var(--boutic-info-strong)}.alert--warning{border-color:var(--boutic-warning);background:var(--boutic-warning-soft);color:var(--boutic-warning-strong)}.alert--error{border-color:var(--boutic-error);background:var(--boutic-error-soft);color:var(--boutic-error-strong)}.empty-state{padding:48px 24px;border:1px dashed var(--boutic-border-strong);border-radius:var(--boutic-radius-lg);background:var(--boutic-surface);color:var(--boutic-text-muted);text-align:center}.empty-state h3{margin-bottom:4px}.field{display:block;margin-bottom:16px}.field__label{display:block;margin-bottom:6px;color:var(--boutic-text-body);font-size:13px;font-weight:600}.field__control{width:100%;height:40px;padding:0 12px;border:1px solid var(--boutic-border-strong);border-radius:var(--boutic-radius-md);background:var(--boutic-surface);color:var(--boutic-text-body);font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.field__control:focus{border-color:var(--boutic-primary);box-shadow:var(--boutic-ring);outline:none}.field__control[aria-invalid=true]{border-color:var(--boutic-error)}.field__hint{margin-top:4px;color:var(--boutic-text-faint);font-size:12px}.field__error{margin-top:4px;color:var(--boutic-error-strong);font-size:12px}.table{width:100%;border-collapse:collapse;background:var(--boutic-surface)}.table th{padding:12px 16px;border-bottom:1px solid var(--boutic-border);background:var(--boutic-surface-muted);color:var(--boutic-text-muted);font-size:12px;letter-spacing:.04em;text-align:left;text-transform:uppercase}.table td{padding:12px 16px;border-bottom:1px solid var(--boutic-border);color:var(--boutic-text-body)}.table tbody tr:hover{background:var(--boutic-primary-soft)}.row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--boutic-space-3)}.section-title{margin:var(--boutic-space-6) 0 var(--boutic-space-3);color:var(--boutic-text-faint);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.spacer{flex:1 1 auto}.table-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--boutic-space-3)}.table-toolbar .btn app-icon,.bulk-bar .btn app-icon{margin-right:var(--boutic-space-2)}.bulk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--boutic-space-3);margin:var(--boutic-space-4) calc(var(--boutic-space-5) * -1) calc(var(--boutic-space-5) * -1);padding:var(--boutic-space-3) var(--boutic-space-5);border-top:1px solid var(--boutic-primary-border);background:var(--boutic-primary-soft);color:var(--boutic-primary-active)}.table-scroll{width:100%;overflow-x:auto}.boutic-table{width:100%;background:var(--boutic-surface)}.boutic-table th.mat-mdc-header-cell{background:var(--boutic-surface-muted);color:var(--boutic-text-muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.boutic-table td.mat-mdc-cell{color:var(--boutic-text-body);white-space:nowrap}.boutic-table tr.mat-mdc-row:hover{background:var(--boutic-primary-soft)}.boutic-table tr.row--selected{background:var(--boutic-primary-soft);box-shadow:inset 3px 0 0 var(--boutic-primary)}.boutic-table .mat-sort-header-arrow,.boutic-table [aria-sort=ascending],.boutic-table [aria-sort=descending]{color:var(--boutic-primary)}.col-select{width:48px}.col-amount{text-align:right}.col-actions{width:1%;text-align:right;white-space:nowrap}.empty-row{padding:var(--boutic-space-6) var(--boutic-space-4);color:var(--boutic-text-faint);text-align:center}.fill-cell{display:flex;align-items:center;gap:var(--boutic-space-3);min-width:160px}.fill-cell .mat-mdc-progress-bar{flex:1}.icon-btn{display:inline-grid;place-items:center;width:32px;height:32px;margin-left:2px;padding:0;border:0;border-radius:var(--boutic-radius-sm);background:transparent;color:var(--boutic-text-faint);cursor:pointer;transition:background-color .15s ease,color .15s ease}.icon-btn:hover:not(:disabled){background:var(--boutic-primary-soft);color:var(--boutic-primary)}.icon-btn:focus-visible{outline:2px solid var(--boutic-primary);outline-offset:1px}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn--accent:hover:not(:disabled){background:var(--boutic-accent-soft);color:var(--boutic-accent-active)}.icon-btn--danger:hover:not(:disabled){background:var(--boutic-error-soft);color:var(--boutic-error-strong)}@media(prefers-reduced-motion:reduce){.icon-btn{transition:none}}.text-primary{color:var(--boutic-primary)!important}.text-accent{color:var(--boutic-accent-active)!important}.text-heading{color:var(--boutic-text)!important}.text-body{color:var(--boutic-text-body)!important}.text-muted{color:var(--boutic-text-muted)!important}.text-faint{color:var(--boutic-text-faint)!important}.text-success{color:var(--boutic-success-strong)!important}.text-info{color:var(--boutic-info-strong)!important}.text-warning{color:var(--boutic-warning-strong)!important}.text-error{color:var(--boutic-error-strong)!important}.bg-surface{background:var(--boutic-surface)!important}.bg-surface-muted{background:var(--boutic-surface-muted)!important}.bg-primary{background:var(--boutic-primary)!important;color:var(--boutic-on-primary)!important}.bg-primary-soft{background:var(--boutic-primary-soft)!important}.bg-accent{background:var(--boutic-accent)!important;color:var(--boutic-on-accent)!important}.bg-dark{background:var(--boutic-dark)!important;color:var(--boutic-text-inverse)!important}.border-default{border:1px solid var(--boutic-border)!important}.rounded-md{border-radius:var(--boutic-radius-md)!important}.rounded-lg{border-radius:var(--boutic-radius-lg)!important}.shadow-sm{box-shadow:var(--boutic-shadow-sm)!important}.shadow-md{box-shadow:var(--boutic-shadow-md)!important}.page{max-width:1440px;margin:0 auto;padding:24px}.grid{display:grid;gap:16px}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1024px){.grid--3,.grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.page{padding:16px}.grid--2,.grid--3,.grid--4{grid-template-columns:minmax(0,1fr)}}
