@charset "UTF-8";:root{--color-primary-50: #EEF2FF;--color-primary-100: #E0E7FF;--color-primary-200: #C7D2FE;--color-primary-300: #A5B4FC;--color-primary-500: #6366F1;--color-primary-600: #4F46E5;--color-primary-700: #4338CA;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--color-success-bg: #ECFDF5;--color-success-text: #047857;--color-success: #10B981;--color-error-bg: #FEF2F2;--color-error-text: #B91C1C;--color-error: #EF4444;--color-warning-bg: #FFFBEB;--color-warning-text: #B45309;--color-warning: #F59E0B;--bg-app: #FFFFFF;--bg-subtle: var(--color-gray-50);--bg-card: #FFFFFF;--bg-hover: var(--color-gray-50);--bg-selected: var(--color-primary-50);--bg-sidebar: var(--color-gray-50);--border: var(--color-gray-200);--border-strong: var(--color-gray-300);--text-primary: var(--color-gray-900);--text-secondary: var(--color-gray-500);--text-muted: var(--color-gray-400);--text-inverse: #FFFFFF;--accent: var(--color-primary-600);--accent-hover: var(--color-primary-700);--accent-subtle: var(--color-primary-50);--focus-ring: var(--color-primary-300);--bg-media: #FFFFFF;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", Consolas, monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-md: .875rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow-md: 0 4px 8px -2px rgba(16, 24, 40, .1), 0 2px 4px -2px rgba(16, 24, 40, .06);--shadow-lg: 0 12px 16px -4px rgba(16, 24, 40, .08), 0 4px 6px -2px rgba(16, 24, 40, .03);--sidebar-width: 240px;--topbar-height: 56px;--transition: .15s ease}[data-theme=dark]{--bg-app: #0D1117;--bg-subtle: #161B22;--bg-card: #161B22;--bg-hover: #1F2530;--bg-selected: rgba(99, 102, 241, .12);--bg-sidebar: #10151C;--border: #2A313C;--border-strong: #3A424E;--text-primary: #E6EAF0;--text-secondary: #8B949E;--text-muted: #6E7681;--accent: var(--color-primary-500);--accent-hover: var(--color-primary-300);--accent-subtle: rgba(99, 102, 241, .12);--focus-ring: var(--color-primary-700);--color-success-bg: rgba(16, 185, 129, .12);--color-success-text: #34D399;--color-error-bg: rgba(239, 68, 68, .12);--color-error-text: #F87171;--color-warning-bg: rgba(245, 158, 11, .12);--color-warning-text: #FBBF24;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 16px -4px rgba(0, 0, 0, .5)}html{color-scheme:light;--mdc-checkbox-state-layer-size: 36px;--mdc-chip-container-height: 28px;--mdc-text-button-container-height: 36px;--mdc-protected-button-container-height: 36px;--mdc-filled-button-container-height: 36px;--mdc-outlined-button-container-height: 36px;--mdc-icon-button-state-layer-size: 36px;--mdc-list-list-item-one-line-container-height: 44px;--mdc-list-list-item-two-line-container-height: 60px;--mdc-list-list-item-three-line-container-height: 84px;--mdc-radio-state-layer-size: 36px;--mdc-secondary-navigation-tab-container-height: 44px;--mat-checkbox-touch-target-display: block;--mat-expansion-header-collapsed-state-height: 44px;--mat-expansion-header-expanded-state-height: 60px;--mat-fab-touch-target-display: block;--mat-form-field-container-height: 52px;--mat-form-field-filled-label-display: block;--mat-form-field-container-vertical-padding: 14px;--mat-form-field-filled-with-label-container-padding-top: 22px;--mat-form-field-filled-with-label-container-padding-bottom: 6px;--mat-icon-button-touch-target-display: block;--mat-list-list-item-leading-icon-start-space: 12px;--mat-list-list-item-leading-icon-end-space: 12px;--mat-text-button-touch-target-display: block;--mat-protected-button-touch-target-display: block;--mat-filled-button-touch-target-display: block;--mat-outlined-button-touch-target-display: block;--mat-paginator-container-size: 52px;--mat-paginator-form-field-container-height: 40px;--mat-paginator-form-field-container-vertical-padding: 8px;--mat-paginator-touch-target-display: block;--mat-radio-touch-target-display: block;--mat-select-arrow-transform: translateY(-8px);--mat-standard-button-toggle-height: 40px;--mat-stepper-header-height: 68px;--mat-table-header-container-height: 52px;--mat-table-footer-container-height: 48px;--mat-table-row-item-container-height: 48px;--mat-toolbar-standard-height: 60px;--mat-toolbar-mobile-height: 52px;--mat-tree-node-min-height: 44px}html{--mat-sys-background: light-dark(#fef8fc, #151316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f5eff4, #323033);--mat-sys-inverse-primary: light-dark(#d5baff, #7d00fa);--mat-sys-inverse-surface: light-dark(#323033, #e6e1e6);--mat-sys-on-background: light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #42008a);--mat-sys-on-primary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-primary-fixed: light-dark(#270057, #270057);--mat-sys-on-primary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-on-secondary: light-dark(#ffffff, #352d40);--mat-sys-on-secondary-container: light-dark(#4b4357, #eadef7);--mat-sys-on-secondary-fixed: light-dark(#1f182a, #1f182a);--mat-sys-on-secondary-fixed-variant: light-dark(#4b4357, #4b4357);--mat-sys-on-surface: light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-surface-variant: light-dark(#49454e, #e8e0eb);--mat-sys-on-tertiary: light-dark(#ffffff, #42008a);--mat-sys-on-tertiary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-tertiary-fixed: light-dark(#270057, #270057);--mat-sys-on-tertiary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-outline: light-dark(#7b757f, #958e99);--mat-sys-outline-variant: light-dark(#cbc4cf, #49454e);--mat-sys-primary: light-dark(#7d00fa, #d5baff);--mat-sys-primary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-primary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-primary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#645b70, #cec2db);--mat-sys-secondary-container: light-dark(#eadef7, #4b4357);--mat-sys-secondary-fixed: light-dark(#eadef7, #eadef7);--mat-sys-secondary-fixed-dim: light-dark(#cec2db, #cec2db);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fef8fc, #151316);--mat-sys-surface-bright: light-dark(#fef8fc, #3b383c);--mat-sys-surface-container: light-dark(#f2ecf1, #211f22);--mat-sys-surface-container-high: light-dark(#ede6eb, #2b292d);--mat-sys-surface-container-highest: light-dark(#e6e1e6, #363437);--mat-sys-surface-container-low: light-dark(#f8f2f6, #1d1b1e);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0f0d11);--mat-sys-surface-dim: light-dark(#ded8dd, #151316);--mat-sys-surface-tint: light-dark(#7d00fa, #d5baff);--mat-sys-surface-variant: light-dark(#e8e0eb, #49454e);--mat-sys-tertiary: light-dark(#7d00fa, #d5baff);--mat-sys-tertiary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-tertiary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-tertiary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-neutral-variant20: #332f37;--mat-sys-neutral10: #1d1b1e}html{--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)}html{--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)}html{--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)}html{--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)}html{--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)}html{--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)}html{--mat-sys-body-large: 400 1rem / 1.5rem var(--font-sans);--mat-sys-body-large-font: var(--font-sans);--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 var(--font-sans);--mat-sys-body-medium-font: var(--font-sans);--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 var(--font-sans);--mat-sys-body-small-font: var(--font-sans);--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 var(--font-sans);--mat-sys-display-large-font: var(--font-sans);--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 var(--font-sans);--mat-sys-display-medium-font: var(--font-sans);--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 var(--font-sans);--mat-sys-display-small-font: var(--font-sans);--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 var(--font-sans);--mat-sys-headline-large-font: var(--font-sans);--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 var(--font-sans);--mat-sys-headline-medium-font: var(--font-sans);--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 var(--font-sans);--mat-sys-headline-small-font: var(--font-sans);--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 var(--font-sans);--mat-sys-label-large-font: var(--font-sans);--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: 600;--mat-sys-label-medium: 500 .75rem / 1rem var(--font-sans);--mat-sys-label-medium-font: var(--font-sans);--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: 600;--mat-sys-label-small: 500 .688rem / 1rem var(--font-sans);--mat-sys-label-small-font: var(--font-sans);--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 var(--font-sans);--mat-sys-title-large-font: var(--font-sans);--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 var(--font-sans);--mat-sys-title-medium-font: var(--font-sans);--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 var(--font-sans);--mat-sys-title-small-font: var(--font-sans);--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}html{--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}html{--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}html{--mat-sys-primary: var(--accent);--mat-sys-on-primary: var(--text-inverse);--mat-sys-primary-container: var(--accent-subtle);--mat-sys-on-primary-container: var(--accent);--mat-sys-surface: var(--bg-app);--mat-sys-surface-container: var(--bg-card);--mat-sys-surface-container-low: var(--bg-subtle);--mat-sys-surface-container-high: var(--bg-card);--mat-sys-surface-container-highest: var(--bg-hover);--mat-sys-on-surface: var(--text-primary);--mat-sys-on-surface-variant: var(--text-secondary);--mat-sys-outline: var(--border-strong);--mat-sys-outline-variant: var(--border);--mat-sys-error: var(--color-error);--mat-sys-on-error: var(--text-inverse);--mat-sys-error-container: var(--color-error-bg);--mat-sys-on-error-container: var(--color-error-text);--mat-sys-corner-extra-small: var(--radius-sm);--mat-sys-corner-small: var(--radius-sm);--mat-sys-corner-medium: var(--radius-md);--mat-sys-corner-large: var(--radius-lg);--mat-sys-corner-full: 999px}html[data-theme=dark]{color-scheme:dark}html{--mdc-filled-button-container-shape: var(--radius-sm)}html{--mdc-outlined-button-container-shape: var(--radius-sm)}html{--mdc-text-button-container-shape: var(--radius-sm)}html{--mdc-outlined-button-outline-color: var(--border-strong)}html{--mdc-elevated-card-container-color: var(--bg-card)}html{--mdc-elevated-card-container-elevation: none}html{--mdc-outlined-card-container-color: var(--bg-card)}html{--mdc-outlined-card-outline-color: var(--border)}html{--mdc-elevated-card-container-shape: var(--radius-lg)}html{--mdc-outlined-card-container-shape: var(--radius-lg)}html{--mat-table-background-color: var(--bg-card)}html{--mat-table-header-headline-color: var(--text-secondary)}html{--mat-table-header-headline-size: var(--text-sm)}html{--mat-table-header-headline-weight: 500}html{--mat-table-row-item-label-text-size: var(--text-sm)}html{--mat-table-row-item-outline-color: var(--border)}html{--mat-table-header-container-height: 40px}html{--mat-table-row-item-container-height: 44px}html{--mdc-outlined-text-field-outline-color: var(--border-strong)}html{--mdc-outlined-text-field-focus-outline-color: var(--accent)}html{--mdc-outlined-text-field-container-shape: var(--radius-sm)}html{--mdc-tab-indicator-active-indicator-color: var(--accent)}html{--mat-tab-header-active-label-text-color: var(--accent)}html{--mat-tab-header-inactive-label-text-color: var(--text-secondary)}html{--mat-tab-header-divider-color: var(--border)}html{--mat-menu-container-color: var(--bg-card)}html{--mat-menu-container-shape: var(--radius-md)}html{--mat-sidenav-container-background-color: var(--bg-card)}html{--mat-sidenav-container-shape: 0}html{--mdc-snackbar-container-color: var(--bg-card)}html{--mdc-snackbar-supporting-text-color: var(--text-primary)}html{--mdc-snackbar-container-shape: var(--radius-md)}html{--mdc-chip-container-shape-radius: 999px}html{--mdc-chip-label-text-size: var(--text-xs)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font:inherit;font-size:var(--text-md);font-weight:500;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background var(--transition),border-color var(--transition);white-space:nowrap}.btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.btn-primary{background:var(--accent);color:var(--text-inverse)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-strong)}.btn-secondary:hover{background:var(--bg-hover)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--color-error);color:var(--text-inverse)}.btn-danger:hover{filter:brightness(.9)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.btn-icon{padding:var(--space-2)}.icon{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-lg{width:20px;height:20px}.field{display:flex;flex-direction:column;gap:var(--space-1);max-width:320px}.field label{font-size:var(--text-sm);font-weight:500}.field .hint{font-size:var(--text-xs);color:var(--text-secondary)}.field .error-msg{font-size:var(--text-xs);color:var(--color-error-text)}.input,.select{font:inherit;font-size:var(--text-md);padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);transition:border-color var(--transition),box-shadow var(--transition);width:100%}.input:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.input.error{border-color:var(--color-error)}.input::placeholder{color:var(--text-muted)}.input:disabled,.select:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-subtle)}.select{appearance:none;color:var(--text-secondary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;background-size:16px;padding-right:var(--space-8)}.select:has(option:checked:not([value=""])){color:var(--text-primary)}.search-input{position:relative}.search-input .icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-input .input{padding-left:var(--space-8)}.badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:500;padding:2px 8px;border-radius:999px}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-neutral{background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border)}.badge-primary{background:var(--accent-subtle);color:var(--accent)}.badge-success{background:var(--color-success-bg);color:var(--color-success-text)}.badge-error{background:var(--color-error-bg);color:var(--color-error-text)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5)}.card-title{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.entity-editor-grid{display:flex;flex-direction:column;gap:var(--space-6)}.pending-field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3)}.detail-layout-with-hero{display:flex;gap:var(--space-6);flex-wrap:wrap;align-items:flex-start}.detail-layout-with-hero .detail-fields{flex:1 1 320px}.detail-hero{flex:0 0 auto;width:280px;max-width:100%;display:flex;align-items:center;justify-content:center}.detail-hero-img{width:100%;max-height:320px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-media);object-fit:contain;display:block;cursor:zoom-in}.detail-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-5) var(--space-6)}.detail-field-wide{grid-column:1/-1}.detail-field-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:var(--space-1)}.detail-field-value{font-size:var(--text-md);color:var(--text-primary);line-height:1.5;word-break:break-word}.detail-field-empty{color:var(--text-muted)}.card-value{font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;margin-top:var(--space-1)}.card-trend{font-size:var(--text-sm);margin-top:var(--space-2);display:flex;align-items:center;gap:var(--space-1)}.trend-up{color:var(--color-success-text)}.trend-down{color:var(--color-error-text)}.dropdown{position:relative;display:inline-block}.menu{position:fixed;z-index:100;min-width:200px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1);display:none}.dropdown.open .menu{display:block}.menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;font:inherit;font-size:var(--text-md);padding:var(--space-2) var(--space-3);border:none;background:none;cursor:pointer;border-radius:var(--radius-sm);color:var(--text-primary);text-align:left}.menu-item:hover{background:var(--bg-hover)}.menu-item.danger{color:var(--color-error-text)}.menu-item.active{background:var(--accent-subtle);color:var(--accent)}.menu-sep{height:1px;background:var(--border);margin:var(--space-1) 0}.select-dropdown{display:block;width:100%}.select-trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;font:inherit;font-size:var(--text-md);padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition),box-shadow var(--transition)}.select-trigger .icon{color:var(--text-secondary);flex-shrink:0}.select-trigger span.placeholder{color:var(--text-secondary)}.select-trigger:hover{background:var(--bg-hover)}.select-trigger:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.select-trigger:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-subtle)}.select-dropdown .menu{max-height:280px;overflow-y:auto}.breadcrumbs{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary)}.breadcrumbs a{color:var(--text-secondary);text-decoration:none}.breadcrumbs a:hover{color:var(--text-primary)}.breadcrumbs .sep{color:var(--text-muted)}.breadcrumbs .current{color:var(--text-primary);font-weight:500}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin:var(--space-3) 0 var(--space-6);flex-wrap:wrap}.page-header h2{font-size:var(--text-2xl);font-weight:600;letter-spacing:-.02em}.page-header p{color:var(--text-secondary);font-size:var(--text-md);margin-top:2px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-card)}.table-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-wrap:wrap}.table-toolbar .spacer{flex:1}table.data{width:100%;border-collapse:collapse;font-size:var(--text-sm)}table.data th{text-align:left;font-weight:500;color:var(--text-secondary);padding:var(--space-2) var(--space-4);background:var(--bg-subtle);border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none}table.data th.sortable{cursor:pointer}table.data th.sortable:hover{color:var(--text-primary)}table.data th .sort{display:inline-flex;vertical-align:middle;margin-left:4px}table.data td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}table.data tbody tr{transition:background var(--transition)}table.data tbody tr:hover{background:var(--bg-hover)}table.data tbody tr.selected{background:var(--bg-selected)}table.data tbody tr.clickable{cursor:pointer}table.data tbody tr:last-child td{border-bottom:none}table.data tbody tr:has(+tr.row-fullwidth) td{border-bottom:none}table.data tbody tr.row-fullwidth td{padding-top:0}.row-fullwidth-label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:var(--space-1)}.row-fullwidth-value{white-space:pre-wrap;color:var(--text-primary)}.table-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);font-size:var(--text-sm);color:var(--text-secondary);flex-wrap:wrap;gap:var(--space-3)}.pagination{display:flex;gap:var(--space-1)}.page-btn{min-width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:var(--text-sm);border:1px solid transparent;border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--text-secondary)}.page-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.page-btn.active{background:var(--accent);color:var(--text-inverse)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.checkbox{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:200;display:flex;flex-direction:column;gap:var(--space-2)}.toast{display:flex;align-items:center;gap:var(--space-3);min-width:300px;max-width:400px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);animation:toast-in .2s ease}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.toast .icon-lg{flex-shrink:0}.toast-success .icon-lg{color:var(--color-success)}.toast-error .icon-lg{color:var(--color-error)}.toast-warning .icon-lg{color:var(--color-warning)}.toast-info .icon-lg{color:var(--accent)}.toast .toast-title{font-weight:500}.toast .toast-msg{color:var(--text-secondary)}.toast .close{margin-left:auto}.lightbox-overlay{position:fixed;inset:0;z-index:200;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:var(--space-6);cursor:zoom-out}.lightbox-overlay img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:var(--radius-md);cursor:default;box-shadow:var(--shadow-lg)}.lightbox-close{position:fixed;top:var(--space-4);right:var(--space-4);width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff1a;border:none;border-radius:50%;color:var(--text-inverse);cursor:pointer;transition:background var(--transition)}.lightbox-close:hover{background:#fff3}.drawer-overlay{position:fixed;inset:0;background:#11182766;z-index:90}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:100;width:min(440px,100vw);background:var(--bg-card);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.drawer>form{flex:1;min-height:0;display:flex;flex-direction:column}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.drawer-header h4{font-size:var(--text-lg);font-weight:600}.drawer-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-5)}.drawer-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border)}.drag-handle{display:inline-flex;color:var(--text-muted);cursor:grab}.drag-handle:active{cursor:grabbing}table.data tr.cdk-drag-preview{display:table;background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}table.data tr.cdk-drag-placeholder{opacity:.3}table.data tr.cdk-drag-animating{transition:transform .2s ease}*{box-sizing:border-box}html,body{margin:0;height:100%}body{font-family:var(--font-sans);font-size:var(--text-md);color:var(--text-primary);background:var(--bg-app);line-height:1.5;-webkit-font-smoothing:antialiased}.mat-mdc-table,table{font-variant-numeric:tabular-nums}
