:root{--color-primary: #49bdf5;--color-secondary: #9b51e0;--color-accent: #1a73e8;--color-neutral: #abb8c3;--color-primary-600: #2563eb;--color-primary-700: #1d4ed8;--color-primary-800: #1e3a8a;--color-primary-100: #e0f4fe;--color-primary-200: #b9e7fc;--color-primary-light: #7cd0f8;--color-neutral-50: #f8f9fa;--color-neutral-100: #e9ecef;--color-neutral-200: #dee2e6;--color-neutral-300: #ced4da;--color-neutral-400: #abb8c3;--color-neutral-500: #6c757d;--color-neutral-600: #495057;--color-neutral-700: #333333;--color-neutral-800: #212529;--color-neutral-900: #000000;--color-background: var(--color-neutral-50);--color-surface: #ffffff;--color-surface-dark: #1f2933;--color-white: #ffffff;--color-text-primary: var(--color-neutral-700);--color-text-secondary: #666666;--color-text-primary-strong: #111827;--color-text-secondary-strong: #6b7280;--color-text-muted-strong: #9ca3af;--color-text-tertiary: var(--color-neutral-500);--color-text-muted: #999999;--color-link: var(--color-accent);--color-link-hover: var(--color-accent-hover);--color-link-strong: #2563eb;--color-link-strong-hover: #1d4ed8;--color-link-strong-active: #1e3a8a;--color-border-light: var(--color-neutral-100);--color-border-default: var(--color-neutral-200);--color-border: var(--color-border-default);--color-border-input: var(--color-neutral-300);--color-border-hover: var(--color-primary);--color-border-subtle: #e5e7eb;--color-primary-hover: #3ba7d9;--color-background-active: var(--color-primary-alpha-10);--color-secondary-hover: #8845c7;--color-accent-hover: #2b7de9;--color-neutral-hover: #9ba6b0;--color-surface-subtle: #f9fafb;--color-surface-muted: #f3f4f6;--color-primary-alpha-10: rgb(73 189 245 / .1);--color-primary-alpha-20: rgb(73 189 245 / .2);--color-primary-alpha-25: rgb(73 189 245 / .25);--color-primary-alpha-30: rgb(73 189 245 / .3);--color-secondary-alpha-10: rgb(155 81 224 / .1);--color-secondary-alpha-20: rgb(155 81 224 / .2);--color-secondary-alpha-25: rgb(155 81 224 / .25);--color-secondary-alpha-30: rgb(155 81 224 / .3);--color-accent-alpha-10: rgb(26 115 232 / .1);--color-accent-alpha-20: rgb(26 115 232 / .2);--color-accent-alpha-25: rgb(26 115 232 / .25);--color-accent-alpha-30: rgb(26 115 232 / .3);--color-success-alpha-10: rgb(40 167 69 / .1);--color-success-alpha-20: rgb(40 167 69 / .2);--color-success-alpha-30: rgb(40 167 69 / .3);--color-error-alpha-10: rgb(220 53 69 / .1);--color-error-alpha-20: rgb(220 53 69 / .2);--color-error-alpha-25: rgb(220 53 69 / .25);--color-error-alpha-30: rgb(220 53 69 / .3);--color-warning-alpha-10: rgb(255 193 7 / .1);--color-warning-alpha-20: rgb(255 193 7 / .2);--color-warning-alpha-30: rgb(255 193 7 / .3);--color-info-alpha-10: rgb(23 162 184 / .1);--color-info-alpha-20: rgb(23 162 184 / .2);--color-info-alpha-30: rgb(23 162 184 / .3);--color-neutral-alpha-10: rgb(108 117 125 / .1);--color-black-alpha-04: rgb(0 0 0 / .04);--color-black-alpha-05: rgb(0 0 0 / .05);--color-black-alpha-06: rgb(0 0 0 / .06);--color-black-alpha-08: rgb(0 0 0 / .08);--color-black-alpha-10: rgb(0 0 0 / .1);--color-black-alpha-12: rgb(0 0 0 / .12);--color-black-alpha-15: rgb(0 0 0 / .15);--color-black-alpha-20: rgb(0 0 0 / .2);--color-black-alpha-25: rgb(0 0 0 / .25);--color-black-alpha-30: rgb(0 0 0 / .3);--color-black-alpha-40: rgb(0 0 0 / .4);--color-black-alpha-50: rgb(0 0 0 / .5);--color-black-alpha-60: rgb(0 0 0 / .6);--color-black-alpha-70: rgb(0 0 0 / .7);--color-black-alpha-80: rgb(0 0 0 / .8);--color-white-alpha-10: rgb(255 255 255 / .1);--color-white-alpha-15: rgb(255 255 255 / .15);--color-white-alpha-20: rgb(255 255 255 / .2);--color-white-alpha-30: rgb(255 255 255 / .3);--color-white-alpha-90: rgb(255 255 255 / .9);--color-white-alpha-95: rgb(255 255 255 / .95);--color-search-alpha-16: rgb(64 60 67 / .16);--color-search-alpha-24: rgb(64 60 67 / .24);--color-indigo-alpha-10: rgb(79 70 229 / .1);--color-indigo-alpha-20: rgb(79 70 229 / .2);--color-overlay-dark: var(--color-black-alpha-50);--color-overlay-light: var(--color-white-alpha-90);--color-success: #28a745;--color-success-light: #d4edda;--color-success-dark: #155724;--color-error: #dc3545;--color-error-strong: #dc2626;--color-error-strong-hover: #b91c1c;--color-error-border-light: #fecaca;--color-error-surface-light: #fef2f2;--color-danger: var(--color-error);--color-error-light: #f8d7da;--color-error-dark: #721c24;--color-danger-dark: var(--color-error-dark);--color-warning: #ffc107;--color-warning-light: #fff3cd;--color-warning-dark: #856404;--color-info: #17a2b8;--color-info-light: #d1ecf1;--color-info-dark: #0c5460;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-family-mono: "Consolas", "Monaco", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-xxl: 1.5rem;--font-size-xxxl: 2rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-base: 1.5;--line-height-relaxed: 1.75;--radius-sm: .25rem;--radius-base: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-round: 50%;--shadow-xs: 0 1px 2px rgb(0 0 0 / .05);--shadow-sm: 0 2px 4px rgb(0 0 0 / .1);--shadow-base: 0 4px 6px rgb(0 0 0 / .1);--shadow-md: 0 8px 12px rgb(0 0 0 / .1);--shadow-lg: 0 16px 24px rgb(0 0 0 / .1);--shadow-xl: 0 24px 48px rgb(0 0 0 / .12);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-duration-pulse: .6s;--z-index-dropdown: 1000;--z-index-modal: 2000;--z-index-popover: 3000;--z-index-tooltip: 4000;--z-index-notification: 5000;--breakpoint-xs: 0;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--breakpoint-xxl: 1400px;--color-table-badge-text: var(--color-text-secondary);--color-table-badge-border: var(--color-neutral-200);--color-table-badge-background: transparent}:root{--purehd-blue: var(--color-primary);--purehd-purple: var(--color-secondary);--purehd-cyan: var(--color-accent);--purehd-gray: var(--color-neutral);--purehd-dark: var(--color-text-primary);--purehd-light: var(--color-background)}:root{--transition-duration-fast: .15s;--transition-duration-base: .2s;--transition-duration-slow: .3s;--transition-duration-pulse: 1.5s;--transition-ease-in: cubic-bezier(.4, 0, 1, 1);--transition-ease-out: cubic-bezier(0, 0, .2, 1);--transition-ease-in-out: cubic-bezier(.4, 0, .2, 1);--transition-ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--transition-delay-none: 0ms;--transition-delay-short: .1s;--transition-delay-medium: .2s;--transition-delay-long: .3s}@keyframes pulse{0%,to{transform:scale(.8);opacity:.3}50%{transform:scale(1);opacity:1}}@keyframes pulse-opacity{0%,to{opacity:.4}50%{opacity:1}}@keyframes slide-in-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-in-down{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slide-out-up{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}@keyframes slide-out-down{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@media (prefers-reduced-motion: reduce){@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}@keyframes slide-in-up{0%{opacity:0}to{opacity:1}}@keyframes slide-in-down{0%{opacity:0}to{opacity:1}}@keyframes slide-out-up{0%{opacity:1}to{opacity:0}}@keyframes slide-out-down{0%{opacity:1}to{opacity:0}}}:root[data-theme=dark]{--color-neutral-50: #0a0e12;--color-neutral-100: #131820;--color-neutral-200: #1a2028;--color-neutral-300: #292e36;--color-neutral-400: #3c4043;--color-neutral-500: #5f6368;--color-neutral-600: #9aa0a6;--color-neutral-700: #c3c7cc;--color-neutral-800: #e8eaed;--color-neutral-900: #f8f9fa;--color-background: #0a0e12;--color-surface: #131820;--color-text-primary: #e8eaed;--color-text-secondary: #9aa0a6;--color-text-muted: #5f6368;--color-link: var(--color-accent);--color-link-hover: var(--color-accent-hover);--color-border-light: #292e36;--color-border-default: #3c4043;--color-border-input: #3c4043;--color-border-hover: var(--color-primary);--color-primary: #4db6ef;--color-secondary: #a865e8;--color-accent: #1a73e8;--color-primary-hover: #60c4f7;--color-secondary-hover: #b57aef;--color-accent-hover: #2b7de9;--color-success: #34a853;--color-success-light: #1a2d21;--color-success-dark: #34a853;--color-error: #ea4335;--color-error-light: #2d1a1a;--color-error-dark: #ea4335;--color-warning: #ffa726;--color-warning-light: #2d2617;--color-warning-dark: #ffa726;--color-info: #4db6ef;--color-info-light: #1a2028;--color-info-dark: #4db6ef;--purehd-blue: #4db6ef;--purehd-purple: #a865e8;--purehd-cyan: #1a73e8;--purehd-gray: #9aa0a6;--purehd-dark: #e8eaed;--purehd-light: #0a0e12;--shadow-xs: 0 1px 2px rgb(0 0 0 / .3);--shadow-sm: 0 2px 4px rgb(0 0 0 / .4);--shadow-base: 0 4px 6px rgb(0 0 0 / .5);--shadow-md: 0 8px 12px rgb(0 0 0 / .6);--shadow-lg: 0 16px 24px rgb(0 0 0 / .7);--shadow-xl: 0 24px 48px rgb(0 0 0 / .8)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-neutral-50: #0a0e12;--color-neutral-100: #131820;--color-neutral-200: #1a2028;--color-neutral-300: #292e36;--color-neutral-400: #3c4043;--color-neutral-500: #5f6368;--color-neutral-600: #9aa0a6;--color-neutral-700: #c3c7cc;--color-neutral-800: #e8eaed;--color-neutral-900: #f8f9fa;--color-background: #0a0e12;--color-surface: #131820;--color-text-primary: #e8eaed;--color-text-secondary: #9aa0a6;--color-text-muted: #5f6368;--color-link: var(--color-accent);--color-link-hover: var(--color-accent-hover);--color-border-light: #292e36;--color-border-default: #3c4043;--color-border-input: #3c4043;--color-border-hover: var(--color-primary);--color-primary: #4db6ef;--color-secondary: #a865e8;--color-accent: #1a73e8;--color-primary-hover: #60c4f7;--color-secondary-hover: #b57aef;--color-accent-hover: #2b7de9;--color-success: #34a853;--color-success-light: #1a2d21;--color-success-dark: #34a853;--color-error: #ea4335;--color-error-light: #2d1a1a;--color-error-dark: #ea4335;--color-warning: #ffa726;--color-warning-light: #2d2617;--color-warning-dark: #ffa726;--color-info: #4db6ef;--color-info-light: #1a2028;--color-info-dark: #4db6ef;--purehd-blue: #4db6ef;--purehd-purple: #a865e8;--purehd-cyan: #1a73e8;--purehd-gray: #9aa0a6;--purehd-dark: #e8eaed;--purehd-light: #0a0e12;--shadow-xs: 0 1px 2px rgb(0 0 0 / .3);--shadow-sm: 0 2px 4px rgb(0 0 0 / .4);--shadow-base: 0 4px 6px rgb(0 0 0 / .5);--shadow-md: 0 8px 12px rgb(0 0 0 / .6);--shadow-lg: 0 16px 24px rgb(0 0 0 / .7);--shadow-xl: 0 24px 48px rgb(0 0 0 / .8)}}body{transition:background-color var(--transition-slow),color var(--transition-slow)}[data-theme=dark] body{min-height:100vh;min-height:100dvh;background:linear-gradient(180deg,var(--color-background) 0%,#0d1117 100%)}[data-theme=dark] .dashboard{background:linear-gradient(135deg,#0a0e12,#0f1419,#0d1117)}[data-theme=dark] .logo-image{filter:brightness(1.2)}[data-theme=dark] .form-input{border-color:var(--color-border-input);color:var(--color-text-primary);background-color:var(--color-neutral-200)}[data-theme=dark] .form-input:disabled{color:var(--color-text-primary);background-color:var(--color-neutral-300)}[data-theme=dark] .form-input:focus,[data-theme=dark] .form-field-error .form-input:focus{box-shadow:0 0 0 3px var(--color-primary-alpha-25)}[data-theme=dark] .form-control{border-color:var(--color-border-input);color:var(--color-text-primary);background-color:var(--color-neutral-200)}[data-theme=dark] .form-control:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha-25)}[data-theme=dark] .form-control:disabled{color:var(--color-text-primary);background-color:var(--color-neutral-300)}[data-theme=dark] .autocomplete-dropdown{border-color:var(--color-border-input);background:var(--color-neutral-200);box-shadow:0 8px 16px var(--color-black-alpha-30)}[data-theme=dark] .autocomplete-dropdown.empty{color:var(--color-text-secondary)}[data-theme=dark] .autocomplete-item:hover,[data-theme=dark] .autocomplete-item.is-active{background:var(--color-accent-alpha-20)}[data-theme=dark] .readonly-field{background-color:var(--color-neutral-200)}[data-theme=dark] .form-control-select{background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23e8eaed' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}[data-theme=dark] .form-field-error .form-control{border-color:var(--color-error)}[data-theme=dark] .form-field-error .form-control:focus{border-color:var(--color-error);box-shadow:0 0 0 3px var(--color-error-alpha-25)}[data-theme=dark] .button:focus-visible{box-shadow:0 0 0 3px var(--color-primary-alpha-30)}[data-theme=dark] .modal-overlay{background-color:var(--color-black-alpha-80)}[data-theme=dark] .status-card,[data-theme=dark] .user-card,[data-theme=dark] .holidays-card,[data-theme=dark] .card{border:1px solid var(--color-border-light);background:var(--color-neutral-200);box-shadow:0 2px 8px var(--color-black-alpha-30),0 1px 2px var(--color-black-alpha-20)}[data-theme=dark] .status-card h2,[data-theme=dark] .user-card h2,[data-theme=dark] .holidays-card h2,[data-theme=dark] .card-title{color:var(--color-text-primary)}[data-theme=dark] .status-card p,[data-theme=dark] .status-card li,[data-theme=dark] .user-card p,[data-theme=dark] .holidays-card p{color:var(--color-text-secondary)}[data-theme=dark] .status-card li,[data-theme=dark] .user-card p,[data-theme=dark] .holidays-card p,[data-theme=dark] .card p:not(.card-title){color:#b8bfc6}[data-theme=dark] .user-card .user-role,[data-theme=dark] .status-card li{color:#a8b2bd}[data-theme=dark] .card-link:hover,[data-theme=dark] .button-primary:hover{transform:translateY(-1px);background:var(--color-primary-hover);box-shadow:0 2px 8px var(--color-primary-alpha-30)}[data-theme=dark] .button:focus,[data-theme=dark] .card-link:focus{box-shadow:0 0 0 3px var(--color-primary-alpha-25)}[data-theme=dark] .toggle-switch{background-color:var(--color-neutral-500)}[data-theme=dark] .toggle-switch:disabled{background-color:var(--color-neutral-600)}[data-theme=dark] .toggle-switch:hover:not(:disabled){background-color:var(--color-neutral-600)}[data-theme=dark] .toggle-status.inactive{color:var(--color-warning)}.form-control-select{cursor:pointer;padding-right:2.5rem;font-style:italic;color:var(--color-text-secondary);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px 12px;transition:border-color .2s ease,box-shadow .2s ease}.page-header-with-breadcrumbs{margin-bottom:var(--spacing-xl)}.page-header-content{display:flex;gap:var(--spacing-lg);align-items:flex-start;justify-content:space-between}.page-header-main{flex:1 1 33%;min-width:min(400px,100%)}.page-title-row{display:flex;gap:var(--spacing-sm);align-items:center}.page-header-star{cursor:pointer;position:relative;top:-.55rem;display:inline-flex;align-items:center;justify-content:center;width:var(--font-size-xxl);height:var(--font-size-xxl);padding:0;border:none;font-size:calc(var(--font-size-xxl) * .9);line-height:var(--font-size-xxl);vertical-align:middle;background:transparent}.page-header-param-selector{position:relative;top:-.35rem;margin-left:var(--spacing-md)}.page-header-param-selector select{cursor:pointer;min-width:250px;padding:.375rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--color-bg-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.page-header-param-selector select:hover{border-color:var(--color-primary)}.page-header-param-selector select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-primary-alpha)}.page-header-actions{display:flex;gap:var(--spacing-md);align-items:center;margin-top:var(--spacing-md)}.breadcrumbs{display:flex;align-items:center;margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.breadcrumbs a{color:var(--color-link);text-decoration:none;transition:color var(--transition-base)}.breadcrumbs a:hover{color:var(--color-link-hover);text-decoration:underline}.breadcrumb-separator{margin:0 var(--spacing-xs);color:var(--color-text-muted)}.breadcrumb-current{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.page-title{margin:0;font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.stats-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0 2rem}.stat-card{padding:1.25rem;border:1px solid var(--color-border-light);border-radius:8px;text-align:center;background:var(--color-surface);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-label{margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.stat-value{margin:0;font-size:2rem;font-weight:600;color:var(--color-text-primary)}.stat-description{margin-top:.25rem;font-size:.9rem;color:var(--color-text-secondary)}@media (width <= 1200px){.stats-summary{grid-template-columns:repeat(2,1fr)}}@media (width <= 768px){.stats-summary{grid-template-columns:1fr;gap:.75rem;margin:1rem 0}.stat-card{padding:1rem}.stat-value{font-size:1.5rem}}.stat-card.variant-success .stat-value{color:var(--color-success)}.stat-card.variant-warning .stat-value{color:var(--color-warning)}.stat-card.variant-error .stat-value{color:var(--color-error)}.stat-card.variant-info .stat-value{color:var(--color-info)}.table-filter-container{position:relative;z-index:1;display:inline-block}.table-filter-icon{cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:flex-start;width:auto;min-width:24px;height:24px;padding-inline:0 var(--spacing-6xs, .125rem);border:none;border-radius:var(--radius-sm);font-size:.75rem;color:var(--color-text-secondary);background:transparent;transition:all var(--transition-base)}.table-filter-icon:hover{color:var(--color-primary);background:var(--color-background)}.table-filter-icon.active{color:var(--color-primary);background:var(--color-primary-100)}.table-filter-icon.has-active-filter:after{content:"";position:absolute;top:-2px;right:-2px;width:6px;height:6px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 1px var(--color-surface)}.table-filter-popup{position:fixed;z-index:var(--z-index-dropdown);overflow:auto;display:inline-block;width:fit-content;max-width:min(350px,calc(100vw - 16px));max-inline-size:min(350px,calc(100vw - 16px));max-height:calc(100vh - 16px);border:1px solid var(--color-neutral);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-lg);animation:fade-in-scale .15s ease-out}.filter-popup-arrow{position:absolute;width:0;height:0}.filter-popup-arrow.top{top:-6px;left:50%;transform:translate(-50%);border-top:0;border-right:6px solid transparent;border-bottom:6px solid var(--color-surface);border-left:6px solid transparent;filter:drop-shadow(0 -1px 0 var(--color-neutral))}.filter-popup-arrow.bottom{bottom:-6px;left:50%;transform:translate(-50%);border-top:6px solid var(--color-surface);border-right:6px solid transparent;border-bottom:0;border-left:6px solid transparent;filter:drop-shadow(0 1px 0 var(--color-neutral))}@keyframes fade-in-scale{0%{transform:scale(.95) translateY(-4px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.filter-popup-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-bottom:1px solid var(--color-background);border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--color-background)}.filter-popup-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.filter-popup-close{cursor:pointer;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-lg);color:var(--color-text-secondary);background:transparent;transition:all var(--transition-base)}.filter-popup-close:hover{color:var(--color-text-primary);background:var(--color-neutral-100)}.filter-popup-content{--spacing-filter-badge-gap: var(--spacing-md);padding:var(--spacing-md)}.filter-popup-content.compact{--spacing-filter-badge-gap: var(--spacing-sm);padding:var(--spacing-sm)}.filter-popup-content.tight-x{padding-right:var(--spacing-xs);padding-left:var(--spacing-sm)}.filter-popup-content.compact .badge-selector{margin-bottom:var(--spacing-xs)}.filter-popup-content.compact .badge-selector-options{gap:var(--spacing-xs)}.filter-popup-content .filter-text-input+.badge-selector{margin-top:var(--spacing-filter-badge-gap)}.alphabet-navigation{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);padding:1rem}.alphabet-link{cursor:pointer;padding:.375rem .75rem;border:1px solid var(--color-border-light);border-radius:4px;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background:none;transition:border-color var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast)}.alphabet-link:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-alpha-10)}.alphabet-link.active{border-color:var(--color-primary-hover);color:var(--color-white);background:var(--color-primary-hover)}.alphabet-link.all{padding:.375rem 1rem;font-weight:600}.alphabet-navigation .alphabet-link:nth-of-type(2){margin-right:var(--spacing-sm)}@media (width <= 768px){.alphabet-navigation{gap:var(--spacing-xs, .25rem);padding:.75rem;font-size:.8rem}.alphabet-link{padding:.25rem .5rem;font-size:.8rem}}.filter-popup-content .filter-search-input,.filter-popup-content.compact .filter-search-input{display:block;width:100%}.filter-text-input,.filter-select{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-base)}.filter-text-input:focus,.filter-select:focus{border-color:var(--color-primary);outline:none}.filter-text-input::placeholder{color:var(--color-text-muted)}.filter-multiselect{overflow-y:auto;max-height:200px}.multiselect-label{margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.filter-date-range{display:flex;gap:var(--spacing-sm);align-items:center}.filter-date-range.with-options{flex-direction:column;gap:var(--spacing-sm);align-items:stretch}.filter-date-range.with-options .filter-date-range-inputs{display:flex;gap:var(--spacing-sm);align-items:center}.filter-option-toggle-group{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.filter-option-toggle{cursor:pointer}.filter-option-toggle:focus{outline:none}.filter-option-toggle:focus-visible,.filter-option-toggle:focus:not(:focus-visible){border-radius:var(--radius-base);box-shadow:0 0 0 2px var(--color-primary)}.filter-date-input{flex:1;padding:var(--spacing-sm);border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-base)}.filter-date-input:focus{border-color:var(--color-primary);outline:none}.date-separator{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.filter-number-range{display:flex;gap:var(--spacing-sm);align-items:center}.filter-number-input{flex:1;padding:var(--spacing-sm);border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-base)}.filter-number-input:focus{border-color:var(--color-primary);outline:none}.filter-number-range.compact .filter-number-input{width:90px}.number-separator{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.filter-popup-actions{margin-top:var(--spacing-sm);padding-top:0;text-align:left}.filter-clear-btn{cursor:pointer;padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-surface);transition:all var(--transition-base)}.filter-clear-btn:hover{border-color:var(--color-error);color:var(--color-error)}.filter-hide-btn{cursor:pointer;padding:var(--spacing-xxs, 4px) var(--spacing-sm);border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:var(--font-size-xs);color:var(--color-text-primary);background:var(--color-surface);transition:all var(--transition-base)}.filter-hide-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}@media (width <= 768px){.table-filter-popup{right:auto;left:0;min-width:220px}.filter-date-range,.filter-number-range{flex-direction:column;align-items:stretch}.date-separator,.number-separator{text-align:center}}.filter-range-sliders{position:relative;height:28px;margin-top:var(--spacing-sm)}.filter-range-sliders .filter-range-input{position:absolute;z-index:2;top:0;left:0;width:100%;background:transparent}.filter-range-track{position:absolute;z-index:1;top:12px;right:0;left:0;height:4px;border-radius:999px;background:var(--color-neutral-200, var(--color-background))}.filter-range-fill{position:absolute;z-index:1;top:12px;height:4px;border-radius:999px;background:var(--color-primary)}.filter-range-sliders .filter-range-input::-webkit-slider-runnable-track{height:4px;background:transparent}.filter-range-sliders .filter-range-input::-webkit-slider-thumb{width:12px;height:12px;margin-top:-4px;border:2px solid var(--color-primary);border-radius:50%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-surface);box-shadow:0 0 0 1px var(--color-neutral-100)}.filter-range-sliders .filter-range-input::-moz-range-track{height:4px;background:transparent}.filter-range-sliders .filter-range-input::-moz-range-thumb{width:12px;height:12px;border:2px solid var(--color-primary);border-radius:50%;background:var(--color-surface)}.filter-range-sliders .filter-range-input:active{z-index:3}.dropdown{position:relative;display:inline-block}.dropdown-toggle{cursor:pointer;display:flex;gap:var(--spacing-sm);align-items:center;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:transparent;transition:background-color var(--transition-base),box-shadow var(--transition-base)}.dropdown-toggle:hover{background:var(--color-neutral-alpha-10)}.dropdown-toggle[aria-expanded=true]{background:var(--color-background-active)}.dropdown-menu{position:absolute;z-index:var(--z-index-dropdown);top:100%;left:0;transform:translateY(-8px);min-width:100%;margin-top:var(--spacing-xs);padding:var(--spacing-xs) 0;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);visibility:hidden;opacity:0;background:var(--color-surface);box-shadow:var(--shadow-lg);transition:opacity var(--transition-base),transform var(--transition-base),visibility var(--transition-base)}.dropdown-menu--right{right:0;left:auto}.dropdown-menu--center{left:50%;transform:translate(-50%) translateY(-8px)}.dropdown-menu--up{top:auto;bottom:100%;transform:translateY(8px);margin-top:0;margin-bottom:var(--spacing-xs)}.dropdown--open .dropdown-menu{transform:translateY(0);visibility:visible;opacity:1}.dropdown--open .dropdown-menu--center{transform:translate(-50%) translateY(0)}.dropdown--open .dropdown-menu--up{transform:translateY(0)}.dropdown-item{cursor:pointer;display:flex;align-items:center;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-primary);text-align:left;text-decoration:none;background:transparent;transition:background-color var(--transition-fast),color var(--transition-fast)}.dropdown-item:hover{color:var(--color-text-primary);text-decoration:none;background:var(--color-neutral-alpha-10)}.dropdown-item:focus{background:var(--color-neutral-alpha-10)}.dropdown-item--danger{color:var(--color-error)}.dropdown-item--danger:hover{color:var(--color-error);background:var(--color-error-alpha-10)}.dropdown-item--disabled{pointer-events:none;cursor:not-allowed;color:var(--color-text-muted)}.dropdown-divider{height:1px;margin:var(--spacing-xs) 0;border:none;opacity:.8;background:var(--color-border-default)}.dropdown-arrow{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:var(--font-size-xs);transition:transform var(--transition-base)}.dropdown-arrow-icon{width:12px;height:12px;transition:transform var(--transition-base)}.dropdown--open .dropdown-arrow,.dropdown--open .dropdown-arrow-icon{transform:rotate(180deg)}.dropdown-select{position:relative;display:inline-block;width:100%}.dropdown-select select{cursor:pointer;width:100%;padding:var(--spacing-md) 2.5rem var(--spacing-md) var(--spacing-md);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-surface);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.dropdown-select select:hover{border-color:var(--color-border-hover)}.dropdown-select select:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px var(--color-accent-alpha-20)}.dropdown-select:after{pointer-events:none;content:"";position:absolute;top:50%;right:var(--spacing-md);transform:translateY(-50%);width:12px;height:12px;background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center;background-size:12px}[data-theme=dark] .dropdown-menu{border-color:var(--color-border-default);background:var(--color-surface);box-shadow:0 4px 20px var(--color-black-alpha-30)}[data-theme=dark] .dropdown-select:after{background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23e8eaed' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.dropdown-search-suggestions{scrollbar-color:var(--color-text-muted) transparent;scrollbar-width:thin;overflow-y:auto;max-height:300px}.dropdown-search-suggestions::-webkit-scrollbar{width:4px}.dropdown-search-suggestions::-webkit-scrollbar-track{background:transparent}.dropdown-search-suggestions::-webkit-scrollbar-thumb{border-radius:2px;background:var(--color-text-muted)}.dropdown-search-suggestion{padding:var(--spacing-md) var(--spacing-md);border-bottom:1px solid var(--color-border-default)}.dropdown-search-suggestion:last-child{border-bottom:none}.dropdown-search-suggestion:hover{background:var(--color-neutral-alpha-10)}.dropdown-search-suggestion-title{margin-bottom:.25rem;font-size:.9rem;font-weight:500;color:var(--color-text-primary)}.dropdown-search-suggestion-category{font-size:.8rem;color:var(--color-text-secondary)}@media (width <= 768px){.dropdown-menu{min-width:200px}.dropdown-item{padding:12px 16px;font-size:1rem}}@media (width <= 480px){.dropdown-menu{min-width:160px}.dropdown-item{padding:10px 12px}}@media (prefers-reduced-motion: reduce){.dropdown-menu,.dropdown-toggle,.dropdown-arrow,.dropdown-arrow-icon,.dropdown-select select{transition:none;animation:none}.dropdown-menu,.dropdown--open .dropdown-menu,.dropdown--open .dropdown-arrow,.dropdown--open .dropdown-arrow-icon{transform:none}}.dropdown-item:focus,.dropdown-toggle:focus{outline:2px solid var(--color-accent);outline-offset:1px}.dropdown-menu--fade-only{transform:none;transition:opacity .2s ease,visibility .2s ease}.dropdown--open .dropdown-menu--fade-only{transform:none}.dropdown-menu--slide{transform:translateY(-12px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease}.dropdown--open .dropdown-menu--slide{transform:translateY(0)}.badge-selector{margin-bottom:var(--spacing-md)}.badge-selector-label{display:block;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary)}.badge-selector-options{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.badge-selector-option{cursor:pointer;-webkit-user-select:none;user-select:none;transition:box-shadow var(--transition-fast)}.badge-selector-option:focus-visible,.badge-selector-option:hover:not(.disabled){--color-table-badge-border: var(--color-table-badge-text);outline:none;box-shadow:0 0 0 1px var(--color-table-badge-text)}.badge-selector-option.active{--color-table-badge-border: var(--color-table-badge-text);box-shadow:0 0 0 1px var(--color-table-badge-text)}.badge-selector-option.disabled{cursor:not-allowed;opacity:.5}.badge-selector-option.disabled:before{opacity:.6}.badge-selector-multi .selection-count{font-size:var(--font-size-xs);font-weight:400;color:var(--color-text-secondary)}.department-permission-selector{margin-bottom:var(--spacing-sm)}.department-permission-selector .badge-selector-options{justify-content:flex-start}@media (width <= 768px){.badge-selector-options{justify-content:flex-start}.badge-selector-option{padding:calc(var(--spacing-xs) * .75) var(--spacing-xs);font-size:var(--font-size-xs)}}.collapsible-card{overflow:hidden;margin-bottom:var(--spacing-lg);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-base);transition:box-shadow var(--transition-base)}.collapsible-card:hover{box-shadow:var(--shadow-md)}.collapsible-card-header{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);background:var(--color-background);transition:background-color var(--transition-base)}.collapsible-card-header:hover{background:var(--color-neutral-100)}.collapsible-card.expanded .collapsible-card-header{border-bottom:1px solid var(--color-neutral-200);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.collapsible-card-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.collapsible-card-toggle{display:flex;align-items:center;color:var(--color-text-secondary)}.toggle-icon{transition:transform var(--transition-base)}.toggle-icon.rotate-180{transform:rotate(180deg)}.collapsible-card-content{overflow:visible;padding:var(--spacing-xl);animation:slide-down .2s ease-out}.collapsible-card-content:has(.table-container){padding-right:0;padding-left:0}.collapsible-card-content:has(.table-container)>:not(.table-container):not(:has(.table-container)){padding-right:var(--spacing-xl);padding-left:var(--spacing-xl)}.collapsible-card-content .table-container:first-child{margin-top:calc(-1 * var(--spacing-xl))}.collapsible-card-content .table-container:last-child{margin-bottom:calc(-1 * var(--spacing-xl))}@keyframes slide-down{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.form-grid .form-field{margin-bottom:0}.form-field-wide{grid-column:1 / -1}.channel-lineup-actions{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media (width <= 768px){.form-grid{grid-template-columns:1fr}.collapsible-card-header{padding:var(--spacing-sm) var(--spacing-md)}.collapsible-card-content{padding:var(--spacing-lg)}.channel-lineup-actions{flex-direction:column}}.search-icon{width:20px;height:20px;margin-right:.75rem;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.search-icon-small{width:16px;height:16px;opacity:.6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}[data-theme=dark] .search-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%239aa0a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E")}[data-theme=dark] .search-icon-small{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239aa0a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E")}.not-found-hero{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 60px);min-height:calc(100dvh - 60px);padding:2rem;background:var(--color-background)}.not-found-content{max-width:600px;text-align:center;animation:fade-in-up .5s ease-out}.error-code{margin-bottom:.5rem;font-size:6rem;font-weight:700;line-height:1;color:var(--color-text-secondary);letter-spacing:-.02em}.error-title{margin-bottom:.5rem;font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}.error-message{margin-bottom:1.5rem;font-size:1rem;color:var(--color-text-secondary)}.error-technical{display:inline-block;margin-bottom:1.5rem;padding:.75rem 1rem;border:1px solid var(--color-border-light);border-radius:6px;font-family:SF Mono,Monaco,Cascadia Code,monospace;background:var(--color-surface)}.error-path{font-size:.875rem;color:var(--color-text-muted);word-break:break-all}.error-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:2rem}.primary-button,.secondary-button{cursor:pointer;padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.95rem;font-weight:500;outline:none;transition:transform var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}.primary-button{color:#fff;background:var(--color-primary)}.primary-button:hover{transform:translateY(-2px);background:var(--color-primary-hover);box-shadow:0 4px 12px var(--color-primary-alpha-30)}.secondary-button{border:1px solid var(--color-border);color:var(--color-text-primary);background:transparent}.secondary-button:hover{border-color:var(--color-primary);background:var(--color-surface)}@keyframes fade-in-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}[data-theme=dark] .not-found-hero{background:var(--color-neutral-50)}[data-theme=dark] .error-technical{border-color:var(--color-neutral-300);background:var(--color-neutral-200)}[data-theme=dark] .primary-button:hover{box-shadow:0 4px 12px var(--color-primary-alpha-20)}[data-theme=dark] .secondary-button:hover{background:var(--color-neutral-200)}@media (width <= 768px){.error-code{font-size:6rem}.error-title{font-size:1.5rem}.error-message{font-size:1.125rem}.error-actions{flex-direction:column;width:100%}.primary-button,.secondary-button{width:100%}}.search-page{min-height:calc(100vh - 60px);min-height:calc(100dvh - 60px);padding:2rem 0;background:var(--color-background)}.search-content{max-width:1200px;margin:0 auto;padding:0 2rem}.search-header{margin-bottom:2rem}.search-form{display:flex;align-items:center;max-width:652px;margin-bottom:1rem;border:1px solid var(--color-border-light);border-radius:24px;background:var(--color-surface);box-shadow:0 2px 5px 1px var(--color-search-alpha-16);transition:box-shadow var(--transition-fast)}.search-form:hover,.search-form:focus-within{border-color:var(--color-border);box-shadow:0 2px 8px 1px var(--color-search-alpha-24)}.search-page-input{flex:1;padding:12px 20px;border:none;font-size:16px;color:var(--color-text-primary);background:transparent;outline:none}.search-page-input::placeholder{color:var(--color-text-muted)}.search-submit-button{cursor:pointer;display:flex;align-items:center;justify-content:center;height:44px;padding:0 20px 0 16px;border:none;background:transparent}.search-submit-button .search-icon{width:20px;height:20px;background:var(--color-text-secondary);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E") no-repeat center;-webkit-mask-size:contain;mask-size:contain}.search-results-info{margin-bottom:.5rem;font-size:.875rem;color:var(--color-text-secondary)}.search-results-list{max-width:652px;margin:0}.search-result-item{margin-bottom:2rem;font-family:arial,sans-serif}.search-result-main{display:flex;gap:.75rem;align-items:center;margin-bottom:.25rem}.search-result-link{font-size:1.25rem;font-weight:400;line-height:1.3;color:var(--color-accent);text-decoration:none}.search-result-link:hover{text-decoration:underline}.search-result-badge{display:inline-block;padding:.125rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;white-space:nowrap}.search-result-badge.badge-page{border:1px solid var(--color-indigo-alpha-20);color:var(--color-primary);background:var(--color-indigo-alpha-10)}.search-result-badge.badge-data{border:1px solid var(--color-border-light);color:var(--color-text-secondary);background:var(--color-neutral-100)}.search-result-url{margin-bottom:.25rem;font-size:.875rem;color:var(--color-success-dark)}.search-result-description{max-width:600px;font-size:.875rem;line-height:1.4;color:var(--color-neutral-600)}.search-highlight{font-weight:600;color:var(--color-text-primary)}.no-results{max-width:652px;padding:2rem 0;text-align:left}.no-results-title{margin:0 0 1rem;font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}.no-results-text{margin:0;font-size:1rem;line-height:1.6;color:var(--color-text-secondary)}.search-loading-container{padding:4rem 2rem;text-align:center}.search-loading-container .loading-spinner{width:8px;height:8px;margin:0 auto 1rem;border-radius:50%;background:var(--color-primary);animation:pulse var(--transition-duration-pulse) ease-in-out infinite}.search-loading-container p{font-size:1.125rem;color:var(--color-text-secondary)}[data-theme=dark] .search-page{background:var(--color-neutral-50)}[data-theme=dark] .search-form{border-color:var(--color-neutral-300);background:var(--color-neutral-200);box-shadow:0 2px 5px 1px var(--color-black-alpha-30)}[data-theme=dark] .search-form:hover,[data-theme=dark] .search-form:focus-within{box-shadow:0 2px 8px 1px var(--color-black-alpha-50)}[data-theme=dark] .search-result-link{color:var(--color-primary)}[data-theme=dark] .search-result-url{color:var(--color-success)}[data-theme=dark] .search-result-description{color:var(--color-text-secondary)}@media (width <= 768px){.search-page{padding:1rem 0}.search-content{padding:0 1rem}.search-page-title{font-size:2rem}.search-results-list{max-width:100%}.search-result-link{font-size:1.125rem}.search-header{margin-bottom:2rem}}@media (width <= 480px){.search-result-link{font-size:1rem}.search-result-description{font-size:.8125rem}}.btn{cursor:pointer;display:inline-flex;gap:var(--spacing-xs);align-items:center;padding:.5rem 1rem;border:none;border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:500;text-decoration:none;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.btn-primary{color:var(--color-surface);background-color:var(--color-primary)}.btn-primary:hover{transform:translateY(-1px);background-color:var(--color-accent);box-shadow:var(--shadow-md)}.btn-secondary{border:1px solid var(--color-neutral-200);color:var(--color-text-primary);background-color:var(--color-neutral-100)}.btn-secondary:hover{background-color:var(--color-neutral-200)}.btn-link{padding:var(--spacing-xs) var(--spacing-sm);border:none;font-size:var(--font-size-sm);color:var(--color-primary);background:none}.btn-link:hover{color:var(--color-accent);text-decoration:underline}.btn-icon{font-size:1.2em}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);color:var(--color-text-secondary)}.loading-spinner{width:6px;height:6px;margin-bottom:var(--spacing-md);border-radius:50%;background:var(--color-primary);animation:pulse var(--transition-duration-pulse) ease-in-out infinite}@media (prefers-reduced-motion: reduce){.loading-spinner{opacity:.6;animation:none}}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);text-align:center}.error-icon{margin-bottom:var(--spacing-md);font-size:2rem;color:var(--color-error)}.error-message{margin-bottom:var(--spacing-lg);font-size:var(--font-size-base);color:var(--color-error)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);text-align:center}.empty-icon{margin-bottom:var(--spacing-lg);font-size:3rem;color:var(--color-text-muted)}.empty-state h3{margin-bottom:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.empty-state p{margin-bottom:var(--spacing-lg);color:var(--color-text-secondary)}.subscriptions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:var(--spacing-lg);padding:var(--spacing-lg)}.subscription-card{padding:var(--spacing-lg);border:1px solid var(--color-neutral-100);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.subscription-card:hover{transform:translateY(-2px);border-color:var(--color-neutral-200);box-shadow:var(--shadow-md)}.card-header{display:flex;gap:var(--spacing-sm);align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-md)}.service-name{flex:1;margin:0;font-size:var(--font-size-lg);font-weight:600;line-height:1.3;color:var(--color-text-primary)}.card-body{display:flex;flex-direction:column;gap:var(--spacing-md)}.subscription-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.detail-item{display:flex;gap:var(--spacing-sm);align-items:center;justify-content:space-between}.detail-item .label{min-width:fit-content;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary)}.detail-item .value{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary);text-align:right}.detail-item .value.cost{font-weight:600;color:var(--color-primary)}.card-actions{display:flex;justify-content:flex-end;padding-top:var(--spacing-sm);border-top:1px solid var(--color-neutral-100)}.modal-overlay{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background-color:var(--color-black-alpha-50)}.modal-content{position:relative;overflow:hidden;width:100%;max-width:600px;max-height:90vh;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-neutral-100)}.modal-header h2{margin:0;font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary)}.modal-close{cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:var(--spacing-xs);border:none;border-radius:var(--radius-base);font-size:1.5rem;line-height:1;color:var(--color-text-secondary);background:none;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.modal-close:hover{color:var(--color-text-primary);background-color:var(--color-neutral-100)}.modal-body{padding:var(--spacing-xl);color:var(--color-text-secondary)}@media (width <= 768px){.subscriptions-grid{grid-template-columns:1fr;padding:var(--spacing-md)}.subscription-card{padding:var(--spacing-md)}.detail-item{flex-direction:column;align-items:flex-start}.detail-item .value{text-align:left}.modal-overlay{padding:var(--spacing-sm)}.modal-header{padding:var(--spacing-md) var(--spacing-lg)}.modal-body{padding:var(--spacing-lg)}}.form-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-100)}.form-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.form-section-title{display:inline-block;margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-xs);border-bottom:2px solid var(--color-primary);font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.form-row{display:flex;gap:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary)}.form-control{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-neutral-300);border-radius:var(--radius-base);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-surface);transition:border-color .2s ease,box-shadow .2s ease}.form-control::placeholder{color:var(--color-text-muted)}.form-control-textarea{resize:vertical;min-height:80px}.form-text{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs)}.text-danger{color:var(--color-error)}.text-muted{color:var(--color-text-secondary)}.alert{margin-bottom:var(--spacing-md);padding:var(--spacing-md);border:1px solid transparent;border-radius:var(--radius-base)}.alert-danger{border-color:var(--color-error-alpha-20);color:var(--color-error);background-color:var(--color-error-alpha-10)}.modal-footer{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin:0 calc(-1 * var(--spacing-xl)) calc(-1 * var(--spacing-xl));padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-neutral-100);background-color:var(--color-neutral-50)}.modal-button{cursor:pointer;min-width:80px;padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-base);font-size:var(--font-size-base);font-weight:500;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.modal-button-primary{color:var(--color-surface);background-color:var(--color-primary)}.modal-button-primary:hover:not(:disabled){transform:translateY(-1px);background-color:var(--color-accent)}.modal-button-secondary{border:1px solid var(--color-neutral-200);color:var(--color-text-primary);background-color:var(--color-neutral-100)}.modal-button-secondary:hover:not(:disabled){background-color:var(--color-neutral-200)}@media (width <= 768px){.form-row{flex-direction:column}.modal-footer{flex-direction:column-reverse}.modal-button{width:100%}}[data-theme=dark] .subscription-card{border-color:var(--color-neutral-600)}[data-theme=dark] .subscription-card:hover{border-color:var(--color-neutral-500)}[data-theme=dark] .card-actions{border-top-color:var(--color-neutral-600)}[data-theme=dark] .form-section{border-bottom-color:var(--color-neutral-600)}[data-theme=dark] .form-control{border-color:var(--color-neutral-500);color:var(--color-text-primary);background-color:var(--color-neutral-200)}[data-theme=dark] .form-control:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha-20)}[data-theme=dark] .modal-footer{border-top-color:var(--color-neutral-600);background-color:var(--color-neutral-100)}[data-theme=dark] .alert-danger{border-color:var(--color-error-alpha-30);background-color:var(--color-error-alpha-20)}.renewals-dashboard .page-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.renewals-dashboard .page-title{font-size:1.75rem;font-weight:600;color:var(--color-text-primary)}.renewals-dashboard .page-header-actions{display:flex;gap:.75rem;align-items:center}.renewals-dashboard .add-site-section{margin-bottom:1.5rem}.renewals-dashboard .add-site-section h2{margin-bottom:.25rem;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.renewals-dashboard .add-site-form{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start}.renewals-dashboard .add-site-form .form-field{display:flex;flex-direction:column;gap:.5rem}.renewals-dashboard .add-site-form .btn-primary{margin-top:1rem}.renewals-dashboard .add-site-form .badge-selector{width:300px;margin-bottom:0}.renewals-dashboard .add-site-form .badge-selector-options{overflow:hidden auto;flex-wrap:nowrap;max-width:100%}.renewals-dashboard .add-site-form label{font-size:.9rem;font-weight:500;color:var(--color-text-secondary)}.renewals-dashboard .add-site-form .form-control-select{width:300px;padding:.375rem .5rem}.renewals-dashboard .site-select{min-width:250px;padding:.5rem;border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;color:var(--color-text-primary);background:var(--color-surface)}.renewals-dashboard .site-select option{color:var(--color-text-primary);background:var(--color-surface)}.renewals-dashboard .site-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px var(--color-primary-alpha-20)}.renewals-dashboard .renewals-table-section{margin-bottom:1.5rem}.renewals-dashboard .no-renewals-message{padding:3rem;text-align:center}.renewals-dashboard .no-renewals-message h3{font-size:1.25rem;font-weight:500;color:var(--color-text-secondary)}.renewals-dashboard .contract-exp-date{font-weight:500;color:var(--color-text-primary)}@media (width <= 1200px){.renewals-dashboard .renewals-table-section{overflow-x:auto}}@media (width <= 768px){.renewals-dashboard .page-header{flex-direction:column;align-items:flex-start}.renewals-dashboard .page-header-actions{flex-direction:column;gap:.5rem;width:100%}.renewals-dashboard .btn-secondary{width:100%}.renewals-dashboard .page-title{font-size:1.5rem}.renewals-dashboard .add-site-section h2{font-size:1rem}.renewals-dashboard .add-site-form{flex-direction:column;align-items:stretch}.renewals-dashboard .site-select{width:100%}}@media (prefers-color-scheme: dark){.renewals-dashboard .btn-secondary{background:var(--color-surface-dark)}.renewals-dashboard .site-select{border-color:var(--color-border-light);background:var(--color-surface)}.renewals-dashboard .site-select option{background:var(--color-surface)}}.support-dashboard{padding:0}.page-title{margin-bottom:1.5rem;font-size:1.75rem;font-weight:600;color:var(--color-text-primary)}.support-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding:.75rem;border:1px solid var(--color-border-light);border-radius:12px;background:var(--color-surface)}.support-tab{cursor:pointer;position:relative;display:flex;gap:.5rem;align-items:center;justify-content:center;min-width:120px;padding:.625rem 1rem;border:1px solid var(--color-border-light);border-radius:8px;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background:var(--color-background);transition:all var(--transition-base)}.support-tab:hover{transform:translateY(-1px);border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-alpha-10);box-shadow:0 2px 8px var(--color-black-alpha-08)}.support-tab.active{border-color:var(--color-primary);color:var(--color-white);background:var(--color-primary);box-shadow:0 4px 12px var(--color-primary-alpha-30)}.support-tab.active:hover{transform:none}.tab-label{font-weight:500}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;border-radius:10px;font-size:.75rem;font-weight:600;color:inherit;background:var(--color-black-alpha-20)}.support-tab.active .tab-count{color:var(--color-white);background:var(--color-white-alpha-20)}.tab-count.alert{color:var(--color-error);background:var(--color-error-alpha-20)}.support-tab.active .tab-count-alert{color:var(--color-white);background:var(--color-white-alpha-30)}.support-tab-content{padding:1.5rem;border:1px solid var(--color-border-light);border-radius:12px;background:var(--color-surface)}.support-summary{margin-top:1.5rem}.summary-card{padding:1.25rem;border:1px solid var(--color-border-light);border-radius:8px;background:var(--color-background)}.summary-card h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--color-text-primary)}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.8125rem;font-weight:500;color:var(--color-text-muted)}.stat-value{font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.stat-value.high-priority{color:var(--color-error)}.stat-value.escalated{color:var(--color-warning)}.stat-value.critical{color:var(--color-error)}.stat-value.active{color:var(--color-success)}.date-cell{font-size:.7rem;line-height:1.2}.date-cell div{white-space:nowrap}.update-time{font-family:monospace;font-weight:600}.ticket-cell{display:flex;flex-direction:column;gap:.125rem;align-items:center}.ticket-id,.job-id{font-weight:600;color:var(--color-primary)}.escalation-label{font-size:.65rem;font-weight:500;color:var(--color-text-primary)}.site-info{display:flex;flex-direction:column;gap:.125rem}.site-name{font-weight:500;color:inherit}.site-shortname{font-size:.75rem;color:var(--color-text-muted)}.site-cluster{font-size:.7rem;font-weight:500;color:var(--color-text-secondary)}.site-contact{font-size:.65rem;line-height:1.2;color:var(--color-text-secondary)}.site-escalate{font-size:.65rem;font-weight:600;font-style:normal;color:var(--color-text-primary)}.summary-text{overflow:hidden;display:inline-block;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.alert-summary,.request-summary,.job-summary{display:flex;gap:.5rem;align-items:center}.ra-yes,.q-yes{display:inline-flex;align-items:center;justify-content:center;font-weight:600;color:var(--color-success)}.ra-yes svg{stroke:var(--color-success)}.ra-no,.q-no{display:inline-flex;align-items:center;justify-content:center;color:var(--color-error)}.ra-no svg{stroke:var(--color-error)}.added-by{display:flex;flex-direction:column;gap:.125rem;align-items:center;font-size:.7rem;line-height:1.1;color:var(--color-text-secondary)}.added-by div{white-space:nowrap}.vs-agent-label{font-size:.6rem;font-weight:500;color:var(--color-info)}.email-icon-link{display:inline-flex;align-items:center;justify-content:center;padding:2px;text-decoration:none;transition:all var(--transition-base)}.email-icon-link:hover{transform:scale(1.1)}.email-icon-img{cursor:pointer;width:14px;height:14px}.email-icon-text{cursor:pointer;font-size:16px;color:var(--color-primary)}.owner-name{font-size:.7rem;font-weight:500;line-height:1.1;color:var(--color-text-primary)}.owner-name div{white-space:nowrap}.own-it-btn{cursor:pointer;padding:.25rem .5rem;border:1px solid var(--color-primary);border-radius:4px;font-size:.75rem;font-weight:500;color:var(--color-primary);background:transparent;transition:all var(--transition-base)}.own-it-btn:hover{color:var(--color-white);background:var(--color-primary)}.age-green{font-weight:600;color:var(--color-success)}.age-blue{font-weight:600;color:var(--color-info)}.age-orange{font-weight:600;color:var(--color-warning)}.age-red{font-weight:600;color:var(--color-error)}@media (width <= 1200px){.support-tabs{gap:.375rem}.support-tab{min-width:100px;padding:.5rem .75rem;font-size:.8125rem}}@media (width <= 768px){.support-dashboard{padding:1rem}.page-title{margin-bottom:1rem;font-size:1.5rem}.support-tabs{gap:.25rem;padding:.5rem}.support-tab{flex:1 1 calc(33.333% - .25rem);min-width:auto;padding:.5rem;font-size:.75rem}.tab-label{display:none}.support-tab:before{content:attr(data-short-label)}.support-tab-content{padding:1rem}.summary-stats{grid-template-columns:1fr;gap:.75rem}}.alerts-table-messages{margin-bottom:-1px}.alert-table-message{padding:1rem 1.25rem;border:1px solid var(--color-border-light);border-bottom:none;font-size:.875rem;font-weight:600;line-height:1.5;text-align:center}.alert-table-message:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.alert-table-message.warning{border-color:var(--color-error);color:var(--color-white);background:var(--color-error)}.cron-jobs-status{margin:1.5rem 0;padding:1.25rem;border:1px solid var(--color-border-light);border-radius:12px;background:var(--color-surface)}.cron-jobs-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border-light)}.cron-jobs-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text-primary);text-align:center}.cron-jobs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.cron-job-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;border:1px solid var(--color-border-light);border-radius:8px;text-align:center;background:var(--color-background)}.cron-job-name{font-size:.8125rem;font-weight:600;line-height:1.2;color:var(--color-text-primary)}.cron-job-interval{font-size:.75rem;font-style:italic;color:var(--color-text-muted)}.cron-job-time{font-family:monospace;font-size:.75rem;color:var(--color-text-secondary)}@media (prefers-color-scheme: dark){.support-tab{background:var(--color-surface-dark)}.support-tab:hover{background:var(--color-primary-alpha-20)}.support-tab.active{background:var(--color-primary)}.cron-jobs-status{background:var(--color-surface-dark)}.cron-job-item{background:var(--color-background-dark)}}.contracts-dashboard .page-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.contracts-dashboard .page-title{font-size:1.75rem;font-weight:600;color:var(--color-text-primary)}.contracts-dashboard .page-header-actions{display:flex;gap:.75rem;align-items:center}.contracts-dashboard .btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface)}.contracts-dashboard .unactivated-contracts-section{margin-bottom:1.5rem}.contracts-dashboard .unactivated-contracts-section h2{margin-bottom:1rem;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.contracts-dashboard .unactivated-table{border-collapse:collapse;width:100%}.contracts-dashboard .unactivated-table th{padding:.75rem;border-bottom:2px solid var(--color-border);font-size:.875rem;font-weight:600;color:var(--color-text-secondary);text-align:left;background:var(--color-background)}.contracts-dashboard .unactivated-table td{padding:.75rem;border-bottom:1px solid var(--color-border-light);font-size:.875rem;color:var(--color-text-primary)}.contracts-dashboard .contracts-table-section{margin-bottom:1.5rem}.contracts-dashboard .text-muted{color:var(--color-text-muted)}.contracts-dashboard .contract-exp-date{font-weight:500;color:var(--color-text-primary)}@media (width <= 1200px){.contracts-dashboard .contracts-table-section{overflow-x:auto}}@media (width <= 768px){.contracts-dashboard .page-header{flex-direction:column;align-items:flex-start}.contracts-dashboard .page-header-actions{flex-direction:column;gap:.5rem;width:100%}.contracts-dashboard .btn-secondary{width:100%}.contracts-dashboard .page-title{font-size:1.5rem}.contracts-dashboard .unactivated-contracts-section{padding:1rem}.contracts-dashboard .unactivated-contracts-section h2{font-size:1.125rem}.contracts-dashboard .unactivated-table th,.contracts-dashboard .unactivated-table td{padding:.5rem;font-size:.8125rem}}@media (prefers-color-scheme: dark){.contracts-dashboard .unactivated-table th,.contracts-dashboard .btn-secondary{background:var(--color-surface-dark)}}.live-sites-dashboard .filter-controls{display:flex;gap:1.5rem;align-items:center}.live-sites-dashboard .filter-checkbox{cursor:pointer;display:flex;gap:.5rem;align-items:center;font-size:.9rem;color:var(--color-text-secondary)}.live-sites-dashboard .filter-checkbox input[type=checkbox]{cursor:pointer}.live-sites-dashboard .filter-checkbox:hover{color:var(--color-text-primary)}.site-suspended{padding:.125rem .375rem;border-radius:4px;color:var(--color-error);background-color:var(--color-error-alpha-10)}.site-suspended.table-link{color:var(--color-error);text-decoration:none}.site-suspended:hover,.table-link.site-suspended:hover{color:var(--color-error);background-color:var(--color-error-alpha-20)}.live-sites-dashboard .site-suspended-badge{opacity:.85}.live-sites-dashboard .suspension-reason{margin-top:.25rem;font-size:.75rem;color:var(--color-error)}.live-sites-dashboard .page-header-actions .page-header-stat-label{cursor:default;margin-right:1rem;padding:0;border:0;font-weight:600;color:var(--color-text-primary);background:none}.live-sites-dashboard .page-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.live-sites-dashboard .page-title{font-size:1.75rem;font-weight:600;color:var(--color-text-primary)}.live-sites-dashboard .page-header-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}@media (width <= 768px){.live-sites-dashboard .filter-controls{flex-direction:column;gap:.5rem;align-items:flex-start}.live-sites-dashboard .page-header{flex-direction:column;align-items:flex-start}.live-sites-dashboard .page-header-actions{flex-direction:column;gap:.5rem;width:100%}.live-sites-dashboard .page-title{font-size:1.5rem}}.suspended-sites-dashboard .page-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.suspended-sites-dashboard .page-title{font-size:1.75rem;font-weight:600;color:var(--color-text-primary)}.suspended-sites-dashboard .access-denied{padding:3rem;color:var(--color-text-secondary);text-align:center}.suspended-sites-dashboard .access-denied h2{margin-bottom:1rem}.suspended-sites-dashboard .access-denied p{margin-top:.5rem;font-size:.9rem}.suspended-sites-dashboard .summary-section{margin-bottom:1.5rem}.suspended-sites-dashboard .view-toggle{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.suspended-sites-dashboard .suspended-table-section{margin-bottom:1.5rem;padding:1.5rem;border:1px solid var(--color-border-light);border-radius:12px;background:var(--color-surface)}.suspended-sites-dashboard .site-name{font-weight:500}.suspended-sites-dashboard .days-low{font-weight:600;color:var(--color-success)}.suspended-sites-dashboard .days-medium{font-weight:600;color:var(--color-warning)}.suspended-sites-dashboard .days-high{font-weight:600;color:var(--color-error)}.suspended-sites-dashboard .new-exp-date{font-weight:600;color:var(--color-info)}.suspended-sites-dashboard .credit-amount{font-weight:500;color:var(--color-text-primary)}.suspended-sites-dashboard .task-icons{display:flex;gap:.5rem;align-items:center;justify-content:center}.suspended-sites-dashboard .task-complete{font-size:1rem;font-weight:700;color:var(--color-success)}.suspended-sites-dashboard .task-pending{font-size:1rem;color:var(--color-text-muted)}@media (width <= 768px){.suspended-sites-dashboard{padding:1rem}.suspended-sites-dashboard .page-title{margin-bottom:1rem;font-size:1.5rem}.suspended-sites-dashboard .view-toggle{flex-direction:column}.suspended-sites-dashboard .suspended-table-section{padding:1rem}}.cancellations-dashboard .page-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.cancellations-dashboard .page-title{font-size:1.75rem;font-weight:600;color:var(--color-text-primary)}.cancellations-dashboard .page-header-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.cancellations-dashboard .btn-secondary{cursor:pointer;padding:.5rem 1rem;border:1px solid;border-color:var(--color-border);border-radius:6px;font-size:.9rem;font-weight:500;color:var(--color-text-primary);background:var(--color-background);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.cancellations-dashboard .btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface)}.cancellations-dashboard .search-section{margin-bottom:1.5rem}.cancellations-dashboard .search-input{width:100%;max-width:400px;padding:.75rem;border:1px solid var(--color-border);border-radius:8px;font-size:.95rem;color:var(--color-text-primary);background:var(--color-background);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cancellations-dashboard .search-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-primary-alpha-20)}.cancellations-dashboard .search-input::placeholder{color:var(--color-text-tertiary)}.cancellations-dashboard .cancellations-table-section{margin-bottom:1.5rem}.cancellations-dashboard .tab-controls{display:flex;gap:.75rem;margin-bottom:1rem}.cancellations-dashboard .tab-button{cursor:pointer;padding:.5rem 1rem;border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;font-weight:500;color:var(--color-text-secondary);background:var(--color-background);transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.cancellations-dashboard .tab-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.cancellations-dashboard .tab-button.active{border-color:var(--color-primary);color:var(--color-white);background:var(--color-primary)}.cancellations-dashboard .pending-date{font-style:italic;color:var(--color-warning)}.cancellations-dashboard .actual-date{font-weight:500;color:var(--color-success)}.cancellations-dashboard .no-cancellations-message{padding:3rem;text-align:center}.cancellations-dashboard .no-cancellations-message h3{margin-bottom:.5rem;font-size:1.25rem;font-weight:500;color:var(--color-text-secondary)}.cancellations-dashboard .no-cancellations-message p{font-size:.95rem;color:var(--color-text-tertiary)}.cancellations-dashboard .development-note{margin-top:1.5rem;padding:1rem;border:1px solid var(--color-info-alpha-30);border-radius:6px;text-align:center;background:var(--color-info-alpha-10)}.cancellations-dashboard .development-note p{margin:0;font-size:.9rem;font-weight:500;color:var(--color-info)}@media (width <= 1200px){.cancellations-dashboard .cancellations-table-section{overflow-x:auto}}@media (width <= 768px){.cancellations-dashboard .page-header{flex-direction:column;align-items:flex-start}.cancellations-dashboard .page-header-actions{flex-direction:column;gap:.5rem;width:100%}.cancellations-dashboard .btn-secondary{width:100%}.cancellations-dashboard .page-title{font-size:1.5rem}.cancellations-dashboard .search-input{max-width:100%}}@media (prefers-color-scheme: dark){.cancellations-dashboard .btn-secondary,.cancellations-dashboard .search-input{background:var(--color-surface-dark)}}.sync-status{margin-bottom:20px;font-size:14px;color:var(--color-text-secondary)}.sync-status div{line-height:1.4}.contract-file-content{max-width:1200px;margin:0 auto;padding:1.5rem;background:var(--color-background)}.contract-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border)}.contract-header-row{display:flex;align-items:center;justify-content:space-between;font-family:Arial,Verdana,Helvetica,sans-serif;font-size:.9rem}.contract-header-left,.contract-header-right{color:var(--color-text-primary)}.contract-body{line-height:1.6;color:var(--color-text-primary)}.contract-section{margin-bottom:1.5rem}.contract-title{margin-bottom:1rem;font-size:1.25rem;font-weight:600;color:var(--color-text-primary);text-align:center}.contract-section-header{margin-bottom:1rem;font-size:1.1rem;font-weight:600;color:var(--color-text-primary)}.contract-text{margin-bottom:1rem;font-size:.95rem;line-height:1.6;color:var(--color-text-secondary)}.contract-definitions{display:flex;flex-direction:column;gap:.75rem}.contract-definition-row{display:grid;grid-template-columns:200px 1fr;gap:1rem;align-items:start}.contract-definition-term{font-size:.9rem;font-weight:600;color:var(--color-text-primary)}.contract-definition-text{font-size:.9rem;color:var(--color-text-secondary)}.contract-subsections{display:flex;flex-direction:column;gap:.75rem}.contract-subsection-row{display:grid;grid-template-columns:60px 1fr;gap:1rem;align-items:start}.contract-subsection-no{font-size:.9rem;font-weight:600;color:var(--color-text-primary)}.contract-subsection-text{font-size:.9rem;color:var(--color-text-secondary)}@media (width <= 768px){.contract-definition-row{grid-template-columns:1fr;gap:.5rem}.contract-subsection-row{grid-template-columns:50px 1fr}.contract-file-content{padding:1rem}}html{box-sizing:border-box}html *,html *:before,html *:after{box-sizing:inherit;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--color-text-primary);background-color:var(--color-background)}a{color:var(--color-link);text-decoration-color:var(--color-link)}a:visited{color:var(--color-link)}a:hover,a:focus{color:var(--color-link-hover);text-decoration-color:var(--color-link-hover)}.loading{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;font-size:1.2rem}.auth-container{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%)}.auth-card{width:90%;max-width:400px;padding:2rem;border-radius:8px;text-align:center;background:var(--color-surface);box-shadow:var(--shadow-base)}.auth-card h1{margin-bottom:1rem;color:var(--color-neutral-700)}.auth-card p{margin-bottom:2rem;color:var(--color-text-secondary)}.login-button{cursor:pointer;width:100%;padding:12px 24px;border:none;border-radius:4px;font-size:1rem;color:var(--color-surface);background:var(--color-primary);transition:background-color .2s}.login-button:hover{background:var(--color-accent)}.dashboard{min-height:100vh;min-height:100dvh;background-color:var(--color-neutral-50)}.dashboard-header{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--color-primary);box-shadow:var(--shadow-sm)}.header-menu-toggle{cursor:pointer;display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-right:.5rem;border:none;border-radius:8px;color:#fff;background:var(--color-white-alpha-10);transition:background .2s ease,transform .2s ease}.header-menu-toggle:hover{background:var(--color-white-alpha-20)}.header-logo{display:flex;gap:.5rem;align-items:center}.logo-link{display:flex;align-items:center;text-decoration:none;transition:opacity .2s}.logo-link:hover{opacity:.8}.logo-image{width:auto;height:40px;object-fit:contain}.portal-text{margin-left:0;font-size:1.05rem;font-weight:600;color:var(--color-surface)}.logo-fallback{font-size:1.5rem;font-weight:600;color:var(--color-surface);text-decoration:none}.user-info{position:relative;display:flex;gap:1rem;align-items:center;color:var(--color-surface)}.user-dropdown{position:relative}.user-dropdown-toggle{cursor:pointer;display:flex;gap:.5rem;align-items:center;padding:8px 12px;border:none;border-radius:4px;font-size:1rem;color:var(--color-surface);background:transparent;transition:background-color .2s}.user-dropdown-toggle:hover{background:var(--color-white-alpha-10)}.dropdown-arrow{font-size:var(--font-size-xs);transition:transform .2s}.user-dropdown-menu{position:absolute;z-index:var(--z-index-dropdown);top:100%;right:0;width:100%;margin-top:var(--spacing-xs);padding:var(--spacing-xs) 0;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-primary);box-shadow:var(--shadow-lg)}.user-dropdown-item{cursor:pointer;display:flex;align-items:center;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-surface);text-align:left;background:transparent;transition:var(--transition-fast)}.user-dropdown-item:hover{background:var(--color-white-alpha-15)}.user-dropdown-item:focus{background:var(--color-white-alpha-15);outline:none}.header-user-menu .user-dropdown-menu .button-ghost,.user-dropdown-menu .user-dropdown-item.button-ghost{justify-content:flex-start;width:100%;border:none;color:#fff;text-align:left}.header-user-menu .user-dropdown-menu .button-ghost:hover:not(:disabled),.user-dropdown-menu .user-dropdown-item.button-ghost:hover:not(:disabled){background-color:var(--color-white-alpha-15)}.header-search{position:relative;z-index:100;margin-right:1rem;margin-left:auto}.header-search-toggle{cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.5rem;border:none;border-radius:4px;color:var(--color-surface);background:transparent;transition:background-color .2s}.header-search-toggle:hover{background:var(--color-white-alpha-10)}.search-icon-header{width:20px;height:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.header-search-expanded{position:absolute;top:50%;right:0;transform:translateY(-50%);min-width:300px}.header-search-box{display:flex;align-items:center;padding:.5rem 1rem;border:2px solid transparent;border-radius:20px;background:var(--color-white-alpha-95);transition:background-color .2s,border-color .2s,box-shadow .2s}.header-search-icon-inline{flex-shrink:0;width:18px;height:18px;margin-right:.5rem;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.header-search-focused{border-color:#fff;box-shadow:0 4px 12px var(--color-black-alpha-15)}.header-search-input{flex:1;padding:.25rem 0;border:none;font-size:.95rem;color:var(--color-text-primary);background:transparent;outline:none}.header-search-input::placeholder{color:var(--color-text-muted)}.header-search-clear{cursor:pointer;margin-left:.5rem;padding:.25rem;border:none;font-size:1.25rem;line-height:1;color:var(--color-text-muted);background:none;transition:color .2s}.header-search-clear:hover{color:var(--color-text-primary)}.header-search-suggestions{scrollbar-color:var(--color-text-disabled) transparent;scrollbar-width:thin;position:absolute;z-index:var(--z-index-dropdown);top:calc(100% + .5rem);right:0;left:0;overflow:hidden;overflow-y:auto;max-height:300px;padding:var(--spacing-xs) 0;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg)}.header-search-suggestions::-webkit-scrollbar{width:4px}.header-search-suggestions::-webkit-scrollbar-track{background:transparent}.header-search-suggestions::-webkit-scrollbar-thumb{border-radius:2px;background:var(--color-text-disabled)}.header-search-suggestion{cursor:pointer;display:flex;flex-direction:column;width:100%;padding:var(--spacing-md) var(--spacing-md);border:none;border-bottom:1px solid var(--color-border-default);text-align:left;background:transparent;transition:background-color .15s ease}.header-search-suggestion:last-child{border-bottom:none}.header-search-suggestion:hover{background:var(--color-neutral-alpha-10)}.header-search-suggestion:focus{background:var(--color-neutral-alpha-10);outline:none}.header-suggestion-title{margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary)}.header-suggestion-category{font-size:var(--font-size-xs);color:var(--color-text-secondary)}[data-theme=dark] .header-search-box{border-color:var(--color-neutral-300);background:var(--color-neutral-200)}[data-theme=dark] .header-search-input{color:var(--color-text-primary)}[data-theme=dark] .header-search-icon-inline{opacity:.7}[data-theme=dark] .header-search-clear{color:var(--color-text-secondary)}[data-theme=dark] .header-search-clear:hover{color:var(--color-text-primary)}[data-theme=dark] .header-search-suggestions{border-color:var(--color-neutral-300);background:var(--color-neutral-200);box-shadow:0 4px 20px var(--color-black-alpha-30)}[data-theme=dark] .header-search-suggestion:hover{background:var(--color-neutral-alpha-10)}[data-theme=dark] .user-dropdown-menu{border-color:var(--color-border-default);background:var(--color-surface);box-shadow:0 4px 20px var(--color-black-alpha-30)}[data-theme=dark] .user-dropdown-item:hover,[data-theme=dark] .user-dropdown-item:focus{background:var(--color-neutral-alpha-10)}@media (width <= 768px){.header-search-expanded{min-width:250px}}@media (width <= 640px){.header-search-expanded{min-width:200px}.header-search-box{padding:.4rem .8rem}.header-search-input{font-size:.9rem}}.dashboard-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto;padding:2rem}.wide-table-layout{display:block;max-width:1600px;margin:0 auto;padding:1rem 2rem}.status-card,.user-card,.holidays-card{padding:1.5rem;border-radius:8px;background:var(--color-surface);box-shadow:var(--shadow-sm)}.status-card h2,.user-card h2,.holidays-card h2{margin-bottom:1rem;color:var(--color-neutral-800)}.card-actions{display:flex;gap:1rem;margin-top:1rem}.card-link{padding:8px 16px;border-radius:4px;font-size:.9rem;color:var(--color-surface);text-align:center;text-decoration:none;background:var(--color-primary);transition:background-color .2s}.card-link:hover{background:var(--color-accent)}.card-link.manage-holidays{background:var(--color-secondary)}.card-link.manage-holidays:hover{background:var(--color-secondary-hover)}.status-card ul{padding:0;list-style:none}.status-card li{margin:.5rem 0;font-size:1rem}.btn-primary{cursor:pointer;padding:8px 16px;border:none;border-radius:4px;font-size:.9rem;color:var(--color-surface);background:var(--color-accent);transition:background-color .2s}.btn-primary:hover{background:var(--color-accent-hover)}.btn-secondary{cursor:pointer;padding:8px 16px;border:1px solid var(--color-border-default);border-radius:4px;font-size:.9rem;color:var(--color-text-primary);background:var(--color-background);transition:background-color .2s,border-color .2s}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface)}.btn-filter{cursor:pointer;padding:8px 16px;border:1px solid var(--color-border-default);border-radius:4px;font-size:.9rem;color:var(--color-text-primary);background:var(--color-neutral-100);transition:background-color .2s,border-color .2s,color .2s}.btn-filter:hover{border-color:var(--color-primary);color:var(--color-primary)}.btn-filter-active{cursor:pointer;padding:8px 16px;border:1px solid var(--color-primary);border-radius:4px;font-size:.9rem;color:var(--color-surface);background:var(--color-primary);transition:background-color .2s,border-color .2s,color .2s}.btn-filter-active:hover{border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.add-button{cursor:pointer;padding:8px 16px;border:none;border-radius:4px;font-size:.9rem;color:var(--color-surface);background:var(--color-accent);transition:background-color .2s}.add-button:hover{background:var(--color-accent-hover)}.add-button.plus{cursor:pointer;display:flex;align-items:center;justify-content:center;width:11px;height:11px;padding:0;border:none;border-radius:50%;font-size:6px;font-weight:700;line-height:1;color:var(--color-surface);background:var(--color-success);transition:background-color .2s,transform .2s}.add-button.cancel{cursor:pointer;display:flex;align-items:center;justify-content:center;width:15px;height:15px;padding:0;border:none;border-radius:50%;font-size:.7rem;font-weight:400;line-height:1;color:var(--color-surface);background:var(--color-error);transition:background-color .2s,transform .2s}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text-primary)}.form-group input:focus{border-color:var(--color-primary);outline:none}.form-actions{display:flex;gap:1rem}.submit-button{cursor:pointer;padding:10px 20px;border:none;border-radius:4px;font-size:1rem;color:var(--color-surface);background:var(--color-primary);transition:background-color .2s}.cancel-button{cursor:pointer;padding:10px 20px;border:none;border-radius:4px;font-size:1rem;color:var(--color-surface);background:var(--color-text-secondary);transition:background-color .2s}.products-page-content{display:flex;flex-direction:column;width:100%}.page-header{display:flex;justify-content:flex-end;width:100%;margin-bottom:1rem}.toggle-wrapper{display:flex;gap:12px;align-items:center;margin-bottom:1rem}.toggle-label{display:flex;gap:12px;align-items:center;margin:0;font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.toggle-switch{cursor:pointer;position:relative;flex-shrink:0;width:48px;height:24px;border:none;border-radius:12px;background-color:var(--color-neutral-300);outline:none;transition:background-color .3s ease}.toggle-switch:focus{box-shadow:0 0 0 3px var(--color-primary-alpha-20)}.toggle-switch.active{background-color:var(--color-primary)}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background-color:#fff;box-shadow:0 2px 4px var(--color-black-alpha-20);transition:transform .3s ease}.toggle-switch.active:after{transform:translate(24px)}.toggle-switch:disabled{cursor:not-allowed;opacity:.6;background-color:var(--color-neutral-200)}.toggle-switch:hover:not(:disabled){background-color:var(--color-neutral-400)}.toggle-switch.active:hover:not(:disabled){background-color:var(--color-primary-hover)}.toggle-text{-webkit-user-select:none;user-select:none;font-size:.95rem;color:var(--color-text-primary)}.toggle-status{min-width:60px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.toggle-status.active{color:var(--color-success)}.toggle-status.inactive{color:var(--color-warning)}.form-group .toggle-wrapper{margin-bottom:.5rem}.form-group .toggle-label{font-size:.9rem;font-weight:500;color:var(--color-text-primary)}.status-indicator{width:12px;height:12px;margin:0 auto;border-radius:50%}.data-tables-container{display:flex;flex-direction:column;gap:2rem}@media (width <= 768px){.form-actions{flex-direction:column}.page-header{justify-content:center}}.not-found-container{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;background-color:var(--color-neutral-50)}.not-found-card{width:90%;max-width:400px;padding:2rem;border-radius:8px;text-align:center;background:var(--color-surface);box-shadow:0 4px 6px var(--color-black-alpha-10)}.not-found-card h1{margin-bottom:1rem;color:var(--color-text-primary)}.not-found-card p{margin-bottom:2rem;color:var(--color-text-secondary)}.back-home-button{cursor:pointer;padding:12px 24px;border:none;border-radius:4px;font-size:1rem;color:var(--color-surface);background:var(--color-primary);transition:background-color .2s}.back-home-button:hover{background:var(--color-accent)}.page-container{min-height:100vh;min-height:100dvh;background-color:var(--color-background)}.main-content{max-width:1200px;margin:0 auto;padding:var(--spacing-xl)}.content-header{display:flex;gap:var(--spacing-lg);align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-xl)}.content-header .page-title{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary)}.content-header .page-description{max-width:600px;margin:0;font-size:var(--font-size-base);color:var(--color-text-secondary)}.content-actions{display:flex;gap:var(--spacing-md);align-items:center}.user-info{display:flex;gap:var(--spacing-sm);align-items:center}.content-body{overflow:hidden;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-base)}@media (width <= 768px){.main-content{padding:var(--spacing-lg)}.content-header{flex-direction:column;gap:var(--spacing-md);align-items:stretch}}.form-section-title{margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.form-error{font-size:.875rem;color:var(--color-error)}.checkbox-label{cursor:pointer;display:flex;gap:.5rem;align-items:center}.form-help{font-size:.875rem;color:var(--color-text-secondary)}.access-denied-container{margin-bottom:1.5rem}.access-denied-info{margin-top:.5rem;padding:1rem;border:1px solid var(--color-border-light);border-radius:4px;background-color:var(--color-surface)}.access-denied-info p{margin:0;font-size:.9rem;color:var(--color-text-secondary)}.form-description{margin-bottom:1rem;font-size:.875rem;color:var(--color-text-secondary)}.button{cursor:pointer;display:inline-flex;gap:var(--spacing-sm);gap:.5rem;align-items:center;border:none;border-radius:var(--radius-base);font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);outline:none;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base)}.button:focus-visible{box-shadow:0 0 0 3px var(--color-primary-alpha-30)}.button-primary{color:var(--color-surface);background-color:var(--color-primary)}.button-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.button-secondary{color:var(--color-text-primary);background-color:var(--color-neutral)}.button-secondary:hover:not(:disabled){background-color:var(--color-neutral-hover)}.button-danger{color:var(--color-surface);background-color:var(--color-error)}.button-danger:hover:not(:disabled){background-color:var(--color-error-dark)}.button-ghost{border:1px solid var(--color-primary);color:var(--color-primary);background-color:transparent}.button-ghost:hover:not(:disabled){background-color:var(--color-primary-alpha-10)}.button-small{padding:.375rem .75rem;font-size:.875rem}.button-medium{padding:.5rem 1rem;font-size:1rem}.button-large{padding:.75rem 1.5rem;font-size:1.125rem}.button-disabled{cursor:not-allowed;opacity:.6}.button-loading{position:relative;color:transparent}.button-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:currentColor}.loading{display:flex;flex-direction:column;gap:var(--spacing-sm);gap:.5rem;align-items:center}.loading-inline{display:inline-flex;flex-direction:row;gap:var(--spacing-xs)}.loading-block{display:flex;flex-direction:column;padding:var(--spacing-md)}.loading-center{display:flex;flex-direction:column;gap:.5rem;align-items:center;min-height:100px}.loading-spinner{display:flex;flex-direction:column;gap:var(--spacing-sm);gap:.5rem;align-items:center}.spinner{width:6px;height:6px;border-radius:50%;background:var(--color-primary);animation:pulse var(--transition-duration-pulse) ease-in-out infinite}.loading-small .spinner{width:4px;height:4px}.loading-medium .spinner{width:6px;height:6px}.loading-large .spinner{width:8px;height:8px}.loading-text{font-size:.9rem;color:var(--color-neutral)}.loading-small .loading-text{font-size:.8rem}.loading-large .loading-text{font-size:1.1rem}@media (prefers-reduced-motion: reduce){.spinner{opacity:.6;animation:none}}.message{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding:1rem;border-radius:6px;animation:slide-in .3s ease}.message-error{border:1px solid var(--color-error-light);color:var(--color-error-dark);background-color:var(--color-error-light)}.message-success{border:1px solid var(--color-success-light);color:var(--color-success-dark);background-color:var(--color-success-light)}.message-warning{border:1px solid var(--color-warning-light);color:var(--color-warning-dark);background-color:var(--color-warning-light)}.message-info{border:1px solid var(--color-info-light);color:var(--color-info-dark);background-color:var(--color-info-light)}.message-content{flex:1}.message-dismiss{cursor:pointer;margin-left:1rem;padding:0;border:none;font-size:1.5rem;color:inherit;opacity:.7;background:none;transition:opacity .2s}.message-dismiss:hover{opacity:1}@keyframes slide-in{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.card{overflow:hidden;border-radius:8px;background:var(--color-surface);box-shadow:var(--shadow-sm)}.card-content{background:var(--color-surface)}.card-padded .card-content{padding:1.5rem}.card-header{padding:1rem 1.5rem;border-bottom:1px solid var(--color-neutral-100);background-color:var(--color-neutral-50)}.card-title{margin:0;font-size:1.25rem;color:var(--color-text-primary)}.form-field{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text-primary)}.required-indicator{color:var(--color-error)}.form-input{width:100%;padding:.5rem .75rem;border:1px solid var(--color-neutral-300);border-radius:4px;font-family:inherit;font-size:1rem;background-color:var(--color-surface);transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-primary-alpha-10)}.form-input:disabled{cursor:not-allowed;color:var(--color-text-muted);opacity:.6;background-color:var(--color-neutral-100)}.form-field-error .form-input{border-color:var(--color-error)}.form-field-error .form-input:focus{box-shadow:0 0 0 3px var(--color-error-alpha-10)}.form-error-message{display:block;margin-top:.25rem;font-size:.875rem;color:var(--color-error)}.form-control{width:100%;padding:.5rem .75rem;border:1px solid var(--color-neutral-300);border-radius:4px;font-family:inherit;font-size:1rem;color:var(--color-text-primary);background-color:var(--color-surface);transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-primary-alpha-10)}.form-control:disabled{cursor:not-allowed;color:var(--color-text-primary);background-color:var(--color-neutral-100)}.modal-form{display:flex;flex-direction:column;gap:0}.modal-form-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%;max-width:44rem;margin:0 auto}.form-row{display:flex;flex-wrap:wrap}.form-row>.form-field,.form-row>.form-group{flex:1;min-width:200px}.form-row>.form-field{margin-bottom:0}.modal-form-wrapper .form-row{gap:var(--spacing-md);margin:0}.modal-form-wrapper .form-group{display:flex;flex-direction:column;gap:.5rem}.modal-form-wrapper .form-field{margin-bottom:var(--spacing-sm)}.attachment-section-title{position:relative;overflow:hidden;margin:1rem 0 .4rem;font-size:.95rem;font-weight:600;color:var(--color-text-primary-strong)}.attachment-list{margin:.35rem 0 0;padding:0;border:1px solid var(--color-border-subtle);border-radius:8px;list-style:none;background-color:var(--color-surface-subtle)}.attachment-item{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--color-border-subtle)}.attachment-item:first-of-type{border-radius:8px 8px 0 0}.attachment-item:last-of-type{border-bottom:0;border-radius:0 0 8px 8px}.attachment-meta{display:flex;flex-direction:column;gap:.2rem;min-width:0}.attachment-name{position:relative;overflow:hidden;font-weight:600;color:var(--color-text-primary-strong);overflow-wrap:break-word}.attachment-name--removed{color:var(--color-text-secondary-strong);text-decoration:line-through}.attachment-link{position:relative;overflow:hidden;font-weight:600;color:var(--color-link-strong);text-decoration:none}.attachment-link:hover,.attachment-link:focus-visible{color:var(--color-link-strong-hover);text-decoration:none}.attachment-preview-link{cursor:pointer;position:relative;overflow:hidden;font-weight:600;color:var(--color-link-strong);text-decoration:none}.attachment-preview-link:hover,.attachment-preview-link:focus-visible{color:var(--color-link-strong-hover);text-decoration:none}.attachment-preview-link:active{color:var(--color-link-strong-active);text-decoration:none}.attachment-preview-link--removal{color:var(--color-error-strong)}.attachment-preview-link--removal:hover,.attachment-preview-link--removal:focus-visible{color:var(--color-error-strong-hover)}.attachment-size{font-size:.85rem;color:var(--color-text-secondary-strong)}.attachment-actions{display:flex;align-items:center}.attachment-remove{cursor:pointer;position:relative;overflow:hidden;padding:0;border:none;font-size:.95rem;font-weight:600;color:var(--color-error-strong);background:none}.attachment-remove:disabled{cursor:not-allowed;opacity:.35}.attachment-remove:hover:not(:disabled){color:var(--color-error-strong-hover)}.attachment-preview{cursor:pointer;position:relative;overflow:hidden;padding:0;border:none;font-size:inherit;font-weight:600;color:var(--color-link-strong);text-align:left;text-decoration:none;background:none}.attachment-name.attachment-preview{color:var(--color-link-strong)}.attachment-preview:disabled{cursor:not-allowed;color:var(--color-text-muted-strong);text-decoration:none}.attachment-preview-modal{display:flex;gap:.5rem;gap:1.5rem;align-items:center;min-height:24rem}.attachment-preview-stage{display:flex;flex:1;gap:.5rem;align-items:center;justify-content:center;max-height:70vh}.attachment-preview-image{max-width:100%;max-height:70vh;border-radius:12px;box-shadow:0 15px 30px #0f172a33}.attachment-preview-frame{width:100%;height:70vh;border:none;border-radius:12px;background-color:var(--color-surface);box-shadow:0 15px 30px #0f172a1f}.attachment-preview-fallback{padding:2rem 3rem;border-radius:12px;font-size:.95rem;color:var(--color-text-secondary-strong);text-align:center;background-color:var(--color-surface-muted)}.attachment-preview-nav{cursor:pointer;padding:0 .25rem;border:none;font-size:2.5rem;font-weight:500;line-height:1;color:var(--color-text-muted-strong);background:none}.attachment-preview-nav:disabled{cursor:not-allowed;opacity:.3}.attachment-preview-nav:hover:not(:disabled){color:var(--color-link-strong)}.attachment-preview-footer{display:flex;gap:1rem;align-items:center;justify-content:space-between;margin-top:1rem}.attachment-preview-actions{display:inline-flex;gap:.75rem;align-items:center}.attachment-preview-counter{font-size:.9rem;color:var(--color-text-secondary-strong)}.attachment-download-link,.attachment-open-link{display:inline-flex;gap:.5rem;align-items:center;padding:.125rem;color:var(--color-link-strong);text-decoration:none}.attachment-download-link:hover,.attachment-open-link:hover{color:var(--color-link-strong-hover)}.attachment-download-icon,.attachment-open-icon{font-size:1.2rem;line-height:1}.spreadsheet-preview{overflow:auto;width:100%;max-height:70vh;padding:1rem;border-radius:12px;background-color:var(--color-surface);box-shadow:0 15px 30px #0f172a1f}.spreadsheet-preview table{border-collapse:collapse;width:100%;font-size:.9rem}.spreadsheet-preview th,.spreadsheet-preview td{padding:.5rem;border:1px solid var(--color-border-subtle);text-align:left}.attachment-download-hint{font-size:.9rem;color:var(--color-text-secondary-strong)}.attachment-upload-control{display:inline-flex;gap:.75rem;align-items:center}.pending-attachments,.pending-removal{margin-top:1rem}.attachment-helper{margin:.25rem 0 0;font-size:.85rem;color:var(--color-text-secondary-strong)}.pending-removal .attachment-item{border-color:var(--color-error-border-light);background-color:var(--color-error-surface-light)}.attachment-undo{cursor:pointer;padding:0;border:none;font-size:.85rem;font-weight:500;color:var(--color-link-strong);text-decoration:none;background:none}.attachment-undo:disabled{cursor:not-allowed;text-decoration:none;opacity:.4}.attachment-undo:hover:not(:disabled){color:var(--color-link-strong-hover);text-decoration:none}.pending-attachments .attachment-list,.pending-attachments .attachment-item{border-color:var(--color-border-subtle);background-color:var(--color-surface)}.readonly-field input,.readonly-field select,.readonly-field textarea{cursor:not-allowed;color:var(--color-text-primary);background-color:var(--color-neutral-100)}.autocomplete-field,.autocomplete-wrapper{position:relative}.autocomplete-clear{cursor:pointer;position:absolute;top:50%;right:.75rem;transform:translateY(-50%);padding:0;border:0;font-size:1.25rem;line-height:1;color:var(--color-text-secondary);background:transparent}.autocomplete-clear:hover{color:var(--color-text-primary)}.autocomplete-dropdown{position:absolute;z-index:20;top:calc(100% + .25rem);overflow-y:auto;width:100%;max-height:16rem;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-sm)}.autocomplete-dropdown.empty{padding:.5rem .75rem;color:var(--color-text-muted)}.autocomplete-item{cursor:pointer;padding:.5rem .75rem}.autocomplete-item .site-name{font-weight:var(--font-weight-semibold)}.autocomplete-item .site-meta{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.autocomplete-item:hover,.autocomplete-item.is-active{color:var(--color-text-primary);background:var(--color-accent-alpha-10)}.form-control-select{cursor:pointer;padding-right:2.5rem;font-style:italic;color:var(--color-text-secondary);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px 12px;transition:border-color .2s ease,box-shadow .2s ease}.form-control-select:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px var(--color-accent-alpha-20)}.form-control-select:hover:not(:disabled):not(:focus){border-color:var(--color-border-hover)}.form-control-select.all-selected{font-style:normal}.selected-value-badge{display:inline-flex;margin:.6rem .4rem 0 0}.selected-value-badge-button{cursor:pointer;padding:0;border:none;background:none}.selected-value-badge-button:focus-visible{border-radius:var(--radius-sm);outline:2px solid var(--color-accent)}.cell-badge.dropdown-badge{gap:.3rem;padding:4px 10px;font-size:.75rem}.form-control-textarea{resize:vertical;min-height:80px;padding:.75rem;line-height:1.5}.form-field-error .form-control{border-color:var(--color-error)}.form-field-error .form-control:focus{border-color:var(--color-error);box-shadow:0 0 0 3px var(--color-error-alpha-10)}.form-group label{flex:1;min-width:200px;margin-bottom:1rem}.toggle-wrapper{margin-bottom:.5rem}.toggle-label{display:flex;gap:.75rem;align-items:center;margin-bottom:.25rem}.form-group-flex{flex:1}.department-badges-grid{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.department-permission-item{display:flex;flex-direction:column;gap:.5rem}.department-name{margin-bottom:.25rem;font-weight:500;color:var(--color-text-primary)}.permission-badges-table{display:flex;flex-wrap:wrap;gap:2px}.sr-only{position:absolute;overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;white-space:nowrap}.holiday-page{min-height:100vh;min-height:100dvh;background-color:var(--color-neutral-50)}.holidays-container{max-width:1200px;margin:0 auto;padding:2rem}.holidays-header{margin-bottom:2rem;text-align:center}.holidays-header h1{margin-bottom:1rem;font-size:1.5rem;color:var(--color-text-primary)}.year-navigation{display:flex;gap:2rem;align-items:center;justify-content:center;margin:2rem 0}.nav-button{cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;font-size:1rem;font-weight:700;color:var(--color-surface);background:var(--color-primary);transition:transform .2s ease,background-color .2s ease}.nav-button:disabled{cursor:not-allowed;opacity:.6;background:var(--color-neutral)}.nav-button:hover:not(:disabled){transform:scale(1.1);background:var(--color-accent)}.current-year{min-width:120px;margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text-primary);text-align:center}.error-message{margin:1rem 0;padding:1rem;border:1px solid var(--color-error-light);border-radius:4px;color:var(--color-error-dark);background:var(--color-error-light)}.success-message{margin:1rem 0;padding:1rem;border:1px solid var(--color-success-light);border-radius:4px;color:var(--color-success-dark);background:var(--color-success-light)}.holiday-form{margin:1.5rem 0;padding:1.5rem;border:1px solid var(--color-border-input);border-radius:8px;background:var(--color-surface);box-shadow:var(--shadow-sm)}.holiday-form h3{margin:0 0 1rem;font-size:1.1rem;color:var(--color-text-primary)}.holiday-form-fields{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.form-group{flex:1;min-width:200px}.form-group label{display:block;margin-bottom:.5rem;font-size:.9rem;font-weight:500;color:var(--color-text-primary)}.form-group input{width:100%;padding:8px 12px;border:1px solid var(--color-border-input);border-radius:4px;font-size:1rem;transition:border-color .2s}.form-group input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px var(--color-primary-alpha-10)}.form-actions{display:flex;gap:1rem;min-width:auto;margin-bottom:1rem}.submit-button{cursor:pointer;height:38px;padding:8px 20px;border:none;border-radius:4px;font-size:1rem;color:var(--color-surface);background:var(--color-primary);transition:background-color .2s}.submit-button:hover{background:var(--color-accent)}.cancel-button{cursor:pointer;height:38px;padding:8px 20px;border:none;border-radius:4px;font-size:1rem;color:var(--color-surface);background:var(--color-neutral);transition:background-color .2s}.cancel-button:hover{background:var(--color-neutral-hover)}.months-calendar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}.month-widget{overflow:hidden;border:1px solid var(--color-neutral-100);border-radius:8px;background:var(--color-surface);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.month-widget:hover{box-shadow:var(--shadow-md)}.month-header{position:relative;display:flex;align-items:center;padding:.25rem;color:var(--color-surface);background:var(--color-primary)}.month-name{margin:0;margin-left:.25rem;font-size:.7rem;font-weight:600;color:var(--color-surface)}.add-button.plus,.add-button.cancel{position:absolute;right:.25rem}.add-button.plus{cursor:pointer;display:flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:none;border-radius:50%;font-size:8px;font-weight:700;line-height:1;color:var(--color-surface);background:var(--color-success);transition:background-color .2s,transform .2s}.add-button.plus:hover{transform:scale(1.05);background:var(--color-success-dark)}.add-button.cancel{cursor:pointer;display:flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:none;border-radius:50%;font-size:8px;font-weight:700;line-height:1;color:var(--color-surface);background:var(--color-error);transition:background-color .2s,transform .2s}.add-button.cancel:hover{transform:scale(1.05);background:var(--color-error-dark)}.month-holidays{min-height:120px;padding:.25rem .5rem .5rem}.no-month-holidays{display:flex;align-items:center;justify-content:center;height:100%;margin:0 auto;padding:.5rem 0;font-size:.6rem;font-style:italic;color:var(--color-neutral);text-align:center}.month-holiday-item{position:relative;display:flex;align-items:center;padding:.1rem .25rem .2rem .75rem;border-bottom:1px solid var(--color-neutral-50);font-size:.6rem}.field-error{display:block;margin-top:.25rem;font-size:.875rem;color:var(--color-error)}.form-group .error{border-color:var(--color-error)}.form-group .error:focus{box-shadow:0 0 0 .2rem var(--color-error-alpha-25)}.month-holiday-item:not(:first-child){margin-top:.25rem}.month-holiday-item:last-child{border-bottom:none}.holiday-info{display:flex;flex:1;gap:.4rem;align-items:center;padding:.25rem;border-radius:4px;transition:background-color .2s ease}.holiday-info.clickable{cursor:pointer}.holiday-info.clickable:hover{background-color:var(--color-black-alpha-05)}.holiday-name{font-size:.6rem;font-weight:500;line-height:1;color:var(--color-text-primary)}.holiday-date{font-size:.55rem;line-height:1;color:var(--color-neutral);white-space:nowrap}.month-delete-button{cursor:pointer;position:absolute;right:-.25rem;display:flex;align-items:center;justify-content:center;width:14px;height:14px;border:none;border-radius:50%;font-size:8px;font-weight:700;color:var(--color-surface);background:var(--color-error);transition:background-color .2s,transform .2s}.month-delete-button:hover{transform:scale(1.05);background:var(--color-error-dark)}@media (width <= 1024px){.months-calendar-grid{grid-template-columns:repeat(3,1fr);gap:1rem}}@media (width <= 768px){.months-calendar-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.holidays-container{padding:1rem}.year-navigation{gap:1rem}.current-year{min-width:100px;font-size:1.5rem}.nav-button{width:35px;height:35px;font-size:1rem}}@media (width <= 480px){.months-calendar-grid{grid-template-columns:1fr}.holiday-form-fields,.form-actions{flex-direction:column}}.table-container{position:relative;overflow:visible;display:flex;flex-direction:column;margin:var(--spacing-md) 0;border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-base)}.table-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-neutral);background:var(--color-background)}.table-header-bar{display:flex;gap:var(--spacing-md);align-items:center;justify-content:flex-start}.table-header-controls{display:flex;gap:var(--spacing-sm);margin-right:var(--spacing-md);margin-left:auto}.table-export-icon{cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:var(--radius-sm);line-height:1;color:var(--color-text-secondary);background:transparent;transition:color var(--transition-base),background-color var(--transition-base)}.table-export-icon:disabled{cursor:not-allowed;opacity:.5}.table-export-icon:hover:not(:disabled){color:var(--color-accent);background:var(--color-background)}.table-export-icon .icon-badge{pointer-events:none;position:absolute;right:-2px;bottom:-2px}.table-title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.table-wrapper{scrollbar-color:var(--color-neutral) var(--color-background);scrollbar-width:thin;overflow-x:auto;flex:1 0 auto;width:100%;max-width:100%;-webkit-overflow-scrolling:touch}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{border-radius:var(--radius-sm);background:var(--color-background)}.table-wrapper::-webkit-scrollbar-thumb{border-radius:var(--radius-sm);background:var(--color-neutral)}.table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-600)}.data-table{table-layout:auto;border-collapse:collapse;width:max-content;min-width:100%;font-size:.6875rem}.table-header:has(.table-tabular-tabs){padding-right:0;padding-left:var(--spacing-lg)}.table-tabular-tabs{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin:0;padding:0}.table-tabular-tabs .button.tabular-button{padding:var(--spacing-sm) 0;border:none;border-bottom:3px solid transparent;border-radius:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-decoration:none;background:transparent;box-shadow:none;transition:all var(--transition-base)}.table-tabular-tabs .button.tabular-button:hover{border-bottom-color:var(--color-accent-alpha-30);color:var(--color-accent);background:transparent;box-shadow:none}.table-tabular-tabs .button-primary.tabular-button{border-bottom-color:var(--color-accent);font-weight:var(--font-weight-bold);color:var(--color-accent);background:transparent;box-shadow:none}.table-tabular-tabs .button-ghost.tabular-button{border-bottom-color:transparent;color:var(--color-text-secondary);background:transparent;box-shadow:none}.data-table thead{border-bottom:2px solid var(--color-neutral);background:var(--color-background)}.data-table th{position:sticky;z-index:10;top:0;min-width:fit-content;padding:1px 6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.55rem;font-weight:var(--font-weight-semibold);line-height:1.3;color:var(--color-text-primary);text-align:left;text-transform:uppercase;letter-spacing:.02em;white-space:normal;background:var(--color-background)}.table-header-content{display:inline-flex;gap:.25rem;align-items:center;max-width:100%}.table-header-text{flex:0 1 auto;-webkit-hyphens:none;hyphens:none;word-break:keep-all;overflow-wrap:normal}.table-header-text.inline-editable-column{font-weight:var(--font-weight-bold)}.data-table .inline-editable-column-cell{font-weight:var(--font-weight-semibold)}.table-header-filter{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center}.data-table .sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-base)}.data-table .sortable:hover{color:var(--color-accent)}.data-table .sorted-asc,.data-table .sorted-desc{font-weight:var(--font-weight-bold);color:var(--color-accent)}.data-table .data-row{border-bottom:1px solid var(--color-background);transition:background-color var(--transition-base)}.data-table .data-row:nth-child(2n){background-color:var(--color-neutral-200)}.data-table .data-row:hover{background-color:var(--color-neutral-300)}.data-table td{padding:1px 6px;font-family:IBM Plex Mono,ui-monospace,SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.625rem;-webkit-hyphens:none;hyphens:none;color:var(--color-text-primary);word-break:keep-all;overflow-wrap:normal;white-space:nowrap}.data-table a,.table-link{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast),text-decoration-color var(--transition-fast)}.table-link--button{border:0;background:none;margin:0;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline;font:inherit}.data-table a:hover,.data-table a:focus,.table-link:hover,.table-link:focus{color:var(--color-accent-hover);text-decoration:underline}.data-table a:focus-visible,.table-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cell-site-name,.cell-pipeline-item{min-width:150px}.cell-date,.cell-number,.cell-currency{white-space:nowrap}.row-number-header,.row-number-cell{width:40px;min-width:40px;max-width:40px;color:var(--color-text-secondary);text-align:left}.cell-number,.cell-currency{text-align:left}.text-muted{font-style:italic;color:var(--color-text-muted)}.table-empty-cell{position:relative;padding:0;border:none}.cell-badge{--color-table-badge-text: var(--color-text-secondary);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-neutral-200);display:inline-flex;gap:.25rem;align-items:center;padding:2px 6px;border:1px solid var(--color-table-badge-border);border-radius:var(--radius-sm);font-size:.55rem;font-weight:var(--font-weight-medium);line-height:1.2;color:var(--color-table-badge-text);text-transform:none;letter-spacing:normal;white-space:nowrap;background-color:var(--color-table-badge-background)}.cell-badge.inactive,.cell-badge.badge-error,.cell-badge.error{--color-table-badge-text: var(--color-error);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-error-alpha-30)}.cell-badge.badge-primary,.cell-badge.primary{--color-table-badge-text: var(--color-primary);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-primary-alpha-30)}.cell-badge.badge-accent,.cell-badge.accent{--color-table-badge-text: var(--color-accent);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-accent-alpha-30)}.cell-badge.badge-success,.cell-badge.success{--color-table-badge-text: var(--color-success);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-success-alpha-30)}.cell-badge.badge-warning,.cell-badge.warning{--color-table-badge-text: var(--color-warning);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-warning-alpha-30)}.cell-badge.badge-info,.cell-badge.info{--color-table-badge-text: var(--color-info);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-info-alpha-30)}.cell-badge.badge-dark,.cell-badge.dark{--color-table-badge-text: var(--color-neutral-900);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-neutral-400)}.cell-badge.badge-neutral,.cell-badge.neutral{--color-table-badge-text: var(--color-neutral-600);--color-table-badge-background: transparent;--color-table-badge-border: var(--color-neutral-300)}.cell-badge.badge-sm{gap:.2rem;padding:1px 4px;font-size:.5rem}.cell-badge.badge-lg{gap:.35rem;padding:3px 8px;font-size:.65rem}.table-actions{display:flex;gap:var(--spacing-xs)}.table-section-actions{display:flex;gap:var(--spacing-xs);justify-content:flex-end;margin:0;padding:var(--spacing-xs) var(--spacing-xl) 0}.table-section-actions+.table-container{margin-top:var(--spacing-sm)}.table-action-btn{cursor:pointer;padding:2px 6px;border:none;border-radius:var(--radius-base);font-size:.625rem;font-weight:var(--font-weight-medium);color:var(--color-accent);background:transparent;transition:color var(--transition-base),background-color var(--transition-base)}.table-action-btn:hover{color:var(--color-surface);background:var(--color-accent)}.table-action-btn.danger{color:var(--color-error)}.table-action-btn.danger:hover{color:var(--color-surface);background:var(--color-error)}.table-empty{position:sticky;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;width:max-content;max-width:var(--spacing-table-max-width, 90vw);margin:0 auto;padding:var(--spacing-xxl);color:var(--color-text-muted);text-align:center}.table-empty-icon{margin-bottom:var(--spacing-md);font-size:var(--font-size-xxxl);opacity:.5}.table-empty-text{margin-bottom:var(--spacing-sm);font-size:var(--font-size-lg)}.table-empty-subtext{margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.table-loading{padding:var(--spacing-xxl);text-align:center}.table-loading-spinner{display:inline-block;width:8px;height:8px;border-radius:var(--radius-round);background:var(--color-primary);animation:pulse var(--transition-duration-pulse) ease-in-out infinite}@media (prefers-reduced-motion: reduce){.table-loading-spinner{opacity:.6;animation:none}}.table-pagination{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-lg);border-top:1px solid var(--color-neutral-200);background:var(--color-surface)}.table-pagination-info{flex:1 1 auto;min-width:120px;font-size:.625rem;color:var(--color-text-secondary)}.table-pagination-controls{display:flex;gap:var(--spacing-xs);margin-left:auto}.table-pagination-summary{display:inline-flex;flex-wrap:wrap;gap:var(--spacing-5xs);align-items:center;font-size:.625rem;color:var(--color-text-secondary)}.table-pagination-size-input{width:1.5rem;margin-inline:.125rem;padding:.1rem .25rem;border:1px solid var(--color-neutral);border-radius:var(--radius-sm);font-size:.625rem;color:var(--color-text-primary);text-align:center;background:var(--color-surface);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.table-pagination-size-input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px var(--color-primary-alpha-20)}.table-pagination-ellipsis{display:inline-flex;align-items:center;padding:0 var(--spacing-5xs);font-size:.75rem;color:var(--color-text-secondary)}.table-pagination-btn{cursor:pointer;padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);transition:color var(--transition-base),background-color var(--transition-base)}.table-pagination-btn:disabled{cursor:not-allowed;opacity:.5}.table-pagination-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.table-pagination-btn.active{border-color:var(--color-accent);color:var(--color-surface);background:var(--color-accent)}@media (width <=768px){.data-table{font-size:.6625rem}.data-table th{padding:1px 5px;font-size:.5rem}.data-table td{padding:1px 5px}.table-header{padding:var(--spacing-md)}.table-pagination{flex-direction:column;gap:var(--spacing-xs);align-items:stretch}.table-pagination-info{text-align:center}.table-pagination-controls{justify-content:center;margin-left:0}.table-pagination-summary{justify-content:center}}.active-filters-bar{position:sticky;z-index:2;top:0;right:0;left:0;display:flex;gap:var(--spacing-sm);align-items:center;justify-content:space-between;min-width:100%;padding:var(--spacing-sm) var(--spacing-lg);border-bottom:1px solid var(--color-background);background:var(--color-background)}.active-filters-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.filter-chip{display:inline-flex;gap:4px;align-items:center;padding:2px 6px;border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:.6rem;background:var(--color-surface)}.filter-chip-label{color:var(--color-text-secondary)}.filter-chip-value{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.filter-chip-clear{cursor:pointer;padding:0 4px;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);background:transparent}.filter-chip-clear:hover{color:var(--color-error)}.filter-chip.hidden-column-chip .filter-chip-value{font-style:italic;color:var(--color-text-secondary)}.filter-clear-all{cursor:pointer;padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-neutral);border-radius:var(--radius-base);font-size:.625rem;color:var(--color-text-secondary);background:var(--color-surface)}.filter-clear-all:hover{border-color:var(--color-error);color:var(--color-error)}.inline-edit-cell{cursor:pointer;display:inline-block;margin:0;padding:0;width:100%;border-radius:4px;text-align:inherit;line-height:inherit;transition:background-color .2s ease}.inline-edit-cell:hover{background-color:#0000000d}.inline-edit-cell:focus{outline:2px solid var(--color-primary);outline-offset:2px}.inline-edit-cell.inline-edit-disabled{cursor:default}.inline-edit-cell.inline-edit-disabled:hover{background-color:transparent}.inline-edit-input,.inline-edit-select{width:100%;max-width:120px;margin:0;padding:2px 4px;border:1px solid var(--color-primary);border-radius:4px;height:calc(1.2em + 4px);line-height:inherit;box-sizing:border-box;text-align:inherit;font-size:inherit;outline:none}.inline-edit-input:focus,.inline-edit-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgb(var(--color-primary-rgb) / .2)}.inline-edit-textarea{width:100%;min-width:200px;max-width:400px;min-height:32px;margin:0;padding:4px 6px;border:1px solid var(--color-primary);border-radius:4px;line-height:1.4;box-sizing:border-box;font-family:inherit;text-align:inherit;font-size:inherit;outline:none;resize:none;overflow:hidden}.inline-edit-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgb(var(--color-primary-rgb) / .2)}.inline-edit-editor{width:100%;display:inline-flex}.data-table .inline-editing{background-color:var(--color-neutral-100)}:root:has(.auth-container){background:var(--color-neutral-50)}.auth-container{isolation:isolate;display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;color:var(--color-neutral-800);background:var(--color-neutral-50);background-color:var(--color-neutral-50)}.auth-content{display:flex;flex-direction:column;gap:2rem;align-items:center}.auth-logo-container{margin-bottom:1.5rem}.auth-logo{width:auto;height:60px;margin-bottom:.5rem}.auth-logo-fallback{font-size:2.5rem;font-weight:700;color:var(--color-accent);letter-spacing:-.5px}.auth-container .auth-card{width:90%;min-width:400px;max-width:480px;padding:3rem 2.5rem;border:1px solid var(--color-neutral-100);border-radius:12px;color:var(--color-neutral-800);text-align:center;background:var(--color-surface);background-color:var(--color-surface);box-shadow:var(--shadow-md)}.auth-container .auth-title{margin-bottom:2rem;font-size:1.875rem;font-weight:600;color:var(--color-neutral-800);letter-spacing:-.5px;white-space:nowrap}.auth-container .auth-subtitle{margin:0;font-size:.875rem;font-weight:400;color:var(--color-neutral-500)}.auth-container .microsoft-signin-button{cursor:pointer;display:inline-flex;gap:8px;align-items:center;justify-content:center;margin:0 auto;padding:10px 16px;border:1px solid var(--color-neutral-400);border-radius:4px;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;font-size:14px;font-weight:600;color:var(--color-neutral-600);text-decoration:none;white-space:nowrap;background-color:var(--color-surface);transition:background-color var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.auth-container .microsoft-signin-button:hover{border-color:var(--color-neutral-500);background-color:var(--color-neutral-50);box-shadow:var(--shadow-sm)}.auth-container .microsoft-signin-button:active{background-color:var(--color-neutral-100);box-shadow:inset 0 1px 2px var(--color-black-alpha-10)}.auth-container .microsoft-signin-button:focus{outline:2px solid var(--color-accent);outline-offset:2px}.microsoft-logo{flex-shrink:0;width:18px;height:18px}[data-theme=dark] .auth-container,:root[data-theme=dark] .auth-container{color:var(--color-neutral-800);background:var(--color-neutral-50)}[data-theme=dark] .auth-container .auth-card{color:var(--color-neutral-800);background:var(--color-surface)}[data-theme=dark] .auth-container .auth-title{color:var(--color-neutral-800)}[data-theme=dark] .auth-container .auth-subtitle{color:var(--color-neutral-500)}[data-theme=dark] .auth-container .auth-logo-fallback{color:var(--color-accent)}@media (width <= 480px){.auth-container .auth-card{width:95%;min-width:320px;padding:2rem 1.5rem;background:var(--color-surface)}.auth-container .auth-title{font-size:1.5rem;color:var(--color-neutral-800);white-space:normal}.auth-container .microsoft-signin-button{gap:6px;padding:8px 12px;font-size:13px;white-space:normal}}.error-boundary-container{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:20px;background-color:var(--color-neutral-50)}.error-card{width:100%;max-width:600px;padding:40px;text-align:center}.error-title{margin-bottom:20px;font-size:2rem;font-weight:600;color:var(--color-error)}.error-content{margin:30px 0}.error-message{margin-bottom:20px;font-size:1.1rem;line-height:1.6;color:var(--color-neutral-600)}.error-details{margin-top:30px;padding:20px;border:1px solid var(--color-neutral-200);border-radius:8px;text-align:left;background-color:var(--color-neutral-50)}.error-details summary{cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:10px;font-weight:500;color:var(--color-neutral-500)}.error-details summary:hover{color:var(--color-neutral-600)}.error-details pre{overflow-x:auto;margin-top:15px;font-family:var(--font-family-mono);font-size:.875rem;line-height:1.5;color:var(--color-neutral-600);overflow-wrap:break-word;white-space:pre-wrap}.error-actions{display:flex;gap:15px;justify-content:center;margin-top:30px}.error-actions button{min-width:120px}.error-boundary-fallback{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:20px;background-color:var(--color-neutral-50)}.error-boundary-fallback h1{margin-bottom:20px;color:var(--color-error)}.error-boundary-fallback pre{overflow-x:auto;margin:20px 0;padding:15px;border:1px solid var(--color-neutral-200);border-radius:4px;font-size:.875rem;background-color:var(--color-neutral-50)}.modal-overlay{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:20px;background-color:var(--color-overlay-dark);animation:fade-in .2s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal-content{display:flex;flex-direction:column;max-height:90vh;border-radius:8px;background:var(--color-surface);outline:none;box-shadow:var(--shadow-lg);animation:slide-in .3s ease-out}@keyframes slide-in{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-small{width:100%;max-width:400px}.modal-medium{width:100%;max-width:600px}.modal-large{width:100%;max-width:900px}.modal-fullscreen{width:100%;max-width:100%;height:100%;max-height:100%;margin:0}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--color-neutral-100)}.modal-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-neutral-800)}.modal-header-actions{display:flex;gap:.5rem;align-items:center;margin-left:1rem}.modal-close{cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:4px;font-size:1.5rem;line-height:1;color:var(--color-neutral-500);background:none;transition:color .2s ease,background-color .2s ease}.modal-close:hover{color:var(--color-neutral-800);background-color:var(--color-neutral-50)}.modal-close:focus{outline:2px solid var(--color-primary);outline-offset:2px}.modal-body{overflow-y:auto;flex:1;padding:24px}.modal-footer{display:flex;flex-shrink:0;gap:12px;align-items:center;justify-content:flex-end;padding:16px 24px;border-top:1px solid var(--color-neutral-100)}.shipment-modal-form .modal-footer{margin-top:25px;padding:0 24px 16px;border-top:none}.modal-button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-width:100px;padding:.5rem 1.25rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;outline:none;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.modal-button:disabled{cursor:not-allowed;opacity:.6}.modal-button-primary{color:var(--color-surface);background-color:var(--color-accent)}.modal-button-primary:hover:not(:disabled){transform:translateY(-1px);background-color:var(--color-accent-hover);box-shadow:var(--shadow-sm)}.modal-button-primary:active:not(:disabled){transform:translateY(0);box-shadow:none}.modal-button-secondary{color:var(--color-surface);background-color:var(--color-neutral-500)}.modal-button-secondary:hover:not(:disabled){transform:translateY(-1px);background-color:var(--color-neutral-600);box-shadow:var(--shadow-sm)}.modal-button-secondary:active:not(:disabled){transform:translateY(0);box-shadow:none}@media (width <= 768px){.modal-overlay{padding:10px}.modal-content:not(.modal-fullscreen){max-width:100%;margin:0}.modal-header{padding:16px 20px}.modal-body{padding:20px}.modal-footer{padding:12px 20px}}.modal-content:focus{outline:3px solid var(--color-primary);outline-offset:2px}.modal-overlay.closing{animation:fade-out .2s ease-out forwards}.modal-content.closing{animation:slide-out .2s ease-out forwards}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slide-out{0%{transform:translateY(0);opacity:1}to{transform:translateY(-20px);opacity:0}}.dashboard-hero{display:flex;flex-direction:column;min-height:calc(100vh - 60px);min-height:calc(100dvh - 60px);padding:0}.search-section{position:relative;flex-shrink:0;padding:calc(var(--spacing-xxl) + var(--spacing-md)) var(--spacing-xl) var(--spacing-xxl);text-align:center;background:var(--color-background)}.search-title{margin-bottom:var(--spacing-lg);font-size:var(--font-size-xxxl);font-weight:600;color:var(--color-text-primary)}.search-container{position:relative;z-index:100;max-width:500px;margin:0 auto}.search-box{display:flex;align-items:center;padding:.875rem 1.25rem;border:1px solid var(--color-border-light);border-radius:24px;background:var(--color-surface);box-shadow:0 2px 8px var(--color-black-alpha-08);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.search-box-focused{border-color:var(--color-primary);box-shadow:0 4px 12px var(--color-black-alpha-12)}.search-icon{width:20px;height:20px;margin-right:.75rem;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.search-input{flex:1;border:none;font-size:1rem;color:var(--color-text-primary);background:transparent;outline:none}.search-input::placeholder{color:var(--color-text-muted)}.search-clear{cursor:pointer;padding:.25rem;border:none;font-size:1.125rem;line-height:1;color:var(--color-text-muted);background:none;transition:color var(--transition-fast)}.search-clear:hover{color:var(--color-text-primary)}.search-suggestions{position:absolute;z-index:1000;top:calc(100% + .5rem);right:0;left:0;overflow:hidden;overflow-y:auto;max-height:400px;border:1px solid var(--color-border-light);border-radius:12px;background:var(--color-surface);box-shadow:0 4px 20px var(--color-black-alpha-15)}.search-suggestion{display:block;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary);text-decoration:none;transition:background-color var(--transition-fast)}.search-suggestion:last-child{border-bottom:none}.search-suggestion:hover{background:var(--color-background)}.suggestion-content{display:flex;align-items:center;justify-content:space-between;width:100%}.suggestion-title{flex:1;font-weight:500;color:var(--color-text-primary);text-align:left}.suggestion-category{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500;white-space:nowrap}.suggestion-category.category-page{border:1px solid var(--color-indigo-alpha-20);color:var(--color-primary);background:var(--color-indigo-alpha-10)}.suggestion-category.category-data{border:1px solid var(--color-border-light);color:var(--color-text-secondary);background:var(--color-neutral-100)}.search-hint{margin-top:1rem;font-size:.875rem;color:var(--color-text-secondary)}.search-loading{display:flex;gap:.75rem;align-items:center;padding:1rem 1.25rem;font-size:.875rem;color:var(--color-text-secondary)}.loading-spinner{width:4px;height:4px;border-radius:50%;background:var(--color-primary);animation:pulse var(--transition-duration-pulse) ease-in-out infinite}.search-all-option{cursor:pointer;width:100%;padding:1rem 1.25rem;border:none;text-align:left;background:transparent;transition:background-color var(--transition-fast)}.search-all-option:hover{background:var(--color-background)}.search-all-content{display:flex;gap:.75rem;align-items:center}.search-icon-small{width:16px;height:16px;opacity:.6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain}.search-all-text{flex:1}.search-all-title{margin-bottom:.125rem;font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.search-all-hint{font-size:.8rem;color:var(--color-text-secondary);opacity:.8}.categories-section{flex:1;padding:var(--spacing-xl);background:var(--color-neutral-50)}.directory-layout .categories-section{padding:var(--spacing-xl) 0}.content-container{max-width:800px;margin:0 auto}.starred-section{margin-bottom:2rem}.dashboard .section-title{margin-bottom:1rem;border-bottom:none;font-size:1.125rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.starred-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:2rem}.starred-card{display:flex;align-items:center;justify-content:space-between;min-height:60px;padding:.875rem 1.25rem;border:1px solid var(--color-border-light);border-radius:10px;background:var(--color-neutral-50);box-shadow:0 1px 4px var(--color-black-alpha-06),0 1px 2px var(--color-black-alpha-04);transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.starred-card:hover{transform:translateY(-2px);border-color:var(--color-primary);box-shadow:0 2px 8px var(--color-black-alpha-10)}.starred-card-link{flex:1;color:inherit;text-decoration:none}.starred-card-title{margin-bottom:.25rem;font-size:1rem;font-weight:500;color:var(--color-text-primary)}.starred-card-category{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.025em;opacity:.7}.category-section{cursor:move;overflow:hidden;border:1px solid var(--color-border-light);border-radius:12px;background:var(--color-neutral-50);box-shadow:0 2px 8px var(--color-black-alpha-08),0 1px 3px var(--color-black-alpha-06);transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.category-section.dragging{transform:scale(.98);opacity:.5}.category-section:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--color-black-alpha-10),0 2px 4px var(--color-black-alpha-08)}.category-section.drag-over{transform:scale(1.02);border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-alpha-20)}.category-header{display:flex;gap:.75rem;align-items:center;width:100%;padding:1rem;border:none;background:transparent;transition:background-color var(--transition-fast)}.drag-handle{cursor:move;padding:0 .25rem;font-size:1rem;color:var(--color-text-muted);opacity:.5;transition:opacity var(--transition-fast)}.category-section:hover .drag-handle{opacity:1}.category-header:hover{background:var(--color-background)}.category-toggle-button{cursor:pointer;display:flex;gap:.5rem;align-items:center;padding:.5rem;border:none;background:transparent;transition:background-color var(--transition-fast)}.category-toggle-button:hover{background:var(--color-neutral-100)}.category-toggle{font-size:.75rem;color:var(--color-text-secondary);transition:transform var(--transition-fast)}.category-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.category-title-link{display:block;flex:1;min-width:0;color:inherit;text-decoration:none;transition:color var(--transition-fast)}.category-title-link:hover,.category-title-link:hover .category-title{color:var(--color-primary)}.category-content{display:flex;flex-direction:column;gap:.5rem;padding:0 1rem 1rem 2.5rem}.category-link-wrapper{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0}.category-link-extra{flex-shrink:0;margin-left:1rem}.directory-site-select{min-width:14rem;padding:.25rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.9rem;color:var(--color-text-primary);background-color:var(--color-surface)}.category-star{background:none}.category-link{flex:1;font-size:.95rem;color:var(--color-link);text-decoration:none;transition:color var(--transition-fast)}.category-link-action{cursor:pointer;padding:0;border:none;font:inherit;text-align:left;background:none}.category-link-action:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.category-link:hover{color:var(--color-link-hover);text-decoration:underline}.star-button{cursor:pointer;padding:.25rem;border:none;font-size:1.25rem;line-height:1;color:var(--color-text-muted);opacity:.5;background:none;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.star-button:hover{transform:scale(1.2);opacity:1}.star-button.starred{color:var(--color-warning);opacity:1}.star-button.starred:hover{transform:scale(1.1)}.category-link-wrapper:hover .star-button:not(.starred){opacity:.8}[data-theme=dark] .category-section.drag-over{box-shadow:0 0 0 2px var(--color-primary-alpha-30)}[data-theme=dark] .search-section{border-bottom-color:var(--color-border-light);background:var(--color-neutral-100)}[data-theme=dark] .search-box{border-color:var(--color-neutral-300);background:var(--color-neutral-200);box-shadow:0 2px 8px var(--color-black-alpha-30)}[data-theme=dark] .search-box-focused{border-color:var(--color-primary);box-shadow:0 4px 12px var(--color-black-alpha-40)}[data-theme=dark] .search-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%239aa0a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E")}[data-theme=dark] .search-suggestions{background:var(--color-neutral-200);box-shadow:0 4px 20px var(--color-black-alpha-50)}[data-theme=dark] .search-suggestion:hover,[data-theme=dark] .search-all-option:hover{background:var(--color-neutral-300)}[data-theme=dark] .loading-spinner{border-color:var(--color-neutral-400);border-top-color:var(--color-primary)}[data-theme=dark] .search-icon-small{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239aa0a6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E")}[data-theme=dark] .categories-section{background:var(--color-neutral-50)}[data-theme=dark] .starred-card{border-color:var(--color-neutral-300);background:var(--color-neutral-200);box-shadow:0 1px 4px var(--color-black-alpha-15),0 1px 2px var(--color-black-alpha-10)}[data-theme=dark] .starred-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px var(--color-black-alpha-30)}[data-theme=dark] .category-section{border-color:var(--color-neutral-300);background:var(--color-neutral-200);box-shadow:0 2px 8px var(--color-black-alpha-20),0 1px 3px var(--color-black-alpha-15)}[data-theme=dark] .category-section:hover{box-shadow:0 4px 12px var(--color-black-alpha-25),0 2px 4px var(--color-black-alpha-20)}[data-theme=dark] .category-header:hover{background:var(--color-neutral-300)}@media (width <= 768px){.search-title{font-size:var(--font-size-xxxl)}.search-section{padding:3rem 1rem 2rem}.categories-grid{grid-template-columns:1fr}}.wide-table-layout .page-header{display:flex;gap:.75rem;justify-content:flex-end;margin-bottom:1rem;padding:1rem 0}.wide-table-layout .add-button{cursor:pointer;padding:.5rem 1.25rem;border:none;border-radius:4px;font-size:.95rem;color:#fff;background-color:var(--color-primary);transition:background-color .2s}.wide-table-layout .add-button:hover{background-color:var(--color-primary-hover)}@media (width <= 768px){.content-container{padding:0 1rem}.starred-cards{grid-template-columns:1fr}}@media (width <= 640px){.starred-cards{grid-template-columns:1fr}}@media (width >= 640px) and (width <= 900px){.starred-cards{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}.phone-section{margin:var(--spacing-xl) 0}.section-title{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border-light);font-size:1.1rem;font-weight:600;color:var(--color-text-primary)}.phone-grid{display:grid;grid-template-columns:150px 1fr;gap:var(--spacing-md);align-items:center}.phone-header{display:contents;font-size:.9rem;font-weight:600;color:var(--color-text-secondary)}.phone-header span:first-child,.phone-header span:last-child{padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--color-border-light)}.phone-row{display:contents}.phone-description{padding:var(--spacing-sm) 0;font-weight:500;color:var(--color-text-primary)}.phone-input{margin:0}.phone-row .form-field{margin-bottom:var(--spacing-sm)}.phone-row .phone-input .form-field{margin-bottom:0}.address-section{margin:var(--spacing-xl) 0}.address-section .form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.phone-row .form-field .form-input{font-family:var(--font-family-mono);font-size:.95rem}.form-field .badge-selector{width:100%}.quote-create-container{padding:var(--spacing-md) 0}.quote-actions{display:flex;gap:var(--spacing-md);align-items:center;margin-bottom:var(--spacing-lg);padding:var(--spacing-md);border-radius:var(--radius-md);background:var(--color-neutral-50)}.quote-actions button{white-space:nowrap}.quote-status{font-weight:600;color:var(--color-text-primary)}.quote-header-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl)}.quote-header-left{display:flex;flex-direction:column;gap:var(--spacing-md)}.company-info{padding:var(--spacing-md);border-radius:var(--radius-md);background:var(--color-neutral-50)}.company-logo{margin-bottom:var(--spacing-sm);font-size:1.2rem;font-weight:700;color:var(--color-primary)}.company-address p{margin:.25rem 0;font-size:.9rem;color:var(--color-text-secondary)}.quote-note{margin-top:var(--spacing-md)}.quote-header-right{display:flex;flex-direction:column;justify-content:flex-start}.quote-details{padding:var(--spacing-md);border-radius:var(--radius-md);background:var(--color-neutral-50)}.quote-detail-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border)}.quote-detail-row:last-child{border-bottom:none}.quote-detail-row .label{font-weight:600;color:var(--color-text-secondary)}.quote-detail-row .value{font-weight:500;color:var(--color-text-primary);text-align:right}.quote-amount-section{margin:var(--spacing-lg) 0}.quote-amount-card{padding:var(--spacing-lg);border-radius:var(--radius-md);color:#fff;text-align:center;background:var(--color-primary)}.quote-amount-card h3{margin:0 0 var(--spacing-sm);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.quote-amount-value{font-size:2rem;font-weight:700}.care-rep-section{margin:var(--spacing-lg) 0}.line-items-table{overflow-x:auto}.line-items-table table{border-collapse:collapse;width:100%;font-size:.9rem}.line-items-table th{padding:.75rem;border:1px solid var(--color-border);font-weight:600;text-align:left;background:var(--color-neutral-50)}.line-items-table td{padding:var(--spacing-sm);border:1px solid var(--color-border)}.line-items-table input{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.9rem}.line-items-table input:focus{border-color:var(--color-primary);outline:none}.line-items-table .total-cell{font-weight:500;text-align:right}.line-items-table tfoot{font-weight:600}.subtotal-label,.total-label,.subtotal-value,.total-value{padding:.75rem;text-align:right}.total-row{font-size:1.1rem;background:var(--color-neutral-50)}.terms-section{margin:var(--spacing-xl) 0;padding:var(--spacing-lg);border-radius:var(--radius-md);background:var(--color-neutral-50)}.terms-section h3{margin:0 0 var(--spacing-md);font-size:1.1rem;font-weight:600;text-align:center;text-transform:uppercase}.terms-section ul{margin:0;padding-left:var(--spacing-lg)}.terms-section li{margin:var(--spacing-sm) 0;color:var(--color-text-secondary)}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}@media (width <= 768px){.quote-header-grid{grid-template-columns:1fr}.quote-actions{flex-wrap:wrap}.line-items-table{font-size:.8rem}.line-items-table input{padding:.4rem}}.on-call-schedule-container{margin-top:var(--spacing-lg);padding:var(--spacing-lg);border-radius:var(--radius-lg);background:var(--color-surface)}.schedule-notice{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);border:1px solid var(--color-warning);border-radius:var(--radius-md);font-weight:500;color:var(--color-text-primary);text-align:center;background:var(--color-warning-light)}.on-call-table .table-container{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.on-call-table .table-wrapper{padding:var(--spacing-sm)}.on-call-table .data-table{min-width:1200px}.on-call-table .data-table th{white-space:normal}.on-call-table .data-table th:first-child,.on-call-table .data-table td:first-child{font-weight:600;color:var(--color-text-primary)}.shift-select{cursor:pointer;width:100%;padding:6px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.8rem;color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-fast),background-color var(--transition-fast)}.shift-select:hover{border-color:var(--color-primary);background:#49bdf50d}.shift-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #49bdf51a}.shift-select option{padding:4px}@media (width <= 1400px){.on-call-table .data-table{min-width:1400px}}.on-call-table .table-container .table-header{display:none}.form-field-with-unit{position:relative;display:flex;gap:var(--spacing-sm);align-items:flex-end}.form-field-with-unit .form-field{flex:1;margin-bottom:0}.field-unit{padding-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);white-space:nowrap}.form-actions{margin-top:var(--spacing-xxl)}.form-section{margin-bottom:var(--spacing-xl)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}
