:root{--royal:#102de0;--deep:#081d9d;--sky:#35a8ff;--ink:#17213b;--muted:#667085;--line:#e4e9f4}*{box-sizing:border-box}.page-wrap{min-height:65vh}.page-hero{background:linear-gradient(125deg,#081d9d,#153cf0 65%,#35a8ff);color:#fff;border-radius:0 0 22px 22px;padding:48px clamp(20px,6vw,78px);margin:0 calc(clamp(16px,4vw,48px)*-1) 30px}.page-hero h1{font-size:clamp(2rem,4vw,3.3rem);margin:10px 0}.page-hero p{max-width:720px;line-height:1.7}.content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:26px 0}.panel,.form-card,.course-card2{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 8px 28px #0d2a8010}.panel h2,.panel h3,.form-card h2{margin-top:0}.form-card{max-width:850px;margin:24px auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:650;font-size:.92rem}.field input,.field select,.field textarea{border:1px solid #cfd7e8;border-radius:9px;padding:12px 13px;font:inherit;width:100%;background:#fff}.field textarea{min-height:110px}.btn,.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;background:var(--royal);color:#fff;padding:12px 18px;text-decoration:none;font-weight:700;cursor:pointer}.btn:hover,.button:hover{background:var(--deep);color:#fff}.btn-light{background:#edf2ff;color:var(--royal)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.notice{padding:13px 16px;border-radius:9px;margin:15px 0;background:#e9f8ef;color:#146c37}.notice.error{background:#fff0f0;color:#9b1c1c}.notice.info{background:#edf4ff;color:#173a91}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:640px}.data-table th,.data-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.data-table th{background:#f3f6ff;color:#1b2d8e}.pill{display:inline-block;padding:4px 9px;border-radius:99px;background:#edf2ff;color:#1534bb;font-size:.78rem;font-weight:700}.pill.pending{background:#fff5dc;color:#8a5a00}.pill.suspended,.pill.rejected{background:#ffeded;color:#a22020}.pill.approved,.pill.active{background:#e7f8ee;color:#13733b}.dashboard-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:24px;align-items:start}.side-nav{background:#0b239f;color:white;border-radius:14px;padding:18px;display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:5px;position:sticky;top:15px}.side-nav h3{margin:5px 10px 15px}.side-nav a,.side-nav button{display:block;text-align:left;padding:11px 12px;border:0;border-radius:8px;color:#fff;text-decoration:none;background:transparent;font:inherit;cursor:pointer}.side-nav a:hover,.side-nav button:hover,.side-nav a.active{background:#2849ec}.dash-main{min-width:0}.dash-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin:18px 0}.stat{border:1px solid var(--line);padding:18px;border-radius:12px;background:#fff}.stat strong{display:block;font-size:1.7rem;color:var(--royal);margin-top:8px}.action-form{display:inline-flex;gap:5px;align-items:center}.action-form select{max-width:125px;padding:7px}.course-card2 h3{color:var(--royal)}.small{color:var(--muted);font-size:.9rem}.notice-list{display:grid;gap:12px}.notice-item{border-left:4px solid var(--sky);padding:14px 16px;background:#f5f8ff;border-radius:0 10px 10px 0}.empty{padding:28px;text-align:center;background:#f6f8ff;border-radius:12px;color:var(--muted)}.inline-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inline-form input,.inline-form select{padding:9px;border:1px solid #ccd5e8;border-radius:8px;max-width:100%}@media(max-width:800px){.dashboard-layout{grid-template-columns:1fr}.side-nav{position:static}.side-nav .nav-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.page-hero{margin-top:-8px}}
