@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary:#4f46e5;--primary-hover:#4338ca;--bg-color:#f8fafc;--sidebar-bg:#fff;--text-main:#0f172a;--text-muted:#64748b;--border-color:#e2e8f0;--card-bg:#fff;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--success:#10b981;--success-bg:#d1fae5;--warning:#f59e0b;--warning-bg:#fef3c7;--danger:#ef4444;--danger-bg:#fee2e2}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,sans-serif}.layout{height:100vh;display:flex;overflow:hidden}.main-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.page-content{flex:1;padding:2rem;overflow-y:auto}.sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);flex-direction:column;width:260px;transition:all .3s;display:flex}.sidebar-header{border-bottom:1px solid var(--border-color);align-items:center;height:70px;padding:0 1.5rem;display:flex}.logo{color:var(--primary);align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;display:flex}.sidebar-nav{flex-direction:column;flex:1;gap:.5rem;padding:1.5rem 1rem;display:flex}.nav-item{color:var(--text-muted);border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-item:hover{color:var(--text-main);background-color:#f1f5f9;transform:translate(4px)}.nav-item.active{color:var(--primary);background-color:#eef2ff}.header{background-color:var(--sidebar-bg);border-bottom:1px solid var(--border-color);z-index:10;justify-content:space-between;align-items:center;height:70px;padding:0 2rem;display:flex;position:sticky;top:0}.header-search{background-color:#f1f5f9;border:1px solid #0000;border-radius:2rem;align-items:center;width:300px;padding:.5rem 1rem;transition:border-color .2s;display:flex}.header-search:focus-within{border-color:var(--primary);background-color:#fff}.header-search input{width:100%;color:var(--text-main);background:0 0;border:none;outline:none;padding-left:.5rem}.header-search input::placeholder{color:var(--text-muted)}.header-actions{align-items:center;gap:1.5rem;display:flex}.action-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;transition:color .2s;position:relative}.action-btn:hover{color:var(--text-main)}.badge{background-color:var(--danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.65rem;font-weight:600;display:flex;position:absolute;top:-4px;right:-4px}.user-profile{cursor:pointer;align-items:center;gap:.75rem;display:flex}.avatar{object-fit:cover;border:2px solid #e2e8f0;border-radius:50%;width:36px;height:36px}.user-info{flex-direction:column;display:flex}.user-name{font-size:.875rem;font-weight:600}.user-role{color:var(--text-muted);font-size:.75rem}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-title{color:var(--text-main);font-size:1.5rem;font-weight:700}.btn-primary{background-color:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-weight:500;transition:background-color .2s,transform .1s;display:flex}.btn-primary:hover{background-color:var(--primary-hover)}.btn-primary:active{transform:scale(.98)}.card{background-color:var(--card-bg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);border-radius:1rem;overflow:hidden}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:1rem 1.5rem}th{text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;border-bottom:1px solid var(--border-color);background-color:#f8fafc;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--border-color);font-size:.875rem}tbody tr{transition:background-color .2s}tbody tr:hover{background-color:#f8fafc}.school-cell{align-items:center;gap:1rem;display:flex}.school-logo{object-fit:contain;background-color:#f1f5f9;border:1px solid #e2e8f0;border-radius:.5rem;width:40px;height:40px}.school-details{flex-direction:column;display:flex}.school-name{color:var(--text-main);font-weight:600}.school-tagline{color:var(--text-muted);font-size:.75rem}.address-cell{flex-direction:column;display:flex}.address-main{color:var(--text-main)}.address-sub{color:var(--text-muted);font-size:.75rem}.status-pill{border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-active{background-color:var(--success-bg);color:var(--success)}.status-expired{background-color:var(--danger-bg);color:var(--danger)}.status-pending{background-color:var(--warning-bg);color:var(--warning)}.sidebar-overlay{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;display:none;position:fixed;inset:0}.mobile-menu-btn{color:var(--text-main);cursor:pointer;background:0 0;border:none;display:none}.mobile-close-btn{display:none!important}@media (width<=768px){.sidebar{z-index:50;height:100vh;transition:left .3s;position:fixed;top:0;left:-260px}.sidebar.open{left:0}.sidebar-overlay.open{display:block}.mobile-menu-btn{align-items:center;margin-right:1rem;display:flex}.mobile-close-btn{display:flex!important}.header{padding:0 1rem}.header-search,.user-info{display:none}.page-content{padding:1rem}.school-cell{flex-direction:column;align-items:flex-start;gap:.5rem}}
