@import"https://fonts.googleapis.com/icon?family=Material+Icons";@import"https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap";[data-theme=blue]{--theme-primary-dark: #1e40af;--theme-primary: #2563eb;--theme-primary-light: #3b82f6;--theme-primary-lighter: #60a5fa;--theme-accent: #2563eb;--theme-accent-light: rgba(37, 99, 235, .3);--theme-accent-medium: rgba(37, 99, 235, .5);--theme-tertiary: #60a5fa;--theme-tertiary-light: rgba(96, 165, 250, .3);--theme-tertiary-medium: rgba(96, 165, 250, .5);--theme-tertiary-dark: #2563eb;--theme-bg-primary: #f8fafc;--theme-bg-secondary: #f1f5f9;--theme-bg-pattern: rgba(107, 155, 209, .03);--theme-text-primary: #3d5a80;--theme-text-secondary: #5a7a9a;--theme-text-inverse: #ffffff;--theme-status-active: rgba(37, 99, 235, .4);--theme-status-active-text: #1e40af;--theme-status-pending: rgba(184, 134, 11, .4);--theme-status-pending-text: #b8860b;--theme-status-expired: rgba(139, 21, 56, .4);--theme-status-expired-text: #8b1538;--theme-border: #2563eb;--theme-border-light: rgba(37, 99, 235, .4);--theme-border-medium: rgba(37, 99, 235, .55);--theme-shadow: rgba(30, 64, 175, .4);--theme-shadow-light: rgba(30, 64, 175, .2);--theme-shadow-accent: rgba(37, 99, 235, .4);--theme-menu-header-bg: rgba(37, 99, 235, .55);--theme-menu-header-hover: rgba(37, 99, 235, .75);--theme-menu-text: #1e3a5f;--theme-menu-text-active: #ffffff;--theme-filter-badge-bg: rgba(37, 99, 235, .8);--theme-filter-badge-text: #1e3a5f;--theme-toggle-bg: rgba(37, 99, 235, .75);--theme-toggle-text: #1e3a5f;--theme-toggle-border: rgba(37, 99, 235, .85);--theme-error: #d32f2f;--theme-error-bg: rgba(211, 47, 47, .1);--theme-gray-dark: #424242;--theme-gray-medium: #9e9e9e;--theme-gray-light: #e0e0e0}[data-theme=orange]{--theme-primary-dark: #c2410c;--theme-primary: #f97316;--theme-primary-light: #fb923c;--theme-primary-lighter: #fed7aa;--theme-accent: #f97316;--theme-accent-light: rgba(249, 115, 22, .3);--theme-accent-medium: rgba(249, 115, 22, .5);--theme-tertiary: #fdba74;--theme-tertiary-light: rgba(253, 186, 116, .3);--theme-tertiary-medium: rgba(253, 186, 116, .5);--theme-tertiary-dark: #f97316;--theme-bg-primary: #fffbf7;--theme-bg-secondary: #fef3e7;--theme-bg-pattern: rgba(234, 88, 12, .03);--theme-text-primary: #7c2d12;--theme-text-secondary: #9a3412;--theme-text-inverse: #ffffff;--theme-status-active: rgba(249, 115, 22, .4);--theme-status-active-text: #c2410c;--theme-status-pending: rgba(184, 134, 11, .4);--theme-status-pending-text: #b8860b;--theme-status-expired: rgba(139, 21, 56, .4);--theme-status-expired-text: #8b1538;--theme-border: #f97316;--theme-border-light: rgba(249, 115, 22, .4);--theme-border-medium: rgba(249, 115, 22, .55);--theme-shadow: rgba(234, 88, 12, .4);--theme-shadow-light: rgba(234, 88, 12, .2);--theme-shadow-accent: rgba(249, 115, 22, .4);--theme-menu-header-bg: rgba(249, 115, 22, .55);--theme-menu-header-hover: rgba(249, 115, 22, .75);--theme-menu-text: #7c2d12;--theme-menu-text-active: #ffffff;--theme-filter-badge-bg: rgba(249, 115, 22, .8);--theme-filter-badge-text: #7c2d12;--theme-toggle-bg: rgba(249, 115, 22, .75);--theme-toggle-text: #7c2d12;--theme-toggle-border: rgba(249, 115, 22, .85);--theme-error: #d32f2f;--theme-error-bg: rgba(211, 47, 47, .1);--theme-gray-dark: #424242;--theme-gray-medium: #9e9e9e;--theme-gray-light: #e0e0e0}.form-input,.utility-input{padding:.625rem;border:2px solid var(--theme-gray-light);border-radius:.375rem;font-size:.875rem;font-family:inherit;transition:all .2s;background-color:var(--theme-bg-primary);color:var(--theme-text-primary);width:100%;box-sizing:border-box}.form-input:hover,.utility-input:hover{border-color:var(--theme-primary-light)}.form-input:focus,.utility-input:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px var(--theme-accent-light)}.form-input:disabled,.utility-input:disabled{background-color:var(--theme-bg-secondary);cursor:not-allowed;opacity:.6}.form-input.error,.utility-input.error{border-color:var(--theme-error)}.form-input.error:focus,.utility-input.error:focus{box-shadow:0 0 0 3px var(--theme-error-bg)}.form-textarea,.utility-textarea{padding:.625rem;border:2px solid var(--theme-gray-light);border-radius:.375rem;font-size:.875rem;font-family:inherit;transition:all .2s;background-color:var(--theme-bg-primary);color:var(--theme-text-primary);width:100%;box-sizing:border-box;resize:vertical;min-height:100px}.form-textarea:focus,.utility-textarea:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px var(--theme-accent-light)}.form-label,.utility-label{display:block;font-size:.875rem;font-weight:500;color:var(--theme-text-primary);margin-bottom:.5rem}.form-label.required:after,.utility-label.required:after{content:" *";color:var(--theme-error)}.form-field,.utility-field{margin-bottom:1rem;display:flex;flex-direction:column}.form-error,.utility-error{color:var(--theme-error);font-size:.75rem;margin-top:.25rem;display:block}.form-helper,.utility-helper{color:var(--theme-text-secondary);font-size:.75rem;margin-top:.25rem;display:block}.btn,.utility-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:.375rem;font-size:.875rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;border:none;text-decoration:none;white-space:nowrap;line-height:1}.btn:disabled,.utility-btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--theme-primary-light) 0%,var(--theme-primary-lighter) 100%);color:var(--theme-text-inverse)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--theme-primary-lighter) 0%,var(--theme-primary-light) 100%);transform:translateY(-1px);box-shadow:0 2px 8px var(--theme-shadow-light)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background-color:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-gray-light)}.btn-secondary:hover:not(:disabled){background-color:var(--theme-gray-light);border-color:var(--theme-gray-medium)}.btn-danger{background-color:var(--theme-error);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--theme-status-expired-text);box-shadow:0 2px 8px #8b15384d}.btn-icon{padding:.5rem;width:2.5rem;height:2.5rem;border-radius:.375rem;background-color:transparent;border:1px solid var(--theme-gray-light);color:var(--theme-text-secondary)}.btn-icon:hover:not(:disabled){background-color:var(--theme-bg-secondary);border-color:var(--theme-primary);color:var(--theme-primary)}.btn-sm{padding:.5rem 1rem;font-size:.75rem}.btn-lg{padding:1rem 2rem;font-size:1rem}.btn.loading,.utility-btn.loading{position:relative;color:transparent;pointer-events:none}.btn.loading:after,.utility-btn.loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite}.form-checkbox,.form-radio{width:1.125rem;height:1.125rem;cursor:pointer;margin-right:.5rem}.form-checkbox:focus,.form-radio:focus{outline:2px solid var(--theme-primary);outline-offset:2px}.form-group-horizontal{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.form-group-horizontal .form-label{margin-bottom:0;min-width:120px}.form-group-horizontal .form-input{flex:1}.utility-card{background:var(--theme-bg-primary);border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px var(--theme-shadow-light);border:1px solid var(--theme-border-light)}.utility-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:12px;font-size:.75rem;font-weight:600}.utility-badge.badge-primary{background-color:var(--theme-primary-light);color:#fff}.utility-badge.badge-success{background-color:var(--theme-status-active);color:var(--theme-status-active-text)}.utility-badge.badge-warning{background-color:var(--theme-status-pending);color:var(--theme-status-pending-text)}.utility-badge.badge-danger{background-color:var(--theme-status-expired);color:var(--theme-status-expired-text)}.utility-divider{height:1px;background-color:var(--theme-border-light);margin:1.5rem 0;border:none}.text-primary{color:var(--theme-text-primary)}.text-secondary{color:var(--theme-text-secondary)}.text-error{color:var(--theme-error)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.font-bold{font-weight:600}.font-semibold{font-weight:500}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-0{margin-top:0}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.gap-4{gap:2rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--theme-font-family, "Roboto", sans-serif);background-color:var(--theme-bg-secondary);background-image:repeating-linear-gradient(90deg,transparent,transparent 2px,var(--theme-bg-pattern) 2px,var(--theme-bg-pattern) 4px),repeating-linear-gradient(0deg,transparent,transparent 2px,var(--theme-bg-pattern) 2px,var(--theme-bg-pattern) 4px);color:var(--theme-text-primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes pulse-subtle{0%{transform:scale(.8);opacity:1}to{transform:scale(2);opacity:0}}@keyframes pulse-urgent{0%{transform:scale(.8);opacity:1}to{transform:scale(2.5);opacity:0}}@keyframes pulse-checking{0%{transform:scale(.8);opacity:.5}to{transform:scale(1.8);opacity:0}}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@keyframes slideDown{0%{height:0;opacity:0}to{height:var(--radix-collapsible-content-height);opacity:1}}@keyframes slideUp{0%{height:var(--radix-collapsible-content-height);opacity:1}to{height:0;opacity:0}}:root{--layout-sidebar-width: 280px;--layout-header-height: 64px;--layout-content-padding: 24px;--layout-panel-border-radius: 8px;--layout-card-border-radius: 8px;--layout-input-border-radius: 4px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--breakpoint-mobile: 480px;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px;--breakpoint-wide: 1400px;--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s;--transition-slower: .5s;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 4px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-base: 0 2px 8px var(--theme-shadow-light);--shadow-md: 0 4px 12px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .2);--z-base: 0;--z-low: 1;--z-medium: 10;--z-high: 20;--z-dropdown: 1000;--z-nav: 1001;--z-nav-mobile: 1002;--z-nav-menu: 1003;--z-debug: 9999;--z-notification: 10000;--input-height: 42px;--button-height: 42px;--button-height-sm: 36px;--button-height-lg: 48px;--icon-size-sm: 18px;--icon-size-md: 24px;--icon-size-lg: 32px;--avatar-size: 40px;--table-row-height: 48px;--table-header-height: 56px;--table-cell-padding: 12px;--form-field-gap: 1rem;--form-label-gap: .5rem;--form-max-width: 600px}.toaster-container{position:fixed;top:20px;right:20px;z-index:var(--z-notification);display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{min-width:300px;max-width:500px;padding:16px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:flex-start;gap:12px;pointer-events:auto;animation:slideIn .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toast-exit{animation:slideOut .3s ease-in}.toast-error{background-color:#8b1538f2;color:beige;border-left:4px solid #8b1538}.toast-warning{background-color:#b8860bf2;color:beige;border-left:4px solid #b8860b}.toast-success{background-color:var(--theme-primary);opacity:.95;color:var(--theme-text-inverse);border-left:4px solid var(--theme-primary-dark)}.toast-info{background-color:#6b4423f2;color:beige;border-left:4px solid #6b4423}.toast-icon{font-size:24px;flex-shrink:0;margin-top:2px}.toast-content{flex:1;display:flex;flex-direction:column;gap:4px}.toast-title{font-weight:600;font-size:14px;margin:0}.toast-message{font-size:13px;margin:0;opacity:.95;word-break:break-word}.toast-close{background:none;border:none;color:#fff;cursor:pointer;font-size:20px;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;opacity:.8;transition:opacity .2s;flex-shrink:0}.toast-close:hover{opacity:1}.toast-details{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.2);font-size:11px;opacity:.85;max-height:100px;overflow-y:auto}.backend-status-indicator{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-right:16px;padding:8px;border-radius:50%;transition:background-color .2s}.backend-status-indicator:hover{background-color:#ffffff1a}.status-dot{position:relative;width:10px;height:10px;border-radius:50%;transition:all .3s ease}.pulse-ring{position:absolute;top:-3px;left:-3px;width:16px;height:16px;border-radius:50%;opacity:0;pointer-events:none}.status-dot.online{background-color:#4caf50;box-shadow:0 0 4px #4caf5099}.status-dot.online .pulse-ring{border:2px solid #4caf50;animation:pulse-subtle 2s cubic-bezier(.4,0,.6,1) infinite}.status-dot.offline{background-color:#f44336;box-shadow:0 0 4px #f4433699}.status-dot.offline .pulse-ring{border:2px solid #f44336;animation:pulse-urgent 1s cubic-bezier(.4,0,.6,1) infinite}.status-dot.checking{background-color:#9e9e9e;box-shadow:0 0 4px #9e9e9e99}.status-dot.checking .pulse-ring{border:2px solid #9e9e9e;animation:pulse-checking 1.5s cubic-bezier(.4,0,.6,1) infinite}.status-tooltip{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;background:linear-gradient(135deg,#2d4a6b,#1e3a5f);color:#fff;padding:12px;border-radius:8px;box-shadow:0 4px 12px #0000004d;z-index:1000;font-size:13px;line-height:1.4;pointer-events:none}.status-tooltip:before{content:"";position:absolute;top:-6px;right:12px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #2d4a6b}.tooltip-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-weight:500}.tooltip-header .material-icons{font-size:18px}.tooltip-detail{color:#ffffffd9;font-size:12px;margin-bottom:4px}.tooltip-error{background:#f4433626;border-left:3px solid #f44336;padding:8px;margin:8px 0;border-radius:4px}.error-title{font-weight:600;font-size:11px;text-transform:uppercase;color:#ffcdd2;margin-bottom:4px}.error-message{font-size:12px;color:#ffffffe6;word-break:break-word}.tooltip-hint{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1);font-size:11px;color:#fff9;font-style:italic}.header{background:linear-gradient(135deg,var(--theme-primary-dark) 0%,var(--theme-primary) 100%);color:var(--theme-text-inverse);padding:0 var(--spacing-md);height:var(--layout-header-height);display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 12px var(--theme-shadow);position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);border-bottom:2px solid var(--theme-border)}.logo{font-size:20px;font-weight:500}.header-buttons{display:flex;gap:8px;margin:0 24px;align-items:center}.favorites-container{display:flex;gap:8px;align-items:center}.header-btn{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--theme-primary-light) 0%,var(--theme-primary-lighter) 100%);border:none;color:var(--theme-text-inverse);padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s}.header-btn:hover{background:linear-gradient(135deg,var(--theme-primary-lighter) 0%,var(--theme-primary-light) 100%)}.header-btn .material-icons{font-size:18px;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}.header-btn-text{display:inline-block}.user-dropdown-icon{display:inline-block!important;font-style:normal;font-weight:400;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}.user-section{display:flex;align-items:center;gap:12px;position:relative;z-index:var(--z-nav-menu)}.theme-toggle{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--theme-primary-light) 0%,var(--theme-primary-lighter) 100%);border:none;color:var(--theme-text-inverse);padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .3s}.theme-toggle:hover{background:linear-gradient(135deg,var(--theme-primary-lighter) 0%,var(--theme-primary-light) 100%)}.theme-icon{font-size:18px}.theme-label{font-size:14px}.theme-dropdown{background:linear-gradient(135deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);border-radius:8px;padding:8px;box-shadow:0 4px 16px var(--theme-shadow);border:1px solid var(--theme-border-light);min-width:180px;z-index:var(--z-nav-mobile);outline:none}.theme-option{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:4px;cursor:pointer;font-size:14px;color:var(--theme-text-primary);transition:background-color .2s;border:none;background:none;width:100%;text-align:left;outline:none}.theme-option:hover,.theme-option[data-highlighted]{background-color:var(--theme-accent-light)}.theme-option.active{background-color:var(--theme-accent-light);font-weight:500}.theme-color-indicator{width:20px;height:20px;border-radius:4px;border:2px solid var(--theme-border-light);flex-shrink:0}.user-profile-clickable{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .3s}.user-profile-clickable:hover{background-color:#ffffff1a}.user-info{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-details{display:flex;flex-direction:column}.user-name{font-weight:500;font-size:14px}.user-role{font-size:12px;opacity:.8}.user-dropdown-icon{font-size:18px;opacity:.8;transition:transform .3s}.user-popup{background-color:var(--theme-bg-primary);border:2px solid var(--theme-border);border-radius:8px;box-shadow:0 4px 16px var(--theme-shadow-light);min-width:280px;max-width:320px;z-index:var(--z-nav-mobile);outline:none}.user-popup-header{padding:16px;background:linear-gradient(135deg,var(--theme-bg-secondary) 0%,var(--theme-bg-primary) 100%);border-bottom:1px solid var(--theme-border);cursor:default}.user-popup-info{display:flex;align-items:center;gap:12px}.user-popup-details{display:flex;flex-direction:column}.user-popup-name{font-weight:600;font-size:16px;color:var(--theme-text-primary)}.user-popup-role{font-size:14px;color:var(--theme-text-secondary);margin-top:2px}.user-popup-divider{height:1px;background-color:var(--theme-border);opacity:.4;margin:0}.role-selector-trigger{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;color:var(--theme-text-primary);transition:background-color .3s;font-size:14px;width:100%;border:none;background:none;text-align:left;outline:none}.role-selector-trigger:hover,.role-selector-trigger[data-state=open]{background-color:var(--theme-accent-light)}.role-selector-trigger .material-icons{font-size:20px;color:var(--theme-text-secondary);display:inline-block;font-style:normal;font-weight:400;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}.role-dropdown{background-color:var(--theme-bg-primary);border:1px solid var(--theme-border);border-radius:6px;box-shadow:0 4px 12px var(--theme-shadow-light);max-height:300px;overflow-y:auto;min-width:200px;outline:none}.role-option{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;color:var(--theme-text-primary);transition:background-color .3s;font-size:14px;border:none;background:none;width:100%;text-align:left;outline:none}.role-option[data-highlighted],.role-option:hover{background-color:var(--theme-primary-light);opacity:.2}.role-option .material-icons{font-size:18px;color:var(--theme-text-secondary);display:inline-block;font-style:normal;font-weight:400;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}.logout-section{border-top:1px solid var(--theme-border);margin:4px 0 0;height:1px;opacity:.4}.logout-option{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;color:#8b1538;transition:background-color .3s;font-size:14px;border:none;background:none;width:100%;text-align:left;outline:none}.logout-option[data-highlighted],.logout-option:hover{background-color:#8b15381a}.logout-option .material-icons{font-size:20px;display:inline-block;font-style:normal;font-weight:400;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}@media(max-width:1024px){.header-btn-text{display:none}.header-btn{padding:8px 12px}.favorites-container,.theme-label{display:none}.theme-toggle{padding:8px 12px}}@media(max-width:768px){.header{padding:0 12px}.logo{font-size:18px}.header-buttons,.user-role{display:none}.user-details{min-width:auto}.theme-toggle{padding:6px 10px}.theme-icon{font-size:20px}.user-profile-clickable{padding:4px 6px}.user-info{gap:8px}.user-avatar{width:32px;height:32px}.user-name{font-size:13px}}.sidebar{width:var(--layout-sidebar-width);background:linear-gradient(180deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);box-shadow:var(--shadow-base);padding:0 0 var(--spacing-md) 0;position:fixed;top:var(--layout-header-height);left:0;height:calc(100vh - var(--layout-header-height));overflow-y:auto;z-index:var(--z-dropdown);border-right:var(--border-width-medium) solid var(--theme-border)}.menu-item{border-bottom:1px solid var(--theme-border-light)}.menu-header{padding:16px 24px;font-weight:500;color:var(--theme-menu-text, var(--theme-text-primary));background-color:var(--theme-menu-header-bg);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s;-webkit-user-select:none;user-select:none}.menu-header:hover{background-color:var(--theme-menu-header-hover)}.menu-header.active{background:linear-gradient(135deg,var(--theme-primary-dark) 0%,var(--theme-primary) 100%);color:var(--theme-menu-text-active, var(--theme-text-inverse))}.menu-icon{margin-right:12px;vertical-align:middle;font-size:24px;color:var(--theme-menu-text, var(--theme-text-primary))}.menu-header.active .menu-icon{color:var(--theme-border)}.arrow{transition:transform .3s;font-size:24px;color:var(--theme-menu-text, var(--theme-text-primary))}.menu-header.active .arrow{color:var(--theme-border)}.arrow.rotated{transform:rotate(180deg)}.submenu{background-color:var(--theme-bg-secondary);opacity:.5;overflow:hidden}.submenu[data-state=open]{animation:slideDown .2s ease-out}.submenu[data-state=closed]{animation:slideUp .2s ease-out}.submenu-item{padding:12px 24px 12px 48px;cursor:pointer;color:var(--theme-menu-text, var(--theme-text-primary));transition:all .3s;border-left:3px solid transparent;-webkit-user-select:none;user-select:none;font-weight:500}.submenu-item:hover{background-color:var(--theme-menu-header-bg);color:var(--theme-menu-text, var(--theme-text-primary))}.submenu-item.active{background-color:var(--theme-menu-header-hover);color:var(--theme-menu-text, var(--theme-text-primary));border-left-color:var(--theme-border);font-weight:600}.nested-submenu{background-color:#00000014;overflow:hidden}.nested-submenu[data-state=open]{animation:slideDown .2s ease-out}.nested-submenu[data-state=closed]{animation:slideUp .2s ease-out}.nested-menu-item{border-bottom:1px solid var(--theme-border-light)}.nested-menu-header{padding:14px 24px 14px 36px;font-weight:600;color:var(--theme-text-primary);background-color:#0000001f;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s;-webkit-user-select:none;user-select:none;font-size:14px}.nested-menu-header:hover{background-color:#0000002e}.nested-menu-icon{margin-right:10px;vertical-align:middle;font-size:20px;color:var(--theme-text-primary)}.nested-menu-item .submenu-item{padding-left:72px;font-size:14px;background-color:#00000008;font-weight:500;color:var(--theme-text-primary)}.nested-menu-item .submenu-item:hover{background-color:#0000001f}.sidebar-header-mobile{display:none;padding:16px;border-bottom:2px solid var(--theme-border);background:linear-gradient(135deg,var(--theme-primary-dark) 0%,var(--theme-primary) 100%);align-items:center;justify-content:flex-end}.sidebar-close-btn{background:none;border:none;color:var(--theme-text-inverse);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .3s}.sidebar-close-btn:hover{background-color:#ffffff1a}.sidebar-close-btn .material-icons{font-size:24px}@media(max-width:1024px){.sidebar{transform:translate(-100%);transition:transform .3s ease-in-out;z-index:1002}.sidebar.sidebar-open{transform:translate(0)}.sidebar.sidebar-closed{transform:translate(-100%)}.sidebar-header-mobile{display:flex}}@media(min-width:1025px){.sidebar{transform:translate(0)!important}.sidebar-header-mobile{display:none}}.breadcrumb{background:linear-gradient(135deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);padding:16px 24px;margin-bottom:20px;border-radius:8px;box-shadow:0 2px 8px var(--theme-shadow-light);font-size:14px;color:var(--theme-text-secondary);border:1px solid var(--theme-border-light);display:flex;justify-content:space-between;align-items:center;gap:16px}.breadcrumb-content{display:flex;align-items:center;flex:1}.breadcrumb a{color:var(--theme-text-primary);text-decoration:none}.breadcrumb a:hover{color:var(--theme-border);text-decoration:underline}.breadcrumb .separator{margin:0 8px;color:var(--theme-border);opacity:.6}.breadcrumb-star-btn{background:none;border:1px solid var(--theme-border-light, #ddd);border-radius:4px;padding:6px 8px;cursor:pointer;color:var(--theme-text-secondary, #666);transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.breadcrumb-star-btn:hover{background-color:var(--theme-accent-light, rgba(201, 169, 97, .2));border-color:var(--theme-accent-medium, #c9a961);color:var(--theme-accent-medium, #c9a961)}.breadcrumb-star-btn.starred{background-color:var(--theme-accent-medium, #c9a961);border-color:var(--theme-accent-medium, #c9a961);color:var(--theme-text-primary-on-accent, #6b4423)}.breadcrumb-star-btn.starred:hover{background-color:var(--theme-accent-dark, #b8860b);border-color:var(--theme-accent-dark, #b8860b)}.breadcrumb-star-btn .material-icons{font-size:20px}.app-container{min-height:100vh;background-color:var(--theme-bg-secondary)}.main-container{display:flex;min-height:100vh;padding-top:var(--layout-header-height);overflow-x:hidden}.content{flex:1;padding:var(--layout-content-padding);background-color:transparent;margin-left:var(--layout-sidebar-width);width:calc(100% - var(--layout-sidebar-width));display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;height:calc(100vh - var(--layout-header-height))}.content-area{background:linear-gradient(135deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);border-radius:var(--layout-panel-border-radius);box-shadow:var(--shadow-md);border:var(--border-width-thin) solid var(--theme-border-light);min-height:600px;padding:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0}.loading{display:flex;justify-content:center;align-items:center;height:400px;font-size:18px;color:var(--theme-text-secondary)}.loading .material-icons{margin-right:12px;animation:spin 1s linear infinite}.hamburger-menu-btn{display:none;position:fixed;top:12px;left:16px;z-index:var(--z-nav-mobile);background:linear-gradient(135deg,var(--theme-primary-dark) 0%,var(--theme-primary) 100%);border:none;color:var(--theme-text-inverse);padding:8px 12px;border-radius:4px;cursor:pointer;box-shadow:0 2px 8px var(--theme-shadow);transition:background-color .3s}.hamburger-menu-btn:hover{background:linear-gradient(135deg,var(--theme-primary) 0%,var(--theme-primary-dark) 100%)}.hamburger-menu-btn .material-icons{font-size:24px}.sidebar-backdrop{display:none;position:fixed;inset:64px 0 0;background-color:#00000080;z-index:1001;animation:fadeIn .3s ease-in-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media(max-width:1024px){.hamburger-menu-btn,.sidebar-backdrop{display:block}.content{margin-left:0;width:100%;padding:20px}}@media(max-width:768px){.hamburger-menu-btn{top:12px;left:12px;padding:6px 10px}.hamburger-menu-btn .material-icons{font-size:20px}.content{padding:16px}.content-area{border-radius:4px;min-height:400px}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:400px;padding:2rem;width:100%}.error-boundary-content{max-width:600px;width:100%;background:var(--theme-bg-primary);border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a;text-align:center}.error-boundary-icon{font-size:4rem;color:var(--theme-error);margin-bottom:1rem}.error-boundary-icon .material-icons{font-size:4rem}.error-boundary-title{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:var(--theme-text-primary)}.error-boundary-message{font-size:1rem;color:var(--theme-text-secondary);margin:0 0 1.5rem;line-height:1.5}.error-boundary-details{margin:1.5rem 0;text-align:left;border-top:1px solid var(--theme-gray-light);padding-top:1.5rem}.error-boundary-details-toggle{cursor:pointer;font-size:.9rem;color:var(--theme-text-secondary);-webkit-user-select:none;user-select:none;padding:.5rem;border-radius:4px;transition:background-color .2s}.error-boundary-details-toggle:hover{background-color:var(--theme-bg-secondary)}.error-boundary-details-content{margin-top:1rem;padding:1rem;background:var(--theme-bg-secondary);border-radius:4px;font-size:.85rem}.error-boundary-error-section{margin-bottom:1.5rem}.error-boundary-error-section:last-child{margin-bottom:0}.error-boundary-error-section strong{display:block;margin-bottom:.5rem;color:var(--theme-text-primary)}.error-boundary-pre{margin:0;padding:.75rem;background:var(--theme-bg-primary);border:1px solid var(--theme-gray-light);border-radius:4px;overflow-x:auto;font-size:.8rem;font-family:Courier New,monospace;color:var(--theme-text-primary);white-space:pre-wrap;word-break:break-word;max-height:300px;overflow-y:auto}.error-boundary-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.error-boundary-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.error-boundary-button-primary{background-color:var(--theme-primary);color:#fff}.error-boundary-button-primary:hover{background-color:var(--theme-primary-dark)}.error-boundary-button-secondary{background-color:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-gray-light)}.error-boundary-button-secondary:hover{background-color:var(--theme-gray-light)}.error-boundary-button .material-icons{font-size:1.25rem}.screen-width-warning-overlay{position:fixed;inset:0;background-color:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-notification);display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease-in-out}.screen-width-warning-content{background:linear-gradient(135deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);border-radius:12px;padding:32px 24px;max-width:400px;width:100%;text-align:center;box-shadow:0 8px 32px #0000004d;border:2px solid var(--theme-border)}.screen-width-warning-icon{margin-bottom:16px}.screen-width-warning-icon .material-icons{font-size:64px;color:var(--theme-primary);animation:pulse 2s ease-in-out infinite}.screen-width-warning-title{font-size:24px;font-weight:600;color:var(--theme-text-primary);margin:0 0 12px}.screen-width-warning-message{font-size:14px;color:var(--theme-text-secondary);line-height:1.6;margin:0 0 20px}.screen-width-warning-current{font-size:13px;color:var(--theme-text-secondary);padding:12px;background-color:var(--theme-bg-secondary);border-radius:6px;border:1px solid var(--theme-border-light);margin-top:16px}.screen-width-warning-current strong{color:var(--theme-primary);font-weight:600}@media(max-width:480px){.screen-width-warning-content{padding:24px 16px;border-radius:8px}.screen-width-warning-icon .material-icons{font-size:48px}.screen-width-warning-title{font-size:20px}.screen-width-warning-message{font-size:13px}}#root{width:100%;min-height:100vh}
