@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--navy:#10243b;--blue:#1769aa;--teal:#13a39b;--bg:#f3f6fa;--ink:#203044;--muted:#718096;--line:#e3eaf1;--white:#fff;--green:#16845b;--orange:#b87918;--red:#bf4b4b}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',Arial,sans-serif}a{text-decoration:none;color:var(--blue)}button,.btn{display:inline-block;border:0;border-radius:10px;background:var(--blue);color:#fff;padding:10px 15px;font:600 13px inherit;cursor:pointer}.btn.secondary,button.secondary{background:#eaf1f8;color:var(--navy)}.btn.light{background:#fff;color:var(--navy);border:1px solid var(--line)}.btn.danger{background:#fff0f0;color:var(--red)}.layout{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:#fff;padding:22px 15px;display:flex;flex-direction:column;min-height:100vh}.brand{display:flex;align-items:center;gap:11px;color:white;padding:3px 8px 22px}.brand-icon{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#20b9ad,#2879c8);display:grid;place-items:center;font-size:24px;font-weight:800}.brand small,.profile-mini small{display:block;color:#a8bfd4;font-size:11px}.profile-mini{display:flex;gap:10px;align-items:center;padding:13px 8px;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff20;margin-bottom:15px}.avatar{width:36px;height:36px;background:#dcecf8;color:var(--blue);border-radius:50%;display:grid;place-items:center;font-weight:800}.avatar.small{width:31px;height:31px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{color:#c5d3e1;padding:10px;border-radius:9px;font-size:13px}.sidebar nav a:hover{background:#203e5d;color:#fff}.nav-label{font-size:10px;color:#7994ad;letter-spacing:1.2px;padding:17px 10px 5px}.logout{color:#ffc6c6;margin-top:auto;padding:14px 10px}.side-foot{font-size:10px;color:#819bb3;padding:10px}.main{min-width:0}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:5}.topbar small{display:block;color:var(--muted);font-size:11px}.top-user{display:flex;align-items:center;gap:10px}.content{padding:28px;max-width:1500px;margin:auto}.footer{padding:12px 28px;color:#94a1b0;font-size:11px}.eyebrow{color:var(--teal);font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.title{font-size:27px;line-height:1.2;color:var(--navy);margin:5px 0 8px}.subtitle{color:var(--muted);margin:0 0 23px}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:17px}.col-12{grid-column:span 12}.col-8{grid-column:span 8}.col-7{grid-column:span 7}.col-6{grid-column:span 6}.col-5{grid-column:span 5}.col-4{grid-column:span 4}.card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px;box-shadow:0 3px 14px #18324b08}.card h2,.card h3{color:var(--navy);margin:0 0 10px}.stat{font-size:29px;font-weight:800;color:var(--navy)}.muted{color:var(--muted)}.small{font-size:11px}.badge{display:inline-block;background:#edf4fa;color:#23618e;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:700}.badge.green{background:#e7f7ef;color:var(--green)}.badge.orange{background:#fff4df;color:var(--orange)}.badge.red{background:#fff0f0;color:var(--red)}.progress{height:8px;border-radius:20px;background:#edf1f5;overflow:hidden}.progress span{height:100%;display:block;background:linear-gradient(90deg,var(--teal),#2878c8)}.field{display:grid;gap:6px;margin:12px 0}.field label{font-size:12px;font-weight:700;color:#43546a}.field input,.field select,.field textarea{width:100%;padding:10px 11px;border:1px solid #d8e1ea;border-radius:9px;background:#fff;font:inherit;color:var(--ink)}.field textarea{min-height:90px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.list{display:grid;gap:9px}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--line);vertical-align:top}th{background:#f8fafc;color:#62748a}.alert{padding:12px 14px;border-radius:10px;margin-bottom:15px;background:#edf7f2;color:#176849}.alert.error{background:#fff0f0;color:#a43838}.alert.warning{background:#fff5e4;color:#8b5b13}.question{padding:15px 0;border-bottom:1px solid var(--line)}.question p{font-weight:700;margin:0 0 10px}.option{display:flex;gap:9px;border:1px solid var(--line);border-radius:9px;padding:10px;margin:6px 0;cursor:pointer}.option:has(input:checked){border-color:var(--blue);background:#f1f7fc}.pathbox{border:1px solid var(--line);border-radius:12px;padding:16px}.pathbox.remedial{border-color:#e8c27c;background:#fffaf0}.pathbox.advanced{border-color:#8acdb1;background:#f2fbf6}.chat{display:grid;gap:9px;max-height:430px;overflow:auto;margin-bottom:14px}.bubble{padding:11px 13px;border-radius:11px;max-width:85%;background:#f1f6f3}.bubble.me{justify-self:end;background:#eaf4fc}.sim-screen{background:linear-gradient(135deg,#10243b,#1d5b78);color:#fff;border-radius:13px;padding:20px;min-height:190px}.auth{max-width:440px;margin:7vh auto}.auth .card{padding:28px}.center{text-align:center}.empty{padding:25px;text-align:center;color:var(--muted)}.inline{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.video-frame{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:#101e2d}.step-list{counter-reset:steps}.step-item{padding:11px 12px;border:1px solid var(--line);border-radius:9px;margin:7px 0}.step-item input{width:65px;padding:7px;border:1px solid var(--line);border-radius:7px}.hidden{display:none!important}
@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{min-height:auto;padding:12px}.sidebar nav{display:flex;overflow:auto}.sidebar nav a{white-space:nowrap}.profile-mini,.side-foot,.logout{display:none}.brand{padding:3px 8px 10px}.topbar{height:60px;padding:0 17px}.content{padding:17px}.col-8,.col-7,.col-6,.col-5,.col-4{grid-column:span 12}.form-grid{grid-template-columns:1fr}}
