@import"https://fonts.googleapis.com/css2?family=Syne:wght@600;700;800&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,400&family=JetBrains+Mono:wght@400;500&display=swap";@import"https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-family);font-size:var(--fs-base);line-height:var(--lh-base);color:var(--text-primary);background:var(--surface-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button,input,select,textarea,optgroup{font-family:inherit;font-size:inherit;color:inherit}img,svg,video,canvas{max-width:100%}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}::selection{background:rgba(var(--brand-primary-rgb),.18)}html[data-theme=vital]{--brand-primary: #618669;--brand-primary-rgb: 97, 134, 105;--brand-primary-dark: #063104;--brand-primary-mid: #77A160;--brand-primary-lighter:#A8C49A;--brand-primary-light: #EFF3EC;--brand-primary-tint2: #CFDDC8;--brand-gradient: linear-gradient(135deg, #063104 0%, #1E4A20 100%);--brand-secondary: #6B6F64;--brand-secondary-dark: #4A4E45;--brand-secondary-light: #F1F0EA;--brand-accent: #77A160;--surface-page: #F4F3EE;--surface-card: #FFFFFF;--surface-hover: #F0EFE8;--text-primary: #1C2318;--text-secondary: #4B5245;--text-muted: #9A9E92;--text-on-brand: #FFFFFF;--text-on-brand-rgb: 255, 255, 255;--panel-header-bg: linear-gradient(180deg, #E4E7EB 0%, #D8DCE1 100%);--panel-header-text: #1F2429;--panel-header-text-rgb: 31, 36, 41;--panel-header-border: #C9CED5;--panel-header-accent: var(--brand-primary);--border-color: #E3E2D9;--shadow-sm: 0 1px 3px rgba(6, 49, 4, .07);--shadow-md: 0 6px 18px rgba(6, 49, 4, .09);--status-success: #2E7D32;--status-success-light: #EEF6EE;--status-danger: #C62828;--status-danger-rgb: 198, 40, 40;--status-danger-light: #FDF2F2;--status-warning: #B45309;--status-warning-light: #FFF8EB;--status-info: #2F5C8F;--status-info-light: #F0F5FB;--backdrop-overlay: rgba(6, 25, 5, .55);--brand-secondary-rgb: 107, 111, 100;--status-success-rgb: 46, 125, 50;--status-warning-rgb: 180, 83, 9;--status-info-rgb: 47, 92, 143;--border-strong: #D3D2C7;--focus-ring: 0 0 0 3px rgba(97, 134, 105, .28);--shadow-lg: 0 16px 40px rgba(6, 49, 4, .16);--sidebar-bg: #063104;--sidebar-surface: #052703;--sidebar-text: rgba(234, 233, 224, .8);--sidebar-text-strong: #FFFFFF;--sidebar-text-muted: rgba(234, 233, 224, .5);--sidebar-hover: rgba(255, 255, 255, .07);--sidebar-active-bg: rgba(119, 161, 96, .22);--sidebar-accent: #77A160;--sidebar-border: rgba(255, 255, 255, .08);--font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-tight: 1.25;--lh-base: 1.5;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 18px;--fs-2xl: 22px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--page-padding: var(--space-4);--section-gap: var(--space-4);--card-padding: var(--space-4);--form-gap: var(--space-3);--table-cell-py: var(--space-2);--table-cell-px: var(--space-3);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 999px;--control-height: 36px;--control-height-sm: 30px;--icon-size: 18px;--icon-size-sm: 16px;--header-height: 52px;--sidebar-width: 220px;--sidebar-width-collapsed: 64px;--modal-width-sm: 420px;--modal-width-md: 640px;--modal-width-lg: 900px;--page-title-size: var(--fs-xl);--page-desc-size: var(--fs-sm);--z-sticky: 10;--z-header: 90;--z-overlay: 98;--z-sidebar: 100;--z-flyout: 200;--z-dropdown: 300;--z-modal: 1400;--z-toast: 1500;--transition-fast: .15s ease;--transition-base: .22s ease}@media (max-width: 1024px){html[data-theme=vital]{--page-padding: var(--space-3);--section-gap: var(--space-3);--card-padding: var(--space-3);--modal-width-lg: 92vw}}@media (max-width: 600px){html[data-theme=vital]{--page-padding: var(--space-2);--section-gap: var(--space-2);--card-padding: var(--space-3);--form-gap: var(--space-2);--table-cell-px: var(--space-2);--control-height: 40px;--fs-xl: 16px;--fs-2xl: 20px;--modal-width-sm: 94vw;--modal-width-md: 94vw;--modal-width-lg: 94vw}}html[data-theme=bmh]{--brand-primary: #184f80;--brand-primary-rgb: 24, 79, 128;--brand-primary-dark: #0f3555;--brand-primary-mid: #2569a3;--brand-primary-lighter:#5b93c2;--brand-primary-light: #e4edf5;--brand-primary-tint2: #cfe0ee;--brand-gradient: linear-gradient(135deg, #184f80 0%, #0f3555 100%);--brand-secondary: #018637;--brand-secondary-dark: #016b2c;--brand-secondary-light: #e3f5e9;--brand-accent: #df5318;--surface-page: #f4f7fa;--surface-card: #ffffff;--surface-hover: #eaf1f8;--text-primary: #1f2937;--text-secondary: #4a6080;--text-muted: #94a3b8;--text-on-brand: #ffffff;--text-on-brand-rgb: 255, 255, 255;--panel-header-bg: linear-gradient(180deg, #E4E7EB 0%, #D8DCE1 100%);--panel-header-text: #1F2429;--panel-header-text-rgb: 31, 36, 41;--panel-header-border: #C9CED5;--panel-header-accent: var(--brand-primary);--border-color: #dde5ed;--shadow-sm: 0 1px 3px 0 rgba(24, 79, 128, .1), 0 1px 2px 0 rgba(24, 79, 128, .06);--shadow-md: 0 4px 14px 0 rgba(24, 79, 128, .14);--status-success: #16a34a;--status-success-light: #dcfce7;--status-danger: #dc2626;--status-danger-rgb: 220, 38, 38;--status-danger-light: #fee2e2;--status-warning: #d97706;--status-warning-light: #fef3c7;--status-info: #0284c7;--status-info-light: #e0f2fe;--backdrop-overlay: rgba(15, 23, 42, .5);--brand-secondary-rgb: 1, 134, 55;--status-success-rgb: 22, 163, 74;--status-warning-rgb: 217, 119, 6;--status-info-rgb: 2, 132, 199;--border-strong: #c3d1de;--focus-ring: 0 0 0 3px rgba(var(--brand-primary-rgb), .18);--shadow-lg: 0 12px 32px -8px rgba(var(--brand-primary-rgb), .22);--sidebar-bg: linear-gradient(180deg, #0A2540 0%, #0F3555 60%, #184F80 100%);--sidebar-surface: #0A2540;--sidebar-text: rgba(228, 237, 245, .8);--sidebar-text-strong: #FFFFFF;--sidebar-text-muted: rgba(228, 237, 245, .5);--sidebar-hover: rgba(255, 255, 255, .08);--sidebar-active-bg: rgba(91, 147, 194, .22);--sidebar-accent: #5B93C2;--sidebar-border: rgba(255, 255, 255, .08);--font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-tight: 1.25;--lh-base: 1.5;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 18px;--fs-2xl: 22px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--page-padding: var(--space-4);--section-gap: var(--space-4);--card-padding: var(--space-4);--form-gap: var(--space-3);--table-cell-py: var(--space-2);--table-cell-px: var(--space-3);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 999px;--control-height: 36px;--control-height-sm: 30px;--icon-size: 18px;--icon-size-sm: 16px;--header-height: 52px;--sidebar-width: 220px;--sidebar-width-collapsed: 64px;--modal-width-sm: 420px;--modal-width-md: 640px;--modal-width-lg: 900px;--page-title-size: var(--fs-xl);--page-desc-size: var(--fs-sm);--z-sticky: 10;--z-header: 90;--z-overlay: 98;--z-sidebar: 100;--z-flyout: 200;--z-dropdown: 300;--z-modal: 1400;--z-toast: 1500;--transition-fast: .15s ease;--transition-base: .22s ease}@media (max-width: 1024px){html[data-theme=bmh]{--page-padding: var(--space-3);--section-gap: var(--space-3);--card-padding: var(--space-3);--modal-width-lg: 92vw}}@media (max-width: 600px){html[data-theme=bmh]{--page-padding: var(--space-2);--section-gap: var(--space-2);--card-padding: var(--space-3);--form-gap: var(--space-2);--table-cell-px: var(--space-2);--control-height: 40px;--fs-xl: 16px;--fs-2xl: 20px;--modal-width-sm: 94vw;--modal-width-md: 94vw;--modal-width-lg: 94vw}}html[data-theme=our]{--brand-primary: #0A2472;--brand-primary-rgb: 10, 36, 114;--brand-primary-dark: #051650;--brand-primary-mid: #123499;--brand-primary-lighter:#4D6DD4;--brand-primary-light: #EEF1FB;--brand-primary-tint2: #D5DCF5;--brand-gradient: linear-gradient(135deg, #051650 0%, #0A2472 55%, #123499 100%);--brand-secondary: #5A6282;--brand-secondary-dark: #3F4766;--brand-secondary-light: #F5F7FF;--brand-accent: #123499;--surface-page: #EEF1FB;--surface-card: #FFFFFF;--surface-hover: #F5F7FF;--text-primary: #00072D;--text-secondary: #5A6282;--text-muted: #9CA3AF;--text-on-brand: #FFFFFF;--text-on-brand-rgb: 255, 255, 255;--panel-header-bg: linear-gradient(180deg, #E4E7EB 0%, #D8DCE1 100%);--panel-header-text: #1F2429;--panel-header-text-rgb: 31, 36, 41;--panel-header-border: #C9CED5;--panel-header-accent: var(--brand-primary);--border-color: #DDE3F7;--shadow-sm: 0 1px 3px rgba(0, 7, 45, .08), 0 1px 2px rgba(0, 7, 45, .06);--shadow-md: 0 4px 14px rgba(10, 36, 114, .12);--status-success: #059669;--status-success-light: #D1FAE5;--status-danger: #DC2626;--status-danger-rgb: 220, 38, 38;--status-danger-light: #FEE2E2;--status-warning: #D97706;--status-warning-light: #FEF3C7;--status-info: #0A2472;--status-info-light: #DDE3F7;--backdrop-overlay: rgba(0, 7, 45, .55);--brand-secondary-rgb: 90, 98, 130;--status-success-rgb: 5, 150, 105;--status-warning-rgb: 217, 119, 6;--status-info-rgb: 10, 36, 114;--border-strong: #C5CFF0;--focus-ring: 0 0 0 3px rgba(10, 36, 114, .15);--shadow-lg: 0 10px 28px rgba(10, 36, 114, .18);--sidebar-bg: linear-gradient(180deg, #00072D 0%, #051650 100%);--sidebar-surface: #00072D;--sidebar-text: #A8B8E8;--sidebar-text-strong: #FFFFFF;--sidebar-text-muted: rgba(168, 184, 232, .6);--sidebar-hover: rgba(255, 255, 255, .08);--sidebar-active-bg: rgba(127, 149, 224, .2);--sidebar-accent: #7F95E0;--sidebar-border: rgba(255, 255, 255, .08);--font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-tight: 1.25;--lh-base: 1.5;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 18px;--fs-2xl: 22px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--page-padding: var(--space-4);--section-gap: var(--space-4);--card-padding: var(--space-4);--form-gap: var(--space-3);--table-cell-py: var(--space-2);--table-cell-px: var(--space-3);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 999px;--control-height: 36px;--control-height-sm: 30px;--icon-size: 18px;--icon-size-sm: 16px;--header-height: 52px;--sidebar-width: 220px;--sidebar-width-collapsed: 64px;--modal-width-sm: 420px;--modal-width-md: 640px;--modal-width-lg: 900px;--page-title-size: var(--fs-xl);--page-desc-size: var(--fs-sm);--z-sticky: 10;--z-header: 90;--z-overlay: 98;--z-sidebar: 100;--z-flyout: 200;--z-dropdown: 300;--z-modal: 1400;--z-toast: 1500;--transition-fast: .15s ease;--transition-base: .22s ease}@media (max-width: 1024px){html[data-theme=our]{--page-padding: var(--space-3);--section-gap: var(--space-3);--card-padding: var(--space-3);--modal-width-lg: 92vw}}@media (max-width: 600px){html[data-theme=our]{--page-padding: var(--space-2);--section-gap: var(--space-2);--card-padding: var(--space-3);--form-gap: var(--space-2);--table-cell-px: var(--space-2);--control-height: 40px;--fs-xl: 16px;--fs-2xl: 20px;--modal-width-sm: 94vw;--modal-width-md: 94vw;--modal-width-lg: 94vw}}.app-loading-full-page{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);background:var(--surface-page);color:var(--brand-primary);font-family:var(--font-family);z-index:var(--z-modal)}.app-loading-full-page p{font-size:var(--fs-base);font-weight:var(--fw-medium);color:var(--text-secondary)}.main-content{flex:1;min-width:0}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:200px;height:100%;gap:var(--space-3);color:var(--brand-primary)}.loading-container p{color:var(--text-secondary);font-size:var(--fs-base)}input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=password]:focus,input[type=date]:focus,input[type=time]:focus,textarea:focus,select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.select__control,.select__menu,.select__single-value,.select__option{color:var(--text-primary)!important}.react-select-container{position:relative;font-family:var(--font-family)}.react-select__control{min-height:var(--control-height)!important;border:1px solid var(--border-strong)!important;border-radius:var(--radius-md)!important;box-shadow:none!important;background-color:var(--surface-card)!important;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)!important;font-size:var(--fs-base)!important}.react-select__control:hover{border-color:var(--text-muted)!important}.react-select__control--is-focused,.react-select__control--menu-is-open{border-color:var(--brand-primary)!important;box-shadow:var(--focus-ring)!important}.react-select__value-container{padding:0 var(--space-3)!important}.react-select__placeholder{color:var(--text-muted)!important;font-size:var(--fs-base)!important;margin:0!important}.react-select__single-value{color:var(--text-primary)!important;font-size:var(--fs-base)!important;margin:0!important}.react-select__input{color:var(--text-primary)!important;font-size:var(--fs-base)!important}.react-select__input-container{color:var(--text-primary)!important;margin:0!important;padding:0!important}.react-select__indicator-separator{background-color:var(--border-color)!important}.react-select__indicator,.react-select__clear-indicator,.react-select__dropdown-indicator{padding:var(--space-1) var(--space-2)!important;color:var(--text-muted)!important}.react-select__indicator:hover{color:var(--text-secondary)!important}.react-select__menu{z-index:calc(var(--z-modal) + 10)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg)!important;border:1px solid var(--border-color)!important;background-color:var(--surface-card)!important;margin-top:var(--space-1)!important;overflow:hidden;animation:reactSelectFadeIn var(--transition-fast) both!important}.react-select__menu-portal{z-index:calc(var(--z-modal) + 10)!important}.react-select__menu-list{padding:var(--space-1)!important;max-height:220px!important}.react-select__option{background-color:transparent!important;color:var(--text-primary)!important;font-size:var(--fs-base)!important;padding:var(--space-2) var(--space-3)!important;border-radius:var(--radius-sm)!important;cursor:pointer!important}.react-select__option:hover,.react-select__option--is-focused{background-color:var(--surface-hover)!important;color:var(--text-primary)!important}.react-select__option--is-selected{background-color:var(--brand-primary)!important;color:var(--text-on-brand)!important}.react-select__option--is-disabled{color:var(--text-muted)!important;cursor:not-allowed!important}.react-select__multi-value{background-color:var(--brand-primary-light)!important;border-radius:var(--radius-sm)!important;margin:2px!important}.react-select__multi-value__label{color:var(--brand-primary-dark)!important;font-size:var(--fs-sm)!important;padding:1px var(--space-2)!important}.react-select__multi-value__remove{color:var(--brand-primary-dark)!important;border-radius:0 var(--radius-sm) var(--radius-sm) 0!important;padding:0 var(--space-1)!important}.react-select__multi-value__remove:hover{background-color:var(--status-danger-light)!important;color:var(--status-danger)!important}.react-select__loading-indicator{color:var(--brand-primary)!important}.react-select__loading-message,.react-select__no-options-message{color:var(--text-secondary)!important;font-size:var(--fs-base)!important;padding:var(--space-3)!important}.react-select__group{padding:0!important}.react-select__group-heading{color:var(--text-muted)!important;font-size:var(--fs-xs)!important;font-weight:var(--fw-semibold)!important;text-transform:uppercase!important;letter-spacing:.5px!important;padding:var(--space-2) var(--space-3) var(--space-1)!important;margin:0!important}.react-select__control--is-disabled{background-color:var(--surface-page)!important;border-color:var(--border-color)!important}.react-select__control--is-disabled .react-select__single-value,.react-select__control--is-disabled .react-select__placeholder{color:var(--text-muted)!important}.react-select--error .react-select__control{border-color:var(--status-danger)!important}.react-select--error .react-select__control--is-focused{border-color:var(--status-danger)!important;box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)!important}.react-select--success .react-select__control{border-color:var(--status-success)!important}.react-select--small .react-select__control{min-height:var(--control-height-sm)!important}.react-select--small .react-select__value-container{padding:0 var(--space-2)!important}.react-select--small .react-select__input,.react-select--small .react-select__placeholder,.react-select--small .react-select__single-value{font-size:var(--fs-sm)!important}.react-select--large .react-select__control{min-height:44px!important}.react-select--large .react-select__value-container{padding:var(--space-1) var(--space-4)!important}.react-select--large .react-select__input,.react-select--large .react-select__placeholder,.react-select--large .react-select__single-value{font-size:var(--fs-lg)!important}.react-select--searchable .react-select__control{border-radius:var(--radius-lg)!important}.react-select--inline{display:inline-block!important;width:auto!important;min-width:150px!important}.react-select--full-width{width:100%!important}@keyframes reactSelectFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.react-select__menu-list::-webkit-scrollbar{width:6px}.react-select__menu-list::-webkit-scrollbar-track{background:transparent}.react-select__menu-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill)}@media (max-width: 600px){.react-select__control{min-height:var(--control-height)!important}.react-select__menu-list{max-height:50vh!important}}html[data-theme]{--toastify-font-family: var(--font-family);--toastify-color-light: var(--surface-card);--toastify-text-color-light: var(--text-primary);--toastify-color-info: var(--status-info);--toastify-color-success: var(--status-success);--toastify-color-warning: var(--status-warning);--toastify-color-error: var(--status-danger);--toastify-icon-color-info: var(--status-info);--toastify-icon-color-success: var(--status-success);--toastify-icon-color-warning: var(--status-warning);--toastify-icon-color-error: var(--status-danger);--toastify-color-progress-light: var(--brand-gradient);--toastify-color-progress-info: var(--status-info);--toastify-color-progress-success: var(--status-success);--toastify-color-progress-warning: var(--status-warning);--toastify-color-progress-error: var(--status-danger);--toastify-toast-width: 340px;--toastify-toast-min-height: 52px;--toastify-toast-bd-radius: var(--radius-lg);--toastify-z-index: var(--z-toast)}.Toastify__toast{font-size:var(--fs-base);font-weight:var(--fw-medium);border:1px solid var(--border-color);box-shadow:var(--shadow-lg)}@media (max-width: 480px){.Toastify__toast-container{padding:var(--space-2)}.Toastify__toast{margin-bottom:var(--space-2);border-radius:var(--radius-lg)}}:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-container-width: fit-content;--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-padding: 14px;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-toast-shadow: 0px 4px 12px rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width: 480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:1;opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sb-loading{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);font-family:var(--font-family);font-size:var(--fs-sm);color:var(--sidebar-text-muted);z-index:var(--z-sidebar)}.sb-loading-spinner{width:24px;height:24px;border:3px solid var(--sidebar-border);border-top-color:var(--sidebar-accent);border-radius:50%;animation:sbSpin .7s linear infinite}@keyframes sbSpin{to{transform:rotate(360deg)}}.sb-root{position:fixed;top:0;left:0;height:100vh;width:var(--sidebar-width);display:flex;flex-direction:column;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);box-shadow:var(--shadow-md);z-index:var(--z-sidebar);font-family:var(--font-family);overflow:visible;transition:width var(--transition-base);box-sizing:border-box}.sb-root--collapsed{width:var(--sidebar-width-collapsed)}.sb-brand{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);height:var(--header-height);border-bottom:1px solid var(--sidebar-border);flex-shrink:0;overflow:hidden;background:var(--sidebar-surface);box-sizing:border-box}.sb-root--collapsed .sb-brand{justify-content:center;padding:0 var(--space-2)}.sb-brand-logo{height:32px;width:auto;max-width:140px;object-fit:contain;flex-shrink:0;display:block;padding:3px 6px;border-radius:var(--radius-md);background:var(--surface-card);box-sizing:content-box;transition:max-width var(--transition-base),height var(--transition-base)}.sb-root--collapsed .sb-brand-logo{height:26px;max-width:26px;padding:3px}.sb-brand-name{font-size:var(--fs-base);font-weight:var(--fw-bold);letter-spacing:-.2px;color:var(--sidebar-text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.sb-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-2);display:flex;flex-direction:column;gap:2px;scrollbar-width:thin;scrollbar-color:transparent transparent}.sb-nav:hover{scrollbar-color:var(--sidebar-border) transparent}.sb-nav::-webkit-scrollbar{width:3px}.sb-nav::-webkit-scrollbar-track{background:transparent}.sb-nav::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--radius-pill)}.sb-nav:hover::-webkit-scrollbar-thumb{background:rgba(var(--text-on-brand-rgb),.18)}.sb-nav::-webkit-scrollbar-thumb:hover{background:rgba(var(--text-on-brand-rgb),.32)}.sb-item{position:relative}.sb-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);min-height:var(--control-height);border-radius:var(--radius-lg);cursor:pointer;text-decoration:none;color:var(--sidebar-text);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;white-space:nowrap;outline:none;box-sizing:border-box;transition:background var(--transition-fast),color var(--transition-fast)}.sb-row:hover{background:var(--sidebar-hover);color:var(--sidebar-text-strong)}.sb-row:focus-visible{box-shadow:var(--focus-ring)}.sb-item--active>.sb-row{color:var(--sidebar-text-strong);background:var(--sidebar-active-bg)}.sb-item--active>.sb-row:before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:3px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--sidebar-accent)}.sb-row--expanded{background:var(--sidebar-hover)}.sb-root--collapsed .sb-row{justify-content:center;padding:var(--space-1)}.sb-row-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);flex-shrink:0;color:var(--sidebar-text-muted);transition:background var(--transition-fast),color var(--transition-fast)}.sb-row:hover .sb-row-icon{background:var(--sidebar-hover);color:var(--sidebar-text-strong)}.sb-item--active>.sb-row .sb-row-icon{background:var(--sidebar-accent);color:var(--sidebar-surface);box-shadow:var(--shadow-sm)}.sb-row-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-row-arrow{color:var(--sidebar-text-muted);flex-shrink:0;transition:transform var(--transition-base),color var(--transition-fast)}.sb-row-arrow--open{transform:rotate(180deg)}.sb-row-hint{position:absolute;right:2px;font-size:var(--fs-xs)!important;color:var(--sidebar-text-muted);opacity:.7}.sb-submenu{overflow:hidden;max-height:0;opacity:0;margin-left:var(--space-4);padding-left:var(--space-2);border-left:1px solid var(--sidebar-border);transition:max-height .32s cubic-bezier(.4,0,.2,1),opacity var(--transition-base)}.sb-submenu--open{max-height:900px;opacity:1;margin-top:2px;margin-bottom:var(--space-1)}.sb-subitem{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-md);text-decoration:none;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--sidebar-text);font-family:inherit;margin:1px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;outline:none;transition:background var(--transition-fast),color var(--transition-fast)}.sb-subitem span:last-child{overflow:hidden;text-overflow:ellipsis}.sb-subitem:hover{background:var(--sidebar-hover);color:var(--sidebar-text-strong)}.sb-subitem:focus-visible{box-shadow:var(--focus-ring)}.sb-subitem--active{background:var(--sidebar-active-bg);color:var(--sidebar-text-strong);font-weight:var(--fw-semibold)}.sb-subitem-dot{width:5px;height:5px;border-radius:50%;background:var(--sidebar-text-muted);flex-shrink:0;transition:background var(--transition-fast)}.sb-subitem:hover .sb-subitem-dot{background:var(--sidebar-accent)}.sb-subitem--active .sb-subitem-dot{background:var(--sidebar-accent);width:6px;height:6px}.sb-user-footer{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--sidebar-border);flex-shrink:0;overflow:hidden;background:var(--sidebar-surface);cursor:default}.sb-root--collapsed .sb-user-footer{flex-direction:column;justify-content:center;gap:var(--space-1);padding:var(--space-2)}.sb-uf-avatar{position:relative;width:32px;height:32px;border-radius:50%;background:var(--brand-gradient);display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-on-brand);flex-shrink:0;overflow:hidden;border:2px solid var(--sidebar-surface);box-shadow:0 0 0 1px var(--sidebar-accent)}.sb-uf-avatar-img,.sb-uf-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.sb-uf-avatar-ico{font-size:var(--icon-size)!important}.sb-uf-status{position:absolute;bottom:0;right:0;width:8px;height:8px;background:var(--status-success);border-radius:50%;border:2px solid var(--sidebar-surface)}.sb-uf-info{flex:1;min-width:0;overflow:hidden}.sb-uf-name{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--sidebar-text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-uf-meta{font-size:var(--fs-xs);color:var(--sidebar-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-uf-logout{display:flex;align-items:center;gap:var(--space-1);margin-left:auto;height:var(--control-height-sm);padding:0 var(--space-2);border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--sidebar-text-muted);cursor:pointer;font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;flex-shrink:0;white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.sb-uf-logout-ico{font-size:var(--icon-size-sm)!important}.sb-uf-logout:hover{background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.sb-uf-logout:focus-visible{outline:none;box-shadow:var(--focus-ring)}.sb-root--collapsed .sb-uf-logout{margin-left:0;padding:0 var(--space-1)}.sb-root--collapsed .sb-uf-logout span{display:none}.sb-flyout{position:fixed;z-index:var(--z-flyout);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);min-width:200px;max-width:240px;padding:var(--space-1);font-family:var(--font-family);animation:sbFlyoutIn .18s cubic-bezier(.34,1.56,.64,1) both}@keyframes sbFlyoutIn{0%{opacity:0;transform:translate(-8px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}.sb-flyout:before{content:"";position:absolute;right:100%;top:0;width:10px;height:100%;background:transparent}.sb-flyout:after{content:"";position:absolute;right:calc(100% - 1px);top:16px;border:6px solid transparent;border-right-color:var(--border-color)}.sb-flyout-header{padding:var(--space-2) var(--space-3) 6px;border-bottom:1px solid var(--border-color);margin-bottom:var(--space-1)}.sb-flyout-title{font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--brand-primary-dark);text-transform:uppercase;letter-spacing:.06em}.sb-flyout-item{display:flex;align-items:center;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);font-size:var(--fs-sm);font-weight:var(--fw-medium);text-decoration:none;white-space:nowrap;outline:none;transition:background var(--transition-fast),color var(--transition-fast)}.sb-flyout-item:hover{background:var(--surface-hover);color:var(--text-primary)}.sb-flyout-item:focus-visible{box-shadow:var(--focus-ring)}.sb-flyout-item--active{background:var(--brand-primary-light);color:var(--brand-primary-dark);font-weight:var(--fw-semibold)}.sb-flyout-arrow{font-size:var(--icon-size-sm)!important;opacity:.4;flex-shrink:0;transition:opacity var(--transition-fast)}.sb-flyout-item:hover .sb-flyout-arrow,.sb-flyout-item--active .sb-flyout-arrow{opacity:1}@media (max-width: 768px){.sb-loading{display:none}.sb-root{width:min(var(--sidebar-width),84vw)!important;transform:translate(-100%);box-shadow:none;transition:transform .26s cubic-bezier(.4,0,.2,1),box-shadow .26s}.sb-root--mobile-open{transform:translate(0);box-shadow:var(--shadow-lg)}.sb-row{min-height:40px}.sb-subitem{padding:var(--space-2)}.sb-flyout{display:none!important}}.hd-root{position:fixed;top:0;left:0;right:0;height:var(--header-height);padding-right:var(--space-4);background:var(--surface-card);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);display:flex;align-items:center;z-index:var(--z-header);font-family:var(--font-family);transition:padding-left var(--transition-base);box-sizing:border-box}.hd-left{display:flex;align-items:center;gap:var(--space-3);flex:1 1 0;min-width:0;overflow:hidden;margin-right:var(--space-3)}.hd-toggle{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.hd-toggle:hover{background:var(--brand-primary-light);border-color:var(--brand-primary);color:var(--brand-primary-dark)}.hd-toggle:active{transform:scale(.92)}.hd-toggle:focus-visible{outline:none;box-shadow:var(--focus-ring)}.hd-toggle-ico{font-size:var(--icon-size)!important}.hd-page-info{display:flex;flex-direction:column;justify-content:center;min-width:0;flex:1;overflow:hidden;gap:1px}.hd-page-line{display:flex;align-items:center;min-width:0;overflow:hidden}.hd-page-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:var(--lh-tight)}.hd-page-desc{margin:0;font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-secondary);line-height:var(--lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hd-bc-item{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.hd-bc-sep{font-size:var(--icon-size-sm)!important;color:var(--text-muted);flex-shrink:0;margin:0 var(--space-1)}.hd-right{display:flex;align-items:center;gap:var(--space-2);flex:0 0 auto;min-width:max-content}.hd-icon-btn{position:relative;width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-lg);border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.hd-icon-btn:hover,.hd-icon-btn--on{background:var(--brand-primary-light);border-color:var(--brand-primary);color:var(--brand-primary-dark)}.hd-icon-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.hd-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 var(--space-1);background:var(--status-danger);border-radius:var(--radius-pill);border:2px solid var(--surface-card);display:flex;align-items:center;justify-content:center;font-size:calc(var(--fs-xs) - 2px);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:1;pointer-events:none;box-sizing:border-box}.hd-sep{width:1px;height:var(--space-6);background:var(--border-color);flex-shrink:0}.hd-pop-wrap{position:relative}.hd-notif-panel{position:absolute;top:calc(100% + var(--space-2));right:0;width:320px;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);overflow:hidden;animation:hdSlideIn var(--transition-fast) both}.hd-notif-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--brand-primary-light);font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--text-primary)}.hd-notif-mark{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--brand-primary);background:none;border:none;cursor:pointer;padding:2px var(--space-2);border-radius:var(--radius-sm);font-family:inherit;transition:background var(--transition-fast)}.hd-notif-mark:hover{background:var(--surface-card)}.hd-notif-list{max-height:280px;overflow-y:auto}.hd-notif-list::-webkit-scrollbar{width:4px}.hd-notif-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-pill)}.hd-notif-row{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast)}.hd-notif-row:last-child{border-bottom:none}.hd-notif-row:hover{background:var(--surface-hover)}.hd-notif-row--new{background:rgba(var(--brand-primary-rgb),.05)}.hd-notif-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-primary);flex-shrink:0;margin-top:6px;opacity:0}.hd-notif-row--new .hd-notif-dot{opacity:1}.hd-notif-text{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-primary);margin:0;line-height:var(--lh-base)}.hd-notif-time{font-size:var(--fs-xs);color:var(--text-muted);display:block}.hd-notif-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-1);padding:var(--space-6) var(--space-4)}.hd-notif-empty-ico{font-size:32px!important;color:var(--text-muted);margin-bottom:var(--space-1)}.hd-notif-empty p{margin:0;font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-primary)}.hd-notif-empty span{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.hd-notif-foot{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);text-align:center;background:var(--surface-page)}.hd-notif-foot a{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--brand-primary);text-decoration:none}.hd-notif-foot a:hover{text-decoration:underline}.hd-user-btn{display:flex;align-items:center;gap:var(--space-2);height:var(--control-height-sm);padding:0 var(--space-2) 0 2px;border-radius:var(--radius-pill);border:1px solid var(--border-color);background:transparent;cursor:pointer;font-family:inherit;transition:background var(--transition-fast),border-color var(--transition-fast);flex-shrink:0;box-sizing:border-box}.hd-user-btn:hover,.hd-user-btn--open{background:var(--brand-primary-light);border-color:var(--brand-primary)}.hd-user-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.hd-avatar{width:24px;height:24px;border-radius:50%;background:var(--brand-gradient);display:flex;align-items:center;justify-content:center;font-size:calc(var(--fs-xs) - 1px);font-weight:var(--fw-bold);color:var(--text-on-brand);flex-shrink:0;overflow:hidden}.hd-avatar img{width:100%;height:100%;object-fit:cover}.hd-user-meta{display:flex;flex-direction:column;line-height:var(--lh-tight);text-align:left}.hd-user-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.hd-user-role{font-size:calc(var(--fs-xs) - 1px);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--brand-primary-dark)}.hd-chevron{font-size:var(--icon-size-sm)!important;color:var(--text-muted);transition:transform var(--transition-base);flex-shrink:0}.hd-user-btn--open .hd-chevron{transform:rotate(180deg)}.hd-user-panel{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:230px;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);overflow:hidden;padding-bottom:var(--space-1);animation:hdSlideIn var(--transition-fast) both}@keyframes hdSlideIn{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.hd-card-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-primary-light)}.hd-card-avatar{position:relative;width:40px;height:40px;border-radius:50%;background:var(--brand-gradient);display:flex;align-items:center;justify-content:center;font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--text-on-brand);flex-shrink:0}.hd-card-avatar img,.hd-card-avatar span{width:40px;height:40px;border-radius:50%;object-fit:cover;display:flex;align-items:center;justify-content:center}.hd-online-dot{position:absolute;bottom:0;right:0;width:10px;height:10px;background:var(--status-success);border-radius:50%;border:2px solid var(--brand-primary-light)}.hd-card-info{min-width:0}.hd-card-name{font-size:var(--fs-base);font-weight:var(--fw-bold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hd-card-empno{font-size:var(--fs-xs);color:var(--text-secondary)}.hd-card-chip{display:inline-block;margin-top:var(--space-1);padding:1px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--brand-primary-dark);font-size:calc(var(--fs-xs) - 1px);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.04em}.hd-drop-sep{height:1px;background:var(--border-color);margin:var(--space-1) 0}.hd-drop-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--fs-base);font-weight:var(--fw-medium);color:var(--text-secondary);font-family:inherit;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);border:none;background:transparent;width:100%;text-align:left;text-decoration:none;box-sizing:border-box}.hd-drop-item:hover{background:var(--surface-hover);color:var(--text-primary)}.hd-drop-item--danger{color:var(--status-danger)}.hd-drop-item--danger:hover{background:var(--status-danger-light);color:var(--status-danger)}.hd-drop-ico{font-size:var(--icon-size)!important;color:var(--text-muted);flex-shrink:0;transition:color var(--transition-fast)}.hd-drop-item:hover .hd-drop-ico{color:var(--brand-primary)}.hd-drop-item--danger .hd-drop-ico,.hd-drop-item--danger:hover .hd-drop-ico{color:var(--status-danger)}@media (max-width: 1024px){.hd-bc-item,.hd-bc-sep{display:none}}@media (max-width: 768px){.hd-root{padding-left:var(--space-3)!important;padding-right:var(--space-3)}.hd-left{gap:var(--space-2);margin-right:var(--space-2)}.hd-page-desc,.hd-user-meta,.hd-chevron{display:none}.hd-user-btn{padding:0 2px;border-radius:50%}.hd-notif-panel{position:fixed;top:calc(var(--header-height) + var(--space-1));left:var(--space-2);right:var(--space-2);width:auto}}@media (max-width: 400px){.hd-sep{display:none}}.ml-root{display:flex;min-height:100vh;background:var(--surface-page);font-family:var(--font-family);color:var(--text-primary)}.ml-content{flex:1;display:flex;flex-direction:column;min-width:0;transition:margin-left var(--transition-base)}.ml-page{flex:1;min-width:0;padding:var(--page-padding);margin-top:var(--header-height);min-height:calc(100vh - var(--header-height));overflow-x:hidden;box-sizing:border-box;animation:mlPageIn var(--transition-base) both}@keyframes mlPageIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ml-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:var(--z-overlay);animation:mlFade var(--transition-base) both}@keyframes mlFade{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.ml-content{margin-left:0!important}}.lc-root{display:flex;height:100vh;height:100dvh;width:100%;font-family:DM Sans,sans-serif;background:var(--surface-card);overflow:hidden;position:relative}.lc-left{flex:1.1;position:relative;background:linear-gradient(145deg,var(--surface-page) 0%,var(--surface-hover) 50%,var(--brand-primary-light) 100%);display:flex;flex-direction:column;overflow:hidden}.lc-network{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.lc-network-svg{width:100%;height:100%}.lc-grid-line{stroke:rgba(var(--brand-primary-rgb, 100,116,139),.12);stroke-width:.5}.lc-diag-line{stroke-width:.8}.lc-diag-line--strong{stroke:rgba(var(--brand-primary-rgb, 100,116,139),.2)}.lc-diag-line--soft{stroke:rgba(var(--brand-primary-rgb, 100,116,139),.15)}.lc-node-halo{fill:rgba(var(--brand-primary-rgb, 100,116,139),.04)}.lc-node{fill:rgba(var(--brand-primary-rgb, 100,116,139),.35)}.lc-ring{stroke:rgba(var(--brand-primary-rgb, 100,116,139),.2);stroke-width:.8}.lc-pulse{fill:rgba(var(--brand-primary-rgb, 100,116,139),.06)}.lc-accent-dot{fill:var(--brand-primary, #2563eb)}.lc-accent-ring{stroke:var(--brand-primary, #2563eb)}.lc-packet{fill:var(--brand-primary, #2563eb)}.lc-packet2{fill:var(--brand-secondary, #64748b)}.lc-shield-path{stroke:var(--brand-primary, #2563eb)}@keyframes lc-nodePulse{0%,to{opacity:.45;r:5px}50%{opacity:1;r:6px}}.lc-node-0{animation:lc-nodePulse 2s ease-in-out infinite}.lc-node-1{animation:lc-nodePulse 2.8s ease-in-out infinite .4s}.lc-node-2{animation:lc-nodePulse 3.2s ease-in-out infinite 1s}.lc-node-3{animation:lc-nodePulse 2.5s ease-in-out infinite 1.6s}@keyframes lc-ringPulse{0%{opacity:.5;transform:scale(1)}70%{opacity:0;transform:scale(2.2)}to{opacity:0;transform:scale(2.2)}}.lc-ring-0{animation:lc-ringPulse 3s ease-out infinite;transform-box:fill-box;transform-origin:center}.lc-ring-1{animation:lc-ringPulse 3s ease-out infinite 1s;transform-box:fill-box;transform-origin:center}.lc-ring-2{animation:lc-ringPulse 3s ease-out infinite 2s;transform-box:fill-box;transform-origin:center}@keyframes lc-accentPulse{0%,to{opacity:.08;transform:scale(1)}50%{opacity:.2;transform:scale(1.4)}}.lc-pulse-0{animation:lc-accentPulse 2.5s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.lc-pulse-1{animation:lc-accentPulse 3s ease-in-out infinite 1.2s;transform-box:fill-box;transform-origin:center}.lc-left:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 30% 60%,rgba(var(--brand-primary-rgb),.05) 0%,transparent 70%),linear-gradient(to right,transparent 80%,var(--surface-card) 100%);pointer-events:none}.lc-left-content{position:relative;z-index:2;display:flex;flex-direction:column;height:100%;padding:clamp(20px,4vh,40px) clamp(24px,3.5vw,48px);gap:clamp(14px,2.6vh,28px)}.lc-left-top{display:flex;align-items:center;gap:16px}.lc-left-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(16px,3vw,40px)}.lc-illustration{height:100%;max-height:440px;min-height:0;display:flex;align-items:center;justify-content:center;animation:lc-fadeUp .8s ease .1s both}.lc-brand-logo{height:36px;object-fit:contain;filter:none;opacity:.9}.lc-brand-pill{padding:3px 10px;border:1px solid rgba(var(--brand-primary-rgb),.4);border-radius:20px;font-size:9px;font-weight:600;letter-spacing:1.5px;color:var(--brand-primary);font-family:JetBrains Mono,monospace;background:rgba(var(--brand-primary-rgb),.06)}.lc-left-hero{animation:lc-fadeUp .8s ease both}@keyframes lc-fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.lc-hero-title{font-family:Syne,sans-serif;font-size:clamp(24px,2.3vw,38px);font-weight:800;line-height:1.1;color:var(--text-primary);letter-spacing:-1px;margin-bottom:16px}.lc-hero-title em{font-style:normal;white-space:nowrap;color:var(--brand-primary)}.lc-hero-sub{font-size:14px;line-height:1.75;color:var(--text-secondary);max-width:380px;font-weight:400}.lc-left-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;animation:lc-fadeUp .8s ease .2s both}.lc-stat-chip{display:flex;align-items:flex-start;gap:10px;min-width:0;background:rgba(var(--text-on-brand-rgb),.7);border:1px solid var(--border-color);border-radius:12px;padding:clamp(9px,1.5vh,13px) 12px;transition:border-color .2s,box-shadow .2s}.lc-stat-chip:hover{border-color:rgba(var(--brand-primary-rgb),.45);box-shadow:var(--shadow-sm)}.lc-stat-ico{width:34px;height:34px;flex-shrink:0;border-radius:9px;background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.lc-stat-ico svg{font-size:19px}.lc-stat-text{display:flex;flex-direction:column;gap:2px;min-width:0}.lc-stat-val{font-size:13.5px;font-weight:600;line-height:1.3;color:var(--text-primary)}.lc-stat-label{font-size:11.5px;line-height:1.45;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lc-left-footer{display:flex;align-items:center;gap:20px;animation:lc-fadeUp .8s ease .35s both}.lc-footer-link{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted);text-decoration:none;transition:color .2s}.lc-footer-link:hover{color:var(--brand-primary)}.lc-footer-ver{margin-left:auto;font-size:11px;color:var(--text-muted);font-family:JetBrains Mono,monospace}.lc-right{width:clamp(360px,28vw,420px);flex-shrink:0;height:100%;overflow-y:auto;background:var(--surface-card);display:flex;align-items:center;justify-content:center;padding:clamp(20px,4vh,40px) clamp(20px,2.2vw,32px);position:relative;box-shadow:var(--shadow-sm)}.lc-right:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,rgba(var(--brand-primary-rgb),.4),transparent)}.lc-form-card{width:100%;max-width:340px;margin:auto 0;position:relative;animation:lc-cardIn .7s cubic-bezier(.34,1.56,.64,1) both}@keyframes lc-cardIn{0%{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.lc-card-accent{height:3px;background:var(--brand-gradient);border-radius:2px 2px 0 0;margin-bottom:-1px}.lc-form-logo-wrap{text-align:center;margin-bottom:clamp(16px,3.2vh,30px)}.lc-form-logo{height:clamp(36px,6vh,48px);object-fit:contain;opacity:.9}.lc-form-header{margin-bottom:clamp(16px,3.2vh,30px);text-align:center}.lc-welcome{font-family:Syne,sans-serif;font-size:26px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px;margin-bottom:4px}.lc-subtitle{font-size:13px;line-height:1.5;color:var(--text-muted);font-weight:400}.lc-error-alert{display:flex;align-items:flex-start;gap:10px;background:rgba(var(--status-danger-rgb),.08);border:1px solid rgba(var(--status-danger-rgb),.25);border-radius:8px;padding:11px 14px;margin-bottom:20px;font-size:13px;color:var(--status-danger);animation:lc-shake .3s ease}@keyframes lc-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}60%{transform:translate(5px)}}.lc-error-icon{width:18px;height:18px;border-radius:50%;background:rgba(var(--status-danger-rgb),.25);color:var(--status-danger);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;margin-top:1px}.lc-form{display:flex;flex-direction:column;gap:clamp(14px,2.6vh,24px);margin-bottom:clamp(12px,2vh,20px)}.lc-field{position:relative}.lc-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:8px;transition:color .2s}.lc-field--focused .lc-label{color:var(--brand-primary)}.lc-input-wrap{display:flex;align-items:center;gap:10px;padding:0 0 10px;position:relative}.lc-input-icon{color:var(--text-muted)!important;flex-shrink:0;transition:color .2s!important}.lc-field--focused .lc-input-icon{color:var(--brand-primary)!important}.lc-input{flex:1;background:transparent;border:none;outline:none;font-family:DM Sans,sans-serif;font-size:15px;font-weight:400;color:var(--text-primary);caret-color:var(--brand-primary)}.lc-field .lc-input,.lc-field .lc-input:focus,.lc-field .lc-input:focus-visible{border:none;outline:none;box-shadow:none;border-radius:0;padding:0}.lc-field .lc-input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--surface-card) inset;-webkit-text-fill-color:var(--text-primary)}.lc-input::placeholder{color:var(--text-muted);font-size:13px}.lc-field-line{height:1px;background:var(--border-color);position:relative;border-radius:1px}.lc-field-line:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1.5px;background:var(--brand-gradient);border-radius:1px;transition:width .3s cubic-bezier(.4,0,.2,1)}.lc-field--focused .lc-field-line:after{width:100%}.lc-form-options{display:flex;align-items:center;justify-content:space-between;margin-top:-8px}.lc-remember{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.lc-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border:1px solid var(--text-muted);border-radius:3px;background:transparent;cursor:pointer;position:relative;transition:all .2s;flex-shrink:0}.lc-checkbox:checked{background:var(--brand-primary);border-color:var(--brand-primary)}.lc-checkbox:checked:after{content:"✓";position:absolute;top:-1px;left:2px;font-size:9px;color:var(--text-on-brand);font-weight:700}.lc-forgot{font-size:12px;color:var(--text-muted);text-decoration:none;transition:color .2s}.lc-forgot:hover{color:var(--brand-primary)}.lc-submit{width:100%;padding:14px 24px;background:var(--brand-gradient);border:none;border-radius:10px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;letter-spacing:.3px;margin-top:4px}.lc-submit:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(var(--text-on-brand-rgb),.1),transparent);opacity:0;transition:opacity .2s}.lc-submit:hover:not(:disabled):before{opacity:1}.lc-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px rgba(var(--brand-primary-rgb),.3)}.lc-submit:active:not(:disabled){transform:translateY(0);box-shadow:none}.lc-submit:disabled{opacity:.65;cursor:not-allowed}.lc-btn-arrow{width:16px;height:16px;transition:transform .2s}.lc-submit:hover:not(:disabled) .lc-btn-arrow{transform:translate(3px)}.lc-btn-loading{display:flex;align-items:center;gap:10px}.lc-spinner{width:16px;height:16px;border:2px solid rgba(var(--text-on-brand-rgb),.25);border-top-color:var(--text-on-brand);border-radius:50%;animation:lc-spin .7s linear infinite}@keyframes lc-spin{to{transform:rotate(360deg)}}.lc-security-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;color:var(--text-muted);margin-top:clamp(12px,2vh,20px);padding-top:clamp(10px,1.6vh,16px);border-top:1px solid var(--border-color)}.lc-security-note span{color:var(--text-muted)}.lci{width:100%;height:100%;max-height:420px;overflow:visible}.lci-ground{fill:rgba(var(--brand-primary-rgb),.08)}.lci-flow{fill:none;stroke:rgba(var(--brand-primary-rgb),.55);stroke-width:1.6;stroke-dasharray:4 6;animation:lci-dash 1.6s linear infinite}.lci-card{fill:var(--surface-card);stroke:var(--border-color);stroke-width:1;filter:drop-shadow(0 6px 14px rgba(var(--brand-primary-rgb),.12))}.lci-bar{fill:var(--brand-primary-dark)}.lci-dot-w{fill:var(--surface-card);opacity:.85}.lci-tile{fill:var(--surface-page);stroke:var(--border-color);stroke-width:1}.lci-ink{fill:var(--text-secondary);opacity:.7}.lci-muted{fill:var(--border-strong)}.lci-ok{fill:var(--status-success)}.lci-warn{fill:var(--status-warning)}.lci-bad{fill:var(--status-danger)}.lci-axis{fill:var(--border-strong)}.lci-col{fill:var(--brand-primary-tint2)}.lci-col--hi{fill:var(--brand-primary)}.lci-device,.lci-phone{fill:var(--brand-primary-dark);filter:drop-shadow(0 6px 14px rgba(var(--brand-primary-rgb),.18))}.lci-screen{fill:var(--surface-card)}.lci-face{fill:var(--brand-primary-light);stroke:var(--brand-primary);stroke-width:2}.lci-face-ln{fill:none;stroke:var(--brand-primary);stroke-width:2;stroke-linecap:round}.lci-scan{fill:none;stroke:var(--brand-accent);stroke-width:2;stroke-linecap:round}.lci-led{fill:var(--brand-accent);animation:lci-blink 2s ease-in-out infinite}.lci-fence{fill:rgba(var(--brand-primary-rgb),.1);stroke:var(--brand-primary);stroke-width:1.5;stroke-dasharray:5 5}.lci-fence-in{fill:rgba(var(--brand-primary-rgb),.14)}.lci-pin{fill:var(--status-danger)}.lci-btn{fill:var(--brand-primary)}.lci-notch{fill:rgba(var(--text-on-brand-rgb),.4)}.lci-cal{fill:var(--brand-primary-light);stroke:var(--brand-primary-tint2);stroke-width:1}.lci-tick-dk{fill:none;stroke:var(--brand-primary-dark);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.lci-chip{fill:var(--status-success-light);stroke:rgba(var(--status-success-rgb),.35);stroke-width:1}.lci-check{fill:var(--status-success);stroke:var(--surface-card);stroke-width:3}.lci-tick{fill:none;stroke:var(--surface-card);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.lci-spark{fill:rgba(var(--brand-primary-rgb),.3)}.lci-spark--hi{fill:var(--brand-accent)}.lci-float{animation:lci-float 6s ease-in-out infinite;transform-box:fill-box}.lci-float--b{animation-delay:-1.5s}.lci-float--c{animation-delay:-3s}.lci-float--d{animation-delay:-4.5s}@keyframes lci-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes lci-dash{to{stroke-dashoffset:-20}}@keyframes lci-blink{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion: reduce){.lci-float,.lci-flow,.lci-led{animation:none}}@media (max-height: 760px){.lc-hero-sub{display:none}.lc-stat-label{font-size:11px}.lc-hero-title{margin-bottom:0}.lc-subtitle{display:none}}@media (max-width: 1200px){.lc-left-main{grid-template-columns:minmax(0,1fr)}.lc-illustration{display:none}}@media (max-width: 900px){.lc-root{flex-direction:column;height:auto;min-height:100vh;overflow-y:auto}.lc-left-main{display:block}.lc-left-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lc-left{flex:none;min-height:260px;padding:0}.lc-left-content{padding:24px 28px}.lc-left-hero,.lc-left-stats{margin-bottom:24px}.lc-hero-title{font-size:28px}.lc-right{width:100%;height:auto;min-width:unset;padding:32px 20px 48px}}@media (max-width: 480px){.lc-left-stats{grid-template-columns:minmax(0,1fr);gap:8px}.lc-form-card{max-width:100%}}@media (max-height: 640px){.lc-left-content{gap:10px;padding-top:16px;padding-bottom:14px}.lc-stat-chip{padding:7px 10px;gap:8px}.lc-stat-ico{width:28px;height:28px;border-radius:8px}.lc-stat-ico svg{font-size:16px}.lc-stat-val{font-size:12.5px}.lc-stat-label{font-size:10.5px;line-height:1.35}}@media (max-width: 1100px) and (min-width: 901px){.lc-left-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}._spinnerContainer_1d22x_7{display:inline-flex;justify-content:center;align-items:center}._spinner_1d22x_7{width:20px;height:20px;border:2.5px solid currentColor;border-right-color:transparent;border-radius:50%;opacity:.9;animation:_spin_1d22x_7 .7s linear infinite}@keyframes _spin_1d22x_7{to{transform:rotate(360deg)}}.lv-root{display:flex;flex-direction:column;gap:16px;animation:lv-in .25s ease}@keyframes lv-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.lv-steps{display:flex;gap:6px}.lv-steps i{flex:1;height:4px;border-radius:4px;background:var(--border-color);transition:background var(--transition-fast)}.lv-steps i.lv-steps-on{background:var(--brand-primary-dark)}.lv-head{display:flex;gap:12px;align-items:flex-start}.lv-head-ico{width:40px;height:40px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--brand-primary-light);color:var(--brand-primary-dark)}.lv-head-ico svg{font-size:22px}.lv-title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px}.lv-sub{margin:3px 0 0;font-size:13px;color:var(--text-secondary);line-height:1.5}.lv-sub b{color:var(--text-primary);font-weight:600}.lv-form{display:flex;flex-direction:column;gap:10px}.lv-pic-row{display:flex;align-items:stretch;gap:8px}.lv-pic{flex:1;min-height:72px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:10px;border:1px solid var(--border-color);background:var(--surface-page);color:var(--text-primary);-webkit-user-select:none;user-select:none}.lv-pic svg{width:100%;max-width:300px;height:auto;display:block}.lv-icon-btn{width:44px;flex-shrink:0;border-radius:10px;border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast)}.lv-icon-btn:hover:not(:disabled){background:var(--brand-primary-light)}.lv-icon-btn:disabled{opacity:.5;cursor:not-allowed}.lv-label{font-size:12px;font-weight:600;color:var(--text-secondary);margin-top:4px}.lv-input{width:100%;height:46px;padding:0 14px;border-radius:10px;border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:15px;box-sizing:border-box}.lv-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.lv-input--code{font-size:20px;font-weight:700;letter-spacing:6px;text-align:center}.lv-input--code::placeholder{font-size:14px;font-weight:400;letter-spacing:0;color:var(--text-muted)}.lv-hint{margin:0;font-size:12px;color:var(--text-muted)}.lv-sent{display:flex;align-items:center;gap:6px;margin:0;padding:8px 12px;border-radius:8px;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:13px;font-weight:600}.lv-sent svg{font-size:17px;flex-shrink:0}.lv-otp{display:flex;gap:8px;justify-content:space-between}.lv-otp-box{flex:1;min-width:0;max-width:52px;height:54px;border-radius:10px;border:1.5px solid var(--border-strong);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:22px;font-weight:700;text-align:center;box-sizing:border-box;caret-color:var(--brand-primary)}.lv-otp-box:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.lv-otp-box--filled{border-color:var(--brand-primary-dark)}.lv-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.lv-error{margin:0;padding:9px 12px;border-radius:8px;font-size:13px;background:rgba(var(--status-danger-rgb),.08);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.lv-warn{margin:0;padding:8px 12px;border-radius:8px;font-size:12.5px;background:var(--status-warning-light);color:var(--status-warning)}.lv-link{align-self:flex-start;padding:0;border:none;background:none;font-family:inherit;font-size:13px;font-weight:600;color:var(--brand-primary-dark);cursor:pointer;font-variant-numeric:tabular-nums}.lv-link:hover:not(:disabled){text-decoration:underline}.lv-link:disabled{color:var(--text-muted);cursor:default}.lv-back{align-self:center;display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:none;background:none;font-family:inherit;font-size:13px;color:var(--text-muted);cursor:pointer;border-radius:6px}.lv-back svg{font-size:16px}.lv-back:hover{color:var(--text-primary);background:var(--surface-hover)}.lv-rotating{animation:lv-rotate .8s linear infinite}@keyframes lv-rotate{to{transform:rotate(360deg)}}@media (max-width: 480px){.lv-otp{gap:6px}.lv-otp-box{height:48px;font-size:20px}.lv-title{font-size:18px}}@media (prefers-reduced-motion: reduce){.lv-root,.lv-rotating{animation:none}}.unauth-root{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--surface-page);font-family:var(--font-family);color:var(--text-primary)}.unauth-card{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-6);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);text-align:center}.unauth-icon{width:64px;height:64px;border-radius:50%;background:var(--status-warning-light);color:var(--status-warning);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2)}.unauth-icon svg{font-size:32px}.unauth-code{font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted)}.unauth-title{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.unauth-desc{margin:0 0 var(--space-3);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.unauth-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.unauth-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.unauth-btn svg{font-size:var(--icon-size)}.unauth-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none}.unauth-btn--primary:hover{box-shadow:var(--shadow-md)}.unauth-btn--plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.unauth-btn--plain:hover{background:var(--surface-hover);color:var(--text-primary)}@media (max-width: 600px){.unauth-card{padding:var(--space-6) var(--space-4)}.unauth-actions{width:100%;flex-direction:column}.unauth-btn{justify-content:center}}:root{--dark-bg: #141414;--card-bg: #222222;--gold-text: #daaf51;--light-gray-text: #bdbdbd}.contactPage-wrapper{position:relative;min-height:100vh;font-family:Arial,sans-serif;box-sizing:border-box}.contactPage-topSection{background:url(/images/bg.png) no-repeat center center / cover;background-color:var(--dark-bg);height:65vh;display:flex;justify-content:center;align-items:center;text-align:center;position:relative;overflow:hidden}.contactPage-topSection:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#00000040;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1}.contactPage-bottomSection{background-color:var(--dark-bg);height:45vh}.contactPage-header{color:#fff;position:relative;z-index:2}.cp-logo{width:150px;margin-bottom:20px;transition:transform .3s ease-in-out,box-shadow .3s ease-in-out;background-color:#fff;padding:10px;border-radius:8px}.cp-logo:hover{transform:scale(1.1);box-shadow:0 0 20px #ffffff80}.contactPage-headerTitle{font-size:3rem;font-weight:300;letter-spacing:5px;margin:0;color:#fff}.contactPage-headerLine{width:50px;height:2px;background-color:var(--gold-text);border:none;margin:10px auto 20px}.contactPage-headerSubtitle{font-size:.9rem;color:var(--light-gray-text);max-width:600px;margin:0 auto;line-height:1.6}.contactPage-contentContainer{position:absolute;top:70%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:1200px;display:flex;justify-content:space-between;align-items:flex-start;gap:40px;z-index:2}.contactPage-getInTouchHeading{display:flex;flex-direction:column;align-items:flex-start;flex-basis:30%}.contactPage-subtitle{color:var(--gold-text);font-size:.8rem;font-weight:700;letter-spacing:2px}.contactPage-getInTouchTitle{font-size:4rem;font-weight:300;letter-spacing:2px;color:var(--gold-text);margin:0;line-height:1}.contactPage-cardsContainer{display:flex;gap:20px;flex-basis:70%;justify-content:flex-end;flex-wrap:nowrap;transform:translate(5%)}.contactPage-card{background-color:var(--card-bg);padding:30px;border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;flex-shrink:0;width:250px}.contactPage-cardIconContainer{background-color:var(--gold-text);width:40px;height:40px;border-radius:50%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.contactPage-cardIcon{color:var(--dark-bg)!important;font-size:20px!important}.contactPage-cardTitle{font-size:1.1rem;font-weight:700;margin:0 0 8px;color:#fff}.contactPage-cardText{font-size:.8rem;color:var(--light-gray-text);line-height:1.5;margin:0 0 15px}.contactPage-cardLink{color:var(--gold-text);text-decoration:none;font-weight:700;font-size:.8rem;transition:color .3s}.contactPage-cardLink:hover{color:#fff}.contactPage-boldText{font-weight:700}@media (max-width: 1024px){.contactPage-contentContainer{flex-direction:column;align-items:center;top:40%;transform:translate(-50%)}.contactPage-topSection,.contactPage-bottomSection{height:auto;padding-bottom:40px}.contactPage-bottomSection{min-height:50vh}.contactPage-getInTouchHeading{align-items:center;text-align:center;margin-bottom:20px}.contactPage-cardsContainer{flex-direction:column;align-items:center;transform:translate(0);gap:20px}}.admin-dashboard{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family)}.admin-dashboard__grid-container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto auto;gap:var(--section-gap);width:100%}.admin-dashboard__box{display:flex;flex-direction:column;min-width:0;min-height:30px;background-color:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);font-size:var(--fs-sm);overflow:hidden;transition:box-shadow var(--transition-base)}.admin-dashboard__box:hover{box-shadow:var(--shadow-md)}.admin-dashboard__box1{grid-column:span 3}.admin-dashboard__box2{grid-row:span 2}.admin-dashboard__box3{grid-column:span 2}.admin-dashboard__box4{min-height:60px}.admin-dashboard__box5{grid-column:span 4}@media (max-width: 1024px){.admin-dashboard__grid-container{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-dashboard__box1{grid-column:span 3}.admin-dashboard__box2{grid-row:span 1;min-height:120px}.admin-dashboard__box3{grid-column:span 2;min-height:120px}.admin-dashboard__box5{grid-column:span 3}}@media (max-width: 768px){.admin-dashboard__grid-container{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard__box1,.admin-dashboard__box3,.admin-dashboard__box5{grid-column:span 2}.admin-dashboard__box2{min-height:100px}}@media (max-width: 600px){.admin-dashboard__grid-container{grid-template-columns:minmax(0,1fr)}.admin-dashboard__box1,.admin-dashboard__box2,.admin-dashboard__box3,.admin-dashboard__box4,.admin-dashboard__box5{grid-column:span 1;grid-row:span 1;min-height:40px}.admin-dashboard__box{border-radius:var(--radius-lg)}}.adh-root{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand);font-family:var(--font-family)}.adh-who{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex:1 1 auto}.adh-avatar{width:56px;height:56px;border-radius:50%;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(var(--text-on-brand-rgb),.18);border:2px solid rgba(var(--text-on-brand-rgb),.45);font-size:var(--fs-lg);font-weight:var(--fw-bold)}.adh-avatar img{width:100%;height:100%;object-fit:cover}.adh-who-text{min-width:0}.adh-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88)}.adh-meta-item{display:inline-flex;align-items:center;gap:4px}.adh-meta svg{font-size:13px}.adh-role{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.3);font-weight:var(--fw-semibold);line-height:20px}.adh-title{margin:2px 0 0;font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adh-desc{margin:4px 0 0;font-size:var(--fs-sm);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.88)}.adh-scope{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0;max-width:360px}.adh-scope-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:rgba(var(--text-on-brand-rgb),.85)}.adh-scope-row{display:flex;align-items:center;gap:6px;max-width:100%}.adh-trigger{display:inline-flex;align-items:center;gap:var(--space-2);max-width:100%;min-width:220px;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:box-shadow var(--transition-fast)}.adh-trigger:hover,.adh-trigger--open{box-shadow:var(--shadow-md)}.adh-trigger:focus-visible{outline:none;box-shadow:var(--focus-ring)}.adh-trigger-ico{font-size:var(--icon-size)!important;color:var(--brand-primary)}.adh-trigger-text{flex:1;min-width:0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adh-trigger-caret{font-size:var(--icon-size)!important;color:var(--text-muted);transition:transform var(--transition-fast)}.adh-trigger-caret--up{transform:rotate(180deg)}.adh-reset{width:var(--control-height);height:var(--control-height);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.35);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.adh-reset:hover{background:rgba(var(--text-on-brand-rgb),.26)}.adh-reset svg{font-size:var(--icon-size-sm)}.adh-spin{width:14px;height:14px;border:2px solid var(--brand-primary);border-right-color:transparent;border-radius:50%;flex-shrink:0;animation:adhSpin .7s linear infinite}@keyframes adhSpin{to{transform:rotate(360deg)}}.adh-scrim{display:none}.adh-pop{position:fixed;top:var(--adh-top);right:var(--adh-right);z-index:var(--z-dropdown);width:380px;max-width:calc(100vw - 16px);max-height:min(560px,calc(100vh - var(--adh-top) - 16px));display:flex;flex-direction:column;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);font-family:var(--font-family);color:var(--text-primary);overflow:hidden;animation:adhIn var(--transition-base) ease-out}@keyframes adhIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.adh-pop-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-2) var(--space-4)}.adh-pop-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.adh-pop-sub{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.adh-pop-x{width:28px;height:28px;flex-shrink:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.adh-pop-x:hover{background:var(--surface-hover);color:var(--text-primary)}.adh-pop-x svg{font-size:var(--icon-size)}.adh-pop-tools{display:flex;flex-direction:column;gap:6px;padding:0 var(--space-4) var(--space-2);border-bottom:1px solid var(--border-color)}.adh-search{position:relative;display:flex;align-items:center}.adh-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.adh-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-sm);font-family:inherit}.adh-search-input::placeholder{color:var(--text-muted)}.adh-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.adh-search-clear{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.adh-search-clear svg{font-size:12px}.adh-bulk{display:flex;align-items:center;gap:6px}.adh-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.adh-link:hover:not(:disabled){text-decoration:underline}.adh-link:disabled{color:var(--text-muted);cursor:default}.adh-dot{color:var(--text-muted);font-size:var(--fs-xs)}.adh-pop-body{flex:1;min-height:140px;overflow-y:auto;padding:var(--space-2)}.adh-tree{list-style:none;margin:0;padding:0}.adh-node{margin:0}.adh-row{display:flex;align-items:center;gap:4px;min-height:34px;padding:2px var(--space-2) 2px calc(var(--space-1) + var(--adh-depth, 0) * 18px);border-radius:var(--radius-md);transition:background var(--transition-fast)}.adh-row:hover{background:var(--surface-hover)}.adh-row--all,.adh-row--all:hover{background:var(--brand-primary-light)}.adh-twisty{width:22px;height:22px;flex-shrink:0;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.adh-twisty:disabled{cursor:default}.adh-twisty:hover:not(:disabled){background:var(--surface-card);color:var(--text-primary)}.adh-twisty svg{font-size:var(--icon-size)}.adh-check{position:relative;display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0;cursor:pointer}.adh-check input{position:absolute;opacity:0;width:0;height:0}.adh-box{position:relative;width:18px;height:18px;flex-shrink:0;border:2px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-card);transition:background var(--transition-fast),border-color var(--transition-fast)}.adh-check input:checked+.adh-box{background:var(--brand-primary);border-color:var(--brand-primary)}.adh-check input:checked+.adh-box:after{content:"";position:absolute;left:4px;top:0;width:5px;height:10px;border:solid var(--text-on-brand);border-width:0 2px 2px 0;transform:rotate(45deg)}.adh-check input:indeterminate+.adh-box{background:var(--status-warning);border-color:var(--status-warning)}.adh-check input:indeterminate+.adh-box:after{content:"";position:absolute;left:3px;top:6px;width:8px;height:2px;background:var(--text-on-brand)}.adh-check input:focus-visible+.adh-box{box-shadow:var(--focus-ring)}.adh-node-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adh-node-type{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--surface-page);border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);line-height:18px}.adh-node-count{flex-shrink:0;min-width:20px;text-align:center;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);font-variant-numeric:tabular-nums}.adh-sk-list{display:flex;flex-direction:column;gap:6px;padding:var(--space-1)}.adh-sk-row{display:flex;align-items:center;gap:var(--space-2);height:30px;padding-left:calc(var(--space-2) + var(--adh-depth, 0) * 18px)}.adh-sk{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:adhShimmer 1.4s infinite linear}.adh-sk-box{width:18px;height:18px}.adh-sk-line{height:10px;width:55%;border-radius:var(--radius-pill)}@keyframes adhShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.adh-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-3);text-align:center}.adh-state-ico{width:44px;height:44px;border-radius:var(--radius-lg);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.adh-state-ico svg{font-size:22px}.adh-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.adh-state-title{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-bold)}.adh-state-desc{margin:0;max-width:300px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.adh-pop-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.adh-pop-count{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.adh-pop-count--warn{color:var(--status-warning)}.adh-pop-actions{display:flex;gap:var(--space-2)}.adh-btn-plain,.adh-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.adh-btn-plain svg{font-size:var(--icon-size-sm)}.adh-btn-plain:disabled,.adh-btn-primary:disabled{opacity:.5;cursor:not-allowed}.adh-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.adh-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.adh-btn-primary{min-width:88px;background:var(--brand-gradient);color:var(--text-on-brand);border:none}.adh-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}@media (max-width: 1024px){.adh-root{padding:var(--space-3) var(--space-4)}.adh-desc{display:none}}@media (max-width: 768px){.adh-root{flex-direction:column;align-items:stretch;gap:var(--space-3)}.adh-scope{align-items:stretch;max-width:none}.adh-trigger{flex:1;min-width:0}}@media (max-width: 600px){.adh-avatar{width:44px;height:44px;font-size:var(--fs-md)}.adh-title{font-size:var(--fs-lg);white-space:normal}.adh-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) - 1);background:var(--backdrop-overlay)}.adh-pop{top:auto;right:0;left:0;bottom:0;width:100%;max-width:none;max-height:85vh;z-index:var(--z-modal);border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation-name:adhUp}@keyframes adhUp{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}.adh-pop-actions{flex:1;justify-content:flex-end}}.adbs-root{display:flex;flex-direction:column;width:100%;height:100%}.adbs-header{position:relative;flex-shrink:0;padding:10px 14px;background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent);--text-on-brand: var(--panel-header-text);--text-on-brand-rgb: var(--panel-header-text-rgb);color:var(--text-on-brand);overflow:hidden}.adbs-header-sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(var(--text-on-brand-rgb),.28),rgba(var(--text-on-brand-rgb),0) 55%),radial-gradient(ellipse 70% 140% at 100% 0%,rgba(var(--text-on-brand-rgb),.18) 0%,transparent 60%);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none}.adbs-header-text{position:relative;z-index:1;display:flex;flex-direction:column;gap:1px}.adbs-header-title{font-size:.82rem;font-weight:700;color:var(--text-on-brand);line-height:1.3}.adbs-header-desc{font-size:.66rem;font-weight:500;color:rgba(var(--text-on-brand-rgb),.88);line-height:1.3}.adbs-container{display:flex;flex:1;gap:6px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;width:100%;padding:4px}.adbs-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 0;min-width:0;padding:4px 6px;box-sizing:border-box;transition:background .2s ease}.adbs-item.adbs-clickable{cursor:pointer;border-radius:6px;background:var(--surface-hover)}.adbs-item.adbs-clickable:hover{background:var(--brand-primary-light)}.adbs-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--icon-bg, var(--brand-gradient));margin-bottom:4px}.adbs-icon svg{font-size:1.2rem!important;color:var(--icon-fg, var(--text-on-brand))}.adbs-count{font-weight:600;font-size:1.1rem;color:var(--brand-primary-dark);margin-bottom:2px}.adbs-title{font-size:.7rem;color:var(--text-secondary);text-align:center;white-space:nowrap}.adbs-view-details{display:flex;align-items:center;gap:3px;margin-top:4px;font-size:.56rem;font-weight:600;color:var(--brand-primary);white-space:nowrap}.adbs-view-details svg{font-size:.5rem!important}.adbs-loading{opacity:.7}.adbs-skeleton{animation:adbs-pulse 1.5s ease-in-out infinite}.adbs-skeleton-icon{background:linear-gradient(135deg,var(--border-color) 0%,var(--text-muted) 100%)!important}.adbs-skeleton-icon svg{opacity:0}.adbs-skeleton-count{width:40%;height:1.1rem;background:var(--border-color);border-radius:2px}.adbs-skeleton-title{width:70%;height:.7rem;background:var(--border-color);border-radius:2px;margin-top:2px}@keyframes adbs-pulse{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}.adbs-error{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:40px 20px;text-align:center}.adbs-error-icon{color:var(--status-danger);margin-bottom:16px}.adbs-error-message{font-size:1.2rem;font-weight:600;color:var(--text-primary);margin-bottom:8px}.adbs-error-details{font-size:.9rem;color:var(--text-secondary);margin-bottom:20px;max-width:400px}.adbs-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:40px 20px;text-align:center}.adbs-empty-icon{color:var(--text-muted);margin-bottom:16px}.adbs-empty-message{font-size:1.2rem;font-weight:600;color:var(--text-primary);margin-bottom:8px}.adbs-empty-details{font-size:.9rem;color:var(--text-secondary);margin-bottom:20px;max-width:400px}.adbs-retry-button{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--brand-gradient);color:var(--text-on-brand);border:none;border-radius:4px;font-weight:500;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.adbs-retry-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(var(--brand-primary-rgb),.3)}@media (max-width: 1200px){.adbs-container{flex-wrap:wrap}.adbs-item{flex:1 0 calc(25% - 8px)}}@media (max-width: 768px){.adbs-item{flex:1 0 calc(33.33% - 8px)}.adbs-header{padding:8px 12px}}@media (max-width: 600px){.adbs-item{flex:1 0 calc(50% - 6px);padding:4px}.adbs-count{font-size:1rem}.adbs-title{font-size:.6rem}.adbs-icon{width:24px;height:24px}.adbs-icon svg{font-size:1rem!important}.adbs-view-details{font-size:.48rem}}@media (max-width: 480px){.adbs-item{flex:1 0 calc(50% - 6px)}.adbs-title{font-size:.55rem}.adbs-header{padding:8px 10px}.adbs-header-title{font-size:.76rem}.adbs-header-desc{font-size:.62rem}.adbs-error,.adbs-empty{padding:20px 15px}.adbs-error-message,.adbs-empty-message{font-size:1rem}.adbs-error-details,.adbs-empty-details{font-size:.8rem}}.adbs-header-sheen{display:none}:root{--adsm-font: "DM Sans", system-ui, sans-serif;--adsm-r: 10px;--adsm-r-sm: 6px;--adsm-t: .18s ease}.adsm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px;box-sizing:border-box;animation:adsmFadeIn .2s ease both}@keyframes adsmFadeIn{0%{opacity:0}to{opacity:1}}.adsm-sheet{background:var(--surface-card);border-radius:var(--adsm-r);width:100%;max-width:1040px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:var(--shadow-md);overflow:hidden;font-family:var(--adsm-font);animation:adsmSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes adsmSlideUp{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.adsm-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--brand-gradient);flex-shrink:0}.adsm-header-left{display:flex;align-items:center;gap:12px}.adsm-header-icon{width:34px;height:34px;border-radius:8px;background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);flex-shrink:0}.adsm-title{margin:0;font-size:15px;font-weight:700;color:var(--text-on-brand);line-height:1.2;font-family:var(--adsm-font)}.adsm-tag{display:inline-block;margin-top:2px;padding:1px 7px;border-radius:99px;background:rgba(var(--text-on-brand-rgb),.22);color:rgba(var(--text-on-brand-rgb),.92);font-size:10px;font-weight:700;letter-spacing:.06em;font-family:var(--adsm-font)}.adsm-close-btn{width:32px;height:32px;border-radius:8px;border:1.5px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--adsm-t),border-color var(--adsm-t);flex-shrink:0}.adsm-close-btn:hover{background:rgba(var(--text-on-brand-rgb),.25);border-color:rgba(var(--text-on-brand-rgb),.5)}.adsm-close-btn:active{transform:scale(.92)}.adsm-toolbar{display:flex;align-items:center;gap:12px;padding:10px 20px;background:var(--brand-primary-light);border-bottom:1px solid var(--border-color);flex-shrink:0;flex-wrap:wrap}.adsm-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}.adsm-chip{display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:99px;background:var(--surface-card);border:1px solid var(--brand-primary-light);font-family:var(--adsm-font)}.adsm-chip--filtered{border-color:rgba(var(--brand-primary-rgb),.5);background:var(--brand-primary-light)}.adsm-chip-label{font-size:10.5px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.adsm-chip-value{font-size:12px;font-weight:700;color:var(--brand-primary-dark)}.adsm-search-wrap{position:relative;display:flex;align-items:center;flex-shrink:0}.adsm-search-ico{position:absolute;left:9px;color:var(--text-muted);pointer-events:none;flex-shrink:0}.adsm-search-input{height:32px;width:240px;padding:0 28px 0 30px;border:1.5px solid var(--brand-primary-light);border-radius:var(--adsm-r-sm);background:var(--surface-card);font-size:12.5px;font-family:var(--adsm-font);color:var(--text-primary);outline:none;transition:border-color var(--adsm-t),box-shadow var(--adsm-t)}.adsm-search-input::placeholder{color:var(--text-muted)}.adsm-search-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.14)}.adsm-search-clear{position:absolute;right:7px;width:18px;height:18px;border-radius:50%;border:none;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background var(--adsm-t)}.adsm-search-clear:hover{background:var(--brand-primary-dark)}.adsm-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.adsm-table-wrap{flex:1;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(var(--brand-primary-rgb),.25) transparent}.adsm-table-wrap::-webkit-scrollbar{width:5px;height:5px}.adsm-table-wrap::-webkit-scrollbar-track{background:transparent}.adsm-table-wrap::-webkit-scrollbar-thumb{background:rgba(var(--brand-primary-rgb),.25);border-radius:99px}.adsm-table-wrap::-webkit-scrollbar-thumb:hover{background:rgba(var(--brand-primary-rgb),.5)}.adsm-table{width:100%;border-collapse:collapse;font-size:12.5px;font-family:var(--adsm-font);min-width:540px}.adsm-table thead tr{position:sticky;top:0;z-index:10}.adsm-table th{padding:10px 12px;text-align:left;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--brand-primary-light);white-space:nowrap}.adsm-th-sno,.adsm-td-sno{width:40px;text-align:center;color:var(--text-muted)!important;font-size:11px!important;font-weight:500!important}.adsm-table td{padding:9px 12px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);vertical-align:middle;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis}.adsm-tr-even td{background:var(--surface-hover)}.adsm-table tbody tr:hover td{background:var(--surface-hover)!important;color:var(--text-primary)}.adsm-empno{display:inline-block;padding:2px 8px;border-radius:99px;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-weight:700;font-size:11px;letter-spacing:.03em;border:1px solid var(--brand-primary-light)}.adsm-status-badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10.5px;font-weight:700;letter-spacing:.04em;background:color-mix(in srgb,var(--badge-color) 12%,var(--surface-card));color:var(--badge-color);border:1px solid color-mix(in srgb,var(--badge-color) 30%,transparent)}.adsm-cell-muted{color:var(--text-muted)!important}.adsm-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;gap:10px}.adsm-empty-icon{color:var(--text-muted);line-height:1}.adsm-empty-text{margin:0;font-size:13.5px;color:var(--text-secondary);font-family:var(--adsm-font);text-align:center}.adsm-empty-clear{margin-top:4px;padding:6px 16px;border-radius:var(--adsm-r-sm);border:1.5px solid var(--brand-primary);background:transparent;color:var(--brand-primary);font-size:12px;font-weight:600;font-family:var(--adsm-font);cursor:pointer;transition:background var(--adsm-t),color var(--adsm-t)}.adsm-empty-clear:hover{background:var(--brand-primary);color:var(--text-on-brand)}.adsm-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:var(--brand-primary-light);border-top:1px solid var(--border-color);flex-shrink:0}.adsm-footer-info{font-size:12px;font-weight:500;color:var(--text-secondary);font-family:var(--adsm-font)}.adsm-footer-close{padding:6px 18px;border-radius:var(--adsm-r-sm);border:none;background:var(--brand-gradient);color:var(--text-on-brand);font-size:12.5px;font-weight:600;font-family:var(--adsm-font);cursor:pointer;transition:opacity var(--adsm-t),transform var(--adsm-t)}.adsm-footer-close:hover{opacity:.88}.adsm-footer-close:active{transform:scale(.96)}@media (max-width: 768px){.adsm-backdrop{padding:8px}.adsm-sheet{max-height:calc(100vh - 16px);border-radius:8px}.adsm-toolbar{padding:8px 14px;gap:8px}.adsm-search-input{width:100%}.adsm-search-wrap{width:100%;flex:1 1 100%}.adsm-chips{flex:1 1 100%}.adsm-table th,.adsm-table td{padding:8px 10px;font-size:11.5px}.adsm-header{padding:12px 14px}.adsm-footer{padding:9px 14px}}@media (max-width: 480px){.adsm-title{font-size:13.5px}.adsm-footer{flex-direction:column;gap:8px;align-items:flex-start}.adsm-footer-close{align-self:flex-end}}:root{--adopmm-font: "DM Sans", system-ui, sans-serif;--adopmm-r: 10px;--adopmm-r-sm: 6px;--adopmm-t: .18s ease}.adopmm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px;box-sizing:border-box;animation:adopmmFadeIn .2s ease both}@keyframes adopmmFadeIn{0%{opacity:0}to{opacity:1}}.adopmm-sheet{background:var(--surface-card);border-radius:var(--adopmm-r);width:100%;max-width:1040px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:var(--shadow-md);overflow:hidden;font-family:var(--adopmm-font);animation:adopmmSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes adopmmSlideUp{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.adopmm-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--brand-gradient);flex-shrink:0}.adopmm-header-left{display:flex;align-items:center;gap:12px}.adopmm-header-icon{width:34px;height:34px;border-radius:8px;background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);flex-shrink:0}.adopmm-title{margin:0;font-size:15px;font-weight:700;color:var(--text-on-brand);line-height:1.2;font-family:var(--adopmm-font)}.adopmm-tag{display:inline-block;margin-top:2px;padding:1px 7px;border-radius:99px;background:rgba(var(--text-on-brand-rgb),.22);color:rgba(var(--text-on-brand-rgb),.92);font-size:10px;font-weight:700;letter-spacing:.06em;font-family:var(--adopmm-font)}.adopmm-close-btn{width:32px;height:32px;border-radius:8px;border:1.5px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--adopmm-t),border-color var(--adopmm-t);flex-shrink:0}.adopmm-close-btn:hover{background:rgba(var(--text-on-brand-rgb),.25);border-color:rgba(var(--text-on-brand-rgb),.5)}.adopmm-close-btn:active{transform:scale(.92)}.adopmm-toolbar{display:flex;align-items:center;gap:12px;padding:10px 20px;background:var(--brand-primary-light);border-bottom:1px solid var(--border-color);flex-shrink:0;flex-wrap:wrap}.adopmm-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}.adopmm-chip{display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:99px;background:var(--surface-card);border:1px solid var(--brand-primary-light);font-family:var(--adopmm-font)}.adopmm-chip--filtered{border-color:rgba(var(--brand-primary-rgb),.5);background:var(--brand-primary-light)}.adopmm-chip-label{font-size:10.5px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.adopmm-chip-value{font-size:12px;font-weight:700;color:var(--brand-primary-dark)}.adopmm-search-wrap{position:relative;display:flex;align-items:center;flex-shrink:0}.adopmm-search-ico{position:absolute;left:9px;color:var(--text-muted);pointer-events:none;flex-shrink:0}.adopmm-search-input{height:32px;width:240px;padding:0 28px 0 30px;border:1.5px solid var(--brand-primary-light);border-radius:var(--adopmm-r-sm);background:var(--surface-card);font-size:12.5px;font-family:var(--adopmm-font);color:var(--text-primary);outline:none;transition:border-color var(--adopmm-t),box-shadow var(--adopmm-t)}.adopmm-search-input::placeholder{color:var(--text-muted)}.adopmm-search-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.14)}.adopmm-search-clear{position:absolute;right:7px;width:18px;height:18px;border-radius:50%;border:none;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background var(--adopmm-t)}.adopmm-search-clear:hover{background:var(--brand-primary-dark)}.adopmm-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.adopmm-table-wrap{flex:1;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(var(--brand-primary-rgb),.25) transparent}.adopmm-table-wrap::-webkit-scrollbar{width:5px;height:5px}.adopmm-table-wrap::-webkit-scrollbar-track{background:transparent}.adopmm-table-wrap::-webkit-scrollbar-thumb{background:rgba(var(--brand-primary-rgb),.25);border-radius:99px}.adopmm-table-wrap::-webkit-scrollbar-thumb:hover{background:rgba(var(--brand-primary-rgb),.5)}.adopmm-table{width:100%;border-collapse:collapse;font-size:12.5px;font-family:var(--adopmm-font);min-width:900px}.adopmm-table thead tr{position:sticky;top:0;z-index:10}.adopmm-table th{padding:10px 12px;text-align:left;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--brand-primary-light);white-space:nowrap}.adopmm-th-sno,.adopmm-td-sno{width:40px;text-align:center;color:var(--text-muted)!important;font-size:11px!important;font-weight:500!important}.adopmm-table th:nth-child(3),.adopmm-table td:nth-child(3){min-width:80px}.adopmm-table th:nth-child(5),.adopmm-table td:nth-child(5){min-width:100px}.adopmm-table th:nth-child(6),.adopmm-table th:nth-child(7),.adopmm-table td:nth-child(6),.adopmm-table td:nth-child(7){min-width:85px}.adopmm-table th:nth-child(8),.adopmm-table td:nth-child(8){min-width:80px}.adopmm-table th:nth-child(9),.adopmm-table td:nth-child(9){min-width:130px}.adopmm-table td{padding:9px 12px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);vertical-align:middle;white-space:nowrap}.adopmm-tr-even td{background:var(--surface-hover)}.adopmm-table tbody tr:hover td{background:var(--surface-hover)!important;color:var(--text-primary)}.adopmm-employee-name{display:inline-flex;align-items:center;font-weight:500;color:var(--text-primary)}.adopmm-emp-id{display:inline-block;padding:2px 8px;border-radius:99px;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-weight:700;font-size:11px;letter-spacing:.03em;border:1px solid var(--brand-primary-light)}.adopmm-time{font-family:monospace;font-size:11px;font-weight:500;color:var(--text-primary)}.adopmm-duration{font-weight:600;color:var(--brand-primary-dark)}.adopmm-approved-time{font-size:11px;font-family:monospace}.adopmm-status-badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10.5px;font-weight:700;letter-spacing:.04em;background:color-mix(in srgb,var(--badge-color) 12%,var(--surface-card));color:var(--badge-color);border:1px solid color-mix(in srgb,var(--badge-color) 30%,transparent)}@supports not (color: color-mix(in srgb,red,blue)){.adopmm-status-badge{background:rgba(var(--brand-primary-rgb),.12)}}.adopmm-cell-muted{color:var(--text-muted)!important}.adopmm-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;gap:10px}.adopmm-empty-icon{color:var(--text-muted);line-height:1}.adopmm-empty-text{margin:0;font-size:13.5px;color:var(--text-secondary);font-family:var(--adopmm-font);text-align:center}.adopmm-empty-clear{margin-top:4px;padding:6px 16px;border-radius:var(--adopmm-r-sm);border:1.5px solid var(--brand-primary);background:transparent;color:var(--brand-primary);font-size:12px;font-weight:600;font-family:var(--adopmm-font);cursor:pointer;transition:background var(--adopmm-t),color var(--adopmm-t)}.adopmm-empty-clear:hover{background:var(--brand-primary);color:var(--text-on-brand)}.adopmm-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:var(--brand-primary-light);border-top:1px solid var(--border-color);flex-shrink:0}.adopmm-footer-info{font-size:12px;font-weight:500;color:var(--text-secondary);font-family:var(--adopmm-font)}.adopmm-footer-close{padding:6px 18px;border-radius:var(--adopmm-r-sm);border:none;background:var(--brand-gradient);color:var(--text-on-brand);font-size:12.5px;font-weight:600;font-family:var(--adopmm-font);cursor:pointer;transition:opacity var(--adopmm-t),transform var(--adopmm-t)}.adopmm-footer-close:hover{opacity:.88}.adopmm-footer-close:active{transform:scale(.96)}@media (max-width: 1024px){.adopmm-sheet{max-width:90vw}}@media (max-width: 768px){.adopmm-backdrop{padding:8px}.adopmm-sheet{max-height:calc(100vh - 16px);border-radius:8px;max-width:95vw}.adopmm-toolbar{padding:8px 14px;gap:8px}.adopmm-search-input{width:100%}.adopmm-search-wrap{width:100%;flex:1 1 100%}.adopmm-chips{flex:1 1 100%}.adopmm-table th,.adopmm-table td{padding:8px 10px;font-size:11.5px}.adopmm-header{padding:12px 14px}.adopmm-footer{padding:9px 14px}}@media (max-width: 480px){.adopmm-title{font-size:13.5px}.adopmm-footer{flex-direction:column;gap:8px;align-items:flex-start}.adopmm-footer-close{align-self:flex-end}.adopmm-table th,.adopmm-table td{padding:6px 8px;font-size:10px}.adopmm-employee-name{font-size:10px}}.adopmm-filters{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding:10px 20px;border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.adopmm-f{display:flex;flex-direction:column;gap:3px;min-width:130px}.adopmm-f span{font-size:10.5px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.adopmm-f input,.adopmm-f select{height:32px;padding:0 8px;border:1.5px solid var(--border-color);border-radius:var(--adopmm-r-sm);background:var(--surface-card);color:var(--text-primary);font-size:12.5px;font-family:var(--adopmm-font);outline:none}.adopmm-f input:focus,.adopmm-f select:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.14)}.adopmm-filters .adopmm-search-wrap{flex:1 1 220px}.adopmm-filters .adopmm-search-input{width:100%}button.adopmm-chip{cursor:pointer;transition:background var(--adopmm-t),border-color var(--adopmm-t)}button.adopmm-chip:hover{border-color:rgba(var(--brand-primary-rgb),.5)}.adopmm-chip--on{border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:0 0 0 2px rgba(var(--brand-primary-rgb),.15)}.adopmm-emp-id{margin-left:6px}.adopmm-footer-actions{display:inline-flex;align-items:center;gap:6px}.adopmm-footer-actions .adopmm-footer-close:disabled{opacity:.45;cursor:not-allowed}.adopmm-footer-actions .adopmm-footer-close[aria-label]{padding:6px 8px;display:inline-flex}@media (max-width: 768px){.adopmm-filters{padding:8px 14px;gap:8px}.adopmm-f{min-width:calc(50% - 4px);flex:1 1 calc(50% - 4px)}.adopmm-footer-actions{align-self:flex-end}}.adopm-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100%;box-sizing:border-box;width:100%;display:flex;flex-direction:column}.adopm-header{position:relative;flex-shrink:0;padding:10px 14px;background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent);--text-on-brand: var(--panel-header-text);--text-on-brand-rgb: var(--panel-header-text-rgb);color:var(--text-on-brand);overflow:hidden}.adopm-header-sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(var(--text-on-brand-rgb),.28),rgba(var(--text-on-brand-rgb),0) 55%),radial-gradient(ellipse 70% 140% at 100% 0%,rgba(var(--text-on-brand-rgb),.18) 0%,transparent 60%);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none}.adopm-header-text{position:relative;z-index:1;display:flex;flex-direction:column;gap:1px}.adopm-header-title{font-size:.82rem;font-weight:700;color:var(--text-on-brand);line-height:1.3}.adopm-header-desc{font-size:.66rem;font-weight:500;color:rgba(var(--text-on-brand-rgb),.88);line-height:1.3}.adopm-body{flex:1;padding:10px 8px;box-sizing:border-box}.adopm-summary-card{background:var(--surface-hover);border-radius:6px;padding:10px;margin-bottom:12px;color:var(--text-secondary);text-align:center}.adopm-total-label{font-size:.7rem;opacity:.9;margin-bottom:3px}.adopm-total-value{font-size:1.3rem;font-weight:700}.adopm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.adopm-card{background:var(--surface-hover);border-radius:6px;padding:10px;text-align:center;border:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:90px;cursor:pointer;transition:background .2s ease}.adopm-card:hover{background:var(--brand-primary-light)}.adopm-card--disabled{cursor:not-allowed;opacity:.6}.adopm-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--icon-bg, var(--brand-gradient));margin-bottom:4px}.adopm-icon svg{font-size:1.1rem!important;color:var(--icon-fg, var(--text-on-brand))}.adopm-skeleton-icon{background:linear-gradient(135deg,var(--border-color) 0%,var(--text-muted) 100%)!important}.adopm-card-content{width:100%;margin-bottom:4px}.adopm-card-value{font-weight:700;font-size:1rem;color:var(--text-primary);line-height:1.2;margin-bottom:2px}.adopm-card-label{font-weight:600;font-size:.8rem;color:var(--text-secondary)}.adopm-view-details{display:flex;align-items:center;gap:3px;margin-top:4px;font-size:.6rem;font-weight:600;color:var(--brand-primary);white-space:nowrap}.adopm-view-details svg{font-size:.55rem!important}.adopm-error-message{display:flex;align-items:center;background:var(--status-danger-light);border:1px solid var(--status-danger);border-radius:6px;padding:8px 10px;margin-bottom:12px;color:var(--status-danger)}.adopm-error-icon{margin-right:8px;font-size:1rem}.adopm-error-text{font-size:.75rem;font-weight:500;line-height:1.3}.adopm-loading{opacity:.8}.adopm-skeleton{animation:adopm-pulse 1.5s ease-in-out infinite}.adopm-skeleton .adopm-card-value{width:20px;height:1rem;background:var(--border-color);border-radius:3px;margin:0 auto 3px}.adopm-skeleton .adopm-card-label{width:60px;height:.8rem;background:var(--border-color);border-radius:3px;margin:0 auto}.adopm-view-details-skeleton{width:70px;height:20px;background:var(--border-color);border-radius:4px;margin:8px auto 0}@keyframes adopm-pulse{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}@media (max-width: 360px){.adopm-container{max-width:280px}.adopm-grid{grid-template-columns:1fr;gap:6px}.adopm-card{padding:8px}.adopm-header{padding:8px 10px}.adopm-header-title{font-size:.76rem}.adopm-header-desc{font-size:.62rem}.adopm-total-value{font-size:1.2rem}.adopm-card-value{font-size:.9rem}.adopm-view-details{font-size:.55rem}.adopm-error-message{padding:6px 8px}.adopm-error-text{font-size:.7rem}}.adopm-header-sheen{display:none}.adopm-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:10px}.adopm-stat{--stat-tone: var(--brand-primary);display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:6px;border:1px solid var(--border-color);border-top:3px solid var(--stat-tone);background:var(--surface-hover);color:var(--text-secondary);font:inherit;cursor:pointer;transition:background .2s ease}.adopm-stat:hover:not(:disabled){background:var(--brand-primary-light)}.adopm-stat:disabled{cursor:not-allowed;opacity:.6}.adopm-stat-value{font-size:1.15rem;font-weight:700;color:var(--stat-tone);line-height:1.1}.adopm-stat-label{font-size:.66rem;text-align:center;line-height:1.2}.adopm-card{font:inherit;color:inherit;width:100%}.adopm-card:disabled{cursor:not-allowed}.adopm-card-sub{color:var(--status-info);font-weight:600}.adopm-retry{margin-left:auto;padding:3px 10px;border-radius:6px;border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font:inherit;font-size:.7rem;cursor:pointer}@media (max-width: 420px){.adopm-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.adbmum-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.adbmum-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:adbmumUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes adbmumUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.adbmum-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.adbmum-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.adbmum-header-icon svg{font-size:20px}.adbmum-header-text{flex:1;min-width:0}.adbmum-header-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.adbmum-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88)}.adbmum-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.adbmum-close:hover{background:rgba(var(--text-on-brand-rgb),.24)}.adbmum-close svg{font-size:var(--icon-size)}.adbmum-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.adbmum-types{display:flex;flex-wrap:wrap;gap:4px;flex:1 1 auto}.adbmum-type{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--brand-primary-tint2);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:22px}.adbmum-type b{font-weight:var(--fw-bold)}.adbmum-search{position:relative;flex:0 1 280px;display:flex;align-items:center;min-width:0}.adbmum-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.adbmum-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.adbmum-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.adbmum-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.adbmum-search button svg{font-size:12px}.adbmum-body{flex:1;overflow:auto;display:flex;flex-direction:column;min-height:200px}.adbmum-table-wrap{overflow:auto}.adbmum-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.adbmum-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.adbmum-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.adbmum-row:nth-child(2n){background:#f9f9f9}.adbmum-row:nth-child(odd){background:#fff}.adbmum-row:hover{background:var(--brand-primary-light)}.adbmum-stack{display:flex;flex-direction:column;gap:1px;min-width:0}.adbmum-stack strong{font-weight:var(--fw-semibold)}.adbmum-stack small{font-size:var(--fs-xs);color:var(--text-muted)}.adbmum-code{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:20px}.adbmum-nowrap{white-space:nowrap;font-variant-numeric:tabular-nums}.adbmum-reason{max-width:260px;color:var(--text-secondary)}.adbmum-col-doc{width:1%;text-align:right}.adbmum-doc{width:var(--control-height-sm);height:var(--control-height-sm);border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center}.adbmum-doc:hover{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.adbmum-doc svg{font-size:var(--icon-size-sm)}.adbmum-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.adbmum-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.adbmum-state p{margin:0;max-width:420px;font-size:var(--fs-sm);color:var(--text-secondary)}.adbmum-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.adbmum-state-ico svg{font-size:26px}.adbmum-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.adbmum-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) var(--space-4)}.adbmum-sk{height:44px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:adbmumShimmer 1.4s infinite linear}@keyframes adbmumShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.adbmum-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.adbmum-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.adbmum-btn svg{font-size:var(--icon-size-sm)}.adbmum-btn:hover{background:var(--surface-hover);color:var(--text-primary)}@media (max-width: 600px){.adbmum-backdrop{padding:0;align-items:flex-end}.adbmum-sheet{max-width:none;max-height:92vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.adbmum-toolbar{padding:var(--space-2) var(--space-3)}.adbmum-search{flex:1 1 100%}.adbmum-table thead{display:none}.adbmum-table,.adbmum-table tbody,.adbmum-table tr,.adbmum-table td{display:block;width:100%}.adbmum-table tbody{padding:var(--space-2)}.adbmum-row,.adbmum-row:nth-child(2n){position:relative;margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.adbmum-table td{display:flex;gap:var(--space-2);padding:3px 0;border:none}.adbmum-table td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.adbmum-col-doc{position:absolute;top:var(--space-2);right:var(--space-3);width:auto!important}.adbmum-reason{max-width:none}}.adleaves-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100%;box-sizing:border-box;width:100%;display:flex;flex-direction:column}.adleaves-header{position:relative;flex-shrink:0;padding:10px 14px;background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent);--text-on-brand: var(--panel-header-text);--text-on-brand-rgb: var(--panel-header-text-rgb);color:var(--text-on-brand);overflow:hidden}.adleaves-header-sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(var(--text-on-brand-rgb),.28),rgba(var(--text-on-brand-rgb),0) 55%),radial-gradient(ellipse 70% 140% at 100% 0%,rgba(var(--text-on-brand-rgb),.18) 0%,transparent 60%);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none}.adleaves-header-text{position:relative;z-index:1;display:flex;flex-direction:column;gap:1px}.adleaves-header-title{font-size:.82rem;font-weight:700;color:var(--text-on-brand);line-height:1.3}.adleaves-header-desc{font-size:.66rem;font-weight:500;color:rgba(var(--text-on-brand-rgb),.88);line-height:1.3}.adleaves-table{width:100%;border-collapse:collapse;font-size:.75rem}.adleaves-table th{text-align:left;padding:8px;background-color:var(--surface-hover);font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color);font-size:.7rem}.adleaves-table td{padding:8px;border-bottom:1px solid var(--border-color)}.adleaves-table tr:hover{background-color:var(--surface-hover)}.adleaves-table tr.today{background-color:var(--brand-primary-light)}.adleaves-table tr.today:hover{background-color:var(--brand-primary-light);filter:brightness(.97)}.adleaves-date{font-weight:500;color:var(--text-primary)}.adleaves-count{font-weight:500;color:var(--text-secondary);text-align:center}.adleaves-button{background:var(--brand-gradient);color:var(--text-on-brand);border:none;padding:4px 8px;border-radius:4px;font-size:.7rem;cursor:pointer;transition:all .2s ease;font-weight:500}.adleaves-button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.adleaves-button:disabled{background:var(--border-color);color:var(--text-muted);cursor:not-allowed}.adleaves-loading{opacity:.8}.adleaves-skeleton{animation:adleaves-pulse 1.5s ease-in-out infinite}.skeleton-cell{height:12px;background:var(--border-color);border-radius:3px}.skeleton-button{width:40px;height:20px;background:var(--border-color);border-radius:4px}@keyframes adleaves-pulse{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}.adleaves-error{padding:20px;text-align:center;color:var(--status-danger);font-size:.8rem}@media (max-width: 768px){.adleaves-header{padding:8px 12px}.adleaves-table th,.adleaves-table td{padding:6px}.adleaves-button{font-size:.65rem;padding:3px 6px}}@media (max-width: 480px){.adleaves-header{padding:8px 10px}.adleaves-header-title{font-size:.76rem}.adleaves-header-desc{font-size:.62rem}}.adleaves-header-sheen{display:none}.att-chart-root{display:flex;flex-direction:column;width:100%;height:100%}.att-chart-header{position:relative;flex-shrink:0;padding:10px 14px;background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent);--text-on-brand: var(--panel-header-text);--text-on-brand-rgb: var(--panel-header-text-rgb);color:var(--text-on-brand);overflow:hidden}.att-chart-header-sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(var(--text-on-brand-rgb),.28),rgba(var(--text-on-brand-rgb),0) 55%),radial-gradient(ellipse 70% 140% at 100% 0%,rgba(var(--text-on-brand-rgb),.18) 0%,transparent 60%);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none}.att-chart-header-text{position:relative;z-index:1;display:flex;flex-direction:column;gap:1px}.att-chart-header-title{font-size:.82rem;font-weight:700;color:var(--text-on-brand);line-height:1.3}.att-chart-header-desc{font-size:.66rem;font-weight:500;color:rgba(var(--text-on-brand-rgb),.88);line-height:1.3}.att-chart-status{padding:20px;text-align:center;font-size:.85rem;color:var(--text-secondary)}.att-chart-status--error{color:var(--status-danger)}.att-chart-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;width:100%;box-sizing:border-box;padding:10px 12px}.legend-container{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:12px;padding:8px;background:var(--surface-hover);border-radius:8px}.legend-item{display:flex;align-items:center;padding:5px 8px;border-radius:16px;cursor:pointer;transition:all .2s ease;background:var(--surface-card);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.legend-item:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.legend-item.active{background:rgba(var(--brand-primary-rgb),.05);border-color:rgba(var(--brand-primary-rgb),.3)}.legend-item.inactive{opacity:.7}.legend-color-indicator{width:10px;height:10px;border-radius:50%;margin-right:6px;flex-shrink:0}.legend-label{font-size:.8rem;font-weight:500;color:var(--text-primary);margin-right:6px}.legend-item.inactive .legend-label{color:var(--text-muted);text-decoration:line-through}.legend-toggle{display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.legend-item.active .legend-toggle{color:var(--brand-primary)}@media (max-width: 768px){.att-chart-container{padding:10px;margin:10px auto}.att-chart-header{padding:8px 12px}.legend-container{gap:5px}.legend-item{padding:4px 7px}.legend-label{font-size:.75rem}}@media (max-width: 480px){.att-chart-container{padding:8px;margin:8px auto}.att-chart-header{padding:8px 10px}.att-chart-header-title{font-size:.76rem}.att-chart-header-desc{font-size:.62rem}.legend-container{flex-direction:column;align-items:stretch;gap:4px}.legend-item{padding:6px 8px;border-radius:6px}}.att-chart-status--error{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.att-chart-status--error p{margin:0}.att-chart-retry{height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.att-chart-retry:hover{background:var(--surface-hover);color:var(--text-primary)}.att-chart-header-sheen{display:none}.adla-root{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.adla-header{position:relative;flex-shrink:0;display:flex;align-items:center;gap:var(--space-3);padding:10px 14px;background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent);--text-on-brand: var(--panel-header-text);--text-on-brand-rgb: var(--panel-header-text-rgb);color:var(--text-on-brand);overflow:hidden}.adla-header-sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(var(--text-on-brand-rgb),.28),rgba(var(--text-on-brand-rgb),0) 55%),radial-gradient(ellipse 70% 140% at 100% 0%,rgba(var(--text-on-brand-rgb),.18) 0%,transparent 60%);pointer-events:none}.adla-header-text{position:relative;z-index:1;flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.adla-header-title{display:inline-flex;align-items:center;gap:var(--space-2);font-size:.82rem;font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:1.3}.adla-header-desc{font-size:.66rem;font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adla-live{display:inline-flex;align-items:center;gap:4px;padding:0 6px;border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.2);font-size:10px;font-weight:var(--fw-bold);letter-spacing:.5px;line-height:16px}.adla-live-dot{width:6px;height:6px;border-radius:50%;background:var(--status-success);box-shadow:0 0 0 2px rgba(var(--text-on-brand-rgb),.6);animation:adlaPulse 1.6s ease-in-out infinite}.adla-live--off .adla-live-dot{background:var(--text-muted);animation:none}@keyframes adlaPulse{0%,to{opacity:1}50%{opacity:.35}}.adla-header-ctrl{position:relative;z-index:1;display:flex;align-items:center;gap:6px;flex-shrink:0}.adla-switch{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-on-brand);cursor:pointer}.adla-switch input{width:14px;height:14px;margin:0;accent-color:var(--surface-card);cursor:pointer}.adla-interval{height:26px;padding:0 6px;border:1px solid rgba(var(--text-on-brand-rgb),.35);border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);cursor:pointer}.adla-interval option{color:var(--text-primary);background:var(--surface-card)}.adla-interval:disabled{opacity:.55;cursor:not-allowed}.adla-refresh{width:26px;height:26px;padding:0;border:1px solid rgba(var(--text-on-brand-rgb),.35);border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.adla-refresh svg{font-size:16px}.adla-refresh:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.24)}.adla-rotating{animation:adlaSpin .8s linear infinite}@keyframes adlaSpin{to{transform:rotate(360deg)}}.adla-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color)}.adla-chips{display:flex;flex-wrap:wrap;gap:4px}.adla-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.adla-chip span{min-width:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--surface-page);line-height:16px;text-align:center}.adla-chip:hover:not(:disabled){background:var(--surface-hover)}.adla-chip:disabled{opacity:.55;cursor:default}.adla-chip--success span{background:var(--status-success-light);color:var(--status-success)}.adla-chip--warning span{background:var(--status-warning-light);color:var(--status-warning)}.adla-chip--on{background:var(--brand-primary-light);border-color:var(--brand-primary);color:var(--brand-primary-dark)}.adla-chip--on span{background:var(--brand-primary);color:var(--text-on-brand)}.adla-filters{display:flex;align-items:center;gap:var(--space-2);flex:1 1 360px;justify-content:flex-end;min-width:0}.adla-search{position:relative;flex:1 1 220px;max-width:300px;display:flex;align-items:center;min-width:0}.adla-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.adla-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.adla-search input:focus,.adla-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.adla-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.adla-search button svg{font-size:12px}.adla-select{flex:0 1 200px;min-width:0;height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.adla-body{flex:1;min-height:160px;max-height:520px;overflow-y:auto;padding:var(--space-3)}.adla-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--space-2)}.adla-card{display:flex;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-left:3px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);transition:box-shadow var(--transition-fast)}.adla-card:hover{box-shadow:var(--shadow-sm)}.adla-card--success{border-left-color:var(--status-success)}.adla-card--warning{border-left-color:var(--status-warning)}.adla-card--muted{border-left-color:var(--text-muted)}.adla-avatar{width:38px;height:38px;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);display:inline-flex;align-items:center;justify-content:center}.adla-avatar-img{width:100%;height:100%;object-fit:cover}.adla-card-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.adla-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.adla-card-top strong{min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adla-time{display:inline-flex;flex-direction:column;align-items:flex-end;flex-shrink:0;font-size:var(--fs-sm);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;line-height:1.1}.adla-time small{font-size:10px;font-weight:var(--fw-medium);color:var(--text-muted)}.adla-sub{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adla-card-foot{display:flex;align-items:center;gap:var(--space-2);margin-top:4px;min-width:0}.adla-badge{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:11px;font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.adla-badge svg{font-size:13px}.adla-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.adla-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.adla-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.adla-device{display:inline-flex;align-items:center;gap:3px;min-width:0;font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adla-device svg{font-size:13px;flex-shrink:0;color:var(--text-muted)}.adla-more{display:flex;justify-content:center;padding-top:var(--space-3)}.adla-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.adla-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.adla-btn svg{font-size:var(--icon-size-sm)}.adla-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.adla-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-3);text-align:center}.adla-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.adla-state p{margin:0;max-width:420px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.adla-state-ico{width:48px;height:48px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.adla-state-ico svg{font-size:24px}.adla-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.adla-sk{height:92px;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:adlaShimmer 1.4s infinite linear}@keyframes adlaShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 768px){.adla-header{flex-wrap:wrap}.adla-header-ctrl{width:100%;justify-content:flex-end}.adla-filters{flex-basis:100%;justify-content:stretch}.adla-search{max-width:none}}@media (max-width: 600px){.adla-toolbar{padding:var(--space-2)}.adla-chips{flex-wrap:nowrap;overflow-x:auto;width:100%}.adla-chip{flex-shrink:0}.adla-filters{flex-wrap:wrap}.adla-search,.adla-select{flex:1 1 100%}.adla-body{max-height:none;padding:var(--space-2)}.adla-grid{grid-template-columns:minmax(0,1fr)}}.adla-header-sheen{display:none}.hp-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.hp-muted{color:var(--text-muted)}.hp-top{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:var(--section-gap)}.hp-profile{display:flex;flex-direction:column;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.hp-profile-band{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand)}.hp-avatar{width:60px;height:60px;border-radius:50%;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:rgba(var(--text-on-brand-rgb),.18);border:2px solid rgba(var(--text-on-brand-rgb),.45);font-size:var(--fs-lg);font-weight:var(--fw-bold)}.hp-avatar img{width:100%;height:100%;object-fit:cover}.hp-profile-head{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.hp-greet{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88)}.hp-name{margin:0;max-width:100%;font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hp-role-chip{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.3);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px}.hp-role-chip svg{font-size:13px}.hp-facts{margin:0;padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.hp-fact{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.hp-fact:last-child{border-bottom:none}.hp-fact dt{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.hp-fact dt svg{font-size:var(--icon-size-sm);color:var(--text-muted)}.hp-fact dd{margin:0;min-width:0;text-align:right;font-size:var(--fs-sm);font-weight:var(--fw-medium);overflow-wrap:anywhere}.hp-profile-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.hp-btn-plain{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast)}.hp-btn-plain svg{font-size:var(--icon-size-sm)}.hp-btn-plain:hover{background:var(--surface-hover);color:var(--text-primary)}.hp-role{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.hp-role-head{display:flex;align-items:center;gap:var(--space-3)}.hp-role-ico{width:44px;height:44px;flex-shrink:0;border-radius:var(--radius-lg);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.hp-role-ico svg{font-size:24px}.hp-role-head-text{min-width:0}.hp-eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.hp-role-title{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);overflow-wrap:anywhere}.hp-role-desc{margin:0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--brand-primary);border-radius:0;background:var(--surface-page);font-size:var(--fs-md);line-height:var(--lh-base);color:var(--text-primary)}.hp-stats{display:flex;flex-wrap:wrap;gap:var(--space-3)}.hp-stat{display:flex;align-items:baseline;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light)}.hp-stat-num{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.hp-stat-label{font-size:var(--fs-sm);color:var(--text-secondary)}.hp-role-note{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.hp-help{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin-top:auto;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--brand-primary);text-decoration:none}.hp-help svg{font-size:var(--icon-size-sm)}.hp-help:hover{text-decoration:underline}.hp-modules{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-5);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.hp-section-head{display:flex;align-items:center;gap:var(--space-3)}.hp-section-ico{font-size:20px!important;width:36px!important;height:36px!important;padding:8px;box-sizing:border-box;border-radius:var(--radius-lg);background:var(--brand-primary-light);color:var(--brand-primary)}.hp-section-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.hp-section-desc{margin:2px 0 0;font-size:var(--fs-sm);color:var(--text-secondary)}.hp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-3)}.hp-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.hp-card:hover{border-color:var(--brand-primary-tint2);box-shadow:var(--shadow-sm)}.hp-card-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-page);border-bottom:1px solid var(--border-color)}.hp-card-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-gradient);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.hp-card-ico svg{font-size:var(--icon-size-sm)}.hp-card-title{margin:0;flex:1;min-width:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.hp-card-count{min-width:22px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;line-height:20px}.hp-links{list-style:none;margin:0;padding:var(--space-1)}.hp-link{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);color:inherit;text-decoration:none;transition:background var(--transition-fast)}.hp-link:hover{background:var(--surface-hover)}.hp-link:focus-visible{outline:none;box-shadow:var(--focus-ring)}.hp-link-text{flex:1;min-width:0;display:flex;flex-direction:column}.hp-link-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.hp-link-desc{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hp-link-arrow{font-size:var(--icon-size-sm)!important;color:var(--text-muted);flex-shrink:0;transition:transform var(--transition-fast),color var(--transition-fast)}.hp-link:hover .hp-link-arrow{color:var(--brand-primary);transform:translate(2px)}.hp-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}.hp-empty-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.hp-empty-ico svg{font-size:26px}.hp-empty-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.hp-empty-desc{margin:0;max-width:420px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}@media (max-width: 1024px){.hp-top{grid-template-columns:minmax(0,1fr)}}@media (max-width: 600px){.hp-role,.hp-modules{padding:var(--space-3)}.hp-name,.hp-role-title{font-size:var(--fs-lg)}.hp-grid{grid-template-columns:minmax(0,1fr)}.hp-profile-actions>a{flex:1;justify-content:center}}.edm-page{min-width:0;font-family:var(--font-family);color:var(--text-primary)}.edm-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--section-gap);align-items:stretch}.edm-area{display:flex;flex-direction:column;min-width:0}.edm-area>*{flex:1}.edm-area--hero{grid-column:span 12}.edm-area--cal{grid-column:span 5}.edm-area--sum{grid-column:span 7}.edm-area--leave,.edm-area--op,.edm-area--hol{grid-column:span 4}.edm-area--req{grid-column:span 7}.edm-area--req.edm-area--wide{grid-column:span 12}.edm-area--team{grid-column:span 5}.edm-empty{max-width:520px;margin:var(--space-8) auto;padding:var(--space-6);text-align:center;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl)}.edm-empty h3{margin:0 0 var(--space-2);font-size:var(--fs-md);font-weight:var(--fw-bold)}.edm-empty p{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}@media (max-width: 1200px){.edm-area--cal,.edm-area--sum{grid-column:span 6}.edm-area--req,.edm-area--team{grid-column:span 12}}@media (max-width: 1024px){.edm-area--cal,.edm-area--sum{grid-column:span 12}.edm-area--leave,.edm-area--op{grid-column:span 6}.edm-area--hol{grid-column:span 12}}@media (max-width: 600px){.edm-grid{grid-template-columns:minmax(0,1fr)}.edm-grid>.edm-area{grid-column:1 / -1}}.emp-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-xl);background:var(--brand-gradient);box-shadow:var(--shadow-sm);color:var(--text-on-brand);font-family:var(--font-family)}.emp-main{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.emp-who{display:flex;align-items:center;gap:var(--space-3);min-width:0}.emp-avatar{width:48px;height:48px;flex-shrink:0;border-radius:50%;overflow:hidden;background:rgba(var(--text-on-brand-rgb),.14);border:2px solid rgba(var(--text-on-brand-rgb),.25);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.emp-avatar-img{width:100%;height:100%;object-fit:cover}.emp-who-text{min-width:0}.emp-who-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.emp-who-text p{margin:3px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.75);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.emp-stat{min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.07);border:1px solid rgba(var(--text-on-brand-rgb),.08)}.emp-stat small{display:block;font-size:10.5px;color:rgba(var(--text-on-brand-rgb),.65);text-transform:uppercase;letter-spacing:.4px}.emp-stat b{display:flex;align-items:center;gap:6px;margin-top:2px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.emp-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:rgba(var(--text-on-brand-rgb),.6);box-shadow:0 0 0 2px rgba(var(--text-on-brand-rgb),.15)}.emp-dot--present{background:var(--status-success)}.emp-dot--absent{background:var(--status-danger)}.emp-dot--short{background:var(--status-warning)}.emp-dot--leave{background:var(--status-info)}.emp-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.emp-action{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid rgba(var(--text-on-brand-rgb),.28);border-radius:var(--radius-md);background:transparent;color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast)}.emp-action svg{font-size:16px}.emp-action:hover{background:rgba(var(--text-on-brand-rgb),.1)}.emp-action--primary{background:var(--surface-card);color:var(--text-primary);border-color:var(--surface-card)}.emp-action--primary:hover{background:var(--surface-card);box-shadow:var(--shadow-md)}.emp-day{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.06);border:1px solid rgba(var(--text-on-brand-rgb),.08);min-width:0}.emp-day-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.emp-day-top strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.emp-day-top span{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.75);white-space:nowrap;font-variant-numeric:tabular-nums}.emp-track{position:relative;height:8px;margin:6px 0 2px;border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.14)}.emp-track i{position:absolute;inset:0 auto 0 0;border-radius:var(--radius-pill);background:var(--brand-primary-lighter);transition:width var(--transition-base)}.emp-track em{position:absolute;top:-4px;width:3px;height:16px;margin-left:-1px;border-radius:2px;background:var(--text-on-brand)}.emp-track-labels{display:flex;justify-content:space-between;gap:var(--space-2);font-size:10.5px;color:rgba(var(--text-on-brand-rgb),.65);font-variant-numeric:tabular-nums}.emp-note{margin:4px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.emp-card--loading{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:stretch;min-height:150px}.emp-sk{border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.08);animation:empPulse 1.4s ease-in-out infinite}@keyframes empPulse{0%,to{opacity:1}50%{opacity:.5}}.emp-card--error{display:flex;align-items:center;gap:var(--space-3)}.emp-card--error>svg{font-size:26px;flex-shrink:0}.emp-card--error div{flex:1;min-width:0}.emp-card--error p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.75)}@media (max-width: 1024px){.emp-card,.emp-card--loading{grid-template-columns:minmax(0,1fr)}}@media (max-width: 600px){.emp-card{padding:var(--space-3);gap:var(--space-3)}.emp-avatar{width:42px;height:42px}.emp-who-text p{white-space:normal}.emp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.emp-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.emp-action{justify-content:center}.emp-day{padding:var(--space-3)}.emp-card--error{flex-wrap:wrap}}.edcal-card{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.edcal-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.edcal-head-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-hover);color:var(--brand-secondary-dark);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.edcal-head-ico svg{font-size:17px}.edcal-head-text{flex:1;min-width:0}.edcal-head-text h3{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.edcal-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.edcal-head-act{display:flex;align-items:center;gap:4px;flex-shrink:0}.edcal-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edcal-link svg{font-size:15px}.edcal-link:hover{text-decoration:underline}.edcal-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edcal-btn svg{font-size:var(--icon-size-sm)}.edcal-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edcal-btn:disabled{opacity:.5;cursor:not-allowed}.edcal-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edcal-icon-btn svg{font-size:var(--icon-size-sm)}.edcal-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edcal-icon-btn:disabled{opacity:.45;cursor:not-allowed}.edcal-body{flex:1;display:flex;flex-direction:column;min-height:0}.edcal-muted{color:var(--text-muted)}.edcal-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.edcal-dot--off{background:var(--text-muted)}.edcal-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);text-align:center}.edcal-state-ico{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.edcal-state-ico svg{font-size:21px}.edcal-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.edcal-state h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edcal-state p{margin:0;max-width:320px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.edcal-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-4) var(--space-4)}.edcal-sk{height:38px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:edcalShimmer 1.4s infinite linear}.edcal-spin{width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:edcalSpin .7s linear infinite}@keyframes edcalSpin{to{transform:rotate(360deg)}}@keyframes edcalShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.edcal-nav{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-4) var(--space-2)}.edcal-nav strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edcal-nav-btns{display:flex;gap:4px;margin-left:auto}.edcal-spin{color:var(--text-muted)}.edcal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:0 var(--space-4) var(--space-2);transition:opacity var(--transition-fast)}.edcal-grid--busy{opacity:.55;pointer-events:none}.edcal-wd{padding:2px 0 4px;text-align:center;font-size:10.5px;font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.edcal-day{position:relative;aspect-ratio:1.15;min-height:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:var(--surface-page);color:var(--text-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.edcal-day:hover{background:var(--surface-hover);border-color:var(--border-color)}.edcal-day--other{background:transparent;color:var(--border-strong);cursor:default}.edcal-day--future{color:var(--text-muted)}.edcal-day--today{background:var(--surface-card);border-color:var(--text-primary);font-weight:var(--fw-bold)}.edcal-day--on{background:var(--brand-primary-light);border-color:var(--brand-primary)}.edcal-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.edcal-dot--present{background:var(--status-success)}.edcal-dot--absent{background:var(--status-danger)}.edcal-dot--short{background:var(--status-warning)}.edcal-dot--leave{background:var(--status-info)}.edcal-dot--coff{background:var(--brand-secondary)}.edcal-dot--tour{background:var(--brand-primary)}.edcal-dot--holiday{background:var(--brand-accent)}.edcal-dot--off{background:var(--border-strong)}.edcal-detail{margin:0 var(--space-4) var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page)}.edcal-detail-top{display:flex;align-items:center;gap:var(--space-2)}.edcal-detail-top strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edcal-pill{display:inline-flex;align-items:center;gap:5px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-card);border:1px solid var(--border-color);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px}.edcal-x{margin-left:auto;width:22px;height:22px;padding:0;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edcal-x svg{font-size:16px}.edcal-x:hover{background:var(--surface-hover);color:var(--text-primary)}.edcal-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:6px var(--space-3);margin:var(--space-2) 0 0}.edcal-facts dt{font-size:10.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.edcal-facts dd{margin:1px 0 0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.edcal-detail-empty{margin:var(--space-1) 0 0;font-size:var(--fs-xs);color:var(--text-secondary)}.edcal-legend{display:flex;flex-wrap:wrap;gap:4px var(--space-3);margin-top:auto;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);font-size:11px;color:var(--text-secondary)}.edcal-legend span{display:inline-flex;align-items:center;gap:5px}@media (max-width: 600px){.edcal-head,.edcal-nav,.edcal-grid,.edcal-legend{padding-left:var(--space-3);padding-right:var(--space-3)}.edcal-detail{margin-left:var(--space-3);margin-right:var(--space-3)}.edcal-day{aspect-ratio:1;min-height:0}}.edas-card{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.edas-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.edas-head-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-hover);color:var(--brand-secondary-dark);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.edas-head-ico svg{font-size:17px}.edas-head-text{flex:1;min-width:0}.edas-head-text h3{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.edas-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.edas-head-act{display:flex;align-items:center;gap:4px;flex-shrink:0}.edas-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edas-link svg{font-size:15px}.edas-link:hover{text-decoration:underline}.edas-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edas-btn svg{font-size:var(--icon-size-sm)}.edas-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edas-btn:disabled{opacity:.5;cursor:not-allowed}.edas-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edas-icon-btn svg{font-size:var(--icon-size-sm)}.edas-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edas-icon-btn:disabled{opacity:.45;cursor:not-allowed}.edas-body{flex:1;display:flex;flex-direction:column;min-height:0}.edas-muted{color:var(--text-muted)}.edas-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.edas-dot--present{background:var(--status-success)}.edas-dot--absent{background:var(--status-danger)}.edas-dot--short{background:var(--status-warning)}.edas-dot--leave{background:var(--status-info)}.edas-dot--off{background:var(--text-muted)}.edas-dot--holiday{background:var(--brand-accent)}.edas-dot--tour{background:var(--brand-primary)}.edas-dot--coff{background:var(--brand-secondary)}.edas-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);text-align:center}.edas-state-ico{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.edas-state-ico svg{font-size:21px}.edas-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.edas-state h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edas-state p{margin:0;max-width:320px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.edas-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-4) var(--space-4)}.edas-sk{height:38px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:edasShimmer 1.4s infinite linear}.edas-spin{width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:edasSpin .7s linear infinite}@keyframes edasSpin{to{transform:rotate(360deg)}}@keyframes edasShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.edas-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);padding:0 var(--space-4) var(--space-3)}.edas-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.edas-tile:hover:not(:disabled){border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.edas-tile:disabled{cursor:default}.edas-tile-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.edas-tile b{font-size:var(--fs-2xl);font-weight:var(--fw-semibold);line-height:1.15;font-variant-numeric:tabular-nums}.edas-tile small{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.edas-tile-go{position:absolute;top:var(--space-2);right:6px;font-size:16px!important;color:var(--border-strong)}.edas-tile:hover .edas-tile-go{color:var(--text-secondary)}.edas-sk{height:82px;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:edasShimmer 1.4s infinite linear}.edas-rate{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page)}.edas-rate-label{font-size:var(--fs-xs);color:var(--text-secondary)}.edas-bar{flex:1 1 120px;height:6px;border-radius:var(--radius-pill);background:var(--border-color);overflow:hidden}.edas-bar i{display:block;height:100%;border-radius:inherit;background:var(--brand-primary);transition:width var(--transition-base)}.edas-rate b{font-size:var(--fs-md);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.edas-rate-sub{font-size:11px;color:var(--text-muted)}.edas-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding:0 var(--space-4) var(--space-3)}.edas-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);cursor:pointer}.edas-chip b{color:var(--text-primary);font-weight:var(--fw-semibold)}.edas-chip:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-hover)}.edas-chip:disabled{cursor:default;opacity:.7}@media (max-width: 600px){.edas-head{padding-left:var(--space-3);padding-right:var(--space-3)}.edas-tiles{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 var(--space-3) var(--space-3)}.edas-rate{margin:0 var(--space-3) var(--space-3)}.edas-chips{padding:0 var(--space-3) var(--space-3)}}.as-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.as-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:asUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes asUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.as-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.as-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.16);display:flex;align-items:center;justify-content:center}.as-header-icon svg{font-size:20px}.as-header-text{flex:1;min-width:0}.as-header-text h3{margin:0;display:flex;align-items:center;gap:8px;font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.as-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8)}.as-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.1);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.as-close:hover{background:rgba(var(--text-on-brand-rgb),.2)}.as-close svg{font-size:var(--icon-size)}.as-dot{width:9px;height:9px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--border-strong);box-shadow:0 0 0 2px rgba(var(--text-on-brand-rgb),.25)}.as-dot--present{background:var(--status-success)}.as-dot--absent{background:var(--status-danger)}.as-dot--short{background:var(--status-warning)}.as-dot--leave{background:var(--status-info)}.as-dot--coff{background:var(--brand-secondary)}.as-dot--tour{background:var(--brand-primary-lighter)}.as-dot--holiday{background:var(--brand-accent)}.as-body{flex:1;overflow:auto}.as-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.as-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.as-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.as-row:nth-child(2n){background:#f9f9f9}.as-row:nth-child(odd){background:#fff}.as-row:hover{background:var(--surface-hover)}.as-date{display:flex;flex-direction:column}.as-date b{font-weight:var(--fw-semibold)}.as-date small,.as-sub{font-size:11px;color:var(--text-muted)}.as-num{font-variant-numeric:tabular-nums;white-space:nowrap}.as-empty{padding:var(--space-8) var(--space-4);text-align:center;font-size:var(--fs-sm);color:var(--text-secondary)}.as-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-muted);flex-shrink:0}.as-btn{height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.as-btn:hover{background:var(--surface-hover);color:var(--text-primary)}@media (max-width: 600px){.as-backdrop{padding:0;align-items:flex-end}.as-sheet{max-width:none;max-height:90vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.as-table thead{display:none}.as-table,.as-table tbody,.as-table tr,.as-table td{display:block;width:100%}.as-table tbody{padding:var(--space-2)}.as-row,.as-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.as-table td{display:flex;gap:var(--space-2);padding:3px 0;border:none}.as-table td[data-label]:before{content:attr(data-label);flex:0 0 76px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.as-date{flex-direction:row;gap:6px;align-items:baseline}.as-footer span{display:none}.as-footer{justify-content:flex-end}}.edl-card{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.edl-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.edl-head-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-hover);color:var(--brand-secondary-dark);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.edl-head-ico svg{font-size:17px}.edl-head-text{flex:1;min-width:0}.edl-head-text h3{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.edl-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.edl-head-act{display:flex;align-items:center;gap:4px;flex-shrink:0}.edl-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edl-link svg{font-size:15px}.edl-link:hover{text-decoration:underline}.edl-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edl-btn svg{font-size:var(--icon-size-sm)}.edl-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edl-btn:disabled{opacity:.5;cursor:not-allowed}.edl-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edl-icon-btn svg{font-size:var(--icon-size-sm)}.edl-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edl-icon-btn:disabled{opacity:.45;cursor:not-allowed}.edl-body{flex:1;display:flex;flex-direction:column;min-height:0}.edl-muted{color:var(--text-muted)}.edl-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.edl-dot--present{background:var(--status-success)}.edl-dot--absent{background:var(--status-danger)}.edl-dot--short{background:var(--status-warning)}.edl-dot--leave{background:var(--status-info)}.edl-dot--off{background:var(--text-muted)}.edl-dot--holiday{background:var(--brand-accent)}.edl-dot--tour{background:var(--brand-primary)}.edl-dot--coff{background:var(--brand-secondary)}.edl-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);text-align:center}.edl-state-ico{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.edl-state-ico svg{font-size:21px}.edl-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.edl-state h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edl-state p{margin:0;max-width:320px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.edl-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-4) var(--space-4)}.edl-sk{height:38px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:edlShimmer 1.4s infinite linear}.edl-spin{width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:edlSpin .7s linear infinite}@keyframes edlSpin{to{transform:rotate(360deg)}}@keyframes edlShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.edl-list{list-style:none;margin:0;padding:0 var(--space-4) var(--space-2);display:flex;flex-direction:column;gap:var(--space-3);max-height:260px;overflow-y:auto}.edl-row{display:flex;flex-direction:column;gap:4px}.edl-row-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.edl-name{min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edl-count{flex-shrink:0;white-space:nowrap;font-variant-numeric:tabular-nums}.edl-count b{font-size:var(--fs-md);font-weight:var(--fw-semibold)}.edl-count small{font-size:11px;color:var(--text-muted)}.edl-bar{height:5px;border-radius:var(--radius-pill);background:var(--border-color);overflow:hidden}.edl-bar i{display:block;height:100%;border-radius:inherit;background:var(--brand-primary)}.edl-used{font-size:11px;color:var(--text-muted)}.edl-foot{margin-top:auto;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color)}@media (max-width: 600px){.edl-head,.edl-list,.edl-foot{padding-left:var(--space-3);padding-right:var(--space-3)}}.edop-card{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.edop-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.edop-head-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-hover);color:var(--brand-secondary-dark);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.edop-head-ico svg{font-size:17px}.edop-head-text{flex:1;min-width:0}.edop-head-text h3{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.edop-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.edop-head-act{display:flex;align-items:center;gap:4px;flex-shrink:0}.edop-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edop-link svg{font-size:15px}.edop-link:hover{text-decoration:underline}.edop-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edop-btn svg{font-size:var(--icon-size-sm)}.edop-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edop-btn:disabled{opacity:.5;cursor:not-allowed}.edop-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edop-icon-btn svg{font-size:var(--icon-size-sm)}.edop-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edop-icon-btn:disabled{opacity:.45;cursor:not-allowed}.edop-body{flex:1;display:flex;flex-direction:column;min-height:0}.edop-muted{color:var(--text-muted)}.edop-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.edop-dot--present{background:var(--status-success)}.edop-dot--absent{background:var(--status-danger)}.edop-dot--short{background:var(--status-warning)}.edop-dot--leave{background:var(--status-info)}.edop-dot--off{background:var(--text-muted)}.edop-dot--holiday{background:var(--brand-accent)}.edop-dot--tour{background:var(--brand-primary)}.edop-dot--coff{background:var(--brand-secondary)}.edop-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);text-align:center}.edop-state-ico{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.edop-state-ico svg{font-size:21px}.edop-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.edop-state h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edop-state p{margin:0;max-width:320px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.edop-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-4) var(--space-4)}.edop-sk{height:38px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:edopShimmer 1.4s infinite linear}.edop-spin{width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:edopSpin .7s linear infinite}@keyframes edopSpin{to{transform:rotate(360deg)}}@keyframes edopShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.edop-list{list-style:none;margin:0;padding:0 var(--space-2) var(--space-3);display:flex;flex-direction:column}.edop-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(40px,80px) auto 16px;align-items:center;gap:var(--space-2);padding:var(--space-2);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer}.edop-row:hover:not(:disabled){background:var(--surface-hover)}.edop-row:disabled{cursor:default}.edop-list li+li{border-top:1px solid var(--border-color)}.edop-row-main{display:flex;flex-direction:column;min-width:0}.edop-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edop-meta{font-size:11px;color:var(--text-muted)}.edop-track{height:5px;border-radius:var(--radius-pill);background:var(--border-color);overflow:hidden}.edop-track i{display:block;height:100%;border-radius:inherit;background:var(--brand-secondary)}.edop-time{font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.edop-go{font-size:16px!important;color:var(--text-muted)}@media (max-width: 600px){.edop-head{padding-left:var(--space-3);padding-right:var(--space-3)}}.edopm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.edopm-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:edopmUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes edopmUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.edopm-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.edopm-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.16);display:flex;align-items:center;justify-content:center}.edopm-header-icon svg{font-size:20px}.edopm-header-text{flex:1;min-width:0}.edopm-header-text h3{margin:0;display:flex;align-items:center;gap:8px;font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.edopm-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8)}.edopm-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.1);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.edopm-close:hover{background:rgba(var(--text-on-brand-rgb),.2)}.edopm-close svg{font-size:var(--icon-size)}.edopm-body{flex:1;overflow:auto}.edopm-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.edopm-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.edopm-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.edopm-row:nth-child(2n){background:#f9f9f9}.edopm-row:nth-child(odd){background:#fff}.edopm-row:hover{background:var(--surface-hover)}.edopm-num{font-variant-numeric:tabular-nums;white-space:nowrap}.edopm-open{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--status-warning)}.edopm-empty{padding:var(--space-8) var(--space-4);text-align:center;font-size:var(--fs-sm);color:var(--text-secondary)}.edopm-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-muted);flex-shrink:0}.edopm-btn{height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.edopm-btn:hover{background:var(--surface-hover);color:var(--text-primary)}@media (max-width: 600px){.edopm-backdrop{padding:0;align-items:flex-end}.edopm-sheet{max-width:none;max-height:90vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.edopm-table thead{display:none}.edopm-table,.edopm-table tbody,.edopm-table tr,.edopm-table td{display:block;width:100%}.edopm-table tbody{padding:var(--space-2)}.edopm-row,.edopm-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.edopm-table td{display:flex;gap:var(--space-2);padding:3px 0;border:none}.edopm-table td[data-label]:before{content:attr(data-label);flex:0 0 76px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.edopm-footer{justify-content:flex-end}}.euh-card{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.euh-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.euh-head-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-hover);color:var(--brand-secondary-dark);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.euh-head-ico svg{font-size:17px}.euh-head-text{flex:1;min-width:0}.euh-head-text h3{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.euh-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.euh-head-act{display:flex;align-items:center;gap:4px;flex-shrink:0}.euh-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.euh-link svg{font-size:15px}.euh-link:hover{text-decoration:underline}.euh-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.euh-btn svg{font-size:var(--icon-size-sm)}.euh-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.euh-btn:disabled{opacity:.5;cursor:not-allowed}.euh-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.euh-icon-btn svg{font-size:var(--icon-size-sm)}.euh-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.euh-icon-btn:disabled{opacity:.45;cursor:not-allowed}.euh-body{flex:1;display:flex;flex-direction:column;min-height:0}.euh-muted{color:var(--text-muted)}.euh-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.euh-dot--present{background:var(--status-success)}.euh-dot--absent{background:var(--status-danger)}.euh-dot--short{background:var(--status-warning)}.euh-dot--leave{background:var(--status-info)}.euh-dot--off{background:var(--text-muted)}.euh-dot--holiday{background:var(--brand-accent)}.euh-dot--tour{background:var(--brand-primary)}.euh-dot--coff{background:var(--brand-secondary)}.euh-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);text-align:center}.euh-state-ico{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.euh-state-ico svg{font-size:21px}.euh-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.euh-state h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.euh-state p{margin:0;max-width:320px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.euh-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-4) var(--space-4)}.euh-sk{height:38px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:euhShimmer 1.4s infinite linear}.euh-spin{width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:euhSpin .7s linear infinite}@keyframes euhSpin{to{transform:rotate(360deg)}}@keyframes euhShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.euh-list{list-style:none;margin:0;padding:0 var(--space-4) var(--space-3);display:flex;flex-direction:column}.euh-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;min-width:0}.euh-row+.euh-row{border-top:1px solid var(--border-color)}.euh-date{width:40px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding:3px 0;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-page);line-height:1.1}.euh-date small{font-size:10px;font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.euh-date b{font-size:var(--fs-md);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.euh-row--today .euh-date{border-color:var(--brand-primary);background:var(--brand-primary-light)}.euh-main{flex:1;min-width:0;display:flex;flex-direction:column}.euh-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.euh-meta{font-size:11px;color:var(--text-muted)}.euh-when{flex-shrink:0;font-size:11px;color:var(--text-muted);white-space:nowrap}.euh-when--soon{color:var(--brand-primary);font-weight:var(--fw-semibold)}@media (max-width: 600px){.euh-head,.euh-list{padding-left:var(--space-3);padding-right:var(--space-3)}}.edrp-card{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.edrp-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.edrp-head-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-hover);color:var(--brand-secondary-dark);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.edrp-head-ico svg{font-size:17px}.edrp-head-text{flex:1;min-width:0}.edrp-head-text h3{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.edrp-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.edrp-head-act{display:flex;align-items:center;gap:4px;flex-shrink:0}.edrp-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edrp-link svg{font-size:15px}.edrp-link:hover{text-decoration:underline}.edrp-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edrp-btn svg{font-size:var(--icon-size-sm)}.edrp-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edrp-btn:disabled{opacity:.5;cursor:not-allowed}.edrp-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edrp-icon-btn svg{font-size:var(--icon-size-sm)}.edrp-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edrp-icon-btn:disabled{opacity:.45;cursor:not-allowed}.edrp-body{flex:1;display:flex;flex-direction:column;min-height:0}.edrp-muted{color:var(--text-muted)}.edrp-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.edrp-dot--present{background:var(--status-success)}.edrp-dot--absent{background:var(--status-danger)}.edrp-dot--short{background:var(--status-warning)}.edrp-dot--leave{background:var(--status-info)}.edrp-dot--off{background:var(--text-muted)}.edrp-dot--holiday{background:var(--brand-accent)}.edrp-dot--tour{background:var(--brand-primary)}.edrp-dot--coff{background:var(--brand-secondary)}.edrp-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);text-align:center}.edrp-state-ico{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.edrp-state-ico svg{font-size:21px}.edrp-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.edrp-state h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edrp-state p{margin:0;max-width:320px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.edrp-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-4) var(--space-4)}.edrp-sk{height:38px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:edrpShimmer 1.4s infinite linear}.edrp-spin{width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:edrpSpin .7s linear infinite}@keyframes edrpSpin{to{transform:rotate(360deg)}}@keyframes edrpShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.edrp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;padding:0 var(--space-4) var(--space-2)}.edrp-seg{display:inline-flex;padding:2px;border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color)}.edrp-seg button{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 var(--space-3);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.edrp-seg button span{min-width:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--border-color);color:var(--text-secondary);font-size:10.5px;line-height:16px;text-align:center}.edrp-seg button .edrp-seg-alert{background:var(--status-warning-light);color:var(--status-warning)}.edrp-seg .edrp-seg--on{background:var(--surface-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.edrp-select{height:28px;padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-xs)}.edrp-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.edrp-list{list-style:none;margin:0;padding:0 var(--space-2) var(--space-2);display:flex;flex-direction:column}.edrp-list li+li{border-top:1px solid var(--border-color)}.edrp-row{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer}.edrp-row:hover{background:var(--surface-hover)}.edrp-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.edrp-title{display:flex;align-items:center;gap:var(--space-2);min-width:0;font-size:var(--fs-sm)}.edrp-title b{font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edrp-type{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--surface-page);border:1px solid var(--border-color);font-size:11px;color:var(--text-secondary);line-height:18px}.edrp-meta{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edrp-reason{font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edrp-status{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.edrp-act{flex-shrink:0;padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--text-primary);color:var(--surface-card);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:26px}.edrp-go{font-size:16px!important;color:var(--text-muted);flex-shrink:0}.edrp-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);font-size:11px;color:var(--text-muted)}@media (max-width: 600px){.edrp-head,.edrp-toolbar,.edrp-foot{padding-left:var(--space-3);padding-right:var(--space-3)}.edrp-select{flex:1}}.edrp-filters{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:0 var(--space-4) var(--space-2)}.edrp-filters .edrp-select{flex:0 1 auto;max-width:100%}.edrp-search{position:relative;flex:1 1 180px;min-width:0;display:flex;align-items:center}.edrp-search input{width:100%;height:28px;padding:0 26px 0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-xs)}.edrp-search input::placeholder{color:var(--text-muted)}.edrp-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.edrp-search-ico{position:absolute;left:8px;font-size:15px!important;color:var(--text-muted);pointer-events:none}.edrp-search-clear{position:absolute;right:4px;width:20px;height:20px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edrp-search-clear:hover{background:var(--surface-hover);color:var(--text-primary)}.edrp-search-clear svg{font-size:14px}.edrp-dates{display:flex;gap:var(--space-2);flex-wrap:wrap;padding:0 var(--space-4) var(--space-2)}.edrp-dates label{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted)}.edrp-dates .edrp-select{width:auto}.edrp-list--busy{opacity:.6;transition:opacity var(--transition-base, .15s)}.edrp-foot-act{display:inline-flex;align-items:center;gap:6px}.edrp-foot-act .edrp-icon-btn{width:24px;height:24px}@media (max-width: 600px){.edrp-filters,.edrp-dates{padding-left:var(--space-3);padding-right:var(--space-3)}.edrp-search{flex-basis:100%}.edrp-filters .edrp-select{flex:1 1 calc(50% - 4px)}}.rm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:var(--backdrop-overlay);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:rm-fade-in .22s ease both}@keyframes rm-fade-in{0%{opacity:0}to{opacity:1}}.rm-modal{font-family:var(--font-family);background:var(--surface-card);border-radius:20px;width:100%;max-width:560px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px rgba(var(--brand-primary-rgb),.22),0 4px 16px rgba(var(--brand-secondary-rgb),.12);animation:rm-scale-in .28s cubic-bezier(.34,1.56,.64,1) both}@keyframes rm-scale-in{0%{opacity:0;transform:scale(.92) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.rm-header{background:var(--brand-gradient);padding:1.1rem 1.25rem 1rem;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;position:relative;overflow:hidden;flex-shrink:0}.rm-header-left{display:flex;align-items:center;gap:.75rem;z-index:1;min-width:0}.rm-header-icon{width:40px;height:40px;background:rgba(var(--text-on-brand-rgb),.18);border-radius:11px;display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);border:1px solid rgba(var(--text-on-brand-rgb),.25);flex-shrink:0;font-size:1.2rem}.rm-header-title{font-size:1rem;font-weight:700;color:var(--text-on-brand);margin:0 0 .15rem;letter-spacing:-.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rm-header-sub{font-size:.73rem;color:rgba(var(--text-on-brand-rgb),.65);margin:0}.rm-header-sub strong{color:rgba(var(--text-on-brand-rgb),.9)}.rm-header-right{display:flex;align-items:center;gap:.5rem;z-index:1;flex-shrink:0}.rm-close-btn{width:30px;height:30px;border-radius:50%;background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:rgba(var(--text-on-brand-rgb),.85);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s,color .18s}.rm-close-btn:hover{background:rgba(var(--text-on-brand-rgb),.28);color:var(--text-on-brand)}.rm-header-deco{position:absolute;top:-40px;right:-40px;width:160px;height:160px;border-radius:50%;background:rgba(var(--text-on-brand-rgb),.05);pointer-events:none}.rm-status-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.28em .75em;border-radius:100px;font-size:.73rem;font-weight:700;letter-spacing:.2px;white-space:nowrap}.rm-status-badge svg{font-size:.9em!important}.rm-status-badge--sm{font-size:.75rem}.rm-status-badge--approved{background:var(--status-success-light);color:var(--status-success);border:1px solid rgba(var(--status-success-rgb),.4)}.rm-status-badge--pending{background:var(--status-warning-light);color:var(--status-warning);border:1px solid rgba(var(--status-warning-rgb),.4)}.rm-status-badge--rejected{background:var(--status-danger-light);color:var(--status-danger);border:1px solid rgba(var(--status-danger-rgb),.4)}.rm-status-badge--forwarded{background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2)}.rm-status-badge--unknown{background:var(--surface-page);color:var(--text-secondary);border:1px solid var(--border-strong)}.rm-tabs{display:flex;gap:0;background:var(--surface-page);border-bottom:1px solid var(--border-color);flex-shrink:0}.rm-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.65rem .5rem;font-family:var(--font-family);font-size:.78rem;font-weight:600;color:var(--text-muted);background:none;border:none;border-bottom:2.5px solid transparent;cursor:pointer;transition:color .18s,border-color .18s,background .18s;white-space:nowrap}.rm-tab svg{font-size:1em!important}.rm-tab:hover{color:var(--brand-primary);background:rgba(var(--brand-primary-rgb),.05)}.rm-tab--active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);background:rgba(var(--brand-primary-rgb),.06)}.rm-body{flex:1;min-height:0;overflow-y:auto;padding:1rem 1.25rem;scrollbar-width:thin;scrollbar-color:var(--brand-primary-tint2) transparent}.rm-body::-webkit-scrollbar{width:4px}.rm-body::-webkit-scrollbar-thumb{background:var(--brand-primary-tint2);border-radius:4px}.rm-tab-pane{animation:rm-tab-in .2s ease both}@keyframes rm-tab-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.rm-section-label{display:flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;color:var(--brand-primary);text-transform:uppercase;letter-spacing:.6px;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.rm-section-label svg{font-size:.9em!important}.rm-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem 1rem}.rm-detail-row{display:flex;flex-direction:column;gap:.18rem}.rm-detail-row--full{grid-column:1 / -1}.rm-detail-label{font-size:.68rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;display:flex;align-items:center;gap:.25rem}.rm-detail-label svg{font-size:.85em!important}.rm-detail-value{font-size:.845rem;font-weight:500;color:var(--text-primary);line-height:1.35;word-break:break-word}.rm-photo-row{grid-column:1 / -1;display:flex;align-items:center;gap:.75rem;padding:.6rem;background:var(--surface-page);border-radius:10px;border:1px solid var(--border-color);margin-bottom:.25rem}.rm-attendance-photo{width:60px;height:60px;border-radius:10px;object-fit:cover;border:2px solid var(--brand-primary-tint2)}.rm-photo-label{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.rm-table-wrap{grid-column:1 / -1;margin-top:.25rem}.rm-table-label{font-size:.7rem;font-weight:700;color:var(--brand-primary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 .4rem}.rm-table{width:100%;border-collapse:collapse;font-size:.78rem}.rm-table th{background:var(--brand-primary-light);color:var(--brand-primary);font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.4px;padding:.45rem .6rem;text-align:left}.rm-table td{padding:.4rem .6rem;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.rm-table tr:last-child td{border-bottom:none}.rm-table tr:nth-child(2n) td{background:var(--surface-page)}.rm-doc-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.35em .85em;border-radius:7px;border:1.5px solid var(--brand-primary-tint2);background:var(--brand-primary-light);color:var(--brand-primary);font-family:var(--font-family);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .18s}.rm-doc-btn:hover{background:var(--brand-primary-tint2);border-color:var(--brand-primary-mid)}.rm-footer{flex-shrink:0;border-top:1px solid var(--border-color);background:var(--surface-page)}.rm-footer-buttons{display:flex;align-items:center;gap:.6rem;padding:.85rem 1.25rem;flex-wrap:wrap}.rm-btn--close{margin-left:auto}.rm-action-panel{padding:.9rem 1.25rem .75rem;border-bottom:1px solid var(--border-color);animation:rm-panel-in .22s ease both}@keyframes rm-panel-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.rm-action-panel-header{display:flex;align-items:center;gap:.5rem;font-size:.82rem;font-weight:700;color:var(--text-primary);margin-bottom:.65rem}.rm-action-panel-icon{font-size:1rem!important}.rm-action-panel-icon--approve{color:var(--status-success)}.rm-action-panel-icon--reject{color:var(--status-danger)}.rm-action-panel-icon--forward{color:var(--brand-primary-dark)}.rm-remarks-wrap{display:flex;align-items:flex-start;gap:.5rem;background:var(--surface-card);border:1.5px solid var(--border-strong);border-radius:8px;padding:.55rem .75rem;transition:border-color .18s,box-shadow .18s;margin-bottom:.65rem}.rm-remarks-wrap:focus-within{border-color:var(--brand-primary);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.1)}.rm-remarks-icon{color:var(--brand-primary-tint2);margin-top:2px;flex-shrink:0}.rm-remarks-ta{flex:1;border:none;outline:none;font-family:var(--font-family);font-size:.855rem;color:var(--text-primary);resize:vertical;min-height:60px;line-height:1.5;background:transparent}.rm-remarks-ta::placeholder{color:var(--border-strong)}.rm-remarks-ta:disabled{opacity:.6;cursor:not-allowed}.rm-panel-actions{display:flex;gap:.5rem;justify-content:flex-end}.rm-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:8px;font-family:var(--font-family);font-size:.82rem;font-weight:700;cursor:pointer;transition:all .18s;border:none;white-space:nowrap}.rm-btn svg{font-size:.9em!important}.rm-btn:disabled{opacity:.48;cursor:not-allowed;transform:none!important;box-shadow:none!important}.rm-btn--ghost{background:var(--surface-card);color:var(--text-secondary);border:1.5px solid var(--border-color)}.rm-btn--ghost:hover:not(:disabled){background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.rm-btn--approve{background:var(--status-success);color:var(--text-on-brand);box-shadow:0 3px 10px rgba(var(--status-success-rgb),.32)}.rm-btn--approve:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 5px 14px rgba(var(--status-success-rgb),.42)}.rm-btn--reject{background:var(--status-danger);color:var(--text-on-brand);box-shadow:0 3px 10px rgba(var(--status-danger-rgb),.32)}.rm-btn--reject:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 5px 14px rgba(var(--status-danger-rgb),.42)}.rm-btn--forward{background:var(--brand-gradient);color:var(--text-on-brand);box-shadow:0 3px 10px rgba(var(--brand-primary-rgb),.32)}.rm-btn--forward:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 5px 14px rgba(var(--brand-primary-rgb),.42)}.rm-spinner{border:2px solid rgba(var(--text-on-brand-rgb),.3);border-top-color:var(--text-on-brand);border-radius:50%;animation:rm-spin .65s linear infinite;display:inline-block;flex-shrink:0}.rm-spinner--sm{width:13px;height:13px}@keyframes rm-spin{to{transform:rotate(360deg)}}@media (max-width: 600px){.rm-backdrop{padding:0;align-items:flex-end}.rm-modal{max-width:100%;max-height:92vh;border-radius:20px 20px 0 0;animation:rm-slide-up .28s cubic-bezier(.34,1.56,.64,1) both}@keyframes rm-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.rm-details-grid{grid-template-columns:1fr}.rm-header-title{font-size:.9rem}.rm-footer-buttons{gap:.4rem}.rm-btn{padding:.45rem .75rem;font-size:.78rem}.rm-btn--close{margin-left:0}}.rm-modal{max-width:620px}.rm-tab-badge{min-width:18px;padding:0 5px;margin-left:2px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:10.5px;font-style:normal;font-weight:var(--fw-bold);line-height:18px;text-align:center}.rm-skel{display:flex;flex-direction:column;gap:10px;padding:var(--space-2) 0}.rm-skel span{height:14px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-hover) 0%,var(--border-color) 50%,var(--surface-hover) 100%);background-size:200% 100%;animation:rm-shimmer 1.2s linear infinite}.rm-skel span:nth-child(2n){width:70%}@keyframes rm-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rm-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-secondary);font-size:var(--fs-sm)}.rm-state-ico{font-size:32px!important;color:var(--status-danger)}.rm-gate{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.rm-gate-title{font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.4px;text-transform:uppercase;color:var(--text-muted)}.rm-gate-line{font-size:var(--fs-sm);color:var(--text-primary)}.rm-late{color:var(--status-warning);font-weight:var(--fw-semibold)}.rm-muted{color:var(--text-muted)}.rm-last{display:flex;align-items:center;gap:8px;width:100%;margin-top:var(--space-3);padding:9px 12px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);text-align:left;cursor:pointer}.rm-last span{flex:1;min-width:0}.rm-last em{font-style:normal;color:var(--brand-primary);font-weight:var(--fw-semibold);white-space:nowrap}.rm-last:hover{border-color:var(--brand-primary)}.rm-tl{list-style:none;margin:0;padding:0}.rm-tl-item{position:relative;display:flex;gap:12px;padding-bottom:var(--space-4)}.rm-tl-item:not(:last-child):before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:var(--border-color)}.rm-tl-dot{width:28px;height:28px;flex-shrink:0;z-index:1;display:inline-flex;align-items:center;justify-content:center;font-size:15px;border-radius:50%;border:2px solid var(--surface-card)}.rm-tl-item--info .rm-tl-dot{background:var(--status-info-light);color:var(--status-info)}.rm-tl-item--ok .rm-tl-dot{background:var(--status-success-light);color:var(--status-success)}.rm-tl-item--bad .rm-tl-dot{background:var(--status-danger-light);color:var(--status-danger)}.rm-tl-item--warn .rm-tl-dot{background:var(--status-warning-light);color:var(--status-warning)}.rm-tl-item--muted .rm-tl-dot{background:var(--surface-hover);color:var(--text-secondary)}.rm-tl-body{display:flex;flex-direction:column;gap:2px;min-width:0;padding-top:3px}.rm-tl-body b{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.rm-tl-body b em{font-style:normal;font-weight:var(--fw-medium);color:var(--text-muted)}.rm-tl-body small{font-size:11.5px;color:var(--text-muted)}.rm-tl-remark{margin-top:4px;padding:6px 10px;border-left:3px solid var(--border-strong);background:var(--surface-page);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:var(--fs-xs);color:var(--text-secondary);quotes:"“" "”"}.rm-path{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-color)}.rm-path-steps{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.rm-path-step{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;border:1px solid var(--border-color);border-radius:var(--radius-pill);font-size:11.5px;color:var(--text-secondary);background:var(--surface-card)}.rm-path-step i{font-style:normal;font-size:10px;font-weight:var(--fw-bold);padding:2px 6px;border-radius:var(--radius-pill);background:var(--surface-hover);color:var(--text-secondary)}.rm-path-step--done i{background:var(--status-success-light);color:var(--status-success)}.rm-path-step--now{border-color:var(--status-warning);color:var(--text-primary)}.rm-path-step--now i{background:var(--status-warning-light);color:var(--status-warning)}.rm-path-step--skip{opacity:.55}@media (prefers-reduced-motion: reduce){.rm-skel span{animation:none}}.rm-modal.rm-modal--inline{max-width:none;max-height:none;height:100%;border-radius:var(--radius-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);animation:none}.rm-modal--inline .rm-body{flex:1;min-height:0;overflow-y:auto}.rm-modal--inline .rm-footer:not(:has(button)){display:none}.pvd-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:9999;padding:20px}.pvd-modal-container{background:#fff;border-radius:8px;box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;max-height:80vh;width:100%;overflow:hidden}.pvd-modal-xs{max-width:444px}.pvd-modal-sm{max-width:600px}.pvd-modal-md{max-width:900px}.pvd-modal-lg{max-width:1200px}.pvd-modal-xl{max-width:1536px}.pvd-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e0e0e0;background:#fafafa;min-height:64px;box-sizing:border-box}.pvd-modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#1976d2;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:16px}.pvd-header-actions{display:flex;align-items:center;gap:8px}.pvd-close-btn{background:none;border:none;padding:8px;border-radius:4px;cursor:pointer;color:#666;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.pvd-close-btn:hover{background-color:#0000000a}.pvd-download-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.pvd-download-btn--header{background:transparent;color:#1976d2;border:1px solid #1976d2}.pvd-download-btn--header:hover{background:#1976d20a}.pvd-download-btn--outlined{background:transparent;color:#1976d2;border:1px solid #1976d2}.pvd-download-btn--outlined:hover{background:#1976d20a}.pvd-download-btn--contained{background:#1976d2;color:#fff;border:1px solid #1976d2}.pvd-download-btn--contained:hover{background:#1565c0}.pvd-download-btn:disabled{opacity:.6;cursor:not-allowed}.pvd-btn-icon{font-size:18px!important}.pvd-modal-content{flex:1;overflow:hidden;position:relative}.pvd-loading-container{display:flex;justify-content:center;align-items:center;height:400px}.pvd-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #1976d2;border-radius:50%;animation:pvd-spin 1s linear infinite}@keyframes pvd-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pvd-error-container{text-align:center;padding:40px 24px;height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center}.pvd-error-icon{font-size:64px!important;color:#9e9e9e;margin-bottom:16px}.pvd-error-title{font-size:1.25rem;color:#666;margin:0 0 8px;font-weight:600}.pvd-error-message{font-size:.875rem;color:#666;margin:0 0 24px}.pvd-unsupported-container{text-align:center;padding:40px 24px;height:400px;display:flex;flex-direction:column;justify-content:center;align-items:center}.pvd-unsupported-icon{font-size:64px!important;color:#9e9e9e;margin-bottom:16px}.pvd-unsupported-title{font-size:1.25rem;color:#666;margin:0 0 8px;font-weight:600}.pvd-unsupported-message{font-size:.875rem;color:#666;margin:0 0 24px}.pvd-image-container{display:flex;justify-content:center;align-items:center;padding:8px;height:70vh}.pvd-image{max-width:100%;max-height:100%;object-fit:contain}.pvd-pdf-container{width:100%;height:70vh}.pvd-pdf-iframe{width:100%;height:100%;border:none}@media (max-width: 768px){.pvd-modal-overlay{padding:10px}.pvd-modal-header{padding:12px 16px;min-height:56px}.pvd-modal-title{font-size:1.125rem}.pvd-download-btn{padding:4px 8px;font-size:.75rem}}@media (max-width: 480px){.pvd-modal-overlay{padding:5px}.pvd-modal-header{flex-direction:column;gap:8px;align-items:flex-start}.pvd-header-actions{align-self:flex-end}.pvd-modal-title{white-space:normal;text-align:left}}.edta-card{display:flex;flex-direction:column;min-width:0;height:100%;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.edta-head{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-2)}.edta-head-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-hover);color:var(--brand-secondary-dark);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center}.edta-head-ico svg{font-size:17px}.edta-head-text{flex:1;min-width:0}.edta-head-text h3{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.edta-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.edta-head-act{display:flex;align-items:center;gap:4px;flex-shrink:0}.edta-link{display:inline-flex;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edta-link svg{font-size:15px}.edta-link:hover{text-decoration:underline}.edta-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.edta-btn svg{font-size:var(--icon-size-sm)}.edta-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edta-btn:disabled{opacity:.5;cursor:not-allowed}.edta-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.edta-icon-btn svg{font-size:var(--icon-size-sm)}.edta-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.edta-icon-btn:disabled{opacity:.45;cursor:not-allowed}.edta-body{flex:1;display:flex;flex-direction:column;min-height:0}.edta-muted{color:var(--text-muted)}.edta-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0;background:var(--text-muted)}.edta-dot--present{background:var(--status-success)}.edta-dot--absent{background:var(--status-danger)}.edta-dot--short{background:var(--status-warning)}.edta-dot--leave{background:var(--status-info)}.edta-dot--off{background:var(--text-muted)}.edta-dot--holiday{background:var(--brand-accent)}.edta-dot--tour{background:var(--brand-primary)}.edta-dot--coff{background:var(--brand-secondary)}.edta-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5) var(--space-4);text-align:center}.edta-state-ico{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--surface-hover);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.edta-state-ico svg{font-size:21px}.edta-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.edta-state h4{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.edta-state p{margin:0;max-width:320px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.edta-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-4) var(--space-4)}.edta-sk{height:38px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:edtaShimmer 1.4s infinite linear}.edta-spin{width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:edtaSpin .7s linear infinite}@keyframes edtaSpin{to{transform:rotate(360deg)}}@keyframes edtaShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.edta-rotating{animation:edtaSpin .8s linear infinite}.edta-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:0 var(--space-4) var(--space-2)}.edta-chips{display:flex;flex-wrap:wrap;gap:4px}.edta-chip{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);cursor:pointer}.edta-chip b{color:var(--text-primary);font-weight:var(--fw-semibold)}.edta-chip:hover{background:var(--surface-hover)}.edta-chip--on{border-color:var(--text-secondary);background:var(--surface-hover);color:var(--text-primary)}.edta-search{position:relative;flex:1 1 140px;display:flex;align-items:center;min-width:0}.edta-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.edta-search input{width:100%;height:28px;padding:0 26px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-xs)}.edta-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.edta-search button{position:absolute;right:6px;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.edta-search button svg{font-size:11px}.edta-list{list-style:none;margin:0;padding:0 var(--space-4) var(--space-2);display:flex;flex-direction:column}.edta-row{display:flex;align-items:center;gap:var(--space-2);padding:7px 0;min-width:0}.edta-row+.edta-row{border-top:1px solid var(--border-color)}.edta-avatar{width:30px;height:30px;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--surface-hover);border:1px solid var(--border-color);color:var(--text-secondary);font-size:11px;font-weight:var(--fw-semibold);display:inline-flex;align-items:center;justify-content:center}.edta-avatar-img{width:100%;height:100%;object-fit:cover}.edta-main{flex:1;min-width:0;display:flex;flex-direction:column}.edta-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edta-meta{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.edta-status{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.edta-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);font-size:11px;color:var(--text-muted)}@media (max-width: 600px){.edta-head,.edta-toolbar,.edta-list,.edta-foot{padding-left:var(--space-3);padding-right:var(--space-3)}}.et-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.et-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.et-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.et-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.et-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.et-header-text{min-width:0}.et-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.et-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.et-ico-md{font-size:20px!important}.et-ico{font-size:var(--icon-size)!important}.et-ico-sm{font-size:var(--icon-size-sm)!important}.et-ico-xs{font-size:14px!important}.et-ico--spin{animation:et-rotate .8s linear infinite}.et-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.et-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.et-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.et-btn-icon:hover:not(:disabled):not(.et-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.et-btn-icon:disabled,.et-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.et-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.et-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.et-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.et-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.et-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.et-btn-primary:disabled{opacity:.5;cursor:not-allowed}.et-btn-solid,.et-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.et-btn-solid:active,.et-btn-plain:active{transform:scale(.97)}.et-btn-solid:disabled,.et-btn-plain:disabled{opacity:.55;cursor:not-allowed}.et-btn-solid{border:none;color:var(--text-on-brand)}.et-btn-solid--primary{background:var(--brand-gradient)}.et-btn-solid--danger,.et-btn-solid--error{background:var(--status-danger)}.et-btn-solid:hover:not(:disabled){opacity:.9}.et-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.et-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.et-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.et-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.et-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:et-rotate .7s linear infinite}@keyframes et-rotate{to{transform:rotate(360deg)}}.et-progress{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--brand-primary-light);border-bottom:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-medium);flex-shrink:0}.et-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.et-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.et-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-2);min-height:0}.et-search-field{position:relative;display:flex;align-items:center}.et-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.et-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.et-search-input::placeholder{color:var(--text-muted)}.et-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.et-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.et-search-clear svg{font-size:12px}.et-search-clear:hover{background:var(--status-danger)}.et-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.et-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.et-thead{position:sticky;top:0;z-index:var(--z-sticky)}.et-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}@keyframes et-row-in-unused{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.et-row{background:#fff}.et-row--alt{background:#f9f9f9}.et-spacer td{padding:0;border:none}.et-row:hover,.et-row--alt:hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.et-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.et-table{min-width:900px}.et-col-photo{width:56px;text-align:center}.et-col-empno{width:104px}.et-col-name{width:22%}.et-col-dept,.et-col-desig{width:15%}.et-col-card{width:104px}.et-col-org{width:auto}.et-col-actions{width:150px;text-align:center}.et-col-name .et-truncate{display:block}.et-avatar{width:36px;height:36px;border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center;overflow:hidden;border:2px solid var(--surface-card);box-shadow:0 0 0 1px var(--border-color)}.et-avatar-img{object-fit:cover}.et-avatar-initials{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-on-brand);letter-spacing:.3px}.et-av-0{background:var(--brand-primary)}.et-av-1{background:var(--brand-primary-dark)}.et-av-2{background:var(--brand-primary-mid)}.et-av-3{background:var(--brand-secondary)}.et-av-4{background:var(--brand-secondary-dark)}.et-av-5{background:var(--status-info)}.et-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.et-truncate{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.et-text-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.et-muted{color:var(--text-muted)}.et-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.et-badge-card{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--surface-page);border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.et-badge-empno{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.et-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.et-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.et-action-btn svg{font-size:15px}.et-action-btn:disabled{opacity:.4;pointer-events:none}.et-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.et-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.et-action-btn--approver{background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.et-action-btn--approver:hover{background:var(--brand-primary);color:var(--text-on-brand);transform:translateY(-1px)}.et-action-btn--badge{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.25)}.et-action-btn--badge:hover{background:var(--status-warning);color:var(--text-on-brand);transform:translateY(-1px)}.et-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.et-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.et-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.et-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.et-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.et-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.et-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.et-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:et-fade-in .3s ease both}@keyframes et-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.et-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.et-state-icon-wrap svg{font-size:28px}.et-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.et-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.et-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.et-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.et-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.et-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:et-fade-in .3s ease both}.et-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:et-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes et-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.et-sk-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0}.et-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.et-sk-text{flex:1;max-width:220px}.et-sk-text--wide{max-width:320px}.et-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}@media (max-width: 1200px){.et-search-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1024px){.et-col-org{display:none}.et-table{min-width:760px}}@media (max-width: 768px){.et-card{height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.et-header{padding:var(--space-3)}.et-header-left{flex:1 1 100%}.et-actions{width:100%}.et-btn-primary{margin-left:auto}.et-search-bar--open{padding:var(--space-3)}.et-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.et-col-desig{display:none}.et-table{min-width:620px}}@media (max-width: 600px){.et-btn-primary span{display:none}.et-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.et-actions-sep{display:none}.et-search-grid{grid-template-columns:1fr}.et-col-dept,.et-col-card{display:none}.et-table{min-width:460px}.et-col-name{width:auto}.et-col-actions{width:136px}.et-action-btn{width:28px;height:28px}.et-progress{padding:var(--space-2) var(--space-3)}.et-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}}.inactive-employee-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);animation:iemFade .18s ease both}@keyframes iemFade{0%{opacity:0}to{opacity:1}}.inactive-employee-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:iemPop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes iemPop{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.inactive-employee-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--status-danger);color:var(--text-on-brand);flex-shrink:0}.inactive-employee-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.inactive-employee-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.28);display:flex;align-items:center;justify-content:center;flex-shrink:0}.inactive-employee-header-icon svg{font-size:20px}.inactive-employee-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.inactive-employee-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.inactive-employee-close{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.inactive-employee-close svg{font-size:var(--icon-size)}.inactive-employee-close:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.inactive-employee-close:disabled{opacity:.5;cursor:not-allowed}.inactive-employee-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--status-danger-light);border-bottom:1px solid rgba(var(--status-danger-rgb),.2);flex-shrink:0}.inactive-employee-summary-item{display:flex;flex-direction:column;min-width:0}.inactive-employee-summary-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.inactive-employee-summary-value{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inactive-employee-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.inactive-employee-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.inactive-employee-group{display:flex;flex-direction:column;gap:6px;min-width:0}.inactive-employee-group--full{grid-column:1 / -1}.inactive-employee-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.inactive-employee-required{color:var(--status-danger)}.inactive-employee-input{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-base);font-family:inherit;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.inactive-employee-input:hover:not(:disabled){border-color:var(--text-muted)}.inactive-employee-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.inactive-employee-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.inactive-employee-input::placeholder{color:var(--text-muted)}.inactive-employee-input--error,.inactive-employee-input--error:hover:not(:disabled){border-color:var(--status-danger)}.inactive-employee-input--error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.inactive-employee-textarea{height:auto;min-height:84px;padding:var(--space-2) var(--space-3);line-height:var(--lh-base);resize:vertical}.inactive-employee-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.inactive-employee-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.inactive-employee-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.inactive-employee-counter{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.inactive-employee-counter--low{color:var(--status-warning)}.inactive-employee-note{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--status-info-light);color:var(--status-info);font-size:var(--fs-sm)}.inactive-employee-note-ico{font-size:var(--icon-size)!important;flex-shrink:0}.inactive-employee-alert{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);border:1px solid}.inactive-employee-alert--error{background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.inactive-employee-alert--warn{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3);color:var(--status-warning)}.inactive-employee-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.inactive-employee-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.inactive-employee-alert-text span{color:var(--text-secondary)}.inactive-employee-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid currentColor;background:transparent;color:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.inactive-employee-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.inactive-employee-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.inactive-employee-btn:active:not(:disabled){transform:scale(.97)}.inactive-employee-btn:disabled{opacity:.55;cursor:not-allowed}.inactive-employee-btn--cancel{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.inactive-employee-btn--cancel:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.inactive-employee-btn--confirm{background:var(--status-danger);color:var(--text-on-brand);border:none}.inactive-employee-btn--confirm:hover:not(:disabled){opacity:.9}.inactive-employee-btn-ico{font-size:var(--icon-size)!important}.inactive-employee-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:iemSpin .7s linear infinite}@media (max-width: 768px){.inactive-employee-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.inactive-employee-backdrop{align-items:flex-end;padding:var(--space-2)}.inactive-employee-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.inactive-employee-header,.inactive-employee-body,.inactive-employee-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.inactive-employee-summary{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.inactive-employee-form{grid-template-columns:1fr;gap:var(--space-3)}.inactive-employee-footer>button{flex:1;min-width:0}}.eb-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--backdrop-overlay);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family)}.eb-modal{background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;position:relative;animation:eb-modal-appear .3s ease}@keyframes eb-modal-appear{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.eb-empty-state{padding:48px 24px;text-align:center}.eb-empty-state-text{font-size:14px;color:var(--text-secondary);margin:0}.eb-close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;background:var(--status-danger);border:none;border-radius:50%;color:var(--text-on-brand);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s;box-shadow:0 2px 8px rgba(var(--status-danger-rgb),.3)}.eb-close-btn:hover{opacity:.9;transform:scale(1.05)}.eb-print-btn{position:absolute;top:12px;right:52px;background:var(--status-success);border:none;border-radius:var(--radius-pill);padding:6px var(--space-4);color:var(--text-on-brand);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;display:flex;align-items:center;gap:6px;z-index:10;transition:all .2s;box-shadow:0 2px 8px rgba(var(--status-success-rgb),.3)}.eb-print-btn:hover{opacity:.9;transform:translateY(-1px)}.eb-container{background:var(--surface-card);border:2px solid var(--brand-primary);border-radius:10px;overflow:hidden;margin:15px}.eb-header{background:var(--brand-gradient);color:var(--text-on-brand);padding:16px;text-align:center}.eb-header-title{font-size:18px;font-weight:600;margin:0 0 4px;letter-spacing:1px}.eb-header-company{font-size:13px;margin:0;opacity:.9}.eb-main{display:flex;padding:20px;gap:20px;border-bottom:1px solid var(--border-color)}.eb-photo-section{width:120px;text-align:center}.eb-photo-frame{width:120px;height:140px;border:2px solid var(--brand-primary);border-radius:6px;overflow:hidden;margin-bottom:6px;background:var(--surface-hover)}.eb-photo-img{width:100%;height:100%;object-fit:cover}.eb-photo-label{font-size:11px;color:var(--text-secondary);font-weight:500}.eb-details-section{flex:1;display:flex;flex-direction:column;gap:8px}.eb-detail-row{display:flex;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:6px}.eb-detail-label{width:85px;font-size:11px;font-weight:600;color:var(--brand-primary);text-transform:uppercase}.eb-detail-value{flex:1;font-size:12px;color:var(--text-primary);font-weight:500}.eb-info-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--surface-hover);border-bottom:1px solid var(--border-color)}.eb-info-item{flex:1;display:flex;align-items:center;justify-content:center;gap:6px}.eb-info-label{font-size:11px;font-weight:600;color:var(--brand-primary);white-space:nowrap}.eb-info-value{font-size:11px;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.eb-info-divider{color:var(--text-muted);font-size:14px;font-weight:300;padding:0 8px}.eb-footer{display:flex;padding:16px 20px;background:var(--surface-hover);justify-content:space-between;align-items:flex-end}.eb-signature-field{text-align:center;flex:1}.eb-signature-line{width:100px;height:24px;border-bottom:2px solid var(--text-primary);margin:0 auto 4px}.eb-signature-label{font-size:9px;color:var(--text-secondary);display:block}.eb-stamp-field{text-align:center}.eb-stamp-placeholder{width:60px;height:24px;border:2px dashed var(--brand-primary);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--brand-primary);font-weight:600;margin:0 auto 4px}.eb-stamp-label{font-size:9px;color:var(--text-secondary);display:block}@media (max-width: 600px){.eb-overlay{padding:var(--space-2)}.eb-modal{max-height:calc(100vh - var(--space-4))}.eb-main{flex-direction:column;align-items:center}.eb-info-bar{flex-direction:column;gap:8px}.eb-info-divider{display:none}.eb-info-item{width:100%;justify-content:flex-start}.eb-footer{flex-direction:column;gap:16px;align-items:center}.eb-signature-line{width:150px}}@media print{.eb-overlay{position:static;background:var(--surface-card);-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.eb-modal{box-shadow:none;max-height:none}.eb-close-btn,.eb-print-btn{display:none!important}.eb-container{border:2px solid var(--text-primary)}.eb-header{background:var(--brand-primary)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.eb-info-bar{background:var(--surface-hover)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--ce2-blue-start: var(--brand-primary);--ce2-blue-end: var(--brand-primary-dark);--ce2-gradient: var(--brand-gradient);--ce2-gradient-soft: linear-gradient(135deg, var(--brand-primary-light) 0%, var(--brand-primary-tint2, var(--brand-primary-light)) 100%);--ce2-white: var(--surface-card);--ce2-bg: var(--surface-page);--ce2-surface: var(--surface-card);--ce2-border: var(--border-color);--ce2-border-focus: var(--brand-primary);--ce2-text-primary: var(--text-primary);--ce2-text-secondary: var(--text-secondary);--ce2-text-muted: var(--text-muted);--ce2-blue-50: var(--brand-primary-light);--ce2-blue-100: var(--brand-primary-light);--ce2-blue-200: var(--brand-primary-light);--ce2-blue-600: var(--brand-primary);--ce2-blue-700: var(--brand-primary-dark);--ce2-success: var(--status-success);--ce2-error: var(--status-danger);--ce2-error-bg: var(--status-danger-light);--ce2-shadow-sm: var(--shadow-sm);--ce2-shadow-md: var(--shadow-md);--ce2-shadow-lg: var(--shadow-lg);--ce2-shadow-blue: 0 4px 20px rgba(var(--brand-primary-rgb),.28);--ce2-radius: var(--radius-xl);--ce2-radius-sm: var(--radius-lg);--ce2-radius-xs: var(--radius-sm);--ce2-font: var(--font-family);--ce2-transition: all .22s cubic-bezier(.4, 0, .2, 1)}.ce2-root{background:transparent;font-family:var(--ce2-font);padding:0;box-sizing:border-box}.ce2-page{max-width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--section-gap);padding-bottom:var(--space-4)}.ce2-page-header{display:flex;align-items:center;gap:16px;padding:var(--space-3) var(--space-4);background:var(--ce2-gradient);border-radius:var(--ce2-radius);box-shadow:var(--ce2-shadow-blue);position:relative;overflow:hidden}.ce2-page-header:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(var(--text-on-brand-rgb),.06),transparent);pointer-events:none}.ce2-back-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.28);border-radius:var(--ce2-radius-sm);color:var(--text-on-brand);font-size:12.5px;font-weight:600;cursor:pointer;transition:var(--ce2-transition);white-space:nowrap;font-family:var(--ce2-font);flex-shrink:0}.ce2-back-btn:hover{background:rgba(var(--text-on-brand-rgb),.28);transform:translate(-2px)}.ce2-page-header-center{flex:1;text-align:center}.ce2-page-title{font-size:var(--fs-lg);font-weight:800;color:var(--text-on-brand);margin:0;letter-spacing:-.4px}.ce2-page-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.68);margin:3px 0 0}.ce2-page-header-right{flex-shrink:0}.ce2-emp-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.3);border-radius:20px;color:var(--text-on-brand);font-size:12px;font-weight:700}.ce2-form{display:flex;flex-direction:column;gap:var(--section-gap)}.ce2-hero-card{background:var(--ce2-white);border-radius:var(--ce2-radius);border:1px solid var(--ce2-border);box-shadow:var(--ce2-shadow-md);padding:var(--card-padding) var(--space-5);display:flex;gap:var(--space-6);align-items:flex-start;position:relative;overflow:hidden;animation:ce2-fade-up .35s ease both}.ce2-hero-card-gradient{position:absolute;top:0;left:0;right:0;height:4px;background:var(--ce2-gradient)}@keyframes ce2-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ce2-avatar-zone{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.ce2-avatar-wrap{position:relative;width:96px;height:96px}.ce2-avatar-img{width:96px;height:96px;border-radius:16px;object-fit:cover;border:3px solid var(--ce2-border);display:block;box-shadow:var(--ce2-shadow-sm)}.ce2-avatar-initials{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;background:var(--ce2-gradient);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800;color:var(--text-on-brand);letter-spacing:1px}.ce2-avatar-cam-btn{position:absolute;bottom:-6px;right:-6px;width:30px;height:30px;border-radius:50%;background:var(--ce2-gradient);border:2.5px solid var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-on-brand);transition:var(--ce2-transition);box-shadow:var(--ce2-shadow-sm)}.ce2-avatar-cam-btn:hover{transform:scale(1.15);box-shadow:var(--ce2-shadow-blue)}.ce2-avatar-hint{font-size:11px;color:var(--ce2-text-muted);margin:0;text-align:center}.ce2-basic-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--form-gap) var(--space-4)}.ce2-accordion{background:var(--ce2-white);border-radius:var(--ce2-radius);border:1.5px solid var(--ce2-border);box-shadow:var(--ce2-shadow-sm);overflow:hidden;transition:box-shadow .22s ease,border-color .22s ease;animation:ce2-fade-up .35s ease both;animation-delay:var(--sec-delay, 0s)}.ce2-accordion--open{border-color:var(--sec-color, var(--ce2-blue-start));box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.08),var(--ce2-shadow-md)}.ce2-accordion-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .18s ease;gap:12px}.ce2-accordion-header:hover{background:var(--surface-hover)}.ce2-accordion--open .ce2-accordion-header{background:var(--ce2-gradient-soft);border-bottom:1.5px solid var(--ce2-blue-100)}.ce2-accordion-header-left{display:flex;align-items:center;gap:14px;min-width:0}.ce2-accordion-icon-wrap{width:40px;height:40px;border-radius:10px;background:var(--ce2-gradient);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);flex-shrink:0;box-shadow:0 2px 8px rgba(var(--brand-primary-rgb),.3)}.ce2-accordion-icon-wrap .MuiSvgIcon-root{font-size:20px!important}.ce2-accordion-title{font-size:14.5px;font-weight:700;color:var(--ce2-text-primary);letter-spacing:-.2px}.ce2-accordion-desc{font-size:12px;color:var(--ce2-text-muted);margin-top:1px}.ce2-accordion-chevron{color:var(--ce2-text-muted);transition:transform .28s cubic-bezier(.4,0,.2,1);flex-shrink:0}.ce2-accordion-chevron--open{transform:rotate(180deg);color:var(--ce2-blue-start)}.ce2-accordion-body{padding:var(--card-padding);animation:ce2-body-in .28s ease both;background:var(--surface-page)}@keyframes ce2-body-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ce2-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ce2-section-grid--3{grid-template-columns:repeat(3,1fr)}.ce2-field{display:flex;flex-direction:column;gap:6px}.ce2-field--full{grid-column:1 / -1}.ce2-label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--ce2-text-secondary);letter-spacing:.1px}.ce2-label-icon{font-size:15px!important;color:var(--ce2-blue-start)!important}.ce2-required{color:var(--ce2-error);font-weight:800;margin-left:1px}.ce2-info-tip{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ce2-text-muted);background:var(--ce2-blue-50);border:1px solid var(--ce2-blue-100);border-radius:var(--ce2-radius-xs);padding:5px 8px;line-height:1.4}.ce2-info-tip--blue{background:var(--status-success-light);border-color:var(--status-success-light);color:var(--status-success)}.ce2-info-tip .MuiSvgIcon-root{flex-shrink:0}.ce2-input,.ce2-select,.ce2-textarea{width:100%;padding:9px 12px;border:1.5px solid var(--ce2-border);border-radius:var(--ce2-radius-sm);font-size:13px;color:var(--ce2-text-primary);background:var(--ce2-white);transition:var(--ce2-transition);font-family:var(--ce2-font);box-sizing:border-box;outline:none}.ce2-input::placeholder,.ce2-textarea::placeholder{color:var(--ce2-text-muted);font-size:12.5px}.ce2-input:focus,.ce2-select:focus,.ce2-textarea:focus{border-color:var(--ce2-blue-start);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.12);background:var(--surface-card)}.ce2-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;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='%2394a3b8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px;cursor:pointer}.ce2-select:disabled{background-color:var(--surface-hover);color:var(--ce2-text-muted);cursor:not-allowed;opacity:.7}.ce2-textarea{resize:vertical;min-height:84px;line-height:1.5}.ce2-radio-group{display:flex;gap:10px;flex-wrap:wrap}.ce2-radio-card{display:flex;align-items:center;gap:8px;padding:9px 16px;border:1.5px solid var(--ce2-border);border-radius:var(--ce2-radius-sm);cursor:pointer;transition:var(--ce2-transition);background:var(--ce2-white)}.ce2-radio-card:hover{border-color:var(--ce2-blue-start);background:var(--ce2-blue-50)}.ce2-radio-card--active{border-color:var(--ce2-blue-start);background:var(--ce2-gradient-soft);box-shadow:0 0 0 2px rgba(var(--brand-primary-rgb),.15)}.ce2-radio-card input{display:none}.ce2-radio-label{font-size:13px;font-weight:600;color:var(--ce2-text-primary)}.ce2-day-picker{display:flex;gap:8px;flex-wrap:wrap}.ce2-day-chip{display:inline-flex;align-items:center;justify-content:center;width:46px;height:36px;border:1.5px solid var(--ce2-border);border-radius:var(--ce2-radius-xs);font-size:12px;font-weight:600;color:var(--ce2-text-secondary);background:var(--ce2-white);cursor:pointer;transition:var(--ce2-transition);-webkit-user-select:none;user-select:none}.ce2-day-chip:hover{border-color:var(--ce2-blue-start);color:var(--ce2-blue-start);background:var(--ce2-blue-50)}.ce2-day-chip--active{background:var(--ce2-gradient);border-color:transparent;color:var(--text-on-brand);box-shadow:0 2px 8px rgba(var(--brand-primary-rgb),.35);transform:translateY(-1px)}.ce2-alt-grid{display:flex;flex-direction:column;gap:6px;border:1.5px solid var(--ce2-border);border-radius:var(--ce2-radius-sm);padding:12px;background:var(--ce2-white)}.ce2-alt-row{display:flex;align-items:center;gap:12px;padding:6px 8px;border-radius:var(--ce2-radius-xs);background:var(--surface-hover);border:1px solid var(--ce2-border);transition:background .15s ease}.ce2-alt-row:hover{background:var(--ce2-blue-50)}.ce2-alt-row-label{font-size:12px;font-weight:700;color:var(--ce2-text-secondary);min-width:72px;display:flex;align-items:center;gap:6px}.ce2-alt-count{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--ce2-gradient);color:var(--text-on-brand);font-size:10px;font-weight:800}.ce2-alt-days{display:flex;gap:5px;flex-wrap:wrap}.ce2-alt-day{width:30px;height:30px;border-radius:6px;border:1.5px solid var(--ce2-border);background:var(--ce2-white);font-size:11px;font-weight:700;color:var(--ce2-text-muted);cursor:pointer;transition:var(--ce2-transition);display:flex;align-items:center;justify-content:center;padding:0}.ce2-alt-day:hover{border-color:var(--ce2-blue-start);color:var(--ce2-blue-start);background:var(--ce2-blue-50)}.ce2-alt-day--on{background:var(--ce2-gradient);border-color:transparent;color:var(--text-on-brand);box-shadow:0 2px 6px rgba(var(--brand-primary-rgb),.3)}.ce2-alt-summary{margin-top:10px;padding:9px 12px;background:var(--ce2-blue-50);border:1px dashed var(--ce2-blue-200);border-radius:var(--ce2-radius-xs);font-size:12px;color:var(--ce2-text-secondary);line-height:1.55}.ce2-alt-summary strong{color:var(--ce2-text-primary);margin-right:4px}.ce2-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ce2-toggle-card{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1.5px solid var(--ce2-border);border-radius:var(--ce2-radius-sm);cursor:pointer;transition:var(--ce2-transition);background:var(--ce2-white);gap:12px}.ce2-toggle-card:hover{border-color:var(--ce2-blue-start);background:var(--ce2-blue-50)}.ce2-toggle-card--on{border-color:var(--ce2-blue-start);background:var(--ce2-gradient-soft)}.ce2-toggle-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ce2-toggle-card-label{font-size:13px;font-weight:700;color:var(--ce2-text-primary)}.ce2-toggle-card-hint{font-size:11px;color:var(--ce2-text-muted);line-height:1.4}.ce2-toggle-switch{width:40px;height:22px;border-radius:11px;background:var(--ce2-border);position:relative;flex-shrink:0;transition:background .22s ease;cursor:pointer}.ce2-toggle-switch--on{background:var(--ce2-gradient);box-shadow:0 2px 8px rgba(var(--brand-primary-rgb),.35)}.ce2-toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);transition:transform .22s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.ce2-toggle-switch--on .ce2-toggle-thumb{transform:translate(18px)}.ce2-btn{display:inline-flex;align-items:center;gap:7px;border-radius:var(--ce2-radius-sm);font-size:13.5px;font-weight:700;font-family:var(--ce2-font);cursor:pointer;transition:var(--ce2-transition);border:none}.ce2-btn-primary{padding:11px 28px;background:var(--ce2-gradient);color:var(--text-on-brand);box-shadow:var(--ce2-shadow-blue)}.ce2-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px rgba(var(--brand-primary-rgb),.4)}.ce2-btn-primary:disabled{opacity:.65;cursor:not-allowed;transform:none}.ce2-btn-ghost{padding:11px 20px;background:transparent;color:var(--ce2-text-secondary);border:1.5px solid var(--ce2-border)}.ce2-btn-ghost:hover{background:var(--surface-hover);border-color:var(--border-color)}.ce2-btn-spinner{width:15px;height:15px;border:2px solid rgba(var(--text-on-brand-rgb),.35);border-top-color:var(--text-on-brand);border-radius:50%;animation:ce2-spin .7s linear infinite}@keyframes ce2-spin{to{transform:rotate(360deg)}}.ce2-form-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 0 4px}.ce2-loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.ce2-loading-card{background:var(--ce2-white);border-radius:var(--ce2-radius);box-shadow:var(--ce2-shadow-lg);padding:40px 48px;text-align:center;max-width:400px;width:100%;border:1px solid var(--ce2-border);animation:ce2-fade-up .4s ease both}.ce2-loading-spinner{width:60px;height:60px;position:relative;margin:0 auto 20px}.ce2-spinner-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:3px solid transparent;border-top-color:var(--ce2-blue-start);animation:ce2-spin .9s linear infinite}.ce2-spinner-ring--2{top:8px;right:8px;bottom:8px;left:8px;border-top-color:var(--ce2-blue-end);animation-direction:reverse;animation-duration:.7s}.ce2-spinner-dot{position:absolute;top:22px;right:22px;bottom:22px;left:22px;border-radius:50%;background:var(--ce2-gradient);animation:ce2-pulse 1.2s ease-in-out infinite}@keyframes ce2-pulse{0%,to{transform:scale(.85);opacity:.6}50%{transform:scale(1.1);opacity:1}}.ce2-loading-title{font-size:17px;font-weight:800;color:var(--ce2-text-primary);margin:0 0 6px}.ce2-loading-desc{font-size:13px;color:var(--ce2-text-muted);margin:0 0 24px}.ce2-loading-bars{display:flex;flex-direction:column;gap:10px;text-align:left}.ce2-loading-bar-row{display:flex;align-items:center;gap:12px;animation:ce2-fade-up .4s ease both}.ce2-loading-bar-label{font-size:12px;color:var(--ce2-text-muted);width:120px;flex-shrink:0}.ce2-loading-bar{flex:1;height:6px;background:var(--ce2-border);border-radius:3px;overflow:hidden}.ce2-loading-bar-fill{height:100%;background:var(--ce2-gradient);border-radius:3px;animation:ce2-bar-fill 1.8s ease-in-out infinite}@keyframes ce2-bar-fill{0%{width:0%;opacity:.6}50%{width:75%;opacity:1}to{width:100%;opacity:.7}}.ce2-ico-13{font-size:13px!important}.ce2-ico-14{font-size:14px!important}.ce2-ico-16{font-size:var(--icon-size-sm)!important}.ce2-ico-18{font-size:var(--icon-size)!important}.ce2-ico-40{font-size:40px!important}.ce2-field--spaced{margin-top:var(--space-4)}@media (max-width: 900px){.ce2-section-grid--3{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.ce2-page{gap:12px}.ce2-page-header{padding:12px 14px;flex-wrap:wrap;gap:10px}.ce2-page-header-center{order:3;flex-basis:100%;text-align:left}.ce2-page-title{font-size:16px}.ce2-page-subtitle{display:none}.ce2-hero-card{flex-direction:column;align-items:center;padding:20px 16px;gap:20px}.ce2-basic-grid{grid-template-columns:1fr;width:100%}.ce2-section-grid,.ce2-section-grid--3,.ce2-toggle-grid{grid-template-columns:1fr}.ce2-accordion-body{padding:14px}.ce2-form-actions{flex-direction:column-reverse}.ce2-btn-primary,.ce2-btn-ghost{width:100%;justify-content:center}.ce2-loading-card{padding:28px 24px}}@media (max-width: 480px){.ce2-back-btn span,.ce2-emp-chip{display:none}.ce2-day-picker{gap:6px}.ce2-day-chip{width:40px;height:32px;font-size:11px}.ce2-alt-row{flex-wrap:wrap}.ce2-alt-row-label{min-width:100%}}.ci-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172ab8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000}.ci-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--surface-card);border-radius:12px;padding:2rem;width:420px;max-width:90vw;box-shadow:0 10px 25px #00000026;z-index:1001;animation:ci-fadeIn .3s ease-out}.ci-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.ci-title{font-size:1.5rem;color:var(--text-primary);margin:0;font-weight:600}.ci-close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.ci-close-btn:hover{color:var(--status-danger);background-color:var(--surface-hover);transform:rotate(90deg)}.ci-description{color:var(--text-muted);font-size:.95rem;line-height:1.5;margin-bottom:2rem;text-align:center}.ci-options{display:flex;justify-content:center;gap:2rem;margin-top:1.5rem}.ci-option{display:flex;flex-direction:column;align-items:center;cursor:pointer}.ci-option-btn{background:var(--brand-gradient);color:var(--text-on-brand);border:none;padding:1.2rem;border-radius:50%;margin-bottom:.5rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 6px #0000001a;display:flex;align-items:center;justify-content:center}.ci-option-btn:hover{transform:translateY(-3px);box-shadow:0 6px 12px #00000026}.ci-option-label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.ci-file-input{display:none}.ci-icon{font-size:1.5rem}.ci-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172ab8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1100;display:flex;align-items:center;justify-content:center}.ci-modal{background:var(--surface-card);border-radius:12px;padding:1.5rem;width:400px;max-width:90vw;box-shadow:0 10px 25px #0003;animation:ci-modalFadeIn .3s ease-out}.ci-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.ci-modal-title{font-size:1.25rem;color:var(--text-primary);margin:0}.ci-modal-close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.ci-modal-close-btn:hover{color:var(--status-danger);background-color:var(--surface-hover)}.ci-camera-modal{width:450px}.ci-camera-preview{width:100%;height:300px;background:#000;border-radius:8px;overflow:hidden;margin-bottom:1.5rem;position:relative}.ci-webcam{width:100%;height:100%;object-fit:cover}.ci-camera-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px;text-align:center}.ci-camera-state p{font-size:.85rem;color:#fff;margin:0}.ci-camera-state--error p{color:var(--status-danger);font-weight:500}.ci-spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:ci-spin .8s linear infinite}@keyframes ci-spin{to{transform:rotate(360deg)}}.ci-crop-modal{width:450px}.ci-crop-instructions{color:var(--text-muted);font-size:.9rem;margin-bottom:1rem;text-align:center}.ci-crop-area{position:relative;width:100%;height:250px;background:var(--surface-hover);border-radius:8px;overflow:hidden;margin-bottom:1.5rem}.ci-crop-container{position:absolute;top:0;left:0;right:0;bottom:0}.ci-modal-actions{display:flex;justify-content:center}.ci-btn{border:none;padding:.75rem 2rem;font-size:1rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .3s ease;text-transform:none}.ci-primary-btn{background:var(--brand-gradient);color:var(--text-on-brand)}.ci-primary-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #0003}.ci-primary-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes ci-fadeIn{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes ci-modalFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}:root{--ue-blue-start: var(--brand-primary);--ue-blue-end: var(--brand-primary-dark);--ue-gradient: var(--brand-gradient);--ue-gradient-soft: linear-gradient(135deg, var(--brand-primary-light) 0%, var(--brand-primary-tint2, var(--brand-primary-light)) 100%);--ue-white: var(--surface-card);--ue-bg: var(--surface-page);--ue-surface: var(--surface-card);--ue-border: var(--border-color);--ue-border-focus: var(--brand-primary);--ue-text-primary: var(--text-primary);--ue-text-secondary: var(--text-secondary);--ue-text-muted: var(--text-muted);--ue-blue-50: var(--brand-primary-light);--ue-blue-100: var(--brand-primary-light);--ue-blue-200: var(--brand-primary-light);--ue-blue-600: var(--brand-primary);--ue-blue-700: var(--brand-primary-dark);--ue-success: var(--status-success);--ue-error: var(--status-danger);--ue-error-bg: var(--status-danger-light);--ue-shadow-sm: var(--shadow-sm);--ue-shadow-md: var(--shadow-md);--ue-shadow-lg: var(--shadow-lg);--ue-shadow-blue: 0 4px 20px rgba(var(--brand-primary-rgb),.28);--ue-radius: var(--radius-xl);--ue-radius-sm: var(--radius-lg);--ue-radius-xs: var(--radius-sm);--ue-font: var(--font-family);--ue-transition: all .22s cubic-bezier(.4, 0, .2, 1)}.ue-root{background:transparent;font-family:var(--ue-font);padding:0;box-sizing:border-box}.ue-page{max-width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--section-gap);padding-bottom:var(--space-4)}.ue-page-header{display:flex;align-items:center;gap:16px;padding:var(--space-3) var(--space-4);background:var(--ue-gradient);border-radius:var(--ue-radius);box-shadow:var(--ue-shadow-blue);position:relative;overflow:hidden}.ue-page-header:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(var(--text-on-brand-rgb),.06),transparent);pointer-events:none}.ue-back-btn{display:flex;align-items:center;gap:6px;padding:7px 14px;background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.28);border-radius:var(--ue-radius-sm);color:var(--text-on-brand);font-size:12.5px;font-weight:600;cursor:pointer;transition:var(--ue-transition);white-space:nowrap;font-family:var(--ue-font);flex-shrink:0}.ue-back-btn:hover{background:rgba(var(--text-on-brand-rgb),.28);transform:translate(-2px)}.ue-page-header-center{flex:1;text-align:center}.ue-page-title{font-size:var(--fs-lg);font-weight:800;color:var(--text-on-brand);margin:0;letter-spacing:-.4px}.ue-page-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.68);margin:3px 0 0}.ue-page-header-right{flex-shrink:0}.ue-emp-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.3);border-radius:20px;color:var(--text-on-brand);font-size:12px;font-weight:700}.ue-form{display:flex;flex-direction:column;gap:var(--section-gap)}.ue-hero-card{background:var(--ue-white);border-radius:var(--ue-radius);border:1px solid var(--ue-border);box-shadow:var(--ue-shadow-md);padding:var(--card-padding) var(--space-5);display:flex;gap:var(--space-6);align-items:flex-start;position:relative;overflow:hidden;animation:ue-fade-up .35s ease both}.ue-hero-card-gradient{position:absolute;top:0;left:0;right:0;height:4px;background:var(--ue-gradient)}@keyframes ue-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ue-avatar-zone{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.ue-avatar-wrap{position:relative;width:96px;height:96px}.ue-avatar-img{width:96px;height:96px;border-radius:16px;object-fit:cover;border:3px solid var(--ue-border);display:block;box-shadow:var(--ue-shadow-sm)}.ue-avatar-initials{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;background:var(--ue-gradient);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800;color:var(--text-on-brand);letter-spacing:1px}.ue-avatar-cam-btn{position:absolute;bottom:-6px;right:-6px;width:30px;height:30px;border-radius:50%;background:var(--ue-gradient);border:2.5px solid var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-on-brand);transition:var(--ue-transition);box-shadow:var(--ue-shadow-sm)}.ue-avatar-cam-btn:hover{transform:scale(1.15);box-shadow:var(--ue-shadow-blue)}.ue-avatar-hint{font-size:11px;color:var(--ue-text-muted);margin:0;text-align:center}.ue-basic-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--form-gap) var(--space-4)}.ue-accordion{background:var(--ue-white);border-radius:var(--ue-radius);border:1.5px solid var(--ue-border);box-shadow:var(--ue-shadow-sm);overflow:hidden;transition:box-shadow .22s ease,border-color .22s ease;animation:ue-fade-up .35s ease both;animation-delay:var(--sec-delay, 0s)}.ue-accordion--open{border-color:var(--sec-color, var(--ue-blue-start));box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.08),var(--ue-shadow-md)}.ue-accordion-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .18s ease;gap:12px}.ue-accordion-header:hover{background:var(--surface-hover)}.ue-accordion--open .ue-accordion-header{background:var(--ue-gradient-soft);border-bottom:1.5px solid var(--ue-blue-100)}.ue-accordion-header-left{display:flex;align-items:center;gap:14px;min-width:0}.ue-accordion-icon-wrap{width:40px;height:40px;border-radius:10px;background:var(--ue-gradient);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);flex-shrink:0;box-shadow:0 2px 8px rgba(var(--brand-primary-rgb),.3)}.ue-accordion-icon-wrap .MuiSvgIcon-root{font-size:20px!important}.ue-accordion-title{font-size:14.5px;font-weight:700;color:var(--ue-text-primary);letter-spacing:-.2px}.ue-accordion-desc{font-size:12px;color:var(--ue-text-muted);margin-top:1px}.ue-accordion-chevron{color:var(--ue-text-muted);transition:transform .28s cubic-bezier(.4,0,.2,1);flex-shrink:0}.ue-accordion-chevron--open{transform:rotate(180deg);color:var(--ue-blue-start)}.ue-accordion-body{padding:var(--card-padding);animation:ue-body-in .28s ease both;background:var(--surface-page)}@keyframes ue-body-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ue-section-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ue-section-grid--3{grid-template-columns:repeat(3,1fr)}.ue-field{display:flex;flex-direction:column;gap:6px}.ue-field--full{grid-column:1 / -1}.ue-label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--ue-text-secondary);letter-spacing:.1px}.ue-label-icon{font-size:15px!important;color:var(--ue-blue-start)!important}.ue-required{color:var(--ue-error);font-weight:800;margin-left:1px}.ue-info-tip{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ue-text-muted);background:var(--ue-blue-50);border:1px solid var(--ue-blue-100);border-radius:var(--ue-radius-xs);padding:5px 8px;line-height:1.4}.ue-info-tip--blue{background:var(--status-success-light);border-color:var(--status-success-light);color:var(--status-success)}.ue-info-tip .MuiSvgIcon-root{flex-shrink:0}.ue-input,.ue-select,.ue-textarea{width:100%;padding:9px 12px;border:1.5px solid var(--ue-border);border-radius:var(--ue-radius-sm);font-size:13px;color:var(--ue-text-primary);background:var(--ue-white);transition:var(--ue-transition);font-family:var(--ue-font);box-sizing:border-box;outline:none}.ue-input::placeholder,.ue-textarea::placeholder{color:var(--ue-text-muted);font-size:12.5px}.ue-input:focus,.ue-select:focus,.ue-textarea:focus{border-color:var(--ue-blue-start);box-shadow:0 0 0 3px rgba(var(--brand-primary-rgb),.12);background:var(--surface-card)}.ue-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;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='%2394a3b8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px;cursor:pointer}.ue-select:disabled{background-color:var(--surface-hover);color:var(--ue-text-muted);cursor:not-allowed;opacity:.7}.ue-textarea{resize:vertical;min-height:84px;line-height:1.5}.ue-radio-group{display:flex;gap:10px;flex-wrap:wrap}.ue-radio-card{display:flex;align-items:center;gap:8px;padding:9px 16px;border:1.5px solid var(--ue-border);border-radius:var(--ue-radius-sm);cursor:pointer;transition:var(--ue-transition);background:var(--ue-white)}.ue-radio-card:hover{border-color:var(--ue-blue-start);background:var(--ue-blue-50)}.ue-radio-card--active{border-color:var(--ue-blue-start);background:var(--ue-gradient-soft);box-shadow:0 0 0 2px rgba(var(--brand-primary-rgb),.15)}.ue-radio-card input{display:none}.ue-radio-label{font-size:13px;font-weight:600;color:var(--ue-text-primary)}.ue-day-picker{display:flex;gap:8px;flex-wrap:wrap}.ue-day-chip{display:inline-flex;align-items:center;justify-content:center;width:46px;height:36px;border:1.5px solid var(--ue-border);border-radius:var(--ue-radius-xs);font-size:12px;font-weight:600;color:var(--ue-text-secondary);background:var(--ue-white);cursor:pointer;transition:var(--ue-transition);-webkit-user-select:none;user-select:none}.ue-day-chip:hover{border-color:var(--ue-blue-start);color:var(--ue-blue-start);background:var(--ue-blue-50)}.ue-day-chip--active{background:var(--ue-gradient);border-color:transparent;color:var(--text-on-brand);box-shadow:0 2px 8px rgba(var(--brand-primary-rgb),.35);transform:translateY(-1px)}.ue-alt-grid{display:flex;flex-direction:column;gap:6px;border:1.5px solid var(--ue-border);border-radius:var(--ue-radius-sm);padding:12px;background:var(--ue-white)}.ue-alt-row{display:flex;align-items:center;gap:12px;padding:6px 8px;border-radius:var(--ue-radius-xs);background:var(--surface-hover);border:1px solid var(--ue-border);transition:background .15s ease}.ue-alt-row:hover{background:var(--ue-blue-50)}.ue-alt-row-label{font-size:12px;font-weight:700;color:var(--ue-text-secondary);min-width:72px;display:flex;align-items:center;gap:6px}.ue-alt-count{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--ue-gradient);color:var(--text-on-brand);font-size:10px;font-weight:800}.ue-alt-days{display:flex;gap:5px;flex-wrap:wrap}.ue-alt-day{width:30px;height:30px;border-radius:6px;border:1.5px solid var(--ue-border);background:var(--ue-white);font-size:11px;font-weight:700;color:var(--ue-text-muted);cursor:pointer;transition:var(--ue-transition);display:flex;align-items:center;justify-content:center;padding:0}.ue-alt-day:hover{border-color:var(--ue-blue-start);color:var(--ue-blue-start);background:var(--ue-blue-50)}.ue-alt-day--on{background:var(--ue-gradient);border-color:transparent;color:var(--text-on-brand);box-shadow:0 2px 6px rgba(var(--brand-primary-rgb),.3)}.ue-alt-summary{margin-top:10px;padding:9px 12px;background:var(--ue-blue-50);border:1px dashed var(--ue-blue-200);border-radius:var(--ue-radius-xs);font-size:12px;color:var(--ue-text-secondary);line-height:1.55}.ue-alt-summary strong{color:var(--ue-text-primary);margin-right:4px}.ue-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ue-toggle-card{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1.5px solid var(--ue-border);border-radius:var(--ue-radius-sm);cursor:pointer;transition:var(--ue-transition);background:var(--ue-white);gap:12px}.ue-toggle-card:hover{border-color:var(--ue-blue-start);background:var(--ue-blue-50)}.ue-toggle-card--on{border-color:var(--ue-blue-start);background:var(--ue-gradient-soft)}.ue-toggle-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ue-toggle-card-label{font-size:13px;font-weight:700;color:var(--ue-text-primary)}.ue-toggle-card-hint{font-size:11px;color:var(--ue-text-muted);line-height:1.4}.ue-toggle-switch{width:40px;height:22px;border-radius:11px;background:var(--ue-border);position:relative;flex-shrink:0;transition:background .22s ease;cursor:pointer}.ue-toggle-switch--on{background:var(--ue-gradient);box-shadow:0 2px 8px rgba(var(--brand-primary-rgb),.35)}.ue-toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);transition:transform .22s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.ue-toggle-switch--on .ue-toggle-thumb{transform:translate(18px)}.ue-btn{display:inline-flex;align-items:center;gap:7px;border-radius:var(--ue-radius-sm);font-size:13.5px;font-weight:700;font-family:var(--ue-font);cursor:pointer;transition:var(--ue-transition);border:none}.ue-btn-primary{padding:11px 28px;background:var(--ue-gradient);color:var(--text-on-brand);box-shadow:var(--ue-shadow-blue)}.ue-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px rgba(var(--brand-primary-rgb),.4)}.ue-btn-primary:disabled{opacity:.65;cursor:not-allowed;transform:none}.ue-btn-ghost{padding:11px 20px;background:transparent;color:var(--ue-text-secondary);border:1.5px solid var(--ue-border)}.ue-btn-ghost:hover{background:var(--surface-hover);border-color:var(--border-color)}.ue-btn-spinner{width:15px;height:15px;border:2px solid rgba(var(--text-on-brand-rgb),.35);border-top-color:var(--text-on-brand);border-radius:50%;animation:ue-spin .7s linear infinite}@keyframes ue-spin{to{transform:rotate(360deg)}}.ue-form-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 0 4px}.ue-loading-screen,.ue-error-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.ue-loading-card,.ue-error-card{background:var(--ue-white);border-radius:var(--ue-radius);box-shadow:var(--ue-shadow-lg);padding:40px 48px;text-align:center;max-width:400px;width:100%;border:1px solid var(--ue-border);animation:ue-fade-up .4s ease both}.ue-loading-spinner{width:60px;height:60px;position:relative;margin:0 auto 20px}.ue-spinner-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:3px solid transparent;border-top-color:var(--ue-blue-start);animation:ue-spin .9s linear infinite}.ue-spinner-ring--2{top:8px;right:8px;bottom:8px;left:8px;border-top-color:var(--ue-blue-end);animation-direction:reverse;animation-duration:.7s}.ue-spinner-dot{position:absolute;top:22px;right:22px;bottom:22px;left:22px;border-radius:50%;background:var(--ue-gradient);animation:ue-pulse 1.2s ease-in-out infinite}@keyframes ue-pulse{0%,to{transform:scale(.85);opacity:.6}50%{transform:scale(1.1);opacity:1}}.ue-loading-title{font-size:17px;font-weight:800;color:var(--ue-text-primary);margin:0 0 6px}.ue-loading-desc{font-size:13px;color:var(--ue-text-muted);margin:0 0 24px}.ue-loading-bars{display:flex;flex-direction:column;gap:10px;text-align:left}.ue-loading-bar-row{display:flex;align-items:center;gap:12px;animation:ue-fade-up .4s ease both}.ue-loading-bar-label{font-size:12px;color:var(--ue-text-muted);width:120px;flex-shrink:0}.ue-loading-bar{flex:1;height:6px;background:var(--ue-border);border-radius:3px;overflow:hidden}.ue-loading-bar-fill{height:100%;background:var(--ue-gradient);border-radius:3px;animation:ue-bar-fill 1.8s ease-in-out infinite}@keyframes ue-bar-fill{0%{width:0%;opacity:.6}50%{width:75%;opacity:1}to{width:100%;opacity:.7}}.ue-error-icon-wrap{width:72px;height:72px;border-radius:20px;background:var(--ue-error-bg);color:var(--ue-error);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.ue-error-title{font-size:17px;font-weight:800;color:var(--ue-text-primary);margin:0 0 8px}.ue-error-desc{font-size:13.5px;color:var(--ue-text-muted);margin:0 0 24px;line-height:1.6}.ue-error-actions{display:flex;gap:10px;justify-content:center}.ue-ico-13{font-size:13px!important}.ue-ico-14{font-size:14px!important}.ue-ico-16{font-size:var(--icon-size-sm)!important}.ue-ico-18{font-size:var(--icon-size)!important}.ue-ico-40{font-size:40px!important}.ue-field--spaced{margin-top:var(--space-4)}@media (max-width: 900px){.ue-section-grid--3{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.ue-page{gap:12px}.ue-page-header{padding:12px 14px;flex-wrap:wrap;gap:10px}.ue-page-header-center{order:3;flex-basis:100%;text-align:left}.ue-page-title{font-size:16px}.ue-page-subtitle{display:none}.ue-hero-card{flex-direction:column;align-items:center;padding:20px 16px;gap:20px}.ue-basic-grid{grid-template-columns:1fr;width:100%}.ue-section-grid,.ue-section-grid--3,.ue-toggle-grid{grid-template-columns:1fr}.ue-accordion-body{padding:14px}.ue-form-actions{flex-direction:column-reverse}.ue-btn-primary,.ue-btn-ghost{width:100%;justify-content:center}.ue-loading-card,.ue-error-card{padding:28px 24px}}@media (max-width: 480px){.ue-back-btn span,.ue-emp-chip{display:none}.ue-day-picker{gap:6px}.ue-day-chip{width:40px;height:32px;font-size:11px}.ue-alt-row{flex-wrap:wrap}.ue-alt-row-label{min-width:100%}}.orgt-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.orgt-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.orgt-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.orgt-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.orgt-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.orgt-header-text{min-width:0}.orgt-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.orgt-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.orgt-ico-md{font-size:20px!important}.orgt-ico{font-size:var(--icon-size)!important}.orgt-ico-sm{font-size:var(--icon-size-sm)!important}.orgt-ico-xs{font-size:14px!important}.orgt-ico--spin{animation:orgt-rotate .8s linear infinite}.orgt-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.orgt-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.orgt-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.orgt-btn-icon:hover:not(:disabled):not(.orgt-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.orgt-btn-icon:disabled,.orgt-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.orgt-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.orgt-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.orgt-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.orgt-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.orgt-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.orgt-btn-primary:disabled{opacity:.5;cursor:not-allowed}.orgt-btn-solid,.orgt-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.orgt-btn-solid:active,.orgt-btn-plain:active{transform:scale(.97)}.orgt-btn-solid:disabled,.orgt-btn-plain:disabled{opacity:.55;cursor:not-allowed}.orgt-btn-solid{border:none;color:var(--text-on-brand)}.orgt-btn-solid--primary{background:var(--brand-gradient)}.orgt-btn-solid--danger,.orgt-btn-solid--error{background:var(--status-danger)}.orgt-btn-solid:hover:not(:disabled){opacity:.9}.orgt-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.orgt-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.orgt-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.orgt-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.orgt-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:orgt-rotate .7s linear infinite}@keyframes orgt-rotate{to{transform:rotate(360deg)}}.orgt-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.orgt-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.orgt-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);min-height:0}.orgt-search-field{position:relative;display:flex;align-items:center}.orgt-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.orgt-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.orgt-search-input::placeholder{color:var(--text-muted)}.orgt-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.orgt-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.orgt-search-clear svg{font-size:12px}.orgt-search-clear:hover{background:var(--status-danger)}.orgt-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.orgt-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.orgt-thead{position:sticky;top:0;z-index:var(--z-sticky)}.orgt-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.orgt-row{animation:orgt-row-in .22s ease both}@keyframes orgt-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.orgt-row:nth-child(2n){background:#f9f9f9}.orgt-row:nth-child(odd){background:#fff}.orgt-row:hover,.orgt-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.orgt-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.orgt-col-code{width:130px}.orgt-col-name{width:24%}.orgt-col-type{width:15%}.orgt-col-parent{width:20%}.orgt-col-owner{width:auto}.orgt-col-actions{width:104px;text-align:center}.orgt-type-chip{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.orgt-muted{color:var(--text-muted)}.orgt-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.orgt-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.orgt-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.orgt-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.orgt-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.orgt-action-btn svg{font-size:15px}.orgt-action-btn:disabled{opacity:.4;pointer-events:none}.orgt-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.orgt-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.orgt-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.orgt-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.orgt-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.orgt-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.orgt-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.orgt-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.orgt-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.orgt-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:orgt-fade-in .3s ease both}@keyframes orgt-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.orgt-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.orgt-state-icon-wrap svg{font-size:28px}.orgt-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.orgt-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.orgt-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.orgt-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.orgt-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.orgt-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:orgt-fade-in .3s ease both}.orgt-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:orgt-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes orgt-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.orgt-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.orgt-sk-text{flex:1;max-width:220px}.orgt-sk-text--wide{max-width:320px}.orgt-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.orgt-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:orgt-fade .18s ease both}@keyframes orgt-fade{0%{opacity:0}to{opacity:1}}.orgt-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:orgt-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes orgt-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.orgt-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.orgt-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.orgt-dlg-icon svg{font-size:22px}.orgt-dlg-icon--danger,.orgt-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.orgt-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.orgt-dlg-head-text{flex:1;min-width:0}.orgt-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.orgt-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.orgt-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.orgt-dlg-x svg{font-size:var(--icon-size)}.orgt-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.orgt-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.orgt-dlg-list li+li{margin-top:2px}.orgt-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.orgt-col-code{width:110px}.orgt-col-parent{display:none}.orgt-search-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 768px){.orgt-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.orgt-header{padding:var(--space-3)}.orgt-header-left{flex:1 1 100%}.orgt-actions{width:100%}.orgt-btn-primary{margin-left:auto}.orgt-search-bar--open{padding:var(--space-3)}.orgt-col-owner{display:none}.orgt-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.orgt-btn-primary span{display:none}.orgt-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.orgt-actions-sep{display:none}.orgt-search-grid{grid-template-columns:1fr}.orgt-col-parent,.orgt-col-owner{display:flex}.orgt-table,.orgt-table tbody,.orgt-table tr,.orgt-table td{display:block;width:100%}.orgt-thead{display:none}.orgt-table tbody{padding:var(--space-2)}.orgt-row,.orgt-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.orgt-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.orgt-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.orgt-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.orgt-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.orgt-col-code{padding-right:76px}.orgt-action-btn{width:32px;height:32px}.orgt-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.orgt-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.orgt-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.orgt-dlg-foot>button{flex:1}}.com-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:comFadeIn .18s ease both}@keyframes comFadeIn{0%{opacity:0}to{opacity:1}}.com-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:comSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes comSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.com-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.com-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.com-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.com-header-icon svg{font-size:20px}.com-header-text{min-width:0}.com-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.com-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.com-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.com-close-btn svg{font-size:var(--icon-size)}.com-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.com-close-btn:disabled{opacity:.5;cursor:not-allowed}.com-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.com-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.com-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.com-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.com-alert-text span{color:var(--text-secondary)}.com-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.com-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.com-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.com-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.com-form-group--full{grid-column:1 / -1}.com-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.com-required{color:var(--status-danger)}.com-input-wrapper{position:relative;display:flex;align-items:center}.com-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.com-input-wrapper:focus-within .com-input-icon{color:var(--brand-primary)}.com-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.com-input::placeholder{color:var(--text-muted)}.com-input:hover:not(:disabled){border-color:var(--text-muted)}.com-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.com-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.com-input-error,.com-input-error:hover:not(:disabled){border-color:var(--status-danger)}.com-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.com-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.com-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.com-section{grid-column:1 / -1;margin:0 0 calc(-1 * var(--space-2));font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.6px;color:var(--brand-primary)}.com-section:not(:first-child){padding-top:var(--space-3);border-top:1px dashed var(--border-color)}.com-label{display:inline-flex;align-items:center;gap:var(--space-1)}.com-label-ico{font-size:15px!important;color:var(--text-muted)}.com-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.com-opt{display:flex;flex-direction:column;line-height:var(--lh-tight)}.com-opt small{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.react-select__option--is-selected .com-opt small{color:inherit;opacity:.85}.com-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:180px;font-size:var(--fs-sm);color:var(--text-secondary)}.com-loading .com-spin{color:var(--brand-primary);width:18px;height:18px}.com-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.com-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.com-footer-actions{display:flex;gap:var(--space-2)}.com-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.com-btn:active:not(:disabled){transform:scale(.97)}.com-btn:disabled{opacity:.55;cursor:not-allowed}.com-btn-ico{font-size:var(--icon-size)!important}.com-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.com-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.com-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.com-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.com-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:comSpin .7s linear infinite}@keyframes comSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.com-backdrop{align-items:flex-end;padding:var(--space-2)}.com-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.com-header,.com-body{padding:var(--space-3)}.com-form{grid-template-columns:1fr;gap:var(--space-3)}.com-footer{padding:var(--space-3)}.com-footer-note{display:none}.com-footer-actions{width:100%}.com-footer-actions .com-btn{flex:1;min-width:0}}.uom-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:uomFadeIn .18s ease both}@keyframes uomFadeIn{0%{opacity:0}to{opacity:1}}.uom-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:uomSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes uomSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uom-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.uom-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uom-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uom-header-icon svg{font-size:20px}.uom-header-text{min-width:0}.uom-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.uom-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.uom-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.uom-close-btn svg{font-size:var(--icon-size)}.uom-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.uom-close-btn:disabled{opacity:.5;cursor:not-allowed}.uom-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.uom-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.uom-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uom-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.uom-alert-text span{color:var(--text-secondary)}.uom-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.uom-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.uom-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.uom-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.uom-form-group--full{grid-column:1 / -1}.uom-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uom-required{color:var(--status-danger)}.uom-input-wrapper{position:relative;display:flex;align-items:center}.uom-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.uom-input-wrapper:focus-within .uom-input-icon{color:var(--brand-primary)}.uom-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uom-input::placeholder{color:var(--text-muted)}.uom-input:hover:not(:disabled){border-color:var(--text-muted)}.uom-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uom-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.uom-input-error,.uom-input-error:hover:not(:disabled){border-color:var(--status-danger)}.uom-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.uom-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.uom-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.uom-section{grid-column:1 / -1;margin:0 0 calc(-1 * var(--space-2));font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.6px;color:var(--brand-primary)}.uom-section:not(:first-child){padding-top:var(--space-3);border-top:1px dashed var(--border-color)}.uom-label{display:inline-flex;align-items:center;gap:var(--space-1)}.uom-label-ico{font-size:15px!important;color:var(--text-muted)}.uom-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.uom-opt{display:flex;flex-direction:column;line-height:var(--lh-tight)}.uom-opt small{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.react-select__option--is-selected .uom-opt small{color:inherit;opacity:.85}.uom-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.uom-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uom-footer-actions{display:flex;gap:var(--space-2)}.uom-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.uom-btn:active:not(:disabled){transform:scale(.97)}.uom-btn:disabled{opacity:.55;cursor:not-allowed}.uom-btn-ico{font-size:var(--icon-size)!important}.uom-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uom-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uom-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.uom-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.uom-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:uomSpin .7s linear infinite}@keyframes uomSpin{to{transform:rotate(360deg)}}.uom-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.uom-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uom-current-ico{font-size:13px!important;flex-shrink:0}.uom-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:160px;font-size:var(--fs-sm);color:var(--text-secondary)}.uom-loading .uom-spin{color:var(--brand-primary);width:18px;height:18px}@media (max-width: 600px){.uom-backdrop{align-items:flex-end;padding:var(--space-2)}.uom-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uom-header,.uom-body{padding:var(--space-3)}.uom-form{grid-template-columns:1fr;gap:var(--space-3)}.uom-footer{padding:var(--space-3)}.uom-footer-note{display:none}.uom-footer-actions{width:100%}.uom-footer-actions .uom-btn{flex:1;min-width:0}}.dept-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.dept-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.dept-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.dept-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.dept-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.dept-header-text{min-width:0}.dept-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.dept-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dept-ico-md{font-size:20px!important}.dept-ico{font-size:var(--icon-size)!important}.dept-ico-sm{font-size:var(--icon-size-sm)!important}.dept-ico-xs{font-size:14px!important}.dept-ico--spin{animation:dept-rotate .8s linear infinite}.dept-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.dept-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.dept-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.dept-btn-icon:hover:not(:disabled):not(.dept-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.dept-btn-icon:disabled,.dept-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.dept-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.dept-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.dept-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.dept-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.dept-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.dept-btn-primary:disabled{opacity:.5;cursor:not-allowed}.dept-btn-solid,.dept-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.dept-btn-solid:active,.dept-btn-plain:active{transform:scale(.97)}.dept-btn-solid:disabled,.dept-btn-plain:disabled{opacity:.55;cursor:not-allowed}.dept-btn-solid{border:none;color:var(--text-on-brand)}.dept-btn-solid--primary{background:var(--brand-gradient)}.dept-btn-solid--danger,.dept-btn-solid--error{background:var(--status-danger)}.dept-btn-solid:hover:not(:disabled){opacity:.9}.dept-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.dept-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dept-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.dept-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.dept-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:dept-rotate .7s linear infinite}@keyframes dept-rotate{to{transform:rotate(360deg)}}.dept-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.dept-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.dept-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);min-height:0}.dept-search-field{position:relative;display:flex;align-items:center}.dept-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.dept-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.dept-search-input::placeholder{color:var(--text-muted)}.dept-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dept-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.dept-search-clear svg{font-size:12px}.dept-search-clear:hover{background:var(--status-danger)}.dept-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.dept-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.dept-thead{position:sticky;top:0;z-index:var(--z-sticky)}.dept-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.dept-row{animation:dept-row-in .22s ease both}@keyframes dept-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.dept-row:nth-child(2n){background:#f9f9f9}.dept-row:nth-child(odd){background:#fff}.dept-row:hover,.dept-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.dept-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dept-col-code{width:160px}.dept-col-name{width:32%}.dept-col-org{width:auto}.dept-col-actions{width:104px;text-align:center}.dept-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.dept-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.dept-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.dept-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.dept-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.dept-action-btn svg{font-size:15px}.dept-action-btn:disabled{opacity:.4;pointer-events:none}.dept-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.dept-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.dept-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.dept-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.dept-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.dept-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.dept-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.dept-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.dept-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.dept-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:dept-fade-in .3s ease both}@keyframes dept-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dept-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.dept-state-icon-wrap svg{font-size:28px}.dept-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.dept-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.dept-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.dept-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.dept-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.dept-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:dept-fade-in .3s ease both}.dept-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:dept-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes dept-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dept-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.dept-sk-text{flex:1;max-width:220px}.dept-sk-text--wide{max-width:320px}.dept-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.dept-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:dept-fade .18s ease both}@keyframes dept-fade{0%{opacity:0}to{opacity:1}}.dept-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:dept-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes dept-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.dept-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.dept-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.dept-dlg-icon svg{font-size:22px}.dept-dlg-icon--danger,.dept-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.dept-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.dept-dlg-head-text{flex:1;min-width:0}.dept-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.dept-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.dept-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dept-dlg-x svg{font-size:var(--icon-size)}.dept-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.dept-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.dept-dlg-list li+li{margin-top:2px}.dept-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.dept-col-code{width:130px}.dept-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.dept-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.dept-header{padding:var(--space-3)}.dept-header-left{flex:1 1 100%}.dept-actions{width:100%}.dept-btn-primary{margin-left:auto}.dept-search-bar--open{padding:var(--space-3)}.dept-col-org{width:34%}}@media (max-width: 600px){.dept-btn-primary span{display:none}.dept-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.dept-actions-sep{display:none}.dept-search-grid{grid-template-columns:1fr}.dept-table,.dept-table tbody,.dept-table tr,.dept-table td{display:block;width:100%}.dept-thead{display:none}.dept-table tbody{padding:var(--space-2)}.dept-row,.dept-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.dept-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.dept-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.dept-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.dept-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.dept-col-code{padding-right:76px}.dept-action-btn{width:32px;height:32px}.dept-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.dept-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.dept-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.dept-dlg-foot>button{flex:1}}.cd-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:cdFadeIn .18s ease both}@keyframes cdFadeIn{0%{opacity:0}to{opacity:1}}.cd-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:cdSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cdSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cd-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cd-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cd-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cd-header-icon svg{font-size:20px}.cd-header-text{min-width:0}.cd-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cd-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cd-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cd-close-btn svg{font-size:var(--icon-size)}.cd-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cd-close-btn:disabled{opacity:.5;cursor:not-allowed}.cd-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cd-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cd-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cd-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cd-alert-text span{color:var(--text-secondary)}.cd-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cd-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cd-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.cd-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cd-form-group--full{grid-column:1 / -1}.cd-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cd-required{color:var(--status-danger)}.cd-input-wrapper{position:relative;display:flex;align-items:center}.cd-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cd-input-wrapper:focus-within .cd-input-icon{color:var(--brand-primary)}.cd-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cd-input::placeholder{color:var(--text-muted)}.cd-input:hover:not(:disabled){border-color:var(--text-muted)}.cd-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cd-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cd-input-error,.cd-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cd-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cd-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cd-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cd-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cd-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cd-footer-actions{display:flex;gap:var(--space-2)}.cd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cd-btn:active:not(:disabled){transform:scale(.97)}.cd-btn:disabled{opacity:.55;cursor:not-allowed}.cd-btn-ico{font-size:var(--icon-size)!important}.cd-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cd-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cd-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cd-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cd-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cdSpin .7s linear infinite}@keyframes cdSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cd-backdrop{align-items:flex-end;padding:var(--space-2)}.cd-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cd-header,.cd-body{padding:var(--space-3)}.cd-form{grid-template-columns:1fr;gap:var(--space-3)}.cd-footer{padding:var(--space-3)}.cd-footer-note{display:none}.cd-footer-actions{width:100%}.cd-footer-actions .cd-btn{flex:1;min-width:0}}.ud-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:udFadeIn .18s ease both}@keyframes udFadeIn{0%{opacity:0}to{opacity:1}}.ud-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:udSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes udSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ud-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.ud-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ud-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ud-header-icon svg{font-size:20px}.ud-header-text{min-width:0}.ud-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.ud-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.ud-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.ud-close-btn svg{font-size:var(--icon-size)}.ud-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.ud-close-btn:disabled{opacity:.5;cursor:not-allowed}.ud-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.ud-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.ud-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.ud-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.ud-alert-text span{color:var(--text-secondary)}.ud-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.ud-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.ud-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.ud-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.ud-form-group--full{grid-column:1 / -1}.ud-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.ud-required{color:var(--status-danger)}.ud-input-wrapper{position:relative;display:flex;align-items:center}.ud-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.ud-input-wrapper:focus-within .ud-input-icon{color:var(--brand-primary)}.ud-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ud-input::placeholder{color:var(--text-muted)}.ud-input:hover:not(:disabled){border-color:var(--text-muted)}.ud-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ud-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.ud-input-error,.ud-input-error:hover:not(:disabled){border-color:var(--status-danger)}.ud-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.ud-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.ud-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.ud-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.ud-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.ud-footer-actions{display:flex;gap:var(--space-2)}.ud-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.ud-btn:active:not(:disabled){transform:scale(.97)}.ud-btn:disabled{opacity:.55;cursor:not-allowed}.ud-btn-ico{font-size:var(--icon-size)!important}.ud-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.ud-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ud-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.ud-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ud-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:udSpin .7s linear infinite}@keyframes udSpin{to{transform:rotate(360deg)}}.ud-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.ud-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ud-current-ico{font-size:13px!important;flex-shrink:0}.ud-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:160px;font-size:var(--fs-sm);color:var(--text-secondary)}.ud-loading .ud-spin{color:var(--brand-primary);width:18px;height:18px}@media (max-width: 600px){.ud-backdrop{align-items:flex-end;padding:var(--space-2)}.ud-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.ud-header,.ud-body{padding:var(--space-3)}.ud-form{grid-template-columns:1fr;gap:var(--space-3)}.ud-footer{padding:var(--space-3)}.ud-footer-note{display:none}.ud-footer-actions{width:100%}.ud-footer-actions .ud-btn{flex:1;min-width:0}}.desig-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.desig-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.desig-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.desig-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.desig-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.desig-header-text{min-width:0}.desig-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.desig-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.desig-ico-md{font-size:20px!important}.desig-ico{font-size:var(--icon-size)!important}.desig-ico-sm{font-size:var(--icon-size-sm)!important}.desig-ico-xs{font-size:14px!important}.desig-ico--spin{animation:desig-rotate .8s linear infinite}.desig-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.desig-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.desig-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.desig-btn-icon:hover:not(:disabled):not(.desig-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.desig-btn-icon:disabled,.desig-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.desig-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.desig-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.desig-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.desig-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.desig-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.desig-btn-primary:disabled{opacity:.5;cursor:not-allowed}.desig-btn-solid,.desig-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.desig-btn-solid:active,.desig-btn-plain:active{transform:scale(.97)}.desig-btn-solid:disabled,.desig-btn-plain:disabled{opacity:.55;cursor:not-allowed}.desig-btn-solid{border:none;color:var(--text-on-brand)}.desig-btn-solid--primary{background:var(--brand-gradient)}.desig-btn-solid--danger,.desig-btn-solid--error{background:var(--status-danger)}.desig-btn-solid:hover:not(:disabled){opacity:.9}.desig-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.desig-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.desig-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.desig-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.desig-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:desig-rotate .7s linear infinite}@keyframes desig-rotate{to{transform:rotate(360deg)}}.desig-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.desig-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.desig-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.desig-search-field{position:relative;display:flex;align-items:center}.desig-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.desig-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.desig-search-input::placeholder{color:var(--text-muted)}.desig-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.desig-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.desig-search-clear svg{font-size:12px}.desig-search-clear:hover{background:var(--status-danger)}.desig-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.desig-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.desig-thead{position:sticky;top:0;z-index:var(--z-sticky)}.desig-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.desig-row{animation:desig-row-in .22s ease both}@keyframes desig-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.desig-row:nth-child(2n){background:#f9f9f9}.desig-row:nth-child(odd){background:#fff}.desig-row:hover,.desig-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.desig-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.desig-col-code{width:160px}.desig-col-name{width:auto}.desig-col-actions{width:104px;text-align:center}.desig-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.desig-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.desig-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.desig-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.desig-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.desig-action-btn svg{font-size:15px}.desig-action-btn:disabled{opacity:.4;pointer-events:none}.desig-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.desig-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.desig-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.desig-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.desig-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.desig-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.desig-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.desig-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.desig-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.desig-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:desig-fade-in .3s ease both}@keyframes desig-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.desig-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.desig-state-icon-wrap svg{font-size:28px}.desig-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.desig-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.desig-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.desig-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.desig-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.desig-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:desig-fade-in .3s ease both}.desig-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:desig-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes desig-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.desig-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.desig-sk-text{flex:1;max-width:220px}.desig-sk-text--wide{max-width:320px}.desig-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.desig-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:desig-fade .18s ease both}@keyframes desig-fade{0%{opacity:0}to{opacity:1}}.desig-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:desig-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes desig-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.desig-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.desig-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.desig-dlg-icon svg{font-size:22px}.desig-dlg-icon--danger,.desig-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.desig-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.desig-dlg-head-text{flex:1;min-width:0}.desig-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.desig-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.desig-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.desig-dlg-x svg{font-size:var(--icon-size)}.desig-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.desig-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.desig-dlg-list li+li{margin-top:2px}.desig-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.desig-col-code{width:130px}}@media (max-width: 768px){.desig-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.desig-header{padding:var(--space-3)}.desig-header-left{flex:1 1 100%}.desig-actions{width:100%}.desig-btn-primary{margin-left:auto}.desig-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.desig-btn-primary span{display:none}.desig-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.desig-actions-sep{display:none}.desig-search-grid{grid-template-columns:1fr}.desig-table,.desig-table tbody,.desig-table tr,.desig-table td{display:block;width:100%}.desig-thead{display:none}.desig-table tbody{padding:var(--space-2)}.desig-row,.desig-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.desig-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.desig-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.desig-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.desig-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.desig-col-code{padding-right:76px}.desig-action-btn{width:32px;height:32px}.desig-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.desig-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.desig-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.desig-dlg-foot>button{flex:1}}.cdg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:cdgFadeIn .18s ease both}@keyframes cdgFadeIn{0%{opacity:0}to{opacity:1}}.cdg-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:cdgSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cdgSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cdg-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cdg-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cdg-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cdg-header-icon svg{font-size:20px}.cdg-header-text{min-width:0}.cdg-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cdg-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cdg-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cdg-close-btn svg{font-size:var(--icon-size)}.cdg-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cdg-close-btn:disabled{opacity:.5;cursor:not-allowed}.cdg-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cdg-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cdg-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cdg-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cdg-alert-text span{color:var(--text-secondary)}.cdg-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cdg-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cdg-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.cdg-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cdg-form-group--full{grid-column:1 / -1}.cdg-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cdg-required{color:var(--status-danger)}.cdg-input-wrapper{position:relative;display:flex;align-items:center}.cdg-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cdg-input-wrapper:focus-within .cdg-input-icon{color:var(--brand-primary)}.cdg-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cdg-input::placeholder{color:var(--text-muted)}.cdg-input:hover:not(:disabled){border-color:var(--text-muted)}.cdg-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cdg-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cdg-input-error,.cdg-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cdg-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cdg-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cdg-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cdg-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cdg-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cdg-footer-actions{display:flex;gap:var(--space-2)}.cdg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cdg-btn:active:not(:disabled){transform:scale(.97)}.cdg-btn:disabled{opacity:.55;cursor:not-allowed}.cdg-btn-ico{font-size:var(--icon-size)!important}.cdg-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cdg-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cdg-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cdg-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cdg-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cdgSpin .7s linear infinite}@keyframes cdgSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cdg-backdrop{align-items:flex-end;padding:var(--space-2)}.cdg-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cdg-header,.cdg-body{padding:var(--space-3)}.cdg-form{grid-template-columns:1fr;gap:var(--space-3)}.cdg-footer{padding:var(--space-3)}.cdg-footer-note{display:none}.cdg-footer-actions{width:100%}.cdg-footer-actions .cdg-btn{flex:1;min-width:0}}.udg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:udgFadeIn .18s ease both}@keyframes udgFadeIn{0%{opacity:0}to{opacity:1}}.udg-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:udgSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes udgSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.udg-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.udg-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.udg-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.udg-header-icon svg{font-size:20px}.udg-header-text{min-width:0}.udg-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.udg-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.udg-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.udg-close-btn svg{font-size:var(--icon-size)}.udg-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.udg-close-btn:disabled{opacity:.5;cursor:not-allowed}.udg-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.udg-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.udg-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.udg-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.udg-alert-text span{color:var(--text-secondary)}.udg-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.udg-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.udg-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.udg-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.udg-form-group--full{grid-column:1 / -1}.udg-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.udg-required{color:var(--status-danger)}.udg-input-wrapper{position:relative;display:flex;align-items:center}.udg-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.udg-input-wrapper:focus-within .udg-input-icon{color:var(--brand-primary)}.udg-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.udg-input::placeholder{color:var(--text-muted)}.udg-input:hover:not(:disabled){border-color:var(--text-muted)}.udg-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.udg-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.udg-input-error,.udg-input-error:hover:not(:disabled){border-color:var(--status-danger)}.udg-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.udg-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.udg-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.udg-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.udg-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.udg-footer-actions{display:flex;gap:var(--space-2)}.udg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.udg-btn:active:not(:disabled){transform:scale(.97)}.udg-btn:disabled{opacity:.55;cursor:not-allowed}.udg-btn-ico{font-size:var(--icon-size)!important}.udg-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.udg-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.udg-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.udg-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.udg-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:udgSpin .7s linear infinite}@keyframes udgSpin{to{transform:rotate(360deg)}}.udg-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.udg-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.udg-current-ico{font-size:13px!important;flex-shrink:0}.udg-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:160px;font-size:var(--fs-sm);color:var(--text-secondary)}.udg-loading .udg-spin{color:var(--brand-primary);width:18px;height:18px}@media (max-width: 600px){.udg-backdrop{align-items:flex-end;padding:var(--space-2)}.udg-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.udg-header,.udg-body{padding:var(--space-3)}.udg-form{grid-template-columns:1fr;gap:var(--space-3)}.udg-footer{padding:var(--space-3)}.udg-footer-note{display:none}.udg-footer-actions{width:100%}.udg-footer-actions .udg-btn{flex:1;min-width:0}}.cat-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.cat-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.cat-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.cat-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cat-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cat-header-text{min-width:0}.cat-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.cat-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-ico-md{font-size:20px!important}.cat-ico{font-size:var(--icon-size)!important}.cat-ico-sm{font-size:var(--icon-size-sm)!important}.cat-ico-xs{font-size:14px!important}.cat-ico--spin{animation:cat-rotate .8s linear infinite}.cat-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cat-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.cat-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.cat-btn-icon:hover:not(:disabled):not(.cat-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.cat-btn-icon:disabled,.cat-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.cat-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.cat-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.cat-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.cat-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.cat-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.cat-btn-primary:disabled{opacity:.5;cursor:not-allowed}.cat-btn-solid,.cat-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.cat-btn-solid:active,.cat-btn-plain:active{transform:scale(.97)}.cat-btn-solid:disabled,.cat-btn-plain:disabled{opacity:.55;cursor:not-allowed}.cat-btn-solid{border:none;color:var(--text-on-brand)}.cat-btn-solid--primary{background:var(--brand-gradient)}.cat-btn-solid--danger,.cat-btn-solid--error{background:var(--status-danger)}.cat-btn-solid:hover:not(:disabled){opacity:.9}.cat-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cat-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cat-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.cat-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.cat-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cat-rotate .7s linear infinite}@keyframes cat-rotate{to{transform:rotate(360deg)}}.cat-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.cat-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.cat-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.cat-search-field{position:relative;display:flex;align-items:center}.cat-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.cat-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cat-search-input::placeholder{color:var(--text-muted)}.cat-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cat-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.cat-search-clear svg{font-size:12px}.cat-search-clear:hover{background:var(--status-danger)}.cat-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.cat-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.cat-thead{position:sticky;top:0;z-index:var(--z-sticky)}.cat-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.cat-row{animation:cat-row-in .22s ease both}@keyframes cat-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.cat-row:nth-child(2n){background:#f9f9f9}.cat-row:nth-child(odd){background:#fff}.cat-row:hover,.cat-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.cat-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-col-code{width:160px}.cat-col-name{width:auto}.cat-col-actions{width:104px;text-align:center}.cat-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.cat-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.cat-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.cat-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.cat-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.cat-action-btn svg{font-size:15px}.cat-action-btn:disabled{opacity:.4;pointer-events:none}.cat-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.cat-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.cat-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.cat-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.cat-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.cat-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.cat-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.cat-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.cat-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.cat-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:cat-fade-in .3s ease both}@keyframes cat-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cat-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.cat-state-icon-wrap svg{font-size:28px}.cat-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.cat-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.cat-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.cat-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.cat-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.cat-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:cat-fade-in .3s ease both}.cat-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:cat-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes cat-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.cat-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.cat-sk-text{flex:1;max-width:220px}.cat-sk-text--wide{max-width:320px}.cat-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.cat-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:cat-fade .18s ease both}@keyframes cat-fade{0%{opacity:0}to{opacity:1}}.cat-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:cat-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cat-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cat-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.cat-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.cat-dlg-icon svg{font-size:22px}.cat-dlg-icon--danger,.cat-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.cat-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.cat-dlg-head-text{flex:1;min-width:0}.cat-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.cat-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.cat-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cat-dlg-x svg{font-size:var(--icon-size)}.cat-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.cat-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.cat-dlg-list li+li{margin-top:2px}.cat-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.cat-col-code{width:130px}}@media (max-width: 768px){.cat-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.cat-header{padding:var(--space-3)}.cat-header-left{flex:1 1 100%}.cat-actions{width:100%}.cat-btn-primary{margin-left:auto}.cat-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.cat-btn-primary span{display:none}.cat-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.cat-actions-sep{display:none}.cat-search-grid{grid-template-columns:1fr}.cat-table,.cat-table tbody,.cat-table tr,.cat-table td{display:block;width:100%}.cat-thead{display:none}.cat-table tbody{padding:var(--space-2)}.cat-row,.cat-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.cat-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.cat-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.cat-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.cat-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.cat-col-code{padding-right:76px}.cat-action-btn{width:32px;height:32px}.cat-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.cat-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.cat-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cat-dlg-foot>button{flex:1}}.cc-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:ccFadeIn .18s ease both}@keyframes ccFadeIn{0%{opacity:0}to{opacity:1}}.cc-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:ccSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ccSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cc-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cc-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cc-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cc-header-icon svg{font-size:20px}.cc-header-text{min-width:0}.cc-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cc-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cc-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cc-close-btn svg{font-size:var(--icon-size)}.cc-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cc-close-btn:disabled{opacity:.5;cursor:not-allowed}.cc-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cc-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cc-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cc-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cc-alert-text span{color:var(--text-secondary)}.cc-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cc-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cc-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.cc-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cc-form-group--full{grid-column:1 / -1}.cc-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cc-required{color:var(--status-danger)}.cc-input-wrapper{position:relative;display:flex;align-items:center}.cc-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cc-input-wrapper:focus-within .cc-input-icon{color:var(--brand-primary)}.cc-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cc-input::placeholder{color:var(--text-muted)}.cc-input:hover:not(:disabled){border-color:var(--text-muted)}.cc-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cc-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cc-input-error,.cc-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cc-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cc-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cc-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cc-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cc-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cc-footer-actions{display:flex;gap:var(--space-2)}.cc-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cc-btn:active:not(:disabled){transform:scale(.97)}.cc-btn:disabled{opacity:.55;cursor:not-allowed}.cc-btn-ico{font-size:var(--icon-size)!important}.cc-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cc-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cc-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cc-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cc-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ccSpin .7s linear infinite}@keyframes ccSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cc-backdrop{align-items:flex-end;padding:var(--space-2)}.cc-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cc-header,.cc-body{padding:var(--space-3)}.cc-form{grid-template-columns:1fr;gap:var(--space-3)}.cc-footer{padding:var(--space-3)}.cc-footer-note{display:none}.cc-footer-actions{width:100%}.cc-footer-actions .cc-btn{flex:1;min-width:0}}.uc-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:ucFadeIn .18s ease both}@keyframes ucFadeIn{0%{opacity:0}to{opacity:1}}.uc-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:ucSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ucSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uc-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.uc-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uc-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uc-header-icon svg{font-size:20px}.uc-header-text{min-width:0}.uc-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.uc-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.uc-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.uc-close-btn svg{font-size:var(--icon-size)}.uc-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.uc-close-btn:disabled{opacity:.5;cursor:not-allowed}.uc-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.uc-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.uc-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uc-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.uc-alert-text span{color:var(--text-secondary)}.uc-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.uc-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.uc-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.uc-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.uc-form-group--full{grid-column:1 / -1}.uc-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uc-required{color:var(--status-danger)}.uc-input-wrapper{position:relative;display:flex;align-items:center}.uc-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.uc-input-wrapper:focus-within .uc-input-icon{color:var(--brand-primary)}.uc-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uc-input::placeholder{color:var(--text-muted)}.uc-input:hover:not(:disabled){border-color:var(--text-muted)}.uc-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uc-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.uc-input-error,.uc-input-error:hover:not(:disabled){border-color:var(--status-danger)}.uc-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.uc-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.uc-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.uc-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.uc-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uc-footer-actions{display:flex;gap:var(--space-2)}.uc-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.uc-btn:active:not(:disabled){transform:scale(.97)}.uc-btn:disabled{opacity:.55;cursor:not-allowed}.uc-btn-ico{font-size:var(--icon-size)!important}.uc-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uc-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uc-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.uc-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.uc-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ucSpin .7s linear infinite}@keyframes ucSpin{to{transform:rotate(360deg)}}.uc-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.uc-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uc-current-ico{font-size:13px!important;flex-shrink:0}.uc-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:160px;font-size:var(--fs-sm);color:var(--text-secondary)}.uc-loading .uc-spin{color:var(--brand-primary);width:18px;height:18px}@media (max-width: 600px){.uc-backdrop{align-items:flex-end;padding:var(--space-2)}.uc-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uc-header,.uc-body{padding:var(--space-3)}.uc-form{grid-template-columns:1fr;gap:var(--space-3)}.uc-footer{padding:var(--space-3)}.uc-footer-note{display:none}.uc-footer-actions{width:100%}.uc-footer-actions .uc-btn{flex:1;min-width:0}}.grd-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.grd-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.grd-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.grd-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.grd-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.grd-header-text{min-width:0}.grd-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.grd-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grd-ico-md{font-size:20px!important}.grd-ico{font-size:var(--icon-size)!important}.grd-ico-sm{font-size:var(--icon-size-sm)!important}.grd-ico-xs{font-size:14px!important}.grd-ico--spin{animation:grd-rotate .8s linear infinite}.grd-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.grd-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.grd-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.grd-btn-icon:hover:not(:disabled):not(.grd-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.grd-btn-icon:disabled,.grd-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.grd-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.grd-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.grd-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.grd-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.grd-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.grd-btn-primary:disabled{opacity:.5;cursor:not-allowed}.grd-btn-solid,.grd-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.grd-btn-solid:active,.grd-btn-plain:active{transform:scale(.97)}.grd-btn-solid:disabled,.grd-btn-plain:disabled{opacity:.55;cursor:not-allowed}.grd-btn-solid{border:none;color:var(--text-on-brand)}.grd-btn-solid--primary{background:var(--brand-gradient)}.grd-btn-solid--danger,.grd-btn-solid--error{background:var(--status-danger)}.grd-btn-solid:hover:not(:disabled){opacity:.9}.grd-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.grd-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.grd-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.grd-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.grd-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:grd-rotate .7s linear infinite}@keyframes grd-rotate{to{transform:rotate(360deg)}}.grd-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.grd-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.grd-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.grd-search-field{position:relative;display:flex;align-items:center}.grd-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.grd-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.grd-search-input::placeholder{color:var(--text-muted)}.grd-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.grd-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.grd-search-clear svg{font-size:12px}.grd-search-clear:hover{background:var(--status-danger)}.grd-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.grd-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.grd-thead{position:sticky;top:0;z-index:var(--z-sticky)}.grd-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.grd-row{animation:grd-row-in .22s ease both}@keyframes grd-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.grd-row:nth-child(2n){background:#f9f9f9}.grd-row:nth-child(odd){background:#fff}.grd-row:hover,.grd-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.grd-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grd-col-code{width:160px}.grd-col-name{width:auto}.grd-col-actions{width:104px;text-align:center}.grd-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.grd-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.grd-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.grd-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.grd-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.grd-action-btn svg{font-size:15px}.grd-action-btn:disabled{opacity:.4;pointer-events:none}.grd-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.grd-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.grd-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.grd-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.grd-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.grd-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.grd-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.grd-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.grd-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.grd-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:grd-fade-in .3s ease both}@keyframes grd-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.grd-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.grd-state-icon-wrap svg{font-size:28px}.grd-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.grd-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.grd-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.grd-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.grd-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.grd-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:grd-fade-in .3s ease both}.grd-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:grd-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes grd-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.grd-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.grd-sk-text{flex:1;max-width:220px}.grd-sk-text--wide{max-width:320px}.grd-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.grd-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:grd-fade .18s ease both}@keyframes grd-fade{0%{opacity:0}to{opacity:1}}.grd-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:grd-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes grd-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.grd-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.grd-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.grd-dlg-icon svg{font-size:22px}.grd-dlg-icon--danger,.grd-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.grd-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.grd-dlg-head-text{flex:1;min-width:0}.grd-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.grd-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.grd-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.grd-dlg-x svg{font-size:var(--icon-size)}.grd-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.grd-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.grd-dlg-list li+li{margin-top:2px}.grd-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.grd-col-code{width:130px}}@media (max-width: 768px){.grd-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.grd-header{padding:var(--space-3)}.grd-header-left{flex:1 1 100%}.grd-actions{width:100%}.grd-btn-primary{margin-left:auto}.grd-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.grd-btn-primary span{display:none}.grd-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.grd-actions-sep{display:none}.grd-search-grid{grid-template-columns:1fr}.grd-table,.grd-table tbody,.grd-table tr,.grd-table td{display:block;width:100%}.grd-thead{display:none}.grd-table tbody{padding:var(--space-2)}.grd-row,.grd-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.grd-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.grd-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.grd-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.grd-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.grd-col-code{padding-right:76px}.grd-action-btn{width:32px;height:32px}.grd-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.grd-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.grd-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.grd-dlg-foot>button{flex:1}}.cg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:cgFadeIn .18s ease both}@keyframes cgFadeIn{0%{opacity:0}to{opacity:1}}.cg-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:cgSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cgSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cg-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cg-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cg-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cg-header-icon svg{font-size:20px}.cg-header-text{min-width:0}.cg-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cg-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cg-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cg-close-btn svg{font-size:var(--icon-size)}.cg-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cg-close-btn:disabled{opacity:.5;cursor:not-allowed}.cg-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cg-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cg-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cg-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cg-alert-text span{color:var(--text-secondary)}.cg-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cg-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cg-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.cg-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cg-form-group--full{grid-column:1 / -1}.cg-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cg-required{color:var(--status-danger)}.cg-input-wrapper{position:relative;display:flex;align-items:center}.cg-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cg-input-wrapper:focus-within .cg-input-icon{color:var(--brand-primary)}.cg-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cg-input::placeholder{color:var(--text-muted)}.cg-input:hover:not(:disabled){border-color:var(--text-muted)}.cg-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cg-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cg-input-error,.cg-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cg-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cg-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cg-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cg-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cg-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cg-footer-actions{display:flex;gap:var(--space-2)}.cg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cg-btn:active:not(:disabled){transform:scale(.97)}.cg-btn:disabled{opacity:.55;cursor:not-allowed}.cg-btn-ico{font-size:var(--icon-size)!important}.cg-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cg-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cg-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cg-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cg-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cgSpin .7s linear infinite}@keyframes cgSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cg-backdrop{align-items:flex-end;padding:var(--space-2)}.cg-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cg-header,.cg-body{padding:var(--space-3)}.cg-form{grid-template-columns:1fr;gap:var(--space-3)}.cg-footer{padding:var(--space-3)}.cg-footer-note{display:none}.cg-footer-actions{width:100%}.cg-footer-actions .cg-btn{flex:1;min-width:0}}.ug-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:ugFadeIn .18s ease both}@keyframes ugFadeIn{0%{opacity:0}to{opacity:1}}.ug-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:ugSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ugSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ug-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.ug-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ug-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ug-header-icon svg{font-size:20px}.ug-header-text{min-width:0}.ug-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.ug-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.ug-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.ug-close-btn svg{font-size:var(--icon-size)}.ug-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.ug-close-btn:disabled{opacity:.5;cursor:not-allowed}.ug-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.ug-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.ug-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.ug-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.ug-alert-text span{color:var(--text-secondary)}.ug-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.ug-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.ug-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.ug-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.ug-form-group--full{grid-column:1 / -1}.ug-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.ug-required{color:var(--status-danger)}.ug-input-wrapper{position:relative;display:flex;align-items:center}.ug-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.ug-input-wrapper:focus-within .ug-input-icon{color:var(--brand-primary)}.ug-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ug-input::placeholder{color:var(--text-muted)}.ug-input:hover:not(:disabled){border-color:var(--text-muted)}.ug-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ug-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.ug-input-error,.ug-input-error:hover:not(:disabled){border-color:var(--status-danger)}.ug-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.ug-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.ug-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.ug-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.ug-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.ug-footer-actions{display:flex;gap:var(--space-2)}.ug-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.ug-btn:active:not(:disabled){transform:scale(.97)}.ug-btn:disabled{opacity:.55;cursor:not-allowed}.ug-btn-ico{font-size:var(--icon-size)!important}.ug-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.ug-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ug-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.ug-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ug-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ugSpin .7s linear infinite}@keyframes ugSpin{to{transform:rotate(360deg)}}.ug-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.ug-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ug-current-ico{font-size:13px!important;flex-shrink:0}.ug-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:160px;font-size:var(--fs-sm);color:var(--text-secondary)}.ug-loading .ug-spin{color:var(--brand-primary);width:18px;height:18px}@media (max-width: 600px){.ug-backdrop{align-items:flex-end;padding:var(--space-2)}.ug-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.ug-header,.ug-body{padding:var(--space-3)}.ug-form{grid-template-columns:1fr;gap:var(--space-3)}.ug-footer{padding:var(--space-3)}.ug-footer-note{display:none}.ug-footer-actions{width:100%}.ug-footer-actions .ug-btn{flex:1;min-width:0}}.sft-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.sft-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.sft-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.sft-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.sft-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.sft-header-ico svg{font-size:20px}.sft-header-text{min-width:0}.sft-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.sft-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.sft-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sft-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.sft-hbtn svg{font-size:var(--icon-size-sm)}.sft-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.sft-hbtn:disabled{opacity:.45;cursor:not-allowed}.sft-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.sft-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.sft-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.sft-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.sft-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.sft-search input:focus,.sft-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.sft-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.sft-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sft-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.sft-search button svg{font-size:15px}.sft-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.sft-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.sft-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.sft-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.sft-chip svg{font-size:14px;color:var(--text-muted)}.sft-chip--muted{color:var(--text-muted)}.sft-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.sft-chip--warn b{color:var(--status-warning)}.sft-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sft-table-wrap{flex:1;min-height:0;overflow:auto}.sft-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.sft-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.sft-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.sft-table tbody tr:nth-child(odd) td{background:#fff}.sft-table tbody tr:nth-child(2n) td{background:#f9f9f9}.sft-table tbody tr:hover td{background:var(--surface-hover)}.sft-num{text-align:right!important}.sft-col-act{width:1%;white-space:nowrap;text-align:right!important}.sft-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.sft-name,.sft-strong{font-weight:var(--fw-semibold)}.sft-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.sft-muted{color:var(--text-muted)}.sft-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.sft-tag svg{font-size:13px}.sft-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.sft-pill--info{background:var(--status-info-light);color:var(--status-info)}.sft-pill--ok{background:var(--status-success-light);color:var(--status-success)}.sft-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.sft-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.sft-row-actions{display:inline-flex;gap:4px}.sft-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.sft-act svg{font-size:16px}.sft-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.sft-act--danger{color:var(--status-danger)}.sft-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.sft-act:disabled{opacity:.4;cursor:not-allowed}.sft-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.sft-footer-hint{color:var(--text-muted)}.sft-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.sft-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:sft-shimmer 1.4s infinite linear}.sft-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.sft-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.sft-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sft-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.sft-state-ico svg{font-size:24px}.sft-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.sft-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.sft-btn svg{font-size:var(--icon-size-sm)}.sft-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sft-btn:disabled{opacity:.5;cursor:not-allowed}.sft-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.sft-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.sft-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.sft-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.sft-btn--plain{background:var(--surface-card)}.sft-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.sft-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.sft-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.sft-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.sft-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.sft-dlg-head>div{flex:1;min-width:0}.sft-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.sft-dlg-ico svg{font-size:19px}.sft-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sft-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sft-dlg-x svg{font-size:18px}.sft-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sft-dlg-body p{margin:0}.sft-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.sft-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.sft-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:sft-rotate .7s linear infinite}.sft-spin--light{color:var(--text-on-brand)}.sft-rotating{animation:sft-rotate .8s linear infinite}@keyframes sft-rotate{to{transform:rotate(360deg)}}@keyframes sft-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.sft-chips{margin-left:0;width:100%}.sft-search{max-width:none}}@media (max-width: 720px){.sft-card{height:auto;min-height:0}.sft-header,.sft-toolbar,.sft-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.sft-hbtn--solid span{display:none}.sft-table-wrap{overflow:visible}.sft-table thead{display:none}.sft-table,.sft-table tbody,.sft-table tr,.sft-table td{display:block;width:100%}.sft-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.sft-table tbody tr:nth-child(odd) td,.sft-table tbody tr:nth-child(2n) td{background:transparent}.sft-table td{border:none;padding:3px var(--space-3);text-align:left!important}.sft-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.sft-col-act{width:auto}}.sfm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.sfm-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.sfm-sheet--md{max-width:var(--modal-width-md)}.sfm-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.sfm-header-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.sfm-header-ico svg{font-size:19px}.sfm-header-text{flex:1;min-width:0}.sfm-header-text h2{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-on-brand)}.sfm-header-text p{margin:2px 0 0;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.sfm-x{width:30px;height:30px;padding:0;flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sfm-x:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.sfm-x svg{font-size:18px}.sfm-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.sfm-section h3{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-primary)}.sfm-section h3 span{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-primary-dark);color:var(--text-on-brand);font-size:11px}.sfm-section h3 em{font-style:normal;font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.sfm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4)}.sfm-full{grid-column:1 / -1}.sfm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.sfm-field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.sfm-input{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}textarea.sfm-input{height:auto;min-height:72px;padding:var(--space-2) var(--space-3);resize:vertical}.sfm-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.sfm-input:disabled{background:var(--surface-page);color:var(--text-muted)}.sfm-field--err .sfm-input{border-color:var(--status-danger)}.sfm-hint{font-size:11px;color:var(--text-muted);line-height:var(--lh-base)}.sfm-err{font-size:11px;color:var(--status-danger);font-weight:var(--fw-medium)}.sfm-summary{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.sfm-summary>svg{font-size:18px;color:var(--brand-primary);flex-shrink:0;margin-top:1px}.sfm-summary ul{margin:0;padding:0 0 0 var(--space-4);display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sfm-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.sfm-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.sfm-btn{height:var(--control-height-sm);padding:0 var(--space-4);display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.sfm-btn svg{font-size:var(--icon-size-sm)}.sfm-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sfm-btn:disabled{opacity:.5;cursor:not-allowed}.sfm-btn--primary{background:var(--brand-gradient);border-color:transparent;color:var(--text-on-brand)}.sfm-btn--primary:hover:not(:disabled){background:var(--brand-gradient);color:var(--text-on-brand);opacity:.92}.sfm-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:sfm-rotate .7s linear infinite}@keyframes sfm-rotate{to{transform:rotate(360deg)}}@media (max-width: 640px){.sfm-backdrop{padding:var(--space-2);align-items:flex-end}.sfm-sheet{max-height:calc(100vh - var(--space-4));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.sfm-grid{grid-template-columns:minmax(0,1fr)}.sfm-body{padding:var(--space-3)}}.ass-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ass-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.ass-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.ass-head-icon svg{font-size:22px}.ass-head-text{flex:1;min-width:0}.ass-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.ass-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ass-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.ass-head-btn svg{font-size:var(--icon-size-sm)}.ass-head-btn:hover{box-shadow:var(--shadow-md)}.ass-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.ass-split{display:grid;grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:var(--section-gap);height:calc(100vh - var(--header-height) - 190px);min-height:520px}.ass-list-pane,.ass-detail-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}.ass-list-tools{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border-color)}.ass-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.ass-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ass-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ass-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ass-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ass-search button svg{font-size:12px}.ass-groups{flex:1;min-height:0;overflow-y:auto;margin:0;padding:var(--space-2);list-style:none;display:flex;flex-direction:column;gap:6px}.ass-group{width:100%;display:flex;flex-direction:column;gap:6px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);color:inherit;font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.ass-group:hover{background:var(--surface-hover)}.ass-group--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2);box-shadow:inset 3px 0 0 var(--brand-primary)}.ass-group-top{display:flex;align-items:center;gap:var(--space-2);min-width:0}.ass-group-name{flex:1;min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ass-group-meta{display:flex;align-items:center;gap:var(--space-3);font-size:var(--fs-xs);color:var(--text-muted)}.ass-group-meta span{display:inline-flex;align-items:center;gap:3px}.ass-group-meta svg{font-size:13px}.ass-warn-dot{margin-left:auto;color:var(--status-warning)}.ass-code{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);letter-spacing:.3px;line-height:18px}.ass-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.ass-daybar{position:relative;height:22px;border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color);overflow:hidden}.ass-daybar--compact{height:8px;border-radius:var(--radius-pill)}.ass-daybar-tick{position:absolute;top:0;bottom:0;width:1px;background:var(--border-color)}.ass-daybar-seg{position:absolute;top:3px;bottom:3px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden}.ass-daybar--compact .ass-daybar-seg{top:0;bottom:0;border-radius:0}.ass-daybar-seg em{font-size:10px;font-style:normal;font-weight:var(--fw-bold);color:var(--text-on-brand);white-space:nowrap}.ass-daybar-seg--shift{top:8px;bottom:8px;background:var(--border-strong)}.ass-tone-0{background:var(--brand-primary);color:var(--brand-primary)}.ass-tone-1{background:var(--status-info);color:var(--status-info)}.ass-tone-2{background:var(--status-success);color:var(--status-success)}.ass-tone-3{background:var(--status-warning);color:var(--status-warning)}.ass-daybar-seg.ass-tone-0,.ass-daybar-seg.ass-tone-1,.ass-daybar-seg.ass-tone-2,.ass-daybar-seg.ass-tone-3{opacity:.85}.ass-scale{display:flex;justify-content:space-between;margin-top:2px;font-size:10px;color:var(--text-muted);font-variant-numeric:tabular-nums}.ass-back{display:none}.ass-detail{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.ass-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.ass-detail-title{min-width:0}.ass-detail-title h3{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-lg);font-weight:var(--fw-bold)}.ass-detail-title p{margin:2px 0 0;display:flex;align-items:center;gap:4px;font-size:var(--fs-sm);color:var(--text-secondary)}.ass-detail-title p svg{font-size:var(--icon-size-sm);color:var(--text-muted)}.ass-detail-actions{display:flex;gap:var(--space-2)}.ass-coverage{padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.ass-coverage-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}.ass-coverage-head h4{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-bold)}.ass-coverage-head h4 svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.ass-coverage-head small{font-size:var(--fs-xs);color:var(--text-muted)}.ass-coverage .ass-daybar{background:var(--surface-card);height:26px}.ass-note{margin:var(--space-2) 0 0;display:flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-secondary)}.ass-note svg{font-size:var(--icon-size-sm);color:var(--status-info)}.ass-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.ass-section-head h4{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ass-section-head h4 span{padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);line-height:18px}.ass-shifts{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.ass-shift{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.ass-shift-top{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ass-shift-code{min-width:52px;padding:2px 8px;flex-shrink:0;border-radius:var(--radius-md);color:var(--text-on-brand)!important;font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.ass-shift-main{flex:1;min-width:0;display:flex;flex-direction:column}.ass-shift-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ass-shift-meta{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.ass-window{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.ass-window small{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.ass-window strong{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--brand-primary-dark)}.ass-shift-actions{display:inline-flex;gap:2px;flex-shrink:0}.ass-legend{margin:0;display:flex;gap:var(--space-4);font-size:var(--fs-xs);color:var(--text-muted)}.ass-legend span{display:inline-flex;align-items:center;gap:4px}.ass-legend i{display:inline-block;width:18px;border-radius:var(--radius-sm)}.ass-legend-shift{height:6px;background:var(--border-strong)}.ass-legend-window{height:12px;background:var(--brand-primary);opacity:.85}.ass-confirm{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--status-danger)}.ass-empty-warn{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--status-warning-light);border:1px solid rgba(var(--status-warning-rgb),.3);color:var(--status-warning)}.ass-empty-warn svg{flex-shrink:0;font-size:var(--icon-size)}.ass-empty-warn p{margin:0;font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.ass-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.ass-btn svg{font-size:var(--icon-size-sm)}.ass-btn:disabled{opacity:.55;cursor:not-allowed}.ass-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.ass-btn--xs{height:24px;padding:0 var(--space-2);font-size:var(--fs-xs)}.ass-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.ass-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ass-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.ass-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ass-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.ass-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.ass-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.ass-icon-btn{width:30px;height:30px;flex-shrink:0;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ass-list-tools .ass-icon-btn{border-color:var(--border-strong);background:var(--surface-card)}.ass-icon-btn svg{font-size:var(--icon-size-sm)}.ass-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary)}.ass-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger)}.ass-icon-btn:disabled{opacity:.45;cursor:not-allowed}.ass-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.ass-rotating{animation:assSpin .8s linear infinite}.ass-spin{width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:assSpin .7s linear infinite}@keyframes assSpin{to{transform:rotate(360deg)}}.ass-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.ass-state--compact{padding:var(--space-5) var(--space-3)}.ass-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.ass-state-ico svg{font-size:26px}.ass-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.ass-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ass-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ass-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) var(--space-4)}.ass-sk{height:56px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:assShimmer 1.4s infinite linear}@keyframes assShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.ass-split{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.ass-list-pane{height:calc(100vh - var(--header-height) - 170px);min-height:420px}.ass-detail-pane,.ass-split--detail .ass-list-pane{display:none}.ass-split--detail .ass-detail-pane{display:flex;min-height:480px}.ass-back{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;margin:var(--space-2) var(--space-3) 0;padding:4px var(--space-2);border:none;border-radius:var(--radius-md);background:var(--surface-page);color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.ass-back svg{font-size:var(--icon-size-sm)}}@media (max-width: 600px){.ass-head{padding:var(--space-3)}.ass-head-text p,.ass-head-btn span{display:none}.ass-detail{padding:var(--space-3)}.ass-shift-top{flex-wrap:wrap}.ass-window{align-items:flex-start}.ass-section-head{flex-wrap:wrap}}.ass-group-codes{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.ass-mini-code{padding:0 6px;border-radius:var(--radius-sm);color:var(--text-on-brand)!important;font-size:10.5px;font-weight:var(--fw-bold);line-height:18px}.ass-detail>.ass-note{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color);align-items:flex-start;line-height:var(--lh-base)}.ass-table-wrap{border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow-x:auto}.ass-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.ass-table th{padding:var(--space-2) var(--space-3);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);background:var(--surface-page);border-bottom:1px solid var(--border-color);white-space:nowrap}.ass-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);vertical-align:middle;font-variant-numeric:tabular-nums}.ass-table tbody tr:nth-child(odd) td{background:#fff}.ass-table tbody tr:nth-child(2n) td{background:#f9f9f9}.ass-table tbody tr:last-child td{border-bottom:none}.ass-table td .ass-shift-code{margin-right:var(--space-2);display:inline-block}.ass-table td .ass-shift-name{display:inline}.ass-sub{display:flex;align-items:center;gap:3px;margin-top:2px;font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.ass-sub svg{font-size:13px}.ass-dur{font-size:var(--fs-sm);color:var(--brand-primary-dark)}.ass-th-act,.ass-td-act{width:1%;white-space:nowrap;text-align:right}@media (max-width: 720px){.ass-table thead{display:none}.ass-table,.ass-table tbody,.ass-table tr,.ass-table td{display:block;width:100%}.ass-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.ass-table td{border:none;padding:4px var(--space-3)}.ass-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.ass-td-act{text-align:left}}.asgm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.asgm-sheet{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;margin:0;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:asgmUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes asgmUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.asgm-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand)}.asgm-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.asgm-header-icon svg{font-size:20px}.asgm-header-text{flex:1;min-width:0}.asgm-header-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.asgm-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.asgm-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.asgm-close svg{font-size:var(--icon-size)}.asgm-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);overflow-y:auto}.asgm-row{display:grid;grid-template-columns:160px minmax(0,1fr);gap:var(--space-3)}.asgm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.asgm-field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.asgm-field label b{color:var(--status-danger)}.asgm-field small{font-size:var(--fs-xs);color:var(--text-muted)}.asgm-input{width:100%;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}.asgm-input--mono{letter-spacing:.5px;font-weight:var(--fw-semibold)}.asgm-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.asgm-err{color:var(--status-danger)!important}.asgm-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.asgm-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.asgm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.asgm-btn svg{font-size:var(--icon-size-sm)}.asgm-btn:disabled{opacity:.55;cursor:not-allowed}.asgm-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.asgm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.asgm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.asgm-btn--plain:hover:not(:disabled){background:var(--surface-hover)}.asgm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:asgmSpin .7s linear infinite}@keyframes asgmSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.asgm-backdrop{padding:0;align-items:flex-end}.asgm-sheet{max-width:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.asgm-header-text p{display:none}.asgm-row{grid-template-columns:minmax(0,1fr)}.asgm-footer .asgm-btn{flex:1}}.ast-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.ast-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:astUp .22s cubic-bezier(.34,1.3,.64,1) both}.ast-sheet--wide{max-width:var(--modal-width-lg);height:min(620px,calc(100vh - 2 * var(--space-4)))}@keyframes astUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.ast-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.ast-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.ast-header-icon svg{font-size:20px}.ast-header-text{flex:1;min-width:0}.ast-header-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ast-header-text h3 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.85)}.ast-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ast-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ast-close svg{font-size:var(--icon-size)}.ast-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4)}.ast-body--split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);padding:0;overflow:hidden}.ast-pane{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;min-height:0}.ast-body--split .ast-pane{padding:var(--space-3) var(--space-4);overflow-y:auto}.ast-pane--list{border-right:1px solid var(--border-color);background:var(--surface-page)}.ast-step{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.ast-step>span{width:22px;height:22px;border-radius:50%;background:var(--brand-gradient);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs)}.ast-search{position:relative;display:flex;align-items:center}.ast-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ast-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ast-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ast-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ast-search button svg{font-size:12px}.ast-list{flex:1;min-height:0;overflow-y:auto;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.ast-item{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);color:inherit;font-family:inherit;text-align:left;cursor:pointer}.ast-item:hover:not(:disabled){background:var(--surface-hover)}.ast-item--on{background:var(--brand-primary-light);border-color:var(--brand-primary)}.ast-item-radio{flex-shrink:0;font-size:18px!important;color:var(--text-muted)}.ast-item--on .ast-item-radio{color:var(--brand-primary)}.ast-item-code{min-width:48px;padding:1px 6px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center}.ast-item-main{flex:1;min-width:0;display:flex;flex-direction:column}.ast-item-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ast-item-meta{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.ast-picked{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-sm)}.ast-picked strong{color:var(--brand-primary-dark)}.ast-picked span{color:var(--text-secondary);font-size:var(--fs-xs)}.ast-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.ast-field{display:flex;flex-direction:column;gap:4px}.ast-field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.ast-input{width:100%;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;box-sizing:border-box}.ast-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ast-hint{margin:-6px 0 0;min-height:16px;display:flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-muted)}.ast-hint svg{font-size:var(--icon-size-sm)}.ast-hint--err{color:var(--status-danger);font-weight:var(--fw-semibold)}.ast-hint--warn{margin-top:0;color:var(--status-warning)}.ast-preview{padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.ast-bar{position:relative;height:30px;border-radius:var(--radius-md);background:var(--surface-card);border:1px solid var(--border-color);overflow:hidden}.ast-bar-tick{position:absolute;top:0;bottom:0;width:1px;background:var(--border-color)}.ast-bar-seg{position:absolute;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--radius-sm)}.ast-bar-seg em{font-size:10px;font-style:normal;font-weight:var(--fw-bold);color:var(--text-secondary);white-space:nowrap}.ast-bar-seg--other{top:4px;bottom:4px;background:var(--brand-secondary-light);border:1px dashed var(--border-strong)}.ast-bar-seg--shift{top:12px;bottom:12px;background:var(--border-strong)}.ast-bar-seg--window{top:4px;bottom:4px;background:rgba(var(--brand-primary-rgb),.55);border:1px solid var(--brand-primary)}.ast-bar-seg--clash{background:rgba(var(--status-danger-rgb),.45);border-color:var(--status-danger)}.ast-scale{display:flex;justify-content:space-between;margin-top:2px;font-size:10px;color:var(--text-muted);font-variant-numeric:tabular-nums}.ast-legend{margin:var(--space-2) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--fs-xs);color:var(--text-muted)}.ast-legend span{display:inline-flex;align-items:center;gap:4px}.ast-legend i{display:inline-block;width:18px;border-radius:var(--radius-sm)}.ast-legend-window{height:12px;background:rgba(var(--brand-primary-rgb),.55);border:1px solid var(--brand-primary)}.ast-legend-shift{height:6px;background:var(--border-strong)}.ast-legend-other{height:12px;background:var(--brand-secondary-light);border:1px dashed var(--border-strong)}.ast-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.ast-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-3);text-align:center}.ast-state p{margin:0;max-width:340px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ast-state--soft{flex:1;border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}.ast-state-ico{font-size:30px!important;color:var(--brand-primary)}.ast-state-ico--error{color:var(--status-danger)}.ast-sk{height:40px;flex-shrink:0;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:astShimmer 1.4s infinite linear}@keyframes astShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ast-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.ast-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.ast-btn svg{font-size:var(--icon-size-sm)}.ast-btn:disabled{opacity:.55;cursor:not-allowed}.ast-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.ast-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ast-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.ast-btn--plain:hover:not(:disabled){background:var(--surface-hover)}.ast-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:astSpin .7s linear infinite}@keyframes astSpin{to{transform:rotate(360deg)}}@media (max-width: 860px){.ast-sheet--wide{height:calc(100vh - 2 * var(--space-4))}.ast-body--split{display:flex;flex-direction:column;overflow-y:auto}.ast-body--split .ast-pane{overflow:visible}.ast-pane--list{border-right:none;border-bottom:1px solid var(--border-color)}.ast-list{flex:none;max-height:240px}}@media (max-width: 600px){.ast-backdrop{padding:0;align-items:flex-end}.ast-sheet,.ast-sheet--wide{max-width:none;max-height:100vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.ast-sheet--wide{height:100vh;border-radius:0}.ast-header-text p{display:none}.ast-body,.ast-body--split .ast-pane{padding:var(--space-3)}.ast-footer .ast-btn{flex:1}}.ast-field label small{font-weight:var(--fw-regular);color:var(--text-muted)}.ast-effect{display:flex;flex-direction:column;gap:6px;margin-top:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.ast-effect-row{margin:0;display:flex;align-items:flex-start;gap:6px;font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.ast-effect-row svg{font-size:17px;margin-top:1px;color:var(--brand-primary);flex-shrink:0}.ast-effect-row small{color:var(--text-muted)}.srs-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.srs-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.srs-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.srs-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.srs-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.srs-header-ico svg{font-size:20px}.srs-header-text{min-width:0}.srs-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.srs-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.srs-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.srs-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.srs-hbtn svg{font-size:var(--icon-size-sm)}.srs-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.srs-hbtn:disabled{opacity:.45;cursor:not-allowed}.srs-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.srs-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.srs-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.srs-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.srs-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.srs-search input:focus,.srs-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.srs-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.srs-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.srs-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.srs-search button svg{font-size:15px}.srs-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.srs-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.srs-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.srs-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.srs-chip svg{font-size:14px;color:var(--text-muted)}.srs-chip--muted{color:var(--text-muted)}.srs-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.srs-chip--warn b{color:var(--status-warning)}.srs-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.srs-table-wrap{flex:1;min-height:0;overflow:auto}.srs-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.srs-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.srs-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.srs-table tbody tr:nth-child(odd) td{background:#fff}.srs-table tbody tr:nth-child(2n) td{background:#f9f9f9}.srs-table tbody tr:hover td{background:var(--surface-hover)}.srs-num{text-align:right!important}.srs-col-act{width:1%;white-space:nowrap;text-align:right!important}.srs-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.srs-name,.srs-strong{font-weight:var(--fw-semibold)}.srs-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.srs-muted{color:var(--text-muted)}.srs-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.srs-tag svg{font-size:13px}.srs-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.srs-pill--info{background:var(--status-info-light);color:var(--status-info)}.srs-pill--ok{background:var(--status-success-light);color:var(--status-success)}.srs-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.srs-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.srs-row-actions{display:inline-flex;gap:4px}.srs-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.srs-act svg{font-size:16px}.srs-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.srs-act--danger{color:var(--status-danger)}.srs-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.srs-act:disabled{opacity:.4;cursor:not-allowed}.srs-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.srs-footer-hint{color:var(--text-muted)}.srs-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.srs-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:srs-shimmer 1.4s infinite linear}.srs-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.srs-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.srs-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.srs-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.srs-state-ico svg{font-size:24px}.srs-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.srs-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.srs-btn svg{font-size:var(--icon-size-sm)}.srs-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.srs-btn:disabled{opacity:.5;cursor:not-allowed}.srs-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.srs-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.srs-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.srs-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.srs-btn--plain{background:var(--surface-card)}.srs-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.srs-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.srs-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.srs-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.srs-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.srs-dlg-head>div{flex:1;min-width:0}.srs-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.srs-dlg-ico svg{font-size:19px}.srs-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.srs-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.srs-dlg-x svg{font-size:18px}.srs-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.srs-dlg-body p{margin:0}.srs-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.srs-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.srs-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:srs-rotate .7s linear infinite}.srs-spin--light{color:var(--text-on-brand)}.srs-rotating{animation:srs-rotate .8s linear infinite}@keyframes srs-rotate{to{transform:rotate(360deg)}}@keyframes srs-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.srs-chips{margin-left:0;width:100%}.srs-search{max-width:none}}@media (max-width: 720px){.srs-card{height:auto;min-height:0}.srs-header,.srs-toolbar,.srs-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.srs-hbtn--solid span{display:none}.srs-table-wrap{overflow:visible}.srs-table thead{display:none}.srs-table,.srs-table tbody,.srs-table tr,.srs-table td{display:block;width:100%}.srs-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.srs-table tbody tr:nth-child(odd) td,.srs-table tbody tr:nth-child(2n) td{background:transparent}.srs-table td{border:none;padding:3px var(--space-3);text-align:left!important}.srs-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.srs-col-act{width:auto}}.srs-field{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.srs-field>span{display:inline-flex;align-items:center;gap:3px}.srs-field>span svg{font-size:15px;color:var(--brand-primary)}.srs-brush{margin-left:auto}.srs-brush .srs-select{max-width:260px;font-weight:var(--fw-semibold);border-color:var(--brand-primary)}.srs-btn--on{background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.45);color:var(--brand-primary-dark)}.srs-filters{display:flex;align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.srs-filters>*{min-width:170px;flex:1 1 170px;max-width:240px}.srs-filters>.srs-link{flex:0 0 auto;min-width:0}.srs-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap;align-self:center}.srs-link:hover{text-decoration:underline}.srs-dlg-head--brand{background:var(--brand-gradient);border-bottom:none}.srs-dlg-head--brand h3{color:var(--text-on-brand)}.srs-dlg-head--brand p{color:rgba(var(--text-on-brand-rgb),.86)}.srs-dlg-ico--brand{background:rgba(var(--text-on-brand-rgb),.18);color:var(--text-on-brand)}.srs-dlg-x--brand{color:var(--text-on-brand)}.srs-dlg-x--brand:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.2);color:var(--text-on-brand)}.srs-dlg-body p+p{margin-top:var(--space-2)}.srs-grid-wrap{flex:1;min-height:0;overflow:auto}.srs-grid-wrap--busy{opacity:.6;transition:opacity var(--transition-fast)}.srs-grid{border-collapse:separate;border-spacing:0;font-size:var(--fs-xs)}.srs-grid thead th{position:sticky;top:0;z-index:2;background:var(--surface-page);border-bottom:1px solid var(--border-color)}.srs-emp-col{position:sticky;left:0;z-index:1;min-width:220px;max-width:260px;padding:4px var(--space-3);text-align:left;background:var(--surface-card);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);font-weight:var(--fw-regular)}.srs-grid thead .srs-emp-col{z-index:3;background:var(--surface-page);font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.srs-grid tbody tr:nth-child(2n) .srs-emp-col{background:#f9f9f9}.srs-emp{display:flex;align-items:center;gap:6px}.srs-emp-text{flex:1;min-width:0;display:flex;flex-direction:column}.srs-emp-text b{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.srs-emp-text small{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.srs-rowfill{width:24px;height:24px;flex-shrink:0;padding:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.srs-rowfill svg{font-size:15px}.srs-rowfill:hover{background:var(--brand-primary-light)}.srs-day{padding:0;min-width:44px}.srs-day button{width:100%;padding:4px 2px;border:none;background:transparent;color:var(--text-secondary);font-family:inherit;display:flex;flex-direction:column;align-items:center;cursor:pointer;line-height:1.15}.srs-day button span{font-size:10px;text-transform:uppercase;color:var(--text-muted)}.srs-day button b{font-size:var(--fs-sm);color:var(--text-primary)}.srs-day button:hover{background:var(--brand-primary-light)}.srs-day--sun button span,.srs-day--sun button b{color:var(--status-danger)}.srs-day--today{box-shadow:inset 0 -2px 0 var(--brand-primary)}.srs-cell{padding:2px;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);text-align:center}.srs-grid tbody tr:nth-child(odd) .srs-cell{background:#fff}.srs-grid tbody tr:nth-child(2n) .srs-cell{background:#f9f9f9}.srs-cell button{position:relative;width:100%;min-width:40px;height:26px;padding:0 2px;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-family:inherit;font-size:11.5px;font-weight:var(--fw-bold);cursor:pointer}.srs-cell button:hover{border-color:var(--brand-primary)}.srs-cell--wo button{background:var(--surface-hover);color:var(--text-muted)}.srs-cell--empty button{background:transparent;color:var(--text-muted);font-weight:var(--fw-regular)}.srs-cell--changed button{background:var(--status-warning-light);color:var(--status-warning);border-color:var(--status-warning)}.srs-dot{position:absolute;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--status-info)}.srs-footer-info{display:inline-flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.srs-pager{display:inline-flex;align-items:center;gap:6px}.srs-pager .srs-act{width:26px;height:26px}.srs-footer-act{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.srs-pending{color:var(--status-warning);font-weight:var(--fw-semibold)}@media (max-width: 720px){.srs-brush{margin-left:0;width:100%}.srs-brush .srs-select{flex:1;max-width:none}.srs-field{flex:1 1 140px}.srs-filters>*{max-width:none}.srs-emp-col{min-width:150px;max-width:170px}.srs-grid-wrap{max-height:70vh}.srs-hbtn span{display:none}}.hol-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.hol-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.hol-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.hol-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.hol-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.hol-header-ico svg{font-size:20px}.hol-header-text{min-width:0}.hol-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.hol-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.hol-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.hol-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.hol-hbtn svg{font-size:var(--icon-size-sm)}.hol-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.hol-hbtn:disabled{opacity:.45;cursor:not-allowed}.hol-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.hol-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.hol-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.hol-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.hol-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.hol-search input:focus,.hol-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.hol-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.hol-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.hol-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.hol-search button svg{font-size:15px}.hol-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.hol-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.hol-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.hol-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.hol-chip svg{font-size:14px;color:var(--text-muted)}.hol-chip--muted{color:var(--text-muted)}.hol-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.hol-chip--warn b{color:var(--status-warning)}.hol-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.hol-table-wrap{flex:1;min-height:0;overflow:auto}.hol-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.hol-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.hol-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.hol-table tbody tr:nth-child(odd) td{background:#fff}.hol-table tbody tr:nth-child(2n) td{background:#f9f9f9}.hol-table tbody tr:hover td{background:var(--surface-hover)}.hol-num{text-align:right!important}.hol-col-act{width:1%;white-space:nowrap;text-align:right!important}.hol-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.hol-name,.hol-strong{font-weight:var(--fw-semibold)}.hol-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.hol-muted{color:var(--text-muted)}.hol-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.hol-tag svg{font-size:13px}.hol-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.hol-pill--info{background:var(--status-info-light);color:var(--status-info)}.hol-pill--ok{background:var(--status-success-light);color:var(--status-success)}.hol-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.hol-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.hol-row-actions{display:inline-flex;gap:4px}.hol-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.hol-act svg{font-size:16px}.hol-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.hol-act--danger{color:var(--status-danger)}.hol-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.hol-act:disabled{opacity:.4;cursor:not-allowed}.hol-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.hol-footer-hint{color:var(--text-muted)}.hol-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.hol-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:hol-shimmer 1.4s infinite linear}.hol-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.hol-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.hol-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.hol-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.hol-state-ico svg{font-size:24px}.hol-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.hol-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.hol-btn svg{font-size:var(--icon-size-sm)}.hol-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.hol-btn:disabled{opacity:.5;cursor:not-allowed}.hol-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.hol-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.hol-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.hol-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.hol-btn--plain{background:var(--surface-card)}.hol-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.hol-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.hol-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.hol-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.hol-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.hol-dlg-head>div{flex:1;min-width:0}.hol-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.hol-dlg-ico svg{font-size:19px}.hol-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.hol-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.hol-dlg-x svg{font-size:18px}.hol-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.hol-dlg-body p{margin:0}.hol-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.hol-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.hol-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:hol-rotate .7s linear infinite}.hol-spin--light{color:var(--text-on-brand)}.hol-rotating{animation:hol-rotate .8s linear infinite}@keyframes hol-rotate{to{transform:rotate(360deg)}}@keyframes hol-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.hol-chips{margin-left:0;width:100%}.hol-search{max-width:none}}@media (max-width: 720px){.hol-card{height:auto;min-height:0}.hol-header,.hol-toolbar,.hol-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.hol-hbtn--solid span{display:none}.hol-table-wrap{overflow:visible}.hol-table thead{display:none}.hol-table,.hol-table tbody,.hol-table tr,.hol-table td{display:block;width:100%}.hol-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.hol-table tbody tr:nth-child(odd) td,.hol-table tbody tr:nth-child(2n) td{background:transparent}.hol-table td{border:none;padding:3px var(--space-3);text-align:left!important}.hol-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.hol-col-act{width:auto}}.hol-groups{font-size:var(--fs-sm);color:var(--text-secondary)}.hol-dlg-note{margin-top:var(--space-2)!important;font-size:var(--fs-xs);color:var(--text-muted)}.hol-seg{display:inline-flex;padding:2px;border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color)}.hol-seg button{height:26px;padding:0 var(--space-3);display:inline-flex;align-items:center;gap:4px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.hol-seg button svg{font-size:15px}.hol-seg .hol-seg--on{background:var(--surface-card);color:var(--text-primary);box-shadow:var(--shadow-sm)}.hol-cal{flex:1;min-height:0;overflow:auto;padding:var(--space-3) var(--space-4);display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3);align-content:start}.hol-month{border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);padding:var(--space-2) var(--space-3)}.hol-month h4{margin:0 0 6px;display:flex;align-items:center;justify-content:space-between;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-primary)}.hol-month h4 span{min-width:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:11px;text-align:center}.hol-month p{margin:0;font-size:var(--fs-xs);color:var(--text-muted)}.hol-month--empty{background:var(--surface-page)}.hol-month ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.hol-cal-item{width:100%;display:flex;align-items:flex-start;gap:var(--space-2);padding:4px 6px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer}.hol-cal-item:hover{background:var(--surface-hover)}.hol-cal-date{min-width:44px;font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.hol-cal-name{display:flex;flex-direction:column;font-size:var(--fs-sm);font-weight:var(--fw-medium)}.hol-cal-name small{font-size:11px;font-weight:var(--fw-regular);color:var(--text-muted)}@media (max-width: 720px){.hol-cal{padding:var(--space-3)}}.hfm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.hfm-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.hfm-sheet--md{max-width:var(--modal-width-md)}.hfm-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.hfm-header-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.hfm-header-ico svg{font-size:19px}.hfm-header-text{flex:1;min-width:0}.hfm-header-text h2{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-on-brand)}.hfm-header-text p{margin:2px 0 0;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.hfm-x{width:30px;height:30px;padding:0;flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.hfm-x:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.hfm-x svg{font-size:18px}.hfm-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.hfm-section h3{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-primary)}.hfm-section h3 span{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-primary-dark);color:var(--text-on-brand);font-size:11px}.hfm-section h3 em{font-style:normal;font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.hfm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4)}.hfm-full{grid-column:1 / -1}.hfm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.hfm-field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.hfm-input{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}textarea.hfm-input{height:auto;min-height:72px;padding:var(--space-2) var(--space-3);resize:vertical}.hfm-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.hfm-input:disabled{background:var(--surface-page);color:var(--text-muted)}.hfm-field--err .hfm-input{border-color:var(--status-danger)}.hfm-hint{font-size:11px;color:var(--text-muted);line-height:var(--lh-base)}.hfm-err{font-size:11px;color:var(--status-danger);font-weight:var(--fw-medium)}.hfm-summary{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.hfm-summary>svg{font-size:18px;color:var(--brand-primary);flex-shrink:0;margin-top:1px}.hfm-summary ul{margin:0;padding:0 0 0 var(--space-4);display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.hfm-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.hfm-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.hfm-btn{height:var(--control-height-sm);padding:0 var(--space-4);display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.hfm-btn svg{font-size:var(--icon-size-sm)}.hfm-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.hfm-btn:disabled{opacity:.5;cursor:not-allowed}.hfm-btn--primary{background:var(--brand-gradient);border-color:transparent;color:var(--text-on-brand)}.hfm-btn--primary:hover:not(:disabled){background:var(--brand-gradient);color:var(--text-on-brand);opacity:.92}.hfm-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:hfm-rotate .7s linear infinite}@keyframes hfm-rotate{to{transform:rotate(360deg)}}@media (max-width: 640px){.hfm-backdrop{padding:var(--space-2);align-items:flex-end}.hfm-sheet{max-height:calc(100vh - var(--space-4));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.hfm-grid{grid-template-columns:minmax(0,1fr)}.hfm-body{padding:var(--space-3)}}.hfm-section h3{font-weight:var(--fw-bold)}.hfm-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-2)}.hfm-check{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);cursor:pointer;font-size:var(--fs-sm)}.hfm-check input{margin-top:3px;accent-color:var(--brand-primary)}.hfm-check span{display:flex;flex-direction:column;min-width:0}.hfm-check small{font-size:11px;color:var(--text-muted)}.hfm-check--on{border-color:var(--brand-primary);background:var(--brand-primary-light)}.hg-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.hg-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.hg-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.hg-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.hg-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.hg-header-ico svg{font-size:20px}.hg-header-text{min-width:0}.hg-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.hg-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.hg-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.hg-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.hg-hbtn svg{font-size:var(--icon-size-sm)}.hg-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.hg-hbtn:disabled{opacity:.45;cursor:not-allowed}.hg-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.hg-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.hg-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.hg-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.hg-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.hg-search input:focus,.hg-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.hg-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.hg-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.hg-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.hg-search button svg{font-size:15px}.hg-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.hg-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.hg-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.hg-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.hg-chip svg{font-size:14px;color:var(--text-muted)}.hg-chip--muted{color:var(--text-muted)}.hg-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.hg-chip--warn b{color:var(--status-warning)}.hg-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.hg-table-wrap{flex:1;min-height:0;overflow:auto}.hg-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.hg-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.hg-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.hg-table tbody tr:nth-child(odd) td{background:#fff}.hg-table tbody tr:nth-child(2n) td{background:#f9f9f9}.hg-table tbody tr:hover td{background:var(--surface-hover)}.hg-num{text-align:right!important}.hg-col-act{width:1%;white-space:nowrap;text-align:right!important}.hg-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.hg-name,.hg-strong{font-weight:var(--fw-semibold)}.hg-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.hg-muted{color:var(--text-muted)}.hg-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.hg-tag svg{font-size:13px}.hg-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.hg-pill--info{background:var(--status-info-light);color:var(--status-info)}.hg-pill--ok{background:var(--status-success-light);color:var(--status-success)}.hg-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.hg-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.hg-row-actions{display:inline-flex;gap:4px}.hg-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.hg-act svg{font-size:16px}.hg-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.hg-act--danger{color:var(--status-danger)}.hg-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.hg-act:disabled{opacity:.4;cursor:not-allowed}.hg-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.hg-footer-hint{color:var(--text-muted)}.hg-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.hg-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:hg-shimmer 1.4s infinite linear}.hg-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.hg-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.hg-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.hg-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.hg-state-ico svg{font-size:24px}.hg-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.hg-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.hg-btn svg{font-size:var(--icon-size-sm)}.hg-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.hg-btn:disabled{opacity:.5;cursor:not-allowed}.hg-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.hg-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.hg-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.hg-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.hg-btn--plain{background:var(--surface-card)}.hg-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.hg-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.hg-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.hg-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.hg-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.hg-dlg-head>div{flex:1;min-width:0}.hg-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.hg-dlg-ico svg{font-size:19px}.hg-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.hg-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.hg-dlg-x svg{font-size:18px}.hg-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.hg-dlg-body p{margin:0}.hg-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.hg-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.hg-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:hg-rotate .7s linear infinite}.hg-spin--light{color:var(--text-on-brand)}.hg-rotating{animation:hg-rotate .8s linear infinite}@keyframes hg-rotate{to{transform:rotate(360deg)}}@keyframes hg-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.hg-chips{margin-left:0;width:100%}.hg-search{max-width:none}}@media (max-width: 720px){.hg-card{height:auto;min-height:0}.hg-header,.hg-toolbar,.hg-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.hg-hbtn--solid span{display:none}.hg-table-wrap{overflow:visible}.hg-table thead{display:none}.hg-table,.hg-table tbody,.hg-table tr,.hg-table td{display:block;width:100%}.hg-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.hg-table tbody tr:nth-child(odd) td,.hg-table tbody tr:nth-child(2n) td{background:transparent}.hg-table td{border:none;padding:3px var(--space-3);text-align:left!important}.hg-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.hg-col-act{width:auto}}.hg-split{flex:1;min-height:0;display:grid;grid-template-columns:300px minmax(0,1fr)}.hg-list-pane{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border-color);background:var(--surface-page)}.hg-list-pane .hg-search{flex:0 0 auto;max-width:none;margin:var(--space-3)}.hg-groups{flex:1;min-height:0;overflow-y:auto;margin:0;padding:0 var(--space-2) var(--space-2);list-style:none;display:flex;flex-direction:column;gap:4px}.hg-group{width:100%;display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer}.hg-group:hover{background:var(--surface-card);border-color:var(--border-color)}.hg-group--on,.hg-group--on:hover{background:var(--surface-card);border-color:rgba(var(--brand-primary-rgb),.4);box-shadow:inset 3px 0 0 var(--brand-primary)}.hg-group-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.hg-group-meta{font-size:var(--fs-xs);color:var(--text-muted)}.hg-empty-line{padding:var(--space-3);font-size:var(--fs-xs);color:var(--text-muted)}.hg-list-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary)}.hg-detail-pane{display:flex;flex-direction:column;min-height:0;min-width:0}.hg-detail-head{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.hg-detail-title{flex:1;min-width:0}.hg-detail-title h2{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.hg-detail-title p{margin:2px 0 0;display:flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-muted)}.hg-detail-title p svg{font-size:15px}.hg-detail-actions{display:flex;gap:var(--space-2)}.hg-detail-tools{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color)}.hg-grow{flex:1}.hg-back{display:none;align-items:center;gap:4px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.hg-back svg{font-size:17px}.hg-btn--outline-danger{color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.45)}.hg-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger)}.hg-dlg-head--brand{background:var(--brand-gradient);border-bottom:none}.hg-dlg-head--brand h3{color:var(--text-on-brand)}.hg-dlg-head--brand p{color:rgba(var(--text-on-brand-rgb),.86)}.hg-dlg-ico--brand{background:rgba(var(--text-on-brand-rgb),.18);color:var(--text-on-brand)}.hg-dlg-x--brand{color:var(--text-on-brand)}.hg-dlg-x--brand:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.2);color:var(--text-on-brand)}.hg-label{display:block;margin-bottom:4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.hg-input{width:100%;height:var(--control-height);padding:0 var(--space-3);box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.hg-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}@media (max-width: 860px){.hg-split{grid-template-columns:minmax(0,1fr)}.hg-list-pane{border-right:none}.hg-split .hg-detail-pane,.hg-split--detail .hg-list-pane{display:none}.hg-split--detail .hg-detail-pane{display:flex}.hg-back{display:inline-flex;width:100%}}.ahg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.ahg-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.ahg-sheet--md{max-width:var(--modal-width-md)}.ahg-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.ahg-header-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.ahg-header-ico svg{font-size:19px}.ahg-header-text{flex:1;min-width:0}.ahg-header-text h2{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-on-brand)}.ahg-header-text p{margin:2px 0 0;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.ahg-x{width:30px;height:30px;padding:0;flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ahg-x:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.ahg-x svg{font-size:18px}.ahg-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.ahg-section h3{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-primary)}.ahg-section h3 span{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-primary-dark);color:var(--text-on-brand);font-size:11px}.ahg-section h3 em{font-style:normal;font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.ahg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4)}.ahg-full{grid-column:1 / -1}.ahg-field{display:flex;flex-direction:column;gap:4px;min-width:0}.ahg-field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.ahg-input{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}textarea.ahg-input{height:auto;min-height:72px;padding:var(--space-2) var(--space-3);resize:vertical}.ahg-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ahg-input:disabled{background:var(--surface-page);color:var(--text-muted)}.ahg-field--err .ahg-input{border-color:var(--status-danger)}.ahg-hint{font-size:11px;color:var(--text-muted);line-height:var(--lh-base)}.ahg-err{font-size:11px;color:var(--status-danger);font-weight:var(--fw-medium)}.ahg-summary{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.ahg-summary>svg{font-size:18px;color:var(--brand-primary);flex-shrink:0;margin-top:1px}.ahg-summary ul{margin:0;padding:0 0 0 var(--space-4);display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ahg-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.ahg-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.ahg-btn{height:var(--control-height-sm);padding:0 var(--space-4);display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.ahg-btn svg{font-size:var(--icon-size-sm)}.ahg-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ahg-btn:disabled{opacity:.5;cursor:not-allowed}.ahg-btn--primary{background:var(--brand-gradient);border-color:transparent;color:var(--text-on-brand)}.ahg-btn--primary:hover:not(:disabled){background:var(--brand-gradient);color:var(--text-on-brand);opacity:.92}.ahg-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ahg-rotate .7s linear infinite}@keyframes ahg-rotate{to{transform:rotate(360deg)}}@media (max-width: 640px){.ahg-backdrop{padding:var(--space-2);align-items:flex-end}.ahg-sheet{max-height:calc(100vh - var(--space-4));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.ahg-grid{grid-template-columns:minmax(0,1fr)}.ahg-body{padding:var(--space-3)}}.ahg-sheet{max-width:var(--modal-width-md);height:min(640px,calc(100vh - 2 * var(--space-4)))}.ahg-tools{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);flex-shrink:0}.ahg-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ahg-search{position:relative;flex:1 1 180px;display:flex;align-items:center}.ahg-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ahg-search input:focus,.ahg-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ahg-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.ahg-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ahg-search button svg{font-size:15px}.ahg-all{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);cursor:pointer}.ahg-all input,.ahg-item input{accent-color:var(--brand-primary)}.ahg-body{padding:var(--space-2) var(--space-3);gap:0}.ahg-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.ahg-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);cursor:pointer}.ahg-item:hover{background:var(--surface-hover)}.ahg-item--on,.ahg-item--on:hover{border-color:var(--brand-primary);background:var(--brand-primary-light)}.ahg-item-name{flex:1;min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.ahg-item-date{font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.ahg-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center;font-size:var(--fs-sm);color:var(--text-secondary)}.ahg-state p{margin:0;max-width:380px}.ahg-state-ico--error{font-size:30px!important;color:var(--status-danger)}.ahg-sk-list{display:flex;flex-direction:column;gap:6px}.ahg-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:ahg-shimmer 1.4s infinite linear}@keyframes ahg-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ahg-footer{align-items:center}.ahg-count{margin-right:auto;font-size:var(--fs-xs);color:var(--text-secondary)}@media (max-width: 640px){.ahg-sheet{height:calc(100vh - var(--space-4))}.ahg-item{flex-wrap:wrap}.ahg-item-date{width:100%;padding-left:26px}}.crl-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.crl-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.crl-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.crl-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.crl-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.crl-header-ico svg{font-size:20px}.crl-header-text{min-width:0}.crl-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.crl-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.crl-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.crl-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.crl-hbtn svg{font-size:var(--icon-size-sm)}.crl-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.crl-hbtn:disabled{opacity:.45;cursor:not-allowed}.crl-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.crl-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.crl-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.crl-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.crl-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.crl-search input:focus,.crl-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.crl-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.crl-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.crl-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.crl-search button svg{font-size:15px}.crl-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.crl-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.crl-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.crl-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.crl-chip svg{font-size:14px;color:var(--text-muted)}.crl-chip--muted{color:var(--text-muted)}.crl-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.crl-chip--warn b{color:var(--status-warning)}.crl-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.crl-table-wrap{flex:1;min-height:0;overflow:auto}.crl-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.crl-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.crl-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.crl-table tbody tr:nth-child(odd) td{background:#fff}.crl-table tbody tr:nth-child(2n) td{background:#f9f9f9}.crl-table tbody tr:hover td{background:var(--surface-hover)}.crl-num{text-align:right!important}.crl-col-act{width:1%;white-space:nowrap;text-align:right!important}.crl-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.crl-name,.crl-strong{font-weight:var(--fw-semibold)}.crl-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.crl-muted{color:var(--text-muted)}.crl-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.crl-tag svg{font-size:13px}.crl-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.crl-pill--info{background:var(--status-info-light);color:var(--status-info)}.crl-pill--ok{background:var(--status-success-light);color:var(--status-success)}.crl-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.crl-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.crl-row-actions{display:inline-flex;gap:4px}.crl-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.crl-act svg{font-size:16px}.crl-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.crl-act--danger{color:var(--status-danger)}.crl-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.crl-act:disabled{opacity:.4;cursor:not-allowed}.crl-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.crl-footer-hint{color:var(--text-muted)}.crl-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.crl-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:crl-shimmer 1.4s infinite linear}.crl-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.crl-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.crl-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.crl-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.crl-state-ico svg{font-size:24px}.crl-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.crl-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.crl-btn svg{font-size:var(--icon-size-sm)}.crl-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.crl-btn:disabled{opacity:.5;cursor:not-allowed}.crl-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.crl-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.crl-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.crl-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.crl-btn--plain{background:var(--surface-card)}.crl-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.crl-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.crl-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.crl-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.crl-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.crl-dlg-head>div{flex:1;min-width:0}.crl-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.crl-dlg-ico svg{font-size:19px}.crl-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.crl-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.crl-dlg-x svg{font-size:18px}.crl-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.crl-dlg-body p{margin:0}.crl-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.crl-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.crl-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:crl-rotate .7s linear infinite}.crl-spin--light{color:var(--text-on-brand)}.crl-rotating{animation:crl-rotate .8s linear infinite}@keyframes crl-rotate{to{transform:rotate(360deg)}}@keyframes crl-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.crl-chips{margin-left:0;width:100%}.crl-search{max-width:none}}@media (max-width: 720px){.crl-card{height:auto;min-height:0}.crl-header,.crl-toolbar,.crl-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.crl-hbtn--solid span{display:none}.crl-table-wrap{overflow:visible}.crl-table thead{display:none}.crl-table,.crl-table tbody,.crl-table tr,.crl-table td{display:block;width:100%}.crl-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.crl-table tbody tr:nth-child(odd) td,.crl-table tbody tr:nth-child(2n) td{background:transparent}.crl-table td{border:none;padding:3px var(--space-3);text-align:left!important}.crl-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.crl-col-act{width:auto}}.crl-slabs{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm)}.crl-slabs b{color:var(--brand-primary-dark)}.crl-slabs small{color:var(--text-muted)}.crl-tags{display:inline-flex;flex-wrap:wrap;gap:4px}.crl-grades{font-size:var(--fs-sm);color:var(--text-secondary)}.crf-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.crf-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family);color:var(--text-primary)}.crf-sheet--md{max-width:var(--modal-width-md)}.crf-header{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.crf-header-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.crf-header-ico svg{font-size:19px}.crf-header-text{flex:1;min-width:0}.crf-header-text h2{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-on-brand)}.crf-header-text p{margin:2px 0 0;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.crf-x{width:30px;height:30px;padding:0;flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.crf-x:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.crf-x svg{font-size:18px}.crf-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.crf-section h3{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-primary)}.crf-section h3 span{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-primary-dark);color:var(--text-on-brand);font-size:11px}.crf-section h3 em{font-style:normal;font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.crf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4)}.crf-full{grid-column:1 / -1}.crf-field{display:flex;flex-direction:column;gap:4px;min-width:0}.crf-field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.crf-input{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}textarea.crf-input{height:auto;min-height:72px;padding:var(--space-2) var(--space-3);resize:vertical}.crf-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.crf-input:disabled{background:var(--surface-page);color:var(--text-muted)}.crf-field--err .crf-input{border-color:var(--status-danger)}.crf-hint{font-size:11px;color:var(--text-muted);line-height:var(--lh-base)}.crf-err{font-size:11px;color:var(--status-danger);font-weight:var(--fw-medium)}.crf-summary{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.crf-summary>svg{font-size:18px;color:var(--brand-primary);flex-shrink:0;margin-top:1px}.crf-summary ul{margin:0;padding:0 0 0 var(--space-4);display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.crf-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.crf-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.crf-btn{height:var(--control-height-sm);padding:0 var(--space-4);display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.crf-btn svg{font-size:var(--icon-size-sm)}.crf-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.crf-btn:disabled{opacity:.5;cursor:not-allowed}.crf-btn--primary{background:var(--brand-gradient);border-color:transparent;color:var(--text-on-brand)}.crf-btn--primary:hover:not(:disabled){background:var(--brand-gradient);color:var(--text-on-brand);opacity:.92}.crf-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:crf-rotate .7s linear infinite}@keyframes crf-rotate{to{transform:rotate(360deg)}}@media (max-width: 640px){.crf-backdrop{padding:var(--space-2);align-items:flex-end}.crf-sheet{max-height:calc(100vh - var(--space-4));border-radius:var(--radius-xl) var(--radius-xl) 0 0}.crf-grid{grid-template-columns:minmax(0,1fr)}.crf-body{padding:var(--space-3)}}.crf-hint{margin:0 0 var(--space-2)}.crf-slabs{display:flex;flex-direction:column;gap:6px}.crf-slab{display:grid;grid-template-columns:90px 90px 110px minmax(0,1fr) 34px;gap:var(--space-2);align-items:center;padding:6px;border-radius:var(--radius-md);border:1px solid transparent}.crf-slab--head{padding-top:0;padding-bottom:0;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.crf-slab:not(.crf-slab--head){background:var(--surface-page);border-color:var(--border-color)}.crf-slab--err{border-color:var(--status-danger)!important}.crf-input--sm{height:var(--control-height-sm);padding:0 var(--space-2)}.crf-types{display:flex;flex-wrap:wrap;gap:4px}.crf-type{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-pill);border:1px solid var(--border-color);background:var(--surface-card);font-size:var(--fs-xs);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.crf-type input{margin:0;accent-color:var(--brand-primary)}.crf-type--on{border-color:rgba(var(--brand-primary-rgb),.5);background:var(--brand-primary-light);color:var(--brand-primary-dark)}.crf-icon{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--status-danger);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.crf-icon svg{font-size:17px}.crf-icon:disabled{opacity:.35;cursor:not-allowed}.crf-errlist{margin:var(--space-2) 0 0;padding-left:var(--space-4);font-size:11px;color:var(--status-danger)}.crf-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-2)}.crf-example{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-secondary)}.crf-example svg{font-size:15px;color:var(--brand-primary)}.crf-grade-tools{margin-bottom:var(--space-2)}.crf-search{position:relative;max-width:280px;display:flex;align-items:center}.crf-search input{width:100%;height:var(--control-height-sm);padding:0 var(--space-2) 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.crf-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.crf-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.crf-grades{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px;max-height:220px;overflow-y:auto;padding:2px}.crf-grade{display:flex;align-items:flex-start;gap:6px;padding:6px var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-card);font-size:var(--fs-sm);cursor:pointer}.crf-grade input{margin-top:3px;accent-color:var(--brand-primary)}.crf-grade span{display:flex;flex-direction:column;min-width:0}.crf-grade small{font-size:10.5px;color:var(--status-warning)}.crf-grade--on{border-color:var(--brand-primary);background:var(--brand-primary-light)}.crf-grade--taken:not(.crf-grade--on){background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}@media (max-width: 640px){.crf-slab{grid-template-columns:1fr 1fr 1fr 34px}.crf-slab--head{display:none}.crf-types{grid-column:1 / -1;order:5}}.dpl-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.dpl-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.dpl-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.dpl-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.dpl-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.dpl-header-ico svg{font-size:20px}.dpl-header-text{min-width:0}.dpl-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.dpl-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.dpl-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.dpl-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.dpl-hbtn svg{font-size:var(--icon-size-sm)}.dpl-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.dpl-hbtn:disabled{opacity:.45;cursor:not-allowed}.dpl-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.dpl-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.dpl-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.dpl-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.dpl-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.dpl-search input:focus,.dpl-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dpl-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.dpl-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dpl-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.dpl-search button svg{font-size:15px}.dpl-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.dpl-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.dpl-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.dpl-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.dpl-chip svg{font-size:14px;color:var(--text-muted)}.dpl-chip--muted{color:var(--text-muted)}.dpl-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.dpl-chip--warn b{color:var(--status-warning)}.dpl-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.dpl-table-wrap{flex:1;min-height:0;overflow:auto}.dpl-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.dpl-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.dpl-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.dpl-table tbody tr:nth-child(odd) td{background:#fff}.dpl-table tbody tr:nth-child(2n) td{background:#f9f9f9}.dpl-table tbody tr:hover td{background:var(--surface-hover)}.dpl-num{text-align:right!important}.dpl-col-act{width:1%;white-space:nowrap;text-align:right!important}.dpl-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.dpl-name,.dpl-strong{font-weight:var(--fw-semibold)}.dpl-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.dpl-muted{color:var(--text-muted)}.dpl-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.dpl-tag svg{font-size:13px}.dpl-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.dpl-pill--info{background:var(--status-info-light);color:var(--status-info)}.dpl-pill--ok{background:var(--status-success-light);color:var(--status-success)}.dpl-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.dpl-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.dpl-row-actions{display:inline-flex;gap:4px}.dpl-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.dpl-act svg{font-size:16px}.dpl-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.dpl-act--danger{color:var(--status-danger)}.dpl-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.dpl-act:disabled{opacity:.4;cursor:not-allowed}.dpl-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.dpl-footer-hint{color:var(--text-muted)}.dpl-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.dpl-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:dpl-shimmer 1.4s infinite linear}.dpl-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.dpl-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.dpl-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.dpl-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.dpl-state-ico svg{font-size:24px}.dpl-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.dpl-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.dpl-btn svg{font-size:var(--icon-size-sm)}.dpl-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dpl-btn:disabled{opacity:.5;cursor:not-allowed}.dpl-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.dpl-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.dpl-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.dpl-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.dpl-btn--plain{background:var(--surface-card)}.dpl-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.dpl-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.dpl-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.dpl-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.dpl-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.dpl-dlg-head>div{flex:1;min-width:0}.dpl-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.dpl-dlg-ico svg{font-size:19px}.dpl-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dpl-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dpl-dlg-x svg{font-size:18px}.dpl-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.dpl-dlg-body p{margin:0}.dpl-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.dpl-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.dpl-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:dpl-rotate .7s linear infinite}.dpl-spin--light{color:var(--text-on-brand)}.dpl-rotating{animation:dpl-rotate .8s linear infinite}@keyframes dpl-rotate{to{transform:rotate(360deg)}}@keyframes dpl-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.dpl-chips{margin-left:0;width:100%}.dpl-search{max-width:none}}@media (max-width: 720px){.dpl-card{height:auto;min-height:0}.dpl-header,.dpl-toolbar,.dpl-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.dpl-hbtn--solid span{display:none}.dpl-table-wrap{overflow:visible}.dpl-table thead{display:none}.dpl-table,.dpl-table tbody,.dpl-table tr,.dpl-table td{display:block;width:100%}.dpl-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.dpl-table tbody tr:nth-child(odd) td,.dpl-table tbody tr:nth-child(2n) td{background:transparent}.dpl-table td{border:none;padding:3px var(--space-3);text-align:left!important}.dpl-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.dpl-col-act{width:auto}}.dpl-slabs{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm)}.dpl-slabs b{color:var(--brand-primary-dark)}.dpl-order{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px}.dpl-order .dpl-code{margin-right:0}.dpl-order-arrow{font-size:16px!important;color:var(--text-muted)}.dpl-grades{font-size:var(--fs-sm);color:var(--text-secondary)}.cdp__root{min-height:100vh;background:var(--surface-page);box-sizing:border-box;display:flex;flex-direction:column;flex:1;font-family:Inter,system-ui,sans-serif}.cdp__card{max-width:1400px;width:100%;margin:0 auto;background-color:var(--surface-card);border-radius:12px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.cdp__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:var(--brand-gradient);flex-wrap:wrap;flex-shrink:0}.cdp__header-left{display:flex;align-items:center;gap:12px}.cdp__header-icon-wrap{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#ffffff2e;flex-shrink:0}.cdp__title{margin:0;font-size:19px;font-weight:700;color:var(--text-on-brand);letter-spacing:-.2px}.cdp__subtitle{margin:3px 0 0;font-size:12.5px;color:#ffffffd9;max-width:520px}.cdp__back-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;color:var(--text-on-brand);border:1.5px solid rgba(255,255,255,.4);border-radius:8px;cursor:pointer;background:#ffffff1f;transition:all .2s ease;white-space:nowrap}.cdp__back-btn:hover{background:#ffffff38;border-color:#fff;transform:translateY(-1px)}.cdp__body{padding:20px 24px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;flex:1}.cdp__error-message{padding:10px 14px;background:#fff5f5;border:1.5px solid #ffcdd2;border-radius:6px;color:var(--status-danger, #c62828);font-size:13px}.cdp__grid-name-seq{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:18px;align-items:start}.cdp__grid-2{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;align-items:start}@media (max-width: 900px){.cdp__grid-name-seq,.cdp__grid-2{grid-template-columns:1fr}}.cdp-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,transform .2s ease}.cdp-card:hover{box-shadow:var(--shadow-md)}.cdp-card__header{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;background:var(--surface-hover);border-bottom:1px solid var(--border-color)}.cdp-card__step{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--brand-gradient);color:var(--text-on-brand);font-size:11px;font-weight:700;flex-shrink:0;margin-top:1px;box-shadow:var(--shadow-sm)}.cdp-card__icon-wrap{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--brand-primary-light) 0%,var(--surface-card) 100%);color:var(--brand-primary-dark);flex-shrink:0;box-shadow:inset 0 0 0 1px var(--brand-primary-light)}.cdp-card__title{margin:0;font-size:14.5px;font-weight:700;color:var(--text-primary)}.cdp-card__desc{margin:2px 0 0;font-size:12px;color:var(--text-secondary);line-height:1.4}.cdp-card__header>div:not(.cdp-card__icon-wrap){flex:1}.cdp-card__body{padding:16px}.cdp-card--rule{display:flex;flex-direction:column;height:100%}.cdp-card--rule .cdp-card__body{flex:1;display:flex;flex-direction:column}.cdp-rule__input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);background-color:var(--surface-card);font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.cdp-rule__input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light)}.cdp-rule__char-hint{margin:6px 0 0;font-size:11px;color:var(--text-muted);text-align:right}.cdp-rule__snapshot{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;padding-top:16px;border-top:1px dashed var(--border-color)}.cdp-rule__snapshot-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;background:var(--surface-hover);border-radius:8px}.cdp-rule__snapshot-value{font-size:18px;font-weight:700;color:var(--brand-primary-dark);line-height:1}.cdp-rule__snapshot-label{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.cdp-seq__toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}.cdp-seq__add-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;color:var(--text-on-brand);border:none;border-radius:6px;cursor:pointer;background:var(--brand-gradient);transition:all .2s ease;white-space:nowrap}.cdp-seq__add-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.cdp-seq__add-btn:disabled{background:var(--border-color);color:var(--text-muted);cursor:not-allowed}.cdp-seq__count{font-size:11.5px;font-weight:600;color:var(--text-secondary)}.cdp-grades__loading{display:flex;align-items:center;color:var(--text-secondary);font-size:13px}.cdp-seq__loading-container{display:flex;align-items:center;padding:16px;color:var(--text-secondary);font-size:13px}.cdp-seq__empty{padding:16px;text-align:center;color:var(--text-muted);font-size:12.5px;background:var(--surface-hover);border-radius:6px;border:1px dashed var(--border-color)}.cdp-seq__scroll-wrapper{max-height:260px;overflow-y:auto}.cdp-seq__list{display:flex;flex-direction:column;gap:8px}.cdp-seq__item{display:flex;align-items:center;gap:8px}.cdp-seq__ordinal{min-width:34px;text-align:center;font-weight:700;font-size:11px;color:var(--brand-primary-dark);background:var(--brand-primary-light);border-radius:6px;padding:5px 4px;flex-shrink:0}.cdp-seq__select-container{flex:1;min-width:0}.cdp-seq__delete-btn,.cdp-delete-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:6px;color:#fff;cursor:pointer;background:linear-gradient(135deg,#f87171,#dc2626);transition:all .2s ease;flex-shrink:0}.cdp-seq__delete-btn:hover:not(:disabled),.cdp-delete-btn:hover:not(:disabled){transform:scale(1.08);box-shadow:var(--shadow-sm)}.cdp-seq__delete-btn:disabled,.cdp-delete-btn:disabled{opacity:.5;cursor:not-allowed}.cdp-grades__hint{margin:8px 0 0;font-size:11.5px;color:var(--text-secondary)}.cdp-card__header .cdp-slab__add-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;color:var(--text-on-brand);border:none;border-radius:6px;cursor:pointer;background:var(--brand-gradient);transition:all .2s ease;white-space:nowrap;margin-left:auto;align-self:flex-start}.cdp-slab__add-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.cdp-slab__add-btn:disabled{background:var(--border-color);cursor:not-allowed}.cdp-slab__scroll-wrapper{max-height:320px;overflow:auto;border:1px solid var(--border-color);border-radius:6px}.cdp-slab__table{width:100%;border-collapse:collapse;font-size:13px}.cdp-slab__table thead{position:sticky;top:0;z-index:1}.cdp-slab__table th,.cdp-slab__table td{padding:10px 12px;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);text-align:left}.cdp-slab__table th{background-color:var(--surface-hover);font-weight:600;color:var(--text-primary);font-size:12px;text-transform:uppercase;letter-spacing:.3px}.cdp-slab__table tbody tr:nth-child(2n){background-color:#f9f9f9}.cdp-slab__table tbody tr:nth-child(odd){background-color:#fff}.cdp-slab__input{width:100%;box-sizing:border-box;padding:7px 8px;border:1px solid var(--border-color);border-radius:5px;font-size:13px;font-family:inherit;color:var(--text-primary);background-color:var(--surface-card)}.cdp-slab__input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-primary-light)}.cdp-slab__action-cell{text-align:center}.cdp-react-select{width:100%}.cdp-react-select__control{min-height:38px;border-color:var(--border-color)}.cdp-react-select__control--is-focused{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.cdp-react-select__indicator-separator{background-color:var(--border-color)}.cdp-react-select__multi-value{background-color:var(--brand-primary-light)}.cdp-react-select__multi-value__label{color:var(--brand-primary-dark);font-size:12px}.cdp-react-select__multi-value__remove:hover{background-color:var(--brand-primary-light);color:var(--brand-primary-dark)}.cdp__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-top:1px solid var(--border-color);background:var(--surface-hover);flex-wrap:wrap;flex-shrink:0}.cdp__footer-text{font-size:12.5px;color:var(--text-secondary)}.cdp__footer-text strong{color:var(--text-primary);font-weight:700}.cdp__save-btn{display:inline-flex;align-items:center;padding:10px 24px;font-size:14px;font-weight:600;color:var(--text-on-brand);border:none;border-radius:8px;cursor:pointer;background:var(--brand-gradient);transition:all .2s ease}.cdp__save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.cdp__save-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.cdp__root{padding:8px}.cdp__header{padding:14px 16px}.cdp__body{padding:14px 16px;gap:14px}.cdp__title{font-size:17px}.cdp__footer{padding:12px 16px;flex-direction:column;align-items:stretch}.cdp__save-btn{width:100%;justify-content:center}.cdp-card__header{flex-wrap:wrap}.cdp-card__header .cdp-slab__add-btn{margin-left:0;width:100%;justify-content:center}.cdp-rule__snapshot{grid-template-columns:repeat(3,1fr);gap:6px}.cdp-rule__snapshot-value{font-size:16px}}.udp__root{min-height:100vh;background:var(--surface-page);padding:16px;box-sizing:border-box;display:flex;flex-direction:column;flex:1;font-family:Inter,system-ui,sans-serif}.udp__card{max-width:1400px;width:100%;margin:0 auto;background-color:var(--surface-card);border-radius:12px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.udp__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:80px 20px;color:var(--text-secondary);font-size:14px}.udp__error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:80px 20px;text-align:center}.udp__error p{color:var(--status-danger, #c62828);font-size:14px;margin:0}.udp__retry-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;font-size:13px;font-weight:600;color:var(--text-on-brand);border:none;border-radius:6px;cursor:pointer;background:var(--brand-gradient);transition:all .2s ease}.udp__retry-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.udp__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:var(--brand-gradient);flex-wrap:wrap;flex-shrink:0}.udp__header-left{display:flex;align-items:center;gap:12px}.udp__header-icon-wrap{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#ffffff2e;flex-shrink:0}.udp__title{margin:0;font-size:19px;font-weight:700;color:var(--text-on-brand);letter-spacing:-.2px}.udp__subtitle{margin:3px 0 0;font-size:12.5px;color:#ffffffd9;max-width:520px}.udp__back-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;color:var(--text-on-brand);border:1.5px solid rgba(255,255,255,.4);border-radius:8px;cursor:pointer;background:#ffffff1f;transition:all .2s ease;white-space:nowrap}.udp__back-btn:hover{background:#ffffff38;border-color:#fff;transform:translateY(-1px)}.udp__body{padding:20px 24px;display:flex;flex-direction:column;gap:18px;overflow-y:auto;flex:1}.udp__error-message{padding:10px 14px;background:#fff5f5;border:1.5px solid #ffcdd2;border-radius:6px;color:var(--status-danger, #c62828);font-size:13px}.udp__grid-name-seq{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:18px;align-items:start}.udp__grid-2{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;align-items:start}@media (max-width: 900px){.udp__grid-name-seq,.udp__grid-2{grid-template-columns:1fr}}.udp-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,transform .2s ease}.udp-card:hover{box-shadow:var(--shadow-md)}.udp-card__header{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;background:var(--surface-hover);border-bottom:1px solid var(--border-color)}.udp-card__step{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--brand-gradient);color:var(--text-on-brand);font-size:11px;font-weight:700;flex-shrink:0;margin-top:1px;box-shadow:var(--shadow-sm)}.udp-card__icon-wrap{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--brand-primary-light) 0%,var(--surface-card) 100%);color:var(--brand-primary-dark);flex-shrink:0;box-shadow:inset 0 0 0 1px var(--brand-primary-light)}.udp-card__title{margin:0;font-size:14.5px;font-weight:700;color:var(--text-primary)}.udp-card__desc{margin:2px 0 0;font-size:12px;color:var(--text-secondary);line-height:1.4}.udp-card__header>div:not(.udp-card__icon-wrap){flex:1}.udp-card__body{padding:16px}.udp-card--rule{display:flex;flex-direction:column;height:100%}.udp-card--rule .udp-card__body{flex:1;display:flex;flex-direction:column}.udp-rule__input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);background-color:var(--surface-card);font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.udp-rule__input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light)}.udp-rule__char-hint{margin:6px 0 0;font-size:11px;color:var(--text-muted);text-align:right}.udp-rule__snapshot{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;padding-top:16px;border-top:1px dashed var(--border-color)}.udp-rule__snapshot-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;background:var(--surface-hover);border-radius:8px}.udp-rule__snapshot-value{font-size:18px;font-weight:700;color:var(--brand-primary-dark);line-height:1}.udp-rule__snapshot-label{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.udp-seq__toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}.udp-seq__add-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;color:var(--text-on-brand);border:none;border-radius:6px;cursor:pointer;background:var(--brand-gradient);transition:all .2s ease}.udp-seq__add-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.udp-seq__add-btn:disabled{background:var(--border-color);cursor:not-allowed}.udp-seq__count{font-size:11.5px;font-weight:600;color:var(--text-secondary)}.udp-grades__loading{display:flex;align-items:center;color:var(--text-secondary);font-size:13px}.udp-seq__empty{padding:16px;text-align:center;color:var(--text-muted);font-size:12.5px;background:var(--surface-hover);border-radius:6px;border:1px dashed var(--border-color)}.udp-seq__scroll-wrapper{max-height:260px;overflow-y:auto}.udp-seq__list{display:flex;flex-direction:column;gap:8px}.udp-seq__item{display:flex;align-items:center;gap:8px}.udp-seq__ordinal{min-width:34px;text-align:center;font-weight:700;font-size:11px;color:var(--brand-primary-dark);background:var(--brand-primary-light);border-radius:6px;padding:5px 4px;flex-shrink:0}.udp-seq__select-container{flex:1;min-width:0}.udp-seq__delete-btn,.udp-delete-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:6px;color:#fff;cursor:pointer;background:linear-gradient(135deg,#f87171,#dc2626);transition:all .2s ease;flex-shrink:0}.udp-seq__delete-btn:hover:not(:disabled),.udp-delete-btn:hover:not(:disabled){transform:scale(1.08);box-shadow:var(--shadow-sm)}.udp-seq__delete-btn:disabled,.udp-delete-btn:disabled{opacity:.5;cursor:not-allowed}.udp-grades__hint{margin:8px 0 0;font-size:11.5px;color:var(--text-secondary)}.udp-card__header .udp-slab__add-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;color:var(--text-on-brand);border:none;border-radius:6px;cursor:pointer;background:var(--brand-gradient);transition:all .2s ease;white-space:nowrap;margin-left:auto;align-self:flex-start}.udp-slab__add-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}.udp-slab__add-btn:disabled{background:var(--border-color);cursor:not-allowed}.udp-slab__scroll-wrapper{max-height:320px;overflow:auto;border:1px solid var(--border-color);border-radius:6px}.udp-slab__table{width:100%;border-collapse:collapse;font-size:13px}.udp-slab__table thead{position:sticky;top:0;z-index:1}.udp-slab__table th,.udp-slab__table td{padding:10px 12px;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);text-align:left}.udp-slab__table th{background-color:var(--surface-hover);font-weight:600;color:var(--text-primary);font-size:12px;text-transform:uppercase;letter-spacing:.3px}.udp-slab__table tbody tr:nth-child(2n){background-color:#f9f9f9}.udp-slab__table tbody tr:nth-child(odd){background-color:#fff}.udp-slab__input{width:100%;box-sizing:border-box;padding:7px 8px;border:1px solid var(--border-color);border-radius:5px;font-size:13px;font-family:inherit;color:var(--text-primary);background-color:var(--surface-card)}.udp-slab__input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-primary-light)}.udp-slab__action-cell{text-align:center}.udp-react-select{width:100%}.udp-react-select__control{min-height:38px;border-color:var(--border-color)}.udp-react-select__control--is-focused{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.udp-react-select__indicator-separator{background-color:var(--border-color)}.udp-react-select__multi-value{background-color:var(--brand-primary-light)}.udp-react-select__multi-value__label{color:var(--brand-primary-dark);font-size:12px}.udp-react-select__multi-value__remove:hover{background-color:var(--brand-primary-light);color:var(--brand-primary-dark)}.udp__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-top:1px solid var(--border-color);background:var(--surface-hover);flex-wrap:wrap;flex-shrink:0}.udp__footer-text{font-size:12.5px;color:var(--text-secondary)}.udp__footer-text strong{color:var(--text-primary);font-weight:700}.udp__save-btn{display:inline-flex;align-items:center;padding:10px 24px;font-size:14px;font-weight:600;color:var(--text-on-brand);border:none;border-radius:8px;cursor:pointer;background:var(--brand-gradient);transition:all .2s ease}.udp__save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.udp__save-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.udp__root{padding:8px}.udp__header{padding:14px 16px}.udp__body{padding:14px 16px;gap:14px}.udp__title{font-size:17px}.udp__footer{padding:12px 16px;flex-direction:column;align-items:stretch}.udp__save-btn{width:100%;justify-content:center}.udp-card__header{flex-wrap:wrap}.udp-card__header .udp-slab__add-btn{margin-left:0;width:100%;justify-content:center}.udp-rule__snapshot{grid-template-columns:repeat(3,1fr);gap:6px}.udp-rule__snapshot-value{font-size:16px}}.shd-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.shd-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.shd-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.shd-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.shd-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.shd-header-ico svg{font-size:20px}.shd-header-text{min-width:0}.shd-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.shd-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.shd-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.shd-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.shd-hbtn svg{font-size:var(--icon-size-sm)}.shd-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.shd-hbtn:disabled{opacity:.45;cursor:not-allowed}.shd-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.shd-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.shd-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.shd-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.shd-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.shd-search input:focus,.shd-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.shd-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.shd-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.shd-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.shd-search button svg{font-size:15px}.shd-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.shd-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.shd-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.shd-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.shd-chip svg{font-size:14px;color:var(--text-muted)}.shd-chip--muted{color:var(--text-muted)}.shd-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.shd-chip--warn b{color:var(--status-warning)}.shd-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.shd-table-wrap{flex:1;min-height:0;overflow:auto}.shd-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.shd-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.shd-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.shd-table tbody tr:nth-child(odd) td{background:#fff}.shd-table tbody tr:nth-child(2n) td{background:#f9f9f9}.shd-table tbody tr:hover td{background:var(--surface-hover)}.shd-num{text-align:right!important}.shd-col-act{width:1%;white-space:nowrap;text-align:right!important}.shd-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.shd-name,.shd-strong{font-weight:var(--fw-semibold)}.shd-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.shd-muted{color:var(--text-muted)}.shd-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.shd-tag svg{font-size:13px}.shd-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.shd-pill--info{background:var(--status-info-light);color:var(--status-info)}.shd-pill--ok{background:var(--status-success-light);color:var(--status-success)}.shd-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.shd-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.shd-row-actions{display:inline-flex;gap:4px}.shd-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.shd-act svg{font-size:16px}.shd-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.shd-act--danger{color:var(--status-danger)}.shd-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.shd-act:disabled{opacity:.4;cursor:not-allowed}.shd-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.shd-footer-hint{color:var(--text-muted)}.shd-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.shd-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:shd-shimmer 1.4s infinite linear}.shd-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.shd-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.shd-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.shd-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.shd-state-ico svg{font-size:24px}.shd-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.shd-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.shd-btn svg{font-size:var(--icon-size-sm)}.shd-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.shd-btn:disabled{opacity:.5;cursor:not-allowed}.shd-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.shd-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.shd-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.shd-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.shd-btn--plain{background:var(--surface-card)}.shd-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.shd-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.shd-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.shd-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.shd-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.shd-dlg-head>div{flex:1;min-width:0}.shd-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.shd-dlg-ico svg{font-size:19px}.shd-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.shd-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.shd-dlg-x svg{font-size:18px}.shd-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.shd-dlg-body p{margin:0}.shd-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.shd-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.shd-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:shd-rotate .7s linear infinite}.shd-spin--light{color:var(--text-on-brand)}.shd-rotating{animation:shd-rotate .8s linear infinite}@keyframes shd-rotate{to{transform:rotate(360deg)}}@keyframes shd-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.shd-chips{margin-left:0;width:100%}.shd-search{max-width:none}}@media (max-width: 720px){.shd-card{height:auto;min-height:0}.shd-header,.shd-toolbar,.shd-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.shd-hbtn--solid span{display:none}.shd-table-wrap{overflow:visible}.shd-table thead{display:none}.shd-table,.shd-table tbody,.shd-table tr,.shd-table td{display:block;width:100%}.shd-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.shd-table tbody tr:nth-child(odd) td,.shd-table tbody tr:nth-child(2n) td{background:transparent}.shd-table td{border:none;padding:3px var(--space-3);text-align:left!important}.shd-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.shd-col-act{width:auto}}.shd-field{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.shd-col-check{width:36px;text-align:center!important}.shd-col-check input{accent-color:var(--brand-primary);width:15px;height:15px;cursor:pointer}.shd-table tbody tr.shd-row--on td{background:var(--brand-primary-lighter, var(--surface-hover))}.shd-stale{padding:6px var(--space-4);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold);flex-shrink:0}.shd-footer .shd-btn{height:var(--control-height-sm)}@media (max-width: 720px){.shd-field{width:100%}.shd-field .shd-select{flex:1}.shd-col-check{width:auto;text-align:left!important}}.ly-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ly-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.ly-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.ly-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ly-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ly-header-text{min-width:0}.ly-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.ly-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ly-ico-md{font-size:20px!important}.ly-ico{font-size:var(--icon-size)!important}.ly-ico-sm{font-size:var(--icon-size-sm)!important}.ly-ico-xs{font-size:14px!important}.ly-ico--spin{animation:ly-rotate .8s linear infinite}.ly-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ly-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.ly-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.ly-btn-icon:hover:not(:disabled):not(.ly-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.ly-btn-icon:disabled,.ly-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.ly-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.ly-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.ly-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.ly-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.ly-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.ly-btn-primary:disabled{opacity:.5;cursor:not-allowed}.ly-btn-solid,.ly-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.ly-btn-solid:active,.ly-btn-plain:active{transform:scale(.97)}.ly-btn-solid:disabled,.ly-btn-plain:disabled{opacity:.55;cursor:not-allowed}.ly-btn-solid{border:none;color:var(--text-on-brand)}.ly-btn-solid--primary{background:var(--brand-gradient)}.ly-btn-solid--danger,.ly-btn-solid--error{background:var(--status-danger)}.ly-btn-solid:hover:not(:disabled){opacity:.9}.ly-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.ly-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ly-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.ly-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.ly-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ly-rotate .7s linear infinite}@keyframes ly-rotate{to{transform:rotate(360deg)}}.ly-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.ly-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.ly-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.ly-search-field{position:relative;display:flex;align-items:center}.ly-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ly-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ly-search-input::placeholder{color:var(--text-muted)}.ly-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ly-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.ly-search-clear svg{font-size:12px}.ly-search-clear:hover{background:var(--status-danger)}.ly-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.ly-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.ly-thead{position:sticky;top:0;z-index:var(--z-sticky)}.ly-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.ly-row{animation:ly-row-in .22s ease both}@keyframes ly-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.ly-row:nth-child(2n){background:#f9f9f9}.ly-row:nth-child(odd){background:#fff}.ly-row:hover,.ly-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.ly-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ly-col-code{width:190px}.ly-col-period{width:auto}.ly-col-days{width:110px}.ly-col-timeline{width:130px}.ly-col-actions{width:128px;text-align:center}.ly-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.ly-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.ly-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.ly-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.ly-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.ly-action-btn svg{font-size:15px}.ly-action-btn:disabled{opacity:.4;pointer-events:none}.ly-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ly-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.ly-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.ly-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.ly-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.ly-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.ly-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.ly-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.ly-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.ly-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:ly-fade-in .3s ease both}@keyframes ly-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ly-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.ly-state-icon-wrap svg{font-size:28px}.ly-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.ly-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.ly-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.ly-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.ly-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.ly-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:ly-fade-in .3s ease both}.ly-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:ly-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes ly-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ly-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.ly-sk-text{flex:1;max-width:220px}.ly-sk-text--wide{max-width:320px}.ly-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.ly-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:ly-fade .18s ease both}@keyframes ly-fade{0%{opacity:0}to{opacity:1}}.ly-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:ly-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ly-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ly-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.ly-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.ly-dlg-icon svg{font-size:22px}.ly-dlg-icon--danger,.ly-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.ly-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.ly-dlg-head-text{flex:1;min-width:0}.ly-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.ly-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ly-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ly-dlg-x svg{font-size:var(--icon-size)}.ly-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.ly-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.ly-dlg-list li+li{margin-top:2px}.ly-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.ly-col-code{width:160px}.ly-col-days{display:none}}@media (max-width: 768px){.ly-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.ly-header{padding:var(--space-3)}.ly-header-left{flex:1 1 100%}.ly-actions{width:100%}.ly-btn-primary{margin-left:auto}.ly-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.ly-btn-primary span{display:none}.ly-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.ly-actions-sep{display:none}.ly-search-grid{grid-template-columns:1fr}.ly-table,.ly-table tbody,.ly-table tr,.ly-table td{display:block;width:100%}.ly-thead{display:none}.ly-table tbody{padding:var(--space-2)}.ly-row,.ly-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.ly-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.ly-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.ly-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.ly-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.ly-col-code{padding-right:112px}.ly-col-days{display:flex}.ly-banner{flex-wrap:wrap}.ly-action-btn{width:32px;height:32px}.ly-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.ly-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.ly-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.ly-dlg-foot>button{flex:1}}.ly-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-sm);color:var(--text-secondary);flex-shrink:0}.ly-banner-ico{width:28px;height:28px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--status-success-light);color:var(--status-success)}.ly-banner-ico svg{font-size:var(--icon-size-sm)}.ly-banner--warn .ly-banner-ico{background:var(--status-warning-light);color:var(--status-warning)}.ly-banner strong{color:var(--text-primary)}.ly-banner-text{flex:1;min-width:0}.ly-banner-progress{display:flex;align-items:center;gap:var(--space-2);flex:0 1 260px;min-width:160px;font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.ly-progress{flex:1;height:6px;border-radius:var(--radius-pill);background:var(--border-color);overflow:hidden}.ly-progress-fill{height:100%;border-radius:inherit;background:var(--brand-gradient)}.ly-banner-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.ly-banner-link:hover{text-decoration:underline}.ly-code-cell{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0}.ly-period{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap}.ly-period-arrow{font-size:14px!important;color:var(--text-muted)}.ly-days{font-size:var(--fs-sm);color:var(--text-secondary);font-variant-numeric:tabular-nums}.ly-chip{display:inline-flex;align-items:center;gap:4px;padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.ly-chip svg{font-size:12px}.ly-chip--current{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.3)}.ly-chip--running{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.ly-chip--upcoming{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ly-chip--closed{background:var(--surface-page);color:var(--text-muted);border-color:var(--border-color)}.ly-row--current td:first-child{box-shadow:inset 3px 0 0 var(--status-success)}.ly-action-btn--activate{background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.ly-action-btn--activate:hover{background:var(--brand-primary);color:var(--text-on-brand);transform:translateY(-1px)}.ly-action-placeholder{width:28px;height:28px;display:inline-block}.ly-search-input[type=date]{padding-right:var(--space-2)}@media (max-width: 600px){.ly-banner{padding:var(--space-2) var(--space-3)}.ly-banner-progress{flex:1 1 100%}.ly-action-placeholder{display:none}}.cly-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:clyFadeIn .18s ease both}@keyframes clyFadeIn{0%{opacity:0}to{opacity:1}}.cly-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:clySlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes clySlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cly-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cly-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cly-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cly-header-icon svg{font-size:20px}.cly-header-text{min-width:0}.cly-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cly-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cly-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cly-close-btn svg{font-size:var(--icon-size)}.cly-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cly-close-btn:disabled{opacity:.5;cursor:not-allowed}.cly-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cly-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cly-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cly-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cly-alert-text span{color:var(--text-secondary)}.cly-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cly-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cly-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.cly-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cly-form-group--full{grid-column:1 / -1}.cly-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cly-required{color:var(--status-danger)}.cly-input-wrapper{position:relative;display:flex;align-items:center}.cly-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cly-input-wrapper:focus-within .cly-input-icon{color:var(--brand-primary)}.cly-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cly-input::placeholder{color:var(--text-muted)}.cly-input:hover:not(:disabled){border-color:var(--text-muted)}.cly-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cly-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cly-input-error,.cly-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cly-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cly-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cly-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cly-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cly-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cly-footer-actions{display:flex;gap:var(--space-2)}.cly-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cly-btn:active:not(:disabled){transform:scale(.97)}.cly-btn:disabled{opacity:.55;cursor:not-allowed}.cly-btn-ico{font-size:var(--icon-size)!important}.cly-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cly-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cly-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cly-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cly-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:clySpin .7s linear infinite}@keyframes clySpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cly-backdrop{align-items:flex-end;padding:var(--space-2)}.cly-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cly-header,.cly-body{padding:var(--space-3)}.cly-form{grid-template-columns:1fr;gap:var(--space-3)}.cly-footer{padding:var(--space-3)}.cly-footer-note{display:none}.cly-footer-actions{width:100%}.cly-footer-actions .cly-btn{flex:1;min-width:0}}.cly-sheet{max-width:var(--modal-width-md)}.cly-form{grid-template-columns:1fr 1fr}.cly-date-input{padding-right:var(--space-2)}.cly-summary{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-sm);color:var(--text-secondary)}.cly-summary strong{color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.cly-summary svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.cly-summary--warn{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3)}.cly-summary--warn svg,.cly-summary--warn strong{color:var(--status-warning)}.cly-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.cly-link:hover{text-decoration:underline}.cly-switch{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.cly-switch:hover{background:var(--surface-hover)}.cly-switch--on{border-color:rgba(var(--status-success-rgb),.4);background:var(--status-success-light)}.cly-switch--on:hover{background:var(--status-success-light)}.cly-switch input{position:absolute;opacity:0;width:0;height:0}.cly-track{position:relative;width:36px;height:20px;flex-shrink:0;margin-top:2px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast)}.cly-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.cly-switch input:checked+.cly-track{background:var(--status-success)}.cly-switch input:checked+.cly-track:after{transform:translate(16px)}.cly-switch input:focus-visible+.cly-track{box-shadow:var(--focus-ring)}.cly-switch-text{display:flex;flex-direction:column;gap:2px;min-width:0}.cly-switch-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cly-switch-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}@media (max-width: 600px){.cly-form{grid-template-columns:1fr}}.uly-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:ulyFadeIn .18s ease both}@keyframes ulyFadeIn{0%{opacity:0}to{opacity:1}}.uly-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:ulySlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ulySlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uly-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.uly-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uly-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uly-header-icon svg{font-size:20px}.uly-header-text{min-width:0}.uly-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.uly-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.uly-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.uly-close-btn svg{font-size:var(--icon-size)}.uly-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.uly-close-btn:disabled{opacity:.5;cursor:not-allowed}.uly-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.uly-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.uly-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uly-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.uly-alert-text span{color:var(--text-secondary)}.uly-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.uly-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.uly-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.uly-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.uly-form-group--full{grid-column:1 / -1}.uly-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uly-required{color:var(--status-danger)}.uly-input-wrapper{position:relative;display:flex;align-items:center}.uly-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.uly-input-wrapper:focus-within .uly-input-icon{color:var(--brand-primary)}.uly-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uly-input::placeholder{color:var(--text-muted)}.uly-input:hover:not(:disabled){border-color:var(--text-muted)}.uly-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uly-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.uly-input-error,.uly-input-error:hover:not(:disabled){border-color:var(--status-danger)}.uly-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.uly-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.uly-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.uly-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.uly-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uly-footer-actions{display:flex;gap:var(--space-2)}.uly-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.uly-btn:active:not(:disabled){transform:scale(.97)}.uly-btn:disabled{opacity:.55;cursor:not-allowed}.uly-btn-ico{font-size:var(--icon-size)!important}.uly-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uly-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uly-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.uly-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.uly-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ulySpin .7s linear infinite}@keyframes ulySpin{to{transform:rotate(360deg)}}.uly-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.uly-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uly-current-ico{font-size:13px!important;flex-shrink:0}.uly-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:160px;font-size:var(--fs-sm);color:var(--text-secondary)}.uly-loading .uly-spin{color:var(--brand-primary);width:18px;height:18px}@media (max-width: 600px){.uly-backdrop{align-items:flex-end;padding:var(--space-2)}.uly-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uly-header,.uly-body{padding:var(--space-3)}.uly-form{grid-template-columns:1fr;gap:var(--space-3)}.uly-footer{padding:var(--space-3)}.uly-footer-note{display:none}.uly-footer-actions{width:100%}.uly-footer-actions .uly-btn{flex:1;min-width:0}}.uly-sheet{max-width:var(--modal-width-md)}.uly-form{grid-template-columns:1fr 1fr}.uly-date-input{padding-right:var(--space-2)}.uly-summary{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-sm);color:var(--text-secondary)}.uly-summary strong{color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.uly-summary svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.uly-summary--warn{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3)}.uly-summary--warn svg,.uly-summary--warn strong{color:var(--status-warning)}.uly-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.uly-link:hover{text-decoration:underline}.uly-switch{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.uly-switch:hover{background:var(--surface-hover)}.uly-switch--on{border-color:rgba(var(--status-success-rgb),.4);background:var(--status-success-light)}.uly-switch--on:hover{background:var(--status-success-light)}.uly-switch input{position:absolute;opacity:0;width:0;height:0}.uly-track{position:relative;width:36px;height:20px;flex-shrink:0;margin-top:2px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast)}.uly-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.uly-switch input:checked+.uly-track{background:var(--status-success)}.uly-switch input:checked+.uly-track:after{transform:translate(16px)}.uly-switch input:focus-visible+.uly-track{box-shadow:var(--focus-ring)}.uly-switch-text{display:flex;flex-direction:column;gap:2px;min-width:0}.uly-switch-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uly-switch-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}@media (max-width: 600px){.uly-form{grid-template-columns:1fr}}.lt-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.lt-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.lt-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.lt-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.lt-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lt-header-text{min-width:0}.lt-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.lt-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lt-ico-md{font-size:20px!important}.lt-ico{font-size:var(--icon-size)!important}.lt-ico-sm{font-size:var(--icon-size-sm)!important}.lt-ico-xs{font-size:14px!important}.lt-ico--spin{animation:lt-rotate .8s linear infinite}.lt-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.lt-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.lt-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.lt-btn-icon:hover:not(:disabled):not(.lt-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.lt-btn-icon:disabled,.lt-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.lt-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.lt-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.lt-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.lt-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.lt-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.lt-btn-primary:disabled{opacity:.5;cursor:not-allowed}.lt-btn-solid,.lt-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.lt-btn-solid:active,.lt-btn-plain:active{transform:scale(.97)}.lt-btn-solid:disabled,.lt-btn-plain:disabled{opacity:.55;cursor:not-allowed}.lt-btn-solid{border:none;color:var(--text-on-brand)}.lt-btn-solid--primary{background:var(--brand-gradient)}.lt-btn-solid--danger,.lt-btn-solid--error{background:var(--status-danger)}.lt-btn-solid:hover:not(:disabled){opacity:.9}.lt-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.lt-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.lt-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.lt-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.lt-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:lt-rotate .7s linear infinite}@keyframes lt-rotate{to{transform:rotate(360deg)}}.lt-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.lt-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.lt-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.lt-search-field{position:relative;display:flex;align-items:center}.lt-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.lt-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.lt-search-input::placeholder{color:var(--text-muted)}.lt-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.lt-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.lt-search-clear svg{font-size:12px}.lt-search-clear:hover{background:var(--status-danger)}.lt-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.lt-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.lt-thead{position:sticky;top:0;z-index:var(--z-sticky)}.lt-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.lt-row{animation:lt-row-in .22s ease both}@keyframes lt-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.lt-row:nth-child(2n){background:#f9f9f9}.lt-row:nth-child(odd){background:#fff}.lt-row:hover,.lt-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.lt-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lt-col-code{width:150px}.lt-col-name{width:auto}.lt-col-kind{width:150px}.lt-col-bank{width:130px}.lt-col-actions{width:104px;text-align:center}.lt-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.lt-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.lt-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.lt-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.lt-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.lt-action-btn svg{font-size:15px}.lt-action-btn:disabled{opacity:.4;pointer-events:none}.lt-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.lt-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.lt-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.lt-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.lt-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.lt-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.lt-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.lt-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.lt-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.lt-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:lt-fade-in .3s ease both}@keyframes lt-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.lt-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.lt-state-icon-wrap svg{font-size:28px}.lt-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.lt-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.lt-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.lt-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.lt-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.lt-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:lt-fade-in .3s ease both}.lt-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:lt-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes lt-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.lt-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.lt-sk-text{flex:1;max-width:220px}.lt-sk-text--wide{max-width:320px}.lt-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.lt-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:lt-fade .18s ease both}@keyframes lt-fade{0%{opacity:0}to{opacity:1}}.lt-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:lt-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes lt-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.lt-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.lt-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.lt-dlg-icon svg{font-size:22px}.lt-dlg-icon--danger,.lt-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.lt-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.lt-dlg-head-text{flex:1;min-width:0}.lt-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.lt-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.lt-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lt-dlg-x svg{font-size:var(--icon-size)}.lt-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.lt-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.lt-dlg-list li+li{margin-top:2px}.lt-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.lt-col-code{width:120px}.lt-col-bank{display:none}}@media (max-width: 768px){.lt-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.lt-header{padding:var(--space-3)}.lt-header-left{flex:1 1 100%}.lt-actions{width:100%}.lt-btn-primary{margin-left:auto}.lt-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.lt-btn-primary span{display:none}.lt-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.lt-actions-sep{display:none}.lt-search-grid{grid-template-columns:1fr}.lt-table,.lt-table tbody,.lt-table tr,.lt-table td{display:block;width:100%}.lt-thead{display:none}.lt-table tbody{padding:var(--space-2)}.lt-row,.lt-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.lt-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.lt-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.lt-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.lt-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.lt-col-code{padding-right:76px}.lt-action-btn{width:32px;height:32px}.lt-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.lt-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.lt-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.lt-dlg-foot>button{flex:1}}.lt-chip{display:inline-flex;align-items:center;gap:4px;padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.lt-chip svg{font-size:12px}.lt-chip--regular{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.lt-chip--special{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.lt-muted{color:var(--text-muted);font-size:var(--fs-sm)}.lt-search-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:var(--space-6);background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}@media (max-width: 600px){.lt-col-bank{display:flex}}.clt-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:cltFadeIn .18s ease both}@keyframes cltFadeIn{0%{opacity:0}to{opacity:1}}.clt-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:cltSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cltSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.clt-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.clt-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.clt-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.clt-header-icon svg{font-size:20px}.clt-header-text{min-width:0}.clt-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.clt-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.clt-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.clt-close-btn svg{font-size:var(--icon-size)}.clt-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.clt-close-btn:disabled{opacity:.5;cursor:not-allowed}.clt-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.clt-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.clt-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.clt-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.clt-alert-text span{color:var(--text-secondary)}.clt-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.clt-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.clt-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.clt-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.clt-form-group--full{grid-column:1 / -1}.clt-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.clt-required{color:var(--status-danger)}.clt-input-wrapper{position:relative;display:flex;align-items:center}.clt-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.clt-input-wrapper:focus-within .clt-input-icon{color:var(--brand-primary)}.clt-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.clt-input::placeholder{color:var(--text-muted)}.clt-input:hover:not(:disabled){border-color:var(--text-muted)}.clt-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.clt-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.clt-input-error,.clt-input-error:hover:not(:disabled){border-color:var(--status-danger)}.clt-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.clt-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.clt-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.clt-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.clt-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.clt-footer-actions{display:flex;gap:var(--space-2)}.clt-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.clt-btn:active:not(:disabled){transform:scale(.97)}.clt-btn:disabled{opacity:.55;cursor:not-allowed}.clt-btn-ico{font-size:var(--icon-size)!important}.clt-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.clt-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.clt-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.clt-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.clt-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cltSpin .7s linear infinite}@keyframes cltSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.clt-backdrop{align-items:flex-end;padding:var(--space-2)}.clt-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.clt-header,.clt-body{padding:var(--space-3)}.clt-form{grid-template-columns:1fr;gap:var(--space-3)}.clt-footer{padding:var(--space-3)}.clt-footer-note{display:none}.clt-footer-actions{width:100%}.clt-footer-actions .clt-btn{flex:1;min-width:0}}.clt-sheet{max-width:var(--modal-width-md)}.clt-form{grid-template-columns:1fr 2fr}.clt-optional{font-weight:var(--fw-regular);color:var(--text-muted);font-size:var(--fs-xs)}.clt-choices{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.clt-choice{position:relative;display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.clt-choice:hover{background:var(--surface-hover)}.clt-choice input{position:absolute;opacity:0;width:0;height:0}.clt-choice--on,.clt-choice--on:hover{border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.clt-choice--special.clt-choice--on,.clt-choice--special.clt-choice--on:hover{border-color:var(--status-warning);background:var(--status-warning-light);box-shadow:inset 0 0 0 1px var(--status-warning)}.clt-choice:focus-within{box-shadow:var(--focus-ring)}.clt-choice-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--brand-primary-light);color:var(--brand-primary)}.clt-choice--special .clt-choice-ico{background:var(--status-warning-light);color:var(--status-warning)}.clt-choice-ico svg{font-size:var(--icon-size-sm)}.clt-choice-text{display:flex;flex-direction:column;gap:2px;min-width:0}.clt-choice-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.clt-choice-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.clt-advanced{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3)}.clt-advanced>summary{cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-secondary);list-style:none;display:flex;align-items:center;gap:6px}.clt-advanced>summary::-webkit-details-marker{display:none}.clt-advanced>summary svg{font-size:var(--icon-size);transition:transform var(--transition-fast)}.clt-advanced[open]>summary svg{transform:rotate(90deg)}.clt-advanced-body{display:flex;flex-direction:column;gap:6px;margin-top:var(--space-2)}@media (max-width: 600px){.clt-form,.clt-choices{grid-template-columns:1fr}}.ult-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:ultFadeIn .18s ease both}@keyframes ultFadeIn{0%{opacity:0}to{opacity:1}}.ult-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:ultSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ultSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ult-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.ult-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ult-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ult-header-icon svg{font-size:20px}.ult-header-text{min-width:0}.ult-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.ult-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.ult-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.ult-close-btn svg{font-size:var(--icon-size)}.ult-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.ult-close-btn:disabled{opacity:.5;cursor:not-allowed}.ult-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.ult-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.ult-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.ult-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.ult-alert-text span{color:var(--text-secondary)}.ult-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.ult-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.ult-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.ult-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.ult-form-group--full{grid-column:1 / -1}.ult-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.ult-required{color:var(--status-danger)}.ult-input-wrapper{position:relative;display:flex;align-items:center}.ult-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.ult-input-wrapper:focus-within .ult-input-icon{color:var(--brand-primary)}.ult-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ult-input::placeholder{color:var(--text-muted)}.ult-input:hover:not(:disabled){border-color:var(--text-muted)}.ult-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ult-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.ult-input-error,.ult-input-error:hover:not(:disabled){border-color:var(--status-danger)}.ult-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.ult-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.ult-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.ult-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.ult-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.ult-footer-actions{display:flex;gap:var(--space-2)}.ult-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.ult-btn:active:not(:disabled){transform:scale(.97)}.ult-btn:disabled{opacity:.55;cursor:not-allowed}.ult-btn-ico{font-size:var(--icon-size)!important}.ult-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.ult-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ult-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.ult-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ult-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ultSpin .7s linear infinite}@keyframes ultSpin{to{transform:rotate(360deg)}}.ult-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.ult-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ult-current-ico{font-size:13px!important;flex-shrink:0}.ult-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:160px;font-size:var(--fs-sm);color:var(--text-secondary)}.ult-loading .ult-spin{color:var(--brand-primary);width:18px;height:18px}@media (max-width: 600px){.ult-backdrop{align-items:flex-end;padding:var(--space-2)}.ult-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.ult-header,.ult-body{padding:var(--space-3)}.ult-form{grid-template-columns:1fr;gap:var(--space-3)}.ult-footer{padding:var(--space-3)}.ult-footer-note{display:none}.ult-footer-actions{width:100%}.ult-footer-actions .ult-btn{flex:1;min-width:0}}.ult-sheet{max-width:var(--modal-width-md)}.ult-form{grid-template-columns:1fr 2fr}.ult-optional{font-weight:var(--fw-regular);color:var(--text-muted);font-size:var(--fs-xs)}.ult-choices{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.ult-choice{position:relative;display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.ult-choice:hover{background:var(--surface-hover)}.ult-choice input{position:absolute;opacity:0;width:0;height:0}.ult-choice--on,.ult-choice--on:hover{border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.ult-choice--special.ult-choice--on,.ult-choice--special.ult-choice--on:hover{border-color:var(--status-warning);background:var(--status-warning-light);box-shadow:inset 0 0 0 1px var(--status-warning)}.ult-choice:focus-within{box-shadow:var(--focus-ring)}.ult-choice-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--brand-primary-light);color:var(--brand-primary)}.ult-choice--special .ult-choice-ico{background:var(--status-warning-light);color:var(--status-warning)}.ult-choice-ico svg{font-size:var(--icon-size-sm)}.ult-choice-text{display:flex;flex-direction:column;gap:2px;min-width:0}.ult-choice-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.ult-choice-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.ult-advanced{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3)}.ult-advanced>summary{cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-secondary);list-style:none;display:flex;align-items:center;gap:6px}.ult-advanced>summary::-webkit-details-marker{display:none}.ult-advanced>summary svg{font-size:var(--icon-size);transition:transform var(--transition-fast)}.ult-advanced[open]>summary svg{transform:rotate(90deg)}.ult-advanced-body{display:flex;flex-direction:column;gap:6px;margin-top:var(--space-2)}@media (max-width: 600px){.ult-form,.ult-choices{grid-template-columns:1fr}}.ldt-root{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--section-gap);height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:480px;font-family:var(--font-family);color:var(--text-primary)}.ldt-btn-plain,.ldt-btn-primary,.ldt-btn-danger,.ldt-btn-on-brand,.ldt-btn-light{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.ldt-btn-plain svg,.ldt-btn-primary svg,.ldt-btn-danger svg,.ldt-btn-on-brand svg,.ldt-btn-light svg{font-size:var(--icon-size-sm)}.ldt-btn-plain:disabled,.ldt-btn-primary:disabled,.ldt-btn-danger:disabled{opacity:.55;cursor:not-allowed}.ldt-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.ldt-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ldt-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none}.ldt-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ldt-btn-primary--sm{height:30px;padding:0 var(--space-2)}.ldt-btn-danger{background:var(--status-danger);color:var(--text-on-brand);border:none}.ldt-btn-danger:hover:not(:disabled){opacity:.9}.ldt-btn-on-brand{background:transparent;color:var(--text-on-brand);border:1px solid rgba(var(--text-on-brand-rgb),.35)}.ldt-btn-on-brand:hover{background:rgba(var(--text-on-brand-rgb),.14)}.ldt-btn-light{background:var(--surface-card);color:var(--brand-primary-dark);border:1px solid var(--surface-card)}.ldt-btn-light:hover{box-shadow:var(--shadow-md)}.ldt-icon-btn{width:28px;height:28px;flex-shrink:0;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.ldt-icon-btn svg{font-size:15px}.ldt-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ldt-icon-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ldt-icon-btn--edit:hover:not(:disabled){background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.ldt-icon-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.ldt-icon-btn--delete:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.ldt-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ldtSpin .7s linear infinite}.ldt-rot{animation:ldtSpin .8s linear infinite}@keyframes ldtSpin{to{transform:rotate(360deg)}}.ldt-req{color:var(--status-danger)}.ldt-optional{font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.ldt-groups{display:flex;flex-direction:column;min-height:0;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.ldt-groups-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3)}.ldt-groups-title{display:flex;align-items:center;gap:var(--space-2);min-width:0}.ldt-groups-title>svg{width:34px;height:34px;padding:7px;box-sizing:border-box;border-radius:var(--radius-lg);background:var(--brand-primary-light);color:var(--brand-primary);font-size:20px;flex-shrink:0}.ldt-groups-title h2{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ldt-groups-title p{margin:0;font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.ldt-groups-tools{display:flex;align-items:center;gap:6px;flex-shrink:0}.ldt-search{position:relative;display:flex;align-items:center;margin:0 var(--space-3) var(--space-2)}.ldt-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ldt-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ldt-search-input::placeholder{color:var(--text-muted)}.ldt-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ldt-search-clear{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ldt-search-clear svg{font-size:12px}.ldt-group-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:var(--space-2);border-top:1px solid var(--border-color)}.ldt-group{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border:1px solid transparent;border-radius:var(--radius-lg);background:transparent;font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.ldt-group:hover{background:var(--surface-hover)}.ldt-group--active,.ldt-group--active:hover{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2);box-shadow:inset 3px 0 0 var(--brand-primary)}.ldt-group-text{flex:1;min-width:0;display:flex;flex-direction:column}.ldt-group-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ldt-group-desc{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ldt-count{min-width:24px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px;text-align:center;flex-shrink:0}.ldt-count--empty{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ldt-group-sk{display:flex;flex-direction:column;gap:6px;padding:var(--space-2)}.ldt-sk{display:block;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:ldtShimmer 1.4s infinite linear}.ldt-sk-line{height:10px;width:70%}.ldt-sk-line--short{width:45%}@keyframes ldtShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ldt-detail{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.ldt-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.ldt-back{display:none;width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);align-items:center;justify-content:center;cursor:pointer}.ldt-back svg{font-size:var(--icon-size)}.ldt-bar-text{flex:1;min-width:0}.ldt-bar-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ldt-bar-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ldt-bar-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.ldt-defs{flex:1;min-height:0;overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-4);background:var(--surface-page);display:flex;flex-direction:column;gap:var(--space-3)}.ldt-def-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:var(--space-3)}.ldt-def{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ldt-def:hover{border-color:var(--brand-primary-tint2);box-shadow:var(--shadow-md)}.ldt-def-head{display:flex;align-items:center;gap:var(--space-2)}.ldt-def-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-gradient);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.ldt-def-ico svg{font-size:var(--icon-size-sm)}.ldt-def-title-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.ldt-def-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ldt-def-code{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.ldt-def-actions{display:flex;gap:6px;flex-shrink:0}.ldt-def-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.ldt-stat{display:flex;flex-direction:column;padding:var(--space-2);border-radius:var(--radius-md);background:var(--surface-page)}.ldt-stat-num{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--brand-primary-dark);font-variant-numeric:tabular-nums;line-height:var(--lh-tight)}.ldt-stat-label{font-size:var(--fs-xs);color:var(--text-muted)}.ldt-def-tags{display:flex;flex-wrap:wrap;gap:4px}.ldt-tag{padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.ldt-tag--ok{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ldt-tag--warn{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ldt-tag--info{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.ldt-tag--muted{background:var(--surface-page);color:var(--text-secondary);border-color:var(--border-color)}.ldt-def-line{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.ldt-def-line svg{font-size:14px;color:var(--text-muted)}.ldt-def-adj{display:flex;flex-direction:column;gap:4px;padding-top:var(--space-2);border-top:1px dashed var(--border-color)}.ldt-adj{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.ldt-adj-label{width:62px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.ldt-adj-dot{display:inline-flex;align-items:center;gap:2px;padding:0 6px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:var(--fs-xs);line-height:18px;white-space:nowrap}.ldt-adj-dot--no{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.2)}.ldt-adj-dot--allow{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ldt-adj-dot--count{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ldt-key{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.ldt-key .ldt-adj-dot{margin-left:var(--space-2)}.ldt-key .ldt-adj-dot:first-child{margin-left:0}.ldt-key-note{color:var(--text-muted)}.ldt-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.ldt-state--compact{padding:var(--space-6) var(--space-3)}.ldt-state--panel{flex:1}.ldt-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.ldt-state-ico svg{font-size:26px}.ldt-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.ldt-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ldt-state-desc{margin:0 0 var(--space-1);max-width:420px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ldt-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family)}.ldt-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;color:var(--text-primary)}.ldt-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.ldt-dlg-icon{width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.ldt-dlg-icon svg{font-size:22px}.ldt-dlg-head-text{flex:1;min-width:0}.ldt-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold)}.ldt-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ldt-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.ldt-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.ldt-dlg-x svg{font-size:var(--icon-size)}.ldt-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.ldt-gd{max-width:var(--modal-width-md)}.ldt-gd-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand)}.ldt-gd-icon{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.ldt-gd-icon svg{font-size:20px}.ldt-gd-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.ldt-gd-sub{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ldt-gd-x{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ldt-gd-x svg{font-size:var(--icon-size)}.ldt-gd-body{display:flex;flex-direction:column;gap:6px;padding:var(--space-4)}.ldt-gd-label{margin-top:var(--space-1);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.ldt-gd-input{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ldt-gd-input:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ldt-gd-input--error{border-color:var(--status-danger)}.ldt-gd-input>svg{font-size:var(--icon-size-sm);color:var(--text-muted);flex-shrink:0}.ldt-gd-input input,.ldt-gd-input textarea{flex:1;min-width:0;border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-base)}.ldt-gd-input input{height:var(--control-height)}.ldt-gd-input input:focus,.ldt-gd-input textarea:focus{outline:none}.ldt-gd-input--area{align-items:flex-start;padding-top:var(--space-2);padding-bottom:var(--space-2)}.ldt-gd-input--area>svg{margin-top:2px}.ldt-gd-input textarea{resize:vertical;min-height:60px;line-height:var(--lh-base)}.ldt-gd-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger)}.ldt-gd-hint{align-self:flex-end;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}@media (max-width: 1024px){.ldt-root{grid-template-columns:250px minmax(0,1fr)}.ldt-bar-actions .ldt-btn-on-brand span{display:none}}@media (max-width: 768px){.ldt-root{grid-template-columns:minmax(0,1fr);height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.ldt-root--detail .ldt-groups{display:none}.ldt-root:not(.ldt-root--detail) .ldt-detail{display:none}.ldt-back{display:inline-flex}.ldt-bar{flex-wrap:wrap;padding:var(--space-3)}.ldt-bar-actions{flex-basis:100%;justify-content:flex-end}.ldt-detail{min-height:70vh}.ldt-defs{padding:var(--space-2)}}@media (max-width: 600px){.ldt-def-grid{grid-template-columns:minmax(0,1fr)}.ldt-bar-actions .ldt-btn-light{flex:1}.ldt-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.ldt-dlg-foot>button{flex:1}}.alg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary);animation:algFade .18s ease both}@keyframes algFade{0%{opacity:0}to{opacity:1}}.alg-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:algUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes algUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.alg-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.alg-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.alg-header-icon{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.alg-header-icon svg{font-size:20px}.alg-header-text{min-width:0}.alg-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.alg-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.alg-subtitle strong{color:var(--text-on-brand)}.alg-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.alg-close:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.alg-close svg{font-size:var(--icon-size)}.alg-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface-page)}.alg-section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);min-width:0}.alg-section-head{display:flex;align-items:flex-start;gap:var(--space-2)}.alg-section-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.alg-section-ico svg{font-size:var(--icon-size-sm)}.alg-section-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.alg-section-desc{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.alg-section-body{display:flex;flex-direction:column;gap:var(--space-3)}.alg-grid{display:grid;gap:var(--space-3)}.alg-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.alg-grid--4{grid-template-columns:2fr repeat(3,minmax(0,1fr))}.alg-grid--sections{gap:var(--space-3);align-items:stretch}.alg-grid--sections>.alg-section{height:100%;box-sizing:border-box}.alg-field{display:flex;flex-direction:column;gap:6px;min-width:0}.alg-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.alg-req{color:var(--status-danger)}.alg-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.alg-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.alg-select{height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);min-width:0}.alg-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.alg-select:disabled{background:var(--surface-page);color:var(--text-muted)}.alg-select--error{border-color:var(--status-danger)}.alg-num{display:flex;align-items:center;height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.alg-num:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.alg-num--error{border-color:var(--status-danger)}.alg-num input{flex:1;min-width:0;height:100%;padding:0 var(--space-3);border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);font-variant-numeric:tabular-nums}.alg-num input:focus{outline:none}.alg-num input::placeholder{color:var(--text-muted)}.alg-num-suffix{flex-shrink:0;padding:0 var(--space-2);height:100%;display:flex;align-items:center;background:var(--surface-page);border-left:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.alg-inline-error{display:flex;align-items:center;gap:6px;height:var(--control-height);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.alg-inline-error svg{font-size:var(--icon-size-sm)}.alg-link{margin-left:auto;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.alg-switch{position:relative;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.alg-switch:hover{background:var(--surface-hover)}.alg-switch--on{border-color:var(--brand-primary-tint2);background:var(--brand-primary-light)}.alg-switch--on:hover{background:var(--brand-primary-light)}.alg-switch input{position:absolute;opacity:0;width:0;height:0}.alg-track{position:relative;width:36px;height:20px;flex-shrink:0;margin-top:1px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast)}.alg-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.alg-switch input:checked+.alg-track{background:var(--brand-primary)}.alg-switch input:checked+.alg-track:after{transform:translate(16px)}.alg-switch input:focus-visible+.alg-track{box-shadow:var(--focus-ring)}.alg-switch-text{display:flex;flex-direction:column;gap:2px;min-width:0}.alg-switch-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.alg-switch-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.alg-choice{position:relative;display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.alg-choice:hover{background:var(--surface-hover)}.alg-choice input{position:absolute;opacity:0;width:0;height:0}.alg-choice:focus-within{box-shadow:var(--focus-ring)}.alg-choice--on,.alg-choice--on:hover{border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.alg-choice-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-page);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.alg-choice--on .alg-choice-ico{background:var(--surface-card)}.alg-choice-ico svg{font-size:var(--icon-size-sm)}.alg-choice-text{display:flex;flex-direction:column;gap:2px;min-width:0}.alg-choice-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.alg-choice-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.alg-matrix{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.alg-matrix-row{display:grid;grid-template-columns:120px repeat(3,minmax(0,1fr));align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color)}.alg-matrix-row--head{border-top:none;background:var(--surface-page);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.alg-matrix-col{display:flex;flex-direction:column}.alg-matrix-col small{font-weight:var(--fw-regular);color:var(--text-muted)}.alg-matrix-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.alg-matrix-label svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.alg-matrix-cell{min-width:0}.alg-seg{display:flex;width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-card)}.alg-seg-btn{flex:1;min-width:0;height:30px;padding:0 4px;border:none;border-left:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.alg-seg-btn:first-child{border-left:none}.alg-seg-btn:hover:not(:disabled):not(.alg-seg-btn--on){background:var(--surface-hover);color:var(--text-primary)}.alg-seg-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.alg-seg-btn--no.alg-seg-btn--on{background:var(--status-danger-light);color:var(--status-danger)}.alg-seg-btn--allow.alg-seg-btn--on{background:var(--status-success-light);color:var(--status-success)}.alg-seg-btn--count.alg-seg-btn--on{background:var(--status-warning-light);color:var(--status-warning)}.alg-legend{margin:0;display:flex;flex-wrap:wrap;gap:4px var(--space-4);font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.alg-legend b{color:var(--text-primary);font-weight:var(--fw-semibold)}.alg-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.alg-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.alg-footer-actions{display:flex;gap:var(--space-2)}.alg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:opacity var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.alg-btn svg{font-size:var(--icon-size)}.alg-btn:disabled{opacity:.55;cursor:not-allowed}.alg-btn--plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.alg-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.alg-btn--primary{min-width:150px;background:var(--brand-gradient);color:var(--text-on-brand);border:none}.alg-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.alg-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:algSpin .7s linear infinite}@keyframes algSpin{to{transform:rotate(360deg)}}@media (max-width: 900px){.alg-grid--4{grid-template-columns:repeat(3,minmax(0,1fr))}.alg-field--wide{grid-column:1 / -1}}@media (max-width: 768px){.alg-grid--sections{grid-template-columns:minmax(0,1fr)}.alg-matrix-row--head{display:none}.alg-matrix-row{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.alg-matrix-cell{display:flex;flex-direction:column;gap:4px}.alg-matrix-cell:before{content:attr(data-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}}@media (max-width: 600px){.alg-backdrop{align-items:flex-end;padding:0}.alg-sheet{max-width:none;max-height:94vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.alg-header{padding:var(--space-3)}.alg-body{padding:var(--space-2)}.alg-section{padding:var(--space-3)}.alg-grid--2,.alg-grid--4{grid-template-columns:minmax(0,1fr)}.alg-footer{padding:var(--space-2) var(--space-3)}.alg-footer-note{display:none}.alg-footer-actions{flex:1}.alg-footer-actions .alg-btn{flex:1;min-width:0}}.las-root{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--section-gap);height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:480px;font-family:var(--font-family);color:var(--text-primary)}.las-btn-plain,.las-btn-primary,.las-btn-danger,.las-btn-on-brand,.las-btn-light{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.las-btn-plain svg,.las-btn-primary svg,.las-btn-danger svg,.las-btn-on-brand svg,.las-btn-light svg{font-size:var(--icon-size-sm)}.las-btn-plain:disabled,.las-btn-primary:disabled,.las-btn-danger:disabled{opacity:.55;cursor:not-allowed}.las-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.las-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.las-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none}.las-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.las-btn-primary--sm{height:30px;padding:0 var(--space-2)}.las-btn-danger{background:var(--status-danger);color:var(--text-on-brand);border:none}.las-btn-danger:hover:not(:disabled){opacity:.9}.las-btn-on-brand{background:transparent;color:var(--text-on-brand);border:1px solid rgba(var(--text-on-brand-rgb),.35)}.las-btn-on-brand:hover{background:rgba(var(--text-on-brand-rgb),.14)}.las-btn-light{background:var(--surface-card);color:var(--brand-primary-dark);border:1px solid var(--surface-card)}.las-btn-light:hover{box-shadow:var(--shadow-md)}.las-icon-btn{width:28px;height:28px;flex-shrink:0;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.las-icon-btn svg{font-size:15px}.las-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.las-icon-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.las-icon-btn--edit:hover:not(:disabled){background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.las-icon-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.las-icon-btn--delete:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.las-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:lasSpin .7s linear infinite}.las-rot{animation:lasSpin .8s linear infinite}@keyframes lasSpin{to{transform:rotate(360deg)}}.las-req{color:var(--status-danger)}.las-optional{font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.las-groups{display:flex;flex-direction:column;min-height:0;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.las-groups-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3)}.las-groups-title{display:flex;align-items:center;gap:var(--space-2);min-width:0}.las-groups-title>svg{width:34px;height:34px;padding:7px;box-sizing:border-box;border-radius:var(--radius-lg);background:var(--brand-primary-light);color:var(--brand-primary);font-size:20px;flex-shrink:0}.las-groups-title h2{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.las-groups-title p{margin:0;font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.las-groups-tools{display:flex;align-items:center;gap:6px;flex-shrink:0}.las-search{position:relative;display:flex;align-items:center;margin:0 var(--space-3) var(--space-2)}.las-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.las-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.las-search-input::placeholder{color:var(--text-muted)}.las-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.las-search-clear{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.las-search-clear svg{font-size:12px}.las-group-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:var(--space-2);border-top:1px solid var(--border-color)}.las-group{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border:1px solid transparent;border-radius:var(--radius-lg);background:transparent;font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.las-group:hover{background:var(--surface-hover)}.las-group--active,.las-group--active:hover{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2);box-shadow:inset 3px 0 0 var(--brand-primary)}.las-group-text{flex:1;min-width:0;display:flex;flex-direction:column}.las-group-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.las-group-desc{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.las-count{min-width:24px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px;text-align:center;flex-shrink:0}.las-count--empty{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.las-group-sk{display:flex;flex-direction:column;gap:6px;padding:var(--space-2)}.las-sk{display:block;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:lasShimmer 1.4s infinite linear}.las-sk-line{height:10px;width:70%}.las-sk-line--short{width:45%}@keyframes lasShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.las-detail{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.las-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.las-back{display:none;width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);align-items:center;justify-content:center;cursor:pointer}.las-back svg{font-size:var(--icon-size)}.las-bar-text{flex:1;min-width:0}.las-bar-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.las-bar-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.las-bar-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.las-defs{flex:1;min-height:0;overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-4);background:var(--surface-page);display:flex;flex-direction:column;gap:var(--space-3)}.las-def-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:var(--space-3)}.las-def{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);min-width:0;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.las-def:hover{border-color:var(--brand-primary-tint2);box-shadow:var(--shadow-md)}.las-def-head{display:flex;align-items:center;gap:var(--space-2)}.las-def-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-gradient);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.las-def-ico svg{font-size:var(--icon-size-sm)}.las-def-title-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.las-def-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.las-def-code{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.las-def-actions{display:flex;gap:6px;flex-shrink:0}.las-def-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.las-stat{display:flex;flex-direction:column;padding:var(--space-2);border-radius:var(--radius-md);background:var(--surface-page)}.las-stat-num{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--brand-primary-dark);font-variant-numeric:tabular-nums;line-height:var(--lh-tight)}.las-stat-label{font-size:var(--fs-xs);color:var(--text-muted)}.las-def-tags{display:flex;flex-wrap:wrap;gap:4px}.las-tag{padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.las-tag--ok{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.las-tag--warn{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.las-tag--info{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.las-tag--muted{background:var(--surface-page);color:var(--text-secondary);border-color:var(--border-color)}.las-def-line{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.las-def-line svg{font-size:14px;color:var(--text-muted)}.las-def-adj{display:flex;flex-direction:column;gap:4px;padding-top:var(--space-2);border-top:1px dashed var(--border-color)}.las-adj{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.las-adj-label{width:62px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.las-adj-dot{display:inline-flex;align-items:center;gap:2px;padding:0 6px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:var(--fs-xs);line-height:18px;white-space:nowrap}.las-adj-dot--no{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.2)}.las-adj-dot--allow{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.las-adj-dot--count{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.las-key{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.las-key .las-adj-dot{margin-left:var(--space-2)}.las-key .las-adj-dot:first-child{margin-left:0}.las-key-note{color:var(--text-muted)}.las-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.las-state--compact{padding:var(--space-6) var(--space-3)}.las-state--panel{flex:1}.las-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.las-state-ico svg{font-size:26px}.las-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.las-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.las-state-desc{margin:0 0 var(--space-1);max-width:420px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.las-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family)}.las-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;color:var(--text-primary)}.las-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.las-dlg-icon{width:40px;height:40px;flex-shrink:0;border-radius:50%;background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.las-dlg-icon svg{font-size:22px}.las-dlg-head-text{flex:1;min-width:0}.las-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold)}.las-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.las-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.las-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.las-dlg-x svg{font-size:var(--icon-size)}.las-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.las-sd{max-width:var(--modal-width-md)}.las-sd-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand)}.las-sd-icon{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.las-sd-icon svg{font-size:20px}.las-sd-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.las-sd-sub{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.las-sd-x{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.las-sd-x svg{font-size:var(--icon-size)}.las-sd-body{display:flex;flex-direction:column;gap:6px;padding:var(--space-4)}.las-sd-label{margin-top:var(--space-1);font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.las-sd-input{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.las-sd-input:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.las-sd-input--error{border-color:var(--status-danger)}.las-sd-input>svg{font-size:var(--icon-size-sm);color:var(--text-muted);flex-shrink:0}.las-sd-input input,.las-sd-input textarea{flex:1;min-width:0;border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-base)}.las-sd-input input{height:var(--control-height)}.las-sd-input input:focus,.las-sd-input textarea:focus{outline:none}.las-sd-input--area{align-items:flex-start;padding-top:var(--space-2);padding-bottom:var(--space-2)}.las-sd-input--area>svg{margin-top:2px}.las-sd-input textarea{resize:vertical;min-height:60px;line-height:var(--lh-base)}.las-sd-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger)}.las-sd-hint{align-self:flex-end;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}@media (max-width: 1024px){.las-root{grid-template-columns:250px minmax(0,1fr)}.las-bar-actions .las-btn-on-brand span{display:none}}@media (max-width: 768px){.las-root{grid-template-columns:minmax(0,1fr);height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.las-root--detail .las-groups{display:none}.las-root:not(.las-root--detail) .las-detail{display:none}.las-back{display:inline-flex}.las-bar{flex-wrap:wrap;padding:var(--space-3)}.las-bar-actions{flex-basis:100%;justify-content:flex-end}.las-detail{min-height:70vh}.las-defs{padding:var(--space-2)}}@media (max-width: 600px){.las-def-grid{grid-template-columns:minmax(0,1fr)}.las-bar-actions .las-btn-light{flex:1}.las-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.las-dlg-foot>button{flex:1}}.las-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.las-strip-wrap{display:flex;flex-direction:column;gap:4px}.las-strip{display:grid;grid-template-columns:repeat(32,minmax(0,1fr));gap:2px;height:28px}.las-strip-cell{border-radius:3px;background:rgba(var(--brand-primary-rgb),var(--las-fill, .2));transition:transform var(--transition-fast)}.las-strip-cell:hover{transform:scaleY(1.15)}.las-strip-cell--none{background:repeating-linear-gradient(135deg,var(--surface-page) 0 3px,var(--border-color) 3px 5px)}.las-strip-axis{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.las-notes{display:flex;flex-direction:column;gap:6px}.las-note{margin:0;display:flex;align-items:flex-start;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.las-note svg{font-size:15px;color:var(--brand-primary);flex-shrink:0;margin-top:1px}.las-note--warn{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3)}.las-note--warn svg{color:var(--status-warning)}.las-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;font-size:var(--fs-sm)}.las-table th{padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px}.las-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color)}.las-table tbody tr:last-child td{border-bottom:none}.las-row:nth-child(2n){background:#f9f9f9}.las-row:nth-child(odd){background:#fff}.las-row:hover{background:var(--surface-hover)}.las-col-seq{width:90px}.las-col-credit{width:160px}.las-col-actions{width:96px;text-align:center}.las-row-actions{display:flex;justify-content:center;gap:6px}.las-seq{display:inline-block;padding:0 6px;border-radius:var(--radius-sm);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);font-weight:var(--fw-bold);color:var(--text-secondary);font-variant-numeric:tabular-nums}.las-range{font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.las-range small,.las-muted{font-weight:var(--fw-regular);color:var(--text-muted);font-size:var(--fs-xs)}.las-credit{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.las-slab-sk{display:flex;flex-direction:column;gap:var(--space-2)}.las-sk-bar{height:28px;border-radius:var(--radius-sm)}.las-sk-row{height:36px;border-radius:var(--radius-md)}@media (max-width: 600px){.las-body{padding:var(--space-2)}.las-strip{height:22px;gap:1px}.las-table thead{display:none}.las-table,.las-table tbody,.las-table tr,.las-table td{display:block;width:100%}.las-table{border:none}.las-row,.las-row:nth-child(2n){position:relative;margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.las-table td{display:flex;align-items:center;gap:var(--space-2);padding:2px 0;border:none}.las-table td[data-label]:before{content:attr(data-label);flex:0 0 64px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.las-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto!important;padding:0!important}}.asa-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary);animation:asaFade .18s ease both}@keyframes asaFade{0%{opacity:0}to{opacity:1}}.asa-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:asaUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes asaUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.asa-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.asa-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.asa-header-icon{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.asa-header-icon svg{font-size:20px}.asa-header-text{min-width:0}.asa-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.asa-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.asa-subtitle strong{color:var(--text-on-brand)}.asa-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.asa-close:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.asa-close svg{font-size:var(--icon-size)}.asa-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.asa-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.asa-field{display:flex;flex-direction:column;gap:6px;min-width:0}.asa-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.asa-req{color:var(--status-danger)}.asa-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.asa-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.asa-num{display:flex;align-items:center;height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.asa-num:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.asa-num--error{border-color:var(--status-danger)}.asa-num input{flex:1;min-width:0;height:100%;padding:0 var(--space-3);border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);font-variant-numeric:tabular-nums}.asa-num input:focus{outline:none}.asa-num input::placeholder{color:var(--text-muted)}.asa-suffix{height:100%;padding:0 var(--space-2);display:flex;align-items:center;flex-shrink:0;background:var(--surface-page);border-left:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary)}.asa-summary{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-sm);line-height:var(--lh-base);color:var(--text-secondary)}.asa-summary svg{font-size:var(--icon-size);color:var(--brand-primary);flex-shrink:0;margin-top:1px}.asa-summary strong{color:var(--text-primary)}.asa-summary--warn{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3)}.asa-summary--warn svg{color:var(--status-warning)}.asa-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.asa-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.asa-footer-actions{display:flex;gap:var(--space-2)}.asa-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:opacity var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.asa-btn svg{font-size:var(--icon-size)}.asa-btn:disabled{opacity:.55;cursor:not-allowed}.asa-btn--plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.asa-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.asa-btn--primary{min-width:140px;background:var(--brand-gradient);color:var(--text-on-brand);border:none}.asa-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.asa-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:asaSpin .7s linear infinite}@keyframes asaSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.asa-backdrop{align-items:flex-end;padding:0}.asa-sheet{max-width:none;max-height:92vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.asa-header,.asa-body{padding:var(--space-3)}.asa-row{grid-template-columns:minmax(0,1fr)}.asa-footer{padding:var(--space-2) var(--space-3)}.asa-footer-note{display:none}.asa-footer-actions{flex:1}.asa-footer-actions .asa-btn{flex:1;min-width:0}}.lurt-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.lurt-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.lurt-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.lurt-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.lurt-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lurt-header-text{min-width:0}.lurt-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.lurt-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lurt-ico-md{font-size:20px!important}.lurt-ico{font-size:var(--icon-size)!important}.lurt-ico-sm{font-size:var(--icon-size-sm)!important}.lurt-ico-xs{font-size:14px!important}.lurt-ico--spin{animation:lurt-rotate .8s linear infinite}.lurt-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.lurt-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.lurt-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.lurt-btn-icon:hover:not(:disabled):not(.lurt-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.lurt-btn-icon:disabled,.lurt-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.lurt-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.lurt-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.lurt-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.lurt-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.lurt-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.lurt-btn-primary:disabled{opacity:.5;cursor:not-allowed}.lurt-btn-solid,.lurt-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.lurt-btn-solid:active,.lurt-btn-plain:active{transform:scale(.97)}.lurt-btn-solid:disabled,.lurt-btn-plain:disabled{opacity:.55;cursor:not-allowed}.lurt-btn-solid{border:none;color:var(--text-on-brand)}.lurt-btn-solid--primary{background:var(--brand-gradient)}.lurt-btn-solid--danger,.lurt-btn-solid--error{background:var(--status-danger)}.lurt-btn-solid:hover:not(:disabled){opacity:.9}.lurt-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.lurt-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.lurt-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.lurt-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.lurt-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:lurt-rotate .7s linear infinite}@keyframes lurt-rotate{to{transform:rotate(360deg)}}.lurt-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.lurt-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.lurt-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.lurt-search-field{position:relative;display:flex;align-items:center}.lurt-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.lurt-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.lurt-search-input::placeholder{color:var(--text-muted)}.lurt-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.lurt-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.lurt-search-clear svg{font-size:12px}.lurt-search-clear:hover{background:var(--status-danger)}.lurt-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.lurt-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.lurt-thead{position:sticky;top:0;z-index:var(--z-sticky)}.lurt-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.lurt-row{animation:lurt-row-in .22s ease both}@keyframes lurt-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.lurt-row:nth-child(2n){background:#f9f9f9}.lurt-row:nth-child(odd){background:#fff}.lurt-row:hover,.lurt-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.lurt-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lurt-col-leave{width:26%}.lurt-col-credit{width:auto}.lurt-col-when{width:26%}.lurt-col-actions{width:104px;text-align:center}.lurt-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.lurt-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.lurt-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.lurt-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.lurt-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.lurt-action-btn svg{font-size:15px}.lurt-action-btn:disabled{opacity:.4;pointer-events:none}.lurt-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.lurt-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.lurt-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.lurt-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.lurt-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.lurt-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.lurt-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.lurt-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.lurt-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.lurt-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:lurt-fade-in .3s ease both}@keyframes lurt-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.lurt-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.lurt-state-icon-wrap svg{font-size:28px}.lurt-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.lurt-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.lurt-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.lurt-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.lurt-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.lurt-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:lurt-fade-in .3s ease both}.lurt-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:lurt-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes lurt-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.lurt-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.lurt-sk-text{flex:1;max-width:220px}.lurt-sk-text--wide{max-width:320px}.lurt-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.lurt-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:lurt-fade .18s ease both}@keyframes lurt-fade{0%{opacity:0}to{opacity:1}}.lurt-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:lurt-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes lurt-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.lurt-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.lurt-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.lurt-dlg-icon svg{font-size:22px}.lurt-dlg-icon--danger,.lurt-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.lurt-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.lurt-dlg-head-text{flex:1;min-width:0}.lurt-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.lurt-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.lurt-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lurt-dlg-x svg{font-size:var(--icon-size)}.lurt-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.lurt-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.lurt-dlg-list li+li{margin-top:2px}.lurt-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.lurt-col-leave,.lurt-col-when{width:30%}}@media (max-width: 768px){.lurt-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.lurt-header{padding:var(--space-3)}.lurt-header-left{flex:1 1 100%}.lurt-actions{width:100%}.lurt-btn-primary{margin-left:auto}.lurt-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.lurt-btn-primary span{display:none}.lurt-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.lurt-actions-sep{display:none}.lurt-search-grid{grid-template-columns:1fr}.lurt-table,.lurt-table tbody,.lurt-table tr,.lurt-table td{display:block;width:100%}.lurt-thead{display:none}.lurt-table tbody{padding:var(--space-2)}.lurt-row,.lurt-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.lurt-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.lurt-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.lurt-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.lurt-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.lurt-col-leave{padding-right:76px}.lurt-action-btn{width:32px;height:32px}.lurt-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.lurt-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.lurt-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.lurt-dlg-foot>button{flex:1}}.lurt-leave{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.lurt-group{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.lurt-credit{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;font-size:var(--fs-sm)}.lurt-credit strong{color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.lurt-muted{color:var(--text-muted);font-style:normal}.lurt-chip{display:inline-flex;align-items:center;gap:4px;padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.lurt-chip svg{font-size:12px}.lurt-chip--fixed{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.lurt-chip--earned{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.lurt-search-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:var(--space-6);background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.clur-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary);animation:clurFade .18s ease both}@keyframes clurFade{0%{opacity:0}to{opacity:1}}.clur-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:clurUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes clurUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.clur-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.clur-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.clur-header-icon{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.clur-header-icon svg{font-size:20px}.clur-header-text{min-width:0}.clur-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.clur-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.clur-subtitle strong{color:var(--text-on-brand)}.clur-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.clur-close:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.clur-close svg{font-size:var(--icon-size)}.clur-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface-page)}.clur-section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);min-width:0}.clur-section-head{display:flex;align-items:flex-start;gap:var(--space-2)}.clur-section-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.clur-section-ico svg{font-size:var(--icon-size-sm)}.clur-section-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.clur-section-desc{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.clur-section-body{display:flex;flex-direction:column;gap:var(--space-3)}.clur-grid{display:grid;gap:var(--space-3)}.clur-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.clur-grid--4{grid-template-columns:2fr repeat(3,minmax(0,1fr))}.clur-grid--sections{gap:var(--space-3);align-items:stretch}.clur-grid--sections>.clur-section{height:100%;box-sizing:border-box}.clur-field{display:flex;flex-direction:column;gap:6px;min-width:0}.clur-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.clur-req{color:var(--status-danger)}.clur-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.clur-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.clur-select{height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);min-width:0}.clur-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.clur-select:disabled{background:var(--surface-page);color:var(--text-muted)}.clur-select--error{border-color:var(--status-danger)}.clur-num{display:flex;align-items:center;height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.clur-num:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.clur-num--error{border-color:var(--status-danger)}.clur-num input{flex:1;min-width:0;height:100%;padding:0 var(--space-3);border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);font-variant-numeric:tabular-nums}.clur-num input:focus{outline:none}.clur-num input::placeholder{color:var(--text-muted)}.clur-suffix,.clur-prefix{flex-shrink:0;padding:0 var(--space-2);height:100%;display:flex;align-items:center;background:var(--surface-page);border-left:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.clur-inline-error{display:flex;align-items:center;gap:6px;height:var(--control-height);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.clur-inline-error svg{font-size:var(--icon-size-sm)}.clur-link{margin-left:auto;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.clur-switch{position:relative;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.clur-switch:hover{background:var(--surface-hover)}.clur-switch--on{border-color:var(--brand-primary-tint2);background:var(--brand-primary-light)}.clur-switch--on:hover{background:var(--brand-primary-light)}.clur-switch input{position:absolute;opacity:0;width:0;height:0}.clur-track{position:relative;width:36px;height:20px;flex-shrink:0;margin-top:1px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast)}.clur-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.clur-switch input:checked+.clur-track{background:var(--brand-primary)}.clur-switch input:checked+.clur-track:after{transform:translate(16px)}.clur-switch input:focus-visible+.clur-track{box-shadow:var(--focus-ring)}.clur-switch-text{display:flex;flex-direction:column;gap:2px;min-width:0}.clur-switch-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.clur-switch-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.clur-choice{position:relative;display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.clur-choice:hover{background:var(--surface-hover)}.clur-choice input{position:absolute;opacity:0;width:0;height:0}.clur-choice:focus-within{box-shadow:var(--focus-ring)}.clur-choice--on,.clur-choice--on:hover{border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.clur-choice-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-page);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.clur-choice--on .clur-choice-ico{background:var(--surface-card)}.clur-choice-ico svg{font-size:var(--icon-size-sm)}.clur-choice-text{display:flex;flex-direction:column;gap:2px;min-width:0}.clur-choice-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.clur-choice-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.clur-matrix{display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.clur-matrix-row{display:grid;grid-template-columns:120px repeat(3,minmax(0,1fr));align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color)}.clur-matrix-row--head{border-top:none;background:var(--surface-page);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.clur-matrix-col{display:flex;flex-direction:column}.clur-matrix-col small{font-weight:var(--fw-regular);color:var(--text-muted)}.clur-matrix-label{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.clur-matrix-label svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.clur-matrix-cell{min-width:0}.clur-seg{display:flex;width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-card)}.clur-seg-btn{flex:1;min-width:0;height:30px;padding:0 4px;border:none;border-left:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.clur-seg-btn:first-child{border-left:none}.clur-seg-btn:hover:not(:disabled):not(.clur-seg-btn--on){background:var(--surface-hover);color:var(--text-primary)}.clur-seg-btn:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.clur-seg-btn--no.clur-seg-btn--on{background:var(--status-danger-light);color:var(--status-danger)}.clur-seg-btn--allow.clur-seg-btn--on{background:var(--status-success-light);color:var(--status-success)}.clur-seg-btn--count.clur-seg-btn--on{background:var(--status-warning-light);color:var(--status-warning)}.clur-legend{margin:0;display:flex;flex-wrap:wrap;gap:4px var(--space-4);font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.clur-legend b{color:var(--text-primary);font-weight:var(--fw-semibold)}.clur-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.clur-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.clur-footer-actions{display:flex;gap:var(--space-2)}.clur-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:opacity var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.clur-btn svg{font-size:var(--icon-size)}.clur-btn:disabled{opacity:.55;cursor:not-allowed}.clur-btn--plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.clur-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.clur-btn--primary{min-width:150px;background:var(--brand-gradient);color:var(--text-on-brand);border:none}.clur-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.clur-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:clurSpin .7s linear infinite}@keyframes clurSpin{to{transform:rotate(360deg)}}@media (max-width: 900px){.clur-grid--4{grid-template-columns:repeat(3,minmax(0,1fr))}.clur-field--wide{grid-column:1 / -1}}@media (max-width: 768px){.clur-grid--sections{grid-template-columns:minmax(0,1fr)}.clur-matrix-row--head{display:none}.clur-matrix-row{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}.clur-matrix-cell{display:flex;flex-direction:column;gap:4px}.clur-matrix-cell:before{content:attr(data-label);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}}@media (max-width: 600px){.clur-backdrop{align-items:flex-end;padding:0}.clur-sheet{max-width:none;max-height:94vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.clur-header{padding:var(--space-3)}.clur-body{padding:var(--space-2)}.clur-section{padding:var(--space-3)}.clur-grid--2,.clur-grid--4{grid-template-columns:minmax(0,1fr)}.clur-footer{padding:var(--space-2) var(--space-3)}.clur-footer-note{display:none}.clur-footer-actions{flex:1}.clur-footer-actions .clur-btn{flex:1;min-width:0}}.clur-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.clur-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.clur-prefix{border-left:none;border-right:1px solid var(--border-color)}.clur-select--error .react-select__control{border-color:var(--status-danger)}.clur-time{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.clur-time-opt{position:relative;display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.clur-time-opt:hover{background:var(--surface-hover)}.clur-time-opt input{position:absolute;opacity:0;width:0;height:0}.clur-time-opt:focus-within{box-shadow:var(--focus-ring)}.clur-time-opt--on,.clur-time-opt--on:hover{border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.clur-time-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.clur-time-desc{font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.clur-seg{display:flex;height:100%;border-left:1px solid var(--border-color);flex-shrink:0}.clur-seg-btn{padding:0 var(--space-2);border:none;background:var(--surface-page);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.clur-seg-btn+.clur-seg-btn{border-left:1px solid var(--border-color)}.clur-seg-btn--on{background:var(--brand-primary);color:var(--text-on-brand)}.clur-note{margin:0;display:flex;align-items:flex-start;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.clur-note svg{font-size:var(--icon-size-sm);color:var(--brand-primary);flex-shrink:0;margin-top:2px}.clur-note--warn{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3)}.clur-note--warn svg{color:var(--status-warning)}.clur-sk-wrap{display:flex;flex-direction:column;gap:var(--space-3)}.clur-sk{height:120px;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-card) 0%,var(--border-color) 50%,var(--surface-card) 100%);background-size:200% 100%;animation:clurShimmer 1.4s infinite linear}@keyframes clurShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.clur-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.clur-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.clur-state-ico svg{font-size:26px}.clur-state-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}@media (max-width: 768px){.clur-time{grid-template-columns:minmax(0,1fr)}}@media (max-width: 600px){.clur-grid,.clur-choices{grid-template-columns:minmax(0,1fr)}}.adjust-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.adjust-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.adjust-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.adjust-head-icon svg{font-size:22px}.adjust-head-text{min-width:0}.adjust-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.adjust-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.adjust-layout{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:var(--section-gap);align-items:start}.adjust-side{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0}.adjust-panel{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.adjust-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.adjust-panel-title{margin:0;display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-md);font-weight:var(--fw-bold);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adjust-panel-title svg{font-size:var(--icon-size);color:var(--brand-primary)}.adjust-count{min-width:24px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px;text-align:center}.adjust-form{position:sticky;top:0}.adjust-field{display:flex;flex-direction:column;gap:6px;min-width:0}.adjust-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.adjust-req{color:var(--status-danger)}.adjust-optional{font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.adjust-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.adjust-hint--right{align-self:flex-end;font-variant-numeric:tabular-nums}.adjust-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.adjust-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.adjust-select--error .react-select__control{border-color:var(--status-danger)}.adjust-opt{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%}.adjust-opt-bal{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--surface-page);font-size:var(--fs-xs);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.adjust-seg{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.adjust-seg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.adjust-seg-btn svg{font-size:var(--icon-size-sm)}.adjust-seg-btn:hover:not(:disabled){background:var(--surface-hover)}.adjust-seg-btn--add.adjust-seg-btn--on{background:var(--status-success-light);color:var(--status-success);border-color:var(--status-success)}.adjust-seg-btn--sub.adjust-seg-btn--on{background:var(--status-danger-light);color:var(--status-danger);border-color:var(--status-danger)}.adjust-num{display:flex;align-items:center;height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.adjust-num:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.adjust-num--error{border-color:var(--status-danger)}.adjust-num input{flex:1;min-width:0;height:100%;padding:0 var(--space-3);border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);font-variant-numeric:tabular-nums}.adjust-num input:focus{outline:none}.adjust-num input:disabled{color:var(--text-muted)}.adjust-suffix{height:100%;padding:0 var(--space-3);display:flex;align-items:center;background:var(--surface-page);border-left:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary)}.adjust-preview{display:flex;align-items:center;justify-content:space-around;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--surface-page)}.adjust-preview>span{display:flex;flex-direction:column;align-items:center}.adjust-preview small{font-size:var(--fs-xs);color:var(--text-muted)}.adjust-preview strong{font-size:var(--fs-xl);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.adjust-preview>svg{color:var(--text-muted)}.adjust-preview--add>span:last-child strong{color:var(--status-success)}.adjust-preview--sub>span:last-child strong{color:var(--status-danger)}.adjust-preview--bad{border-color:rgba(var(--status-danger-rgb),.4);background:var(--status-danger-light)}.adjust-textarea{width:100%;box-sizing:border-box;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);line-height:var(--lh-base);resize:vertical;min-height:70px}.adjust-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.adjust-textarea--error{border-color:var(--status-danger)}.adjust-submit{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);border:none;border-radius:var(--radius-md);background:var(--brand-gradient);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-semibold);cursor:pointer;transition:box-shadow var(--transition-fast),opacity var(--transition-fast)}.adjust-submit svg{font-size:var(--icon-size)}.adjust-submit:hover:not(:disabled){box-shadow:var(--shadow-md)}.adjust-submit:disabled{opacity:.55;cursor:not-allowed}.adjust-bal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-2)}.adjust-bal{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);font-family:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.adjust-bal:hover:not(:disabled){border-color:var(--brand-primary-tint2);box-shadow:var(--shadow-sm)}.adjust-bal--active,.adjust-bal--active:hover:not(:disabled){border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.adjust-bal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}.adjust-bal-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adjust-bal-code{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.adjust-bal-value{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.adjust-bal-value small{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.adjust-bal--zero .adjust-bal-value{color:var(--text-muted)}.adjust-table-wrap{overflow:auto;max-height:420px;border:1px solid var(--border-color);border-radius:var(--radius-lg)}.adjust-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.adjust-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.adjust-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:top}.adjust-row:nth-child(2n){background:#f9f9f9}.adjust-row:nth-child(odd){background:#fff}.adjust-row:hover{background:var(--surface-hover)}.adjust-col-qty{width:90px;text-align:right}.adjust-nowrap{white-space:nowrap}.adjust-reason{max-width:280px;color:var(--text-secondary);overflow-wrap:anywhere}.adjust-muted{color:var(--text-muted);font-size:var(--fs-xs)}.adjust-delta{font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.adjust-delta--add{color:var(--status-success)}.adjust-delta--sub{color:var(--status-danger)}.adjust-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-3);text-align:center}.adjust-state--compact{padding:var(--space-4) var(--space-3)}.adjust-state-ico{width:48px;height:48px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.adjust-state-ico svg{font-size:24px}.adjust-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.adjust-state-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.adjust-state-desc{margin:0;max-width:360px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.adjust-sk{display:block;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:adjustShimmer 1.4s infinite linear}.adjust-sk-card{height:74px}.adjust-sk-rows{display:flex;flex-direction:column;gap:6px}.adjust-sk-row{height:34px;border-radius:var(--radius-md)}@keyframes adjustShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.adjust-btn-plain,.adjust-btn-solid{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer}.adjust-btn-plain svg,.adjust-btn-solid svg{font-size:var(--icon-size-sm)}.adjust-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.adjust-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.adjust-btn-solid{border:none;color:var(--text-on-brand)}.adjust-btn-solid--add{background:var(--status-success)}.adjust-btn-solid--sub{background:var(--status-danger)}.adjust-btn-solid:hover:not(:disabled){opacity:.92}.adjust-btn-plain:disabled,.adjust-btn-solid:disabled{opacity:.55;cursor:not-allowed}.adjust-icon-btn{width:28px;height:28px;flex-shrink:0;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.adjust-icon-btn svg{font-size:var(--icon-size-sm)}.adjust-icon-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.adjust-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:adjustSpin .7s linear infinite}.adjust-rot{animation:adjustSpin .8s linear infinite}@keyframes adjustSpin{to{transform:rotate(360deg)}}.adjust-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family)}.adjust-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;color:var(--text-primary)}.adjust-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2)}.adjust-dlg-icon{width:40px;height:40px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center}.adjust-dlg-icon svg{font-size:22px}.adjust-dlg-icon--add{background:var(--status-success-light);color:var(--status-success)}.adjust-dlg-icon--sub{background:var(--status-danger-light);color:var(--status-danger)}.adjust-dlg-head-text{flex:1;min-width:0}.adjust-dlg-title{margin:2px 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.adjust-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary)}.adjust-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.adjust-dlg-x svg{font-size:var(--icon-size)}.adjust-dlg-body{display:flex;flex-direction:column;gap:var(--space-2);padding:0 var(--space-4) var(--space-4)}.adjust-flow{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.adjust-flow-box{display:flex;flex-direction:column;align-items:center;min-width:100px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.adjust-flow-box small{font-size:var(--fs-xs);color:var(--text-muted)}.adjust-flow-box strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums}.adjust-flow-box--add{background:var(--status-success-light);border-color:rgba(var(--status-success-rgb),.3)}.adjust-flow-box--add strong{color:var(--status-success)}.adjust-flow-box--sub{background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.3)}.adjust-flow-box--sub strong{color:var(--status-danger)}.adjust-flow-arrow{color:var(--text-muted)}.adjust-dlg-remark{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);font-style:italic;text-align:center;overflow-wrap:anywhere}.adjust-dlg-note{margin:0;font-size:var(--fs-xs);color:var(--text-muted);text-align:center}.adjust-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.adjust-layout{grid-template-columns:minmax(0,1fr)}.adjust-form{position:static}}@media (max-width: 600px){.adjust-head{padding:var(--space-3)}.adjust-head-text p{display:none}.adjust-panel{padding:var(--space-3)}.adjust-bal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.adjust-table-wrap{max-height:none;border:none}.adjust-table thead{display:none}.adjust-table,.adjust-table tbody,.adjust-table tr,.adjust-table td{display:block;width:100%}.adjust-row,.adjust-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.adjust-table td{display:flex;gap:var(--space-2);padding:2px 0;border:none;text-align:left;max-width:none}.adjust-table td[data-label]:before{content:attr(data-label);flex:0 0 64px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.adjust-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.adjust-dlg-foot>button{flex:1}}.elut-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.elut-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.elut-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.elut-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.elut-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.elut-header-text{min-width:0}.elut-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.elut-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.elut-ico-md{font-size:20px!important}.elut-ico{font-size:var(--icon-size)!important}.elut-ico-sm{font-size:var(--icon-size-sm)!important}.elut-ico-xs{font-size:14px!important}.elut-ico--spin{animation:elut-rotate .8s linear infinite}.elut-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.elut-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.elut-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.elut-btn-icon:hover:not(:disabled):not(.elut-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.elut-btn-icon:disabled,.elut-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.elut-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.elut-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.elut-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.elut-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.elut-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.elut-btn-primary:disabled{opacity:.5;cursor:not-allowed}.elut-btn-solid,.elut-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.elut-btn-solid:active,.elut-btn-plain:active{transform:scale(.97)}.elut-btn-solid:disabled,.elut-btn-plain:disabled{opacity:.55;cursor:not-allowed}.elut-btn-solid{border:none;color:var(--text-on-brand)}.elut-btn-solid--primary{background:var(--brand-gradient)}.elut-btn-solid--danger,.elut-btn-solid--error{background:var(--status-danger)}.elut-btn-solid:hover:not(:disabled){opacity:.9}.elut-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.elut-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.elut-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.elut-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.elut-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:elut-rotate .7s linear infinite}@keyframes elut-rotate{to{transform:rotate(360deg)}}.elut-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.elut-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.elut-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.elut-search-field{position:relative;display:flex;align-items:center}.elut-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.elut-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.elut-search-input::placeholder{color:var(--text-muted)}.elut-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.elut-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.elut-search-clear svg{font-size:12px}.elut-search-clear:hover{background:var(--status-danger)}.elut-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.elut-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.elut-thead{position:sticky;top:0;z-index:var(--z-sticky)}.elut-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.elut-row{animation:elut-row-in .22s ease both}@keyframes elut-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.elut-row:nth-child(2n){background:#f9f9f9}.elut-row:nth-child(odd){background:#fff}.elut-row:hover,.elut-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.elut-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.elut-col-check{width:44px;text-align:center}.elut-col-emp{width:auto}.elut-col-leave{width:170px}.elut-col-num{width:110px;text-align:right;font-variant-numeric:tabular-nums}.elut-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.elut-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.elut-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.elut-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.elut-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.elut-action-btn svg{font-size:15px}.elut-action-btn:disabled{opacity:.4;pointer-events:none}.elut-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.elut-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.elut-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.elut-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.elut-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.elut-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.elut-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.elut-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.elut-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.elut-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:elut-fade-in .3s ease both}@keyframes elut-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.elut-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.elut-state-icon-wrap svg{font-size:28px}.elut-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.elut-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.elut-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.elut-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.elut-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.elut-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:elut-fade-in .3s ease both}.elut-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:elut-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes elut-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.elut-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.elut-sk-text{flex:1;max-width:220px}.elut-sk-text--wide{max-width:320px}.elut-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.elut-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:elut-fade .18s ease both}@keyframes elut-fade{0%{opacity:0}to{opacity:1}}.elut-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:elut-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes elut-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.elut-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.elut-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.elut-dlg-icon svg{font-size:22px}.elut-dlg-icon--danger,.elut-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.elut-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.elut-dlg-head-text{flex:1;min-width:0}.elut-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.elut-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.elut-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.elut-dlg-x svg{font-size:var(--icon-size)}.elut-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.elut-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.elut-dlg-list li+li{margin-top:2px}.elut-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.elut-col-num{width:90px}.elut-col-leave{width:130px}}@media (max-width: 768px){.elut-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.elut-header{padding:var(--space-3)}.elut-header-left{flex:1 1 100%}.elut-actions{width:100%}.elut-btn-primary{margin-left:auto}.elut-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.elut-btn-primary span{display:none}.elut-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.elut-actions-sep{display:none}.elut-search-grid{grid-template-columns:1fr}.elut-table,.elut-table tbody,.elut-table tr,.elut-table td{display:block;width:100%}.elut-thead{display:none}.elut-table tbody{padding:var(--space-2)}.elut-row,.elut-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.elut-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.elut-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.elut-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.elut-col-actions,.elut-col-check{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.elut-col-emp{padding-right:40px}.elut-col-num{text-align:left}.elut-action-btn{width:32px;height:32px}.elut-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.elut-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.elut-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.elut-dlg-foot>button{flex:1}}.elut-date{position:relative;display:inline-flex;align-items:center;height:var(--control-height-sm);border-radius:var(--radius-md);background:var(--surface-card);border:1px solid var(--surface-card)}.elut-date-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--brand-primary);pointer-events:none}.elut-date select{height:100%;min-width:150px;padding:0 var(--space-6) 0 30px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.elut-date select:focus{outline:none;box-shadow:var(--focus-ring)}.elut-date select:disabled{cursor:not-allowed;color:var(--text-muted)}.elut-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-sm);color:var(--text-secondary);flex-shrink:0}.elut-summary strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.elut-summary-warn{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px}.elut-row{cursor:pointer}.elut-row--on,.elut-row--on:nth-child(2n){background:var(--brand-primary-light)}.elut-checkbox{width:16px;height:16px;accent-color:var(--brand-primary);cursor:pointer}.elut-emp{display:flex;flex-direction:column;min-width:0}.elut-muted{font-size:var(--fs-xs);color:var(--text-muted)}.elut-plus{color:var(--status-success);font-weight:var(--fw-bold)}.elut-zero{color:var(--text-muted)}.elut-after{color:var(--brand-primary-dark)}.elut-process{min-width:170px}@media (max-width: 600px){.elut-date{flex:1}.elut-date select{width:100%;min-width:0}.elut-summary{padding:var(--space-2) var(--space-3);gap:var(--space-1) var(--space-3)}.elut-process{width:100%;justify-content:center}}.ele-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ele-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.ele-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.ele-head-icon svg{font-size:22px}.ele-head-text{min-width:0}.ele-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.ele-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ele-layout{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:var(--section-gap);align-items:start}.ele-side{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0}.ele-panel{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.ele-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.ele-panel-title{margin:0;display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-md);font-weight:var(--fw-bold);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ele-panel-title svg{font-size:var(--icon-size);color:var(--brand-primary)}.ele-count{min-width:24px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px;text-align:center}.ele-form{position:sticky;top:0}.ele-field{display:flex;flex-direction:column;gap:6px;min-width:0}.ele-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.ele-req{color:var(--status-danger)}.ele-optional{font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.ele-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.ele-hint--right{align-self:flex-end;font-variant-numeric:tabular-nums}.ele-error{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.ele-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.ele-select--error .react-select__control{border-color:var(--status-danger)}.ele-opt{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%}.ele-opt-bal{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--surface-page);font-size:var(--fs-xs);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.ele-seg{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.ele-seg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.ele-seg-btn svg{font-size:var(--icon-size-sm)}.ele-seg-btn:hover:not(:disabled){background:var(--surface-hover)}.ele-seg-btn--add.ele-seg-btn--on{background:var(--status-success-light);color:var(--status-success);border-color:var(--status-success)}.ele-seg-btn--sub.ele-seg-btn--on{background:var(--status-danger-light);color:var(--status-danger);border-color:var(--status-danger)}.ele-num{display:flex;align-items:center;height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);overflow:hidden;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ele-num:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ele-num--error{border-color:var(--status-danger)}.ele-num input{flex:1;min-width:0;height:100%;padding:0 var(--space-3);border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);font-variant-numeric:tabular-nums}.ele-num input:focus{outline:none}.ele-num input:disabled{color:var(--text-muted)}.ele-suffix{height:100%;padding:0 var(--space-3);display:flex;align-items:center;background:var(--surface-page);border-left:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary)}.ele-preview{display:flex;align-items:center;justify-content:space-around;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--surface-page)}.ele-preview>span{display:flex;flex-direction:column;align-items:center}.ele-preview small{font-size:var(--fs-xs);color:var(--text-muted)}.ele-preview strong{font-size:var(--fs-xl);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.ele-preview>svg{color:var(--text-muted)}.ele-preview--add>span:last-child strong{color:var(--status-success)}.ele-preview--sub>span:last-child strong{color:var(--status-danger)}.ele-preview--bad{border-color:rgba(var(--status-danger-rgb),.4);background:var(--status-danger-light)}.ele-textarea{width:100%;box-sizing:border-box;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);line-height:var(--lh-base);resize:vertical;min-height:70px}.ele-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ele-textarea--error{border-color:var(--status-danger)}.ele-submit{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);border:none;border-radius:var(--radius-md);background:var(--brand-gradient);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-base);font-weight:var(--fw-semibold);cursor:pointer;transition:box-shadow var(--transition-fast),opacity var(--transition-fast)}.ele-submit svg{font-size:var(--icon-size)}.ele-submit:hover:not(:disabled){box-shadow:var(--shadow-md)}.ele-submit:disabled{opacity:.55;cursor:not-allowed}.ele-bal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-2)}.ele-bal{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);font-family:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.ele-bal:hover:not(:disabled){border-color:var(--brand-primary-tint2);box-shadow:var(--shadow-sm)}.ele-bal--active,.ele-bal--active:hover:not(:disabled){border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.ele-bal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}.ele-bal-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ele-bal-code{flex-shrink:0;padding:0 6px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.ele-bal-value{font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--brand-primary-dark);font-variant-numeric:tabular-nums}.ele-bal-value small{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.ele-bal--zero .ele-bal-value{color:var(--text-muted)}.ele-table-wrap{overflow:auto;max-height:420px;border:1px solid var(--border-color);border-radius:var(--radius-lg)}.ele-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.ele-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.ele-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:top}.ele-row:nth-child(2n){background:#f9f9f9}.ele-row:nth-child(odd){background:#fff}.ele-row:hover{background:var(--surface-hover)}.ele-col-qty{width:90px;text-align:right}.ele-nowrap{white-space:nowrap}.ele-reason{max-width:280px;color:var(--text-secondary);overflow-wrap:anywhere}.ele-muted{color:var(--text-muted);font-size:var(--fs-xs)}.ele-delta{font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.ele-delta--add{color:var(--status-success)}.ele-delta--sub{color:var(--status-danger)}.ele-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-3);text-align:center}.ele-state--compact{padding:var(--space-4) var(--space-3)}.ele-state-ico{width:48px;height:48px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.ele-state-ico svg{font-size:24px}.ele-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.ele-state-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ele-state-desc{margin:0;max-width:360px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ele-sk{display:block;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:eleShimmer 1.4s infinite linear}.ele-sk-card{height:74px}.ele-sk-rows{display:flex;flex-direction:column;gap:6px}.ele-sk-row{height:34px;border-radius:var(--radius-md)}@keyframes eleShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ele-btn-plain,.ele-btn-solid{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer}.ele-btn-plain svg,.ele-btn-solid svg{font-size:var(--icon-size-sm)}.ele-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.ele-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ele-btn-solid{border:none;color:var(--text-on-brand)}.ele-btn-solid--add{background:var(--status-success)}.ele-btn-solid--sub{background:var(--status-danger)}.ele-btn-solid:hover:not(:disabled){opacity:.92}.ele-btn-plain:disabled,.ele-btn-solid:disabled{opacity:.55;cursor:not-allowed}.ele-icon-btn{width:28px;height:28px;flex-shrink:0;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ele-icon-btn svg{font-size:var(--icon-size-sm)}.ele-icon-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.ele-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:eleSpin .7s linear infinite}.ele-rot{animation:eleSpin .8s linear infinite}@keyframes eleSpin{to{transform:rotate(360deg)}}.ele-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family)}.ele-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;color:var(--text-primary)}.ele-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-2)}.ele-dlg-icon{width:40px;height:40px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center}.ele-dlg-icon svg{font-size:22px}.ele-dlg-icon--add{background:var(--status-success-light);color:var(--status-success)}.ele-dlg-icon--sub{background:var(--status-danger-light);color:var(--status-danger)}.ele-dlg-head-text{flex:1;min-width:0}.ele-dlg-title{margin:2px 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ele-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary)}.ele-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.ele-dlg-x svg{font-size:var(--icon-size)}.ele-dlg-body{display:flex;flex-direction:column;gap:var(--space-2);padding:0 var(--space-4) var(--space-4)}.ele-flow{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.ele-flow-box{display:flex;flex-direction:column;align-items:center;min-width:100px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.ele-flow-box small{font-size:var(--fs-xs);color:var(--text-muted)}.ele-flow-box strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums}.ele-flow-box--add{background:var(--status-success-light);border-color:rgba(var(--status-success-rgb),.3)}.ele-flow-box--add strong{color:var(--status-success)}.ele-flow-box--sub{background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.3)}.ele-flow-box--sub strong{color:var(--status-danger)}.ele-flow-arrow{color:var(--text-muted)}.ele-dlg-remark{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);font-style:italic;text-align:center;overflow-wrap:anywhere}.ele-dlg-note{margin:0;font-size:var(--fs-xs);color:var(--text-muted);text-align:center}.ele-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.ele-layout{grid-template-columns:minmax(0,1fr)}.ele-form{position:static}}@media (max-width: 600px){.ele-head{padding:var(--space-3)}.ele-head-text p{display:none}.ele-panel{padding:var(--space-3)}.ele-bal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ele-table-wrap{max-height:none;border:none}.ele-table thead{display:none}.ele-table,.ele-table tbody,.ele-table tr,.ele-table td{display:block;width:100%}.ele-row,.ele-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.ele-table td{display:flex;gap:var(--space-2);padding:2px 0;border:none;text-align:left;max-width:none}.ele-table td[data-label]:before{content:attr(data-label);flex:0 0 64px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.ele-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.ele-dlg-foot>button{flex:1}}.ele-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.ele-input{height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-base);min-width:0}.ele-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ele-input:disabled{background:var(--surface-page);color:var(--text-muted)}.ele-input--error{border-color:var(--status-danger)}.ele-half{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.ele-switch{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.ele-switch input{position:absolute;opacity:0;width:0;height:0}.ele-track{position:relative;width:36px;height:20px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast)}.ele-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.ele-switch input:checked+.ele-track{background:var(--brand-primary)}.ele-switch input:checked+.ele-track:after{transform:translate(16px)}.ele-switch input:focus-visible+.ele-track{box-shadow:var(--focus-ring)}.ele-switch-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.ele-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden}.ele-seg-btn{height:30px;padding:0 var(--space-3);border:none;background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.ele-seg-btn+.ele-seg-btn{border-left:1px solid var(--border-color)}.ele-seg-btn--on{background:var(--brand-primary);color:var(--text-on-brand)}.ele-preview>span:last-child strong{color:var(--brand-primary-dark)}.ele-preview--bad>span:last-child strong{color:var(--status-danger)}.ele-warn{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--status-danger)}.ele-warn svg{font-size:15px}.ele-file{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-height);padding:0 var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-page);color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.ele-file:hover{border-color:var(--brand-primary);background:var(--brand-primary-light)}.ele-file--disabled{opacity:.6;pointer-events:none}.ele-file>svg{font-size:var(--icon-size-sm);color:var(--brand-primary);flex-shrink:0}.ele-file-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ele-file-clear{width:22px;height:22px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ele-file-clear svg{font-size:14px}.ele-btn-solid{background:var(--brand-gradient)}.ele-bal{position:relative}.ele-bal-tag{align-self:flex-start;padding:0 6px;border-radius:var(--radius-pill);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.ele-filters{display:flex;gap:4px;flex-wrap:wrap}.ele-filter{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.ele-filter span{color:var(--text-muted);font-variant-numeric:tabular-nums}.ele-filter--on{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-on-brand)}.ele-filter--on span{color:rgba(var(--text-on-brand-rgb),.85)}.ele-muted-line{margin:0;font-size:var(--fs-sm);color:var(--text-muted)}.ele-hist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);max-height:460px;overflow-y:auto}.ele-hist-item{display:flex;flex-direction:column;gap:4px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.ele-hist-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.ele-hist-leave{font-size:var(--fs-sm);font-weight:var(--fw-semibold);min-width:0}.ele-hist-meta{display:flex;flex-wrap:wrap;gap:2px var(--space-3);font-size:var(--fs-xs);color:var(--text-secondary)}.ele-hist-meta span{display:inline-flex;align-items:center;gap:4px}.ele-hist-meta svg{font-size:13px;color:var(--text-muted)}.ele-hist-reason{margin:0;font-size:var(--fs-xs);color:var(--text-muted);font-style:italic;overflow-wrap:anywhere}.ele-status{flex-shrink:0;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px}.ele-status--pending{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ele-status--approved{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ele-status--rejected{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.ele-status--cancelled{background:var(--surface-page);color:var(--text-muted);border-color:var(--border-color)}.ele-dlg-icon{background:var(--brand-primary-light);color:var(--brand-primary)}.ele-dlg-line{margin:0;display:flex;align-items:center;justify-content:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.ele-dlg-line svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.ele-flow-box--after{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.ele-flow-box--after strong{color:var(--brand-primary-dark)}@media (max-width: 600px){.ele-row{grid-template-columns:minmax(0,1fr)}.ele-hist{max-height:none}}.laa-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.laa-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.laa-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.laa-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.laa-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.laa-header-text{min-width:0}.laa-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.laa-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.laa-ico-md{font-size:20px!important}.laa-ico{font-size:var(--icon-size)!important}.laa-ico-sm{font-size:var(--icon-size-sm)!important}.laa-ico-xs{font-size:14px!important}.laa-ico--spin{animation:laa-rotate .8s linear infinite}.laa-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.laa-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.laa-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.laa-btn-icon:hover:not(:disabled):not(.laa-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.laa-btn-icon:disabled,.laa-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.laa-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.laa-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.laa-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.laa-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.laa-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.laa-btn-primary:disabled{opacity:.5;cursor:not-allowed}.laa-btn-solid,.laa-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.laa-btn-solid:active,.laa-btn-plain:active{transform:scale(.97)}.laa-btn-solid:disabled,.laa-btn-plain:disabled{opacity:.55;cursor:not-allowed}.laa-btn-solid{border:none;color:var(--text-on-brand)}.laa-btn-solid--primary{background:var(--brand-gradient)}.laa-btn-solid--danger,.laa-btn-solid--error{background:var(--status-danger)}.laa-btn-solid:hover:not(:disabled){opacity:.9}.laa-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.laa-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.laa-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.laa-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.laa-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:laa-rotate .7s linear infinite}@keyframes laa-rotate{to{transform:rotate(360deg)}}.laa-search-bar{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1),padding .26s cubic-bezier(.4,0,.2,1);background:var(--surface-page);border-bottom:1px solid transparent;overflow:hidden;flex-shrink:0}.laa-search-bar--open{grid-template-rows:1fr;padding:var(--space-3) var(--space-4);border-bottom-color:var(--border-color)}.laa-search-grid{overflow:hidden;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:640px;gap:var(--space-2);min-height:0}.laa-search-field{position:relative;display:flex;align-items:center}.laa-search-field-icon{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.laa-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-sm);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.laa-search-input::placeholder{color:var(--text-muted)}.laa-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.laa-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast)}.laa-search-clear svg{font-size:12px}.laa-search-clear:hover{background:var(--status-danger)}.laa-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.laa-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.laa-thead{position:sticky;top:0;z-index:var(--z-sticky)}.laa-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.laa-row{animation:laa-row-in .22s ease both}@keyframes laa-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.laa-row:nth-child(2n){background:#f9f9f9}.laa-row:nth-child(odd){background:#fff}.laa-row:hover,.laa-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.laa-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.laa-col-emp{width:18%}.laa-col-org{width:20%}.laa-col-leave{width:120px}.laa-col-period{width:170px}.laa-col-reason{width:auto}.laa-col-actions{width:200px;text-align:center}.laa-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.laa-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.laa-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.laa-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.laa-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.laa-action-btn svg{font-size:15px}.laa-action-btn:disabled{opacity:.4;pointer-events:none}.laa-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.laa-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.laa-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.laa-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.laa-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.laa-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.laa-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.laa-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.laa-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.laa-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:laa-fade-in .3s ease both}@keyframes laa-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.laa-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.laa-state-icon-wrap svg{font-size:28px}.laa-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.laa-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.laa-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.laa-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.laa-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.laa-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:laa-fade-in .3s ease both}.laa-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:laa-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes laa-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.laa-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.laa-sk-text{flex:1;max-width:220px}.laa-sk-text--wide{max-width:320px}.laa-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.laa-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:laa-fade .18s ease both}@keyframes laa-fade{0%{opacity:0}to{opacity:1}}.laa-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:laa-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes laa-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.laa-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.laa-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.laa-dlg-icon svg{font-size:22px}.laa-dlg-icon--danger,.laa-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.laa-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.laa-dlg-head-text{flex:1;min-width:0}.laa-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.laa-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.laa-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.laa-dlg-x svg{font-size:var(--icon-size)}.laa-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.laa-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.laa-dlg-list li+li{margin-top:2px}.laa-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.laa-col-org{display:none}.laa-col-actions{width:96px}.laa-decide-btn span{display:none}.laa-decide-btn{width:32px;padding:0}}@media (max-width: 768px){.laa-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.laa-header{padding:var(--space-3)}.laa-header-left{flex:1 1 100%}.laa-actions{width:100%}.laa-btn-primary{margin-left:auto}.laa-search-bar--open{padding:var(--space-3)}}@media (max-width: 600px){.laa-btn-primary span{display:none}.laa-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.laa-actions-sep{display:none}.laa-search-grid{grid-template-columns:1fr}.laa-table,.laa-table tbody,.laa-table tr,.laa-table td{display:block;width:100%}.laa-thead{display:none}.laa-table tbody{padding:var(--space-2)}.laa-row,.laa-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.laa-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.laa-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.laa-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.laa-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.laa-col-org{display:flex}.laa-col-emp{padding-right:84px}.laa-col-actions{top:var(--space-2)}.laa-action-btn{width:32px;height:32px}.laa-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.laa-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.laa-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.laa-dlg-foot>button{flex:1}}.laa-stack{display:flex;flex-direction:column;min-width:0}.laa-muted{font-size:var(--fs-xs);color:var(--text-muted)}.laa-leave{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px}.laa-days{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.laa-period{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap}.laa-reason{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.laa-doc{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:0 var(--space-2);height:24px;border:1px solid var(--brand-primary-tint2);border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.laa-doc svg{font-size:13px}.laa-doc:hover{background:var(--brand-primary);color:var(--text-on-brand)}.laa-decide{display:flex;justify-content:center;gap:6px}.laa-decide-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:30px;padding:0 var(--space-2);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.laa-decide-btn svg{font-size:15px}.laa-decide-btn:disabled{opacity:.5;cursor:not-allowed}.laa-decide-btn--ok{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.3)}.laa-decide-btn--ok:hover:not(:disabled){background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.laa-decide-btn--no{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.laa-decide-btn--no:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.laa-state-icon-wrap--ok{background:var(--status-success-light);color:var(--status-success)}.laa-act{max-width:var(--modal-width-md)}.laa-dlg-icon--ok{background:var(--status-success-light);color:var(--status-success)}.laa-btn-solid--ok{background:var(--status-success)}.laa-act-body{display:flex;flex-direction:column;gap:6px;padding:0 var(--space-4) var(--space-4)}.laa-act-reason{margin:0 0 var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base);overflow-wrap:anywhere}.laa-act-reason span{display:block;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}.laa-act-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.laa-req{color:var(--status-danger)}.laa-optional{font-weight:var(--fw-regular);font-size:var(--fs-xs);color:var(--text-muted)}.laa-act-input{width:100%;box-sizing:border-box;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);line-height:var(--lh-base);resize:vertical}.laa-act-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.laa-act-input--error{border-color:var(--status-danger)}.laa-act-meta{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-muted)}.laa-act-error{color:var(--status-danger);font-weight:var(--fw-medium)}.laa-search-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:var(--space-6);background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.url-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.url-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.url-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.url-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.url-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.url-header-text{min-width:0}.url-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.url-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.url-ico-md{font-size:20px!important}.url-ico{font-size:var(--icon-size)!important}.url-ico-sm{font-size:var(--icon-size-sm)!important}.url-ico-xs{font-size:14px!important}.url-ico--spin{animation:url-rotate .8s linear infinite}.url-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.url-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.url-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.url-btn-icon:hover:not(:disabled):not(.url-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.url-btn-icon:disabled,.url-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.url-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.url-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.url-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.url-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.url-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.url-btn-primary:disabled{opacity:.5;cursor:not-allowed}.url-btn-solid,.url-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.url-btn-solid:active,.url-btn-plain:active{transform:scale(.97)}.url-btn-solid:disabled,.url-btn-plain:disabled{opacity:.55;cursor:not-allowed}.url-btn-solid{border:none;color:var(--text-on-brand)}.url-btn-solid--primary{background:var(--brand-gradient)}.url-btn-solid--danger,.url-btn-solid--error{background:var(--status-danger)}.url-btn-solid--warning{background:var(--status-warning)}.url-btn-solid:hover:not(:disabled){opacity:.9}.url-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.url-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.url-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.url-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.url-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:url-rotate .7s linear infinite}@keyframes url-rotate{to{transform:rotate(360deg)}}.url-search{position:relative;display:flex;align-items:center;width:240px}.url-search-input{border-color:var(--surface-card)}.url-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.url-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-sm);font-family:inherit}.url-search-input::placeholder{color:var(--text-muted)}.url-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.url-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;border:none;padding:0;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.url-search-clear svg{font-size:12px}.url-search-clear:hover{background:var(--status-danger)}.url-hint-ico{font-size:14px!important;vertical-align:-2px;color:var(--brand-primary)}.url-hint strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.url-hint{margin:0;padding:var(--space-2) var(--space-4);font-size:var(--fs-xs);color:var(--text-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0}.url-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.url-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.url-thead{position:sticky;top:0;z-index:var(--z-sticky)}.url-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.url-row{animation:url-row-in .22s ease both}@keyframes url-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.url-row:nth-child(2n){background:#f9f9f9}.url-row:nth-child(odd){background:#fff}.url-row:hover,.url-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.url-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.url-col-role{width:220px}.url-col-desc{width:auto}.url-col-actions{width:104px;text-align:center}.url-muted{color:var(--text-muted);font-size:var(--fs-sm)}.url-chip{display:inline-flex;align-items:center;gap:4px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px}.url-chip svg{font-size:13px}.url-chip--super{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3);color:var(--status-warning)}.url-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.url-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.url-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.url-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.url-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.url-action-btn svg{font-size:15px}.url-action-btn:disabled{opacity:.4;pointer-events:none}.url-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.url-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.url-action-btn--permission{background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.url-action-btn--permission:hover{background:var(--brand-primary);color:var(--text-on-brand);transform:translateY(-1px)}.url-action-btn--reset{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.25)}.url-action-btn--reset:hover{background:var(--status-warning);color:var(--text-on-brand);transform:translateY(-1px)}.url-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.url-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.url-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.url-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.url-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.url-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.url-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.url-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.url-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:url-fade-in .3s ease both}@keyframes url-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.url-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.url-state-icon-wrap svg{font-size:28px}.url-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.url-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.url-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.url-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.url-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.url-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:url-fade-in .3s ease both}.url-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:url-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes url-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.url-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.url-sk-text{flex:1;max-width:220px}.url-sk-text--wide{max-width:320px}.url-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.url-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:url-fade .18s ease both}@keyframes url-fade{0%{opacity:0}to{opacity:1}}.url-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:url-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes url-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.url-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.url-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.url-dlg-icon svg{font-size:22px}.url-dlg-icon{background:var(--status-warning-light);color:var(--status-warning)}.url-dlg-icon--danger,.url-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.url-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.url-dlg-head-text{flex:1;min-width:0}.url-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.url-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.url-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.url-dlg-x svg{font-size:var(--icon-size)}.url-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.url-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.url-dlg-list li+li{margin-top:2px}.url-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 768px){.url-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.url-header{padding:var(--space-3)}.url-header-left{flex:1 1 100%}.url-actions{width:100%}.url-btn-primary{margin-left:auto}.url-search{flex:1 1 auto;width:auto}.url-hint{padding:var(--space-2) var(--space-3)}}@media (max-width: 600px){.url-btn-primary span{display:none}.url-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.url-actions-sep{display:none}.url-search{order:3;flex:1 1 100%}.url-table,.url-table tbody,.url-table tr,.url-table td{display:block;width:100%}.url-thead{display:none}.url-table tbody{padding:var(--space-2)}.url-row,.url-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.url-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.url-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.url-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.url-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.url-col-role{padding-right:84px}.url-action-btn{width:32px;height:32px}.url-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.url-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.url-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.url-dlg-foot>button{flex:1}}.cur-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:curFadeIn .18s ease both}@keyframes curFadeIn{0%{opacity:0}to{opacity:1}}.cur-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:curSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes curSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cur-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cur-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cur-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cur-header-icon svg{font-size:20px}.cur-header-text{min-width:0}.cur-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cur-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cur-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cur-close-btn svg{font-size:var(--icon-size)}.cur-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cur-close-btn:disabled{opacity:.5;cursor:not-allowed}.cur-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cur-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cur-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cur-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cur-alert-text span{color:var(--text-secondary)}.cur-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cur-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cur-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.cur-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cur-form-group--full{grid-column:1 / -1}.cur-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cur-required{color:var(--status-danger)}.cur-input-wrapper{position:relative;display:flex;align-items:center}.cur-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cur-input-wrapper:focus-within .cur-input-icon{color:var(--brand-primary)}.cur-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cur-input::placeholder{color:var(--text-muted)}.cur-input:hover:not(:disabled){border-color:var(--text-muted)}.cur-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cur-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cur-input-error,.cur-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cur-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cur-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cur-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cur-textarea{height:auto;min-height:64px;padding:var(--space-2) var(--space-3);line-height:var(--lh-base);resize:vertical}.cur-row{display:flex;justify-content:space-between;gap:var(--space-2)}.cur-counter{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.cur-note{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark);font-size:var(--fs-sm);line-height:var(--lh-base)}.cur-note svg{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cur-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cur-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cur-footer-actions{display:flex;gap:var(--space-2)}.cur-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cur-btn:active:not(:disabled){transform:scale(.97)}.cur-btn:disabled{opacity:.55;cursor:not-allowed}.cur-btn-ico{font-size:var(--icon-size)!important}.cur-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cur-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cur-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cur-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cur-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:curSpin .7s linear infinite}@keyframes curSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cur-backdrop{align-items:flex-end;padding:var(--space-2)}.cur-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cur-header,.cur-body{padding:var(--space-3)}.cur-form{grid-template-columns:1fr;gap:var(--space-3)}.cur-footer{padding:var(--space-3)}.cur-footer-note{display:none}.cur-footer-actions{width:100%}.cur-footer-actions .cur-btn{flex:1;min-width:0}}.uur-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:uurFadeIn .18s ease both}@keyframes uurFadeIn{0%{opacity:0}to{opacity:1}}.uur-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:uurSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes uurSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uur-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.uur-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uur-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uur-header-icon svg{font-size:20px}.uur-header-text{min-width:0}.uur-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.uur-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.uur-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.uur-close-btn svg{font-size:var(--icon-size)}.uur-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.uur-close-btn:disabled{opacity:.5;cursor:not-allowed}.uur-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.uur-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.uur-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uur-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.uur-alert-text span{color:var(--text-secondary)}.uur-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.uur-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.uur-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.uur-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.uur-form-group--full{grid-column:1 / -1}.uur-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uur-required{color:var(--status-danger)}.uur-input-wrapper{position:relative;display:flex;align-items:center}.uur-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.uur-input-wrapper:focus-within .uur-input-icon{color:var(--brand-primary)}.uur-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uur-input::placeholder{color:var(--text-muted)}.uur-input:hover:not(:disabled){border-color:var(--text-muted)}.uur-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uur-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.uur-input-error,.uur-input-error:hover:not(:disabled){border-color:var(--status-danger)}.uur-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.uur-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.uur-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.uur-textarea{height:auto;min-height:64px;padding:var(--space-2) var(--space-3);line-height:var(--lh-base);resize:vertical}.uur-row{display:flex;justify-content:space-between;gap:var(--space-2)}.uur-counter{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0}.uur-note{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark);font-size:var(--fs-sm);line-height:var(--lh-base)}.uur-note svg{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uur-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.uur-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uur-current-ico{font-size:13px!important;flex-shrink:0}.uur-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.uur-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uur-footer-actions{display:flex;gap:var(--space-2)}.uur-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.uur-btn:active:not(:disabled){transform:scale(.97)}.uur-btn:disabled{opacity:.55;cursor:not-allowed}.uur-btn-ico{font-size:var(--icon-size)!important}.uur-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uur-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uur-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.uur-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.uur-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:uurSpin .7s linear infinite}@keyframes uurSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.uur-backdrop{align-items:flex-end;padding:var(--space-2)}.uur-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uur-header,.uur-body{padding:var(--space-3)}.uur-form{grid-template-columns:1fr;gap:var(--space-3)}.uur-footer{padding:var(--space-3)}.uur-footer-note{display:none}.uur-footer-actions{width:100%}.uur-footer-actions .uur-btn{flex:1;min-width:0}}.urp-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.urp-btn-solid,.urp-btn-plain,.urp-btn-ghost,.urp-btn-danger,.urp-back{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast),box-shadow var(--transition-fast),transform .1s ease}.urp-btn-solid svg,.urp-btn-plain svg,.urp-back svg{font-size:var(--icon-size-sm)}.urp-btn-solid:active:not(:disabled),.urp-btn-plain:active:not(:disabled),.urp-btn-danger:active:not(:disabled){transform:scale(.97)}.urp-btn-solid:disabled,.urp-btn-plain:disabled,.urp-btn-ghost:disabled,.urp-back:disabled{opacity:.5;cursor:not-allowed}.urp-btn-solid{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:120px}.urp-btn-solid:hover:not(:disabled){box-shadow:var(--shadow-md)}.urp-btn-plain,.urp-back{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.urp-btn-plain:hover:not(:disabled),.urp-back:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.urp-btn-ghost{height:28px;padding:0 var(--space-2);background:transparent;color:var(--brand-primary);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs)}.urp-btn-ghost:hover:not(:disabled){background:var(--brand-primary-light)}.urp-btn-danger{background:var(--status-danger);color:var(--text-on-brand);border:none}.urp-btn-danger:hover{opacity:.9}.urp-icon-btn{width:28px;height:28px;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.urp-icon-btn svg{font-size:var(--icon-size-sm)}.urp-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.urp-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:urpSpin .7s linear infinite}.urp-rot{animation:urpSpin .8s linear infinite}@keyframes urpSpin{to{transform:rotate(360deg)}}.urp-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.urp-bar .urp-back{background:rgba(var(--text-on-brand-rgb),.14);border-color:rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand)}.urp-bar .urp-back:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.26);color:var(--text-on-brand)}.urp-role{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-3)}.urp-role-icon{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center;flex-shrink:0}.urp-role-icon svg{font-size:20px}.urp-role-text{min-width:0}.urp-role-name{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.urp-super{display:inline-flex;align-items:center;gap:3px;padding:1px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.2);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.urp-super svg{font-size:13px}.urp-role-desc{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.urp-bar-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.urp-bar .urp-btn-solid{background:var(--surface-card);color:var(--brand-primary-dark)}.urp-bar .urp-btn-plain{background:transparent;color:var(--text-on-brand);border-color:rgba(var(--text-on-brand-rgb),.35)}.urp-bar .urp-btn-plain:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand)}.urp-note{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:var(--fs-sm)}.urp-note svg{font-size:var(--icon-size);flex-shrink:0}.urp-note--warn{background:var(--status-warning-light);border:1px solid rgba(var(--status-warning-rgb),.3);color:var(--status-warning)}.urp-card{display:flex;flex-direction:column;min-height:0;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.urp-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);flex-wrap:wrap;position:sticky;top:0;z-index:var(--z-sticky)}.urp-progress{flex:0 0 220px;display:flex;flex-direction:column;gap:4px}.urp-progress-text{font-size:var(--fs-xs);color:var(--text-secondary)}.urp-progress-text strong{color:var(--text-primary);font-size:var(--fs-sm)}.urp-progress-track{height:6px;border-radius:var(--radius-pill);background:var(--border-color);overflow:hidden}.urp-progress-fill{height:100%;border-radius:var(--radius-pill);background:var(--brand-gradient);transition:width var(--transition-base)}.urp-search{position:relative;flex:1 1 220px;max-width:340px;display:flex;align-items:center}.urp-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.urp-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-sm);font-family:inherit}.urp-search-input::placeholder{color:var(--text-muted)}.urp-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.urp-search-clear{position:absolute;right:6px;width:18px;height:18px;border:none;border-radius:50%;padding:0;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.urp-search-clear svg{font-size:12px}.urp-bulk{display:flex;align-items:center;gap:6px;margin-left:auto}.urp-body{padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.urp-group{border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.urp-group--other{border-style:dashed}.urp-group-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-page);border-bottom:1px solid var(--border-color)}.urp-collapse{width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.urp-collapse:hover{background:var(--surface-hover);color:var(--text-primary)}.urp-collapse svg{font-size:var(--icon-size);transition:transform var(--transition-fast)}.urp-collapse--closed{transform:rotate(-90deg)}.urp-group-icon{color:var(--brand-primary);display:flex}.urp-group-icon svg{font-size:var(--icon-size-sm)}.urp-group-name{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.urp-group-count{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px;font-variant-numeric:tabular-nums}.urp-group-count--some{background:var(--status-warning-light);color:var(--status-warning)}.urp-group-count--all{background:var(--status-success-light);color:var(--status-success)}.urp-switch-wrap{position:relative;margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer}.urp-switch-label{font-size:var(--fs-xs);color:var(--text-muted)}.urp-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.urp-item{position:relative;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast);margin-bottom:-1px;margin-right:-1px}.urp-item:hover{background:var(--surface-hover)}.urp-item--on{background:rgba(var(--status-success-rgb),.05)}.urp-item--na{cursor:not-allowed;opacity:.6}.urp-item--na:hover{background:transparent}.urp-item--changed{box-shadow:inset 3px 0 0 var(--status-warning)}.urp-item-text{flex:1;min-width:0;display:flex;flex-direction:column}.urp-item-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.urp-item-desc{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.urp-dot{width:7px;height:7px;border-radius:50%;background:var(--status-warning);flex-shrink:0}.urp-switch-input{position:absolute;opacity:0;width:0;height:0}.urp-switch{position:relative;width:34px;height:20px;border-radius:var(--radius-pill);background:var(--border-strong);flex-shrink:0;transition:background var(--transition-fast)}.urp-switch:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.urp-switch-input:checked+.urp-switch{background:var(--status-success)}.urp-switch-input:checked+.urp-switch:after{transform:translate(14px)}.urp-switch--some{background:var(--status-warning)}.urp-switch--some:after{transform:translate(7px)}.urp-switch-input:focus-visible+.urp-switch{box-shadow:var(--focus-ring)}.urp-switch-input:disabled+.urp-switch{opacity:.5}.urp-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.urp-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.urp-state-ico svg{font-size:26px}.urp-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.urp-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.urp-state-desc{margin:0 0 var(--space-1);max-width:380px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.urp-skeleton{display:flex;flex-direction:column;gap:var(--space-3)}.urp-sk-group{border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-3)}.urp-sk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-2);margin-top:var(--space-3)}.urp-sk{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:urpShimmer 1.4s infinite linear}.urp-sk-head{height:16px;width:180px}.urp-sk-row{height:36px}@keyframes urpShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.urp-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family)}.urp-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}.urp-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.urp-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:var(--status-warning-light);color:var(--status-warning);display:flex;align-items:center;justify-content:center}.urp-dlg-icon svg{font-size:22px}.urp-dlg-head-text{flex:1;min-width:0}.urp-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold)}.urp-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.urp-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.urp-dlg-x svg{font-size:var(--icon-size)}.urp-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.urp-bar{flex-wrap:wrap}.urp-role{order:3;flex-basis:100%}.urp-bar-actions{margin-left:auto}}@media (max-width: 768px){.urp-progress{flex:1 1 100%}.urp-search{max-width:none}.urp-items{grid-template-columns:1fr}.urp-body{padding:var(--space-2)}}@media (max-width: 600px){.urp-bar{padding:var(--space-3)}.urp-back span,.urp-bar-actions .urp-btn-plain span{display:none}.urp-btn-solid{min-width:0}.urp-role-desc{white-space:normal}.urp-switch-label{display:none}.urp-bulk{flex:1 1 100%;margin-left:0}.urp-bulk .urp-btn-ghost{flex:1}.urp-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.urp-dlg-foot>button{flex:1}}.uac-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.uac-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));min-height:420px;overflow:hidden}.uac-header{background:var(--brand-gradient);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-shrink:0;flex-wrap:wrap}.uac-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uac-header-icon-wrap{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uac-header-text{min-width:0}.uac-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);margin:0;line-height:var(--lh-tight);letter-spacing:-.2px}.uac-subtitle{font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.8);margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uac-ico-md{font-size:20px!important}.uac-ico{font-size:var(--icon-size)!important}.uac-ico-sm{font-size:var(--icon-size-sm)!important}.uac-ico-xs{font-size:14px!important}.uac-ico--spin{animation:uac-rotate .8s linear infinite}.uac-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.uac-actions-sep{width:1px;height:20px;background:rgba(var(--text-on-brand-rgb),.25);margin:0 2px}.uac-btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);padding:0;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);border:1px solid rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.uac-btn-icon:hover:not(:disabled):not(.uac-btn-icon--disabled){background:rgba(var(--text-on-brand-rgb),.28);border-color:rgba(var(--text-on-brand-rgb),.45);transform:translateY(-1px)}.uac-btn-icon:disabled,.uac-btn-icon--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.uac-btn-icon--active{background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.uac-btn-icon--danger{background:rgba(var(--status-danger-rgb),.3);border-color:rgba(var(--status-danger-rgb),.5)}.uac-btn-icon--danger:hover:not(:disabled){background:rgba(var(--status-danger-rgb),.5)}.uac-btn-primary{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid var(--surface-card);cursor:pointer;white-space:nowrap;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.uac-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.uac-btn-primary:disabled{opacity:.5;cursor:not-allowed}.uac-btn-solid,.uac-btn-plain{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.uac-btn-solid:active,.uac-btn-plain:active{transform:scale(.97)}.uac-btn-solid:disabled,.uac-btn-plain:disabled{opacity:.55;cursor:not-allowed}.uac-btn-solid{border:none;color:var(--text-on-brand)}.uac-btn-solid--primary{background:var(--brand-gradient)}.uac-btn-solid--danger,.uac-btn-solid--error{background:var(--status-danger)}.uac-btn-solid--warning{background:var(--status-warning)}.uac-btn-solid:hover:not(:disabled){opacity:.9}.uac-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uac-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uac-btn-ghost{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-medium);font-family:inherit;border:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.uac-btn-ghost:hover{background:var(--surface-hover);color:var(--text-primary)}.uac-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:uac-rotate .7s linear infinite}@keyframes uac-rotate{to{transform:rotate(360deg)}}.uac-tabbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.uac-tabs{display:inline-flex;gap:2px;padding:3px;border-radius:var(--radius-lg);background:var(--surface-card);border:1px solid var(--border-color)}.uac-tab{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast)}.uac-tab:hover{background:var(--surface-hover);color:var(--text-primary)}.uac-tab--active,.uac-tab--active:hover{background:var(--brand-gradient);color:var(--text-on-brand);box-shadow:var(--shadow-sm)}.uac-tab-count{min-width:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-page);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px;text-align:center}.uac-tab--active .uac-tab-count{background:rgba(var(--text-on-brand-rgb),.22);color:var(--text-on-brand)}.uac-search{position:relative;display:flex;align-items:center;flex:0 1 320px;min-width:200px}.uac-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.uac-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-sm);font-family:inherit}.uac-search-input::placeholder{color:var(--text-muted)}.uac-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uac-search-clear{position:absolute;right:6px;width:18px;height:18px;border-radius:50%;border:none;padding:0;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.uac-search-clear svg{font-size:12px}.uac-search-clear:hover{background:var(--status-danger)}.uac-hint{margin:0;padding:var(--space-2) var(--space-4);font-size:var(--fs-xs);color:var(--text-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0}.uac-table-wrap{flex:1;min-height:0;overflow:auto;position:relative;display:flex;flex-direction:column}.uac-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.uac-thead{position:sticky;top:0;z-index:var(--z-sticky)}.uac-th{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--surface-page);border-bottom:1px solid var(--border-strong);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none}.uac-row{animation:uac-row-in .22s ease both}@keyframes uac-row-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.uac-row:nth-child(2n){background:#f9f9f9}.uac-row:nth-child(odd){background:#fff}.uac-row:hover,.uac-row:nth-child(2n):hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.uac-td{padding:var(--table-cell-py) var(--table-cell-px);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;border-bottom:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uac-col-role{width:150px}.uac-col-user{width:22%}.uac-col-empno{width:130px}.uac-col-emp{width:auto}.uac-col-scope{width:160px}.uac-col-actions{width:80px;text-align:center}.uac-col-actions--2{width:104px}.uac-col-actions--3{width:128px}.uac-badge-code--builtin{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.uac-builtin{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:help}.uac-builtin svg{font-size:15px}.uac-muted{color:var(--text-muted);font-size:var(--fs-sm)}.uac-chip{display:inline-flex;align-items:center;gap:4px;padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;border:1px solid transparent;line-height:18px}.uac-chip svg{font-size:13px}.uac-chip--ok{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.uac-chip--warn{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3);cursor:pointer}.uac-chip--warn:hover:not(:disabled){background:var(--status-warning);color:var(--text-on-brand)}.uac-chip:disabled{cursor:default}.uac-chip--link{cursor:pointer}.uac-chip--link:hover{background:var(--status-success);color:var(--text-on-brand)}.uac-text-primary{font-weight:var(--fw-semibold);color:var(--text-primary)}.uac-text-secondary{font-size:var(--fs-sm);color:var(--text-secondary)}.uac-badge-code{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.uac-action-group{display:flex;align-items:center;justify-content:center;gap:6px}.uac-action-btn{width:28px;height:28px;padding:0;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.uac-action-btn svg{font-size:15px}.uac-action-btn:disabled{opacity:.4;pointer-events:none}.uac-action-btn--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.uac-action-btn--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.uac-action-btn--reset{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.25)}.uac-action-btn--reset:hover{background:var(--status-warning);color:var(--text-on-brand);transform:translateY(-1px)}.uac-action-btn--scope{background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.uac-action-btn--scope:hover{background:var(--brand-primary);color:var(--text-on-brand);transform:translateY(-1px)}.uac-action-btn--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.uac-action-btn--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.uac-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.uac-footer-text{font-size:var(--fs-sm);color:var(--text-muted)}.uac-footer-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.uac-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uac-upload-indicator{color:var(--brand-primary);font-weight:var(--fw-medium)}.uac-state-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4)}.uac-state-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;max-width:400px;animation:uac-fade-in .3s ease both}@keyframes uac-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.uac-state-icon-wrap{width:56px;height:56px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-1)}.uac-state-icon-wrap svg{font-size:28px}.uac-state-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.uac-state-title{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);margin:0}.uac-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);margin:0 0 var(--space-1);line-height:var(--lh-base)}.uac-state-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.uac-skeleton-list{padding:var(--space-2) var(--space-4);display:flex;flex-direction:column}.uac-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color);animation:uac-fade-in .3s ease both}.uac-sk{height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:uac-shimmer 1.4s infinite linear;flex-shrink:1}@keyframes uac-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.uac-sk-code{width:90px;height:20px;border-radius:var(--radius-sm);flex-shrink:0}.uac-sk-text{flex:1;max-width:220px}.uac-sk-text--wide{max-width:320px}.uac-sk-pill{width:64px;height:26px;margin-left:auto;flex-shrink:0}.uac-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);font-family:var(--font-family);animation:uac-fade .18s ease both}@keyframes uac-fade{0%{opacity:0}to{opacity:1}}.uac-dlg{width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:uac-pop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes uac-pop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uac-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.uac-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.uac-dlg-icon svg{font-size:22px}.uac-dlg-icon{background:var(--status-warning-light);color:var(--status-warning)}.uac-dlg-icon--danger,.uac-dlg-icon--error{background:var(--status-danger-light);color:var(--status-danger)}.uac-dlg-icon--primary{background:var(--brand-primary-light);color:var(--brand-primary)}.uac-dlg-head-text{flex:1;min-width:0}.uac-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.uac-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.uac-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.uac-dlg-x svg{font-size:var(--icon-size)}.uac-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.uac-dlg-list{margin:0 var(--space-4) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-6);max-height:220px;overflow-y:auto;background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.2);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.uac-dlg-list li+li{margin-top:2px}.uac-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.uac-col-empno{display:none}}@media (max-width: 768px){.uac-card{height:auto;min-height:calc(100vh - var(--header-height) - 2 * var(--page-padding))}.uac-header{padding:var(--space-3)}.uac-header-left{flex:1 1 100%}.uac-actions{width:100%}.uac-btn-primary{margin-left:auto}.uac-tabbar{padding:var(--space-2) var(--space-3)}.uac-search{flex:1 1 100%}.uac-hint{padding:var(--space-2) var(--space-3)}.uac-col-scope{width:110px}}@media (max-width: 600px){.uac-btn-primary span{display:none}.uac-btn-primary{width:var(--control-height-sm);padding:0;justify-content:center}.uac-actions-sep{display:none}.uac-tabs{width:100%}.uac-tab{flex:1;justify-content:center}.uac-col-empno{display:flex}.uac-table,.uac-table tbody,.uac-table tr,.uac-table td{display:block;width:100%}.uac-thead{display:none}.uac-table tbody{padding:var(--space-2)}.uac-row,.uac-row:nth-child(2n){position:relative;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);box-shadow:var(--shadow-sm)}.uac-row:hover{box-shadow:var(--shadow-sm),inset 3px 0 0 var(--brand-primary)}.uac-td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal;text-align:left}.uac-td[data-label]:before{content:attr(data-label);flex:0 0 96px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.uac-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto;padding:0}.uac-col-role{padding-right:84px}.uac-action-btn{width:32px;height:32px}.uac-footer{justify-content:center;text-align:center;padding:var(--space-2) var(--space-3)}.uac-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.uac-dlg{border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uac-dlg-foot>button{flex:1}}.cau-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:cauFadeIn .18s ease both}@keyframes cauFadeIn{0%{opacity:0}to{opacity:1}}.cau-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:cauSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cauSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cau-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cau-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cau-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cau-header-icon svg{font-size:20px}.cau-header-text{min-width:0}.cau-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cau-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cau-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cau-close-btn svg{font-size:var(--icon-size)}.cau-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cau-close-btn:disabled{opacity:.5;cursor:not-allowed}.cau-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cau-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cau-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cau-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cau-alert-text span{color:var(--text-secondary)}.cau-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cau-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cau-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.cau-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cau-form-group--full{grid-column:1 / -1}.cau-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cau-required{color:var(--status-danger)}.cau-input-wrapper{position:relative;display:flex;align-items:center}.cau-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cau-input-wrapper:focus-within .cau-input-icon{color:var(--brand-primary)}.cau-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cau-input::placeholder{color:var(--text-muted)}.cau-input:hover:not(:disabled){border-color:var(--text-muted)}.cau-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cau-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cau-input-error,.cau-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cau-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cau-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cau-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cau-label{display:inline-flex;align-items:center;gap:var(--space-1)}.cau-label-ico{font-size:15px!important;color:var(--text-muted)}.cau-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.cau-input--pwd{padding-right:40px}.cau-eye{position:absolute;right:6px;width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.cau-eye svg{font-size:var(--icon-size-sm)}.cau-eye:hover{background:var(--surface-hover);color:var(--text-primary)}.cau-opt{display:flex;flex-direction:column;line-height:var(--lh-tight)}.cau-opt small{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.react-select__option--is-selected .cau-opt small{color:inherit;opacity:.85}.cau-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cau-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cau-footer-actions{display:flex;gap:var(--space-2)}.cau-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cau-btn:active:not(:disabled){transform:scale(.97)}.cau-btn:disabled{opacity:.55;cursor:not-allowed}.cau-btn-ico{font-size:var(--icon-size)!important}.cau-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cau-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cau-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cau-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cau-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cauSpin .7s linear infinite}@keyframes cauSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cau-backdrop{align-items:flex-end;padding:var(--space-2)}.cau-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cau-header,.cau-body{padding:var(--space-3)}.cau-form{grid-template-columns:1fr;gap:var(--space-3)}.cau-footer{padding:var(--space-3)}.cau-footer-note{display:none}.cau-footer-actions{width:100%}.cau-footer-actions .cau-btn{flex:1;min-width:0}}.uau-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:uauFadeIn .18s ease both}@keyframes uauFadeIn{0%{opacity:0}to{opacity:1}}.uau-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:uauSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes uauSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uau-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.uau-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uau-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uau-header-icon svg{font-size:20px}.uau-header-text{min-width:0}.uau-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.uau-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.uau-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.uau-close-btn svg{font-size:var(--icon-size)}.uau-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.uau-close-btn:disabled{opacity:.5;cursor:not-allowed}.uau-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.uau-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.uau-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uau-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.uau-alert-text span{color:var(--text-secondary)}.uau-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.uau-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.uau-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.uau-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.uau-form-group--full{grid-column:1 / -1}.uau-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uau-required{color:var(--status-danger)}.uau-input-wrapper{position:relative;display:flex;align-items:center}.uau-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.uau-input-wrapper:focus-within .uau-input-icon{color:var(--brand-primary)}.uau-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uau-input::placeholder{color:var(--text-muted)}.uau-input:hover:not(:disabled){border-color:var(--text-muted)}.uau-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uau-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.uau-input-error,.uau-input-error:hover:not(:disabled){border-color:var(--status-danger)}.uau-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.uau-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.uau-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.uau-label{display:inline-flex;align-items:center;gap:var(--space-1)}.uau-label-ico{font-size:15px!important;color:var(--text-muted)}.uau-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.uau-input--pwd{padding-right:40px}.uau-eye{position:absolute;right:6px;width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.uau-eye svg{font-size:var(--icon-size-sm)}.uau-eye:hover{background:var(--surface-hover);color:var(--text-primary)}.uau-opt{display:flex;flex-direction:column;line-height:var(--lh-tight)}.uau-opt small{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.react-select__option--is-selected .uau-opt small{color:inherit;opacity:.85}.uau-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.uau-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uau-current-ico{font-size:13px!important;flex-shrink:0}.uau-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.uau-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uau-footer-actions{display:flex;gap:var(--space-2)}.uau-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.uau-btn:active:not(:disabled){transform:scale(.97)}.uau-btn:disabled{opacity:.55;cursor:not-allowed}.uau-btn-ico{font-size:var(--icon-size)!important}.uau-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uau-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uau-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.uau-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.uau-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:uauSpin .7s linear infinite}@keyframes uauSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.uau-backdrop{align-items:flex-end;padding:var(--space-2)}.uau-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uau-header,.uau-body{padding:var(--space-3)}.uau-form{grid-template-columns:1fr;gap:var(--space-3)}.uau-footer{padding:var(--space-3)}.uau-footer-note{display:none}.uau-footer-actions{width:100%}.uau-footer-actions .uau-btn{flex:1;min-width:0}}.dsm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.dsm-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:dsmIn var(--transition-base) ease-out}@keyframes dsmIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.dsm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.dsm-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0}.dsm-header-icon{width:40px;height:40px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.3);display:flex;align-items:center;justify-content:center;flex-shrink:0}.dsm-header-icon svg{font-size:22px}.dsm-header-text{min-width:0}.dsm-step{display:inline-block;margin-bottom:2px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.2);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px}.dsm-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);overflow-wrap:anywhere}.dsm-subtitle{margin:4px 0 0;font-size:var(--fs-sm);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.dsm-close{width:32px;height:32px;border:none;border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.dsm-close:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.26)}.dsm-close svg{font-size:var(--icon-size)}.dsm-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);flex-wrap:wrap;flex-shrink:0}.dsm-summary{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--text-secondary)}.dsm-summary>svg{font-size:var(--icon-size);color:var(--brand-primary)}.dsm-summary strong{color:var(--text-primary)}.dsm-dirty{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px}.dsm-search{position:relative;display:flex;align-items:center;flex:1 1 200px;max-width:300px}.dsm-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.dsm-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-sm);font-family:inherit}.dsm-search-input::placeholder{color:var(--text-muted)}.dsm-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dsm-search-clear{position:absolute;right:6px;width:18px;height:18px;border:none;border-radius:50%;padding:0;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.dsm-search-clear svg{font-size:12px}.dsm-bulk{display:flex;gap:6px;margin-left:auto}.dsm-btn-ghost,.dsm-btn-plain,.dsm-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;white-space:nowrap;cursor:pointer;transition:background var(--transition-fast),opacity var(--transition-fast),box-shadow var(--transition-fast)}.dsm-btn-ghost:disabled,.dsm-btn-plain:disabled,.dsm-btn-primary:disabled{opacity:.5;cursor:not-allowed}.dsm-btn-plain svg,.dsm-btn-primary svg{font-size:var(--icon-size-sm)}.dsm-btn-ghost{height:28px;padding:0 var(--space-2);background:transparent;color:var(--brand-primary);border:1px solid var(--brand-primary-tint2);font-size:var(--fs-xs)}.dsm-btn-ghost:hover:not(:disabled){background:var(--brand-primary-light)}.dsm-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.dsm-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dsm-btn-primary{min-width:130px;background:var(--brand-gradient);color:var(--text-on-brand);border:none}.dsm-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.dsm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:dsmSpin .7s linear infinite}@keyframes dsmSpin{to{transform:rotate(360deg)}}.dsm-body{flex:1;min-height:220px;overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.dsm-ou-sk{border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-3);animation:dsmIn var(--transition-base) both}.dsm-sk{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:dsmShimmer 1.4s infinite linear}.dsm-sk-head{height:16px;width:200px;max-width:60%}.dsm-sk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-2);margin-top:var(--space-3)}.dsm-sk-chip{height:32px}@keyframes dsmShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dsm-ou{border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;flex-shrink:0}.dsm-ou--all{border-color:rgba(var(--status-success-rgb),.35)}.dsm-ou--some{border-color:rgba(var(--status-warning-rgb),.4)}.dsm-ou-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface-page)}.dsm-ou-head:not(:last-child){border-bottom:1px solid var(--border-color)}.dsm-collapse{width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;flex-shrink:0}.dsm-collapse:disabled{visibility:hidden}.dsm-collapse:hover{background:var(--surface-hover);color:var(--text-primary)}.dsm-collapse svg{font-size:var(--icon-size);transition:transform var(--transition-fast)}.dsm-collapse--closed{transform:rotate(-90deg)}.dsm-ou-name{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary);overflow-wrap:anywhere}.dsm-ou-code{padding:0 6px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-semibold);flex-shrink:0}.dsm-ou-count{margin-left:auto;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.dsm-depts{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:var(--space-2);padding:var(--space-3)}.dsm-check,.dsm-dept{position:relative;display:flex;align-items:center;gap:var(--space-2);cursor:pointer;min-width:0}.dsm-check input,.dsm-dept input{position:absolute;opacity:0;width:0;height:0}.dsm-box{position:relative;width:18px;height:18px;border:2px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-card);flex-shrink:0;transition:background var(--transition-fast),border-color var(--transition-fast)}.dsm-check input:checked+.dsm-box,.dsm-dept input:checked+.dsm-box{background:var(--brand-primary);border-color:var(--brand-primary)}.dsm-check input:checked+.dsm-box:after,.dsm-dept input:checked+.dsm-box:after{content:"";position:absolute;left:4px;top:0;width:5px;height:10px;border:solid var(--text-on-brand);border-width:0 2px 2px 0;transform:rotate(45deg)}.dsm-check input:indeterminate+.dsm-box{background:var(--status-warning);border-color:var(--status-warning)}.dsm-check input:indeterminate+.dsm-box:after{content:"";position:absolute;left:3px;top:6px;width:8px;height:2px;background:var(--text-on-brand)}.dsm-check input:focus-visible+.dsm-box,.dsm-dept input:focus-visible+.dsm-box{box-shadow:var(--focus-ring)}.dsm-check input:disabled+.dsm-box,.dsm-dept input:disabled+.dsm-box{opacity:.5}.dsm-dept{padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:background var(--transition-fast),border-color var(--transition-fast)}.dsm-dept:hover{background:var(--surface-hover)}.dsm-dept--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.dsm-dept-name{font-size:var(--fs-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dsm-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.dsm-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.dsm-state-ico svg{font-size:26px}.dsm-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.dsm-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.dsm-state-desc{margin:0 0 var(--space-1);max-width:400px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.dsm-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.dsm-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.dsm-footer-actions{display:flex;gap:var(--space-2);margin-left:auto}@media (max-width: 768px){.dsm-search{max-width:none}.dsm-depts{grid-template-columns:1fr 1fr}}@media (max-width: 600px){.dsm-backdrop{align-items:flex-end;padding:0}.dsm-sheet{max-width:none;max-height:92vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.dsm-header{padding:var(--space-3)}.dsm-subtitle{display:none}.dsm-toolbar{padding:var(--space-2) var(--space-3)}.dsm-search{flex:1 1 100%}.dsm-bulk{flex:1 1 100%;margin-left:0}.dsm-bulk .dsm-btn-ghost{flex:1}.dsm-body{padding:var(--space-2) var(--space-3) var(--space-3)}.dsm-depts{grid-template-columns:1fr;padding:var(--space-2)}.dsm-footer{padding:var(--space-2) var(--space-3)}.dsm-footer-note{display:none}.dsm-footer-actions{flex:1}.dsm-footer-actions>button{flex:1}}.gfl-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.gfl-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.gfl-head-back,.gfl-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.gfl-head-back{padding:0;cursor:pointer}.gfl-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.gfl-head-back svg,.gfl-head-icon svg{font-size:22px}.gfl-head-text{flex:1;min-width:0}.gfl-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.gfl-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.gfl-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.gfl-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.gfl-head-btn svg{font-size:var(--icon-size-sm)}.gfl-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.gfl-head-btn:disabled{opacity:.6;cursor:not-allowed}.gfl-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.gfl-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.gfl-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.gfl-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.gfl-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.gfl-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.gfl-search button svg{font-size:12px}.gfl-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.gfl-btn svg{font-size:var(--icon-size-sm)}.gfl-btn:disabled{opacity:.55;cursor:not-allowed}.gfl-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.gfl-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.gfl-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.gfl-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.gfl-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.gfl-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.gfl-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.gfl-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.gfl-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.gfl-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.gfl-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.gfl-icon-btn svg{font-size:var(--icon-size-sm)}.gfl-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.gfl-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.gfl-icon-btn:disabled{opacity:.45;cursor:not-allowed}.gfl-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.gfl-rotating{animation:gflSpin .8s linear infinite}.gfl-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:gflSpin .7s linear infinite}@keyframes gflSpin{to{transform:rotate(360deg)}}@keyframes gflShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gfl-panel{display:flex;flex-direction:column;min-height:360px;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.gfl-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.gfl-bar-right{display:flex;align-items:center;gap:var(--space-2);flex:0 1 340px;min-width:200px}.gfl-chips{display:flex;flex-wrap:wrap;gap:6px}.gfl-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.gfl-chip strong{font-variant-numeric:tabular-nums}.gfl-chip--all{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-secondary)}.gfl-chip--on{box-shadow:0 0 0 2px var(--brand-primary)}.gfl-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.gfl-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.gfl-grid{margin:0;padding:var(--space-3) var(--space-4);list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:var(--space-3);overflow-y:auto;max-height:calc(100vh - var(--header-height) - 270px)}.gfl-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.gfl-card:hover{box-shadow:var(--shadow-md);border-color:var(--brand-primary-tint2)}.gfl-card--off{background:var(--surface-page)}.gfl-card-top{display:flex;align-items:center;gap:var(--space-2);min-width:0}.gfl-card-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.gfl-card-ico svg{font-size:18px}.gfl-card--off .gfl-card-ico{background:var(--brand-secondary-light);color:var(--text-muted)}.gfl-card-title{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.gfl-card-title strong{font-size:var(--fs-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gfl-badge{flex-shrink:0;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px}.gfl-card-addr{margin:0;min-height:34px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.gfl-facts{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.gfl-facts>div{padding:6px var(--space-2);border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color)}.gfl-card--off .gfl-facts>div{background:var(--surface-card)}.gfl-facts-wide{grid-column:1 / -1}.gfl-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.gfl-facts dd{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.gfl-map-link{margin-left:auto;display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-xs);color:var(--brand-primary);text-decoration:none}.gfl-map-link svg{font-size:12px}.gfl-map-link:hover{text-decoration:underline}.gfl-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-color)}.gfl-actions-right{display:inline-flex;gap:4px}.gfl-confirm{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25)}.gfl-confirm p{margin:0;display:flex;gap:6px;font-size:var(--fs-xs);color:var(--text-primary);line-height:var(--lh-base)}.gfl-confirm p svg{flex-shrink:0;font-size:var(--icon-size-sm);color:var(--status-danger)}.gfl-confirm-btns{display:flex;justify-content:flex-end;gap:var(--space-2)}.gfl-foot{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.gfl-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.gfl-state--compact{padding:var(--space-6) var(--space-3)}.gfl-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.gfl-state-ico svg{font-size:26px}.gfl-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.gfl-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.gfl-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.gfl-sk{height:210px;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:gflShimmer 1.4s infinite linear}@media (max-width: 600px){.gfl-head{padding:var(--space-3)}.gfl-head-text p,.gfl-head-btn span{display:none}.gfl-bar{padding:var(--space-2) var(--space-3)}.gfl-bar-right{flex:1 1 100%}.gfl-grid{grid-template-columns:minmax(0,1fr);padding:var(--space-3);max-height:none}}.gfm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.gfm-btn svg{font-size:var(--icon-size-sm)}.gfm-btn:disabled{opacity:.55;cursor:not-allowed}.gfm-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.gfm-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.gfm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.gfm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.gfm-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.gfm-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.gfm-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.gfm-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.gfm-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.gfm-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.gfm-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.gfm-icon-btn svg{font-size:var(--icon-size-sm)}.gfm-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.gfm-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.gfm-icon-btn:disabled{opacity:.45;cursor:not-allowed}.gfm-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.gfm-rotating{animation:gfmSpin .8s linear infinite}.gfm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:gfmSpin .7s linear infinite}@keyframes gfmSpin{to{transform:rotate(360deg)}}@keyframes gfmShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gfm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.gfm-sheet{width:100%;max-width:var(--modal-width-lg);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;margin:0;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:gfmUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes gfmUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.gfm-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.gfm-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.gfm-header-icon svg{font-size:20px}.gfm-header-text{flex:1;min-width:0}.gfm-header-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.gfm-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.gfm-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.gfm-close svg{font-size:var(--icon-size)}.gfm-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden}.gfm-form{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);overflow-y:auto}.gfm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.gfm-field>label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.gfm-field>label b,.gfm-coords-head b{color:var(--status-danger)}.gfm-field>small,.gfm-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.gfm-hint{margin-top:calc(-1 * var(--space-2))}.gfm-hint--warn{color:var(--status-warning)}.gfm-err{color:var(--status-danger)!important}.gfm-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.gfm-input{width:100%;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}.gfm-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.gfm-input--num{font-variant-numeric:tabular-nums}.gfm-textarea{height:auto;padding:var(--space-2);resize:vertical;line-height:var(--lh-base)}.gfm-coords-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:calc(-1 * var(--space-2));font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.gfm-link-btn{display:inline-flex;align-items:center;gap:4px;padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.gfm-link-btn svg{font-size:var(--icon-size-sm)}.gfm-link-btn:disabled{opacity:.55;cursor:not-allowed}.gfm-radius{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.gfm-radius-input{position:relative;flex:0 0 120px}.gfm-radius-input span{position:absolute;right:var(--space-2);top:50%;transform:translateY(-50%);font-size:var(--fs-xs);color:var(--text-muted)}.gfm-radius-input .gfm-input{padding-right:24px}.gfm-presets{display:flex;flex-wrap:wrap;gap:4px}.gfm-preset{height:28px;padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.gfm-preset:hover:not(:disabled){background:var(--surface-hover)}.gfm-preset--on{background:var(--brand-primary-light);border-color:var(--brand-primary);color:var(--brand-primary-dark)}.gfm-switch{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page);cursor:pointer}.gfm-switch input{position:absolute;opacity:0;pointer-events:none}.gfm-switch-track{position:relative;width:36px;height:20px;flex-shrink:0;margin-top:2px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast)}.gfm-switch-track span{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.gfm-switch input:checked+.gfm-switch-track{background:var(--status-success)}.gfm-switch input:checked+.gfm-switch-track span{transform:translate(16px)}.gfm-switch input:focus-visible+.gfm-switch-track{box-shadow:var(--focus-ring)}.gfm-switch-text{display:flex;flex-direction:column}.gfm-switch-text strong{font-size:var(--fs-sm)}.gfm-switch-text small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.gfm-alert{display:flex;align-items:center;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.gfm-alert svg{font-size:var(--icon-size-sm)}.gfm-map{display:flex;flex-direction:column;min-height:0;border-left:1px solid var(--border-color);background:var(--surface-page)}.gfm-map-frame{flex:1;width:100%;min-height:280px;border:none}.gfm-map-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary)}.gfm-map-foot a{display:inline-flex;align-items:center;gap:3px;color:var(--brand-primary);font-weight:var(--fw-semibold);text-decoration:none}.gfm-map-foot a svg{font-size:13px}.gfm-map-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6);text-align:center;color:var(--text-muted)}.gfm-map-empty svg{font-size:40px;color:var(--brand-primary-tint2)}.gfm-map-empty p{margin:0;max-width:260px;font-size:var(--fs-sm);line-height:var(--lh-base)}.gfm-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}@media (max-width: 860px){.gfm-body{display:flex;flex-direction:column;overflow-y:auto}.gfm-form{overflow:visible}.gfm-map{border-left:none;border-top:1px solid var(--border-color)}.gfm-map-frame{min-height:240px}}@media (max-width: 600px){.gfm-backdrop{padding:0;align-items:flex-end}.gfm-sheet{max-width:none;max-height:100vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.gfm-header-text p{display:none}.gfm-form{padding:var(--space-3)}.gfm-row{grid-template-columns:minmax(0,1fr)}.gfm-footer .gfm-btn{flex:1}}.aug-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.aug-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.aug-head-back,.aug-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.aug-head-back{padding:0;cursor:pointer}.aug-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.aug-head-back svg,.aug-head-icon svg{font-size:22px}.aug-head-text{flex:1;min-width:0}.aug-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.aug-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.aug-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.aug-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.aug-head-btn svg{font-size:var(--icon-size-sm)}.aug-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.aug-head-btn:disabled{opacity:.6;cursor:not-allowed}.aug-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.aug-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.aug-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.aug-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.aug-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.aug-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.aug-search button svg{font-size:12px}.aug-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.aug-btn svg{font-size:var(--icon-size-sm)}.aug-btn:disabled{opacity:.55;cursor:not-allowed}.aug-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.aug-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.aug-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.aug-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.aug-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.aug-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.aug-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.aug-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.aug-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.aug-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.aug-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.aug-icon-btn svg{font-size:var(--icon-size-sm)}.aug-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.aug-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.aug-icon-btn:disabled{opacity:.45;cursor:not-allowed}.aug-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.aug-rotating{animation:augSpin .8s linear infinite}.aug-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:augSpin .7s linear infinite}@keyframes augSpin{to{transform:rotate(360deg)}}@keyframes augShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.aug-summary{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:var(--space-2);padding:var(--space-3)}.aug-summary-item{display:flex;flex-direction:column;gap:2px;min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color)}.aug-summary-item small{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.aug-summary-item strong{display:flex;align-items:center;gap:4px;font-size:var(--fs-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.aug-map-link{display:inline-flex;color:var(--brand-primary)}.aug-map-link svg{font-size:14px}.aug-badge{align-self:flex-start;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px}.aug-badge--on{background:var(--status-success-light);color:var(--status-success)}.aug-badge--off{background:var(--brand-secondary-light);color:var(--brand-secondary-dark)}.aug-note{margin:calc(-1 * var(--space-2)) 0 0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--status-warning)}.aug-note svg{font-size:var(--icon-size-sm)}.aug-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--section-gap)}.aug-pane{display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 300px);min-height:440px;overflow:hidden}.aug-pane-head{padding:var(--space-3) var(--space-3) var(--space-2);border-top:3px solid var(--brand-primary)}.aug-pane--assigned .aug-pane-head{border-top-color:var(--status-success)}.aug-pane-title h3{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-md);font-weight:var(--fw-bold)}.aug-pane-title h3 span{padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);line-height:18px}.aug-pane-title p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.aug-tools{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.aug-check-all{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.aug-check-all svg{font-size:18px}.aug-check-all:disabled{opacity:.5;cursor:not-allowed}.aug-dept{flex:0 1 180px;min-width:140px}.aug-dept .react-select__control{min-height:var(--control-height-sm)}.aug-dept .react-select__value-container{padding-top:0;padding-bottom:0}.aug-dept .react-select__indicator{padding:4px}.aug-list{flex:1;min-height:0;overflow-y:auto;margin:0;padding:4px;list-style:none}.aug-item{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:inherit;font-family:inherit;text-align:left;cursor:pointer}.aug-item:hover:not(:disabled){background:var(--surface-hover)}.aug-item--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.aug-item--on:hover:not(:disabled){background:var(--brand-primary-light)}.aug-item-chk{flex-shrink:0;font-size:18px!important;color:var(--text-muted)}.aug-item--on .aug-item-chk{color:var(--brand-primary)}.aug-item-main{flex:1;min-width:0;display:flex;flex-direction:column}.aug-item-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aug-item-meta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aug-pane-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.aug-pane-foot .aug-btn{height:var(--control-height-sm)}.aug-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-3);text-align:center}.aug-state p{margin:0;max-width:380px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.aug-state-ico{font-size:32px!important;color:var(--brand-primary)}.aug-state-ico--error{color:var(--status-danger)}.aug-sk{display:block;height:42px;margin-bottom:4px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:augShimmer 1.4s infinite linear;list-style:none}.aug-sk--line{grid-column:1 / -1;height:48px;margin:0}@media (max-width: 960px){.aug-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.aug-summary-item--wide{grid-column:1 / -1}.aug-columns{grid-template-columns:minmax(0,1fr)}.aug-pane{height:480px}}@media (max-width: 600px){.aug-head{padding:var(--space-3)}.aug-head-text p,.aug-head-btn span{display:none}.aug-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.aug-tools{flex-wrap:wrap}.aug-search{flex:1 1 calc(100% - 48px)}.aug-dept{flex:1 1 100%}}.ddm-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ddm-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.ddm-head-back,.ddm-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.ddm-head-back{padding:0;cursor:pointer}.ddm-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.ddm-head-back svg,.ddm-head-icon svg{font-size:22px}.ddm-head-text{flex:1;min-width:0}.ddm-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.ddm-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.ddm-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ddm-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.ddm-head-btn svg{font-size:var(--icon-size-sm)}.ddm-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.ddm-head-btn:disabled{opacity:.6;cursor:not-allowed}.ddm-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.ddm-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.ddm-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ddm-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ddm-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ddm-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ddm-search button svg{font-size:12px}.ddm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.ddm-btn svg{font-size:var(--icon-size-sm)}.ddm-btn:disabled{opacity:.55;cursor:not-allowed}.ddm-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.ddm-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.ddm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ddm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.ddm-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ddm-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.ddm-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.ddm-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.ddm-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.ddm-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.ddm-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ddm-icon-btn svg{font-size:var(--icon-size-sm)}.ddm-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.ddm-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.ddm-icon-btn:disabled{opacity:.45;cursor:not-allowed}.ddm-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.ddm-rotating{animation:ddmSpin .8s linear infinite}.ddm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ddmSpin .7s linear infinite}@keyframes ddmSpin{to{transform:rotate(360deg)}}@keyframes ddmShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ddm-head-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.ddm-head-time{display:inline-flex;align-items:center;gap:6px;padding:0 var(--space-2);height:var(--control-height-sm);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.12);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.ddm-live-dot{width:8px;height:8px;border-radius:50%;background:var(--status-success);box-shadow:0 0 0 3px rgba(var(--status-success-rgb),.3);animation:ddmPulse 2s ease-in-out infinite}@keyframes ddmPulse{50%{box-shadow:0 0 0 6px rgba(var(--status-success-rgb),0)}}.ddm-head-btn--ghost{width:var(--control-height-sm);padding:0;justify-content:center;background:rgba(var(--text-on-brand-rgb),.12);border-color:rgba(var(--text-on-brand-rgb),.35);color:var(--text-on-brand)}.ddm-head-btn--ghost:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22);box-shadow:none}.ddm-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ddm-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ddm-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.ddm-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.ddm-tone--brand{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.ddm-bg--success{background:var(--status-success)}.ddm-bg--warning{background:var(--status-warning)}.ddm-bg--danger{background:var(--status-danger)}.ddm-bg--muted{background:var(--border-strong)}.ddm-bg--brand{background:var(--brand-primary)}.ddm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--section-gap)}.ddm-kpi{position:relative;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-sm);color:inherit;font-family:inherit;text-align:left;cursor:pointer;overflow:hidden;transition:box-shadow var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.ddm-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--kpi-color, var(--brand-primary))}.ddm-kpi:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ddm-kpi--on{border-color:var(--kpi-color, var(--brand-primary));box-shadow:0 0 0 1px var(--kpi-color, var(--brand-primary)),var(--shadow-md)}.ddm-kpi--brand{--kpi-color: var(--brand-primary)}.ddm-kpi--success{--kpi-color: var(--status-success)}.ddm-kpi--warning{--kpi-color: var(--status-warning)}.ddm-kpi--danger{--kpi-color: var(--status-danger)}.ddm-kpi-ico{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--kpi-color);background:var(--surface-page);border:1px solid var(--border-color)}.ddm-kpi-ico svg{font-size:20px}.ddm-kpi-main{display:flex;flex-direction:column;min-width:0}.ddm-kpi-main small{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px}.ddm-kpi-main strong{font-size:var(--fs-2xl);font-weight:var(--fw-bold);line-height:1.15;font-variant-numeric:tabular-nums;color:var(--text-primary)}.ddm-kpi-main em{font-style:normal;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.ddm-fleet{padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.ddm-fleet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;font-size:var(--fs-sm)}.ddm-fleet-head span{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-muted)}.ddm-fleet-head svg{font-size:var(--icon-size-sm)}.ddm-fleet-bar{display:flex;height:10px;border-radius:var(--radius-pill);overflow:hidden;background:var(--surface-page);gap:2px}.ddm-fleet-seg{flex-basis:0;min-width:6px}.ddm-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--section-gap);align-items:start}.ddm-grid--single{grid-template-columns:minmax(0,1fr)}.ddm-devices{display:flex;flex-direction:column;overflow:hidden;min-height:360px}.ddm-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.ddm-section-head h3{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ddm-section-head h3 span{padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);line-height:18px}.ddm-tools{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.ddm-tools .ddm-search{flex:0 1 230px;min-width:170px}.ddm-chips{display:flex;flex-wrap:wrap;gap:6px}.ddm-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.ddm-chip strong{font-variant-numeric:tabular-nums}.ddm-chip--success{background:var(--status-success-light);color:var(--status-success);border-color:transparent}.ddm-chip--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:transparent}.ddm-chip--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:transparent}.ddm-chip--on{box-shadow:0 0 0 2px var(--brand-primary)}.ddm-table-wrap{overflow:auto;max-height:calc(100vh - var(--header-height) - 400px);min-height:260px}.ddm-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.ddm-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.ddm-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.ddm-num{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}.ddm-row{cursor:pointer;transition:background var(--transition-fast)}.ddm-row:nth-child(2n){background:#f9f9f9}.ddm-row:nth-child(odd){background:#fff}.ddm-row:hover,.ddm-row:focus-visible{background:var(--brand-primary-light);outline:none}.ddm-row:hover .ddm-col-go{color:var(--brand-primary)}.ddm-col-go{width:28px;color:var(--text-muted)}.ddm-col-go svg{font-size:var(--icon-size)}.ddm-stack{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0}.ddm-strong{font-weight:var(--fw-semibold)}.ddm-muted{font-size:var(--fs-xs);color:var(--text-muted)}.ddm-mono{font-variant-numeric:tabular-nums;letter-spacing:.2px}.ddm-nowrap{white-space:nowrap}.ddm-pill{display:inline-flex;align-items:center;gap:5px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.ddm-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.ddm-unsent{display:block;margin-top:2px;font-size:var(--fs-xs);color:var(--status-warning);white-space:nowrap}.ddm-warn-text{color:var(--status-warning)!important}.ddm-side{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0}.ddm-panel{display:flex;flex-direction:column;overflow:hidden}.ddm-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-2)}.ddm-panel-head h4{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-bold)}.ddm-panel-head h4 svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.ddm-panel-head small{font-size:var(--fs-xs);color:var(--text-muted)}.ddm-panel-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.ddm-panel-empty{margin:0;padding:0 var(--space-3) var(--space-3);font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.ddm-bars{margin:0;padding:0 var(--space-3) var(--space-3);list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}.ddm-bars-top{display:flex;justify-content:space-between;font-size:var(--fs-xs);color:var(--text-secondary);margin-bottom:3px}.ddm-bars-top strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.ddm-track{height:6px;border-radius:var(--radius-pill);background:var(--surface-page);overflow:hidden}.ddm-track span{display:block;height:100%;border-radius:var(--radius-pill);transition:width var(--transition-base)}.ddm-queue{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);padding:0 var(--space-3) var(--space-3)}.ddm-queue>div{display:flex;flex-direction:column;align-items:center;padding:var(--space-2);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.ddm-queue strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums}.ddm-queue span{font-size:var(--fs-xs);color:var(--text-muted);text-align:center}.ddm-queue--bad{background:var(--status-danger-light)!important;border-color:rgba(var(--status-danger-rgb),.25)!important}.ddm-queue--bad strong{color:var(--status-danger)}.ddm-mini-list{margin:0;padding:0 var(--space-2) var(--space-2);list-style:none;display:flex;flex-direction:column;gap:4px}.ddm-mini-list--scroll{max-height:260px;overflow-y:auto}.ddm-mini-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-md);background:var(--surface-page)}.ddm-group-counts{display:inline-flex;gap:var(--space-2);flex-shrink:0;font-size:var(--fs-xs);color:var(--text-secondary);font-variant-numeric:tabular-nums}.ddm-group-counts span{display:inline-flex;align-items:center;gap:2px}.ddm-group-counts svg{font-size:13px;color:var(--text-muted)}.ddm-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.ddm-state--compact{flex:1;padding:var(--space-6) var(--space-3)}.ddm-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.ddm-state-ico svg{font-size:26px}.ddm-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.ddm-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ddm-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ddm-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) var(--space-4)}.ddm-sk{height:44px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:ddmShimmer 1.4s infinite linear}.ddm-sk--kpi{height:86px;border-radius:var(--radius-xl)}.ddm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.ddm-dialog{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:ddmUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ddmUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.ddm-dialog-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand)}.ddm-dialog-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.ddm-dialog-ico svg{font-size:20px}.ddm-dialog-title{flex:1;min-width:0}.ddm-dialog-title h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ddm-dialog-title p{margin:0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);font-variant-numeric:tabular-nums}.ddm-dialog-x{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ddm-dialog-x svg{font-size:var(--icon-size)}.ddm-dialog-body{overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.ddm-health{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);border:1px solid transparent}.ddm-health>svg{font-size:26px;flex-shrink:0}.ddm-health div{display:flex;flex-direction:column}.ddm-health strong{font-size:var(--fs-md)}.ddm-health span{font-size:var(--fs-xs);color:var(--text-secondary)}.ddm-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.ddm-counters>div{display:flex;flex-direction:column;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color)}.ddm-counters small{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.ddm-counters strong{font-size:var(--fs-lg);font-variant-numeric:tabular-nums}.ddm-facts{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-4)}.ddm-facts>div{display:flex;justify-content:space-between;gap:var(--space-2);padding:6px 0;border-bottom:1px dashed var(--border-color);font-size:var(--fs-sm)}.ddm-facts dt{color:var(--text-muted);white-space:nowrap}.ddm-facts dd{margin:0;font-weight:var(--fw-medium);text-align:right;word-break:break-word}@media (max-width: 1200px){.ddm-grid{grid-template-columns:minmax(0,1fr)}.ddm-side{display:flex}.ddm-side>*{flex:1}.ddm-table-wrap{max-height:520px}}@media (max-width: 1024px){.ddm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.ddm-head{padding:var(--space-3);flex-wrap:wrap}.ddm-head-text p{display:none}.ddm-head-actions{width:100%;justify-content:flex-end}.ddm-head-btn span{display:none}.ddm-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.ddm-kpi{padding:var(--space-2) var(--space-3)}.ddm-kpi-ico,.ddm-kpi-main em{display:none}.ddm-side{grid-template-columns:minmax(0,1fr)}.ddm-section-head{padding:var(--space-3)}.ddm-tools .ddm-search{flex:1 1 100%}.ddm-table-wrap{max-height:none}.ddm-table thead{display:none}.ddm-table,.ddm-table tbody,.ddm-table tr,.ddm-table td{display:block;width:100%}.ddm-table tbody{padding:var(--space-2)}.ddm-row,.ddm-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.ddm-table td{display:flex;align-items:center;gap:var(--space-2);padding:3px 0;border:none;text-align:left!important}.ddm-table td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.ddm-col-go{display:none!important}.ddm-counters{grid-template-columns:repeat(2,minmax(0,1fr))}.ddm-facts{grid-template-columns:minmax(0,1fr)}.ddm-backdrop{padding:0;align-items:flex-end}.ddm-dialog{max-width:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0}}.dvl-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.dvl-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.dvl-head-back,.dvl-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.dvl-head-back{padding:0;cursor:pointer}.dvl-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.dvl-head-back svg,.dvl-head-icon svg{font-size:22px}.dvl-head-text{flex:1;min-width:0}.dvl-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.dvl-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.dvl-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.dvl-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.dvl-head-btn svg{font-size:var(--icon-size-sm)}.dvl-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.dvl-head-btn:disabled{opacity:.6;cursor:not-allowed}.dvl-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.dvl-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.dvl-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.dvl-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.dvl-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dvl-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.dvl-search button svg{font-size:12px}.dvl-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.dvl-btn svg{font-size:var(--icon-size-sm)}.dvl-btn:disabled{opacity:.55;cursor:not-allowed}.dvl-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.dvl-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.dvl-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.dvl-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.dvl-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dvl-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dvl-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.dvl-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.dvl-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.dvl-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.dvl-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dvl-icon-btn svg{font-size:var(--icon-size-sm)}.dvl-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dvl-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.dvl-icon-btn:disabled{opacity:.45;cursor:not-allowed}.dvl-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.dvl-rotating{animation:dvlSpin .8s linear infinite}.dvl-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:dvlSpin .7s linear infinite}@keyframes dvlSpin{to{transform:rotate(360deg)}}@keyframes dvlShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dvl-head-btn--ghost{width:var(--control-height-sm);padding:0;justify-content:center;background:rgba(var(--text-on-brand-rgb),.12);border-color:rgba(var(--text-on-brand-rgb),.35);color:var(--text-on-brand)}.dvl-head-btn--ghost:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22);box-shadow:none}.dvl-panel{display:flex;flex-direction:column;min-height:360px;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.dvl-tabs{display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-4);border-bottom:1px solid var(--border-color);flex-wrap:wrap}.dvl-tab{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 var(--space-3);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.dvl-tab svg{font-size:var(--icon-size-sm)}.dvl-tab:hover{color:var(--text-primary)}.dvl-tab--on{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.dvl-tab-count{min-width:22px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);line-height:18px;text-align:center}.dvl-tab-count--alert{background:var(--status-warning-light);color:var(--status-warning)}.dvl-tabs .dvl-search{flex:0 1 260px;margin-left:auto;padding:var(--space-2) 0}.dvl-note{margin:0;display:flex;align-items:center;gap:6px;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.dvl-note-warn{font-size:var(--icon-size-sm)!important;color:var(--status-warning)}.dvl-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.dvl-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.dvl-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.dvl-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.dvl-tone--brand{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.dvl-table-wrap{flex:1;overflow:auto;max-height:calc(100vh - var(--header-height) - 300px);min-height:240px}.dvl-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.dvl-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.dvl-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.dvl-row{transition:background var(--transition-fast)}.dvl-row:nth-child(2n){background:#f9f9f9}.dvl-row:nth-child(odd){background:#fff}.dvl-row:hover{background:var(--brand-primary-light)}.dvl-num{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}.dvl-col-act{width:1%;white-space:nowrap;text-align:right!important}.dvl-actions{display:inline-flex;gap:4px}.dvl-confirm{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--status-danger)}.dvl-btn--xs{height:24px;padding:0 var(--space-2);font-size:var(--fs-xs)}.dvl-stack{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0}.dvl-strong{font-weight:var(--fw-semibold)}.dvl-muted{font-size:var(--fs-xs);color:var(--text-muted)}.dvl-mono{font-variant-numeric:tabular-nums;letter-spacing:.2px}.dvl-warn{font-style:normal;color:var(--status-warning);font-weight:var(--fw-semibold)}.dvl-badge{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.dvl-badge svg{font-size:13px}.dvl-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.dvl-foot{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.dvl-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.dvl-state--compact{padding:var(--space-6) var(--space-3)}.dvl-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.dvl-state-ico svg{font-size:26px}.dvl-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.dvl-state-ico--ok{background:var(--status-success-light);color:var(--status-success)}.dvl-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.dvl-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.dvl-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) var(--space-4)}.dvl-sk{height:46px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:dvlShimmer 1.4s infinite linear}@media (max-width: 600px){.dvl-head{padding:var(--space-3)}.dvl-head-text p{display:none}.dvl-tabs{padding:0 var(--space-2)}.dvl-tabs .dvl-search{flex:1 1 100%;margin-left:0}.dvl-note{padding:var(--space-2) var(--space-3)}.dvl-table-wrap{max-height:none}.dvl-table thead{display:none}.dvl-table,.dvl-table tbody,.dvl-table tr,.dvl-table td{display:block;width:100%}.dvl-table tbody{padding:var(--space-2)}.dvl-row,.dvl-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.dvl-table td{display:flex;align-items:center;gap:var(--space-2);padding:3px 0;border:none;text-align:left!important}.dvl-table td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.dvl-col-act{width:100%;padding-top:var(--space-2)!important;justify-content:flex-end}}.dvm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.dvm-btn svg{font-size:var(--icon-size-sm)}.dvm-btn:disabled{opacity:.55;cursor:not-allowed}.dvm-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.dvm-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.dvm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.dvm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.dvm-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dvm-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dvm-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.dvm-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.dvm-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.dvm-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.dvm-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dvm-icon-btn svg{font-size:var(--icon-size-sm)}.dvm-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dvm-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.dvm-icon-btn:disabled{opacity:.45;cursor:not-allowed}.dvm-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.dvm-rotating{animation:dvmSpin .8s linear infinite}.dvm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:dvmSpin .7s linear infinite}@keyframes dvmSpin{to{transform:rotate(360deg)}}@keyframes dvmShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dvm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.dvm-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;margin:0;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:dvmUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes dvmUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.dvm-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.dvm-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.dvm-header-icon svg{font-size:20px}.dvm-header-text{flex:1;min-width:0}.dvm-header-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.dvm-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88)}.dvm-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.dvm-close svg{font-size:var(--icon-size)}.dvm-body{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.dvm-info{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.dvm-info>div{min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-page);border:1px solid var(--border-color)}.dvm-info dt{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.dvm-info dd{margin:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dvm-mono{font-variant-numeric:tabular-nums;letter-spacing:.2px}.dvm-warn{margin:0;display:flex;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:var(--lh-base)}.dvm-warn svg{flex-shrink:0;font-size:var(--icon-size-sm)}.dvm-warn-text{color:var(--status-warning)!important;font-weight:var(--fw-semibold)}.dvm-row{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:var(--space-3)}.dvm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.dvm-field>label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.dvm-field>label b{color:var(--status-danger)}.dvm-field>small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.dvm-err{color:var(--status-danger)!important}.dvm-input{width:100%;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}.dvm-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dvm-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.dvm-mode{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.dvm-mode:hover:not(:disabled){background:var(--surface-hover)}.dvm-mode--on{background:var(--brand-primary-light);border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.dvm-mode-top{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm)}.dvm-mode-top svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.dvm-mode small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.dvm-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.dvm-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}@media (max-width: 600px){.dvm-backdrop{padding:0;align-items:flex-end}.dvm-sheet{max-width:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.dvm-header-text p{display:none}.dvm-body{padding:var(--space-3)}.dvm-info{grid-template-columns:repeat(2,minmax(0,1fr))}.dvm-row,.dvm-modes{grid-template-columns:minmax(0,1fr)}.dvm-footer .dvm-btn{flex:1}}.dgl-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.dgl-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.dgl-head-back,.dgl-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.dgl-head-back{padding:0;cursor:pointer}.dgl-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.dgl-head-back svg,.dgl-head-icon svg{font-size:22px}.dgl-head-text{flex:1;min-width:0}.dgl-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.dgl-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.dgl-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.dgl-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.dgl-head-btn svg{font-size:var(--icon-size-sm)}.dgl-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.dgl-head-btn:disabled{opacity:.6;cursor:not-allowed}.dgl-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.dgl-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.dgl-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.dgl-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.dgl-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dgl-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.dgl-search button svg{font-size:12px}.dgl-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.dgl-btn svg{font-size:var(--icon-size-sm)}.dgl-btn:disabled{opacity:.55;cursor:not-allowed}.dgl-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.dgl-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.dgl-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.dgl-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.dgl-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dgl-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dgl-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.dgl-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.dgl-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.dgl-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.dgl-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dgl-icon-btn svg{font-size:var(--icon-size-sm)}.dgl-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dgl-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.dgl-icon-btn:disabled{opacity:.45;cursor:not-allowed}.dgl-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.dgl-rotating{animation:dglSpin .8s linear infinite}.dgl-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:dglSpin .7s linear infinite}@keyframes dglSpin{to{transform:rotate(360deg)}}@keyframes dglShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dgl-head-btn--ghost{width:var(--control-height-sm);padding:0;justify-content:center;background:rgba(var(--text-on-brand-rgb),.12);border-color:rgba(var(--text-on-brand-rgb),.35);color:var(--text-on-brand)}.dgl-head-btn--ghost:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22);box-shadow:none}.dgl-head-btn--wide{width:auto;padding:0 var(--space-3)}.dgl-readonly{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.dgl-readonly svg{font-size:var(--icon-size-sm);color:var(--text-muted)}.dgl-grid{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:var(--section-gap);align-items:start}.dgl-pane{display:flex;flex-direction:column;min-height:420px;overflow:hidden}.dgl-pane--list{position:sticky;top:var(--space-3);max-height:calc(100vh - var(--header-height) - 140px)}.dgl-pane-head{display:flex;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border-color)}.dgl-pane-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}.dgl-list{list-style:none;margin:0;padding:var(--space-2);display:flex;flex-direction:column;gap:4px}.dgl-item{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid transparent;border-radius:var(--radius-lg);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.dgl-item:hover{background:var(--surface-hover)}.dgl-item--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.dgl-item-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.dgl-item--on .dgl-item-ico{background:var(--brand-gradient);color:var(--text-on-brand)}.dgl-item-ico svg{font-size:18px}.dgl-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.dgl-item-main strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dgl-item-main small{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dgl-item-meta{display:flex;flex-wrap:wrap;gap:2px var(--space-2);margin-top:2px;font-size:11px;color:var(--text-secondary)}.dgl-item-meta span{display:inline-flex;align-items:center;gap:3px}.dgl-item-meta svg{font-size:13px}.dgl-item-arrow{font-size:var(--icon-size-sm)!important;color:var(--text-muted);flex-shrink:0}.dgl-ok{color:var(--status-success);font-weight:var(--fw-semibold)}.dgl-warn{color:var(--status-warning);font-weight:var(--fw-semibold)}.dgl-bad{color:var(--status-danger);font-weight:var(--fw-semibold)}.dgl-detail-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.dgl-back{display:none}.dgl-detail-title{flex:1;min-width:0}.dgl-detail-title h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);overflow-wrap:anywhere}.dgl-detail-title p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.dgl-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.dgl-danger{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin:var(--space-3) var(--space-4) 0;padding:var(--space-2) var(--space-3);border:1px solid rgba(var(--status-danger-rgb),.3);border-radius:var(--radius-lg);background:var(--status-danger-light)}.dgl-danger p{flex:1 1 280px;margin:0;font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.dgl-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);padding:var(--space-3) var(--space-4) 0}.dgl-stats>div{position:relative;display:flex;align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page)}.dgl-stats>div>span:not(.dgl-stat-ico){display:flex;flex-direction:column;min-width:0}.dgl-stats strong{font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:1.1;font-variant-numeric:tabular-nums}.dgl-stats small{font-size:var(--fs-xs);color:var(--text-muted)}.dgl-stat-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.dgl-stat-ico svg{font-size:18px}.dgl-stat-ico--ok{background:var(--status-success-light);color:var(--status-success)}.dgl-stat-link{margin-left:auto;font-size:var(--fs-xs)}.dgl-section{padding:var(--space-3) var(--space-4) 0;display:flex;flex-direction:column;gap:var(--space-2)}.dgl-section--table{padding-bottom:var(--space-3);flex:1}.dgl-section h4{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary)}.dgl-section h4 svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.dgl-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.dgl-chips{display:flex;flex-wrap:wrap;gap:6px}.dgl-chip{padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--brand-primary-tint2);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:22px}.dgl-hint{margin:0;display:flex;align-items:flex-start;gap:6px;font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.dgl-hint svg{font-size:14px;flex-shrink:0;margin-top:1px}.dgl-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.dgl-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.dgl-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.dgl-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.dgl-tone--brand{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.dgl-table-wrap{overflow:auto;border:1px solid var(--border-color);border-radius:var(--radius-lg)}.dgl-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.dgl-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.dgl-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.dgl-table tbody tr:last-child td{border-bottom:none}.dgl-row{transition:background var(--transition-fast)}.dgl-row:nth-child(2n){background:#f9f9f9}.dgl-row:nth-child(odd){background:#fff}.dgl-row:hover{background:var(--brand-primary-light)}.dgl-col-act{width:1%;white-space:nowrap;text-align:right!important}.dgl-confirm{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--status-danger)}.dgl-btn--xs{height:24px;padding:0 var(--space-2);font-size:var(--fs-xs)}.dgl-stack{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0}.dgl-strong{font-weight:var(--fw-semibold)}.dgl-muted{font-size:var(--fs-xs);color:var(--text-muted)}.dgl-mono{font-variant-numeric:tabular-nums;letter-spacing:.2px;white-space:nowrap}.dgl-badge{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.dgl-badge svg{font-size:13px}.dgl-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.dgl-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--status-warning);font-weight:var(--fw-semibold)}.dgl-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.dgl-state--compact{padding:var(--space-6) var(--space-3)}.dgl-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.dgl-state-ico svg{font-size:26px}.dgl-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.dgl-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.dgl-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.dgl-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3)}.dgl-sk{height:56px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:dglShimmer 1.4s infinite linear}@media (max-width: 960px){.dgl-head-btn--wide span{display:none}.dgl-head-btn--wide{width:var(--control-height-sm);padding:0}.dgl-grid{grid-template-columns:minmax(0,1fr)}.dgl-pane--list{position:static;max-height:none}.dgl-grid--detail .dgl-pane--list{display:none}.dgl-grid:not(.dgl-grid--detail) .dgl-pane--detail{display:none}.dgl-back{display:inline-flex}.dgl-pane{min-height:0}}@media (max-width: 600px){.dgl-head{padding:var(--space-3);flex-wrap:wrap}.dgl-head-text{flex-basis:calc(100% - 52px)}.dgl-head-text p{display:none}.dgl-head-text h2 span{display:block}.dgl-head-btn:not(.dgl-head-btn--ghost) span{display:inline}.dgl-detail-head,.dgl-section,.dgl-stats{padding-left:var(--space-3);padding-right:var(--space-3)}.dgl-danger{margin:var(--space-3) var(--space-3) 0}.dgl-detail-head .dgl-btn span{display:none}.dgl-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.dgl-stats>div{flex-direction:column;align-items:flex-start;gap:4px;padding:var(--space-2)}.dgl-stat-ico{display:none}.dgl-stat-link{position:absolute;top:var(--space-2);right:var(--space-2)}.dgl-table-wrap{border:none;border-radius:0;overflow:visible}.dgl-table thead{display:none}.dgl-table,.dgl-table tbody,.dgl-table tr,.dgl-table td{display:block;width:100%}.dgl-row,.dgl-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.dgl-table td,.dgl-table tbody tr:last-child td{display:flex;align-items:center;gap:var(--space-2);padding:3px 0;border:none;text-align:left!important}.dgl-table td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.dgl-col-act{width:100%;padding-top:var(--space-2)!important;justify-content:flex-end}}.dgm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.dgm-btn svg{font-size:var(--icon-size-sm)}.dgm-btn:disabled{opacity:.55;cursor:not-allowed}.dgm-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.dgm-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.dgm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.dgm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.dgm-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dgm-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dgm-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.dgm-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.dgm-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.dgm-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.dgm-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dgm-icon-btn svg{font-size:var(--icon-size-sm)}.dgm-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dgm-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.dgm-icon-btn:disabled{opacity:.45;cursor:not-allowed}.dgm-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.dgm-rotating{animation:dgmSpin .8s linear infinite}.dgm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:dgmSpin .7s linear infinite}@keyframes dgmSpin{to{transform:rotate(360deg)}}@keyframes dgmShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dgm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.dgm-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;margin:0;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:dgmUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes dgmUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.dgm-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.dgm-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.dgm-header-icon svg{font-size:20px}.dgm-header-text{flex:1;min-width:0}.dgm-header-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.dgm-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88)}.dgm-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.dgm-close svg{font-size:var(--icon-size)}.dgm-body{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.dgm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.dgm-field label,.dgm-label-row label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.dgm-field label b{color:var(--status-danger)}.dgm-field>small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.dgm-label-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.dgm-count{font-size:var(--fs-xs);color:var(--brand-primary);font-weight:var(--fw-semibold)}.dgm-err{color:var(--status-danger)!important}.dgm-warn-text{color:var(--status-warning)!important;font-weight:var(--fw-semibold)}.dgm-input{width:100%;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);box-sizing:border-box}.dgm-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dgm-units{border:1px solid var(--border-strong);border-radius:var(--radius-lg);overflow:hidden}.dgm-units-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.dgm-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.dgm-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.dgm-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.dgm-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dgm-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.dgm-search button svg{font-size:12px}.dgm-units-list{max-height:240px;overflow-y:auto;padding:4px;display:flex;flex-direction:column;gap:2px}.dgm-unit{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-md);font-size:var(--fs-sm);cursor:pointer}.dgm-unit:hover{background:var(--surface-hover)}.dgm-unit--on{background:var(--brand-primary-light)}.dgm-unit input{width:16px;height:16px;margin:0;accent-color:var(--brand-primary);flex-shrink:0;cursor:pointer}.dgm-unit-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dgm-unit-code{font-size:var(--fs-xs);color:var(--text-muted)}.dgm-state{padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.dgm-state p{margin:0;font-size:var(--fs-sm);color:var(--text-secondary)}.dgm-sk{height:30px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:dgmShimmer 1.4s infinite linear}.dgm-alert{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.dgm-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}@media (max-width: 600px){.dgm-backdrop{padding:0;align-items:flex-end}.dgm-sheet{max-width:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.dgm-header-text p{display:none}.dgm-body{padding:var(--space-3)}.dgm-units-list{max-height:40vh}.dgm-footer .dgm-btn{flex:1}}.adg-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.adg-btn svg{font-size:var(--icon-size-sm)}.adg-btn:disabled{opacity:.55;cursor:not-allowed}.adg-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.adg-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.adg-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.adg-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.adg-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.adg-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.adg-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.adg-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.adg-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.adg-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.adg-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.adg-icon-btn svg{font-size:var(--icon-size-sm)}.adg-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.adg-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.adg-icon-btn:disabled{opacity:.45;cursor:not-allowed}.adg-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.adg-rotating{animation:adgSpin .8s linear infinite}.adg-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:adgSpin .7s linear infinite}@keyframes adgSpin{to{transform:rotate(360deg)}}@keyframes adgShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.adg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.adg-sheet{width:100%;max-width:var(--modal-width-md);height:min(640px,calc(100vh - 2 * var(--space-4)));display:flex;flex-direction:column;margin:0;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:adgUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes adgUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.adg-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.adg-header-icon{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.adg-header-icon svg{font-size:20px}.adg-header-text{flex:1;min-width:0}.adg-header-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.adg-header-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adg-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.adg-close svg{font-size:var(--icon-size)}.adg-toolbar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.adg-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.adg-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.adg-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.adg-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.adg-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.adg-search button svg{font-size:12px}.adg-body{flex:1;overflow-y:auto;padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:4px}.adg-dev{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.adg-dev:hover{background:var(--surface-hover)}.adg-dev--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.adg-dev input{width:16px;height:16px;margin:0;accent-color:var(--brand-primary);flex-shrink:0;cursor:pointer}.adg-dev-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.adg-dev-main strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adg-dev-main small{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.adg-dev-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.adg-dev-side small{font-size:11px;color:var(--text-muted)}.adg-badge{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.adg-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.adg-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.adg-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.adg-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.adg-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.adg-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-3);text-align:center}.adg-state p{margin:0;max-width:360px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.adg-state-ico{width:48px;height:48px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.adg-state-ico svg{font-size:24px}.adg-sk{height:52px;flex-shrink:0;border-radius:var(--radius-lg);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:adgShimmer 1.4s infinite linear}.adg-note{margin:0;display:flex;align-items:flex-start;gap:6px;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base);flex-shrink:0}.adg-note svg{font-size:14px;flex-shrink:0;margin-top:1px;color:var(--brand-primary)}.adg-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.adg-count{margin-right:auto;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}@media (max-width: 600px){.adg-backdrop{padding:0;align-items:flex-end}.adg-sheet{max-width:none;height:88vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.adg-toolbar,.adg-note{padding-left:var(--space-3);padding-right:var(--space-3)}.adg-body{padding:var(--space-2)}.adg-footer{flex-wrap:wrap;padding:var(--space-2) var(--space-3)}.adg-count{flex-basis:100%}.adg-footer .adg-btn{flex:1}}.ear-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ear-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.ear-head-back,.ear-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.ear-head-back{padding:0;cursor:pointer}.ear-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.ear-head-back svg,.ear-head-icon svg{font-size:22px}.ear-head-text{flex:1;min-width:0}.ear-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.ear-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.ear-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ear-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.ear-head-btn svg{font-size:var(--icon-size-sm)}.ear-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.ear-head-btn:disabled{opacity:.6;cursor:not-allowed}.ear-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.ear-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.ear-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ear-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ear-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ear-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ear-search button svg{font-size:12px}.ear-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.ear-btn svg{font-size:var(--icon-size-sm)}.ear-btn:disabled{opacity:.55;cursor:not-allowed}.ear-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.ear-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.ear-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ear-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.ear-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ear-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.ear-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.ear-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.ear-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.ear-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.ear-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ear-icon-btn svg{font-size:var(--icon-size-sm)}.ear-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.ear-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.ear-icon-btn:disabled{opacity:.45;cursor:not-allowed}.ear-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.ear-rotating{animation:earSpin .8s linear infinite}.ear-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:earSpin .7s linear infinite}@keyframes earSpin{to{transform:rotate(360deg)}}@keyframes earShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ear-head-btn--ghost{width:var(--control-height-sm);padding:0;justify-content:center;background:rgba(var(--text-on-brand-rgb),.12);border-color:rgba(var(--text-on-brand-rgb),.35);color:var(--text-on-brand)}.ear-head-btn--ghost:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22);box-shadow:none}.ear-btn--xs{height:24px;padding:0 var(--space-2);font-size:var(--fs-xs)}.ear-grid{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:var(--section-gap);align-items:start}.ear-pane{display:flex;flex-direction:column;min-height:480px;overflow:hidden}.ear-pane--list{position:sticky;top:var(--space-3);max-height:calc(100vh - var(--header-height) - 140px)}.ear-pane-head{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border-color)}.ear-pane-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}.ear-chips{display:flex;flex-wrap:wrap;gap:4px}.ear-chip{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:11px;font-weight:var(--fw-semibold);cursor:pointer}.ear-chip span{color:var(--text-muted)}.ear-chip:hover{background:var(--surface-hover)}.ear-chip--on{background:var(--brand-primary-light);border-color:var(--brand-primary);color:var(--brand-primary-dark)}.ear-chip--on span{color:var(--brand-primary)}.ear-elist{list-style:none;margin:0;padding:var(--space-2);display:flex;flex-direction:column;gap:2px}.ear-eitem{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid transparent;border-radius:var(--radius-lg);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.ear-eitem:hover{background:var(--surface-hover)}.ear-eitem--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.ear-eitem-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ear-eitem-main strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ear-eitem-main small{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ear-eitem-meta{display:flex;flex-wrap:wrap;gap:2px var(--space-2);font-size:11px;color:var(--text-secondary)}.ear-eitem-meta span{display:inline-flex;align-items:center;gap:3px}.ear-eitem-meta svg{font-size:13px}.ear-eitem-arrow{font-size:var(--icon-size-sm)!important;color:var(--text-muted);flex-shrink:0}.ear-warn{color:var(--status-warning);font-weight:var(--fw-semibold)}.ear-bad{color:var(--status-danger);font-weight:var(--fw-semibold)}.ear-muted-tag{color:var(--text-muted);font-style:italic}.ear-more{display:flex;justify-content:center;padding:0 var(--space-2) var(--space-3)}.ear-avatar{width:34px;height:34px;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);display:inline-flex;align-items:center;justify-content:center}.ear-avatar--lg{width:56px;height:56px;font-size:var(--fs-md)}.ear-avatar-img{width:100%;height:100%;object-fit:cover}.ear-profile{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.ear-back{display:none}.ear-profile-text{flex:1;min-width:0}.ear-profile-text h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);overflow-wrap:anywhere}.ear-profile-text h3 span{margin-left:4px;font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-muted)}.ear-profile-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-secondary)}.ear-profile-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.ear-alert{margin:var(--space-3) var(--space-4) 0;display:flex;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:var(--lh-base)}.ear-alert svg{flex-shrink:0;font-size:var(--icon-size-sm)}.ear-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);padding:var(--space-3) var(--space-4) 0}.ear-stats>div{display:flex;flex-direction:column;min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page)}.ear-stats strong{font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:1.15;font-variant-numeric:tabular-nums}.ear-stats small{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ear-stat--ok strong{color:var(--status-success)}.ear-stat--warn strong{color:var(--status-warning)}.ear-stat--bad{border-color:rgba(var(--status-danger-rgb),.3)!important;background:var(--status-danger-light)!important}.ear-stat--bad strong{color:var(--status-danger)}.ear-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4);padding:var(--space-3) var(--space-4) var(--space-4)}.ear-section{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.ear-section h4{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary)}.ear-section h4 svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.ear-section h4 span{min-width:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);text-align:center;line-height:18px}.ear-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-2)}.ear-search--sm{flex:0 1 180px}.ear-empty{margin:0;padding:var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-secondary);text-align:center;line-height:var(--lh-base)}.ear-groups,.ear-devices{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.ear-group{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.ear-group--on{border-color:var(--brand-primary-tint2);background:var(--brand-primary-light)}.ear-group-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.ear-group--on .ear-group-ico{background:var(--brand-gradient);color:var(--text-on-brand)}.ear-group-ico svg{font-size:16px}.ear-group-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px}.ear-group-main strong{max-width:100%;font-size:var(--fs-sm);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ear-group-main small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.ear-tag{margin-top:2px;padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-card);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary);font-size:10px;font-weight:var(--fw-semibold);line-height:16px}.ear-group-act{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.ear-lock{display:inline-flex;color:var(--text-muted)}.ear-lock svg{font-size:var(--icon-size-sm)}.ear-confirm{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--status-danger)}.ear-device{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.ear-device:nth-child(2n){background:#f9f9f9}.ear-device:nth-child(odd){background:#fff}.ear-device-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ear-device-main strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ear-device-main small{font-size:var(--fs-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ear-device-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.ear-device-side small{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted);white-space:nowrap}.ear-mono{font-variant-numeric:tabular-nums;letter-spacing:.2px}.ear-badge{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.ear-dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block;flex-shrink:0}.ear-dot--success{background:var(--status-success)}.ear-dot--warning{background:var(--status-warning)}.ear-dot--danger{background:var(--status-danger)}.ear-dot--muted{background:var(--text-muted)}.ear-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ear-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ear-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.ear-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.ear-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.ear-state--compact{padding:var(--space-6) var(--space-3)}.ear-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.ear-state-ico svg{font-size:26px}.ear-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.ear-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ear-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ear-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3)}.ear-sk{height:52px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:earShimmer 1.4s infinite linear}@media (max-width: 1200px){.ear-cols{grid-template-columns:minmax(0,1fr)}}@media (max-width: 960px){.ear-grid{grid-template-columns:minmax(0,1fr)}.ear-pane--list{position:static;max-height:none}.ear-grid--detail .ear-pane--list{display:none}.ear-grid:not(.ear-grid--detail) .ear-pane--detail{display:none}.ear-back{display:inline-flex}.ear-pane{min-height:0}}@media (max-width: 600px){.ear-head{padding:var(--space-3)}.ear-head-text p{display:none}.ear-head-btn:not(.ear-head-btn--ghost) span{display:none}.ear-profile{padding:var(--space-3);gap:var(--space-2)}.ear-avatar--lg{width:44px;height:44px}.ear-alert{margin:var(--space-3) var(--space-3) 0}.ear-stats{grid-template-columns:repeat(3,minmax(0,1fr));padding:var(--space-3) var(--space-3) 0}.ear-stats>div{padding:var(--space-2)}.ear-cols{padding:var(--space-3)}.ear-device{flex-wrap:wrap}.ear-device-side{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-2);width:100%}}.eag-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.eag-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.eag-head-back,.eag-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.eag-head-back{padding:0;cursor:pointer}.eag-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.eag-head-back svg,.eag-head-icon svg{font-size:22px}.eag-head-text{flex:1;min-width:0}.eag-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.eag-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.eag-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.eag-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.eag-head-btn svg{font-size:var(--icon-size-sm)}.eag-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.eag-head-btn:disabled{opacity:.6;cursor:not-allowed}.eag-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.eag-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.eag-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.eag-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.eag-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.eag-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.eag-search button svg{font-size:12px}.eag-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.eag-btn svg{font-size:var(--icon-size-sm)}.eag-btn:disabled{opacity:.55;cursor:not-allowed}.eag-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.eag-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.eag-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.eag-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.eag-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.eag-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.eag-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.eag-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.eag-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.eag-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.eag-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.eag-icon-btn svg{font-size:var(--icon-size-sm)}.eag-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.eag-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.eag-icon-btn:disabled{opacity:.45;cursor:not-allowed}.eag-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.eag-rotating{animation:eagSpin .8s linear infinite}.eag-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:eagSpin .7s linear infinite}@keyframes eagSpin{to{transform:rotate(360deg)}}@keyframes eagShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.eag-head-btn--ghost{width:var(--control-height-sm);padding:0;justify-content:center;background:rgba(var(--text-on-brand-rgb),.12);border-color:rgba(var(--text-on-brand-rgb),.35);color:var(--text-on-brand)}.eag-head-btn--ghost:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22);box-shadow:none}.eag-grid{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);gap:var(--section-gap);align-items:start}.eag-pane{display:flex;flex-direction:column;min-height:460px;overflow:hidden}.eag-pane--list{position:sticky;top:var(--space-3);max-height:calc(100vh - var(--header-height) - 140px)}.eag-pane-head{padding:var(--space-3);border-bottom:1px solid var(--border-color)}.eag-pane-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}.eag-glist{list-style:none;margin:0;padding:var(--space-2);display:flex;flex-direction:column;gap:4px}.eag-gitem{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid transparent;border-radius:var(--radius-lg);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.eag-gitem:hover{background:var(--surface-hover)}.eag-gitem--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.eag-gitem-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.eag-gitem--on .eag-gitem-ico{background:var(--brand-gradient);color:var(--text-on-brand)}.eag-gitem-ico svg{font-size:17px}.eag-gitem-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.eag-gitem-main strong{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eag-gitem-meta{display:flex;flex-wrap:wrap;gap:2px var(--space-3);font-size:11px;color:var(--text-secondary)}.eag-gitem-meta span{display:inline-flex;align-items:center;gap:3px}.eag-gitem-meta svg{font-size:13px}.eag-gitem-arrow{font-size:var(--icon-size-sm)!important;color:var(--text-muted);flex-shrink:0}.eag-warn{color:var(--status-warning);font-weight:var(--fw-semibold)}.eag-detail-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.eag-back{display:none}.eag-detail-title{flex:1;min-width:0}.eag-detail-title h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);overflow-wrap:anywhere}.eag-detail-title p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.eag-alert{margin:var(--space-3) var(--space-4) 0;display:flex;gap:6px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:var(--lh-base)}.eag-alert svg{flex-shrink:0;font-size:var(--icon-size-sm)}.eag-tabs{display:flex;align-items:center;gap:var(--space-1);padding:0 var(--space-4);border-bottom:1px solid var(--border-color)}.eag-tab{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 var(--space-3);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.eag-tab svg{font-size:var(--icon-size-sm)}.eag-tab:hover{color:var(--text-primary)}.eag-tab--on{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.eag-tab-count{min-width:22px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);line-height:18px;text-align:center}.eag-tabs-refresh{margin-left:auto}.eag-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3) var(--space-4) 0}.eag-toolbar .eag-search{flex:1 1 220px}.eag-select{flex:0 1 180px;min-width:0;height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.eag-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.eag-chips{display:flex;flex-wrap:wrap;gap:6px;padding:var(--space-2) var(--space-4) 0}.eag-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.eag-chip span{min-width:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--surface-page);color:var(--text-secondary);line-height:16px;text-align:center}.eag-chip:hover{background:var(--surface-hover)}.eag-chip--alert span{background:var(--status-danger-light);color:var(--status-danger)}.eag-chip--on{background:var(--brand-primary-light);border-color:var(--brand-primary);color:var(--brand-primary-dark)}.eag-chip--on span{background:var(--brand-primary);color:var(--text-on-brand)}.eag-bulk{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin:var(--space-3) var(--space-4) 0;padding:var(--space-2) var(--space-3);border:1px solid var(--brand-primary-tint2);border-radius:var(--radius-lg);background:var(--brand-primary-light)}.eag-bulk p{flex:1 1 260px;margin:0;font-size:var(--fs-sm);line-height:var(--lh-base)}.eag-bulk-actions{display:inline-flex;gap:var(--space-2);flex-wrap:wrap}.eag-table-area{flex:1;display:flex;flex-direction:column;min-height:240px;padding:var(--space-3) var(--space-4) 0}.eag-table-wrap{overflow:auto;max-height:calc(100vh - var(--header-height) - 360px);min-height:220px;border:1px solid var(--border-color);border-radius:var(--radius-lg)}.eag-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.eag-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.eag-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.eag-table tbody tr:last-child td{border-bottom:none}.eag-row{cursor:pointer;transition:background var(--transition-fast)}.eag-row:nth-child(2n){background:#f9f9f9}.eag-row:nth-child(odd){background:#fff}.eag-row:hover,.eag-row--on,.eag-row--on:nth-child(2n){background:var(--brand-primary-light)}.eag-col-check{width:36px}.eag-col-check input{width:16px;height:16px;margin:0;accent-color:var(--brand-primary);cursor:pointer;vertical-align:middle}.eag-emp{display:flex;align-items:center;gap:var(--space-2);min-width:0}.eag-avatar{width:32px;height:32px;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold);display:inline-flex;align-items:center;justify-content:center}.eag-avatar-img{width:100%;height:100%;object-fit:cover}.eag-stack{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0}.eag-strong{font-weight:var(--fw-semibold)}.eag-muted{font-size:var(--fs-xs);color:var(--text-muted)}.eag-mono{font-variant-numeric:tabular-nums;white-space:nowrap}.eag-badge{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.eag-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.eag-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.eag-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.eag-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.eag-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.eag-more{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-2) 0 0;font-size:var(--fs-xs);color:var(--text-secondary)}.eag-foot{margin:0;display:flex;align-items:flex-start;gap:6px;padding:var(--space-2) var(--space-4) var(--space-3);font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.eag-foot svg{font-size:14px;flex-shrink:0;margin-top:1px}.eag-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.eag-state--compact{padding:var(--space-6) var(--space-3)}.eag-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.eag-state-ico svg{font-size:26px}.eag-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.eag-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.eag-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.eag-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) 0}.eag-pane-body .eag-sk-wrap{padding:var(--space-3)}.eag-sk{height:48px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:eagShimmer 1.4s infinite linear}@media (max-width: 1100px){.eag-table th:nth-child(4),.eag-table td:nth-child(4){display:none}}@media (max-width: 960px){.eag-grid{grid-template-columns:minmax(0,1fr)}.eag-pane--list{position:static;max-height:none}.eag-grid--detail .eag-pane--list{display:none}.eag-grid:not(.eag-grid--detail) .eag-pane--detail{display:none}.eag-back{display:inline-flex}.eag-pane{min-height:0}.eag-table-wrap{max-height:60vh}}@media (max-width: 600px){.eag-head{padding:var(--space-3)}.eag-head-text p{display:none}.eag-head-btn:not(.eag-head-btn--ghost) span{display:none}.eag-detail-head,.eag-tabs,.eag-toolbar,.eag-chips,.eag-table-area,.eag-foot{padding-left:var(--space-3);padding-right:var(--space-3)}.eag-detail-head .eag-btn span{display:none}.eag-alert,.eag-bulk{margin-left:var(--space-3);margin-right:var(--space-3)}.eag-select{flex:1 1 calc(50% - var(--space-1))}.eag-chips{flex-wrap:nowrap;overflow-x:auto}.eag-chip{flex-shrink:0}.eag-table-wrap{max-height:none;border:none;border-radius:0;overflow:visible}.eag-table thead{display:none}.eag-table,.eag-table tbody,.eag-table tr,.eag-table td{display:block;width:100%}.eag-row,.eag-row:nth-child(2n){position:relative;margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-2) 40px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.eag-row--on,.eag-row--on:nth-child(2n){background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.eag-table td,.eag-table tbody tr:last-child td{display:flex;align-items:center;gap:var(--space-2);padding:3px 0;border:none}.eag-table td.eag-col-check{position:absolute;left:var(--space-3);top:var(--space-3);width:auto;padding:0}.eag-table td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.eag-table td:nth-child(4){display:none}}.egf-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.egf-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.egf-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.egf-head-icon svg{font-size:22px}.egf-head-text{flex:1;min-width:0}.egf-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.egf-head-text p{margin:2px 0 0;max-width:820px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.egf-head-actions{display:flex;gap:var(--space-2);flex-shrink:0}.egf-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.egf-head-btn svg{font-size:var(--icon-size-sm)}.egf-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.egf-head-btn:disabled{opacity:.5;cursor:not-allowed}.egf-head-btn--ghost{background:rgba(var(--text-on-brand-rgb),.12);border-color:rgba(var(--text-on-brand-rgb),.35);color:var(--text-on-brand)}.egf-head-btn--ghost:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22);box-shadow:none}.egf-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.egf-split{display:grid;grid-template-columns:minmax(320px,400px) minmax(0,1fr);gap:var(--section-gap);height:calc(100vh - var(--header-height) - 190px);min-height:520px}.egf-list-pane,.egf-detail-pane{display:flex;flex-direction:column;min-height:0;overflow:hidden}.egf-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-2)}.egf-filters .react-select__control{min-height:var(--control-height-sm)}.egf-filters .react-select__value-container{padding-top:0;padding-bottom:0}.egf-filters .react-select__indicator{padding:4px}.egf-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:0 var(--space-3) var(--space-2)}.egf-chips{display:flex;flex-wrap:wrap;gap:6px}.egf-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:box-shadow var(--transition-fast)}.egf-chip svg{font-size:13px}.egf-chip strong{font-variant-numeric:tabular-nums}.egf-chip--all{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-secondary)}.egf-chip--on{box-shadow:0 0 0 2px var(--brand-primary)}.egf-tone--brand{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.egf-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.egf-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.egf-icon-btn svg{font-size:var(--icon-size-sm)}.egf-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary)}.egf-icon-btn:disabled{opacity:.55;cursor:not-allowed}.egf-rotating{animation:egfSpin .8s linear infinite}.egf-list-tools{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.egf-check-all{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.egf-check-all svg{font-size:18px}.egf-check-all:disabled{opacity:.5;cursor:not-allowed}.egf-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.egf-search--sm{flex:0 1 220px}.egf-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.egf-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.egf-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.egf-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.egf-search button svg{font-size:12px}.egf-emps{flex:1;min-height:0;overflow-y:auto;margin:0;padding:4px;list-style:none}.egf-emp{display:flex;align-items:center;gap:2px;border-radius:var(--radius-md);border:1px solid transparent;transition:background var(--transition-fast)}.egf-emp:hover{background:var(--surface-hover)}.egf-emp--checked{background:var(--brand-primary-light)}.egf-emp--active{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2);box-shadow:inset 3px 0 0 var(--brand-primary)}.egf-emp-chk{width:34px;height:40px;flex-shrink:0;padding:0;border:none;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.egf-emp-chk svg{font-size:18px}.egf-emp--checked .egf-emp-chk{color:var(--brand-primary)}.egf-emp-body{flex:1;min-width:0;display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2) 6px 0;border:none;background:transparent;color:inherit;font-family:inherit;text-align:left;cursor:pointer}.egf-emp-main{flex:1;min-width:0;display:flex;flex-direction:column}.egf-emp-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egf-emp-meta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egf-badge{display:inline-flex;align-items:center;gap:3px;flex-shrink:0;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--fs-xs);font-style:normal;font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.egf-badge svg{font-size:12px}.egf-badge--brand{background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid var(--brand-primary-tint2)}.egf-badge--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border:1px solid var(--border-color)}.egf-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.egf-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.egf-back{display:none}.egf-detail{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.egf-profile{display:flex;align-items:center;gap:var(--space-3)}.egf-avatar{width:46px;height:46px;flex-shrink:0;border-radius:50%;background:var(--brand-gradient);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;font-weight:var(--fw-bold)}.egf-avatar svg{font-size:24px}.egf-profile-text{flex:1;min-width:0}.egf-profile-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.egf-profile-text h3 span{margin-left:4px;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted)}.egf-profile-text p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.egf-rule{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-secondary-light);border:1px solid var(--border-color)}.egf-rule svg{flex-shrink:0;font-size:var(--icon-size);color:var(--brand-secondary-dark)}.egf-rule p{margin:0;font-size:var(--fs-sm);line-height:var(--lh-base)}.egf-rule--fenced{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.egf-rule--fenced svg{color:var(--brand-primary)}.egf-section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-1)}.egf-section-head h4{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-bold)}.egf-section-head h4 span{padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);line-height:18px}.egf-fences{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-2)}.egf-fences--pick{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.egf-fence{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.egf-fence--off{background:var(--surface-page)}.egf-fence-ico{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-md);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.egf-fence-ico svg{font-size:16px}.egf-fence--off .egf-fence-ico{background:var(--brand-secondary-light);color:var(--text-muted)}.egf-fence-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.egf-fence-name{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.egf-fence-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.egf-fence-addr{font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.egf-map-link{display:inline-flex;align-items:center;gap:2px;color:var(--brand-primary);font-weight:var(--fw-semibold);text-decoration:none}.egf-map-link svg{font-size:12px}.egf-map-link:hover{text-decoration:underline}.egf-pick{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);color:inherit;font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.egf-pick:hover{background:var(--surface-hover)}.egf-pick--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.egf-pick-chk{flex-shrink:0;font-size:18px!important;color:var(--text-muted)}.egf-pick--on .egf-pick-chk{color:var(--brand-primary)}.egf-bulk-actions{display:flex;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;padding-top:var(--space-2);border-top:1px solid var(--border-color)}.egf-empty-line{margin:0;padding:var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-secondary);text-align:center;list-style:none}.egf-note{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--status-warning)}.egf-note svg{font-size:var(--icon-size-sm)}.egf-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.egf-btn svg{font-size:var(--icon-size-sm)}.egf-btn:disabled{opacity:.55;cursor:not-allowed}.egf-btn--sm{height:var(--control-height-sm);padding:0 var(--space-2);font-size:var(--fs-xs)}.egf-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.egf-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.egf-btn--plain{height:var(--control-height-sm);background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.egf-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.egf-btn--outline-brand{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.egf-btn--outline-brand:hover:not(:disabled){background:var(--brand-primary-light)}.egf-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.egf-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.egf-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:egfSpin .7s linear infinite}@keyframes egfSpin{to{transform:rotate(360deg)}}.egf-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.egf-state--compact{padding:var(--space-6) var(--space-3)}.egf-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.egf-state-ico svg{font-size:26px}.egf-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.egf-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.egf-state-desc{margin:0 0 var(--space-1);max-width:440px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.egf-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) var(--space-4)}.egf-sk{height:44px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:egfShimmer 1.4s infinite linear}@keyframes egfShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.egf-split{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.egf-list-pane{height:calc(100vh - var(--header-height) - 170px);min-height:480px}.egf-detail-pane,.egf-split--detail .egf-list-pane{display:none}.egf-split--detail .egf-detail-pane{display:flex;min-height:480px}.egf-back{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;margin:var(--space-2) var(--space-3) 0;padding:4px var(--space-2);border:none;border-radius:var(--radius-md);background:var(--surface-page);color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.egf-back svg{font-size:var(--icon-size-sm)}}@media (max-width: 600px){.egf-head{padding:var(--space-3);flex-wrap:wrap}.egf-head-text p{display:none}.egf-head-actions{width:100%}.egf-head-btn{flex:1;justify-content:center}.egf-filters{grid-template-columns:minmax(0,1fr)}.egf-detail{padding:var(--space-3)}.egf-profile--bulk,.egf-section-head{flex-wrap:wrap}.egf-search--sm{flex:1 1 100%}.egf-fences,.egf-fences--pick{grid-template-columns:minmax(0,1fr)}.egf-fence .egf-btn span{display:none}.egf-bulk-actions .egf-btn{flex:1}}.ine-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ine-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.ine-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.ine-head-icon svg{font-size:22px}.ine-head-text{flex:1;min-width:0}.ine-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.ine-head-text p{margin:2px 0 0;max-width:820px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ine-head-actions{display:flex;gap:var(--space-2);flex-shrink:0}.ine-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.ine-head-btn svg{font-size:var(--icon-size-sm)}.ine-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.ine-head-btn:disabled{opacity:.5;cursor:not-allowed}.ine-head-btn--ghost{background:rgba(var(--text-on-brand-rgb),.12);border-color:rgba(var(--text-on-brand-rgb),.35);color:var(--text-on-brand)}.ine-head-btn--ghost:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22);box-shadow:none}.ine-panel{display:flex;flex-direction:column;min-height:360px;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.ine-tabs{display:flex;align-items:flex-end;gap:var(--space-1);padding:0 var(--space-4);border-bottom:1px solid var(--border-color)}.ine-tab{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 var(--space-3);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.ine-tab svg{font-size:var(--icon-size-sm)}.ine-tab:hover{color:var(--text-primary)}.ine-tab--on{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.ine-tab-count{min-width:22px;padding:0 6px;border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);line-height:18px;text-align:center;font-variant-numeric:tabular-nums}.ine-tab-note{margin-left:auto;align-self:center;font-size:var(--fs-xs);color:var(--text-muted);text-align:right}.ine-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.ine-chips{display:flex;flex-wrap:wrap;gap:6px}.ine-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:box-shadow var(--transition-fast)}.ine-chip strong{font-variant-numeric:tabular-nums}.ine-chip--all{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-secondary)}.ine-chip--on{box-shadow:0 0 0 2px var(--brand-primary)}.ine-bar-right{display:flex;align-items:center;gap:var(--space-2);flex:1 1 auto;justify-content:flex-end;min-width:0}.ine-type-select{flex:0 1 190px;min-width:150px}.ine-type-select .react-select__control{min-height:var(--control-height-sm)}.ine-type-select .react-select__value-container{padding-top:0;padding-bottom:0}.ine-type-select .react-select__indicator{padding:4px}.ine-quick{position:relative;display:flex;align-items:center;flex:0 1 280px;min-width:180px}.ine-quick-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ine-quick input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ine-quick input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ine-quick button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ine-quick button svg{font-size:12px}.ine-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.ine-icon-btn svg{font-size:var(--icon-size-sm)}.ine-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.ine-icon-btn:disabled{opacity:.55;cursor:not-allowed}.ine-rotating{animation:ineSpin .8s linear infinite}.ine-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.ine-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ine-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ine-tone--info{background:var(--status-info-light);color:var(--status-info);border-color:var(--status-info-light)}.ine-tone--brand{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.ine-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.ine-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast)}.ine-btn svg{font-size:var(--icon-size-sm)}.ine-btn:disabled{opacity:.55;cursor:not-allowed}.ine-btn--sm{height:var(--control-height-sm);padding:0 var(--space-2);font-size:var(--fs-xs)}.ine-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.ine-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ine-btn--plain{height:var(--control-height-sm);background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.ine-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ine-btn--success{background:var(--status-success);color:var(--text-on-brand)}.ine-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.ine-btn--success:hover:not(:disabled),.ine-btn--danger:hover:not(:disabled){box-shadow:var(--shadow-md)}.ine-btn--outline-success{background:var(--surface-card);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.4)}.ine-btn--outline-success:hover:not(:disabled){background:var(--status-success-light)}.ine-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.ine-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.ine-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.ine-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ineSpin .7s linear infinite}@keyframes ineSpin{to{transform:rotate(360deg)}}.ine-table-wrap{flex:1;overflow:auto;max-height:calc(100vh - var(--header-height) - 300px);min-height:260px}.ine-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.ine-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.ine-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.ine-row{transition:background var(--transition-fast)}.ine-row:nth-child(2n){background:#f9f9f9}.ine-row:nth-child(odd){background:#fff}.ine-row:hover{background:var(--brand-primary-light)}.ine-emp{display:flex;align-items:center;gap:var(--space-2);min-width:0}.ine-av{width:32px;height:32px;flex-shrink:0;border-radius:50%;background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-bold)}.ine-stack{display:flex;flex-direction:column;min-width:0}.ine-name{font-weight:var(--fw-semibold)}.ine-muted{font-size:var(--fs-xs);color:var(--text-muted)}.ine-err{color:var(--status-danger)}.ine-badge,.ine-status{display:inline-flex;align-items:center;gap:3px;padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.ine-status svg{font-size:13px}.ine-period{display:inline-flex;align-items:center;gap:2px;white-space:nowrap;font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.ine-period svg{font-size:var(--icon-size-sm);color:var(--text-muted)}.ine-period em{font-style:normal;color:var(--status-danger);font-weight:var(--fw-semibold)}.ine-col-remarks{max-width:260px}.ine-remark{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.ine-col-act{width:1%;white-space:nowrap;text-align:right}.ine-actions{display:inline-flex;align-items:center;gap:6px}.ine-foot{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.ine-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.ine-state--compact{padding:var(--space-6) var(--space-3)}.ine-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.ine-state-ico svg{font-size:26px}.ine-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.ine-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ine-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ine-sk-list{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) var(--space-4)}.ine-sk{height:44px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:ineShimmer 1.4s infinite linear}@keyframes ineShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ine-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.ine-dialog{width:100%;max-width:var(--modal-width-sm);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-5) var(--space-4);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);text-align:center;animation:ineUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ineUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.ine-dialog-ico{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center}.ine-dialog-ico svg{font-size:26px}.ine-dialog-ico--success{background:var(--status-success-light);color:var(--status-success)}.ine-dialog-ico--warning{background:var(--status-warning-light);color:var(--status-warning)}.ine-dialog-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ine-dialog-desc{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ine-dialog-field{width:100%;display:flex;flex-direction:column;gap:4px;margin-top:var(--space-1);text-align:left}.ine-dialog-field label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.ine-dialog-field small{font-size:var(--fs-xs);color:var(--text-muted)}.ine-dialog-field small.ine-err{color:var(--status-danger)}.ine-input{height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ine-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ine-dialog-actions{width:100%;display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.ine-dialog-actions .ine-btn{height:var(--control-height)}@media (max-width: 1100px){.ine-tab-note{display:none}}@media (max-width: 860px){.ine-bar-right{flex:1 1 100%;justify-content:stretch}.ine-quick{flex:1 1 auto}}@media (max-width: 600px){.ine-head{padding:var(--space-3);flex-wrap:wrap}.ine-head-text p{display:none}.ine-head-actions{width:100%}.ine-head-btn{flex:1;justify-content:center}.ine-tabs{padding:0 var(--space-2)}.ine-bar{padding:var(--space-2) var(--space-3)}.ine-bar-right{flex-wrap:wrap}.ine-type-select{flex:1 1 100%}.ine-table-wrap{max-height:none}.ine-table thead{display:none}.ine-table,.ine-table tbody,.ine-table tr,.ine-table td{display:block;width:100%}.ine-table tbody{padding:var(--space-2)}.ine-row,.ine-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.ine-table td{display:flex;align-items:center;gap:var(--space-2);padding:3px 0;border:none;text-align:left;max-width:none}.ine-table td[data-label]:before{content:attr(data-label);flex:0 0 90px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.ine-col-act{width:100%;text-align:left;padding-top:var(--space-2)!important}.ine-actions{width:100%;justify-content:flex-end}.ine-dialog{padding:var(--space-4) var(--space-3) var(--space-3)}.ine-dialog-actions{flex-direction:column-reverse}.ine-dialog-actions .ine-btn{width:100%}}.iem-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.iem-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:iemUp .22s cubic-bezier(.34,1.3,.64,1) both}.iem-sheet--wide{max-width:var(--modal-width-lg);height:min(720px,calc(100vh - 2 * var(--space-4)))}@keyframes iemUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.iem-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.iem-header-icon{width:38px;height:38px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.3);display:flex;align-items:center;justify-content:center}.iem-header-icon svg{font-size:20px}.iem-header-text{flex:1;min-width:0}.iem-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iem-title span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.85)}.iem-sub{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.iem-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.iem-close svg{font-size:var(--icon-size)}.iem-close:disabled{opacity:.5;cursor:not-allowed}.iem-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4)}.iem-body--split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0;padding:0;overflow:hidden}.iem-pane{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;min-height:0}.iem-body--split .iem-pane{padding:var(--space-3) var(--space-4);overflow-y:auto}.iem-pane--picker{border-right:1px solid var(--border-color);background:var(--surface-page)}.iem-step{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.iem-step>span{width:22px;height:22px;border-radius:50%;background:var(--brand-gradient);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs)}.iem-count{margin-left:auto;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-style:normal;font-weight:var(--fw-semibold);line-height:20px}.iem-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.iem-filter-grid .react-select__control{min-height:var(--control-height-sm)}.iem-filter-grid .react-select__value-container{padding-top:0;padding-bottom:0}.iem-filter-grid .react-select__indicator{padding:4px}.iem-list-bar{display:flex;align-items:center;gap:var(--space-2)}.iem-check-all{display:inline-flex;align-items:center;gap:4px;height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer}.iem-check-all svg{font-size:18px;color:var(--brand-primary)}.iem-check-all:disabled{opacity:.5;cursor:not-allowed}.iem-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.iem-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.iem-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.iem-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.iem-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.iem-search button svg{font-size:12px}.iem-list{flex:1;min-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:4px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.iem-emp{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:6px var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.iem-emp:hover{background:var(--surface-hover)}.iem-emp--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.iem-emp--on:hover{background:var(--brand-primary-light)}.iem-emp-chk{font-size:18px!important;flex-shrink:0;color:var(--text-muted)}.iem-emp--on .iem-emp-chk{color:var(--brand-primary)}.iem-emp-main{flex:1;min-width:0;display:flex;flex-direction:column}.iem-emp-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iem-emp-meta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iem-tag{flex-shrink:0;padding:0 6px;border-radius:var(--radius-pill);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px}.iem-list-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-secondary)}.iem-toggle{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.iem-toggle input{accent-color:var(--brand-primary)}.iem-sk{height:40px;flex-shrink:0;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:iemShimmer 1.4s infinite linear}@keyframes iemShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.iem-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-5) var(--space-3);text-align:center}.iem-state p{margin:0;font-size:var(--fs-sm);color:var(--text-secondary)}.iem-state-ico{font-size:32px!important;color:var(--brand-primary)}.iem-state-ico--error{color:var(--status-danger)}.iem-field{display:flex;flex-direction:column;gap:4px;min-width:0;position:relative}.iem-field>label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.iem-field>label b{color:var(--status-danger);font-weight:var(--fw-bold)}.iem-field small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.iem-row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.iem-input{width:100%;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);min-width:0;box-sizing:border-box}.iem-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.iem-textarea{height:auto;min-height:72px;padding:var(--space-2);resize:vertical;line-height:var(--lh-base)}.iem-counter{align-self:flex-end;font-variant-numeric:tabular-nums}.iem-perm{display:flex;align-items:center;gap:6px;height:var(--control-height);padding:0 var(--space-2);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.iem-perm svg{font-size:var(--icon-size-sm);color:var(--status-info)}.iem-err{color:var(--status-danger)!important;font-size:var(--fs-xs)}.iem-summary{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2)}.iem-summary svg{flex-shrink:0;font-size:var(--icon-size-sm);color:var(--brand-primary);margin-top:2px}.iem-summary p{margin:0;font-size:var(--fs-xs);color:var(--text-primary);line-height:var(--lh-base)}.iem-alert{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.3);color:var(--status-danger)}.iem-alert>svg{flex-shrink:0;font-size:var(--icon-size-sm);margin-top:2px}.iem-alert p{margin:0;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:var(--lh-base)}.iem-alert ul{margin:4px 0 0;padding-left:var(--space-4);font-size:var(--fs-xs);color:var(--text-primary);line-height:var(--lh-base)}.iem-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.iem-footer--warn{background:var(--status-warning-light)}.iem-footer-msg{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary);min-width:0}.iem-footer--warn .iem-footer-msg{color:var(--status-warning);font-weight:var(--fw-semibold)}.iem-footer-msg svg{font-size:var(--icon-size-sm)}.iem-footer-actions{display:flex;gap:var(--space-2);flex-shrink:0}.iem-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.iem-btn svg{font-size:var(--icon-size-sm)}.iem-btn:disabled{opacity:.55;cursor:not-allowed}.iem-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.iem-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.iem-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.iem-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.iem-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.iem-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.iem-link:disabled{opacity:.5;cursor:not-allowed}.iem-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:iemSpin .7s linear infinite}@keyframes iemSpin{to{transform:rotate(360deg)}}@media (max-width: 860px){.iem-sheet--wide{height:calc(100vh - 2 * var(--space-4))}.iem-body--split{display:flex;flex-direction:column;overflow-y:auto}.iem-body--split .iem-pane{overflow:visible}.iem-pane--picker{border-right:none;border-bottom:1px solid var(--border-color)}.iem-list{flex:none;max-height:300px}}@media (max-width: 600px){.iem-backdrop{padding:0;align-items:flex-end}.iem-sheet,.iem-sheet--wide{max-width:none;max-height:100vh;height:auto;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.iem-sheet--wide{height:100vh;border-radius:0}.iem-header{padding:var(--space-3)}.iem-sub{display:none}.iem-body,.iem-body--split .iem-pane{padding:var(--space-3)}.iem-filter-grid,.iem-row2{grid-template-columns:minmax(0,1fr)}.iem-footer{flex-direction:column;align-items:stretch;padding:var(--space-2) var(--space-3)}.iem-footer-actions .iem-btn{flex:1}}.ma-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ma-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.ma-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.ma-head-icon svg{font-size:22px}.ma-head-text{flex:1;min-width:0}.ma-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.ma-head-text p{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.ma-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;flex-shrink:0}.ma-head-btn svg{font-size:var(--icon-size-sm)}.ma-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.ma-head-btn:disabled{opacity:.5;cursor:not-allowed}.ma-filters{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.ma-filter-grid{display:grid;grid-template-columns:150px 150px repeat(3,minmax(0,1fr));gap:var(--space-3)}.ma-field{display:flex;flex-direction:column;gap:4px;min-width:0}.ma-field--wide{grid-column:1 / -1}.ma-field>label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.ma-input{height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);min-width:0}.ma-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ma-filter-foot{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.ma-range{flex:1;font-size:var(--fs-xs);color:var(--text-muted)}.ma-range--bad{color:var(--status-danger);font-weight:var(--fw-medium)}.ma-btn-primary,.ma-btn-plain,.ma-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast),opacity var(--transition-fast)}.ma-btn-primary svg,.ma-btn-plain svg,.ma-btn-ghost svg{font-size:var(--icon-size-sm)}.ma-btn-primary{min-width:170px;border:none;background:var(--brand-gradient);color:var(--text-on-brand)}.ma-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.ma-btn-primary:disabled{opacity:.55;cursor:not-allowed}.ma-btn-plain{height:var(--control-height-sm);background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.ma-btn-plain:hover{background:var(--surface-hover);color:var(--text-primary)}.ma-btn-ghost{height:var(--control-height-sm);padding:0 var(--space-2);background:transparent;color:var(--text-secondary);border:none}.ma-btn-ghost:hover{color:var(--status-danger)}.ma-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.ma-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:maSpin .7s linear infinite}@keyframes maSpin{to{transform:rotate(360deg)}}.ma-results{display:flex;flex-direction:column;min-height:320px;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.ma-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.ma-chips{display:flex;flex-wrap:wrap;gap:6px}.ma-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:box-shadow var(--transition-fast)}.ma-chip strong{font-variant-numeric:tabular-nums}.ma-chip--all{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-secondary)}.ma-chip--on{box-shadow:0 0 0 2px var(--brand-primary)}.ma-quick{position:relative;display:flex;align-items:center;flex:0 1 280px;min-width:180px}.ma-quick-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.ma-quick input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.ma-quick input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ma-quick button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.ma-quick button svg{font-size:12px}.ma-st--present{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.ma-st--absent{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.ma-st--late{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.ma-st--off{background:var(--status-info-light);color:var(--status-info);border-color:var(--status-info-light)}.ma-st--leave{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.ma-st--other{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.ma-table-wrap{flex:1;overflow:auto;max-height:calc(100vh - var(--header-height) - 360px);min-height:240px}.ma-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.ma-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.ma-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.ma-row{cursor:pointer;transition:background var(--transition-fast)}.ma-row:nth-child(2n){background:#f9f9f9}.ma-row:nth-child(odd){background:#fff}.ma-row:hover,.ma-row:focus-visible{background:var(--brand-primary-light);outline:none}.ma-row:hover .ma-col-go{color:var(--brand-primary)}.ma-stack{display:flex;flex-direction:column;min-width:0}.ma-name{font-weight:var(--fw-semibold)}.ma-muted{font-size:var(--fs-xs);color:var(--text-muted)}.ma-nowrap{white-space:nowrap}.ma-time{font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold)}.ma-shift{padding:1px 6px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-bold)}.ma-status{display:inline-block;padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:18px;white-space:nowrap}.ma-col-punch{text-align:center}.ma-punch{display:inline-flex;align-items:center;gap:3px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.ma-punch svg{font-size:12px;color:var(--text-muted)}.ma-col-go{width:28px;color:var(--text-muted)}.ma-col-go svg{font-size:var(--icon-size)}.ma-foot{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.ma-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.ma-state--compact{padding:var(--space-6) var(--space-3)}.ma-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.ma-state-ico svg{font-size:26px}.ma-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.ma-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.ma-state-desc{margin:0 0 var(--space-1);max-width:440px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.ma-sk-list{display:flex;flex-direction:column;gap:6px;padding:var(--space-3) var(--space-4)}.ma-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:maShimmer 1.4s infinite linear}@keyframes maShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 1024px){.ma-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.ma-head{padding:var(--space-3);flex-wrap:wrap}.ma-head-text p,.ma-head-btn span{display:none}.ma-filters{padding:var(--space-3)}.ma-filter-grid{grid-template-columns:minmax(0,1fr)}.ma-btn-primary{width:100%}.ma-bar{padding:var(--space-2) var(--space-3)}.ma-quick{flex:1 1 100%}.ma-table-wrap{max-height:none}.ma-table thead{display:none}.ma-table,.ma-table tbody,.ma-table tr,.ma-table td{display:block;width:100%}.ma-table tbody{padding:var(--space-2)}.ma-row,.ma-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.ma-table td{display:flex;align-items:center;gap:var(--space-2);padding:2px 0;border:none;text-align:left}.ma-table td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.ma-col-go{display:none!important}}.mm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.mm-sheet{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:mmUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes mmUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.mm-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.mm-avatar{width:40px;height:40px;flex-shrink:0;border-radius:50%;background:rgba(var(--text-on-brand-rgb),.2);border:1px solid rgba(var(--text-on-brand-rgb),.35);display:flex;align-items:center;justify-content:center;font-weight:var(--fw-bold)}.mm-header-text{flex:1;min-width:0}.mm-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm-title span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.8)}.mm-sub{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88)}.mm-close{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.mm-close svg{font-size:var(--icon-size)}.mm-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.mm-stats{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:var(--space-2)}.mm-stat{display:flex;flex-direction:column;gap:2px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.mm-stat>span{font-size:var(--fs-xs);color:var(--text-muted)}.mm-stat>strong{font-size:var(--fs-lg);font-variant-numeric:tabular-nums}.mm-chip{align-self:flex-start;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--fs-xs)!important;line-height:22px}.mm-chip--present{background:var(--status-success-light);color:var(--status-success)}.mm-chip--partial{background:var(--status-warning-light);color:var(--status-warning)}.mm-chip--absent{background:var(--status-danger-light);color:var(--status-danger)}.mm-section{margin:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:var(--fs-sm);font-weight:var(--fw-bold)}.mm-section svg{font-size:var(--icon-size-sm);color:var(--brand-primary)}.mm-section small{display:inline-flex;align-items:center;gap:3px;margin-left:auto;font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.mm-section small svg{font-size:13px;color:var(--text-muted)}.mm-empty{margin:0;padding:var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);font-size:var(--fs-sm);color:var(--text-secondary);text-align:center}.mm-timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.mm-punch{display:grid;grid-template-columns:10px 28px 70px 108px 1fr auto 30px;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.mm-punch--changed{border-color:var(--status-warning);background:var(--status-warning-light)}.mm-dot{width:10px;height:10px;border-radius:50%}.mm-dot--in{background:var(--status-success)}.mm-dot--out{background:var(--status-danger)}.mm-seq{font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.mm-date{display:inline-flex;align-items:center;gap:3px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);white-space:nowrap}.mm-offset{font-style:normal;padding:0 4px;border-radius:var(--radius-sm);background:var(--status-info-light);color:var(--status-info)}.mm-time{height:30px;padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;min-width:0}.mm-time:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.mm-time--lg{height:var(--control-height);width:130px}.mm-mode{justify-self:start;display:inline-flex;align-items:center;gap:3px;height:26px;padding:0 var(--space-2);border:1px solid transparent;border-radius:var(--radius-pill);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-bold);cursor:pointer}.mm-mode svg{font-size:13px}.mm-mode-swap{opacity:.5}.mm-mode--in{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.3)}.mm-mode--out{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.mm-mode:hover .mm-mode-swap{opacity:1}.mm-tag{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--status-warning)}.mm-tag--new{color:var(--status-success)}.mm-tag--blank{visibility:hidden}.mm-del{width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.mm-del svg{font-size:var(--icon-size-sm)}.mm-del:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger)}.mm-add{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page)}.mm-days{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.mm-day{display:flex;flex-direction:column;align-items:center;padding:6px var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.mm-day small{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.mm-day--on{border-color:var(--brand-primary);background:var(--brand-primary-light);box-shadow:inset 0 0 0 1px var(--brand-primary)}.mm-add-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.mm-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden}.mm-seg-btn{display:inline-flex;align-items:center;gap:4px;height:calc(var(--control-height) - 2px);padding:0 var(--space-3);border:none;background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.mm-seg-btn svg{font-size:15px}.mm-seg-btn+.mm-seg-btn{border-left:1px solid var(--border-color)}.mm-seg-btn--in.mm-seg-btn--on{background:var(--status-success);color:var(--text-on-brand)}.mm-seg-btn--out.mm-seg-btn--on{background:var(--status-danger);color:var(--text-on-brand)}.mm-error{font-size:var(--fs-xs);color:var(--status-danger)}.mm-note{margin:0;display:flex;align-items:flex-start;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.mm-note svg{font-size:15px;color:var(--brand-primary);flex-shrink:0}.mm-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.mm-footer--warn{background:var(--status-warning-light)}.mm-footer-msg{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary)}.mm-footer--warn .mm-footer-msg{color:var(--status-warning);font-weight:var(--fw-semibold);font-size:var(--fs-sm)}.mm-footer-actions{display:flex;gap:var(--space-2);margin-left:auto}.mm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-3);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer}.mm-btn svg{font-size:var(--icon-size-sm)}.mm-btn:disabled{opacity:.55;cursor:not-allowed}.mm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.mm-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.mm-btn--primary{min-width:160px;border:none;background:var(--brand-gradient);color:var(--text-on-brand)}.mm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.mm-btn--danger{border:none;background:var(--status-danger);color:var(--text-on-brand)}.mm-btn--add{border:1px solid var(--brand-primary);background:var(--surface-card);color:var(--brand-primary)}.mm-btn--add:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.mm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:mmSpin .7s linear infinite}@keyframes mmSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.mm-backdrop{align-items:flex-end;padding:0}.mm-sheet{max-width:none;max-height:94vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.mm-header,.mm-body,.mm-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.mm-stats{grid-template-columns:repeat(2,1fr)}.mm-punch{grid-template-columns:10px 64px 1fr auto 30px}.mm-seq,.mm-tag{display:none}.mm-section small{margin-left:0}.mm-time--lg{flex:1}.mm-footer-actions{width:100%}.mm-footer-actions .mm-btn{flex:1;min-width:0}}.td-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.td-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.td-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center}.td-head-icon svg{font-size:22px}.td-head-text{flex:1;min-width:0}.td-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.td-head-text p{margin:2px 0 0;max-width:860px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.td-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid rgba(var(--text-on-brand-rgb),.35);border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.td-head-btn svg{font-size:var(--icon-size-sm)}.td-head-btn:hover{background:rgba(var(--text-on-brand-rgb),.22)}.td-rotating{animation:tdSpin .8s linear infinite}.td-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.td-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--section-gap)}.td-pane{display:flex;flex-direction:column;height:520px;overflow:hidden}.td-pane-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-3) var(--space-2)}.td-pane-head h3{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-md);font-weight:var(--fw-bold)}.td-step{width:22px;height:22px;border-radius:50%;background:var(--brand-gradient);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs)}.td-count{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:22px}.td-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);padding:0 var(--space-3) var(--space-2)}.td-filters .react-select__control{min-height:var(--control-height-sm)}.td-filters .react-select__value-container{padding-top:0;padding-bottom:0}.td-filters .react-select__indicator{padding:4px}.td-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 var(--space-3) var(--space-2)}.td-req-tools .td-chips{padding:0}.td-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:box-shadow var(--transition-fast)}.td-chip svg{font-size:13px}.td-chip strong{font-variant-numeric:tabular-nums}.td-chip--all{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-secondary)}.td-chip--on{box-shadow:0 0 0 2px var(--brand-primary)}.td-tone--success{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.td-tone--warning{background:var(--status-warning-light);color:var(--status-warning);border-color:rgba(var(--status-warning-rgb),.3)}.td-tone--danger{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.td-tone--info{background:var(--status-info-light);color:var(--status-info);border-color:var(--status-info-light)}.td-tone--brand{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary-tint2)}.td-tone--muted{background:var(--brand-secondary-light);color:var(--brand-secondary-dark);border-color:var(--border-color)}.td-tools{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.td-check-all{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.td-check-all svg{font-size:18px}.td-check-all:disabled{opacity:.5;cursor:not-allowed}.td-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.td-search--sm{flex:0 1 240px;min-width:160px}.td-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.td-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.td-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.td-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.td-search button svg{font-size:12px}.td-list{flex:1;min-height:0;overflow-y:auto;margin:0;padding:4px;list-style:none}.td-item{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:inherit;font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.td-item:hover:not(:disabled){background:var(--surface-hover)}.td-item--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.td-item--on:hover:not(:disabled){background:var(--brand-primary-light)}.td-item:disabled{opacity:.55;cursor:not-allowed}.td-item-chk{flex-shrink:0;font-size:18px!important;color:var(--text-muted)}.td-item--on .td-item-chk{color:var(--brand-primary)}.td-item-main{flex:1;min-width:0;display:flex;flex-direction:column}.td-item-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.td-item-meta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.td-item-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.td-item-side small{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.td-dot{width:9px;height:9px;flex-shrink:0;border-radius:50%;background:var(--text-muted);box-shadow:0 0 0 3px var(--brand-secondary-light)}.td-dot--on{background:var(--status-success);box-shadow:0 0 0 3px var(--status-success-light)}.td-badge{display:inline-flex;align-items:center;gap:3px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.td-badge svg{font-size:12px}.td-pane-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.td-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.td-warn{display:inline-flex;align-items:center;gap:4px;color:var(--status-warning)!important}.td-warn svg{font-size:var(--icon-size-sm)}.td-muted{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--text-muted)}.td-muted svg{font-size:var(--icon-size-sm)}.td-action{position:sticky;bottom:var(--space-2);z-index:2;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-md)}.td-action-text{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:var(--fs-sm)}.td-action-text>span{font-size:var(--fs-xs);color:var(--text-secondary)}.td-action-notes{display:flex;flex-direction:column;gap:2px}.td-action-btns{display:flex;gap:var(--space-2);flex-shrink:0}.td-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.td-btn svg{font-size:var(--icon-size-sm)}.td-btn:disabled{opacity:.55;cursor:not-allowed}.td-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.td-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.td-btn--plain{height:var(--control-height-sm);background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.td-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.td-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.td-btn--danger:hover:not(:disabled){box-shadow:var(--shadow-md)}.td-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.td-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.td-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:tdSpin .7s linear infinite}@keyframes tdSpin{to{transform:rotate(360deg)}}.td-requests{display:flex;flex-direction:column;overflow:hidden}.td-req-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.td-req-head h3{margin:0;display:flex;align-items:center;gap:6px;font-size:var(--fs-md);font-weight:var(--fw-bold)}.td-req-head h3 svg{font-size:var(--icon-size);color:var(--brand-primary)}.td-req-head h3 small{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.td-req-tools{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.td-table-wrap{overflow:auto;max-height:420px}.td-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.td-table th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.td-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle}.td-row:nth-child(2n){background:#f9f9f9}.td-row:nth-child(odd){background:#fff}.td-row:hover{background:var(--brand-primary-light)}.td-stack{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:0}.td-strong{font-weight:var(--fw-semibold)}.td-col-remark{max-width:280px;font-size:var(--fs-xs);color:var(--text-secondary)}.td-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center;list-style:none}.td-state--compact{padding:var(--space-5) var(--space-3)}.td-state-ico{width:48px;height:48px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.td-state-ico svg{font-size:24px}.td-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.td-state-inline-ico{font-size:30px!important;color:var(--brand-primary)}.td-state-desc{margin:0;max-width:420px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.td-sk-list{display:flex;flex-direction:column;gap:6px;padding:var(--space-3)}.td-sk{height:42px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:tdShimmer 1.4s infinite linear}@keyframes tdShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.td-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.td-dialog{width:100%;max-width:var(--modal-width-sm);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-5) var(--space-4);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);text-align:center;animation:tdUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes tdUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.td-dialog-ico{width:52px;height:52px;border-radius:50%;background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.td-dialog-ico svg{font-size:26px}.td-dialog-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.td-dialog-desc{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.td-dialog-actions{width:100%;display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.td-dialog-actions .td-btn{height:var(--control-height)}@media (max-width: 1024px){.td-grid{grid-template-columns:minmax(0,1fr)}.td-pane{height:460px}}@media (max-width: 600px){.td-head{padding:var(--space-3)}.td-head-text p,.td-head-btn span{display:none}.td-filters{grid-template-columns:minmax(0,1fr)}.td-pane{height:520px}.td-action{flex-direction:column;align-items:stretch;padding:var(--space-3);bottom:0}.td-action-btns{flex-direction:column-reverse}.td-action-btns .td-btn{width:100%}.td-req-head{padding:var(--space-3)}.td-search--sm{flex:1 1 100%}.td-table-wrap{max-height:none}.td-table thead{display:none}.td-table,.td-table tbody,.td-table tr,.td-table td{display:block;width:100%}.td-table tbody{padding:var(--space-2)}.td-row,.td-row:nth-child(2n){margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.td-table td{display:flex;align-items:center;gap:var(--space-2);padding:3px 0;border:none;max-width:none}.td-table td[data-label]:before{content:attr(data-label);flex:0 0 84px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);text-transform:uppercase}.td-dialog-actions{flex-direction:column-reverse}.td-dialog-actions .td-btn{width:100%}}.amm-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.amm-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.amm-head-back,.amm-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.amm-head-back{cursor:pointer;padding:0}.amm-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.amm-head-back svg,.amm-head-icon svg{font-size:22px}.amm-head-text{flex:1;min-width:0}.amm-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.amm-head-text p{margin:2px 0 0;max-width:860px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.amm-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid rgba(var(--text-on-brand-rgb),.35);border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;flex-shrink:0}.amm-head-btn svg{font-size:var(--icon-size-sm)}.amm-head-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22)}.amm-head-btn:disabled{opacity:.6;cursor:not-allowed}.amm-rotating{animation:ammSpin .8s linear infinite}.amm-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.amm-profile{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.amm-profile-text{flex:1;min-width:0}.amm-profile-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.amm-profile-text h3 span{margin-left:4px;font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-muted)}.amm-profile-text p{margin:2px 0 0;font-size:var(--fs-sm);color:var(--text-secondary)}.amm-stats{display:flex;gap:var(--space-2);flex-shrink:0}.amm-stat{min-width:96px;display:flex;flex-direction:column;align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);border:1px solid var(--border-color)}.amm-stat strong{font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:1.1;font-variant-numeric:tabular-nums;color:var(--brand-primary-dark)}.amm-stat span{display:inline-flex;align-items:center;gap:2px;font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.amm-stat span svg{font-size:13px}.amm-avatar{width:36px;height:36px;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-bold)}.amm-avatar--lg{width:52px;height:52px;font-size:var(--fs-md);background:var(--brand-gradient);color:var(--text-on-brand);border:none}.amm-avatar-img{width:100%;height:100%;object-fit:cover}.amm-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--section-gap);align-items:start}.amm-columns--single{grid-template-columns:minmax(0,1fr)}.amm-col{display:flex;flex-direction:column;overflow:hidden}.amm-col-head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.amm-col-ico{width:32px;height:32px;flex-shrink:0;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.amm-col-ico svg{font-size:var(--icon-size-sm)}.amm-col-ico--up{background:var(--status-info-light);color:var(--status-info)}.amm-col-ico--down{background:var(--brand-primary-light);color:var(--brand-primary)}.amm-col-title{flex:1;min-width:0}.amm-col-title h4{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amm-col-title p{margin:0;font-size:var(--fs-xs);color:var(--text-muted)}.amm-col-body{padding:var(--space-3) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);max-height:calc(100vh - var(--header-height) - 330px);min-height:160px;overflow-y:auto}.amm-search{position:relative;display:flex;align-items:center;margin:var(--space-3) var(--space-4) 0}.amm-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.amm-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.amm-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.amm-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.amm-search button svg{font-size:12px}.amm-group{display:flex;flex-direction:column;gap:6px}.amm-group-head{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-secondary)}.amm-group-head small{margin-left:auto;color:var(--text-muted);font-variant-numeric:tabular-nums}.amm-level-pill{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--brand-gradient);color:var(--text-on-brand);font-weight:var(--fw-bold);line-height:20px}.amm-people{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.amm-person{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);transition:background var(--transition-fast)}.amm-person:hover{background:var(--surface-hover)}.amm-person--inactive{background:var(--surface-page)}.amm-person-main{flex:1;min-width:0;display:flex;flex-direction:column}.amm-person-name{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amm-person-meta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amm-badge{padding:0 6px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-style:normal;font-weight:var(--fw-semibold);line-height:18px}.amm-badge--danger{background:var(--status-danger-light);color:var(--status-danger)}.amm-confirm{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--status-danger)}.amm-empty-warn{display:flex;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--status-warning-light);border:1px solid rgba(var(--status-warning-rgb),.3);color:var(--status-warning)}.amm-empty-warn svg{flex-shrink:0;font-size:var(--icon-size)}.amm-empty-warn p{margin:0;font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.amm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.amm-btn svg{font-size:var(--icon-size-sm)}.amm-btn:disabled{opacity:.55;cursor:not-allowed}.amm-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.amm-btn--xs{height:24px;padding:0 var(--space-2);font-size:var(--fs-xs)}.amm-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.amm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.amm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.amm-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.amm-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.amm-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.amm-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.amm-icon-btn{width:30px;height:30px;flex-shrink:0;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.amm-icon-btn svg{font-size:var(--icon-size-sm)}.amm-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.amm-icon-btn:disabled{opacity:.4;cursor:not-allowed}.amm-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.amm-spin{width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:ammSpin .7s linear infinite}@keyframes ammSpin{to{transform:rotate(360deg)}}.amm-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.amm-state--compact{padding:var(--space-5) var(--space-3)}.amm-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.amm-state-ico svg{font-size:26px}.amm-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.amm-state-ico--warn{background:var(--status-warning-light);color:var(--status-warning)}.amm-state-inline-ico{font-size:30px!important;color:var(--brand-primary)}.amm-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.amm-state-desc{margin:0;max-width:440px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.amm-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-3)}.amm-sk{height:46px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:ammShimmer 1.4s infinite linear}@keyframes ammShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.amm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);color:var(--text-primary)}.amm-dialog{width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:ammUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes ammUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.amm-dialog-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand)}.amm-dialog-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);display:flex;align-items:center;justify-content:center}.amm-dialog-ico svg{font-size:20px}.amm-dialog-head-text{flex:1;min-width:0}.amm-dialog-head-text h3{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold)}.amm-dialog-head-text p{margin:0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88)}.amm-dialog-x{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.amm-dialog-x svg{font-size:var(--icon-size)}.amm-dialog-body{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.amm-dialog-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.amm-field{display:flex;flex-direction:column;gap:4px}.amm-field>label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.amm-field>label b{color:var(--status-danger)}.amm-field>small{font-size:var(--fs-xs);color:var(--text-muted)}.amm-opt{display:flex;flex-direction:column}.amm-opt small{font-size:var(--fs-xs);color:var(--text-muted)}.amm-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.amm-level{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.amm-level strong{font-size:var(--fs-sm)}.amm-level small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.amm-level:hover:not(:disabled){background:var(--surface-hover)}.amm-level--on{background:var(--brand-primary-light);border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.amm-level--on strong{color:var(--brand-primary-dark)}@media (max-width: 900px){.amm-columns{grid-template-columns:minmax(0,1fr)}.amm-col-body{max-height:none}}@media (max-width: 600px){.amm-head{padding:var(--space-3)}.amm-head-text p,.amm-head-btn span{display:none}.amm-profile{flex-wrap:wrap;padding:var(--space-3)}.amm-stats{width:100%}.amm-stat{flex:1}.amm-col-head{flex-wrap:wrap;padding:var(--space-3)}.amm-col-head .amm-btn{width:100%}.amm-col-body{padding:var(--space-3)}.amm-search{margin:var(--space-3) var(--space-3) 0}.amm-levels{grid-template-columns:minmax(0,1fr)}.amm-backdrop{padding:0;align-items:flex-end}.amm-dialog{max-width:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.amm-dialog-foot .amm-btn{flex:1}}.ess-page{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--page-padding);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.ess-page--narrow{max-width:760px;width:100%;margin:0 auto}.ess-head{display:flex;align-items:flex-start;gap:var(--space-3)}.ess-head-ico{width:42px;height:42px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark)}.ess-head-ico svg{font-size:22px}.ess-head-text{flex:1;min-width:0}.ess-crumb{display:block;font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:1px}.ess-head-text h1{margin:0;font-size:var(--page-title-size);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.ess-head-text p{margin:3px 0 0;font-size:var(--page-desc-size);color:var(--text-secondary);line-height:var(--lh-base);max-width:820px}.ess-head-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.ess-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);align-items:start}.ess-grid--side{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.ess-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0;overflow:hidden}.ess-card-head{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:9px var(--space-4);background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent)}.ess-card-title{display:flex;flex-direction:column;flex:1;min-width:0}.ess-card-title b{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--panel-header-text)}.ess-card-title span{font-size:var(--fs-xs);color:rgba(var(--panel-header-text-rgb),.72)}.ess-card-tools{display:flex;gap:var(--space-2)}.ess-card-body{padding:var(--space-4)}.ess-card-foot{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;padding:10px var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.ess-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-bottom:var(--space-3)}.ess-field{display:flex;flex-direction:column;min-width:0;margin-bottom:var(--space-3)}.ess-row .ess-field{margin-bottom:0}.ess-label{margin-bottom:5px;font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.4px;text-transform:uppercase;color:var(--text-secondary)}.ess-req{color:var(--status-danger)}.ess-hint{margin-top:4px;font-size:11.5px;color:var(--text-muted)}.ess-field-error{margin-top:4px;font-size:11.5px;color:var(--status-danger)}.ess-input,.ess-select,.ess-textarea{width:100%;min-height:var(--control-height);padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:16px}@media (min-width: 769px){.ess-input,.ess-select,.ess-textarea{font-size:var(--fs-sm)}}.ess-textarea{min-height:84px;padding:8px 10px;resize:vertical;line-height:var(--lh-base)}.ess-input:focus,.ess-select:focus,.ess-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.ess-input:disabled,.ess-select:disabled{background:var(--surface-hover);color:var(--text-muted)}.ess-field--error .ess-input,.ess-field--error .ess-select,.ess-field--error .ess-textarea{border-color:var(--status-danger)}.ess-file{display:flex;align-items:center;gap:8px;min-height:var(--control-height);padding:0 10px;border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--fs-sm);cursor:pointer}.ess-file:hover{border-color:var(--brand-primary);color:var(--brand-primary-dark)}.ess-file input{display:none}.ess-file svg{font-size:18px}.ess-counter{align-self:flex-end;margin-top:3px;font-size:11px;color:var(--text-muted)}.ess-seg{display:flex;min-height:var(--control-height);border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden}.ess-seg button{flex:1;border:none;border-right:1px solid var(--border-color);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;padding:0 8px}.ess-seg button:last-child{border-right:none}.ess-seg button:hover:not(:disabled):not(.ess-seg--on){background:var(--surface-hover)}.ess-seg button:disabled{opacity:.5;cursor:not-allowed}.ess-seg .ess-seg--on{background:var(--brand-primary-dark);color:var(--text-on-brand)}.ess-note{display:flex;align-items:flex-start;gap:8px;padding:9px 11px;margin-bottom:var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-xs);line-height:var(--lh-base)}.ess-note svg{font-size:17px;flex-shrink:0;margin-top:1px}.ess-note--info{background:var(--status-info-light);color:var(--status-info)}.ess-note--warn{background:var(--status-warning-light);color:var(--status-warning)}.ess-note--bad{background:var(--status-danger-light);color:var(--status-danger)}.ess-note--ok{background:var(--status-success-light);color:var(--status-success)}.ess-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.ess-btn svg{font-size:var(--icon-size-sm)}.ess-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.ess-btn:disabled{opacity:.5;cursor:not-allowed}.ess-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.ess-btn--primary:hover:not(:disabled){background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-on-brand)}.ess-btn--block{width:100%;min-height:50px;font-size:var(--fs-md);border-radius:var(--radius-lg)}.ess-spin{width:14px;height:14px;border-radius:50%;border:2px solid rgba(var(--text-on-brand-rgb),.35);border-top-color:var(--text-on-brand);animation:ess-rot .7s linear infinite}@keyframes ess-rot{to{transform:rotate(360deg)}}.ess-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:var(--space-2);margin-bottom:var(--space-4)}.ess-tile{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page);text-align:left;font-family:inherit;color:var(--text-primary);cursor:pointer}.ess-tile b{font-size:var(--fs-lg);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.ess-tile span{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ess-tile:hover{border-color:var(--brand-primary)}.ess-tile--on{border-color:var(--brand-primary);background:var(--brand-primary-light)}.ess-tile--zero b{color:var(--text-muted)}.ess-approver{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--fs-xs);color:var(--text-secondary)}.ess-av{width:26px;height:26px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:10px;font-weight:var(--fw-bold)}.ess-pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap}.ess-pill--ok{background:var(--status-success-light);color:var(--status-success)}.ess-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.ess-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.ess-pill--info{background:var(--status-info-light);color:var(--status-info)}.ess-pill--muted{background:var(--surface-hover);color:var(--text-secondary)}.ess-list{list-style:none;margin:0;padding:0}.ess-list-item{display:flex;align-items:flex-start;gap:10px;padding:10px var(--space-4);border-bottom:1px solid var(--border-color)}.ess-list-item:last-child{border-bottom:none}.ess-list-ico{width:34px;height:34px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-size:11px;font-weight:var(--fw-bold)}.ess-list-ico--ok{background:var(--status-success-light);color:var(--status-success)}.ess-list-ico--bad{background:var(--status-danger-light);color:var(--status-danger)}.ess-list-ico--warn{background:var(--status-warning-light);color:var(--status-warning)}.ess-list-ico--muted{background:var(--surface-hover);color:var(--text-secondary)}.ess-list-text{display:flex;flex-direction:column;min-width:0;flex:1}.ess-list-text b{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.ess-list-text small{font-size:11.5px;color:var(--text-muted);line-height:var(--lh-base)}.ess-list-foot{padding:9px var(--space-4);border-top:1px solid var(--border-color);font-size:var(--fs-xs)}.ess-link{color:var(--brand-primary);font-weight:var(--fw-semibold);text-decoration:none;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:inherit}.ess-link:hover{text-decoration:underline}.ess-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:var(--space-6) var(--space-4)}.ess-state-ico{width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-hover);color:var(--text-secondary)}.ess-state-ico svg{font-size:24px}.ess-state-ico--bad{background:var(--status-danger-light);color:var(--status-danger)}.ess-state h4{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.ess-state p{margin:0 0 6px;max-width:420px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.ess-skel{display:flex;flex-direction:column;gap:10px;padding:var(--space-4)}.ess-skel span{height:14px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-hover) 0%,var(--border-color) 50%,var(--surface-hover) 100%);background-size:200% 100%;animation:ess-shimmer 1.2s linear infinite}.ess-skel span:nth-child(2n){width:84%}@keyframes ess-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 1024px){.ess-grid--side{grid-template-columns:minmax(0,1fr)}}@media (max-width: 600px){.ess-row{grid-template-columns:minmax(0,1fr)}.ess-head-ico{display:none}.ess-card-body{padding:var(--space-3)}.ess-card-foot .ess-btn{flex:1}}@media (prefers-reduced-motion: reduce){.ess-skel span,.ess-spin{animation:none}}.ess-chips{display:flex;flex-wrap:wrap;gap:6px}.ess-chip{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 10px;border:1px solid var(--border-color);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:11.5px;font-weight:var(--fw-medium);cursor:pointer}.ess-chip b{color:var(--status-danger);font-weight:var(--fw-semibold)}.ess-chip:hover{border-color:var(--brand-primary);color:var(--text-primary)}.ess-chip--on{border-color:var(--brand-primary);background:var(--brand-primary-light);color:var(--brand-primary-dark)}.ess-actions{display:flex;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.rc-hint{margin:0 0 var(--space-3);font-size:var(--fs-xs);color:var(--text-muted)}.rc-scopes{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-1)}.rc-scope{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-base),border-color var(--transition-base)}.rc-scope:hover{background:var(--surface-hover);color:var(--text-primary)}.rc-scope b{min-width:22px;padding:0 7px;border-radius:var(--radius-pill);background:var(--surface-hover);color:var(--text-secondary);font-size:11px;line-height:20px;text-align:center}.rc-scope--alert b{background:var(--status-warning-light);color:var(--status-warning)}.rc-scope--on{border-color:var(--brand-primary-dark);background:var(--brand-primary-light);color:var(--brand-primary-dark)}.rc-scope--on b{background:var(--brand-primary-dark);color:var(--text-on-brand)}.rc-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.rc-tile{--tile-tone: var(--brand-primary-dark);display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-top:3px solid var(--tile-tone);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-muted);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-base),box-shadow var(--transition-base)}.rc-tile:hover:not(:disabled){background:var(--surface-hover)}.rc-tile:disabled{cursor:default}.rc-tile b{font-size:var(--fs-xl, 20px);line-height:1.2;color:var(--tile-tone)}.rc-tile span{font-size:var(--fs-xs)}.rc-tile--warn{--tile-tone: var(--status-warning)}.rc-tile--info{--tile-tone: var(--status-info)}.rc-tile--ok{--tile-tone: var(--status-success)}.rc-tile--bad{--tile-tone: var(--status-danger)}.rc-tile--brand{--tile-tone: var(--brand-primary-dark)}.rc-tile--on{box-shadow:0 0 0 2px var(--tile-tone) inset;background:var(--surface-hover)}.rc-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.rc-filters .ess-select{width:auto;flex:0 1 auto;max-width:220px}.rc-search{position:relative;flex:1 1 260px;min-width:0;display:flex;align-items:center}.rc-search .ess-input{padding-left:34px;padding-right:30px}.rc-search-ico{position:absolute;left:10px;font-size:18px!important;color:var(--text-muted);pointer-events:none}.rc-search-clear{position:absolute;right:6px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.rc-search-clear:hover{background:var(--surface-hover);color:var(--text-primary)}.rc-search-clear svg{font-size:15px}.rc-dates{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:calc(-1 * var(--space-2)) 0 var(--space-3)}.rc-dates label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-muted)}.rc-dates .ess-input{width:auto}.rc-md{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);align-items:start}.rc-md--split{grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr)}.rc-list{min-width:0;border:1px solid var(--border-color);border-radius:var(--radius-xl);background:var(--surface-card);overflow:hidden}.rc-list-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);background:var(--surface-hover)}.rc-list-head b{font-size:var(--fs-sm)}.rc-list-head span{font-size:var(--fs-xs);color:var(--text-muted)}.rc-detail{position:sticky;top:var(--space-3);height:calc(100vh - 160px);min-height:480px}.rc-msg{padding:var(--space-5);text-align:center;color:var(--text-secondary);font-size:var(--fs-sm)}.rc-busy{opacity:.6;transition:opacity var(--transition-base)}.rc-bulk{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);background:var(--status-warning-light)}.rc-bulk b{font-size:var(--fs-sm)}.rc-bulk-remarks{flex:1 1 220px;width:auto}.rc-grow{flex:1}.rc-btn-ok{background:var(--status-success);border-color:var(--status-success);color:var(--text-on-brand)}.rc-btn-ok:hover:not(:disabled){background:var(--status-success);color:var(--text-on-brand);opacity:.9}.rc-btn-bad{border-color:var(--status-danger);color:var(--status-danger)}.rc-btn-bad:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger)}.rc-table-wrap{overflow-x:auto}.rc-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.rc-table th{position:sticky;top:0;z-index:1;padding:var(--space-2) var(--space-3);text-align:left;white-space:nowrap;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--surface-card);border-bottom:1px solid var(--border-color)}.rc-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);vertical-align:top}.rc-table tbody tr{cursor:pointer}.rc-table tbody tr:nth-child(odd) td{background:#fff}.rc-table tbody tr:nth-child(2n) td{background:#f9f9f9}.rc-table tbody tr:hover td{background:var(--surface-hover)}.rc-table tbody tr:focus-visible{outline:2px solid var(--brand-primary);outline-offset:-2px}.rc-table tbody tr.rc-row--sel td{background:var(--brand-primary-light)}.rc-table tbody tr.rc-row--sel td:first-child{box-shadow:inset 3px 0 0 var(--brand-primary-dark)}.rc-col-check{width:34px}.rc-col-check input{width:16px;height:16px;cursor:pointer;accent-color:var(--brand-primary-dark)}.rc-id{display:block;font-weight:var(--fw-semibold)}.rc-type{display:inline-block;margin-top:2px;padding:0 6px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--surface-page);font-size:11px;color:var(--text-secondary);line-height:18px;white-space:nowrap}.rc-main{display:block;color:var(--text-primary)}.rc-sub{display:block;margin-top:2px;font-size:11.5px;color:var(--text-muted)}.rc-cards{display:none;list-style:none;margin:0;padding:var(--space-2)}.rc-card{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);margin-bottom:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card)}.rc-card-top{display:flex;align-items:center;gap:var(--space-2);margin-bottom:2px}.rc-card-top b{flex:1;min-width:0;font-size:var(--fs-sm)}.rc-card-top input{width:18px;height:18px;accent-color:var(--brand-primary-dark)}.rc-card-btn{align-self:flex-start;margin-top:var(--space-2)}.rc-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--fs-xs);color:var(--text-muted)}.rc-pager-act{display:inline-flex;align-items:center;gap:var(--space-2)}.rc-select-sm{width:auto;height:30px;font-size:var(--fs-xs)}.rc-icon-btn{width:32px;height:30px;padding:0;justify-content:center}.rc-page-no{min-width:48px;text-align:center}@media (max-width: 1100px){.rc-detail{display:none}}@media (max-width: 760px){.rc-table-wrap{display:none}.rc-cards{display:block}.rc-filters .ess-select{flex:1 1 calc(50% - var(--space-2));max-width:none}.rc-search{flex-basis:100%}.rc-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.rc-scope{flex:1 1 auto;justify-content:center}}.cm-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.cm-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.cm-head-back,.cm-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.cm-head-back{padding:0;cursor:pointer}.cm-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.cm-head-back svg,.cm-head-icon svg{font-size:22px}.cm-head-text{flex:1;min-width:0}.cm-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.cm-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.cm-head-text p{margin:2px 0 0;max-width:860px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.cm-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid rgba(var(--text-on-brand-rgb),.35);border-radius:var(--radius-md);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;flex-shrink:0}.cm-head-btn svg{font-size:var(--icon-size-sm)}.cm-head-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.22)}.cm-head-btn:disabled{opacity:.6;cursor:not-allowed}.cm-rotating{animation:cmSpin .8s linear infinite}.cm-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.cm-alert{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-sm)}.cm-alert svg{font-size:var(--icon-size)}.cm-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--section-gap);align-items:start}.cm-picker{display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 200px);min-height:480px;overflow:hidden}.cm-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);padding:var(--space-3)}.cm-filters .react-select__control{min-height:var(--control-height-sm)}.cm-filters .react-select__value-container{padding-top:0;padding-bottom:0}.cm-filters .react-select__indicator{padding:4px}.cm-tools{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--surface-page)}.cm-check-all{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.cm-check-all svg{font-size:18px}.cm-check-all:disabled{opacity:.5;cursor:not-allowed}.cm-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.cm-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.cm-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.cm-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cm-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.cm-search button svg{font-size:12px}.cm-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 var(--space-2);flex-shrink:0;border-radius:var(--radius-pill);border:1px solid rgba(var(--status-warning-rgb),.3);background:var(--status-warning-light);color:var(--status-warning);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.cm-chip--on{box-shadow:0 0 0 2px var(--brand-primary)}.cm-list{flex:1;min-height:0;overflow-y:auto;margin:0;padding:4px;list-style:none}.cm-item{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:inherit;font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.cm-item:hover:not(:disabled){background:var(--surface-hover)}.cm-item--on{background:var(--brand-primary-light);border-color:var(--brand-primary-tint2)}.cm-item--on:hover:not(:disabled){background:var(--brand-primary-light)}.cm-item-chk{flex-shrink:0;font-size:18px!important;color:var(--text-muted)}.cm-item--on .cm-item-chk{color:var(--brand-primary)}.cm-av{width:32px;height:32px;flex-shrink:0;border-radius:50%;background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:var(--fw-bold)}.cm-item-main{flex:1;min-width:0;display:flex;flex-direction:column}.cm-item-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cm-item-meta{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cm-badge{flex-shrink:0;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:20px;white-space:nowrap}.cm-badge--warn{background:var(--status-warning-light);border-color:rgba(var(--status-warning-rgb),.3);color:var(--status-warning)}.cm-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary)}.cm-side{position:sticky;top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.cm-side h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.cm-side-desc{margin:-6px 0 0;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.cm-levels{display:flex;flex-direction:column;gap:var(--space-2)}.cm-level{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.cm-level strong{font-size:var(--fs-sm)}.cm-level small{font-size:var(--fs-xs);color:var(--text-muted)}.cm-level:hover:not(:disabled){background:var(--surface-hover)}.cm-level--on{background:var(--brand-primary-light);border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.cm-level--on strong{color:var(--brand-primary-dark)}.cm-summary{display:flex;align-items:center;gap:6px;padding-top:var(--space-2);border-top:1px solid var(--border-color);font-size:var(--fs-sm)}.cm-summary .cm-link{margin-left:auto;font-size:var(--fs-xs)}.cm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.cm-btn svg{font-size:var(--icon-size-sm)}.cm-btn:disabled{opacity:.55;cursor:not-allowed}.cm-btn--block{width:100%}.cm-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.cm-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cm-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.cm-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cm-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.cm-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cmSpin .7s linear infinite}@keyframes cmSpin{to{transform:rotate(360deg)}}.cm-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.cm-state p{margin:0;max-width:420px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.cm-state-ico{font-size:32px!important;color:var(--brand-primary)}.cm-state-ico--error{color:var(--status-danger)}.cm-sk{height:44px;margin-bottom:4px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:cmShimmer 1.4s infinite linear}@keyframes cmShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 960px){.cm-layout{grid-template-columns:minmax(0,1fr)}.cm-side{position:static}.cm-levels{flex-direction:row}.cm-level{flex:1}}@media (max-width: 600px){.cm-head{padding:var(--space-3)}.cm-head-text p,.cm-head-btn span{display:none}.cm-filters{grid-template-columns:minmax(0,1fr)}.cm-tools{flex-wrap:wrap}.cm-search{flex:1 1 calc(100% - 48px)}.cm-picker{height:520px}.cm-levels{flex-direction:column}.cm-side{padding:var(--space-3)}}.EmployeeOthersPage{background-color:#8a2be2}.ma-form{display:flex;flex-direction:column;gap:var(--space-3)}.ma-today{padding:var(--space-4);background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.ma-today-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.ma-today-top small{font-size:var(--fs-xs);color:var(--text-muted)}.ma-clock{font-size:var(--fs-2xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);font-variant-numeric:tabular-nums;color:var(--text-primary)}.ma-tri{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}.ma-tri div{display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 4px;border-radius:var(--radius-lg);background:var(--surface-page)}.ma-tri b{font-size:var(--fs-md);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;white-space:nowrap}.ma-tri span{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px}.ma-step{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.ma-step-head{display:flex;align-items:center;gap:10px;padding:9px var(--space-4);background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent)}.ma-step-head b{flex:1;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--panel-header-text)}.ma-step-n{width:24px;height:24px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-size:12px;font-weight:var(--fw-bold)}.ma-step-n svg{font-size:16px}.ma-step-n--done{background:var(--status-success);border-color:var(--status-success);color:var(--text-on-brand)}.ma-step-status{font-size:11.5px;font-weight:var(--fw-semibold)}.ma-step-status--ok{color:var(--status-success)}.ma-step-status--warn{color:var(--status-warning)}.ma-step-status--bad{color:var(--status-danger)}.ma-step-status--muted{color:rgba(var(--panel-header-text-rgb),.65)}.ma-step-body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4)}.ma-step-body .ess-note{margin-bottom:0}.ma-step-btn{align-self:flex-start}.ma-muted{margin:0;font-size:var(--fs-xs);color:var(--text-muted)}.ma-acc{display:flex;flex-direction:column;gap:5px;font-size:var(--fs-xs);color:var(--text-secondary)}.ma-acc-bar{height:6px;border-radius:var(--radius-pill);background:var(--surface-hover);overflow:hidden}.ma-acc-fill{height:100%;border-radius:inherit;transition:width var(--transition-base)}.ma-acc-fill--ok{background:var(--status-success)}.ma-acc-fill--warn{background:var(--status-warning)}.ma-acc-fill--bad{background:var(--status-danger)}.ma-acc-fill--muted{background:var(--border-strong)}.ma-address{display:flex;gap:6px;margin:0;font-size:var(--fs-xs);color:var(--text-primary);line-height:var(--lh-base)}.ma-address svg{font-size:16px;color:var(--brand-primary);flex-shrink:0;margin-top:1px}.ma-spin{animation:ess-rot .9s linear infinite}.ma-io{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.ma-io-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.ma-io-btn span{display:inline-flex;align-items:center;gap:4px}.ma-io-btn:hover:not(.ma-io-btn--on){background:var(--surface-hover)}.ma-io-btn--on{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.ma-io-btn--done{background:var(--status-success-light);border-color:var(--status-success-light);color:var(--status-success)}.ma-io-tick{font-size:16px!important}.ma-selfie{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:100%;min-height:150px;padding:var(--space-4);border:2px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-secondary);font-family:inherit;text-align:center;cursor:pointer}.ma-selfie:hover{border-color:var(--brand-primary);color:var(--brand-primary-dark)}.ma-selfie svg{font-size:36px;color:var(--brand-primary)}.ma-selfie b{font-size:var(--fs-md);color:var(--text-primary)}.ma-selfie span{max-width:340px;font-size:11.5px;color:var(--text-muted);line-height:var(--lh-base)}.ma-selfie--busy{flex-direction:row;gap:10px;cursor:default;font-size:var(--fs-sm)}.ma-loader{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--brand-primary);animation:ess-rot .7s linear infinite}.ma-shot{display:flex;align-items:center;gap:var(--space-3)}.ma-shot img{width:112px;height:112px;object-fit:cover;border-radius:var(--radius-lg);border:2px solid var(--status-success)}.ma-submit{position:sticky;bottom:var(--space-3);z-index:var(--z-sticky);box-shadow:var(--shadow-md)}.ess-btn.ma-submit:disabled{opacity:1;background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-muted)}.ma-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.ma-confirm{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-5);text-align:center;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.ma-confirm p{margin:0;font-size:var(--fs-sm);color:var(--text-primary);line-height:var(--lh-base)}.ma-confirm-ico{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--status-warning-light);color:var(--status-warning)}.ma-confirm-actions{display:flex;gap:var(--space-2);width:100%}.ma-confirm-actions .ess-btn{flex:1}.ma-cam{width:100%;max-width:440px;display:flex;flex-direction:column;background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}.ma-cam-head{display:flex;align-items:center;justify-content:space-between;padding:9px var(--space-4);background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border)}.ma-cam-head b{font-size:var(--fs-sm);color:var(--panel-header-text)}.ma-cam-close{display:inline-flex;padding:4px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--panel-header-text);cursor:pointer}.ma-cam-close:hover{background:rgba(var(--panel-header-text-rgb),.1)}.ma-cam-view{position:relative;aspect-ratio:3 / 4;max-height:62vh;background:var(--text-primary)}.ma-cam-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1);display:block}.ma-cam-frame{position:absolute;left:50%;top:47%;width:58%;aspect-ratio:3 / 4;transform:translate(-50%,-50%);border:2px solid rgba(var(--text-on-brand-rgb),.85);border-radius:50%;pointer-events:none}.ma-cam-foot{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4)}.ma-cam-foot>span{font-size:var(--fs-xs);color:var(--text-secondary)}.ma-shutter{width:66px;height:66px;padding:5px;border:3px solid var(--brand-primary);border-radius:50%;background:var(--surface-card);cursor:pointer}.ma-shutter span{display:block;width:100%;height:100%;border-radius:50%;background:var(--brand-primary)}.ma-shutter:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 600px){.ma-today,.ma-step-body{padding:var(--space-3)}.ma-step-head{padding:9px var(--space-3)}.ma-overlay{padding:0;align-items:stretch}.ma-cam{max-width:none;border-radius:0}.ma-cam-view{flex:1;max-height:none;aspect-ratio:auto}.ma-confirm{margin:auto var(--space-4)}}@media (prefers-reduced-motion: reduce){.ma-spin,.ma-loader{animation:none}}.co-meter{height:6px;margin-bottom:var(--space-2);border-radius:var(--radius-pill);background:var(--surface-hover);overflow:hidden}.co-meter div{height:100%;border-radius:inherit;background:var(--status-warning);transition:width var(--transition-base)}.co-meter div.co-meter--ok{background:var(--status-success)}.co-days{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2);max-height:320px;overflow-y:auto}.co-day{width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer}.co-day:hover{border-color:var(--brand-primary)}.co-day--on{border-color:var(--brand-primary);background:var(--brand-primary-light)}.co-check{width:20px;height:20px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--text-on-brand)}.co-check svg{font-size:16px}.co-day--on .co-check{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark)}.co-day-main{display:flex;flex-direction:column;flex:1;min-width:0}.co-day-main b{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.co-day-main small{font-size:11.5px;color:var(--text-muted)}.co-credit{min-width:38px;padding:2px 6px;border-radius:var(--radius-pill);background:var(--status-success-light);color:var(--status-success);font-size:11.5px;font-weight:var(--fw-bold);text-align:center;font-variant-numeric:tabular-nums}@media (max-width: 600px){.co-days{grid-template-columns:minmax(0,1fr);max-height:none}}.outpass-badge-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--backdrop-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:10px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.outpass-badge-modal-content{background:var(--surface-card);border-radius:8px;box-shadow:var(--shadow-lg);width:100%;max-width:700px;max-height:90vh;overflow-y:auto;outline:none;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;animation:outpass-badge-modal-appear .3s ease-out;position:relative;border:1px solid var(--border-color);transform:scale(.95)}@keyframes outpass-badge-modal-appear{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(.95) translateY(0)}}.outpass-badge-close-btn{position:absolute;top:10px;right:15px;background:var(--status-danger);border:none;border-radius:50%;width:28px;height:28px;font-size:16px;color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .3s ease;box-shadow:var(--shadow-sm)}.outpass-badge-close-btn:hover{background:var(--status-danger);transform:scale(1.05);box-shadow:var(--shadow-md)}.outpass-badge-print-btn{position:absolute;top:10px;right:55px;background:var(--brand-primary-dark);border:none;border-radius:4px;padding:6px 12px;font-size:12px;color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;z-index:10;transition:all .3s ease;box-shadow:var(--shadow-sm)}.outpass-badge-print-btn:hover{background:var(--brand-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.outpass-form{background:var(--surface-card);border:2px solid var(--text-primary);border-radius:6px;width:100%;max-width:650px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:12px;box-shadow:var(--shadow-sm);overflow:hidden}.outpass-form__header{background:var(--brand-gradient);text-align:center;padding:12px 15px;color:var(--text-on-brand)}.outpass-form__header-content{display:flex;flex-direction:column;align-items:center;gap:4px}.outpass-form__title{font-weight:700;font-size:20px;letter-spacing:.5px;text-transform:uppercase;margin:0}.outpass-form__company{font-size:14px;font-weight:600;opacity:.9}.outpass-form__main-content{display:flex;min-height:250px;border-bottom:1px solid var(--border-strong)}.outpass-form__left-column{flex:1.2;padding:0;display:flex;flex-direction:column}.outpass-form__right-column{flex:.8;padding:0;border-left:1px solid var(--border-strong);display:flex;flex-direction:column}.outpass-form__section{padding:10px;border-bottom:1px solid var(--border-color)}.outpass-form__section:last-child{border-bottom:none}.outpass-form__section-header{background:var(--panel-header-bg);color:var(--panel-header-text);padding:6px 8px;font-weight:600;font-size:11px;border-radius:3px;margin-bottom:8px;text-align:center;text-transform:uppercase;letter-spacing:.3px}.outpass-form__fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.outpass-form__field-group{display:flex;flex-direction:column;gap:2px}.outpass-form__field-group.full-width{grid-column:1 / -1}.outpass-form__label{font-weight:600;color:var(--text-primary);font-size:10px;text-transform:uppercase;letter-spacing:.3px}.outpass-form__value{padding:6px 8px;background:var(--surface-page);border:1px solid var(--border-color);border-radius:3px;font-size:11px;font-weight:500;color:var(--text-primary);min-height:14px;display:flex;align-items:center}.outpass-form__value.purpose-value,.outpass-form__value.remarks-value{min-height:30px;word-wrap:break-word;font-size:10px}.outpass-form__value.time-value{text-align:center;font-weight:600;color:var(--status-danger);font-size:10px}.outpass-form__purpose-remarks{display:grid;grid-template-columns:1fr 1fr;gap:12px}.outpass-form__photo-section{display:flex;flex-direction:column;align-items:center;padding:12px 10px}.outpass-form__photo-frame{position:relative;width:100px;height:120px;background:var(--surface-page);border:2px solid var(--border-strong);border-radius:6px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.outpass-form__photo-container{width:85px;height:105px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--surface-card)}.outpass-form__photo{width:100%;height:100%;object-fit:cover;border-radius:3px}.outpass-form__photo-border{position:absolute;top:3px;left:3px;right:3px;bottom:3px;border:1px solid var(--brand-primary);border-radius:3px;pointer-events:none}.outpass-form__time-section{flex:1;display:flex;flex-direction:column}.outpass-form__time-grid{display:flex;flex-direction:column;gap:8px;flex:1;justify-content:center}.outpass-form__time-single-line{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.outpass-form__authority-section{background:var(--surface-page)}.outpass-form__authority-details{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:0 8px}.outpass-form__fac-section{background:var(--status-warning-light);border-bottom:1px solid var(--status-warning-light)}.outpass-form__signature-area{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 8px}.outpass-form__signature-field{text-align:center}.outpass-form__signature-line{border-bottom:1px solid var(--text-muted);height:25px;margin-bottom:4px;background:repeating-linear-gradient(90deg,transparent,transparent 8px,var(--surface-page) 8px,var(--surface-page) 16px)}.outpass-form__signature-label{font-size:9px;font-style:italic;color:var(--text-muted);font-weight:500}.outpass-form__security-section{background:var(--brand-primary-light);border-bottom:1px solid var(--brand-primary)}.outpass-form__security-details{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:0 8px;align-items:center}.outpass-form__security-field{display:flex;flex-direction:column;gap:2px;align-items:center}.outpass-form__value-placeholder{border-bottom:1px dashed var(--text-muted);min-width:80px;height:18px;text-align:center;color:var(--text-muted);font-style:italic;font-size:9px}@media print{.outpass-badge-modal-overlay{position:static;background:#fff;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none}.outpass-badge-modal-content{box-shadow:none;border:none;max-width:none;max-height:none;border-radius:0;transform:none}.outpass-badge-close-btn,.outpass-badge-print-btn{display:none!important}.outpass-form{box-shadow:none;border:2px solid #000;max-width:none}.outpass-form__header{background:#2c3e50!important;-webkit-print-color-adjust:exact;color:#fff!important}.outpass-form__section-header{background:#3498db!important;-webkit-print-color-adjust:exact;color:#fff!important}}@media (max-width: 768px){.outpass-badge-modal-overlay{padding:5px}.outpass-badge-modal-content{max-width:98%;transform:scale(.92)}.outpass-form__main-content{flex-direction:column}.outpass-form__right-column{border-left:none;border-top:1px solid #bdc3c7}.outpass-form__authority-details,.outpass-form__signature-area,.outpass-form__security-details{grid-template-columns:1fr;gap:8px}.outpass-form__fields-grid{grid-template-columns:1fr}.outpass-form__purpose-remarks{grid-template-columns:1fr;gap:8px}.outpass-form__time-single-line{grid-template-columns:1fr;gap:6px}.outpass-badge-close-btn{top:8px;right:12px;width:24px;height:24px;font-size:14px}.outpass-badge-print-btn{top:8px;right:45px;padding:4px 8px;font-size:10px}.outpass-form__photo-frame{width:80px;height:100px}.outpass-form__photo-container{width:70px;height:90px}}@media (max-width: 480px){.outpass-form__title{font-size:16px}.outpass-form__company{font-size:12px}.outpass-form__section{padding:8px}.outpass-form__photo-frame{width:70px;height:90px}.outpass-form__photo-container{width:60px;height:80px}.outpass-badge-close-btn{width:22px;height:22px;font-size:12px}.outpass-badge-print-btn{padding:3px 6px;font-size:9px}}.eop-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:4px}.eop-actions .ess-link{display:inline-flex;align-items:center;gap:4px;font-size:11.5px}.eop-actions .ess-link svg{font-size:15px}.sp-days{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.sp-day{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer}.sp-day:hover{border-color:var(--brand-primary)}.sp-day--on{border-color:var(--brand-primary);background:var(--brand-primary-light)}.sp-day-main{display:flex;flex-direction:column;flex:1;min-width:0}.sp-day-main b{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.sp-day-main small{font-size:11.5px;color:var(--text-muted)}.sp-punch{display:flex;flex-direction:column;align-items:center;min-width:52px;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.sp-punch i{font-style:normal;font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.4px;color:var(--text-muted)}@media (max-width: 600px){.sp-days{max-height:none}}.ar-days{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.ar-day{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:8px 10px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);color:var(--text-primary);font-family:inherit;text-align:left;cursor:pointer}.ar-day:hover{border-color:var(--brand-primary)}.ar-day--on{border-color:var(--brand-primary);background:var(--brand-primary-light)}.ar-day-main{display:flex;flex-direction:column;flex:1;min-width:0}.ar-day-main b{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.ar-day-main small{font-size:11.5px;color:var(--text-muted)}@media (max-width: 600px){.ar-days{max-height:none}}.hol-filters{display:flex;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-color)}.hol-filters .ess-seg{flex:0 1 300px}.hol-search{position:relative;flex:1 1 180px;display:flex}.hol-search svg{position:absolute;left:9px;top:50%;transform:translateY(-50%);font-size:18px;color:var(--text-muted);pointer-events:none}.hol-search .ess-input{padding-left:32px}.hol-year{width:auto;min-height:30px;padding:0 8px}.hol-list{list-style:none;margin:0;padding:0}.hol-item{display:flex;align-items:center;gap:var(--space-3);padding:10px var(--space-4);border-bottom:1px solid var(--border-color)}.hol-item:last-child{border-bottom:none}.hol-date{width:46px;height:46px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:var(--brand-primary-light);color:var(--brand-primary-dark)}.hol-date b{font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:1}.hol-date small{font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px}.hol-text{display:flex;flex-direction:column;flex:1;min-width:0}.hol-text b{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.hol-text small{font-size:11.5px;color:var(--text-muted)}.hol-item--past .hol-date{background:var(--surface-hover);color:var(--text-muted)}.hol-item--past .hol-text b{color:var(--text-secondary)}@media (max-width: 600px){.hol-filters{padding:var(--space-3)}.hol-item{padding:10px var(--space-3)}}.cp-wrap{position:relative;display:flex}.cp-wrap .ess-input{padding-right:42px}.cp-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:inline-flex;padding:6px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer}.cp-eye:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cp-eye svg{font-size:18px}.cp-strength{display:flex;align-items:center;gap:var(--space-2);margin-top:6px}.cp-bar{flex:1;height:5px;border-radius:var(--radius-pill);background:var(--surface-hover);overflow:hidden}.cp-fill{height:100%;border-radius:inherit;transition:width var(--transition-base)}.cp-fill--bad{background:var(--status-danger)}.cp-fill--warn{background:var(--status-warning)}.cp-fill--ok{background:var(--status-success)}.cp-label{font-size:11px;font-weight:var(--fw-semibold);min-width:44px;text-align:right}.cp-label--bad{color:var(--status-danger)}.cp-label--warn{color:var(--status-warning)}.cp-label--ok{color:var(--status-success)}.opr-container{display:flex;flex-direction:column;height:100%}.opr__report-container{flex:1;padding:16px;margin:16px;background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a}.opr__header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.opr__title{font-size:18px;color:#55565b;margin:0}.opr__action-buttons{display:flex;gap:12px}.opr__export-button,.opr__view-button{padding:10px 20px;border:none;border-radius:6px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;background:var(--create-button);box-shadow:0 2px 5px #0003}.opr__export-button:hover,.opr__view-button:hover{background:var(--delete-button);transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.opr__filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px}.opr__filter-group{display:flex;flex-direction:column;min-width:160px}.opr__filter-select{font-size:13px;min-width:180px}.opr__filter-label{font-size:13px;margin-bottom:4px;color:#555}.opr__date-input{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;height:32px}.opr__table-wrapper{margin-top:15px}.opr__table-scroll-container{max-height:400px;overflow-y:auto;overflow-x:auto;position:relative;border:1px solid #e0e0e0;border-radius:8px}.opr__table{width:100%;border-collapse:collapse;min-width:900px}.opr__table-head{background:#0070c0;position:sticky;top:0;z-index:2}.opr__table-header{padding:10px 12px;font-size:14px;font-weight:600;color:#fff;text-align:left;border:1px solid white;white-space:nowrap}.opr__table-body{background-color:#fff}.opr__table-row{background-color:#fff;box-shadow:0 2px 4px #0000000d;transition:box-shadow .3s ease}.opr__table-row:hover{box-shadow:0 4px 8px #0000001a}.opr__table-row:nth-child(odd){background-color:#f9f9f9}.opr__table-cell{padding:4px 12px;font-size:13px;color:#55565b;text-align:left;border:1px solid #e0e0e0;white-space:nowrap}.opr__message-row{height:300px;position:relative}.opr__loading-cell,.opr__error-cell,.opr__instruction-cell{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:100%;padding:20px}.opr__instruction-box{background-color:#f0f8ff;border-left:5px solid #0070c0;border-radius:4px;padding:20px;box-shadow:0 2px 8px #0000000d;display:inline-block;max-width:80%}.opr__instruction-box p{margin:0;font-size:15px;color:#0070c0;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.opr__loading-cell .opr__message-box{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;color:#0070c0}.opr__error-cell .MuiAlert-root{width:fit-content;margin:auto}.wpr-container{display:flex;flex-direction:column;height:100%}.wpr__report-container{flex:1;padding:16px;margin:16px;background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a}.wpr__header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.wpr__title{font-size:18px;color:#55565b;margin:0}.wpr__action-buttons{display:flex;gap:12px}.wpr__export-button,.wpr__view-button{padding:10px 20px;border:none;border-radius:6px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;background:var(--create-button);box-shadow:0 2px 5px #0003}.wpr__export-button:hover,.wpr__view-button:hover{background:var(--delete-button);transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.wpr__filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px}.wpr__filter-group{display:flex;flex-direction:column;min-width:160px}.wpr__filter-select{font-size:13px;min-width:180px}.wpr__filter-label{font-size:13px;margin-bottom:4px;color:#555}.wpr__date-input{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;height:32px}.wpr__table-wrapper{margin-top:15px}.wpr__table-scroll-container{max-height:400px;overflow-y:auto;overflow-x:auto;position:relative;border:1px solid #e0e0e0;border-radius:8px}.wpr__table{width:100%;border-collapse:collapse;min-width:1100px}.wpr__table-head{background:#0070c0;position:sticky;top:0;z-index:2}.wpr__table-header{padding:10px 12px;font-size:14px;font-weight:600;color:#fff;text-align:center;border:1px solid white;white-space:normal}.wpr__table-body{background-color:#fff}.wpr__table-row{background-color:#fff;box-shadow:0 2px 4px #0000000d;transition:box-shadow .3s ease}.wpr__table-row:hover{box-shadow:0 4px 8px #0000001a}.wpr__table-row:nth-child(odd){background-color:#f9f9f9}.wpr__table-cell{padding:4px 12px;font-size:13px;color:#55565b;text-align:center;border:1px solid #e0e0e0;white-space:nowrap}.wpr__message-row{height:300px;position:relative}.wpr__loading-cell,.wpr__error-cell,.wpr__instruction-cell{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:100%;padding:20px}.wpr__instruction-box{background-color:#f0f8ff;border-left:5px solid #0070c0;border-radius:4px;padding:20px;box-shadow:0 2px 8px #0000000d;display:inline-block;max-width:80%}.wpr__instruction-box p{margin:0;font-size:15px;color:#0070c0;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.wpr__loading-cell .wpr__message-box{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;color:#0070c0}.wpr__error-cell .MuiAlert-root{width:fit-content;margin:auto}.mar-container{display:flex;flex-direction:column;height:100%}.mar__report-container{flex:1;padding:16px;margin:16px;background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a}.mar__header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.mar__title{font-size:18px;color:#55565b;margin:0}.mar__action-buttons{display:flex;gap:12px}.mar__export-button,.mar__view-button{padding:10px 20px;border:none;border-radius:6px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;background:var(--create-button);box-shadow:0 2px 5px #0003}.mar__export-button:hover,.mar__view-button:hover{background:var(--delete-button);transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.mar__filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px}.mar__filter-group{display:flex;flex-direction:column;min-width:200px}.mar__filter-select{font-size:13px;min-width:220px}.mar__filter-label{font-size:13px;margin-bottom:4px;color:#555}.mar__select-input{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;height:32px;background-color:#fff}.select__control{min-height:32px!important}.mar__table-wrapper{margin-top:15px}.mar__table-scroll-container{max-height:400px;overflow-y:auto;overflow-x:auto;position:relative;border:1px solid #e0e0e0;border-radius:8px}.mar__table{width:100%;border-collapse:collapse;min-width:1200px}.mar__table-head{background:#0070c0;position:sticky;top:0;z-index:2}.mar__table-header{padding:10px 12px;font-size:14px;font-weight:600;color:#fff;text-align:center;border:1px solid white;white-space:normal}.mar__table-body{background-color:#fff}.mar__table-row{background-color:#fff;box-shadow:0 2px 4px #0000000d;transition:box-shadow .3s ease}.mar__table-row:hover{box-shadow:0 4px 8px #0000001a}.mar__table-row:nth-child(odd){background-color:#f9f9f9}.mar__table-cell{padding:4px 12px;font-size:13px;color:#55565b;text-align:center;border:1px solid #e0e0e0;white-space:nowrap}.mar__message-row{height:300px;position:relative}.mar__loading-cell,.mar__error-cell,.mar__instruction-cell{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:100%;padding:20px}.mar__instruction-box{background-color:#f0f8ff;border-left:5px solid #0070c0;border-radius:4px;padding:20px;box-shadow:0 2px 8px #0000000d;display:inline-block;max-width:80%}.mar__instruction-box p{margin:0;font-size:15px;color:#0070c0;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.mar__loading-cell .mar__message-box{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;color:#0070c0}.mar__error-cell .MuiAlert-root{width:fit-content;margin:auto}.ar-container{display:flex;flex-direction:column;height:100%;position:relative;z-index:1}.ar__report-container{flex:1;padding:16px;margin:16px;background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a;position:relative;z-index:1}.ar__header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;position:relative;z-index:1}.ar__title{font-size:18px;color:#55565b;margin:0}.ar__action-buttons{display:flex;gap:12px}.ar__export-button,.ar__view-button{padding:10px 20px;border:none;border-radius:6px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;background:var(--create-button);box-shadow:0 2px 5px #0003}.ar__export-button:hover,.ar__view-button:hover{background:var(--delete-button);transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.ar__filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px;position:relative;z-index:1000}.ar__filter-group{display:flex;flex-direction:column;min-width:160px;position:relative;z-index:1001}.ar__filter-select{font-size:13px;min-width:180px;position:relative;z-index:1002}.ar__filter-select .select__menu{z-index:9999!important}.ar__filter-label{font-size:13px;margin-bottom:4px;color:#555}.ar__date-input{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;height:32px}.ar__table-wrapper{margin-top:15px;position:relative;z-index:1}.ar__table-scroll-container{max-height:400px;overflow-y:auto;overflow-x:auto;position:relative;border:1px solid #e0e0e0;border-radius:8px;z-index:1}.ar__table{width:100%;border-collapse:collapse;min-width:1200px}.ar__table-head{background:#0070c0;position:sticky;top:0;z-index:10}.ar__table-header{padding:10px 8px;font-size:12px;font-weight:600;color:#fff;text-align:left;border:1px solid white;white-space:nowrap}.ar__table-body{background-color:#fff}.ar__table-row{background-color:#fff;box-shadow:0 2px 4px #0000000d;transition:box-shadow .3s ease}.ar__table-row:hover{box-shadow:0 4px 8px #0000001a}.ar__table-row:nth-child(odd){background-color:#f9f9f9}.ar__table-cell{padding:4px 8px;font-size:12px;color:#55565b;text-align:left;border:1px solid #e0e0e0;white-space:nowrap}.ar__message-row{height:300px;position:relative}.ar__loading-cell,.ar__error-cell,.ar__instruction-cell{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:100%;padding:20px}.ar__instruction-box{background-color:#f0f8ff;border-left:5px solid #0070c0;border-radius:4px;padding:20px;box-shadow:0 2px 8px #0000000d;display:inline-block;max-width:80%}.ar__instruction-box p{margin:0;font-size:15px;color:#0070c0;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.ar__loading-cell .ar__message-box{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;color:#0070c0}.ar__error-cell .MuiAlert-root{width:fit-content;margin:auto}@media (max-width: 768px){.ar__filter-row{flex-direction:column;align-items:stretch}.ar__filter-group{min-width:auto}.ar__header-row{flex-direction:column;gap:12px;align-items:flex-start}.ar__action-buttons{width:100%;justify-content:flex-end}}:root{--create-button: linear-gradient(135deg, #2196F3 0%, #0d47a1 100%);--delete-button: linear-gradient(90deg, rgba(255, 113, 28, 1) 0%, rgba(247, 66, 49, 1) 50%, rgba(253, 42, 109, 1) 100%)}.pr-container{display:flex;flex-direction:column;height:100%;position:relative;z-index:1}.pr__report-container{flex:1;padding:16px;margin:16px;background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #0000001a;position:relative;z-index:1}.pr__header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;position:relative;z-index:1}.pr__title{font-size:18px;color:#55565b;margin:0}.pr__action-buttons{display:flex;gap:12px}.pr__export-button,.pr__view-button{padding:10px 20px;border:none;border-radius:6px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;background:var(--create-button);box-shadow:0 2px 5px #0003}.pr__export-button:hover,.pr__view-button:hover{background:var(--delete-button);transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.pr__filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px;position:relative;z-index:1000}.pr__filter-group{display:flex;flex-direction:column;min-width:160px;position:relative;z-index:1001}.pr__filter-select{font-size:13px;min-width:180px;position:relative;z-index:1002}.pr__filter-select .select__menu{z-index:9999!important}.pr__filter-label{font-size:13px;margin-bottom:4px;color:#555}.pr__date-input{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;height:32px}.select__control{min-height:32px!important;z-index:1002}.select__multi-value{font-size:12px!important}.select__menu{z-index:9999!important;position:absolute!important}.select__menu-list{z-index:9999!important}.pr__table-wrapper{margin-top:15px;position:relative;z-index:1}.pr__table-scroll-container{max-height:400px;overflow-y:auto;overflow-x:auto;position:relative;border:1px solid #e0e0e0;border-radius:8px;z-index:1}.pr__table{width:100%;border-collapse:collapse;min-width:1800px}.pr__table-head{background:#0070c0;position:sticky;top:0;z-index:10}.pr__table-header{padding:10px 8px;font-size:12px;font-weight:600;color:#fff;text-align:left;border:1px solid white;white-space:nowrap}.pr__table-body{background-color:#fff}.pr__table-row{background-color:#fff;box-shadow:0 2px 4px #0000000d;transition:box-shadow .3s ease}.pr__table-row:hover{box-shadow:0 4px 8px #0000001a}.pr__table-row:nth-child(odd){background-color:#f9f9f9}.pr__table-cell{padding:4px 8px;font-size:12px;color:#55565b;text-align:left;border:1px solid #e0e0e0;white-space:nowrap}.pr__message-row{height:300px;position:relative}.pr__loading-cell,.pr__error-cell,.pr__instruction-cell{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:100%;padding:20px}.pr__instruction-box{background-color:#f0f8ff;border-left:5px solid #0070c0;border-radius:4px;padding:20px;box-shadow:0 2px 8px #0000000d;display:inline-block;max-width:80%}.pr__instruction-box p{margin:0;font-size:15px;color:#0070c0;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}.pr__loading-cell .pr__message-box{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;color:#0070c0}.pr__error-cell .MuiAlert-root{width:fit-content;margin:auto}@media (max-width: 768px){.pr__filter-row{flex-direction:column;align-items:stretch}.pr__filter-group{min-width:auto}.pr__header-row{flex-direction:column;gap:12px;align-items:flex-start}.pr__action-buttons{width:100%;justify-content:flex-end}}.rpt-page{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--page-padding);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.rpt-head{display:flex;align-items:flex-start;gap:var(--space-3)}.rpt-head-ico{width:42px;height:42px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:var(--brand-primary-light);border:1px solid var(--brand-primary-tint2);color:var(--brand-primary-dark)}.rpt-head-ico svg{font-size:22px}.rpt-head-text{min-width:0}.rpt-crumb{display:block;font-size:var(--fs-xs);color:var(--text-muted);margin-bottom:1px}.rpt-head-text h1{margin:0;font-size:var(--page-title-size);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.rpt-head-text p{margin:3px 0 0;font-size:var(--page-desc-size);color:var(--text-secondary);line-height:var(--lh-base);max-width:820px}.rpt-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.rpt-card--result{overflow:hidden}.rpt-card-head{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:9px var(--space-4);background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.rpt-card-title{display:flex;flex-direction:column;min-width:0;flex:1}.rpt-card-title b{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--panel-header-text)}.rpt-card-title span{font-size:var(--fs-xs);color:rgba(var(--panel-header-text-rgb),.72);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rpt-card-tools{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.rpt-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.rpt-btn svg{font-size:var(--icon-size-sm)}.rpt-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.rpt-btn:disabled{opacity:.5;cursor:not-allowed}.rpt-btn--sm{height:28px;padding:0 var(--space-2)}.rpt-btn--ghost{background:var(--surface-card)}.rpt-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.rpt-btn--primary:hover:not(:disabled){background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-on-brand)}.rpt-btn--xl{color:var(--status-success);border-color:rgba(var(--status-success-rgb),.45)}.rpt-btn--xl:hover:not(:disabled){background:var(--status-success-light);color:var(--status-success)}.rpt-btn--pdf{color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.rpt-btn--pdf:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger)}.rpt-icon-btn{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);cursor:pointer}.rpt-icon-btn svg{font-size:18px}.rpt-icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.rpt-icon-btn:disabled{opacity:.4;cursor:not-allowed}.rpt-badge{padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-hover);border:1px solid var(--border-color);font-size:10.5px;line-height:16px;color:var(--text-secondary)}.rpt-sp{flex:1}.rpt-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3);padding:var(--space-4)}.rpt-field{display:flex;flex-direction:column;min-width:0}.rpt-label{display:block;margin-bottom:5px;font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.4px;text-transform:uppercase;color:var(--text-secondary)}.rpt-input{height:var(--control-height);width:100%;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.rpt-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.rpt-range{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.rpt-seg{display:inline-flex;height:var(--control-height);width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden}.rpt-seg button{flex:1;border:none;border-right:1px solid var(--border-color);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.rpt-seg button:last-child{border-right:none}.rpt-seg button:hover:not(.rpt-seg--on){background:var(--surface-hover)}.rpt-seg .rpt-seg--on{background:var(--brand-primary-dark);color:var(--text-on-brand)}.rpt-ms{position:relative;min-width:0}.rpt-ms-control{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-height:var(--control-height);padding:4px 30px 4px 8px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.rpt-ms-control:hover{border-color:var(--brand-primary)}.rpt-ms-control:focus-visible,.rpt-ms--open .rpt-ms-control{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.rpt-ms--disabled .rpt-ms-control{opacity:.6;cursor:not-allowed}.rpt-ms-placeholder{font-size:var(--fs-sm);color:var(--text-muted)}.rpt-ms-caret{position:absolute;right:6px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:20px!important;transition:transform var(--transition-fast)}.rpt-ms--open .rpt-ms-caret{transform:translateY(-50%) rotate(180deg)}.rpt-chip{display:inline-flex;align-items:center;gap:2px;max-width:100%;padding:1px 2px 1px 7px;border:1px solid var(--brand-primary-tint2);border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-medium);line-height:18px}.rpt-chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.rpt-chip-x{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:3px;background:transparent;color:inherit;cursor:pointer;opacity:.7}.rpt-chip-x:hover{opacity:1;background:var(--brand-primary-tint2)}.rpt-chip-x svg{font-size:13px}.rpt-chip--more{padding:1px 7px;background:var(--surface-hover);border-color:var(--border-color);color:var(--text-secondary)}.rpt-ms-menu,.rpt-cols-menu{position:absolute;z-index:var(--z-dropdown);top:calc(100% + 4px);left:0;width:max(100%,280px);max-width:min(360px,calc(100vw - 32px));padding:var(--space-2);background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.rpt-cols{position:relative}.rpt-cols-menu{left:auto;right:0;width:260px}.rpt-ms-search{display:flex;align-items:center;gap:6px;height:32px;padding:0 8px;margin-bottom:6px;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted)}.rpt-ms-search svg{font-size:17px}.rpt-ms-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--fs-sm);color:var(--text-primary)}.rpt-ms-search input:focus{box-shadow:none}.rpt-ms-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:2px 4px 6px;margin-bottom:4px;border-bottom:1px solid var(--border-color);font-size:11.5px;color:var(--text-muted)}.rpt-ms-links{display:inline-flex;gap:var(--space-3)}.rpt-ms-links button{padding:0;border:none;background:none;cursor:pointer;font-family:inherit;font-size:11.5px;font-weight:var(--fw-semibold);color:var(--brand-primary)}.rpt-ms-links button:disabled{color:var(--text-muted);cursor:default;opacity:.6}.rpt-ms-list{max-height:260px;overflow-y:auto}.rpt-ms-opt{display:flex;align-items:center;gap:8px;width:100%;padding:6px;border:none;border-radius:var(--radius-sm);background:transparent;text-align:left;cursor:pointer;font-family:inherit;color:var(--text-primary)}.rpt-ms-opt:hover{background:var(--surface-hover)}.rpt-cb{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--border-strong);border-radius:4px;background:var(--surface-card);color:var(--text-on-brand)}.rpt-cb svg{font-size:13px}.rpt-ms-opt--on .rpt-cb{background:var(--brand-primary);border-color:var(--brand-primary)}.rpt-ms-opt-text{display:flex;flex-direction:column;min-width:0;flex:1}.rpt-ms-opt-label{font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rpt-ms-opt-hint{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rpt-ms-count{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.rpt-ms-empty{padding:12px 6px;text-align:center;font-size:var(--fs-xs);color:var(--text-muted)}.rpt-bar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:10px var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.rpt-bar-info{flex:1;min-width:200px;font-size:var(--fs-xs);color:var(--text-secondary)}.rpt-bar-info b{color:var(--text-primary)}.rpt-bar-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.rpt-warn-text{display:inline-flex;align-items:center;gap:5px;color:var(--status-warning)}.rpt-warn-text svg{font-size:16px}.rpt-inline-error{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:var(--space-3) var(--space-4) 0;padding:8px 10px;border:1px solid rgba(var(--status-danger-rgb),.3);border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);font-size:var(--fs-xs)}.rpt-inline-error svg{font-size:17px}.rpt-inline-error span{flex:1}.rpt-search{display:inline-flex;align-items:center;gap:6px;height:30px;width:240px;max-width:100%;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-muted)}.rpt-search:focus-within{border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.rpt-search svg{font-size:17px}.rpt-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:inherit;font-size:var(--fs-xs);color:var(--text-primary)}.rpt-search input:focus{box-shadow:none}.rpt-search button{display:inline-flex;padding:0;border:none;background:none;color:var(--text-muted);cursor:pointer}.rpt-search button svg{font-size:15px}.rpt-table-wrap{overflow:auto;max-height:calc(100vh - 210px);min-height:220px;transition:opacity var(--transition-fast)}.rpt-table-wrap--busy{opacity:.55;pointer-events:none}.rpt-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--fs-xs)}.rpt-table th{position:sticky;top:0;z-index:1;padding:9px 10px;text-align:left;white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary);font-weight:var(--fw-semibold);border-bottom:1px solid var(--border-strong)}.rpt-table td{padding:7px 10px;white-space:nowrap;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.rpt-table tbody tr:nth-child(odd) td{background:#fff}.rpt-table tbody tr:nth-child(2n) td{background:#f9f9f9}.rpt-table tbody tr:hover td{background:var(--brand-primary-light)}.rpt-th-num,.rpt-td-num{width:1%;text-align:right!important;color:var(--text-muted)!important;font-variant-numeric:tabular-nums}.rpt-al-center{text-align:center!important}.rpt-al-right{text-align:right!important}.rpt-table td.rpt-al-center,.rpt-table td.rpt-al-right{font-variant-numeric:tabular-nums}.rpt-dash{color:var(--text-muted)}.rpt-tag{display:inline-flex;align-items:center;gap:5px;font-weight:var(--fw-semibold)}.rpt-tag i{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.rpt-tag--ok{color:var(--status-success)}.rpt-tag--bad{color:var(--status-danger)}.rpt-tag--warn{color:var(--status-warning)}.rpt-tag--info{color:var(--status-info)}.rpt-tag--muted,.rpt-tag--none{color:var(--text-secondary)}.rpt-pager{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:9px var(--space-4);border-top:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary)}.rpt-pager-size{display:inline-flex;align-items:center;gap:6px}.rpt-pager-size select{height:28px;padding:0 6px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-xs)}.rpt-pager-nav{display:inline-flex;align-items:center;gap:6px}.rpt-pager-nav span{padding:0 4px;white-space:nowrap}.rpt-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;min-height:260px;padding:var(--space-6) var(--space-4)}.rpt-state-ico{width:48px;height:48px;margin-bottom:4px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-hover);color:var(--text-secondary)}.rpt-state-ico svg{font-size:26px}.rpt-state-ico--bad{background:var(--status-danger-light);color:var(--status-danger)}.rpt-state h4{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.rpt-state p{margin:0 0 6px;max-width:460px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.rpt-skel{display:flex;flex-direction:column;gap:10px;padding:var(--space-4);min-height:260px}.rpt-skel span{height:14px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-hover) 0%,var(--border-color) 50%,var(--surface-hover) 100%);background-size:200% 100%;animation:rpt-shimmer 1.2s linear infinite}.rpt-skel span:nth-child(3n){width:82%}.rpt-skel span:nth-child(4n){width:91%}@keyframes rpt-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rpt-spin{width:14px;height:14px;border-radius:50%;border:2px solid rgba(var(--text-on-brand-rgb),.35);border-top-color:var(--text-on-brand);animation:rpt-rot .7s linear infinite}.rpt-spin--sm{width:12px;height:12px;border-color:var(--border-color);border-top-color:var(--brand-primary)}@keyframes rpt-rot{to{transform:rotate(360deg)}}.rpt-export{position:fixed;right:20px;bottom:20px;z-index:var(--z-toast);width:340px;max-width:calc(100vw - 32px);background:var(--surface-card);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;animation:rpt-up .2s ease}@keyframes rpt-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rpt-export-head{display:flex;align-items:center;gap:var(--space-2);padding:9px 12px;border-bottom:1px solid var(--border-color);font-size:var(--fs-sm)}.rpt-export-ico{display:inline-flex}.rpt-export-ico svg{font-size:19px}.rpt-export-ico--xl{color:var(--status-success)}.rpt-export-ico--pdf{color:var(--status-danger)}.rpt-export-body{padding:10px 12px 12px;font-size:var(--fs-xs);color:var(--text-secondary)}.rpt-export-line{display:flex;justify-content:space-between;gap:var(--space-2)}.rpt-export-line b{color:var(--text-primary);font-variant-numeric:tabular-nums}.rpt-export-note{margin:0;font-size:11px;color:var(--text-muted)}.rpt-export-msg{display:flex;align-items:flex-start;gap:6px;line-height:var(--lh-base)}.rpt-export-msg svg{font-size:17px;flex-shrink:0;margin-top:1px}.rpt-export-msg b{color:var(--text-primary);word-break:break-all}.rpt-export-msg--ok svg{color:var(--status-success)}.rpt-export-msg--bad{color:var(--status-danger)}.rpt-export-actions{display:flex;justify-content:flex-end;margin-top:8px}.rpt-track{height:6px;margin:8px 0;border-radius:3px;background:var(--surface-hover);overflow:hidden}.rpt-track div{height:100%;width:35%;border-radius:3px;background:var(--brand-primary)}.rpt-track--indef div{animation:rpt-indef 1.3s ease-in-out infinite}@keyframes rpt-indef{0%{transform:translate(-110%)}to{transform:translate(310%)}}@media (max-width: 768px){.rpt-filters{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding:var(--space-3)}.rpt-bar-actions{width:100%}.rpt-bar-actions .rpt-btn{flex:1}.rpt-search,.rpt-card-tools{width:100%}.rpt-table-wrap{max-height:70vh}}@media (max-width: 480px){.rpt-filters{grid-template-columns:minmax(0,1fr)}.rpt-head-ico,.rpt-pager-size{display:none}}@media (prefers-reduced-motion: reduce){.rpt-skel span,.rpt-track--indef div,.rpt-spin,.rpt-export{animation:none}}.rpt-table td.rpt-wrap{white-space:normal;min-width:220px;max-width:320px;line-height:var(--lh-base)}.rpt-link{color:var(--brand-primary);text-decoration:none;font-variant-numeric:tabular-nums}.rpt-link:hover{text-decoration:underline}.rpt-check{display:flex;align-items:center;gap:8px;min-height:var(--control-height);padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);cursor:pointer;font-size:var(--fs-sm);color:var(--text-primary)}.rpt-check input{width:16px;height:16px;accent-color:var(--brand-primary);cursor:pointer}.rpt-check small{color:var(--text-muted);font-size:11px}.rpt-photo{width:38px;height:38px;padding:0;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-hover);color:var(--text-muted);cursor:zoom-in;vertical-align:middle}.rpt-photo img{width:100%;height:100%;object-fit:cover;display:block}.rpt-photo svg{font-size:18px}.rpt-photo:disabled{cursor:default}.rpt-photo--none{cursor:default;opacity:.6}.rpt-photo--loading{background:linear-gradient(90deg,var(--surface-hover) 0%,var(--border-color) 50%,var(--surface-hover) 100%);background-size:200% 100%;animation:rpt-shimmer 1.2s linear infinite}.rpt-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);animation:rpt-up .15s ease}.rpt-lightbox figure{position:relative;margin:0;max-width:min(520px,100%);background:var(--surface-card);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.rpt-lightbox img{display:block;max-width:100%;max-height:75vh;margin:0 auto}.rpt-lightbox figcaption{padding:8px 12px;font-size:var(--fs-xs);color:var(--text-secondary);border-top:1px solid var(--border-color)}.rpt-lightbox-x{position:absolute;top:8px;right:8px;width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--surface-card);color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-sm)}.rpt-lightbox-x svg{font-size:18px}@media (prefers-reduced-motion: reduce){.rpt-photo--loading,.rpt-lightbox{animation:none}}.rpt-table tbody tr.rpt-group-row td{position:sticky;left:0;padding:7px 10px;background:var(--panel-header-bg);border-bottom:1px solid var(--panel-header-border);box-shadow:inset 3px 0 0 var(--panel-header-accent);color:var(--panel-header-text);font-weight:var(--fw-semibold)}.rpt-th-hint{display:block;font-size:10px;font-weight:var(--fw-regular);color:var(--text-muted)}.rpt-table--dense th,.rpt-table--dense td{padding:6px}.rpt-table--dense td.rpt-al-center{min-width:30px}.rpt-day{display:inline-block;min-width:22px;padding:1px 4px;border-radius:var(--radius-sm);font-weight:var(--fw-semibold);font-size:11px}.rpt-day--ok{background:var(--status-success-light);color:var(--status-success)}.rpt-day--bad{background:var(--status-danger-light);color:var(--status-danger)}.rpt-day--warn{background:var(--status-warning-light);color:var(--status-warning)}.rpt-day--info{background:var(--status-info-light);color:var(--status-info)}.rpt-day--muted{background:var(--surface-hover);color:var(--text-secondary)}.lbr-container{min-height:100vh;background:var(--surface-page);font-family:Inter,sans-serif;box-sizing:border-box;display:flex;flex-direction:column;flex:1}.lbr__report-container{background:var(--surface-card);border-radius:12px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);overflow:hidden;animation:slideUp .3s ease;display:flex;flex-direction:column;height:calc(100vh - 32px)}.lbr__header{padding:16px 22px;background:var(--brand-gradient);color:var(--text-on-brand);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-shrink:0;flex-wrap:wrap}.lbr__header-left{display:flex;align-items:center;gap:12px}.lbr__header-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffff29;color:var(--text-on-brand);flex-shrink:0}.lbr__header-content{flex:1}.lbr__title{font-size:18px;font-weight:700;margin:0;letter-spacing:-.2px}.lbr__title-icon{font-size:22px!important}.lbr__subtitle{font-size:13px;opacity:.9;margin:0;font-weight:400}.lbr__header-actions{display:flex;flex-direction:column;gap:8px}.lbr__action-buttons{display:flex;gap:8px}.lbr__action-button{padding:8px 16px;border:none;border-radius:4px;font-weight:500;font-size:13px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:6px;min-width:100px;justify-content:center;height:36px}.lbr__action-button--export{background:#ffffff24;color:#fff;border:1px solid rgba(255,255,255,.35)}.lbr__action-button--export:hover:not(:disabled){background:#ffffff3d;transform:translateY(-1px)}.lbr__action-button--view{background:var(--surface-card);color:var(--brand-primary-dark)}.lbr__action-button--view:hover:not(:disabled){background:var(--brand-primary-light);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.lbr__action-button--reset{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}.lbr__action-button--reset:hover:not(:disabled){background:#ffffff1a;border-color:#fff;transform:translateY(-1px)}.lbr__action-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.lbr__filters-section{padding:14px 22px;background:var(--surface-card);border-bottom:1px solid var(--border-color);flex-shrink:0;position:relative;z-index:20}.lbr__filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.lbr__filters-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:6px}.lbr__filters-actions{display:flex;gap:6px;flex-wrap:wrap}.lbr__filter-tag{background:var(--surface-card);border:1px solid var(--border-color);border-radius:12px;padding:4px 8px;font-size:11px;color:var(--text-secondary);display:inline-flex;align-items:center;gap:4px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;height:24px}.lbr__filter-tag-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .15s ease}.lbr__filter-tag-remove:hover{background:var(--border-color);color:var(--text-secondary)}.lbr__filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.lbr__filter-group{display:flex;flex-direction:column;gap:6px}.lbr__filter-label{font-size:13px;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.lbr__filter-select{font-size:13px}.lbr__filter-select .lbr-select__control{border:1px solid var(--border-color);border-radius:4px;min-height:36px;transition:all .15s ease;background:var(--surface-card);box-shadow:none;font-size:13px}.lbr__filter-select .lbr-select__control:hover{border-color:var(--brand-primary)}.lbr__filter-select .lbr-select__control--is-focused{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light)}.lbr__filter-select .lbr-select__menu{z-index:1000;box-shadow:0 3px 6px #00000029,0 3px 6px #0000003b;border-radius:4px;border:1px solid var(--border-color);font-size:13px}.lbr__filter-select .lbr-select__option{padding:8px 12px;font-size:13px}.lbr__filter-select .lbr-select__option--is-selected{background-color:var(--brand-primary-light);color:var(--brand-primary)}.lbr__filter-select .lbr-select__option--is-focused{background-color:var(--surface-hover)}.lbr__select-placeholder{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:13px}.lbr__employee-option{display:flex;align-items:center;gap:8px;padding:4px 0}.lbr__employee-info{display:flex;flex-direction:column}.lbr__employee-name{font-weight:500;color:var(--text-primary);font-size:13px}.lbr__employee-details{display:flex;flex-direction:column;gap:1px}.lbr__employee-id,.lbr__employee-dept{font-size:10px;color:var(--text-muted)}.lbr__date-input-container{position:relative}.lbr__date-input{width:100%;padding:8px 32px 8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:13px;font-family:Inter,sans-serif;background:var(--surface-card);color:var(--text-primary);height:36px;transition:all .15s ease}.lbr__date-input:hover{border-color:var(--brand-primary)}.lbr__date-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light)}.lbr__date-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.lbr__table-section{padding:16px 20px;flex:1;min-height:0;display:flex;flex-direction:column}.lbr__table-area{flex:1;min-height:0;display:flex;flex-direction:column}.lbr__table-wrapper{border:1px solid var(--border-color);border-radius:6px;overflow:hidden;background:var(--surface-card);flex:1;min-height:0;display:flex;flex-direction:column}.lbr__table-container{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.lbr__table-container::-webkit-scrollbar{width:6px;height:6px}.lbr__table-container::-webkit-scrollbar-track{background:var(--surface-hover)}.lbr__table-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.lbr__table-container::-webkit-scrollbar-thumb:hover{background:var(--brand-primary)}.lbr__table{width:100%;border-collapse:collapse;min-width:1400px;font-size:12px}.lbr__table-header{position:sticky;top:0;z-index:10;background:var(--brand-gradient)}.lbr__table-header-cell{padding:10px 8px;font-size:11px;font-weight:600;color:#fff;text-align:left;white-space:nowrap;position:relative;border-bottom:1px solid rgba(255,255,255,.1);text-transform:uppercase;letter-spacing:.3px}.lbr__table-header-cell--sticky{position:sticky;left:0;z-index:11;background:inherit;min-width:40px}.lbr__table-body{background:var(--surface-card)}.lbr__table-row{border-bottom:1px solid var(--border-color);transition:all .15s ease;position:relative}.lbr__table-row:hover{background:var(--brand-primary-light)}.lbr__table-row:nth-child(2n){background:var(--surface-hover)}.lbr__table-row:nth-child(2n):hover{background:var(--brand-primary-light)}.lbr__table-cell{padding:10px 8px;font-size:12px;color:var(--text-secondary);border-right:1px solid var(--border-color);white-space:nowrap;font-family:Inter,sans-serif}.lbr__table-cell--sticky-no{position:sticky;left:0;z-index:5;background:inherit;font-weight:500;min-width:40px;border-right:2px solid var(--border-color)}.lbr__row-index{font-weight:500;color:var(--brand-primary);text-align:center;font-size:11px}.lbr__emp-no{font-family:JetBrains Mono,monospace;font-weight:500;color:var(--text-primary);font-size:11px}.lbr__emp-name{display:flex;flex-direction:column;gap:2px;min-width:120px}.lbr__emp-name-primary{font-weight:500;color:var(--text-primary);font-size:12px}.lbr__emp-designation{font-size:10px;color:var(--text-muted)}.lbr__leave-group-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:12px;font-size:10px;font-weight:600;min-width:80px;border:1px solid transparent}.lbr__leave-group--color-1{background:#2196f31a;color:#2196f3;border-color:#2196f333}.lbr__leave-group--color-2{background:#ff98001a;color:#ff9800;border-color:#ff980033}.lbr__leave-group--color-3{background:#4caf501a;color:#4caf50;border-color:#4caf5033}.lbr__leave-group--color-4{background:#e91e631a;color:#e91e63;border-color:#e91e6333}.lbr__leave-group--color-5{background:#3f51b51a;color:#3f51b5;border-color:#3f51b533}.lbr__leave-group--color-6{background:#ff57221a;color:#ff5722;border-color:#ff572233}.lbr__date{display:flex;align-items:center;font-size:11px;color:var(--text-primary)}.lbr__leave-code{display:flex;flex-direction:column;gap:1px;min-width:80px}.lbr__leave-code-value{font-weight:600;color:var(--text-primary);font-size:11px;font-family:JetBrains Mono,monospace}.lbr__leave-code-label{font-size:9px;color:var(--text-muted)}.lbr__balance-cell{font-weight:600;font-size:12px;text-align:center;padding:4px 8px;border-radius:4px;background:var(--surface-hover);color:var(--text-primary)}.lbr__balance-cell--positive{background:#4caf501a;color:#4caf50}.lbr__balance-cell--negative{background:#f443361a;color:#f44336}.lbr__balance-cell--deduction{background:#ff98001a;color:#ff9800}.lbr__balance-cell--closing{background:#2196f31a;color:#2196f3;font-weight:700}.lbr__balance-cell--negative-total{background:#f4433633;color:#f44336;font-weight:700;border:1px solid rgba(244,67,54,.3)}.lbr__footer-stats{display:flex;gap:14px;flex-wrap:wrap}.lbr__footer-stat-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-secondary);font-weight:500}@media (max-width: 1200px){.lbr__filters-grid{grid-template-columns:1fr}.lbr__header{flex-direction:column;gap:12px}.lbr__header-actions{width:100%}.lbr__action-buttons{flex-wrap:wrap}.lbr__action-button{flex:1;min-width:120px}}@media (max-width: 768px){.lbr-container{padding:8px}.lbr__report-container{height:calc(100vh - 16px);border-radius:8px}.lbr__header,.lbr__filters-section,.lbr__table-section{padding:12px 14px}.lbr__title{font-size:17px}.lbr__filters-actions{width:100%;order:3;margin-top:8px}.lbr__table{min-width:1200px}}@media (max-width: 480px){.lbr__action-button{min-width:100%}.lbr__action-buttons{flex-direction:column}.lbr__instruction-box,.lbr__error-box,.lbr__empty-box{padding:20px;margin:0 12px}.lbr__filters-header{flex-direction:column;align-items:flex-start}.lbr__table{min-width:1000px}}.tsv-wrap{width:100%;min-height:0;display:flex;flex-direction:column;flex:1;font-family:var(--font-family)}.tsv-overlay{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-6) var(--space-4)}.tsv-skeleton-list{width:100%;display:flex;flex-direction:column;gap:var(--space-2)}.tsv-skeleton-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--surface-page);animation:tsvPulse 1.3s ease-in-out infinite}@keyframes tsvPulse{0%,to{opacity:.55}50%{opacity:1}}.tsv-sk{height:10px;border-radius:var(--radius-pill);background:var(--border-color);flex-shrink:1;min-width:24px}.tsv-sk-pill{height:20px}.tsv-state-box{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-2);max-width:380px}.tsv-icon-wrap{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--brand-primary-light);color:var(--brand-primary);margin-bottom:var(--space-1)}.tsv-icon-wrap svg{font-size:28px}.tsv-icon-wrap--error{background:var(--status-danger-light);color:var(--status-danger)}.tsv-ico-btn{font-size:var(--icon-size-sm)!important}.tsv-title{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.tsv-desc{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.tsv-btn{display:inline-flex;align-items:center;gap:6px;margin-top:var(--space-1);height:var(--control-height-sm);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;border:1px solid transparent;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease}.tsv-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none}.tsv-btn--primary:hover{opacity:.9}.tsv-btn--primary:active{transform:scale(.97)}.tsv-btn--outline{background:transparent;color:var(--brand-primary);border-color:var(--brand-primary)}.tsv-btn--outline:hover{background:var(--brand-primary-light)}.tsv-btn--outline:active{transform:scale(.97)}.tsv-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.table-scroll-container{width:100%;overflow:auto;min-height:0;flex:1;-webkit-overflow-scrolling:touch}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0;flex-wrap:wrap}.table-footer-text{font-size:var(--fs-sm);color:var(--text-secondary)}@media (max-width: 768px){.tsv-overlay{padding:var(--space-5) var(--space-3)}.table-footer{padding:var(--space-2) var(--space-3)}}@media (max-width: 600px){.table-footer{justify-content:center;text-align:center}}.opr-container{min-height:100vh;background:var(--surface-page);font-family:Inter,sans-serif;box-sizing:border-box;display:flex;flex-direction:column;flex:1}.opr__report-container{background:var(--surface-card);border-radius:12px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);overflow:hidden;animation:slideUp .3s ease;display:flex;flex-direction:column;height:calc(100vh - 32px)}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.opr__header{padding:16px 22px;background:var(--brand-gradient);color:var(--text-on-brand);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-shrink:0;flex-wrap:wrap}.opr__header-left{display:flex;align-items:center;gap:12px}.opr__header-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffff29;color:var(--text-on-brand);flex-shrink:0}.opr__header-content{flex:1}.opr__title{font-size:18px;font-weight:700;margin:0;letter-spacing:-.2px}.opr__subtitle{font-size:12.5px;opacity:.9;margin:2px 0 0;font-weight:400}.opr__header-actions{display:flex}.opr__action-buttons{display:flex;gap:8px}.opr__action-button{padding:9px 16px;border:1.5px solid transparent;border-radius:8px;font-weight:600;font-size:13px;font-family:inherit;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:6px;min-width:100px;justify-content:center;height:36px;white-space:nowrap}.opr__action-button--export{background:#ffffff24;color:var(--text-on-brand);border-color:#ffffff59}.opr__action-button--export:hover:not(:disabled){background:#ffffff3d;transform:translateY(-1px)}.opr__action-button--view{background:var(--surface-card);color:var(--brand-primary-dark);box-shadow:var(--shadow-sm)}.opr__action-button--view:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.opr__action-button--reset{background:transparent;color:var(--text-on-brand);border:1px solid rgba(255,255,255,.35)}.opr__action-button--reset:hover:not(:disabled){background:#ffffff24;border-color:#fff;transform:translateY(-1px)}.opr__action-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.opr__filters-section{padding:14px 22px;background:var(--surface-card);border-bottom:1px solid var(--border-color);flex-shrink:0;position:relative;z-index:20}.opr__filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.opr__filters-title{font-size:14.5px;font-weight:700;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:6px}.opr__filters-actions{display:flex;gap:6px;flex-wrap:wrap}.opr__filter-tag{background:var(--surface-card);border:1px solid var(--border-color);border-radius:12px;padding:4px 8px;font-size:11px;color:var(--text-secondary);display:inline-flex;align-items:center;gap:4px;box-shadow:var(--shadow-sm);height:24px}.opr__filter-tag-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0;width:14px;height:14px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .15s ease}.opr__filter-tag-remove:hover{background:var(--surface-hover);color:var(--text-secondary)}.opr__filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.opr__filter-group{display:flex;flex-direction:column;gap:6px}.opr__filter-label{font-size:12.5px;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.opr__filter-select{font-size:13px}.opr__filter-select .opr-select__control{border:1px solid var(--border-color);border-radius:8px;min-height:36px;transition:all .15s ease;background:var(--surface-card);box-shadow:none;font-size:13px}.opr__filter-select .opr-select__control:hover{border-color:var(--brand-primary)}.opr__filter-select .opr-select__control--is-focused{border-color:var(--brand-primary)!important;box-shadow:0 0 0 3px var(--brand-primary-light)!important}.opr__filter-select .opr-select__menu{z-index:1000;box-shadow:var(--shadow-md);border-radius:8px;border:1px solid var(--border-color);font-size:13px}.opr__filter-select .opr-select__option{padding:8px 12px;font-size:13px}.opr__filter-select .opr-select__option--is-selected{background-color:var(--brand-primary)!important;color:var(--text-on-brand)!important}.opr__filter-select .opr-select__option--is-focused{background-color:var(--brand-primary-light)}.opr__select-placeholder{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:13px}.opr__employee-option{display:flex;align-items:center;gap:8px;padding:4px 0}.opr__employee-info{display:flex;flex-direction:column}.opr__employee-name{font-weight:600;color:var(--text-primary);font-size:13px}.opr__employee-details{display:flex;flex-direction:column;gap:1px}.opr__employee-id,.opr__employee-dept{font-size:10px;color:var(--text-muted)}.opr__date-input-container{position:relative}.opr__date-input{width:100%;padding:8px 32px 8px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:13px;font-family:JetBrains Mono,monospace;background:var(--surface-card);color:var(--text-primary);height:36px;transition:all .15s ease;box-sizing:border-box}.opr__date-input:hover{border-color:var(--brand-primary)}.opr__date-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-primary-light)}.opr__date-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.opr__table-section{padding:16px 20px;flex:1;min-height:0;display:flex;flex-direction:column}.opr__table-area{flex:1;min-height:0;display:flex;flex-direction:column}.opr__table-wrapper{border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background:var(--surface-card);flex:1;min-height:0;display:flex;flex-direction:column}.opr__table-container{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.opr__table-container::-webkit-scrollbar{width:6px;height:6px}.opr__table-container::-webkit-scrollbar-track{background:var(--surface-hover)}.opr__table-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.opr__table-container::-webkit-scrollbar-thumb:hover{background:var(--brand-primary)}.opr__table{width:100%;border-collapse:collapse;min-width:2200px;font-size:12px}.opr__table-header{position:sticky;top:0;z-index:10;background:var(--brand-primary-dark)}.opr__table-header-cell{padding:10px 8px;font-size:11px;font-weight:700;color:var(--text-on-brand);text-align:left;white-space:nowrap;position:relative;border-bottom:1px solid rgba(255,255,255,.14);text-transform:uppercase;letter-spacing:.3px}.opr__table-header-cell--sticky{position:sticky;left:0;z-index:11;background:inherit;min-width:40px}.opr__table-body{background:var(--surface-card)}.opr__table-row{border-bottom:1px solid var(--border-color);transition:all .15s ease}.opr__table-row:hover{background:var(--brand-primary-light)}.opr__table-row:nth-child(2n){background:var(--surface-hover)}.opr__table-row:nth-child(2n):hover{background:var(--brand-primary-light)}.opr__table-cell{padding:9px 8px;font-size:12px;color:var(--text-secondary);border-right:1px solid var(--border-color);white-space:nowrap}.opr__table-cell--sticky-no{position:sticky;left:0;z-index:5;background:inherit;font-weight:600;min-width:40px;border-right:2px solid var(--border-color)}.opr__row-index{font-weight:600;color:var(--brand-primary);text-align:center;font-size:11px;font-family:JetBrains Mono,monospace}.opr__emp-no{font-family:JetBrains Mono,monospace;font-weight:600;color:var(--text-primary);font-size:11px}.opr__emp-name{display:flex;flex-direction:column;gap:2px;min-width:120px}.opr__emp-name-primary{font-weight:600;color:var(--text-primary);font-size:12px}.opr__emp-designation{font-size:10px;color:var(--text-muted)}.opr__dept,.opr__organization{color:var(--text-secondary);font-size:11px}.opr__numeric-cell{font-weight:700;font-size:12px;text-align:center;padding:4px 8px;border-radius:4px;background:var(--surface-hover);color:var(--text-primary);font-family:JetBrains Mono,monospace}.opr__numeric-cell--positive{background:#4caf501f;color:#2e7d32}.opr__numeric-cell--negative{background:#f443361f;color:#c62828}.opr__numeric-cell--warning{background:#ff98001f;color:#ef6c00}.opr__category,.opr__grade{padding:4px 8px;background-color:var(--brand-primary-light);border-radius:4px;text-align:center;font-size:12px;font-weight:600;color:var(--brand-primary-dark)}.opr__date-range{font-size:12px;color:var(--text-secondary);white-space:nowrap;font-family:JetBrains Mono,monospace}.opr__leave-text{font-size:12px;color:var(--text-primary);font-weight:500;line-height:1.5;white-space:normal;word-break:break-word;max-width:200px}.opr__deductions{display:flex;flex-direction:column;gap:4px;min-width:150px}.opr__deduction-item{display:flex;flex-direction:column;padding:4px 8px;background-color:#fff3e0;border-radius:4px;border-left:3px solid #ff9800;font-size:12px}.opr__deduction-head{font-weight:700;color:#b85c00}.opr__deduction-value{color:var(--text-secondary);font-size:11px;margin-top:2px;font-family:JetBrains Mono,monospace}.opr__no-data{color:var(--text-muted);font-style:italic;text-align:center;padding:8px}.opr__table-cell--leaves{min-width:150px}.opr__table-cell--deductions{min-width:200px}.opr__footer-stats{display:flex;gap:14px;flex-wrap:wrap}.opr__footer-stat-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-secondary);font-weight:500}@media (max-width: 1200px){.opr__filters-grid{grid-template-columns:1fr}.opr__header{flex-direction:column;gap:12px}.opr__header-actions{width:100%}.opr__action-buttons{flex-wrap:wrap}.opr__action-button{flex:1;min-width:120px}}@media (max-width: 768px){.opr-container{padding:8px}.opr__report-container{height:calc(100vh - 16px);border-radius:8px}.opr__header,.opr__filters-section,.opr__table-section{padding:12px 14px}.opr__table-section{padding:0 14px}.opr__title{font-size:17px}.opr__filters-actions{width:100%;order:3;margin-top:8px}.opr__table{min-width:2000px}}@media (max-width: 480px){.opr__action-button{min-width:100%}.opr__action-buttons{flex-direction:column}.opr__instruction-box,.opr__error-box,.opr__empty-box{padding:20px;margin:0 12px}.opr__filters-header{flex-direction:column;align-items:flex-start}.opr__table{min-width:1800px}}.pr-root{display:flex;flex-direction:column;flex:1;min-height:100vh;background:var(--surface-page);font-family:Inter,sans-serif;box-sizing:border-box}.pr-card{background:var(--surface-card);border-radius:12px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);display:flex;flex-direction:column;height:calc(100vh - 32px);overflow:hidden}.pr-header{background:var(--brand-gradient);padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;flex-wrap:wrap}.pr-header__left{display:flex;align-items:center;gap:12px}.pr-header__icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#ffffff29;color:var(--text-on-brand);flex-shrink:0}.pr-header__title{margin:0;font-size:18px;font-weight:700;color:var(--text-on-brand);letter-spacing:-.2px}.pr-header__subtitle{margin:2px 0 0;font-size:12.5px;color:#ffffffd9}.pr-header__actions{display:flex;gap:10px}.pr-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:8px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;border:1.5px solid transparent;transition:opacity .15s ease,background .15s ease,transform .1s ease,box-shadow .15s ease;white-space:nowrap}.pr-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.pr-btn--primary{background:var(--surface-card);color:var(--brand-primary-dark);box-shadow:var(--shadow-sm)}.pr-btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.pr-btn--ghost{background:#ffffff24;color:var(--text-on-brand);border-color:#ffffff59}.pr-btn--ghost:hover:not(:disabled){background:#ffffff3d}.pr-toggle{display:inline-flex;border:1.5px solid var(--border-color);border-radius:8px;overflow:hidden;flex-shrink:0}.pr-toggle__btn{padding:9px 16px;font-size:12.5px;font-weight:600;font-family:inherit;color:var(--text-secondary);background:var(--surface-card);border:none;cursor:pointer;transition:background .15s ease,color .15s ease;white-space:nowrap}.pr-toggle__btn+.pr-toggle__btn{border-left:1.5px solid var(--border-color)}.pr-toggle__btn.is-active{background:var(--brand-gradient);color:var(--text-on-brand)}.pr-toggle__btn:hover:not(.is-active){background:var(--surface-hover);color:var(--text-primary)}.pr-filterbar{display:flex;align-items:flex-end;gap:14px;padding:14px 22px;border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0;flex-wrap:wrap;position:relative;z-index:20}.pr-filter-group{display:flex;flex-direction:column;min-width:150px;gap:4px}.pr-filter-group--wide{min-width:260px;flex:1}.pr-filter-label{font-size:12px;font-weight:600;color:var(--text-secondary)}.pr-filter-actions{display:flex;gap:8px;margin-left:auto}.pr-table-area{flex:1;min-height:0}.pr-table{width:100%;border-collapse:separate;border-spacing:0}.pr-thead{position:sticky;top:0;z-index:25}.pr-th{padding:9px 10px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-on-brand);background:var(--brand-primary-dark);text-align:left;white-space:nowrap;border-bottom:1px solid var(--brand-primary-dark);border-right:1px solid rgba(255,255,255,.14)}.pr-th--num{text-align:center}.pr-th--sticky{position:sticky;z-index:30;background:var(--brand-primary-dark);border-right:2px solid var(--text-on-brand)}.pr-th-sort{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:0;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.pr-th-sort:hover{opacity:.85}.pr-row{animation:prFadeIn .2s ease both}.pr-row:nth-child(2n){background:var(--surface-hover)}.pr-row:hover,.pr-row:hover .pr-td--sticky{background:var(--brand-primary-light)}.pr-row:nth-child(2n) .pr-td--sticky{background:var(--surface-hover)}@keyframes prFadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.pr-td{padding:7px 10px;font-size:12px;color:var(--text-primary);text-align:left;border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);white-space:nowrap;background:var(--surface-card)}.pr-td--num{text-align:center}.pr-td--mono{font-family:JetBrains Mono,monospace;font-size:11.5px}.pr-td--sticky{position:sticky;z-index:15;border-right:2px solid var(--border-color)}@media (max-width: 768px){.pr-root{padding:8px}.pr-card{height:calc(100vh - 16px);border-radius:8px}.pr-header,.pr-filterbar{padding:12px 14px}.pr-filter-group{min-width:100%}.pr-filter-actions{width:100%;margin-left:0}.pr-btn{flex:1;justify-content:center}}.uaa-container{display:flex;flex-direction:column;height:100%;position:relative;z-index:1}.uaa__report-container{flex:1;padding:16px;margin:16px;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;position:relative;z-index:1}.uaa__header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;position:relative;z-index:1}.uaa__title{font-size:20px;color:#55565b;margin:0;font-weight:600}.uaa__action-buttons{display:flex;gap:12px}.uaa__export-button,.uaa__view-button{padding:10px 20px;border:none;border-radius:6px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,#2196f3,#0d47a1);box-shadow:0 2px 5px #0003}.uaa__export-button:hover,.uaa__view-button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000004d;background:linear-gradient(135deg,#1976d2,#0b3d91)}.uaa__filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px;position:relative;z-index:1000}.uaa__filter-group{display:flex;flex-direction:column;min-width:160px;position:relative;z-index:1001}.uaa__search-group{flex:1;min-width:250px}.uaa__filter-select{font-size:13px;min-width:180px;position:relative;z-index:1002}.uaa__filter-select .select__menu{z-index:9999!important}.uaa__filter-label{font-size:13px;margin-bottom:4px;color:#555;font-weight:600}.uaa__date-input,.uaa__search-input{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px;height:36px;transition:border-color .3s ease;background-color:#fff}.uaa__search-input{width:100%}.uaa__date-input:focus,.uaa__search-input:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f333}.select__control{min-height:36px!important;z-index:1002;border:1px solid #ddd;border-radius:4px}.select__control:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f333}.select__value-container{padding:0 8px!important}.select__placeholder{font-size:13px!important}.select__menu{z-index:9999!important}.uaa__table-wrapper{margin-top:15px;position:relative;z-index:1}.uaa__table-scroll-container{max-height:500px;overflow-y:auto;overflow-x:auto;position:relative;border:1px solid #e0e0e0;border-radius:8px;z-index:1;background-color:#fff}.uaa__table{width:100%;border-collapse:collapse;min-width:1000px}.uaa__table-head{background:linear-gradient(135deg,#2196f3,#0d47a1);position:sticky;top:0;z-index:10}.uaa__table-header{padding:12px 8px;font-size:12px;font-weight:600;color:#fff;text-align:left;border:1px solid rgba(255,255,255,.2);white-space:nowrap}.uaa__table-body{background-color:#fff}.uaa__table-row{background-color:#fff;transition:background-color .3s ease}.uaa__table-row:hover{background-color:#f5f9ff}.uaa__table-row:nth-child(odd){background-color:#fafafa}.uaa__table-row:nth-child(odd):hover{background-color:#f0f7ff}.uaa__table-cell{padding:10px 8px;font-size:12px;color:#55565b;text-align:left;border:1px solid #e0e0e0;white-space:nowrap;vertical-align:top}.uaa__value-cell{max-width:200px;word-wrap:break-word;white-space:normal}.uaa__value-content{max-height:60px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.uaa__action-badge{padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.uaa__action-insert{background-color:#e8f5e8;color:#2e7d32;border:1px solid #c8e6c9}.uaa__action-update{background-color:#fff8e1;color:#f57f17;border:1px solid #ffecb3}.uaa__action-delete{background-color:#ffebee;color:#c62828;border:1px solid #ffcdd2}.uaa__action-select{background-color:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.uaa__action-login{background-color:#f3e5f5;color:#7b1fa2;border:1px solid #e1bee7}.uaa__action-logout{background-color:#e0f2f1;color:#00695c;border:1px solid #b2dfdb}.uaa__message-row{height:200px}.uaa__loading-cell,.uaa__instruction-cell{text-align:center;padding:40px}.uaa__message-box{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;color:#2196f3}.uaa__spinner{width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #2196F3;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.uaa__instruction-box{background-color:#f0f8ff;border-left:4px solid #2196F3;border-radius:4px;padding:20px;box-shadow:0 2px 8px #0000000d;display:inline-block;max-width:80%}.uaa__instruction-box p{margin:0;font-size:15px;color:#2196f3;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}@media (max-width: 768px){.uaa__filter-row{flex-direction:column;align-items:stretch}.uaa__filter-group,.uaa__search-group{min-width:auto}.uaa__header-row{flex-direction:column;gap:12px;align-items:flex-start}.uaa__action-buttons{width:100%;justify-content:flex-end}.uaa__table-scroll-container{max-height:400px}}.dvs-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.dvs-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);color:var(--text-on-brand)}.dvs-head-back,.dvs-head-icon{width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center}.dvs-head-back{padding:0;cursor:pointer}.dvs-head-back:hover{background:rgba(var(--text-on-brand-rgb),.28)}.dvs-head-back svg,.dvs-head-icon svg{font-size:22px}.dvs-head-text{flex:1;min-width:0}.dvs-head-text h2{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.dvs-head-text h2 span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:rgba(var(--text-on-brand-rgb),.88)}.dvs-head-text p{margin:2px 0 0;max-width:880px;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.88);line-height:var(--lh-base)}.dvs-head-btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border:1px solid var(--surface-card);border-radius:var(--radius-md);background:var(--surface-card);color:var(--brand-primary-dark);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;flex-shrink:0}.dvs-head-btn svg{font-size:var(--icon-size-sm)}.dvs-head-btn:hover:not(:disabled){box-shadow:var(--shadow-md)}.dvs-head-btn:disabled{opacity:.6;cursor:not-allowed}.dvs-card{background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);min-width:0}.dvs-search{position:relative;flex:1;display:flex;align-items:center;min-width:0}.dvs-search-ico{position:absolute;left:var(--space-2);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.dvs-search input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.dvs-search input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dvs-search button{position:absolute;right:6px;width:18px;height:18px;padding:0;border:none;border-radius:50%;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer}.dvs-search button svg{font-size:12px}.dvs-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid transparent;font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);white-space:nowrap;cursor:pointer;transition:box-shadow var(--transition-fast),background var(--transition-fast)}.dvs-btn svg{font-size:var(--icon-size-sm)}.dvs-btn:disabled{opacity:.55;cursor:not-allowed}.dvs-btn--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--fs-xs)}.dvs-btn--primary{background:var(--brand-gradient);color:var(--text-on-brand)}.dvs-btn--primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.dvs-btn--plain{background:var(--surface-card);color:var(--text-secondary);border-color:var(--border-strong)}.dvs-btn--plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.dvs-btn--outline{background:var(--surface-card);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dvs-btn--outline:hover:not(:disabled){background:var(--brand-primary-light)}.dvs-btn--danger{background:var(--status-danger);color:var(--text-on-brand)}.dvs-btn--outline-danger{background:var(--surface-card);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.4)}.dvs-btn--outline-danger:hover:not(:disabled){background:var(--status-danger-light)}.dvs-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);flex-shrink:0;padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.dvs-icon-btn svg{font-size:var(--icon-size-sm)}.dvs-icon-btn:hover:not(:disabled){background:var(--brand-primary-light);color:var(--brand-primary);border-color:var(--brand-primary-tint2)}.dvs-icon-btn--danger:hover:not(:disabled){background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.3)}.dvs-icon-btn:disabled{opacity:.45;cursor:not-allowed}.dvs-link{padding:0;border:none;background:none;color:var(--brand-primary);font-family:inherit;font-size:inherit;font-weight:var(--fw-semibold);cursor:pointer;text-decoration:underline}.dvs-rotating{animation:dvsSpin .8s linear infinite}.dvs-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:dvsSpin .7s linear infinite}@keyframes dvsSpin{to{transform:rotate(360deg)}}@keyframes dvsShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dvs-form{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);max-width:920px}.dvs-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.dvs-section-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.dvs-section-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.dvs-section-head p strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.dvs-readonly{display:inline-flex;align-items:center;gap:4px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold);line-height:24px}.dvs-readonly svg{font-size:14px}.dvs-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.dvs-field{display:flex;flex-direction:column;gap:6px;min-width:0;padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-page)}.dvs-field>label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.dvs-field>small{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.dvs-err{color:var(--status-danger)!important;font-weight:var(--fw-semibold)}.dvs-duration{display:grid;grid-template-columns:110px minmax(0,1fr);gap:var(--space-2)}.dvs-input{width:100%;height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;box-sizing:border-box}.dvs-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.dvs-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.dvs-select{cursor:pointer}.dvs-presets{display:flex;flex-wrap:wrap;gap:4px}.dvs-preset{height:26px;padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.dvs-preset:hover:not(:disabled){background:var(--surface-hover)}.dvs-preset--on{background:var(--brand-primary-light);border-color:var(--brand-primary);color:var(--brand-primary-dark)}.dvs-preset:disabled{cursor:not-allowed;opacity:.6}.dvs-preview{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg);border:1px dashed var(--border-strong)}.dvs-timeline{display:flex;height:34px;border-radius:var(--radius-md);overflow:hidden;gap:2px}.dvs-seg{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;overflow:hidden;white-space:nowrap;font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.dvs-seg svg{font-size:14px;flex-shrink:0}.dvs-seg--online{background:var(--status-success-light);color:var(--status-success)}.dvs-seg--offline{background:var(--status-warning-light);color:var(--status-warning)}.dvs-seg--dead{flex:1;background:var(--status-danger-light);color:var(--status-danger)}.dvs-scale{position:relative;height:16px;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.dvs-scale span{position:absolute;top:0;transform:translate(-50%);white-space:nowrap}.dvs-scale span:first-child{left:0;transform:none}.dvs-example{margin:0;display:flex;gap:6px;font-size:var(--fs-xs);color:var(--text-secondary);line-height:var(--lh-base)}.dvs-example svg{flex-shrink:0;font-size:var(--icon-size-sm);color:var(--status-info)}.dvs-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border-color)}.dvs-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.dvs-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.dvs-state-ico svg{font-size:26px}.dvs-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.dvs-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.dvs-state-desc{margin:0 0 var(--space-1);max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.dvs-sk-wrap{display:flex;flex-direction:column;gap:6px;padding:var(--space-4);max-width:920px}.dvs-sk{height:48px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:dvsShimmer 1.4s infinite linear}@media (max-width: 768px){.dvs-fields{grid-template-columns:minmax(0,1fr)}}@media (max-width: 600px){.dvs-head{padding:var(--space-3)}.dvs-head-text p,.dvs-head-btn span{display:none}.dvs-form{padding:var(--space-3)}.dvs-scale span:not(:first-child){display:none}.dvs-actions .dvs-btn{flex:1}}.sys-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.sys-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.sys-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.sys-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.sys-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.sys-header-ico svg{font-size:20px}.sys-header-text{min-width:0}.sys-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.sys-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.sys-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sys-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.sys-hbtn svg{font-size:var(--icon-size-sm)}.sys-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.sys-hbtn:disabled{opacity:.45;cursor:not-allowed}.sys-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.sys-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.sys-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.sys-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.sys-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.sys-search input:focus,.sys-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.sys-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.sys-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sys-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.sys-search button svg{font-size:15px}.sys-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.sys-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.sys-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.sys-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.sys-chip svg{font-size:14px;color:var(--text-muted)}.sys-chip--muted{color:var(--text-muted)}.sys-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.sys-chip--warn b{color:var(--status-warning)}.sys-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sys-table-wrap{flex:1;min-height:0;overflow:auto}.sys-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.sys-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.sys-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.sys-table tbody tr:nth-child(odd) td{background:#fff}.sys-table tbody tr:nth-child(2n) td{background:#f9f9f9}.sys-table tbody tr:hover td{background:var(--surface-hover)}.sys-num{text-align:right!important}.sys-col-act{width:1%;white-space:nowrap;text-align:right!important}.sys-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.sys-name,.sys-strong{font-weight:var(--fw-semibold)}.sys-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.sys-muted{color:var(--text-muted)}.sys-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.sys-tag svg{font-size:13px}.sys-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.sys-pill--info{background:var(--status-info-light);color:var(--status-info)}.sys-pill--ok{background:var(--status-success-light);color:var(--status-success)}.sys-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.sys-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.sys-row-actions{display:inline-flex;gap:4px}.sys-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.sys-act svg{font-size:16px}.sys-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.sys-act--danger{color:var(--status-danger)}.sys-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.sys-act:disabled{opacity:.4;cursor:not-allowed}.sys-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.sys-footer-hint{color:var(--text-muted)}.sys-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.sys-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:sys-shimmer 1.4s infinite linear}.sys-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.sys-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.sys-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sys-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.sys-state-ico svg{font-size:24px}.sys-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.sys-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.sys-btn svg{font-size:var(--icon-size-sm)}.sys-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sys-btn:disabled{opacity:.5;cursor:not-allowed}.sys-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.sys-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.sys-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.sys-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.sys-btn--plain{background:var(--surface-card)}.sys-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.sys-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.sys-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.sys-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.sys-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.sys-dlg-head>div{flex:1;min-width:0}.sys-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.sys-dlg-ico svg{font-size:19px}.sys-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sys-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sys-dlg-x svg{font-size:18px}.sys-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sys-dlg-body p{margin:0}.sys-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.sys-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.sys-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:sys-rotate .7s linear infinite}.sys-spin--light{color:var(--text-on-brand)}.sys-rotating{animation:sys-rotate .8s linear infinite}@keyframes sys-rotate{to{transform:rotate(360deg)}}@keyframes sys-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.sys-chips{margin-left:0;width:100%}.sys-search{max-width:none}}@media (max-width: 720px){.sys-card{height:auto;min-height:0}.sys-header,.sys-toolbar,.sys-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.sys-hbtn--solid span{display:none}.sys-table-wrap{overflow:visible}.sys-table thead{display:none}.sys-table,.sys-table tbody,.sys-table tr,.sys-table td{display:block;width:100%}.sys-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.sys-table tbody tr:nth-child(odd) td,.sys-table tbody tr:nth-child(2n) td{background:transparent}.sys-table td{border:none;padding:3px var(--space-3);text-align:left!important}.sys-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.sys-col-act{width:auto}}.sys-layout{flex:1;min-height:0;display:grid;grid-template-columns:230px minmax(0,1fr)}.sys-nav{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-2);border-right:1px solid var(--border-color);background:var(--surface-page);overflow-y:auto}.sys-nav button{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px 10px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-align:left;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.sys-nav button svg{font-size:18px;color:var(--text-muted);flex-shrink:0}.sys-nav button span{flex:1;min-width:0}.sys-nav button:hover{background:var(--surface-hover);color:var(--text-primary)}.sys-nav button.sys-nav--on{background:var(--surface-card);color:var(--brand-primary-dark);box-shadow:inset 3px 0 0 var(--brand-primary-dark),var(--shadow-sm)}.sys-nav button.sys-nav--on svg{color:var(--brand-primary-dark)}.sys-nav em{font-style:normal;min-width:18px;padding:0 6px;border-radius:var(--radius-pill);background:var(--status-warning-light);color:var(--status-warning);font-size:11px;font-weight:var(--fw-bold);text-align:center}.sys-content{min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.sys-main{padding:var(--space-3) var(--space-5) 0;display:flex;flex-direction:column;flex:1}.sys-sec-head{padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color)}.sys-sec-head h2{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.sys-sec-head h2 svg{font-size:20px;color:var(--brand-primary-dark)}.sys-sec-head p{margin:2px 0 0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sys-row{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:var(--space-4);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.sys-row:hover{background:var(--surface-hover)}.sys-row--changed{box-shadow:inset 3px 0 0 var(--brand-primary);background:var(--brand-primary-light)}.sys-row--changed:hover{background:var(--brand-primary-light)}.sys-row--err{box-shadow:inset 3px 0 0 var(--status-danger);background:var(--status-danger-light)}.sys-row--err:hover{background:var(--status-danger-light)}.sys-row--off{opacity:.85}.sys-row--off .sys-row-title b{color:var(--text-secondary)}.sys-row-text{min-width:0}.sys-row-title{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sys-row-title b{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.sys-row-text>p{margin:3px 0 0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sys-row-text code{display:inline-block;margin-top:6px;font-size:11px;color:var(--text-muted);word-break:break-all}.sys-example,.sys-caution{display:flex;align-items:flex-start;gap:6px;margin-top:6px!important;padding:6px 10px;border-radius:var(--radius-md);font-size:var(--fs-xs)!important}.sys-example{background:var(--surface-page);color:var(--text-secondary)}.sys-caution{background:var(--status-warning-light);color:var(--status-warning)!important}.sys-example svg,.sys-caution svg{font-size:15px;flex-shrink:0;margin-top:1px}.sys-row-ctl{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.sys-err{font-size:var(--fs-xs);color:var(--status-danger);font-weight:var(--fw-semibold)}.sys-row-ctl .sys-muted{font-size:var(--fs-xs)}.sys-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-card)}.sys-seg button{height:var(--control-height-sm);padding:0 12px;border:none;border-right:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.sys-seg button:last-child{border-right:none}.sys-seg button:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sys-seg button.sys-seg--on{background:var(--brand-primary-dark);color:var(--text-on-brand)}.sys-seg button:disabled{cursor:not-allowed;opacity:.6}.sys-seg button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.sys-switch{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-secondary);cursor:pointer}.sys-switch input{position:absolute;opacity:0;width:1px;height:1px}.sys-switch-track{position:relative;width:38px;height:20px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast);flex-shrink:0}.sys-switch-track:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.sys-switch input:checked+.sys-switch-track{background:var(--brand-primary-dark)}.sys-switch input:checked+.sys-switch-track:after{transform:translate(18px)}.sys-switch input:focus-visible+.sys-switch-track{box-shadow:var(--focus-ring)}.sys-switch input:disabled+.sys-switch-track{opacity:.5}.sys-num{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sys-input{width:110px;height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.sys-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.sys-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.sys-row--err .sys-input{border-color:var(--status-danger)}.sys-num small{font-size:var(--fs-xs);color:var(--text-muted)}.sys-readonly{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-md);background:var(--surface-page);border:1px dashed var(--border-strong);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-secondary)}.sys-readonly svg{font-size:15px;color:var(--text-muted)}.sys-link{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--brand-primary-dark);text-decoration:none}.sys-link:hover{text-decoration:underline}.sys-link svg{font-size:14px}h3.sys-sub{margin:var(--space-5) 0 0;padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color);font-size:11px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.sys-foot{position:sticky;bottom:0;margin-top:auto;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-3) 0;background:var(--surface-card);border-top:1px solid var(--border-color)}.sys-foot>span{margin-right:auto;font-size:var(--fs-xs)}.sys-pending{color:var(--brand-primary-dark);font-weight:var(--fw-semibold)}@media (max-width: 900px){.sys-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.sys-nav{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--border-color);padding:var(--space-2)}.sys-nav button{width:auto;white-space:nowrap;flex-shrink:0}.sys-nav button.sys-nav--on{box-shadow:inset 0 -3px 0 var(--brand-primary-dark),var(--shadow-sm)}.sys-row{grid-template-columns:1fr;gap:var(--space-2)}}@media (max-width: 720px){.sys-main{padding:var(--space-2) var(--space-3) 0}.sys-content{overflow:visible}}.sec-root{display:flex;flex-direction:column;flex:1;min-width:0;font-family:var(--font-family);color:var(--text-primary)}.sec-card{display:flex;flex-direction:column;min-height:420px;height:calc(100vh - var(--header-height) - 2 * var(--page-padding));background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.sec-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);flex-shrink:0}.sec-header-left{display:flex;align-items:flex-start;gap:var(--space-3);min-width:0;flex:1 1 420px}.sec-header-ico{width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-brand);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25)}.sec-header-ico svg{font-size:20px}.sec-header-text{min-width:0}.sec-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-on-brand);letter-spacing:-.2px}.sec-desc{margin:3px 0 0;max-width:880px;font-size:var(--fs-xs);line-height:var(--lh-base);color:rgba(var(--text-on-brand-rgb),.86)}.sec-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sec-hbtn{height:var(--control-height-sm);min-width:var(--control-height-sm);padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.22);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.sec-hbtn svg{font-size:var(--icon-size-sm)}.sec-hbtn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28);transform:translateY(-1px)}.sec-hbtn:disabled{opacity:.45;cursor:not-allowed}.sec-hbtn--solid{padding:0 var(--space-3);background:var(--surface-card);color:var(--brand-primary-dark);border-color:var(--surface-card)}.sec-hbtn--solid:hover:not(:disabled){background:var(--surface-card);box-shadow:var(--shadow-sm)}.sec-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border-color);background:var(--surface-card);flex-shrink:0}.sec-search{position:relative;flex:1 1 220px;max-width:360px;display:flex;align-items:center}.sec-search input{width:100%;height:var(--control-height-sm);padding:0 28px 0 30px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.sec-search input:focus,.sec-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.sec-search-ico{position:absolute;left:8px;font-size:16px!important;color:var(--text-muted);pointer-events:none}.sec-search button{position:absolute;right:4px;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sec-search button:hover{background:var(--surface-hover);color:var(--text-primary)}.sec-search button svg{font-size:15px}.sec-select{height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm)}.sec-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.sec-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--surface-page);border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);white-space:nowrap}.sec-chip b{color:var(--text-primary);font-variant-numeric:tabular-nums}.sec-chip svg{font-size:14px;color:var(--text-muted)}.sec-chip--muted{color:var(--text-muted)}.sec-chip--warn{background:var(--status-warning-light);border-color:transparent;color:var(--status-warning)}.sec-chip--warn b{color:var(--status-warning)}.sec-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sec-table-wrap{flex:1;min-height:0;overflow:auto}.sec-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.sec-table thead th{position:sticky;top:0;z-index:1;padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-color);text-align:left;font-size:11px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap}.sec-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);vertical-align:middle;color:var(--text-primary);font-variant-numeric:tabular-nums}.sec-table tbody tr:nth-child(odd) td{background:#fff}.sec-table tbody tr:nth-child(2n) td{background:#f9f9f9}.sec-table tbody tr:hover td{background:var(--surface-hover)}.sec-num{text-align:right!important}.sec-col-act{width:1%;white-space:nowrap;text-align:right!important}.sec-code{display:inline-block;min-width:34px;margin-right:var(--space-2);padding:1px 7px;border-radius:var(--radius-sm);background:var(--brand-primary-light);color:var(--brand-primary-dark);border:1px solid rgba(var(--brand-primary-rgb),.25);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-align:center;letter-spacing:.3px}.sec-name,.sec-strong{font-weight:var(--fw-semibold)}.sec-sub{display:block;margin-top:1px;font-size:var(--fs-xs);color:var(--text-muted)}.sec-muted{color:var(--text-muted)}.sec-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--status-info-light);color:var(--status-info);font-size:11px;font-weight:var(--fw-semibold);vertical-align:middle}.sec-tag svg{font-size:13px}.sec-pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-hover);color:var(--text-secondary)}.sec-pill--info{background:var(--status-info-light);color:var(--status-info)}.sec-pill--ok{background:var(--status-success-light);color:var(--status-success)}.sec-pill--warn{background:var(--status-warning-light);color:var(--status-warning)}.sec-pill--bad{background:var(--status-danger-light);color:var(--status-danger)}.sec-row-actions{display:inline-flex;gap:4px}.sec-act{width:30px;height:30px;padding:0;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-card);color:var(--brand-primary-dark);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.sec-act svg{font-size:16px}.sec-act:hover:not(:disabled){background:var(--brand-primary-light);border-color:rgba(var(--brand-primary-rgb),.35)}.sec-act--danger{color:var(--status-danger)}.sec-act--danger:hover:not(:disabled){background:var(--status-danger-light);border-color:rgba(var(--status-danger-rgb),.35)}.sec-act:disabled{opacity:.4;cursor:not-allowed}.sec-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);font-size:var(--fs-xs);color:var(--text-secondary);flex-shrink:0}.sec-footer-hint{color:var(--text-muted)}.sec-sk-list{display:flex;flex-direction:column;gap:8px;padding:var(--space-4)}.sec-sk{height:40px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:sec-shimmer 1.4s infinite linear}.sec-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);text-align:center}.sec-state h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold)}.sec-state p{margin:0;max-width:460px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sec-state-ico{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--surface-page);color:var(--text-muted);display:flex;align-items:center;justify-content:center}.sec-state-ico svg{font-size:24px}.sec-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.sec-btn{height:var(--control-height-sm);padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;white-space:nowrap}.sec-btn svg{font-size:var(--icon-size-sm)}.sec-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sec-btn:disabled{opacity:.5;cursor:not-allowed}.sec-btn--primary{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.sec-btn--primary:hover:not(:disabled){background:var(--brand-primary);color:var(--text-on-brand)}.sec-btn--danger{background:var(--status-danger);border-color:var(--status-danger);color:var(--text-on-brand)}.sec-btn--danger:hover:not(:disabled){background:var(--status-danger);color:var(--text-on-brand);opacity:.9}.sec-btn--plain{background:var(--surface-card)}.sec-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay)}.sec-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;font-family:var(--font-family)}.sec-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color)}.sec-dlg-head h3{margin:0;font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.sec-dlg-head p{margin:2px 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.sec-dlg-head>div{flex:1;min-width:0}.sec-dlg-ico{width:34px;height:34px;flex-shrink:0;border-radius:var(--radius-md);background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.sec-dlg-ico svg{font-size:19px}.sec-dlg-x{width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sec-dlg-x:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sec-dlg-x svg{font-size:18px}.sec-dlg-body{padding:var(--space-4);font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sec-dlg-body p{margin:0}.sec-dlg-warn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning)}.sec-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}.sec-spin{width:14px;height:14px;display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:sec-rotate .7s linear infinite}.sec-spin--light{color:var(--text-on-brand)}.sec-rotating{animation:sec-rotate .8s linear infinite}@keyframes sec-rotate{to{transform:rotate(360deg)}}@keyframes sec-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.sec-chips{margin-left:0;width:100%}.sec-search{max-width:none}}@media (max-width: 720px){.sec-card{height:auto;min-height:0}.sec-header,.sec-toolbar,.sec-footer{padding-left:var(--space-3);padding-right:var(--space-3)}.sec-hbtn--solid span{display:none}.sec-table-wrap{overflow:visible}.sec-table thead{display:none}.sec-table,.sec-table tbody,.sec-table tr,.sec-table td{display:block;width:100%}.sec-table tr{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color)}.sec-table tbody tr:nth-child(odd) td,.sec-table tbody tr:nth-child(2n) td{background:transparent}.sec-table td{border:none;padding:3px var(--space-3);text-align:left!important}.sec-table td[data-label]:before{content:attr(data-label);display:block;font-size:10.5px;font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.sec-col-act{width:auto}}.sec-layout{flex:1;min-height:0;display:grid;grid-template-columns:230px minmax(0,1fr)}.sec-nav{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-2);border-right:1px solid var(--border-color);background:var(--surface-page);overflow-y:auto}.sec-nav button{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px 10px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);text-align:left;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.sec-nav button svg{font-size:18px;color:var(--text-muted);flex-shrink:0}.sec-nav button span{flex:1;min-width:0}.sec-nav button:hover{background:var(--surface-hover);color:var(--text-primary)}.sec-nav button.sec-nav--on{background:var(--surface-card);color:var(--brand-primary-dark);box-shadow:inset 3px 0 0 var(--brand-primary-dark),var(--shadow-sm)}.sec-nav button.sec-nav--on svg{color:var(--brand-primary-dark)}.sec-nav em{font-style:normal;min-width:18px;padding:0 6px;border-radius:var(--radius-pill);background:var(--status-warning-light);color:var(--status-warning);font-size:11px;font-weight:var(--fw-bold);text-align:center}.sec-content{min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.sec-main{padding:var(--space-3) var(--space-5) 0;display:flex;flex-direction:column;flex:1}.sec-sec-head{padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color)}.sec-sec-head h2{margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text-primary)}.sec-sec-head h2 svg{font-size:20px;color:var(--brand-primary-dark)}.sec-sec-head p{margin:2px 0 0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sec-row{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:var(--space-4);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.sec-row:hover{background:var(--surface-hover)}.sec-row--changed{box-shadow:inset 3px 0 0 var(--brand-primary);background:var(--brand-primary-light)}.sec-row--changed:hover{background:var(--brand-primary-light)}.sec-row--err{box-shadow:inset 3px 0 0 var(--status-danger);background:var(--status-danger-light)}.sec-row--err:hover{background:var(--status-danger-light)}.sec-row--off{opacity:.85}.sec-row--off .sec-row-title b{color:var(--text-secondary)}.sec-row-text{min-width:0}.sec-row-title{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sec-row-title b{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.sec-row-text>p{margin:3px 0 0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.sec-row-text code{display:inline-block;margin-top:6px;font-size:11px;color:var(--text-muted);word-break:break-all}.sec-example,.sec-caution{display:flex;align-items:flex-start;gap:6px;margin-top:6px!important;padding:6px 10px;border-radius:var(--radius-md);font-size:var(--fs-xs)!important}.sec-example{background:var(--surface-page);color:var(--text-secondary)}.sec-caution{background:var(--status-warning-light);color:var(--status-warning)!important}.sec-example svg,.sec-caution svg{font-size:15px;flex-shrink:0;margin-top:1px}.sec-row-ctl{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.sec-err{font-size:var(--fs-xs);color:var(--status-danger);font-weight:var(--fw-semibold)}.sec-row-ctl .sec-muted{font-size:var(--fs-xs)}.sec-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-card)}.sec-seg button{height:var(--control-height-sm);padding:0 12px;border:none;border-right:1px solid var(--border-color);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.sec-seg button:last-child{border-right:none}.sec-seg button:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.sec-seg button.sec-seg--on{background:var(--brand-primary-dark);color:var(--text-on-brand)}.sec-seg button:disabled{cursor:not-allowed;opacity:.6}.sec-seg button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.sec-switch{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-secondary);cursor:pointer}.sec-switch input{position:absolute;opacity:0;width:1px;height:1px}.sec-switch-track{position:relative;width:38px;height:20px;border-radius:var(--radius-pill);background:var(--border-strong);transition:background var(--transition-fast);flex-shrink:0}.sec-switch-track:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--surface-card);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast)}.sec-switch input:checked+.sec-switch-track{background:var(--brand-primary-dark)}.sec-switch input:checked+.sec-switch-track:after{transform:translate(18px)}.sec-switch input:focus-visible+.sec-switch-track{box-shadow:var(--focus-ring)}.sec-switch input:disabled+.sec-switch-track{opacity:.5}.sec-num{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.sec-input{width:110px;height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.sec-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.sec-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.sec-row--err .sec-input{border-color:var(--status-danger)}.sec-num small{font-size:var(--fs-xs);color:var(--text-muted)}.sec-readonly{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-md);background:var(--surface-page);border:1px dashed var(--border-strong);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-secondary)}.sec-readonly svg{font-size:15px;color:var(--text-muted)}.sec-link{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--brand-primary-dark);text-decoration:none}.sec-link:hover{text-decoration:underline}.sec-link svg{font-size:14px}h3.sec-sub{margin:var(--space-5) 0 0;padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color);font-size:11px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.sec-foot{position:sticky;bottom:0;margin-top:auto;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;padding:var(--space-3) 0;background:var(--surface-card);border-top:1px solid var(--border-color)}.sec-foot>span{margin-right:auto;font-size:var(--fs-xs)}.sec-pending{color:var(--brand-primary-dark);font-weight:var(--fw-semibold)}@media (max-width: 900px){.sec-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.sec-nav{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--border-color);padding:var(--space-2)}.sec-nav button{width:auto;white-space:nowrap;flex-shrink:0}.sec-nav button.sec-nav--on{box-shadow:inset 0 -3px 0 var(--brand-primary-dark),var(--shadow-sm)}.sec-row{grid-template-columns:1fr;gap:var(--space-2)}}@media (max-width: 720px){.sec-main{padding:var(--space-2) var(--space-3) 0}.sec-content{overflow:visible}}.sec-input{width:100%;box-sizing:border-box;font-weight:var(--fw-medium)}.sec-input--num{width:110px;font-weight:var(--fw-semibold)}.sec-textarea{height:auto;min-height:88px;padding:var(--space-2);line-height:var(--lh-base);resize:vertical;font-weight:var(--fw-regular)}.sec-row--wide{grid-template-columns:minmax(0,1fr) minmax(280px,1.2fr)}.sec-chks{display:flex;flex-wrap:wrap;gap:6px}.sec-chk{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary);cursor:pointer}.sec-chk input{accent-color:var(--brand-primary-dark);margin:0}.sec-chk--on{border-color:var(--brand-primary-dark);background:var(--brand-primary-light);color:var(--brand-primary-dark)}.sec-flow{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--surface-page);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-secondary)}.sec-flow em{font-style:normal;padding:2px 10px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-primary)}.sec-flow em.sec-flow-on{background:var(--brand-primary-dark);border-color:var(--brand-primary-dark);color:var(--text-on-brand)}.sec-flow em.sec-flow-off{color:var(--text-muted);text-decoration:line-through}.sec-flow svg{font-size:14px;color:var(--text-muted)}.sec-alert,.sec-note{display:flex;gap:var(--space-2);align-items:flex-start;margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);line-height:var(--lh-base)}.sec-alert svg,.sec-note svg{font-size:17px;flex-shrink:0;margin-top:1px}.sec-secret{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-md);border:1px dashed var(--status-warning);background:var(--status-warning-light);color:var(--status-warning);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.sec-secret svg{font-size:15px}.sec-secret--ok{border:1px solid transparent;background:var(--status-success-light);color:var(--status-success)}.sec-preview{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--status-info-light);color:var(--status-info);font-size:var(--fs-sm)}.sec-preview>span{display:block;margin-bottom:2px;font-size:11px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.4px}.sec-preview pre{margin:0;white-space:pre-wrap;font-family:inherit}.sec-test{display:flex;flex-direction:column;gap:6px;margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.sec-test-row{display:flex;gap:var(--space-2)}.sec-test-row .sec-input{max-width:320px}.sec-test-ok,.sec-test-bad{margin:0;padding:6px 10px;border-radius:var(--radius-md);font-size:var(--fs-xs);word-break:break-word}.sec-test-ok{background:var(--status-success-light);color:var(--status-success)}.sec-test-bad{background:var(--status-danger-light);color:var(--status-danger)}@media (max-width: 900px){.sec-row--wide{grid-template-columns:1fr}}@media (max-width: 480px){.sec-test-row{flex-direction:column}.sec-test-row .sec-input{max-width:none}}.otoo-root{display:flex;flex-direction:column;gap:var(--section-gap);min-width:0;font-family:var(--font-family);color:var(--text-primary)}.otoo-bar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.otoo-back{display:inline-flex;align-items:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3) 0 var(--space-2);border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-card);color:var(--text-secondary);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.otoo-back svg{font-size:var(--icon-size)}.otoo-back:hover{background:var(--brand-primary-light);color:var(--brand-primary-dark);border-color:var(--brand-primary)}.otoo-bar-note{flex:1;min-width:240px;margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.otoo-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--section-gap);align-items:start}.otoo-panel{display:flex;flex-direction:column;min-width:0;background:var(--surface-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;height:calc(100vh - var(--header-height) - 2 * var(--page-padding) - var(--control-height-sm) - var(--section-gap));min-height:380px}.otoo-panel-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-on-brand);flex-shrink:0}.otoo-panel-icon{width:36px;height:36px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);display:flex;align-items:center;justify-content:center;flex-shrink:0}.otoo-panel-icon svg{font-size:20px}.otoo-panel-text{flex:1;min-width:0}.otoo-panel-title{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);line-height:var(--lh-tight)}.otoo-count{padding:0 var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.2);font-size:var(--fs-xs);font-weight:var(--fw-bold);line-height:18px}.otoo-panel-desc{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.82);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.otoo-panel-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.otoo-icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.25);background:rgba(var(--text-on-brand-rgb),.14);color:var(--text-on-brand);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast)}.otoo-icon-btn svg{font-size:var(--icon-size)}.otoo-icon-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.28)}.otoo-icon-btn:disabled{opacity:.5;cursor:not-allowed}.otoo-rot{animation:otooSpin .8s linear infinite}.otoo-btn-primary,.otoo-btn-plain,.otoo-btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:transform .1s ease,opacity var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.otoo-btn-primary svg,.otoo-btn-plain svg{font-size:var(--icon-size-sm)}.otoo-btn-primary:active,.otoo-btn-plain:active,.otoo-btn-danger:active{transform:scale(.97)}.otoo-btn-primary{background:var(--surface-card);color:var(--brand-primary-dark);border:1px solid var(--surface-card)}.otoo-btn-primary:hover{box-shadow:var(--shadow-md)}.otoo-btn-primary--solid{background:var(--brand-gradient);color:var(--text-on-brand);border:none}.otoo-btn-plain{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.otoo-btn-plain:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.otoo-btn-danger{background:var(--status-danger);color:var(--text-on-brand);border:none}.otoo-btn-danger:hover:not(:disabled){opacity:.9}.otoo-btn-plain:disabled,.otoo-btn-danger:disabled{opacity:.55;cursor:not-allowed}.otoo-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:otooSpin .7s linear infinite}@keyframes otooSpin{to{transform:rotate(360deg)}}.otoo-search{position:relative;display:flex;align-items:center;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.otoo-search-ico{position:absolute;left:calc(var(--space-3) + var(--space-2));font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none}.otoo-search-input{width:100%;height:var(--control-height-sm);padding:0 28px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-sm);font-family:inherit}.otoo-search-input::placeholder{color:var(--text-muted)}.otoo-search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.otoo-search-clear{position:absolute;right:calc(var(--space-3) + 6px);width:18px;height:18px;border-radius:50%;border:none;background:var(--text-muted);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.otoo-search-clear svg{font-size:12px}.otoo-search-clear:hover{background:var(--status-danger)}.otoo-table-wrap{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column}.otoo-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.otoo-table thead th{position:sticky;top:0;z-index:var(--z-sticky);padding:var(--table-cell-py) var(--table-cell-px);background:var(--surface-page);border-bottom:1px solid var(--border-strong);color:var(--text-secondary);font-size:var(--fs-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.5px;text-align:left;white-space:nowrap}.otoo-table tbody tr:nth-child(2n){background:#f9f9f9}.otoo-table tbody tr:nth-child(odd){background:#fff}.otoo-table tbody tr:hover{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--brand-primary)}.otoo-table td{padding:var(--table-cell-py) var(--table-cell-px);border-bottom:1px solid var(--border-color);font-size:var(--fs-base);color:var(--text-primary);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.otoo-col-date,.otoo-col-mobile{width:120px}.otoo-col-actions{width:92px;text-align:center!important}.otoo-strong{font-weight:var(--fw-semibold)}.otoo-muted{color:var(--text-muted);font-size:var(--fs-sm)}.otoo-chip{display:inline-block;max-width:100%;padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--brand-primary-light);color:var(--brand-primary-dark);font-size:var(--fs-xs);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.otoo-link{color:var(--brand-primary);text-decoration:none;font-size:var(--fs-sm)}.otoo-link:hover{text-decoration:underline}.otoo-actions{display:flex;justify-content:center;gap:6px}.otoo-act{width:28px;height:28px;border-radius:var(--radius-md);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.otoo-act svg{font-size:15px}.otoo-act--edit{background:var(--status-success-light);color:var(--status-success);border-color:rgba(var(--status-success-rgb),.25)}.otoo-act--edit:hover{background:var(--status-success);color:var(--text-on-brand);transform:translateY(-1px)}.otoo-act--delete{background:var(--status-danger-light);color:var(--status-danger);border-color:rgba(var(--status-danger-rgb),.25)}.otoo-act--delete:hover{background:var(--status-danger);color:var(--text-on-brand);transform:translateY(-1px)}.otoo-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center}.otoo-state-ico{width:52px;height:52px;border-radius:var(--radius-xl);background:var(--brand-primary-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.otoo-state-ico svg{font-size:26px}.otoo-state-ico--error{background:var(--status-danger-light);color:var(--status-danger)}.otoo-state-title{margin:var(--space-1) 0 0;font-size:var(--fs-md);font-weight:var(--fw-bold)}.otoo-state-desc{margin:0 0 var(--space-1);max-width:340px;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.otoo-skeleton{padding:var(--space-2) var(--space-4)}.otoo-sk-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color)}.otoo-sk{flex:1;height:12px;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--surface-page) 0%,var(--border-color) 50%,var(--surface-page) 100%);background-size:200% 100%;animation:otooShimmer 1.4s infinite linear}.otoo-sk-pill{flex:0 0 60px;height:24px}@keyframes otooShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.otoo-dlg-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);font-family:var(--font-family);animation:otooFade .18s ease both}@keyframes otooFade{0%{opacity:0}to{opacity:1}}.otoo-dlg{width:100%;max-width:var(--modal-width-sm);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;animation:otooPop .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes otooPop{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.otoo-dlg-head{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3)}.otoo-dlg-icon{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:var(--status-danger-light);color:var(--status-danger);display:flex;align-items:center;justify-content:center}.otoo-dlg-icon svg{font-size:22px}.otoo-dlg-head-text{flex:1;min-width:0}.otoo-dlg-title{margin:2px 0 var(--space-1);font-size:var(--fs-md);font-weight:var(--fw-bold)}.otoo-dlg-msg{margin:0;font-size:var(--fs-sm);color:var(--text-secondary);line-height:var(--lh-base)}.otoo-dlg-x{width:28px;height:28px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.otoo-dlg-x svg{font-size:var(--icon-size)}.otoo-dlg-x:hover{background:var(--surface-hover);color:var(--text-primary)}.otoo-dlg-foot{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page)}@media (max-width: 1024px){.otoo-grid{grid-template-columns:1fr}.otoo-panel{height:auto;min-height:0;max-height:none}.otoo-table-wrap{max-height:60vh}}@media (max-width: 600px){.otoo-bar-note{min-width:0;flex-basis:100%}.otoo-panel-head{padding:var(--space-3);flex-wrap:wrap}.otoo-panel-actions{margin-left:auto}.otoo-btn-primary span{display:none}.otoo-btn-primary{width:var(--control-height-sm);padding:0}.otoo-state .otoo-btn-primary{width:auto;padding:0 var(--space-3)}.otoo-state .otoo-btn-primary span{display:inline}.otoo-table-wrap{max-height:none}.otoo-table,.otoo-table tbody,.otoo-table tr,.otoo-table td{display:block;width:100%}.otoo-table thead{display:none}.otoo-table tbody{padding:var(--space-2)}.otoo-table tbody tr,.otoo-table tbody tr:nth-child(2n){position:relative;margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-sm)}.otoo-table td{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;border-bottom:none;white-space:normal}.otoo-table td[data-label]:before{content:attr(data-label);flex:0 0 72px;font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted)}.otoo-table td:first-child{padding-right:76px}.otoo-col-actions{position:absolute;top:var(--space-2);right:var(--space-3);width:auto!important;padding:0!important}.otoo-act{width:32px;height:32px}.otoo-dlg-backdrop{align-items:flex-end;padding:var(--space-2)}.otoo-dlg-foot>button{flex:1}}.coo-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:cooFadeIn .18s ease both}@keyframes cooFadeIn{0%{opacity:0}to{opacity:1}}.coo-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:cooSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cooSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.coo-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.coo-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.coo-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.coo-header-icon svg{font-size:20px}.coo-header-text{min-width:0}.coo-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.coo-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.coo-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.coo-close-btn svg{font-size:var(--icon-size)}.coo-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.coo-close-btn:disabled{opacity:.5;cursor:not-allowed}.coo-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.coo-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.coo-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.coo-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.coo-alert-text span{color:var(--text-secondary)}.coo-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.coo-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.coo-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.coo-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.coo-form-group--full{grid-column:1 / -1}.coo-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.coo-required{color:var(--status-danger)}.coo-input-wrapper{position:relative;display:flex;align-items:center}.coo-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.coo-input-wrapper:focus-within .coo-input-icon{color:var(--brand-primary)}.coo-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.coo-input::placeholder{color:var(--text-muted)}.coo-input:hover:not(:disabled){border-color:var(--text-muted)}.coo-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.coo-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.coo-input-error,.coo-input-error:hover:not(:disabled){border-color:var(--status-danger)}.coo-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.coo-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.coo-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.coo-label{display:inline-flex;align-items:center;gap:var(--space-1)}.coo-label-ico{font-size:15px!important;color:var(--text-muted)}.coo-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.coo-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.coo-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.coo-footer-actions{display:flex;gap:var(--space-2)}.coo-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.coo-btn:active:not(:disabled){transform:scale(.97)}.coo-btn:disabled{opacity:.55;cursor:not-allowed}.coo-btn-ico{font-size:var(--icon-size)!important}.coo-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.coo-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.coo-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.coo-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.coo-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cooSpin .7s linear infinite}@keyframes cooSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.coo-backdrop{align-items:flex-end;padding:var(--space-2)}.coo-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.coo-header,.coo-body{padding:var(--space-3)}.coo-form{grid-template-columns:1fr;gap:var(--space-3)}.coo-footer{padding:var(--space-3)}.coo-footer-note{display:none}.coo-footer-actions{width:100%}.coo-footer-actions .coo-btn{flex:1;min-width:0}}.uoo-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:uooFadeIn .18s ease both}@keyframes uooFadeIn{0%{opacity:0}to{opacity:1}}.uoo-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-md);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:uooSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes uooSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uoo-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.uoo-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uoo-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uoo-header-icon svg{font-size:20px}.uoo-header-text{min-width:0}.uoo-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.uoo-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.uoo-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.uoo-close-btn svg{font-size:var(--icon-size)}.uoo-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.uoo-close-btn:disabled{opacity:.5;cursor:not-allowed}.uoo-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.uoo-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.uoo-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uoo-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.uoo-alert-text span{color:var(--text-secondary)}.uoo-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.uoo-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.uoo-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4) var(--space-4)}.uoo-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.uoo-form-group--full{grid-column:1 / -1}.uoo-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uoo-required{color:var(--status-danger)}.uoo-input-wrapper{position:relative;display:flex;align-items:center}.uoo-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.uoo-input-wrapper:focus-within .uoo-input-icon{color:var(--brand-primary)}.uoo-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uoo-input::placeholder{color:var(--text-muted)}.uoo-input:hover:not(:disabled){border-color:var(--text-muted)}.uoo-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uoo-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.uoo-input-error,.uoo-input-error:hover:not(:disabled){border-color:var(--status-danger)}.uoo-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.uoo-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.uoo-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.uoo-label{display:inline-flex;align-items:center;gap:var(--space-1)}.uoo-label-ico{font-size:15px!important;color:var(--text-muted)}.uoo-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.uoo-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.uoo-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uoo-current-ico{font-size:13px!important;flex-shrink:0}.uoo-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.uoo-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uoo-footer-actions{display:flex;gap:var(--space-2)}.uoo-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.uoo-btn:active:not(:disabled){transform:scale(.97)}.uoo-btn:disabled{opacity:.55;cursor:not-allowed}.uoo-btn-ico{font-size:var(--icon-size)!important}.uoo-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uoo-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uoo-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.uoo-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.uoo-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:uooSpin .7s linear infinite}@keyframes uooSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.uoo-backdrop{align-items:flex-end;padding:var(--space-2)}.uoo-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uoo-header,.uoo-body{padding:var(--space-3)}.uoo-form{grid-template-columns:1fr;gap:var(--space-3)}.uoo-footer{padding:var(--space-3)}.uoo-footer-note{display:none}.uoo-footer-actions{width:100%}.uoo-footer-actions .uoo-btn{flex:1;min-width:0}}.cot-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:cotFadeIn .18s ease both}@keyframes cotFadeIn{0%{opacity:0}to{opacity:1}}.cot-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:cotSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes cotSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cot-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.cot-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.cot-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.cot-header-icon svg{font-size:20px}.cot-header-text{min-width:0}.cot-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.cot-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.cot-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.cot-close-btn svg{font-size:var(--icon-size)}.cot-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.cot-close-btn:disabled{opacity:.5;cursor:not-allowed}.cot-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.cot-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.cot-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.cot-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.cot-alert-text span{color:var(--text-secondary)}.cot-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.cot-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.cot-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.cot-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.cot-form-group--full{grid-column:1 / -1}.cot-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.cot-required{color:var(--status-danger)}.cot-input-wrapper{position:relative;display:flex;align-items:center}.cot-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.cot-input-wrapper:focus-within .cot-input-icon{color:var(--brand-primary)}.cot-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.cot-input::placeholder{color:var(--text-muted)}.cot-input:hover:not(:disabled){border-color:var(--text-muted)}.cot-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.cot-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.cot-input-error,.cot-input-error:hover:not(:disabled){border-color:var(--status-danger)}.cot-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.cot-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.cot-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.cot-label{display:inline-flex;align-items:center;gap:var(--space-1)}.cot-label-ico{font-size:15px!important;color:var(--text-muted)}.cot-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.cot-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.cot-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.cot-footer-actions{display:flex;gap:var(--space-2)}.cot-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.cot-btn:active:not(:disabled){transform:scale(.97)}.cot-btn:disabled{opacity:.55;cursor:not-allowed}.cot-btn-ico{font-size:var(--icon-size)!important}.cot-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.cot-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.cot-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.cot-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.cot-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:cotSpin .7s linear infinite}@keyframes cotSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.cot-backdrop{align-items:flex-end;padding:var(--space-2)}.cot-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.cot-header,.cot-body{padding:var(--space-3)}.cot-form{grid-template-columns:1fr;gap:var(--space-3)}.cot-footer{padding:var(--space-3)}.cot-footer-note{display:none}.cot-footer-actions{width:100%}.cot-footer-actions .cot-btn{flex:1;min-width:0}}.uot-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop-overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-family);animation:uotFadeIn .18s ease both}@keyframes uotFadeIn{0%{opacity:0}to{opacity:1}}.uot-sheet{background:var(--surface-card);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-width-sm);max-height:calc(100vh - 2 * var(--space-4));display:flex;flex-direction:column;box-shadow:var(--shadow-lg);overflow:hidden;animation:uotSlideUp .22s cubic-bezier(.34,1.3,.64,1) both}@keyframes uotSlideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.uot-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:var(--brand-gradient);flex-shrink:0}.uot-header-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.uot-header-icon{width:38px;height:38px;border-radius:var(--radius-lg);background:rgba(var(--text-on-brand-rgb),.18);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);display:flex;align-items:center;justify-content:center;flex-shrink:0}.uot-header-icon svg{font-size:20px}.uot-header-text{min-width:0}.uot-title{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--text-on-brand);line-height:var(--lh-tight)}.uot-subtitle{margin:2px 0 0;font-size:var(--fs-xs);color:rgba(var(--text-on-brand-rgb),.85);line-height:var(--lh-base)}.uot-close-btn{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);border:1px solid rgba(var(--text-on-brand-rgb),.3);background:rgba(var(--text-on-brand-rgb),.12);color:var(--text-on-brand);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--transition-fast)}.uot-close-btn svg{font-size:var(--icon-size)}.uot-close-btn:hover:not(:disabled){background:rgba(var(--text-on-brand-rgb),.25)}.uot-close-btn:disabled{opacity:.5;cursor:not-allowed}.uot-body{flex:1;min-height:0;overflow-y:auto;padding:var(--card-padding) var(--space-4)}.uot-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:var(--status-danger-light);border:1px solid rgba(var(--status-danger-rgb),.25);color:var(--status-danger)}.uot-alert-ico{font-size:var(--icon-size)!important;flex-shrink:0;margin-top:1px}.uot-alert-text{flex:1;display:flex;flex-direction:column;font-size:var(--fs-sm);line-height:var(--lh-base)}.uot-alert-text span{color:var(--text-secondary)}.uot-alert-btn{align-self:center;height:26px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--status-danger);background:transparent;color:var(--status-danger);font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer}.uot-alert-btn:hover{background:var(--status-danger);color:var(--text-on-brand)}.uot-form{display:grid;grid-template-columns:1fr;gap:var(--space-4) var(--space-4)}.uot-form-group{display:flex;flex-direction:column;gap:6px;min-width:0}.uot-form-group--full{grid-column:1 / -1}.uot-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-primary)}.uot-required{color:var(--status-danger)}.uot-input-wrapper{position:relative;display:flex;align-items:center}.uot-input-icon{position:absolute;left:var(--space-3);font-size:var(--icon-size-sm)!important;color:var(--text-muted);pointer-events:none;transition:color var(--transition-fast)}.uot-input-wrapper:focus-within .uot-input-icon{color:var(--brand-primary)}.uot-input{width:100%;height:var(--control-height);padding:0 var(--space-3) 0 36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);font-size:var(--fs-base);font-family:inherit;color:var(--text-primary);background:var(--surface-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.uot-input::placeholder{color:var(--text-muted)}.uot-input:hover:not(:disabled){border-color:var(--text-muted)}.uot-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--focus-ring)}.uot-input:disabled{background:var(--surface-page);color:var(--text-muted);cursor:not-allowed}.uot-input-error,.uot-input-error:hover:not(:disabled){border-color:var(--status-danger)}.uot-input-error:focus{box-shadow:0 0 0 3px rgba(var(--status-danger-rgb),.15)}.uot-hint{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-base)}.uot-error-message{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--status-danger);line-height:var(--lh-base)}.uot-label{display:inline-flex;align-items:center;gap:var(--space-1)}.uot-label-ico{font-size:15px!important;color:var(--text-muted)}.uot-optional{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-muted)}.uot-current-badge{display:inline-flex;align-items:center;gap:var(--space-1);max-width:100%;margin-top:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);background:rgba(var(--text-on-brand-rgb),.16);border:1px solid rgba(var(--text-on-brand-rgb),.25);color:var(--text-on-brand);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.uot-current-badge span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uot-current-ico{font-size:13px!important;flex-shrink:0}.uot-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--surface-page);flex-shrink:0}.uot-footer-note{font-size:var(--fs-xs);color:var(--text-muted)}.uot-footer-actions{display:flex;gap:var(--space-2)}.uot-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-height);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--fs-base);font-weight:var(--fw-semibold);font-family:inherit;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),transform .1s ease,box-shadow var(--transition-fast)}.uot-btn:active:not(:disabled){transform:scale(.97)}.uot-btn:disabled{opacity:.55;cursor:not-allowed}.uot-btn-ico{font-size:var(--icon-size)!important}.uot-btn-secondary{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-strong)}.uot-btn-secondary:hover:not(:disabled){background:var(--surface-hover);color:var(--text-primary)}.uot-btn-primary{background:var(--brand-gradient);color:var(--text-on-brand);border:none;min-width:170px}.uot-btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md)}.uot-spin{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;animation:uotSpin .7s linear infinite}@keyframes uotSpin{to{transform:rotate(360deg)}}@media (max-width: 600px){.uot-backdrop{align-items:flex-end;padding:var(--space-2)}.uot-sheet{max-height:calc(100vh - var(--space-6));border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg)}.uot-header,.uot-body{padding:var(--space-3)}.uot-form{grid-template-columns:1fr;gap:var(--space-3)}.uot-footer{padding:var(--space-3)}.uot-footer-note{display:none}.uot-footer-actions{width:100%}.uot-footer-actions .uot-btn{flex:1;min-width:0}}
