:root{--primary: #4F46E5;--primary-hover: #4338CA;--secondary: #10B981;--background: #0F172A;--surface: #1E293B;--surface-hover: #334155;--text: #F8FAFC;--text-muted: #94A3B8;--danger: #EF4444;--danger-hover: #DC2626;--border: #334155;--ring: rgba(79, 70, 229, .5)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Outfit,sans-serif;background-color:var(--background);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;background-color:var(--surface);border:1px solid var(--border);color:var(--text);padding:.5rem .75rem;border-radius:.375rem;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--ring)}.app-container{display:flex;min-height:100vh}.sidebar{width:250px;background-color:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column}.sidebar-header{padding:1.5rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.25rem;color:var(--primary)}.sidebar-nav{padding:1rem 0;flex:1}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;color:var(--text-muted);transition:all .2s}.nav-item:hover{background-color:var(--surface-hover);color:var(--text)}.nav-item.active{background-color:#4f46e51a;color:var(--primary);border-right:3px solid var(--primary)}.main-content{flex:1;padding:2rem;overflow-y:auto}.page-header{margin-bottom:2rem}.page-title{font-size:1.875rem;font-weight:700;margin-bottom:.5rem}.page-subtitle{color:var(--text-muted)}.card{background-color:var(--surface);border:1px solid var(--border);border-radius:.5rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{display:flex;align-items:center;gap:1.5rem}.stat-icon{width:3rem;height:3rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;background-color:#4f46e51a;color:var(--primary)}.stat-icon.secondary{background-color:#10b9811a;color:var(--secondary)}.stat-details h3{font-size:.875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.stat-details p{font-size:1.5rem;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;font-weight:500;transition:all .2s;border:none}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:var(--danger-hover)}.btn-icon{background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:.375rem;display:flex;align-items:center;justify-content:center;transition:all .2s;cursor:pointer}.btn-icon:hover{background-color:var(--surface-hover);color:var(--primary);border-color:var(--primary)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:1rem;text-align:left;border-bottom:1px solid var(--border)}th{color:var(--text-muted);font-weight:500;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;background-color:#0003}tbody tr:hover{background-color:var(--surface-hover)}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-success{background-color:#10b9811a;color:var(--secondary)}.badge-warning{background-color:#f59e0b1a;color:#f59e0b}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select{width:100%}.flex-between{display:flex;justify-content:space-between;align-items:center}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mt-4{margin-top:1rem}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--surface-hover)}.mobile-header,.sidebar-overlay{display:none}@media (max-width: 768px){.app-container{flex-direction:column}.mobile-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}.mobile-header-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.25rem}.mobile-menu-btn{background:transparent;border:none;color:var(--text);display:flex;align-items:center;justify-content:center;padding:.25rem}.sidebar-container{position:fixed;top:0;left:-300px;height:100vh;z-index:100;transition:left .3s ease;background:var(--surface);box-shadow:2px 0 8px #00000080}.sidebar-container.open{left:0}.sidebar{height:100%;width:250px}.sidebar-overlay{display:block;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:90;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-overlay.open{opacity:1;pointer-events:auto}.main-content{padding:1rem}.dashboard-grid{grid-template-columns:1fr}.card{padding:1rem}.page-title{font-size:1.5rem}.flex-between{flex-direction:column;align-items:flex-start;gap:1rem}.search-bar{width:100%!important}.responsive-grid-sidebar,.responsive-grid-form{grid-template-columns:1fr!important}.responsive-flex-col{flex-direction:column!important}.stats-grid,.grid-2-cols,.responsive-grid-dashboard{grid-template-columns:1fr!important}input,select,textarea{min-height:44px;font-size:16px}.btn{min-height:44px;margin-bottom:.25rem}.btn-icon{min-height:44px;min-width:44px}th,td{white-space:nowrap}.form-group label{font-size:.875rem}}.responsive-grid-sidebar{display:grid;grid-template-columns:minmax(0,350px) 1fr;gap:2rem;align-items:flex-start}.responsive-grid-form{display:grid;grid-template-columns:1fr 2fr;gap:2rem}.grid-2-cols{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.responsive-grid-dashboard{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:1.5rem}
