.login-container{display:flex;min-height:100vh;font-family:Anta,Roboto,system-ui,-apple-system,sans-serif;background-color:#f8fafc}.login-presentation{flex:1;background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:4rem;position:relative;overflow:hidden}.login-presentation:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.1) 0%,transparent 20%),radial-gradient(circle at 90% 80%,rgba(255,255,255,.1) 0%,transparent 20%);pointer-events:none}.brand-wrapper{margin-bottom:2rem;animation:fadeInDown .8s ease-out}.brand-logo{font-size:3.5rem;font-weight:800;letter-spacing:-.05em;margin:0;background:linear-gradient(to right,#fff,#93c5fd);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.brand-tagline{font-size:1.5rem;font-weight:300;color:#dbeafe;margin-top:.5rem;line-height:1.4;max-width:600px}.features-list{display:grid;gap:1.5rem;margin-top:3rem;animation:fadeInUp .8s ease-out .2s backwards}.feature-item{display:flex;align-items:center;gap:1rem;font-size:1.1rem;color:#eff6ff}.feature-icon-wrapper{background:#fff3;padding:.75rem;border-radius:12px;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-form-wrapper{width:500px;display:flex;align-items:center;justify-content:center;background-color:#fff;padding:2rem;box-shadow:-10px 0 30px #0000000d;z-index:10}.login-card-content{width:100%;max-width:360px;animation:fadeIn 1s ease-out}.login-header-text{margin-bottom:2.5rem}.login-welcome{font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.login-instruction{color:#64748b;font-size:.95rem}.form-field{margin-bottom:1.5rem}.field-label{display:block;font-size:.9rem;font-weight:600;color:#334155;margin-bottom:.5rem}.field-input{width:100%;padding:.875rem 1rem;background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;font-size:1rem;color:#1e293b;transition:all .2s}.field-input:focus{outline:none;border-color:#2563eb;background-color:#fff;box-shadow:0 0 0 3px #2563eb1a}.submit-btn{width:100%;padding:.875rem;background-color:#2563eb;color:#fff;font-weight:600;border:none;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s;margin-top:1rem}.submit-btn:hover{background-color:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 12px #2563eb33}.submit-btn:active{transform:translateY(0)}.submit-btn:disabled{background-color:#94a3b8;cursor:not-allowed;transform:none}.forgot-link{display:block;text-align:right;margin-top:.5rem;font-size:.85rem;color:#2563eb;text-decoration:none;cursor:pointer;background:none;border:none;padding:0}.forgot-link:hover{text-decoration:underline}.error-banner{background-color:#fef2f2;border-left:4px solid #ef4444;color:#b91c1c;padding:1rem;border-radius:4px;margin-bottom:1.5rem;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.form-options-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.checkbox-container{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;color:#64748b;-webkit-user-select:none;user-select:none}.checkbox-container input{cursor:pointer;width:16px;height:16px;margin:0}.form-options-row .forgot-link{display:inline-block;margin:3px 0 0;padding:0;text-align:right;font-size:.9rem;color:#2563eb;text-decoration:none}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.saft-link{position:absolute;bottom:4rem;left:4rem;color:#ffffffb3;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.95rem;transition:color .2s}.saft-link:hover{color:#fff}@media(max-width:960px){.login-container{flex-direction:column}.login-presentation{padding:3rem 2rem;flex:0 0 auto;min-height:300px}.brand-logo{font-size:2.5rem}.brand-tagline{font-size:1.2rem}.features-list{display:none}.saft-link{position:relative;bottom:0;left:0;margin-top:2rem}.login-form-wrapper{width:100%;flex:1;padding:2rem;box-shadow:none;border-radius:20px 20px 0 0;margin-top:-20px}}.dashboard-container{padding:2rem;max-width:1200px;margin:0 auto;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dashboard-header{margin-bottom:2rem}.dashboard-title{font-size:1.8rem;font-weight:700;color:var(--text-color);margin-bottom:.5rem}.dashboard-subtitle{color:var(--text-secondary);font-size:1rem}.dashboard-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;margin-bottom:2rem}@media(min-width:768px){.dashboard-grid{grid-template-columns:repeat(3,1fr)}}.manager-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem}@media(min-width:768px){.manager-grid{grid-template-columns:repeat(2,1fr)}}.dashboard-card{background-color:var(--card-bg);border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;border:1px solid var(--border-color);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.card-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.5rem;font-weight:600}.balance-card{align-items:center;justify-content:center;text-align:center}.balance-value{font-size:2.5rem;font-weight:800;color:var(--primary-color);line-height:1}.balance-unit{font-size:1rem;color:var(--text-muted);font-weight:400;margin-left:.25rem}.balance-year{font-size:.875rem;color:var(--text-muted);margin-top:.5rem}.vacation-date{font-size:1.5rem;font-weight:700;color:var(--text-color)}.status-badge{margin-top:.25rem;font-size:.875rem;color:#10b981;font-weight:500}.no-vacation{color:var(--text-muted);font-style:italic}.status-list{display:flex;flex-direction:column;gap:.75rem;width:100%}.status-item{display:flex;justify-content:space-between;align-items:center}.status-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:var(--text-secondary)}.status-dot{width:8px;height:8px;border-radius:50%}.dot-yellow{background-color:#facc15}.dot-green{background-color:#10b981}.dot-red{background-color:#f87171}.status-count{font-weight:700;color:var(--text-secondary)}.manager-section{border-top:1px solid var(--border-color);padding-top:1.5rem}.section-title{font-size:1.25rem;font-weight:600;color:var(--text-secondary);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.action-card{background:var(--card-bg);border-color:var(--primary-color);cursor:pointer;position:relative;overflow:hidden}.action-card-content{position:relative;z-index:10}.action-label{color:#4f46e5;font-weight:700;font-size:.75rem;text-transform:uppercase;margin-bottom:.25rem}.action-value{font-size:3rem;font-weight:800;color:var(--text-color);line-height:1;margin-bottom:.5rem}.action-desc{color:var(--text-secondary);font-size:.95rem}.action-link{margin-top:1rem;color:var(--primary-color);font-weight:600;font-size:.875rem}.action-icon-bg{position:absolute;right:-1rem;top:-1rem;color:var(--primary-color);opacity:.1;transform:rotate(15deg)}.team-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.team-member{display:flex;align-items:center;gap:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.team-member:last-child{border-bottom:none}.member-avatar{width:32px;height:32px;border-radius:50%;background-color:#ffedd5;color:#ea580c;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem}.member-info{flex:1}.member-name{font-size:.9rem;font-weight:600;color:var(--text-color)}.member-id{font-size:.75rem;color:var(--text-muted)}.empty-state{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-muted);font-size:.9rem}@media(max-width:768px){.dashboard-container{padding:1rem .75rem}.dashboard-header{margin-bottom:1rem}}.sales-dashboard-filters{display:flex;justify-content:flex-end;gap:1rem;background-color:var(--card-bg);padding:1rem;border-radius:8px;border:1px solid var(--border-color);margin-bottom:-1rem}@media(max-width:640px){.sales-dashboard-filters{flex-direction:column;align-items:stretch}.sales-dashboard-filters>div{justify-content:space-between;width:100%}.sales-dashboard-filters select{flex-grow:1}}.sales-dashboard-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1rem}.sales-dashboard-charts{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:1024px){.sales-dashboard-charts{grid-template-columns:repeat(2,1fr)}}.chart-card-double{grid-column:span 1}@media(min-width:1024px){.chart-card-double{grid-column:span 2}}.daily-evolution-chart{height:200px;display:flex;align-items:flex-end;gap:4px;position:relative}@media(max-width:480px){.daily-evolution-chart{gap:2px}}.month-label{position:absolute;bottom:-1.5rem;font-size:.75rem;color:var(--text-secondary)}@media(max-width:480px){.month-label{font-size:.6rem}}.history-chart-container{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:space-between;gap:5px}@media(max-width:480px){.history-chart-container{gap:2px}}.history-label{position:absolute;bottom:-1.5rem;font-size:.7rem;color:var(--text-secondary);white-space:nowrap}@media(max-width:600px){.history-label{font-size:.6rem;transform:rotate(-45deg);bottom:-2.2rem}}.notification-toast{position:fixed;bottom:24px;right:24px;padding:16px 24px;border-radius:8px;background-color:#fff;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;align-items:center;gap:12px;z-index:10000;min-width:300px;max-width:450px;transform:translateY(100%);opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1);border-left:4px solid transparent}.notification-toast.show{transform:translateY(0);opacity:1}.notification-toast.success{border-left-color:#10b981;background-color:#f0fdf4;color:#166534}.notification-toast.error{border-left-color:#ef4444;background-color:#fef2f2;color:#991b1b}.notification-toast.info{border-left-color:#3b82f6;background-color:#eff6ff;color:#1e40af}.notification-toast.warning{border-left-color:#f59e0b;background-color:#fffbeb;color:#92400e}.notification-icon{display:flex;align-items:center;justify-content:center}.notification-message{font-size:.95rem;font-weight:500}.confirmation-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:10001;animation:fadeIn .2s ease-out}.confirmation-modal{background-color:var(--card-bg, #ffffff);border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:400px;padding:24px;animation:scaleIn .2s ease-out}.confirmation-title{font-size:1.125rem;font-weight:600;color:var(--text-color, #111827);margin-bottom:8px}.confirmation-message{font-size:.95rem;color:var(--text-secondary, #6b7280);margin-bottom:24px;line-height:1.5}.confirmation-footer{display:flex;justify-content:flex-end;gap:12px}.btn-confirm-cancel{padding:8px 16px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;background-color:transparent;border:1px solid var(--border-color, #e5e7eb);color:var(--text-color, #374151);transition:background-color .15s}.btn-confirm-cancel:hover{background-color:var(--bg-hover, #f3f4f6)}.btn-confirm-action{padding:8px 16px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;border:none;color:#fff;transition:opacity .15s}.btn-confirm-action:hover{opacity:.9}.btn-confirm-action.danger{background-color:#ef4444}.btn-confirm-action.primary{background-color:#3b82f6}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.searchable-select-wrapper{position:relative;width:100%;font-size:.85rem;font-family:inherit}.searchable-select-control{display:flex;align-items:center;justify-content:space-between;height:38px;min-height:38px;padding:0 8px;background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;cursor:pointer;transition:all .2s}.searchable-select-wrapper.disabled .searchable-select-control{background-color:var(--input-bg);border-color:var(--input-border);cursor:not-allowed;opacity:.5}.searchable-select-control:hover:not(.disabled){border-color:var(--text-secondary)}.searchable-select-control.open{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.searchable-select-value{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:8px;color:var(--input-text)}.placeholder{color:var(--text-secondary)}.searchable-select-actions{display:flex;align-items:center;gap:4px;color:#6b7280}.clear-btn{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;color:#9ca3af;transition:color .1s}.clear-btn:hover{color:#ef4444}.chevron{transition:transform .2s}.chevron.rotated{transform:rotate(180deg)}.searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;z-index:50;overflow:hidden}.search-input-container{display:flex;align-items:center;padding:6px 8px;border-bottom:1px solid var(--border-color);background-color:var(--card-bg)}.search-icon{color:#9ca3af;margin-right:6px;flex-shrink:0}.search-input{flex:1;border:none;background:transparent;outline:none;font-size:.85rem;width:100%;color:var(--text-color);padding:0;margin:0}.options-list{max-height:200px;overflow-y:auto}.option-item{padding:6px 10px;cursor:pointer;transition:background-color .15s;color:var(--text-color)}.option-item:hover{background-color:var(--background-color)}.option-item.selected{background-color:var(--input-bg);color:var(--primary-color);font-weight:500}.no-options{padding:8px 10px;color:var(--text-secondary);text-align:center;font-style:italic;font-size:.8rem}:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--secondary-color: #1e40af;--background-color: #f3f4f6;--card-bg: #ffffff;--sidebar-bg: #1e3a8a;--header-bg: #f9fafb;--modal-overlay: rgba(0, 0, 0, .5);--text-color: #1f2937;--text-secondary: #6b7280;--text-inverse: #ffffff;--text-muted: #9ca3af;--border-color: #e5e7eb;--input-border: #d1d5db;--status-active-bg: #d1fae5;--status-active-text: #065f46;--status-pending-bg: #fef3c7;--status-pending-text: #d97706;--status-canceled-bg: #fee2e2;--status-canceled-text: #991b1b;--input-bg: #ffffff;--input-text: #1f2937}[data-theme=dark]{--primary-color: #3b82f6;--primary-hover: #60a5fa;--secondary-color: #93c5fd;--background-color: #111827;--card-bg: #1f2937;--sidebar-bg: #111827;--header-bg: #374151;--modal-overlay: rgba(0, 0, 0, .7);--text-color: #f3f4f6;--text-secondary: #9ca3af;--text-inverse: #f3f4f6;--text-muted: #6b7280;--border-color: #374151;--input-border: #4b5563;--status-active-bg: rgba(6, 95, 70, .4);--status-active-text: #6ee7b7;--status-pending-bg: rgba(180, 83, 9, .4);--status-pending-text: #fcd34d;--status-canceled-bg: rgba(153, 27, 27, .4);--status-canceled-text: #fca5a5;--input-bg: #374151;--input-text: #f3f4f6}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Roboto,system-ui,-apple-system,sans-serif;background-color:var(--background-color);color:var(--text-color)}input,button,select,textarea{font-family:Roboto,system-ui,-apple-system,sans-serif}.app{height:100vh}.layout{display:flex;height:100vh}.sidebar{width:260px;background-color:var(--sidebar-bg);color:var(--text-inverse);display:flex;flex-direction:column;transition:width .3s cubic-bezier(.4,0,.2,1);overflow:hidden;border-right:1px solid var(--border-color);white-space:nowrap;height:100dvh;position:sticky;top:0;z-index:50}.sidebar.collapsed{width:70px}.sidebar-header{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;border-bottom:1px solid var(--border-color)}.sidebar.collapsed .sidebar-header{justify-content:center;padding:0}.brand-text{font-size:1.25rem;font-weight:800;letter-spacing:.05em;opacity:1;transition:opacity .2s}.sidebar.collapsed .brand-text{display:none;opacity:0}.toggle-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s}.toggle-btn:hover{background:var(--header-bg);color:var(--text-color)}.sidebar-nav{flex:1;padding:1rem .75rem;overflow-y:auto;overflow-x:hidden}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;color:var(--text-muted);text-decoration:none;border-radius:8px;transition:all .2s;margin-bottom:.25rem;height:24px}.nav-item:hover{background-color:var(--header-bg);color:var(--text-color)}.nav-item.active{background-color:var(--primary-color);color:#fff;box-shadow:0 1px 3px #0000001a}.sidebar.collapsed .nav-item{justify-content:center;padding:.75rem 0}.nav-text{opacity:1;transition:opacity .2s}.sidebar.collapsed .nav-text{display:none;opacity:0}.sidebar-footer{padding:1rem;border-top:1px solid var(--border-color)}.sidebar.collapsed .sidebar-footer{padding:1rem .5rem;display:flex;flex-direction:column;align-items:center}.user-profile{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;text-decoration:none;color:var(--text-inverse);overflow:hidden}.sidebar.collapsed .user-profile{justify-content:center;margin-bottom:1.5rem}.user-avatar{width:36px;height:36px;border-radius:50%;background-color:var(--secondary-color);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;border:2px solid var(--border-color);overflow:hidden}.user-info{flex:1;overflow:hidden;transition:opacity .2s}.sidebar.collapsed .user-info{display:none;opacity:0}.user-name{font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:.9rem}.logout-btn-sidebar{width:100%;padding:.6rem;background-color:var(--header-bg);border:none;border-radius:6px;color:var(--status-canceled-text);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.logout-btn-sidebar:hover{background-color:var(--status-canceled-bg);color:var(--status-canceled-text)}.sidebar.collapsed .logout-btn-sidebar{padding:.6rem 0}.sidebar.collapsed .logout-text{display:none}.main-content{flex:1;padding:2rem;overflow-y:auto}.card{background:var(--card-bg);padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.data-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.data-item label{display:block;font-size:.875rem;color:var(--text-secondary);margin-bottom:.25rem}.data-item p{margin:0;font-weight:500}.table-container{background-color:var(--card-bg);border-radius:8px;box-shadow:0 1px 3px #0000001a;width:100%;margin-bottom:2rem;overflow-x:auto;position:relative;border:1px solid #e5e7eb}.movements-table,.requests-table{width:100%;border-collapse:separate;border-spacing:0;min-width:800px}.movements-table th,.movements-table td,.requests-table th,.requests-table td{padding:1rem;white-space:nowrap;border-bottom:1px solid var(--border-color);background-color:var(--card-bg)}.movements-table thead th,.requests-table thead th{background-color:var(--header-bg);border-bottom:1px solid var(--border-color);text-align:left;font-weight:600;color:var(--text-secondary);position:sticky;top:0;z-index:20}.capitalize{text-transform:capitalize}.text-right{text-align:right}.text-center{text-align:center}.font-bold{font-weight:700}.p-8{padding:2rem}.text-gray-500{color:var(--text-secondary)}.download-btn{background:none;border:none;cursor:pointer;color:var(--primary-color);padding:.5rem;display:inline-flex;align-items:center;justify-content:center}@media(max-width:768px){.sticky-col{position:sticky;z-index:10}.first-col{left:0;border-right:1px solid var(--border-color);box-shadow:2px 0 5px -2px #0000001a}.last-col{right:0;border-left:1px solid var(--border-color);box-shadow:-2px 0 5px -2px #0000001a}.movements-table thead th.first-col,.requests-table thead th.first-col,.movements-table thead th.last-col,.requests-table thead th.last-col{z-index:30}}.page-container{padding:2rem;max-width:1600px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.page-title{font-size:1.875rem;font-weight:700;color:var(--text-color);margin:0}.page-subtitle{color:var(--text-secondary);margin-top:.25rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s;border:none;font-size:.875rem}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--secondary-color)}.btn-secondary{background-color:var(--header-bg);color:var(--text-color);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--border-color)}.btn-icon{padding:.5rem;border-radius:.375rem;background-color:var(--card-bg);border:1px solid var(--border-color);cursor:pointer;color:var(--text-secondary)}.btn-icon:hover{background-color:var(--header-bg);color:var(--primary-color)}.content-card{background-color:var(--card-bg);border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:visible;border:1px solid var(--border-color)}.table-toolbar{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background-color:var(--header-bg)}.search-box{position:relative;width:300px}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-box input{width:100%;padding:.5rem .75rem .5rem 2.5rem;border-radius:.375rem;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--input-text);outline:none}.search-box input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #2563eb1a}.switch{position:relative;display:inline-block;width:48px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--input-border);transition:.4s;border-radius:34px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--primary-color)}input:focus+.slider{box-shadow:0 0 1px var(--primary-color)}input:checked+.slider:before{transform:translate(24px)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.875rem 1.5rem;text-align:left;border-bottom:1px solid var(--border-color)}.data-table th{background-color:var(--header-bg);font-weight:600;font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.05em}.data-table.compact th,.data-table.compact td{padding:.25rem .75rem;font-size:.85rem}.data-table.compact .btn-icon-sm{padding:.1rem}.form-grid.dense{gap:.75rem;grid-template-columns:repeat(4,1fr)}.form-grid.dense .form-group{grid-column:span 1}.form-grid.dense .form-group.span-2{grid-column:span 2}.form-grid.dense .form-group.span-3{grid-column:span 3}.form-grid.dense .form-group.span-4{grid-column:span 4}.form-grid.dense .form-group label{font-size:.75rem;margin-bottom:.1rem}.form-grid.dense .form-group input,.form-grid.dense .form-group select,.form-grid.dense .form-group textarea,.form-grid.dense .form-group .searchable-select-control{padding:.25rem .5rem;font-size:.85rem!important;min-height:28px}.form-grid.dense .form-group .searchable-select-control{height:28px;min-height:28px}.checkbox-container.dense{margin-top:.5rem;margin-bottom:0}.modal-header,.modal-footer{padding:.75rem 1.5rem}.modal-body{padding:1rem 1.5rem}.data-table tbody tr:hover{background-color:var(--header-bg)}.status-badge{display:inline-flex;padding:.125rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.active{background-color:var(--status-active-bg);color:var(--status-active-text)}.status-badge.pending{background-color:var(--status-pending-bg);color:var(--status-pending-text)}.status-badge.canceled{background-color:var(--status-canceled-bg);color:var(--status-canceled-text)}.actions-cell{display:flex;gap:.5rem;justify-content:flex-end}.btn-icon-sm{background:none;border:none;padding:.25rem;cursor:pointer;color:var(--text-muted);border-radius:4px}.btn-icon-sm:hover{background-color:var(--header-bg);color:var(--primary-color)}.btn-icon-sm.delete:hover{color:#dc2626;background-color:#fee2e2}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-overlay);display:flex;justify-content:center;align-items:center;z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background-color:var(--card-bg);border-radius:.5rem;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a;animation:modalScale .2s ease-out}@keyframes modalScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-color)}.modal-body{padding:1.5rem;overflow-y:auto}.modal-footer{padding:1.25rem 1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:.75rem;background-color:var(--header-bg);border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group.full-width{grid-column:span 2}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-color)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--input-text);border-radius:.375rem;font-size:.875rem;transition:all .2s;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #2563eb1a}.btn-close{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:.25rem;border-radius:4px}.btn-close:hover{background-color:var(--header-bg);color:#ef4444}.checkbox-container{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;margin-top:1.5rem}.checkbox-container input{width:1rem;height:1rem;cursor:pointer}.label-text{font-size:.875rem;color:var(--text-color)}.wiki-content{color:var(--text-color)!important}.wiki-content *{color:var(--text-color)!important;background-color:transparent!important}.sales-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.sales-page-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}@media(max-width:768px){.sales-page-header{flex-direction:column;align-items:stretch}.sales-page-controls{flex-direction:column;align-items:stretch;width:100%}.sales-page-controls select{width:100%;min-width:100%!important}.sales-page-controls button{width:100%;justify-content:center}}.sales-month-controls{display:flex;justify-content:space-between;align-items:center;margin:1.5rem 0;background-color:var(--card-bg);padding:1rem;border-radius:8px;border:1px solid var(--border-color);gap:.5rem}.sales-month-title{font-size:1.25rem;margin:0;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}.sales-month-count{font-size:.9rem;color:var(--text-secondary);font-weight:400;margin-left:.5rem}.sales-month-locked{font-size:.875rem;color:#ef4444;background-color:#fee2e2;padding:.125rem .5rem;border-radius:9999px;border:1px solid #fca5a5}@media(max-width:580px){.sales-month-controls{padding:.75rem}.sales-month-title{font-size:1rem;flex-direction:column;gap:.25rem}.sales-month-count{margin-left:0}}.insignia-row-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;width:100%}@media(max-width:580px){.insignia-row-header{flex-direction:column;align-items:flex-start}.insignia-row-header>div:last-child{align-self:flex-end}}.insignia-days-flex{display:flex;flex-wrap:wrap;gap:2px}@media(max-width:580px){.insignia-days-flex{justify-content:space-between}.insignia-days-flex>div{flex-grow:1;min-width:28px;max-width:32px}}@media(max-width:640px){.calendar-day{height:60px!important;padding:.25rem!important}.calendar-day span{font-size:.65rem!important}}.calendar-day{height:100px;border:1px solid var(--border-color);padding:.5rem;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-start;transition:opacity .2s}.calendar-weekday{text-align:center;font-weight:700;padding:.5rem;color:var(--text-secondary)}@media(max-width:480px){.calendar-weekday{padding:.25rem .1rem!important;font-size:.75rem}}.operator-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;background-color:var(--background-color)}@media(max-width:640px){.operator-calendar-grid{gap:2px!important}}.calendar-day-total{font-size:.8rem;margin-top:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@media(max-width:640px){.calendar-day-total{font-size:.6rem;white-space:normal;word-break:break-all}}
