*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}[x-cloak]{display:none!important}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;scroll-behavior:smooth}body{min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{text-wrap:balance}a{color:inherit;text-decoration:none}ul,ol{list-style:none}table{border-collapse:collapse;border-spacing:0}button{cursor:pointer;background:none;border:none}fieldset{border:none}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--color-primary: #210de0;--color-primary-dark: #0F172A;--color-primary-mid: #334155;--color-primary-light: #F1F5F9;--color-accent: #F59E0B;--color-accent-dark: #D97706;--color-accent-light: #FFFBEB;--color-success: #16A34A;--color-success-light: #F0FDF4;--color-warning: #D97706;--color-warning-light: #FFFBEB;--color-danger: #DC2626;--color-danger-light: #FEF2F2;--color-info: #0891B2;--color-info-light: #ECFEFF;--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CBD5E1;--color-gray-400: #94A3B8;--color-gray-500: #64748B;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1E293B;--color-gray-900: #0F172A;--color-white: #FFFFFF;--color-body-bg: #F0F4F8;--color-card-bg: #ffffff;--color-sidebar-bg: #210de0;--color-sidebar-text: #94A3B8;--color-sidebar-active: #FFFFFF;--color-sidebar-hover-bg: rgba(255, 255, 255, .06);--color-sidebar-active-bg: rgba(29, 78, 216, .15);--font-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.6;--leading-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 10px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .08), 0 2px 4px -2px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .04);--shadow-card: 0 0 0 1px rgba(0, 0, 0, .04), 0 2px 8px rgba(0, 0, 0, .06);--transition-fast: .1s ease;--transition: .15s ease;--transition-medium: .25s ease;--transition-slow: .4s cubic-bezier(.16, 1, .3, 1);--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--topbar-height: 64px;--content-max-width: 1280px;--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--bp-2xl: 1536px;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-bg: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-toast: 800}html.dark{--color-body-bg: #0F172A;--color-card-bg: #1E293B;--color-sidebar-bg: #210de0;--color-gray-50: #1E293B;--color-gray-100: #273548;--color-gray-200: #334155;--color-white: #1E293B;--color-primary-light: #1E3A5F;--color-success-light: #052E16;--color-warning-light: #451A03;--color-danger-light: #450A0A;--color-info-light: #083344}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-normal);line-height:var(--leading-normal);color:var(--color-gray-800);background-color:var(--color-body-bg)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-gray-900)}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base);font-weight:var(--font-medium)}p{margin-bottom:var(--space-4);color:var(--color-gray-600)}p:last-child{margin-bottom:0}a{color:var(--color-primary);transition:color var(--transition)}a:hover{color:var(--color-primary-dark)}strong,b{font-weight:var(--font-semibold)}small{font-size:var(--text-sm)}code{font-family:var(--font-mono);font-size:.875em;background-color:var(--color-gray-100);padding:.15em .4em;border-radius:var(--radius-sm);color:var(--color-danger)}pre{font-family:var(--font-mono);font-size:var(--text-sm);background-color:var(--color-gray-900);color:var(--color-gray-100);padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto}pre code{background:none;padding:0;color:inherit}blockquote{border-left:4px solid var(--color-primary);padding-left:var(--space-4);margin:var(--space-4) 0;color:var(--color-gray-600);font-style:italic}hr{border:none;border-top:1px solid var(--color-gray-200);margin:var(--space-8) 0}::-moz-selection{background-color:var(--color-primary);color:var(--color-white)}::selection{background-color:var(--color-primary);color:var(--color-white)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-muted{color:var(--color-gray-500)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.text-primary{color:var(--color-primary)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progressDrain{0%{width:100%}to{width:0%}}.animate-fade-in{animation:fadeIn .3s ease both}.animate-fade-in-up{animation:fadeInUp .4s ease both}.animate-scale-in{animation:scaleIn .25s ease both}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1.5;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition);text-decoration:none;white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-dark)}.btn-secondary{background:var(--color-gray-100);color:var(--color-gray-700);border-color:var(--color-gray-200)}.btn-secondary:hover{background:var(--color-gray-200)}.btn-success{background:var(--color-success, #16a34a);color:#fff}.btn-success:hover{opacity:.9}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{opacity:.9}.btn-outline{background:transparent}.btn-ghost{background:transparent;color:var(--color-primary-dark);border-color:var(--color-gray-200)}.btn-ghost:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.btn-link{background:none;color:var(--color-primary);padding:0;border:none}.btn-link:hover{text-decoration:underline}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite;position:absolute}.btn-icon{padding:var(--space-2);aspect-ratio:1}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.btn-group .btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}a.btn{color:inherit}a.btn-primary,a.btn-primary:hover,a.btn-danger,a.btn-danger:hover{color:#fff}a.btn-ghost{color:var(--color-primary-dark)}a.btn-secondary{color:var(--color-gray-700)}.form-group{margin-bottom:var(--space-2)}.form-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-700);margin-bottom:2px}.form-control{display:block;width:100%;padding:6px var(--space-3);font-size:var(--text-sm);color:var(--color-gray-800);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);transition:border-color var(--transition),box-shadow var(--transition)}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1d4ed81a}.form-control::-moz-placeholder{color:var(--color-gray-400)}.form-control::placeholder{color:var(--color-gray-400)}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:var(--space-10)}.form-textarea{min-height:100px;resize:vertical}.input-group{display:flex}.form-error{display:block;font-size:var(--text-xs);color:var(--color-danger);margin-top:var(--space-1)}.is-invalid{border-color:var(--color-danger)!important}.form-hint{display:block;font-size:var(--text-xs);color:var(--color-gray-500);margin-top:var(--space-1)}.form-checkbox,.form-radio{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm)}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th{background:var(--color-gray-50);font-weight:var(--font-medium);color:var(--color-gray-600);text-align:left;padding:var(--space-3) var(--space-4);border-bottom:2px solid var(--color-gray-200)}.table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-700)}.table-striped tbody tr:nth-child(2n){background:var(--color-gray-50)}.table-hover tbody tr:hover{background:var(--color-primary-light);transition:background var(--transition)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg)}.card{background:var(--color-card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden;transition:box-shadow var(--transition-medium)}.card:hover{box-shadow:var(--shadow-lg)}.card-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-100);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);background:var(--color-gray-50)}.card-body{padding:var(--space-4)}.card-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-gray-100);background:var(--color-gray-50)}.card-stats{text-align:center;padding:var(--space-6)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-bg);padding:var(--space-4);animation:fadeIn .2s ease}.modal{background:var(--color-card-bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;animation:scaleIn .25s cubic-bezier(.16,1,.3,1)}.modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-100);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.modal-close{font-size:var(--text-2xl);color:var(--color-gray-400);cursor:pointer;line-height:1;padding:var(--space-1)}.modal-close:hover{color:var(--color-gray-700)}.modal-body{padding:var(--space-5);overflow-y:auto;flex:1}.modal-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-gray-100);display:flex;justify-content:flex-end;gap:var(--space-3)}.modal-sm{max-width:400px}.modal-lg{max-width:720px}.modal-xl{max-width:960px}.badge{display:inline-flex;align-items:center;padding:2px var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);line-height:1.5}.badge--success{background:var(--color-success-light);color:var(--color-success)}.badge--warning{background:var(--color-warning-light);color:var(--color-warning)}.badge--danger{background:var(--color-danger-light);color:var(--color-danger)}.badge--info{background:var(--color-info-light);color:var(--color-info)}.badge--primary{background:var(--color-primary-light);color:var(--color-primary)}.badge--neutral{background:var(--color-gray-100);color:var(--color-gray-600)}.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-card-bg);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:300px;max-width:420px;pointer-events:all;position:relative;overflow:hidden;animation:slideInRight .3s ease both}.toast--exiting{animation:fadeIn .2s ease reverse both}.toast--success{border-left:4px solid var(--color-success)}.toast--error{border-left:4px solid var(--color-danger)}.toast--warning{border-left:4px solid var(--color-warning)}.toast--info{border-left:4px solid var(--color-info)}.toast-icon{flex-shrink:0}.toast-message{flex:1;font-size:var(--text-sm);color:var(--color-gray-700)}.toast-close{color:var(--color-gray-400);cursor:pointer;font-size:var(--text-lg)}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:var(--color-primary);animation:progressDrain linear forwards}.avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);overflow:hidden;background:var(--color-primary-light);flex-shrink:0}.avatar-sm{width:32px;height:32px;font-size:var(--text-xs)}.avatar-md{width:40px;height:40px;font-size:var(--text-sm)}.avatar-lg{width:56px;height:56px;font-size:var(--text-lg)}.avatar-xl{width:80px;height:80px;font-size:var(--text-2xl)}.avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.avatar-initials{color:var(--color-primary);font-weight:var(--font-semibold)}.online-dot{position:absolute;bottom:0;right:0;width:10px;height:10px;background:var(--color-gray-400);border:2px solid var(--color-white);border-radius:50%}.online-dot.online{background:var(--color-success)}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);background:#fff;color:var(--color-sidebar-text);z-index:var(--z-fixed);transition:width var(--transition-medium);display:flex;flex-direction:column;overflow:hidden}.sidebar-header{position:relative;min-height:var(--topbar-height);display:flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.sidebar-logo{display:flex;align-items:center;justify-content:center;gap:var(--space-3);text-decoration:none;color:#fff;padding:4px 0;min-width:0}.sidebar-logo img{display:block;max-height:44px;width:auto;max-width:100%;-o-object-fit:contain;object-fit:contain}@media(max-width:768px){.sidebar-header .sidebar-toggle{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%)}}.sidebar-logo-icon{width:36px;height:36px;background:var(--color-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:var(--font-bold);font-size:var(--text-lg);color:#fff;flex-shrink:0}.sidebar-logo-text{font-size:var(--text-lg);font-weight:var(--font-bold);color:#fff}.sidebar-toggle{color:var(--color-sidebar-text);padding:var(--space-2);border-radius:var(--radius-sm);display:none}.sidebar-toggle:hover{background:#ffffff14;color:#fff}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-3)}.nav-group{margin-bottom:var(--space-2)}.nav-group-label{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2) var(--space-3);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-gray-400);cursor:pointer;border-radius:var(--radius-sm);margin-top:var(--space-3)}.nav-group-label:hover{color:var(--color-gray-300)}.nav-chevron{transition:transform var(--transition);flex-shrink:0}.nav-chevron.rotated{transform:rotate(180deg)}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-primary-dark);transition:all var(--transition);margin-bottom:2px;font-size:var(--text-sm);text-decoration:none;border-left:3px solid transparent}.nav-item:hover{background:var(--color-sidebar-hover-bg);color:#000}.nav-item.active{background:var(--color-sidebar-bg);color:#fff;border-left-color:var(--color-primary);font-weight:var(--font-medium)}.nav-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.nav-icon svg{width:20px;height:20px}.nav-badge{background:var(--color-danger);color:#fff;font-size:10px;padding:1px 6px;border-radius:var(--radius-full);margin-left:auto}.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed-width)}.sidebar-collapsed .nav-label,.sidebar-collapsed .sidebar-logo-text,.sidebar-collapsed .nav-group-label,.sidebar-collapsed .nav-badge,.sidebar-collapsed .nav-chevron{display:none}.sidebar-collapsed .nav-item{justify-content:center;padding:var(--space-2)}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:calc(var(--z-fixed) - 1)}@media(max-width:768px){.sidebar{transform:translate(-100%);transition:transform var(--transition-medium);z-index:calc(var(--z-fixed) + 1)}.sidebar.sidebar-open{transform:translate(0)}.sidebar-collapsed .sidebar{width:var(--sidebar-width)}.sidebar-collapsed .nav-label,.sidebar-collapsed .sidebar-logo-text,.sidebar-collapsed .nav-group-label,.sidebar-collapsed .nav-badge,.sidebar-collapsed .nav-chevron{display:initial}.sidebar-collapsed .nav-item{justify-content:flex-start;padding:var(--space-2) var(--space-3)}.sidebar-toggle{display:flex}}.topbar{position:sticky;top:0;height:var(--topbar-height);background:var(--color-card-bg);border-bottom:1px solid var(--color-gray-200);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6);z-index:var(--z-sticky)}.topbar-left{display:flex;align-items:center;gap:var(--space-4)}.topbar-right{display:flex;align-items:center;gap:var(--space-3)}.topbar-menu-btn{display:none;color:var(--color-gray-600);padding:var(--space-2);border-radius:var(--radius-md)}.topbar-menu-btn:hover{background:var(--color-gray-100)}@media(max-width:768px){.topbar-menu-btn{display:flex}}.app-switcher{position:relative}.app-switcher__btn{display:flex;align-items:center;gap:8px;padding:6px 14px;border:1px solid var(--color-gray-200);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-600);background:var(--color-gray-50);cursor:pointer;transition:all var(--transition)}.app-switcher__btn:hover{background:var(--color-card-bg);border-color:var(--color-gray-300);color:var(--color-gray-800)}.app-switcher__label{font-size:var(--text-sm);font-weight:var(--font-medium)}.app-switcher__dropdown{position:absolute;left:0;top:calc(100% + 8px);width:320px;background:var(--color-card-bg);border:1px solid var(--color-gray-200);border-radius:12px;box-shadow:0 12px 36px #0000001a,0 2px 8px #0000000f;z-index:var(--z-dropdown, 50);overflow:hidden}.app-switcher__header{padding:12px 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-gray-400);border-bottom:1px solid var(--color-gray-100)}.app-switcher__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:12px}.app-switcher__item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 8px;border-radius:10px;text-decoration:none;transition:background .15s}.app-switcher__item:hover,.app-switcher__item--active{background:var(--color-gray-50)}.app-switcher__icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-switcher__name{font-size:12px;font-weight:500;color:var(--color-gray-700)}.topbar-user{position:relative}.topbar-user-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);transition:background var(--transition);cursor:pointer}.topbar-user-btn:hover{background:var(--color-gray-100)}.topbar-user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-700)}.notification-bell{position:relative}.notification-btn{position:relative;color:var(--color-gray-500);padding:var(--space-2);border-radius:var(--radius-md);transition:all var(--transition)}.notification-btn:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.notification-count{position:absolute;top:2px;right:2px;min-width:18px;height:18px;background:var(--color-danger);color:#fff;font-size:10px;font-weight:var(--font-bold);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;border:2px solid var(--color-card-bg)}.notification-dropdown{position:absolute;right:0;top:100%;width:360px;max-height:400px;overflow-y:auto;margin-top:var(--space-2)}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100)}.notification-header h4{font-size:var(--text-sm);font-weight:var(--font-semibold)}.notification-item{display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-50);transition:background var(--transition);text-decoration:none}.notification-item:hover{background:var(--color-gray-50)}.notification-item.unread{background:var(--color-primary-light)}.notification-text{font-size:var(--text-sm);color:var(--color-gray-700)}.notification-time{font-size:var(--text-xs);color:var(--color-gray-400)}.notification-empty{padding:var(--space-8);text-align:center;color:var(--color-gray-400);font-size:var(--text-sm)}.dropdown{position:relative;display:inline-block}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:var(--space-1);background:var(--color-card-bg);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:180px;z-index:var(--z-dropdown);padding:var(--space-1) 0;animation:scaleIn .15s ease}.dropdown-item{display:block;width:100%;text-align:left;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-gray-700);transition:background var(--transition)}.dropdown-item:hover{background:var(--color-gray-50)}.dropdown-item--danger{color:var(--color-danger)}.dropdown-divider{border-top:1px solid var(--color-gray-100);margin:var(--space-1) 0}.pagination-wrapper{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0}.pagination{display:flex;gap:var(--space-1)}.page-link{display:flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 var(--space-2);font-size:var(--text-sm);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);color:var(--color-gray-600);transition:all var(--transition)}.page-link:hover{background:var(--color-gray-50);border-color:var(--color-gray-300)}.page-link.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.page-link.disabled{opacity:.4;pointer-events:none}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-4);animation:fadeInUp .3s ease}.alert-success{background:var(--color-success-light);color:var(--color-success);border:1px solid currentColor}.alert-warning{background:var(--color-warning-light);color:var(--color-warning);border:1px solid currentColor}.alert-danger{background:var(--color-danger-light);color:var(--color-danger);border:1px solid currentColor}.alert-info{background:var(--color-info-light);color:var(--color-info);border:1px solid currentColor}.alert-dismissible{padding-right:var(--space-10);position:relative}.alert-close{position:absolute;right:var(--space-3);top:var(--space-3);font-size:var(--text-lg);cursor:pointer;opacity:.6}.alert-close:hover{opacity:1}.tabs{display:flex;border-bottom:2px solid var(--color-gray-200);gap:0}.tab-item{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-500);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition)}.tab-item:hover{color:var(--color-gray-700)}.tab-item.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-content{padding:var(--space-5) 0}.stepper{display:flex;align-items:center;gap:0;padding:var(--space-4) 0}.step{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);position:relative;flex:1}.step-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:var(--font-semibold);border:2px solid var(--color-gray-300);background:var(--color-white);color:var(--color-gray-400);z-index:1}.step-label{font-size:var(--text-xs);color:var(--color-gray-500);text-align:center}.step-completed .step-circle{background:var(--color-success);border-color:var(--color-success);color:#fff}.step-current .step-circle{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 0 0 4px #1d4ed833;animation:pulse 2s infinite}.step-connector{position:absolute;top:16px;left:calc(50% + 20px);right:calc(-50% + 20px);height:2px;background:var(--color-gray-200)}.step-completed+.step .step-connector,.step-completed .step-connector{background:var(--color-success)}.stats-card{background:var(--color-card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-5) var(--space-6);display:flex;align-items:flex-start;justify-content:space-between;transition:box-shadow var(--transition-medium),transform var(--transition-medium);border:1px solid var(--color-gray-100)}.stats-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stats-card-content{display:flex;flex-direction:column;gap:var(--space-1)}.stats-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-gray-900);line-height:1.2}.stats-label{font-size:var(--text-sm);color:var(--color-gray-500);font-weight:var(--font-medium)}.stats-trend{font-size:var(--text-xs);font-weight:var(--font-semibold);margin-top:var(--space-1)}.trend-up{color:var(--color-success)}.trend-down{color:var(--color-danger)}.stats-icon{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--color-primary-light);display:flex;align-items:center;justify-content:center;color:var(--color-primary);flex-shrink:0}.stats-icon svg{width:24px;height:24px}.timeline{position:relative;padding-left:var(--space-8)}.timeline:before{content:"";position:absolute;left:11px;top:0;bottom:0;width:2px;background:var(--color-gray-200)}.timeline-item{position:relative;padding-bottom:var(--space-6)}.timeline-dot{position:absolute;left:calc(-1 * var(--space-8) + 4px);width:16px;height:16px;border-radius:50%;background:var(--color-primary);border:3px solid var(--color-primary-light);z-index:1}.timeline-content{background:var(--color-card-bg);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.timeline-time{font-size:var(--text-xs);color:var(--color-gray-400);margin-top:var(--space-1)}.chat-drawer{position:fixed;right:0;top:0;bottom:0;width:380px;background:var(--color-card-bg);box-shadow:var(--shadow-xl);z-index:var(--z-modal);display:flex;flex-direction:column;transform:translate(100%);transition:transform var(--transition-medium)}.chat-drawer.open{transform:translate(0)}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100)}.chat-contacts{flex:1;overflow-y:auto}.chat-contact{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--transition)}.chat-contact:hover{background:var(--color-gray-50)}.chat-messages{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.bubble{max-width:75%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-sm);line-height:1.5}.bubble-sent{background:var(--color-primary);color:#fff;align-self:flex-end;border-bottom-right-radius:var(--radius-sm)}.bubble-received{background:var(--color-gray-100);color:var(--color-gray-800);align-self:flex-start;border-bottom-left-radius:var(--radius-sm)}.chat-input{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-gray-100)}.chat-input textarea{flex:1;resize:none;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.typing-indicator{display:flex;gap:4px;padding:var(--space-2)}.typing-indicator span{width:6px;height:6px;background:var(--color-gray-400);border-radius:50%;animation:pulse 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@media(max-width:640px){.chat-drawer{width:100%}}.datatable-wrapper{background:var(--color-card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.datatable-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-100);flex-wrap:wrap}.dt-sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dt-sortable:hover{color:var(--color-primary)}.dt-checkbox{width:16px;height:16px;accent-color:var(--color-primary)}.dt-actions{display:flex;gap:var(--space-1)}.dt-loading{position:relative}.dt-loading:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);background-size:200% 100%;animation:shimmer 1.5s infinite}.dt-empty{padding:var(--space-12);text-align:center;color:var(--color-gray-400)}@media(max-width:640px){.dt-hide-sm{display:none}}.layout-admin{display:flex;min-height:100vh;background:var(--color-body-bg)}.layout-main{flex:1;margin-left:var(--sidebar-width);transition:margin-left var(--transition-medium);min-height:100vh;display:flex;flex-direction:column;min-width:0;overflow-x:hidden}.sidebar-collapsed .layout-main{margin-left:var(--sidebar-collapsed-width)}.layout-content{flex:1;padding:var(--space-6) var(--space-8);width:100%;min-width:0;animation:fadeInUp .4s ease both}.page-header{margin-bottom:var(--space-5);background:var(--color-card-bg);border:1px solid var(--color-gray-100);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-5)}.page-header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.page-header-left{display:flex;align-items:center;gap:var(--space-3)}.page-header-right{display:flex;align-items:center;gap:var(--space-4)}.page-title{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin:0}.breadcrumbs{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs)}.breadcrumb-item{color:var(--color-gray-400);text-decoration:none;font-weight:var(--font-medium);transition:color var(--transition)}.breadcrumb-item.active{color:var(--color-gray-600)}.breadcrumb-chevron{color:var(--color-gray-300);flex-shrink:0}.page-actions{display:flex;gap:var(--space-2)}.breadcrumbs{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);font-size:var(--text-sm)}.breadcrumb-item{color:var(--color-gray-500);text-decoration:none}.breadcrumb-item:hover{color:var(--color-primary)}.breadcrumb-item.active{color:var(--color-gray-700);font-weight:var(--font-medium)}.breadcrumb-separator{color:var(--color-gray-300)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-12) var(--space-4)}.empty-state-icon{color:var(--color-gray-300)}.empty-state-text{color:var(--color-gray-500);font-size:var(--text-sm)}@media(max-width:768px){.layout-main{margin-left:0}.layout-content{padding:var(--space-4)}}.page-action-link{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-primary);text-decoration:none;padding:var(--space-1) var(--space-3);border:1px solid var(--color-primary);border-radius:var(--radius-md);transition:all var(--transition);white-space:nowrap}.page-action-link:hover{background:var(--color-primary);color:#fff}.layout-employee{display:flex;min-height:100vh;background:var(--color-body-bg)}.candidate-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--color-body-bg, #f8f9fa)}.candidate-navbar{position:sticky;top:0;z-index:100;height:60px;background:var(--color-card-bg, #fff);border-bottom:1px solid var(--color-gray-200, #e5e7eb)}.candidate-navbar__inner{max-width:900px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6, 24px)}.candidate-navbar__brand{font-size:var(--text-xl, 1.25rem);font-weight:var(--font-bold, 700);color:var(--color-primary, #1d4ed8);text-decoration:none}.candidate-navbar__right{display:flex;align-items:center;gap:var(--space-4, 16px)}.candidate-navbar__user{display:flex;align-items:center;gap:var(--space-2, 8px)}.candidate-navbar__avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary, #1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm, .875rem);font-weight:var(--font-semibold, 600)}.candidate-navbar__name{font-size:var(--text-sm, .875rem);font-weight:var(--font-medium, 500);color:var(--color-text, #1f2937)}.candidate-content{flex:1;max-width:900px;width:100%;margin:0 auto;padding:32px 24px}.candidate-footer{height:56px;background:var(--color-gray-50, #f9fafb);border-top:1px solid var(--color-gray-200, #e5e7eb)}.candidate-footer__inner{max-width:900px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6, 24px);font-size:var(--text-xs, .75rem);color:var(--color-text-muted, #6b7280)}.candidate-footer__links{display:flex;gap:var(--space-4, 16px)}.candidate-footer__links a{color:var(--color-text-muted, #6b7280);text-decoration:none}.candidate-footer__links a:hover{color:var(--color-primary, #1d4ed8)}.pipeline-stepper{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6, 24px);position:relative;padding:0 var(--space-2, 8px)}.pipeline-stepper__connector{position:absolute;top:16px;left:32px;right:32px;height:2px;background:var(--color-gray-200, #e5e7eb);z-index:0}.pipeline-stepper__node{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1;min-width:80px}.pipeline-stepper__circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;border:2px solid var(--color-gray-300, #d1d5db);background:var(--color-card-bg, #fff);color:var(--color-gray-400, #9ca3af);transition:all .3s ease}.pipeline-stepper__label{margin-top:var(--space-1, 4px);font-size:var(--text-xs, .75rem);color:var(--color-text-muted, #6b7280);text-align:center;max-width:80px}.pipeline-stepper__node--completed .pipeline-stepper__circle{background:var(--color-success, #16a34a);border-color:var(--color-success, #16a34a);color:#fff}.pipeline-stepper__node--completed .pipeline-stepper__label{color:var(--color-success, #16a34a)}.pipeline-stepper__node--active .pipeline-stepper__circle{background:var(--color-primary, #1d4ed8);border-color:var(--color-primary, #1d4ed8);color:#fff;animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite}.pipeline-stepper__node--active .pipeline-stepper__label{color:var(--color-primary, #1d4ed8);font-weight:var(--font-semibold, 600)}.pipeline-stepper__node--locked .pipeline-stepper__circle{cursor:default}.pipeline-stepper__node--locked .pipeline-stepper__label{color:var(--color-gray-400, #9ca3af)}.pipeline-stepper__node--rejected .pipeline-stepper__circle{background:var(--color-danger, #dc2626);border-color:var(--color-danger, #dc2626);color:#fff}.pipeline-stepper__node--rejected .pipeline-stepper__label{color:var(--color-danger, #dc2626)}@keyframes pulse-ring{0%{box-shadow:0 0 #1d4ed866}70%{box-shadow:0 0 0 10px #1d4ed800}to{box-shadow:0 0 #1d4ed800}}.candidate-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-gray-200, #e5e7eb);margin-bottom:var(--space-6, 24px);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.candidate-tabs::-webkit-scrollbar{display:none}.candidate-tab{padding:var(--space-3, 12px) var(--space-4, 16px);font-size:var(--text-sm, .875rem);font-weight:var(--font-medium, 500);color:var(--color-text-muted, #6b7280);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;scroll-snap-align:start;display:flex;align-items:center;gap:var(--space-1, 4px);min-height:44px;transition:color .2s,border-color .2s}.candidate-tab:hover:not(.candidate-tab--locked){color:var(--color-primary, #1d4ed8)}.candidate-tab--active{color:var(--color-primary, #1d4ed8);font-weight:var(--font-semibold, 600);border-bottom-color:var(--color-primary, #1d4ed8)}.candidate-tab--locked{opacity:.5;cursor:default}.candidate-tab__lock{font-size:12px;opacity:.6}.candidate-panel{min-height:200px}.status-card{padding:var(--space-4, 16px) var(--space-5, 20px);border-radius:var(--radius-lg, 8px);margin-bottom:var(--space-6, 24px);border:1px solid transparent}.status-card--info{background:var(--color-info-bg, #eff6ff);border-color:var(--color-info-border, #bfdbfe);color:var(--color-info, #1e40af)}.status-card--success{background:var(--color-success-bg, #f0fdf4);border-color:var(--color-success-border, #bbf7d0);color:var(--color-success, #166534)}.status-card--warning{background:var(--color-warning-bg, #fffbeb);border-color:var(--color-warning-border, #fde68a);color:var(--color-warning-dark, #92400e)}.status-card--danger{background:var(--color-danger-bg, #fef2f2);border-color:var(--color-danger-border, #fecaca);color:var(--color-danger, #991b1b)}.status-card--muted{background:var(--color-gray-50, #f9fafb);border-color:var(--color-gray-200, #e5e7eb);color:var(--color-text-muted, #6b7280)}.status-card--teal{background:#f0fdfa;border-color:#99f6e4;color:#115e59}.status-card__message{font-size:var(--text-base, 1rem);font-weight:var(--font-medium, 500)}.upload-zone{border:2px dashed var(--color-gray-300, #d1d5db);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 24px);text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.upload-zone:hover,.upload-zone--dragover{border-color:var(--color-primary, #1d4ed8);background:var(--color-primary-bg, #eff6ff)}.upload-zone__icon{font-size:32px;color:var(--color-gray-400, #9ca3af);margin-bottom:var(--space-2, 8px)}.upload-zone__text{font-size:var(--text-sm, .875rem);color:var(--color-text-muted, #6b7280)}.upload-zone__hint{font-size:var(--text-xs, .75rem);color:var(--color-gray-400, #9ca3af);margin-top:var(--space-1, 4px)}.upload-zone__progress{height:4px;background:var(--color-gray-200, #e5e7eb);border-radius:2px;margin-top:var(--space-3, 12px);overflow:hidden}.upload-zone__progress-bar{height:100%;background:var(--color-primary, #1d4ed8);transition:width .3s ease;border-radius:2px}.doc-item{padding:var(--space-4, 16px);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-lg, 8px);margin-bottom:var(--space-3, 12px);background:var(--color-card-bg, #fff)}.doc-item__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2, 8px)}.doc-item__name{font-weight:var(--font-semibold, 600);font-size:var(--text-sm, .875rem)}.doc-item__badge{font-size:var(--text-xs, .75rem);padding:2px 8px;border-radius:var(--radius-full, 9999px)}.doc-item__instructions{font-size:var(--text-sm, .875rem);color:var(--color-text-muted, #6b7280);margin-bottom:var(--space-2, 8px)}.doc-item__meta{font-size:var(--text-xs, .75rem);color:var(--color-gray-400, #9ca3af);margin-bottom:var(--space-3, 12px)}.doc-item__status{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:var(--text-sm, .875rem);margin-bottom:var(--space-3, 12px)}.doc-item__status-dot{width:8px;height:8px;border-radius:50%}.doc-item__status-dot--pending{background:var(--color-gray-400, #9ca3af)}.doc-item__status-dot--uploaded{background:var(--color-warning, #f59e0b)}.doc-item__status-dot--verified{background:var(--color-success, #16a34a)}.doc-item__status-dot--rejected{background:var(--color-danger, #dc2626)}.doc-item__rejection{padding:var(--space-3, 12px);background:var(--color-danger-bg, #fef2f2);border:1px solid var(--color-danger-border, #fecaca);border-radius:var(--radius-md, 6px);font-size:var(--text-sm, .875rem);color:var(--color-danger, #991b1b);margin-bottom:var(--space-3, 12px)}.interview-card{padding:var(--space-5, 20px);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-lg, 8px);background:var(--color-card-bg, #fff);margin-bottom:var(--space-4, 16px)}.interview-card__stage{font-weight:var(--font-semibold, 600);font-size:var(--text-base, 1rem);margin-bottom:var(--space-3, 12px)}.interview-card__detail{display:flex;gap:var(--space-2, 8px);font-size:var(--text-sm, .875rem);color:var(--color-text-muted, #6b7280);margin-bottom:var(--space-2, 8px)}.interview-card__detail strong{color:var(--color-text, #1f2937);min-width:80px}.interview-card__actions{display:flex;gap:var(--space-3, 12px);margin-top:var(--space-4, 16px)}.offer-view{background:var(--color-card-bg, #fff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-lg, 8px);padding:var(--space-8, 32px);margin-bottom:var(--space-6, 24px)}.offer-view__header{text-align:center;margin-bottom:var(--space-6, 24px);padding-bottom:var(--space-4, 16px);border-bottom:1px solid var(--color-gray-200, #e5e7eb)}.offer-view__content{line-height:1.7;font-size:var(--text-base, 1rem)}.offer-key-terms{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4, 16px);padding:var(--space-4, 16px);background:var(--color-gray-50, #f9fafb);border-radius:var(--radius-lg, 8px);margin:var(--space-6, 24px) 0}.offer-key-terms__item{text-align:center}.offer-key-terms__label{font-size:var(--text-xs, .75rem);color:var(--color-text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em}.offer-key-terms__value{font-size:var(--text-base, 1rem);font-weight:var(--font-semibold, 600);color:var(--color-text, #1f2937);margin-top:var(--space-1, 4px)}.offer-actions{display:flex;gap:var(--space-4, 16px);justify-content:center;margin-top:var(--space-6, 24px)}.offer-expiry{text-align:right;font-size:var(--text-sm, .875rem);color:var(--color-warning-dark, #92400e);margin-bottom:var(--space-4, 16px)}.app-summary{background:var(--color-card-bg, #fff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-lg, 8px);padding:var(--space-5, 20px);margin-bottom:var(--space-4, 16px)}.app-summary__title{font-size:var(--text-lg, 1.125rem);font-weight:var(--font-semibold, 600);margin-bottom:var(--space-3, 12px)}.app-summary__row{display:flex;gap:var(--space-2, 8px);font-size:var(--text-sm, .875rem);padding:var(--space-1, 4px) 0;color:var(--color-text-muted, #6b7280)}.app-summary__row strong{color:var(--color-text, #1f2937);min-width:120px}@media(max-width:640px){.candidate-content{padding:16px}.candidate-navbar__name{display:none}.pipeline-stepper{flex-direction:column;gap:var(--space-2, 8px);align-items:flex-start}.pipeline-stepper__connector{display:none}.pipeline-stepper__node{flex-direction:row;min-width:unset;gap:var(--space-3, 12px)}.pipeline-stepper__label{margin-top:0;text-align:left;max-width:unset}.candidate-tabs{gap:0}.candidate-tab{min-height:44px;min-width:44px}.offer-actions{flex-direction:column}.offer-key-terms{grid-template-columns:1fr 1fr}}.layout-public{min-height:100vh;background:#fff}.lp-navbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #F1F5F9}.lp-navbar-container{max-width:1180px;margin:0 auto;padding:0 24px;height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.lp-navbar-brand{display:flex;align-items:center}.lp-navbar-brand img{height:48px;width:auto;display:block}.lp-navbar-links{display:flex;align-items:center;gap:36px;flex:1;justify-content:center}.lp-navbar-link{font-size:14px;font-weight:500;color:#475569;text-decoration:none;transition:color .18s ease;position:relative}.lp-navbar-link:hover,.lp-navbar-link.is-active{color:#2563eb}.lp-navbar-link.is-active:after{content:"";position:absolute;bottom:-26px;left:50%;transform:translate(-50%);width:18px;height:3px;background:#2563eb;border-radius:2px}.lp-navbar-actions{display:flex;align-items:center;gap:10px}.lp-btn--sm{padding:9px 20px;font-size:13px}.lp-navbar-hamburger{display:none;background:none;border:none;cursor:pointer;color:#475569;padding:6px;border-radius:6px}@media(max-width:880px){.lp-navbar-hamburger{display:inline-flex}.lp-navbar-links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;padding:14px 24px 18px;gap:14px;border-bottom:1px solid #F1F5F9;box-shadow:0 6px 20px -10px #0f172a26}.lp-navbar-links.is-open{display:flex}.lp-navbar-link.is-active:after{display:none}}.lp-footer{background:var(--lp-navy, #0A1628);color:#ffffffb3;padding:60px 0 24px}.lp-footer-container{max-width:1180px;margin:0 auto;padding:0 24px}.lp-footer-grid{display:grid;grid-template-columns:1.2fr 1.4fr;gap:60px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.06)}.lp-footer-brand img{height:50px;margin-bottom:16px}.lp-footer-about{font-size:13px;line-height:1.7;max-width:380px}.lp-footer-heading{font-size:16px;font-weight:700;color:#fff;margin:0 0 18px}.lp-footer-info-list{display:flex;flex-direction:column;gap:14px}.lp-footer-info{display:flex;align-items:center;gap:12px;font-size:13px;color:#ffffffbf}.lp-footer-info-icon{width:34px;height:34px;border-radius:50%;background:#3b82f626;color:#3b82f6;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.lp-footer-info a{color:inherit;text-decoration:none}.lp-footer-info a:hover{color:#fff}.lp-footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:20px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#ffffff73;flex-wrap:wrap;gap:16px}.lp-footer-bottom-social{display:flex;gap:8px}.lp-footer-bottom-social a{width:28px;height:28px;border-radius:50%;background:#ffffff14;color:#fff9;display:inline-flex;align-items:center;justify-content:center;transition:all .18s ease}.lp-footer-bottom-social a:hover{background:#2563eb;color:#fff}@media(max-width:760px){.lp-footer-grid{grid-template-columns:1fr;gap:36px}.lp-footer-bottom{justify-content:center;text-align:center}}.section{padding:64px 24px;max-width:1180px;margin:0 auto}.auth-layout{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 50%,var(--color-primary-mid) 100%);padding:var(--space-4)}.auth-container{width:100%;max-width:440px}.auth-card{background:var(--color-card-bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-8);animation:fadeInUp .5s ease both}.auth-logo{text-align:center;margin-bottom:var(--space-8)}.auth-brand{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--color-primary)}.auth-subtitle{font-size:var(--text-sm);color:var(--color-gray-500);margin-top:var(--space-1)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5);margin-bottom:var(--space-8)}.chart-container{position:relative;width:100%;aspect-ratio:16/9}.chart-container canvas{width:100%!important;height:100%!important}.careers-hero{text-align:center;padding:var(--space-16) var(--space-6);background:var(--color-primary-light)}.careers-hero h1{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--color-gray-900);margin-bottom:var(--space-3)}.careers-hero p{font-size:var(--text-lg);color:var(--color-gray-600)}.careers-listings{max-width:var(--content-max-width);margin:0 auto;padding:var(--space-8) var(--space-6)}.filter-bar{display:flex;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap}.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-5)}.job-card{background:var(--color-card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-5);transition:all var(--transition-medium)}.job-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.job-card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-900);margin-bottom:var(--space-2)}.job-card-meta{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-3);font-size:var(--text-sm);color:var(--color-gray-500)}.attendance-legend{display:flex;gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--color-card-bg);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:500;color:var(--color-gray-600);flex-wrap:wrap}.legend-item{display:inline-flex;align-items:center;gap:5px}.legend-dot{width:20px;height:18px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}.att-wrapper{overflow:auto;max-height:calc(100vh - 300px);width:100%}.att-wrapper::-webkit-scrollbar{width:8px;height:10px}.att-wrapper::-webkit-scrollbar-track{background:var(--color-gray-100)}.att-wrapper::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:5px}.att-wrapper::-webkit-scrollbar-corner{background:var(--color-gray-100)}.att-grid{border-collapse:collapse;font-size:11px}.att-grid th,.att-grid td{padding:0;text-align:center;white-space:nowrap}.att-corner{position:sticky;left:0;background:var(--color-primary);color:#fff;width:130px;min-width:130px;max-width:130px;border:1px solid rgba(255,255,255,.35)}.att-corner-month{top:0;z-index:30}.att-corner-week{top:18px;z-index:28}.att-corner-day{top:34px;z-index:26;font-weight:600;font-size:11px;padding:0 12px;text-align:left}.att-month{position:sticky;top:0;z-index:14;background:var(--color-primary);color:#fff;font-weight:700;font-size:11px;padding:6px 0;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(255,255,255,.35);box-shadow:0 1px #1a3a5c}.att-week{position:sticky;top:19px;z-index:12;background:var(--color-primary);color:#fff;font-weight:600;font-size:10px;padding:4px 0;border:1px solid rgba(255,255,255,.35);box-shadow:0 1px #1a3a5c}.att-day{position:sticky;top:36px;z-index:10;background:var(--color-primary);color:#fff;width:28px;min-width:28px;padding:2px 0 3px;border:1px solid rgba(255,255,255,.3)}.att-day--we{background:var(--color-primary);color:#ffffff8c}.att-day-num{display:block;font-weight:700;font-size:11px;line-height:1.3}.att-day-ltr{display:block;font-size:9px;font-weight:600;opacity:.85}.att-name{position:sticky;left:0;z-index:5;background:#fff;padding:0 10px;text-align:left;width:130px;min-width:130px;max-width:130px;font-size:11px;font-weight:500;color:var(--color-gray-800);height:30px;line-height:30px;border-right:2px solid var(--color-gray-300);border-bottom:1px solid var(--color-gray-100);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.att-grid tbody tr:nth-child(2n) .att-name{background:#f8fafc}.att-grid tbody tr:hover .att-name{background:#eff6ff}.att-cell{width:28px;min-width:28px;height:30px;font-weight:700;font-size:10px;border:1px solid var(--color-gray-100);vertical-align:middle;text-align:center}.att-cell:hover{opacity:.7;cursor:pointer}.cell-present{background:#bbf7d0;color:#15803d}.cell-absent{background:#fecaca;color:#dc2626}.cell-late{background:#fed7aa;color:#b45309}.cell-halfday{background:#bae6fd;color:#0369a1}.cell-leave{background:#ddd6fe;color:#6d28d9}.cell-wfh{background:#bfdbfe;color:#1d4ed8}.cell-holiday{background:#e2e8f0;color:#64748b}.cell-weekend{background:var(--color-gray-50)}.att-grid tbody tr:nth-child(2n) .att-cell:not([class*=cell-present]):not([class*=cell-absent]):not([class*=cell-late]):not([class*=cell-halfday]):not([class*=cell-leave]):not([class*=cell-wfh]):not([class*=cell-holiday]):not([class*=cell-weekend]){background:#f8fafc}.emp-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-gray-200);padding:0 var(--space-4);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.emp-tabs::-webkit-scrollbar{display:none}.emp-tab{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-gray-500);white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition);display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;background:none;border-top:none;border-left:none;border-right:none}.emp-tab:hover{color:var(--color-primary);background:var(--color-primary-light, #EFF6FF);border-radius:var(--radius-full)}.emp-tab--active{color:#fff;background:var(--color-primary);border-radius:var(--radius-full);border-bottom-color:transparent;padding:var(--space-2) var(--space-4);margin:var(--space-2) 0}.emp-tab--active:hover{color:#fff;background:var(--color-primary-dark)}.emp-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--color-gray-200);color:var(--color-gray-600);font-size:10px;font-weight:700;border-radius:var(--radius-full)}.emp-tab--active .emp-tab-badge{background:#ffffff4d;color:#fff}.emp-profile-grid{display:grid;grid-template-columns:300px 1fr;gap:var(--space-5);padding:var(--space-2) var(--space-2) var(--space-4)}.emp-profile-card{position:relative;background:var(--color-white, #fff);border:1px solid var(--color-gray-100);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0f172a0a}.emp-profile-cover{height:80px;background:linear-gradient(135deg,#2563eb,#1e40af)}.emp-profile-avatar-wrap{display:flex;justify-content:center;margin-top:-42px}.emp-profile-avatar-wrap .avatar{width:84px;height:84px;font-size:28px;border:4px solid #fff;box-shadow:0 4px 14px -4px #0f172a40;background:#dbeafe;color:#1d4ed8;font-weight:700}.emp-profile-identity{text-align:center;padding:var(--space-3) var(--space-4) var(--space-4)}.emp-profile-name{font-size:17px;font-weight:700;color:var(--color-gray-900);margin:0 0 4px}.emp-profile-role{font-size:12px;color:var(--color-gray-500);margin:0 0 10px}.emp-profile-code{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-gray-500);background:var(--color-gray-100);border-radius:4px;padding:3px 8px;margin-bottom:10px}.emp-profile-badge{display:flex;justify-content:center}.emp-profile-actions{display:flex;gap:8px;padding:0 var(--space-4) var(--space-4)}.emp-action-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border-radius:6px;background:var(--color-gray-50, #F8FAFC);border:1px solid var(--color-gray-100);color:var(--color-gray-700);font-size:12px;font-weight:500;text-decoration:none;transition:all .18s ease}.emp-action-btn:hover{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.emp-profile-meta{display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid var(--color-gray-100)}.emp-profile-meta>div{padding:14px 10px;text-align:center}.emp-profile-meta>div+div{border-left:1px solid var(--color-gray-100)}.emp-profile-meta dt{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-gray-500);margin-bottom:4px}.emp-profile-meta dd{margin:0;font-size:13px;font-weight:600;color:var(--color-gray-800)}.emp-profile-info{display:flex;flex-direction:column;gap:var(--space-4)}.emp-info-card{background:var(--color-white, #fff);border:1px solid var(--color-gray-100);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0f172a0a}.emp-info-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--color-gray-100);background:var(--color-gray-50, #F8FAFC)}.emp-info-icon{width:28px;height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:#dbeafe;color:#1d4ed8;flex-shrink:0}.emp-info-head h4{margin:0;font-size:14px;font-weight:700;color:var(--color-gray-900)}.emp-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:4px 0}.emp-field{display:flex;flex-direction:column;gap:4px;padding:14px 18px;border-bottom:1px solid var(--color-gray-100)}.emp-field--wide{grid-column:1 / -1}.emp-info-grid>.emp-field:nth-last-child(-n+2):not(.emp-field--wide){border-bottom:0}.emp-info-grid>.emp-field--wide:last-child{border-bottom:0}.emp-field-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-gray-500)}.emp-field-value{font-size:14px;color:var(--color-gray-900);font-weight:500;word-break:break-word}.emp-field--muted{color:var(--color-gray-400);font-weight:400}.emp-field-link{color:#1d4ed8;text-decoration:none}.emp-field-link:hover{text-decoration:underline}.emp-field-value--money{font-weight:700;color:#047857;font-variant-numeric:tabular-nums}.emp-section-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-primary-light);margin-bottom:var(--space-3)}.emp-action-btn--block{flex:none;width:100%}.emp-profile-resume{padding:0 var(--space-4) var(--space-4)}.emp-profile-cta{display:flex;flex-direction:column;gap:8px;padding:0 var(--space-4) var(--space-4)}.emp-info-body{padding:18px}.emp-info-body .form-control{width:100%;resize:vertical}.emp-prose{font-size:13px;line-height:1.7;color:var(--color-gray-700);margin:0;white-space:pre-line}.emp-notes-status{margin-top:6px;min-height:16px;font-size:11px;font-weight:600}.emp-notes-status .text-success{color:#047857}.emp-info-head-actions{margin-left:auto;display:inline-flex;gap:6px;align-items:center}.emp-action-btn--inline{flex:none;width:auto;padding:6px 10px;font-size:12px}.emp-resume-preview{background:var(--color-gray-50, #F8FAFC);border-top:1px solid var(--color-gray-100)}.emp-resume-preview iframe{display:block;width:100%;height:720px;border:0;background:#fff}.emp-resume-preview img{display:block;max-width:100%;height:auto;margin:0 auto;padding:18px}.emp-resume-fallback{padding:36px 24px;text-align:center;color:var(--color-gray-500)}.emp-resume-fallback svg{color:var(--color-gray-400);margin-bottom:10px}.emp-resume-fallback p{font-size:13px;margin:0 0 14px}@media(max-width:768px){.emp-resume-preview iframe{height:480px}}@media(max-width:960px){.emp-profile-grid,.emp-info-grid{grid-template-columns:1fr}.emp-info-grid>.emp-field{border-bottom:1px solid var(--color-gray-100)}.emp-info-grid>.emp-field:last-child{border-bottom:0}}.cal-present{background:#dcfce7;color:#15803d}.cal-absent{background:#fee2e2;color:#dc2626}.cal-late{background:#fef3c7;color:#b45309}.cal-halfday{background:#bae6fd;color:#0369a1}.cal-leave{background:#ede9fe;color:#6d28d9}.cal-wfh{background:#dbeafe;color:#1d4ed8}.cal-holiday{background:#e2e8f0;color:#64748b}.leave-layout svg{display:inline-block;max-width:none}.leave-layout{display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start}.leave-card{background:var(--color-card-bg, #fff);border:.5px solid var(--color-gray-200);border-radius:16px;overflow:hidden}.leave-section{padding:20px 24px;border-bottom:.5px solid var(--color-gray-200)}.leave-section:last-child{border-bottom:none}.section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-gray-400);margin-bottom:14px}.leave-field-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.leave-field label{display:block;font-size:12px;font-weight:500;color:var(--color-gray-600);margin-bottom:6px}.leave-field .req{color:#e24b4a;margin-left:2px}.leave-field select,.leave-field input[type=date],.leave-field textarea{width:100%;height:38px;padding:0 12px;border:.5px solid var(--color-gray-200);border-radius:8px;font-size:13px;color:var(--color-gray-800);background:#fff;font-family:inherit;transition:border-color .15s,box-shadow .15s}.leave-field textarea{height:auto;padding:10px 12px;resize:none;line-height:1.5}.leave-field select:focus,.leave-field input:focus,.leave-field textarea:focus{outline:none;border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81a}.leave-field input[type=date]{padding:0 12px}.balance-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:20px;font-size:12px;font-weight:500;margin-top:8px}.balance-pill .dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.balance-pill--healthy{background:#eaf3de;color:#27500a}.balance-pill--healthy .dot{background:#639922}.balance-pill--warning{background:#faeeda;color:#633806}.balance-pill--warning .dot{background:#ba7517}.balance-pill--critical{background:#fcebeb;color:#791f1f}.balance-pill--critical .dot{background:#e24b4a}.balance-pill--empty{background:#f1efe8;color:#444441}.days-list{display:flex;flex-direction:column}.day-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:.5px solid var(--color-gray-100)}.day-row:last-child{border-bottom:none}.day-row--disabled{opacity:.45}.day-badge{width:44px;height:44px;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;line-height:1}.day-badge--weekday{background:#e6f1fb}.day-badge--weekend{background:#f1efe8}.day-badge__num{font-size:16px;font-weight:500}.day-badge--weekday .day-badge__num{color:#0c447c}.day-badge--weekend .day-badge__num{color:#888780}.day-badge__dow{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:1px}.day-badge--weekday .day-badge__dow{color:#378add}.day-badge--weekend .day-badge__dow{color:#b4b2a9}.day-info{flex:1}.day-info__name{font-size:13px;font-weight:500;color:var(--color-gray-800);display:flex;align-items:center;gap:6px}.day-info__meta{font-size:11px;color:var(--color-gray-400)}.day-tag{display:inline-block;font-size:10px;font-weight:500;padding:2px 7px;border-radius:20px}.day-tag--weekend{background:#f1efe8;color:#5f5e5a}.day-tag--holiday{background:#fcebeb;color:#991b1b}.day-options{display:flex;align-items:center;gap:3px;margin-left:auto}.day-opt{padding:5px 10px;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer;border:.5px solid transparent;color:var(--color-gray-400);transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:transparent}.day-opt:hover:not(.day-opt--disabled){background:var(--color-gray-50);color:var(--color-gray-600)}.day-opt--full.is-active{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.day-opt--half.is-active{background:#0891b2;color:#fff;border-color:#0891b2}.day-opt--wfh.is-active{background:#7f77dd;color:#fff;border-color:#7f77dd}.day-opt--short.is-active{background:#d97706;color:#fff;border-color:#d97706}.day-opt--disabled{opacity:.35;cursor:default;pointer-events:none}.day-period-row{display:flex;align-items:center;gap:6px;padding:4px 2px 0}.day-period-row__label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-gray-400);margin-right:4px}.day-period-opt{padding:4px 10px;border-radius:999px;font-size:11px;font-weight:500;cursor:pointer;border:.5px solid var(--color-gray-200);color:var(--color-gray-600);background:#fff;transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.day-period-opt:hover{background:var(--color-gray-50);border-color:var(--color-gray-300)}.day-period-opt.is-active{background:#0f172a;color:#fff;border-color:#0f172a}.leave-upload{height:90px;border:.5px dashed var(--color-gray-300);border-radius:8px;background:var(--color-gray-50);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:all .15s}.leave-upload:hover{border-color:#1d4ed8;background:#eff6ff}.leave-upload--drag{border-color:#1d4ed8;background:#eff6ff;border-style:solid}.leave-upload--filled{border-color:#16a34a;background:#f0fdf4;border-style:solid}.leave-upload__text{font-size:12px;color:var(--color-gray-500)}.leave-upload__hint{font-size:11px;color:var(--color-gray-400)}.leave-file-list{margin-top:8px;display:flex;flex-direction:column;gap:6px}.leave-file-list__row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f0fdf4;border:.5px solid #BBF7D0;border-radius:8px;font-size:12px}.leave-file-list__name{flex:1;min-width:0;font-weight:500;color:#166534;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leave-file-list__size{font-size:11px;color:#15803d;flex-shrink:0}.leave-file-list__remove{background:none;border:none;cursor:pointer;color:#dc2626;padding:2px;display:flex;border-radius:4px;transition:background .12s}.leave-file-list__remove:hover{background:#fee2e2}.leave-actions{padding:16px 24px;background:var(--color-gray-50);border-top:.5px solid var(--color-gray-200);display:flex;align-items:center;justify-content:flex-end;gap:10px}.leave-btn-cancel{padding:8px 18px;border-radius:8px;font-size:13px;font-weight:500;border:.5px solid var(--color-gray-200);background:#fff;color:var(--color-gray-600);text-decoration:none;display:inline-block;transition:all .15s}.leave-btn-cancel:hover{background:var(--color-gray-50);border-color:var(--color-gray-300)}.leave-btn-submit{padding:8px 20px;border-radius:8px;font-size:13px;font-weight:500;background:#1d4ed8!important;color:#fff!important;border:none!important;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s}.leave-btn-submit:hover{background:#1e40af!important}.leave-btn-submit.is-disabled{opacity:.5;cursor:not-allowed}.leave-btn-submit svg{display:inline-block;flex-shrink:0}.leave-sidebar{display:flex;flex-direction:column;gap:16px}.summary-card{background:var(--color-card-bg, #fff);border:.5px solid var(--color-gray-200);border-radius:16px;overflow:hidden}.summary-header{padding:14px 18px;border-bottom:.5px solid var(--color-gray-200);display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--color-gray-800)}.summary-body{padding:16px 18px}.summary-divider{height:.5px;background:var(--color-gray-200);margin:14px 0}.period-block{background:#e6f1fb;border-radius:10px;padding:12px 14px}.period-block__dates{font-size:14px;font-weight:500;color:#0c447c}.period-block__sub{font-size:11px;color:#378add;margin-top:2px}.breakdown-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13px}.breakdown-row:last-child{margin-bottom:0}.breakdown-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.breakdown-name{flex:1;color:var(--color-gray-600)}.breakdown-val{font-weight:500;color:var(--color-gray-800)}.breakdown-days{font-size:11px;color:var(--color-gray-400);margin-left:4px}.total-row{display:flex;align-items:flex-end;justify-content:space-between}.total-label{font-size:12px;font-weight:500;color:var(--color-gray-600)}.total-sub{font-size:11px;color:var(--color-gray-400);margin-top:1px}.total-value{font-size:22px;font-weight:600;color:#1d4ed8;line-height:1}.total-value-sub{font-size:11px;color:var(--color-gray-400);text-align:right}.approval-notice{background:#fffbeb;border:.5px solid #FAC775;border-radius:12px;padding:14px 16px;display:flex;gap:10px}.approval-notice__title{font-size:12px;font-weight:500;color:#633806;margin-bottom:2px}.approval-notice__body{font-size:11px;color:#854f0b;line-height:1.5}@media(max-width:1024px){.leave-layout{grid-template-columns:1fr}.leave-sidebar{order:-1}}@media(max-width:640px){.leave-field-grid{grid-template-columns:1fr}}. form-page{max-width:100%}.form-section{margin-bottom:var(--space-6)}.form-section-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-primary-light)}.form-section-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.form-section-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-gray-800);margin:0}.form-section-desc{font-size:var(--text-xs);color:var(--color-gray-500);margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2) var(--space-4)}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-2) var(--space-4)}.form-full{grid-column:1 / -1}.form-divider{border:none;border-top:1px solid var(--color-gray-100);margin:var(--space-6) 0}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;padding-top:var(--space-5);border-top:1px solid var(--color-gray-100);margin-top:var(--space-2)}@media(max-width:640px){.form-grid,.form-grid-3{grid-template-columns:1fr}}.leave-type-list-card{background:var(--color-background-primary);border:.5px solid var(--color-border-tertiary);border-radius:14px;overflow:hidden}.leave-type-row{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:.5px solid var(--color-border-tertiary);transition:background .15s}.leave-type-row:last-child{border-bottom:none}.leave-type-row:hover{background:var(--color-background-secondary)}.leave-type-row.inactive{opacity:.5}.drag-handle{cursor:grab;opacity:.3;width:20px;flex-shrink:0;transition:opacity .15s}.drag-handle:hover{opacity:.7}.type-color-dot{width:28px;height:28px;border-radius:8px;flex-shrink:0}.type-row-name{font-size:13px;font-weight:500;color:var(--color-text-primary)}.type-row-sub{font-size:11px;color:var(--color-text-tertiary);margin-top:2px}.type-rule-chips{display:flex;gap:6px;flex-wrap:wrap;flex:1;justify-content:center}.rule-chip{font-size:11px;padding:3px 8px;border-radius:20px;border:.5px solid var(--color-border-tertiary);color:var(--color-text-secondary);background:var(--color-background-secondary)}.rule-chip.chip-green{background:#eaf3de;color:#27500a;border-color:#c0dd97}.rule-chip.chip-red{background:#fcebeb;color:#791f1f;border-color:#f09595}.type-row-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.month-btn{width:48px;height:32px;border-radius:6px;font-size:12px;font-weight:500;border:.5px solid var(--color-border-secondary);cursor:pointer;background:var(--color-background-primary);color:var(--color-text-secondary);transition:all .15s}.month-btn:hover{border-color:var(--color-border-primary);color:var(--color-text-primary)}.month-btn.selected{background:#fcebeb;color:#791f1f;border-color:#f09595}@media(max-width:768px){.leave-type-row{flex-wrap:wrap}.type-rule-chips{width:100%;justify-content:flex-start}}:root{--lp-brand: #2563EB;--lp-brand-dark: #1E40AF;--lp-brand-light: #3B82F6;--lp-navy: #0A1628;--lp-navy-2: #0F1F37;--lp-text: #0F172A;--lp-text-mute: #64748B;--lp-soft-bg: #F1F5F9;--lp-border: #E2E8F0}.lp-container{max-width:1180px;margin:0 auto;padding:0 24px}.lp-section{padding:80px 0}.lp-center{text-align:center}.lp-text-accent{color:var(--lp-brand)}.lp-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--lp-brand);margin-bottom:14px}.lp-eyebrow--accent{color:var(--lp-brand-light)}.lp-section-head{text-align:center;margin-bottom:48px}.lp-section-title{font-size:36px;font-weight:800;line-height:1.2;color:var(--lp-text);margin:0 0 14px}.lp-section-sub{font-size:15px;color:var(--lp-text-mute);max-width:540px;margin:0 auto}.lp-section-cta{text-align:center;margin-top:36px}.lp-prose{font-size:14px;line-height:1.75;color:var(--lp-text-mute)}.lp-empty{text-align:center;padding:28px 24px;border:1px solid var(--lp-border);border-radius:8px;color:var(--lp-text-mute);font-size:14px;background:#fff}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 26px;border-radius:999px;font-size:14px;font-weight:600;line-height:1;cursor:pointer;border:1px solid transparent;transition:all .18s ease;text-decoration:none}.lp-btn--primary{background:var(--lp-brand);color:#fff}.lp-btn--primary:hover{background:var(--lp-brand-dark);transform:translateY(-1px);box-shadow:0 8px 18px -8px #2563eb8c}.lp-btn--ghost{background:transparent;color:#fff;border-color:#ffffff59}.lp-btn--ghost:hover{background:#ffffff14;border-color:#fff}.lp-btn--block{width:100%}.lp-hero{background:var(--lp-navy);color:#fff;padding:70px 0 90px;position:relative;overflow:hidden}.lp-hero-bg-shape{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.18),transparent 70%);pointer-events:none}.lp-hero-bg-shape--1{width:520px;height:520px;top:-200px;right:-160px}.lp-hero-bg-shape--2{width:380px;height:380px;bottom:-180px;left:-120px}.lp-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center}.lp-hero-title{font-size:44px;font-weight:800;line-height:1.15;color:#fff;margin:0 0 18px}.lp-hero-title .lp-text-accent{color:var(--lp-brand-light)}.lp-hero-desc{font-size:14px;line-height:1.7;color:#ffffffb3;max-width:460px;margin:0 0 28px}.lp-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.lp-hero-features{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lp-feature-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:22px 20px;transition:all .2s ease}.lp-feature-card:hover{background:#ffffff12;border-color:#3b82f666;transform:translateY(-2px)}.lp-feature-icon{width:38px;height:38px;border-radius:8px;background:#3b82f626;color:var(--lp-brand-light);display:flex;align-items:center;justify-content:center;margin-bottom:14px}.lp-feature-title{font-size:15px;font-weight:700;color:#fff;margin:0 0 6px}.lp-feature-desc{font-size:12px;line-height:1.55;color:#fff9;margin:0}.lp-about{background:#fff}.lp-about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}.lp-about-image-wrap{position:relative;padding:30px 30px 60px 60px}.lp-about-frame{position:absolute;inset:0 60px 30px 0;border:8px solid var(--lp-brand);border-radius:4px;z-index:0}.lp-about-image{position:relative;z-index:1;width:100%;border-radius:4px;display:block;box-shadow:0 12px 30px -10px #0f172a40}.lp-jobs{background:var(--lp-soft-bg);padding:80px 0}.lp-jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,340px));gap:24px;justify-content:center}.lp-job-card{background:#fff;border-radius:10px;padding:24px 22px 22px;border-top:3px solid var(--lp-brand);box-shadow:0 1px 3px #0f172a0d;transition:all .2s ease;display:flex;flex-direction:column;position:relative;overflow:hidden}.lp-job-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px -10px #0f172a26}.lp-job-tag{display:inline-block;align-self:flex-start;background:#dbeafe;color:var(--lp-brand);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:4px;margin-bottom:12px}.lp-job-title{font-size:17px;font-weight:800;color:var(--lp-text);margin:0 0 4px}.lp-job-company{font-size:13px;color:var(--lp-text);font-weight:600;margin:0 0 10px}.lp-job-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--lp-text-mute);margin:0 0 8px}.lp-job-salary{font-size:14px;font-weight:700;color:var(--lp-brand);margin:0 0 12px}.lp-job-desc{font-size:12px;line-height:1.6;color:var(--lp-text-mute);margin:0 0 18px;flex:1}.lp-blog{background:#fff}.lp-contact{background:var(--lp-soft-bg);padding:80px 0 100px}.lp-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.lp-contact-form{background:#fff;border-radius:10px;padding:28px;box-shadow:0 1px 3px #0f172a0f}.lp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lp-form-group{margin-bottom:16px}.lp-label{display:block;font-size:12px;font-weight:700;color:var(--lp-text);margin-bottom:6px}.lp-input{width:100%;padding:11px 12px;border:1px solid var(--lp-border);border-radius:6px;font-size:13px;color:var(--lp-text);background:var(--lp-soft-bg);font-family:inherit;transition:all .18s ease}.lp-input:focus{outline:none;background:#fff;border-color:var(--lp-brand);box-shadow:0 0 0 3px #2563eb1f}.lp-textarea{resize:vertical;min-height:110px}.lp-contact-info{display:flex;flex-direction:column;gap:14px}.lp-info-card{background:#fff;border-radius:10px;padding:18px 20px;display:flex;gap:14px;align-items:flex-start;box-shadow:0 1px 3px #0f172a0f}.lp-info-icon{width:38px;height:38px;border-radius:6px;background:var(--lp-brand);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lp-info-title{font-size:14px;font-weight:700;color:var(--lp-text);margin:0 0 3px}.lp-info-text{font-size:13px;color:var(--lp-text-mute);margin:0;line-height:1.55}.lp-social-row{display:flex;gap:8px;margin-top:6px;flex-wrap:wrap}.lp-social{width:30px;height:30px;border-radius:50%;background:#dbeafe;color:var(--lp-brand);display:inline-flex;align-items:center;justify-content:center;transition:all .18s ease}.lp-social:hover{background:var(--lp-brand);color:#fff;transform:translateY(-2px)}@media(max-width:960px){.lp-hero-grid,.lp-about-grid,.lp-contact-grid{grid-template-columns:1fr;gap:40px}.lp-hero-title{font-size:34px}.lp-section-title{font-size:28px}.lp-about-image-wrap{padding:20px 20px 40px 40px}.lp-about-frame{inset:0 40px 20px 0}}@media(max-width:540px){.lp-hero{padding:50px 0 60px}.lp-hero-title{font-size:28px}.lp-hero-features,.lp-form-row{grid-template-columns:1fr}.lp-section,.lp-jobs,.lp-contact{padding:60px 0}}.ul-body{margin:0;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.2),transparent 55%),radial-gradient(circle at 80% 80%,rgba(37,99,235,.18),transparent 55%),#0a1628;color:#0f172a}.ul-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.ul-card{width:100%;max-width:420px;background:#fff;border-radius:14px;padding:36px 32px 32px;box-shadow:0 30px 60px -20px #0f172a73;text-align:center}.ul-brand{display:inline-flex;margin-bottom:22px}.ul-brand img{height:54px;width:auto}.ul-title{font-size:22px;font-weight:800;color:#0f172a;margin:0 0 6px}.ul-sub{font-size:13px;color:#64748b;margin:0 0 26px}.ul-alert{text-align:left;font-size:13px;padding:10px 14px;border-radius:8px;margin-bottom:16px;border:1px solid transparent}.ul-alert--ok{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.ul-alert--err{background:#fef2f2;color:#b91c1c;border-color:#fecaca}.ul-form{text-align:left}.ul-field{margin-bottom:16px}.ul-label{display:block;font-size:12px;font-weight:700;color:#0f172a;margin-bottom:6px}.ul-input{width:100%;padding:12px 14px;border-radius:8px;border:1px solid #E2E8F0;background:#f8fafc;font-size:14px;color:#0f172a;font-family:inherit;transition:all .18s ease}.ul-input::-moz-placeholder{color:#94a3b8}.ul-input::placeholder{color:#94a3b8}.ul-input:focus{outline:none;background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24}.ul-input.is-invalid{border-color:#ef4444;background:#fef2f2}.ul-error{font-size:12px;color:#b91c1c;margin:6px 0 0}.ul-row{display:flex;align-items:center;justify-content:space-between;margin:6px 0 22px;gap:12px;flex-wrap:wrap}.ul-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#475569;cursor:pointer}.ul-check input{accent-color:#2563EB}.ul-link{font-size:13px;color:#2563eb;text-decoration:none;font-weight:500}.ul-link:hover{text-decoration:underline}.ul-submit{padding:12px 20px;font-size:14px}.ul-foot{margin:22px 0 0;font-size:12px;color:#94a3b8}
