@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
:root{--color-accent:#f77f00;--color-accent-hover:#e06e00;--color-accent-light:#f77f001f;--color-accent-muted:#f77f000f;--color-bg:#fff;--color-sidebar:#0a0a0a;--color-sidebar-hover:#1a1a1a;--color-sidebar-active:#242424;--color-surface:#f8f8f8;--color-surface-2:#f0f0f0;--color-card:#fff;--color-text-primary:#111;--color-text-secondary:#555;--color-text-muted:#999;--color-text-sidebar:#ccc;--color-text-sidebar-active:#fff;--color-border:#e8e8e8;--color-border-strong:#ccc;--color-success:#16a34a;--color-success-bg:#f0fdf4;--color-warning:#d97706;--color-warning-bg:#fffbeb;--color-danger:#dc2626;--color-danger-bg:#fef2f2;--color-info:#2563eb;--color-info-bg:#eff6ff;--sidebar-width:256px;--sidebar-collapsed:72px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 2px 4px #0000000a;--shadow-lg:0 10px 30px #0000001a, 0 4px 10px #0000000f;--shadow-accent:0 4px 20px #f77f0040;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.35s ease;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs:11px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--text-3xl:36px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text-primary);background-color:var(--color-surface);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:var(--font-sans);cursor:pointer;border:none;outline:none}input,select,textarea{font-family:var(--font-sans);outline:none}img{max-width:100%;display:block}.app-layout{min-height:100vh;display:flex}.main-content{margin-left:var(--sidebar-width);min-height:100vh;transition:margin-left var(--transition-slow);flex-direction:column;flex:1;display:flex}.page-content{padding:var(--space-8);flex:1;width:100%;max-width:1400px}.sidebar{width:var(--sidebar-width);background-color:var(--color-sidebar);z-index:100;height:100vh;transition:width var(--transition-slow);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar-logo{padding:var(--space-6) var(--space-5);align-items:center;gap:var(--space-3);border-bottom:1px solid #ffffff0f;flex-shrink:0;display:flex}.sidebar-logo-icon{background:var(--color-accent);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.sidebar-logo-text{flex-direction:column;display:flex}.sidebar-logo-name{font-size:var(--text-md);color:#fff;letter-spacing:-.3px;font-weight:700}.sidebar-logo-sub{font-size:var(--text-xs);color:var(--color-text-sidebar);font-weight:400}.sidebar-nav{padding:var(--space-4) var(--space-3);flex:1;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:0 0}.sidebar-nav::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff1a}.sidebar-section-label{font-size:var(--text-xs);color:#ffffff40;text-transform:uppercase;letter-spacing:1px;padding:var(--space-3) var(--space-3) var(--space-2);margin-top:var(--space-3);font-weight:600}.sidebar-item{align-items:center;gap:var(--space-3);padding:10px var(--space-3);border-radius:var(--radius-md);color:var(--color-text-sidebar);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;margin-bottom:2px;font-weight:500;display:flex;position:relative}.sidebar-item:hover{background-color:var(--color-sidebar-hover);color:#fff}.sidebar-item.active{background-color:var(--color-accent);color:#fff}.sidebar-item.active .sidebar-item-icon{color:#fff}.sidebar-item-icon{width:18px;height:18px;transition:color var(--transition-fast);flex-shrink:0}.sidebar-item-label{text-overflow:ellipsis;flex:1;overflow:hidden}.sidebar-item-badge{background:var(--color-accent);color:#fff;border-radius:var(--radius-full);flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.sidebar-item.active .sidebar-item-badge{background:#ffffff40}.sidebar-footer{padding:var(--space-4) var(--space-3);border-top:1px solid #ffffff0f;flex-shrink:0}.sidebar-user{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);display:flex}.sidebar-user:hover{background:var(--color-sidebar-hover)}.sidebar-avatar{border-radius:var(--radius-full);background:var(--color-accent);width:34px;height:34px;font-size:var(--text-sm);color:#fff;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.sidebar-user-info{flex:1;overflow:hidden}.sidebar-user-name{font-size:var(--text-sm);color:#fff;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.sidebar-user-role{font-size:var(--text-xs);color:var(--color-text-sidebar);white-space:nowrap}.header{background:var(--color-bg);border-bottom:1px solid var(--color-border);height:64px;padding:0 var(--space-8);align-items:center;gap:var(--space-4);z-index:50;display:flex;position:sticky;top:0}.header-title{flex:1}.header-title h1{font-size:var(--text-lg);color:var(--color-text-primary);letter-spacing:-.3px;font-weight:700}.header-title p{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:1px}.header-actions{align-items:center;gap:var(--space-3);display:flex}.header-search{align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);width:280px;transition:all var(--transition-fast);padding:8px 16px;display:flex}.header-search:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light);background:#fff}.header-search input{font-size:var(--text-sm);color:var(--color-text-primary);background:0 0;border:none;width:100%}.header-search input::placeholder{color:var(--color-text-muted)}.header-icon-btn{border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);width:38px;height:38px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex;position:relative}.header-icon-btn:hover{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent)}.notification-dot{background:var(--color-accent);border-radius:var(--radius-full);border:2px solid var(--color-bg);width:8px;height:8px;position:absolute;top:6px;right:6px}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;font-weight:600;font-family:var(--font-sans);border:none;padding:9px 18px;display:inline-flex}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-accent);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-2);border-color:var(--color-border-strong)}.btn-ghost{color:var(--color-text-secondary);background:0 0}.btn-ghost:hover{background:var(--color-surface);color:var(--color-text-primary)}.btn-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #dc262626}.btn-danger:hover{background:var(--color-danger);color:#fff}.btn-sm{font-size:var(--text-xs);padding:6px 12px}.btn-lg{font-size:var(--text-md);padding:12px 24px}.btn-icon{width:36px;height:36px;padding:0}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.card-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.card-title{font-size:var(--text-md);color:var(--color-text-primary);letter-spacing:-.2px;font-weight:700}.card-subtitle{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:2px}.kpi-grid{gap:var(--space-5);margin-bottom:var(--space-8);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.kpi-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--transition-base);cursor:default;position:relative;overflow:hidden}.kpi-card:before{content:"";background:var(--color-accent);opacity:0;height:3px;transition:opacity var(--transition-base);position:absolute;top:0;left:0;right:0}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-card:hover:before{opacity:1}.kpi-icon{border-radius:var(--radius-md);background:var(--color-accent-muted);width:44px;height:44px;color:var(--color-accent);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.kpi-value{font-size:var(--text-2xl);color:var(--color-text-primary);letter-spacing:-1px;font-weight:800;line-height:1}.kpi-label{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-1);font-weight:500}.kpi-delta{font-size:var(--text-xs);margin-top:var(--space-2);border-radius:var(--radius-full);align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:inline-flex}.kpi-delta.up{color:var(--color-success);background:var(--color-success-bg)}.kpi-delta.down{color:var(--color-danger);background:var(--color-danger-bg)}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:600}.form-label span.required{color:var(--color-accent);margin-left:2px}.form-input{width:100%;height:42px;padding:0 var(--space-4);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-primary);transition:all var(--transition-fast);font-family:var(--font-sans)}.form-input:hover{border-color:var(--color-border-strong)}.form-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.form-input::placeholder{color:var(--color-text-muted)}.form-input.error{border-color:var(--color-danger);box-shadow:0 0 0 3px #dc26261a}.form-textarea{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-primary);transition:all var(--transition-fast);font-family:var(--font-sans);resize:vertical;min-height:100px}.form-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.form-select{width:100%;height:42px;padding:0 var(--space-4);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-primary);transition:all var(--transition-fast);cursor:pointer;font-family:var(--font-sans);appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23999999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.form-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.form-error{font-size:var(--text-xs);color:var(--color-danger);align-items:center;gap:4px;display:flex}.form-grid{gap:var(--space-5);grid-template-columns:repeat(2,1fr);display:grid}.form-grid-3{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.form-full{grid-column:1/-1}.badge{border-radius:var(--radius-full);font-size:var(--text-xs);white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.badge-disponible{background:var(--color-success-bg);color:var(--color-success)}.badge-reservado{background:var(--color-warning-bg);color:var(--color-warning)}.badge-vendido{background:var(--color-surface-2);color:var(--color-text-muted)}.badge-consignacion{background:var(--color-info-bg);color:var(--color-info)}.badge-vencido{background:var(--color-danger-bg);color:var(--color-danger)}.badge-admin{color:var(--color-accent);background:#f77f001a}.badge-vendedor{background:var(--color-surface-2);color:var(--color-text-secondary)}.table-container{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.table-header-bar{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}table{border-collapse:collapse;width:100%}thead{background:var(--color-surface)}thead th{text-align:left;padding:var(--space-3) var(--space-5);font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--color-border);white-space:nowrap;font-weight:700}tbody tr{border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:var(--color-surface)}tbody td{padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--color-text-primary);vertical-align:middle}.table-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;display:flex}.table-footer-info{font-size:var(--text-sm);color:var(--color-text-muted)}.pagination{align-items:center;gap:var(--space-1);display:flex}.pagination-btn{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);width:32px;height:32px;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);justify-content:center;align-items:center;font-weight:600;display:flex}.pagination-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.pagination-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.page-header{margin-bottom:var(--space-8);justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.page-header-title{font-size:var(--text-2xl);color:var(--color-text-primary);letter-spacing:-.5px;font-weight:800;line-height:1.2}.page-header-sub{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-1)}.page-header-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.search-container{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.search-input-wrap{align-items:center;gap:var(--space-2);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-3);min-width:260px;height:40px;transition:all var(--transition-fast);display:flex}.search-input-wrap:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.search-input-wrap svg{color:var(--color-text-muted);flex-shrink:0;width:16px;height:16px}.search-input-wrap input{font-size:var(--text-sm);color:var(--color-text-primary);background:0 0;border:none;width:100%}.search-filter-select{height:40px;padding:0 var(--space-4);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;font-family:var(--font-sans);appearance:none;transition:border-color var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23999999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.search-filter-select:focus{border-color:var(--color-accent)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;padding:var(--space-6);background:#0006;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--color-bg);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:580px;max-height:90vh;animation:.2s slideUp;overflow-y:auto}.modal-lg{max-width:800px}.modal-xl{max-width:1000px}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--color-border);background:var(--color-bg);z-index:1;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.modal-title{font-size:var(--text-lg);color:var(--color-text-primary);font-weight:700}.modal-body{padding:var(--space-6)}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-top:1px solid var(--color-border);display:flex}.tabs{border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6);gap:0;display:flex}.tab-btn{padding:var(--space-3) var(--space-5);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:600}.tab-btn:hover{color:var(--color-text-primary)}.tab-btn.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.vehicle-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.vehicle-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);cursor:pointer;overflow:hidden}.vehicle-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-accent);transform:translateY(-3px)}.vehicle-card-img{object-fit:cover;background:var(--color-surface);width:100%;height:180px;color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.vehicle-card-img-placeholder{background:linear-gradient(135deg, var(--color-surface) 0%, var(--color-surface-2) 100%);justify-content:center;align-items:center;gap:var(--space-2);width:100%;height:180px;color:var(--color-text-muted);flex-direction:column;display:flex}.vehicle-card-body{padding:var(--space-4) var(--space-5)}.vehicle-card-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:flex-start;display:flex}.vehicle-card-name{font-size:var(--text-md);color:var(--color-text-primary);letter-spacing:-.2px;font-weight:700}.vehicle-card-year{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:2px}.vehicle-card-price{font-size:var(--text-xl);color:var(--color-accent);letter-spacing:-.5px;font-weight:800}.vehicle-card-meta{gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.vehicle-card-meta-item{font-size:var(--text-xs);color:var(--color-text-muted);align-items:center;gap:4px;font-weight:500;display:flex}.empty-state{padding:var(--space-12) var(--space-6);text-align:center;justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.empty-state-icon{border-radius:var(--radius-xl);background:var(--color-accent-muted);width:72px;height:72px;color:var(--color-accent);margin-bottom:var(--space-2);justify-content:center;align-items:center;display:flex}.empty-state-title{font-size:var(--text-lg);color:var(--color-text-primary);font-weight:700}.empty-state-text{font-size:var(--text-sm);color:var(--color-text-muted);max-width:360px}.spinner{border:2.5px solid #f77f0033;border-top-color:var(--color-accent);border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}.loading-overlay{border-radius:inherit;z-index:10;background:#fffc;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);display:flex}.alert-warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid #d9770633}.alert-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #dc262633}.alert-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid #16a34a33}.divider{background:var(--color-border);height:1px;margin:var(--space-6) 0}.divider-label{align-items:center;gap:var(--space-3);margin:var(--space-6) 0;display:flex}.divider-label:before,.divider-label:after{content:"";background:var(--color-border);flex:1;height:1px}.divider-label span{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;font-weight:600}.upload-zone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface)}.upload-zone:hover,.upload-zone.dragover{border-color:var(--color-accent);background:var(--color-accent-muted)}.upload-zone-icon{border-radius:var(--radius-md);background:var(--color-accent-light);width:48px;height:48px;color:var(--color-accent);margin:0 auto var(--space-3);justify-content:center;align-items:center;display:flex}.chart-container{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.chart-header{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.chart-filters{align-items:center;gap:var(--space-2);display:flex}.login-page{background:var(--color-bg);min-height:100vh;display:flex}.login-left{background:var(--color-sidebar);padding:var(--space-12);flex-direction:column;flex:1;justify-content:space-between;display:flex;position:relative;overflow:hidden}.login-left:before{content:"";pointer-events:none;background:radial-gradient(circle,#f77f0026 0%,#0000 70%);width:400px;height:400px;position:absolute;top:-100px;right:-100px}.login-left:after{content:"";pointer-events:none;background:radial-gradient(circle,#f77f0014 0%,#0000 70%);width:300px;height:300px;position:absolute;bottom:-50px;left:-50px}.login-brand{align-items:center;gap:var(--space-3);z-index:1;display:flex;position:relative}.login-brand-icon{background:var(--color-accent);border-radius:var(--radius-md);justify-content:center;align-items:center;width:44px;height:44px;display:flex}.login-brand-name{font-size:var(--text-xl);color:#fff;letter-spacing:-.5px;font-weight:800}.login-tagline{z-index:1;position:relative}.login-tagline h2{font-size:var(--text-3xl);color:#fff;letter-spacing:-1px;margin-bottom:var(--space-4);font-weight:800;line-height:1.2}.login-tagline p{font-size:var(--text-md);color:#ffffff80;max-width:380px;line-height:1.6}.login-stats{gap:var(--space-8);z-index:1;display:flex;position:relative}.login-stat-value{font-size:var(--text-2xl);color:var(--color-accent);font-weight:800}.login-stat-label{font-size:var(--text-xs);color:#fff6;margin-top:2px;font-weight:500}.login-right{width:480px;padding:var(--space-10);justify-content:center;align-items:center;display:flex}.login-form-container{width:100%;max-width:360px}.login-form-title{font-size:var(--text-2xl);color:var(--color-text-primary);letter-spacing:-.5px;margin-bottom:var(--space-2);font-weight:800}.login-form-sub{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-8)}.payment-plan-row{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-2);transition:all var(--transition-fast);display:flex}.payment-plan-row.paid{background:var(--color-success-bg);border-color:#16a34a33}.payment-plan-row.overdue{background:var(--color-danger-bg);border-color:#dc262633}.payment-num{background:var(--color-border);width:28px;height:28px;font-size:var(--text-xs);color:var(--color-text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.payment-plan-row.paid .payment-num{background:var(--color-success);color:#fff}.payment-plan-row.overdue .payment-num{background:var(--color-danger);color:#fff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:2s infinite pulse}.skeleton{background:linear-gradient(90deg, var(--color-surface) 25%, var(--color-surface-2) 50%, var(--color-surface) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:1024px){:root{--sidebar-width:72px}.sidebar-logo-text,.sidebar-item-label,.sidebar-section-label,.sidebar-user-info{display:none}.sidebar-item{justify-content:center;padding:12px}.sidebar-logo{justify-content:center}.page-content{padding:var(--space-6)}}@media (max-width:768px){.main-content{margin-left:0}.form-grid,.form-grid-3{grid-template-columns:1fr}.login-left{display:none}.login-right{width:100%}.page-header{flex-direction:column}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.kpi-grid{grid-template-columns:1fr}.page-content{padding:var(--space-4)}}@media (min-width:1025px){.collapsed{--sidebar-width:var(--sidebar-collapsed)}.collapsed .sidebar-logo-text,.collapsed .sidebar-item-label,.collapsed .sidebar-section-label,.collapsed .sidebar-user-info{display:none!important}.collapsed .sidebar-item{padding:10px var(--space-3)!important;justify-content:center!important}.collapsed .sidebar-logo{justify-content:center!important}.collapsed .sidebar-user{padding:var(--space-3)!important;justify-content:center!important}}
