:root{--bg-main:linear-gradient(180deg,#7cc9e7,#a9ddef 30%,#d9f0f8 60%,#fff);--bg-card:#fff;--bg-card-subtle:#eef7fc;--text-primary:#0b2f4d;--text-secondary:#52768f;--text-muted:#7fa3bd;--border-color:#b9daec;--border-focus:#075da3;--primary:#075da3;--primary-hover:#0a4a80;--primary-light:#d9f0f8;--primary-text:#075da3;--success:#16a34a;--success-light:#dcfce7;--success-text:#15803d;--warning:#d97706;--warning-light:#fef3c7;--warning-text:#b45309;--danger:#dc2626;--danger-light:#fee2e2;--danger-text:#b91c1c;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--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)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-main);background-attachment:fixed;color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:.95rem}.admin-container{display:flex;min-height:100vh}.admin-sidebar{width:260px;background-color:#075da3;color:#f8fafc;display:flex;flex-direction:column;flex-shrink:0}.sidebar-header{padding:1.5rem;border-bottom:1px solid hsla(0,0%,100%,.22);display:flex;align-items:center;gap:.75rem}.sidebar-brand-title{font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:#fff}.sidebar-brand-sub{font-size:.75rem;color:#94a3b8}.sidebar-nav{padding:1rem .75rem;display:flex;flex-direction:column;gap:.35rem;flex:1 1}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;border-radius:var(--radius-sm);color:#cbd5e1;font-size:.9rem;font-weight:500;transition:all .15s ease}.nav-link:hover{background-color:#1e293b;color:#fff}.nav-link.active{background-color:var(--primary);color:#fff}.sidebar-footer{padding:1.25rem;border-top:1px solid #1e293b}.admin-main{flex:1 1;display:flex;flex-direction:column;overflow-x:hidden}.admin-topbar{height:64px;background-color:var(--bg-card);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 2rem}.admin-content{padding:2rem;max-width:1400px;width:100%;margin:0 auto}.card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-sm)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.75rem;flex-wrap:wrap;gap:1rem}.page-title{font-size:1.5rem;font-weight:700;letter-spacing:-.03em;color:var(--text-primary)}.page-subtitle{font-size:.875rem;color:var(--text-secondary);margin-top:.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1rem;border-radius:var(--radius-sm);font-weight:500;font-size:.875rem;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover)}.btn-outline{background-color:transparent;border-color:var(--border-color);color:var(--text-secondary)}.btn-outline:hover{background-color:var(--bg-card-subtle);color:var(--text-primary)}.btn-success{background-color:var(--success);color:#fff}.btn-danger{background-color:var(--danger);color:#fff}.btn-sm{padding:.35rem .65rem;font-size:.8rem}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.badge-info{background-color:var(--primary-light);color:var(--primary-text)}.badge-success{background-color:var(--success-light);color:var(--success-text)}.badge-warning{background-color:var(--warning-light);color:var(--warning-text)}.badge-danger{background-color:var(--danger-light);color:var(--danger-text)}.badge-secondary{background-color:var(--bg-card-subtle);color:var(--text-secondary)}.table-container{overflow-x:auto;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-card)}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}.data-table th{background-color:#f8fafc;font-weight:600;color:var(--text-secondary);white-space:nowrap}.data-table td,.data-table th{padding:.85rem 1rem;border-bottom:1px solid var(--border-color)}.data-table td{color:var(--text-primary);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background-color:#f8fafc}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:2rem}.metric-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;display:flex;flex-direction:column}.metric-label{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.metric-value{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-top:.4rem}.metric-sub{font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(15,23,42,.6);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background-color:var(--bg-card);border-radius:var(--radius-lg);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);padding:1.75rem}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.form-group{margin-bottom:1rem;display:flex;flex-direction:column;gap:.35rem}.form-label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.form-input,.form-select{padding:.55rem .85rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:#fff;color:var(--text-primary);outline:none;transition:border-color .15s ease}.form-input:focus,.form-select:focus{border-color:var(--border-focus)}@media (max-width:768px){.admin-container{flex-direction:column}.admin-sidebar{width:100%}.admin-content{padding:1rem}}