:root{
  --blue-950:#082052;--blue-900:#0b2f75;--blue-800:#0b3b8c;--blue-700:#124fb8;--blue-600:#2563eb;
  --yellow-500:#fbbf24;--yellow-400:#facc15;--slate-950:#0f172a;--slate-700:#334155;--slate-500:#64748b;
  --slate-200:#e2e8f0;--slate-100:#f1f5f9;--slate-50:#f8fafc;--white:#fff;
  --radius:22px;--shadow:0 22px 50px rgba(15,23,42,.08);
}
*{box-sizing:border-box}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--slate-950);background:var(--slate-50)}
a{text-decoration:none}.public-body{padding-top:76px}.glass-nav{background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.8)}
.brand-mark,.sidebar-brand{font-weight:800;letter-spacing:-.03em;display:inline-flex;align-items:center;gap:.55rem}.brand-dot{width:13px;height:13px;border-radius:5px;background:linear-gradient(135deg,var(--blue-600),var(--yellow-500));box-shadow:0 0 0 5px rgba(37,99,235,.08)}
.nav-link{font-weight:600;color:var(--slate-700)!important}.btn-primary{background:linear-gradient(135deg,var(--blue-700),var(--blue-600));border:0}.btn-warning{background:var(--yellow-500);border-color:var(--yellow-500);color:#18213a}.btn-warning:hover{background:var(--yellow-400);border-color:var(--yellow-400)}
.hero{position:relative;overflow:hidden;background:linear-gradient(145deg,#f7fbff 0%,#fff9e7 100%);padding:6.5rem 0 5rem}.hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.16),rgba(37,99,235,0) 68%);right:-180px;top:-230px}.hero-kicker{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .9rem;border-radius:999px;background:#fff;border:1px solid #dbeafe;color:var(--blue-800);font-weight:700;font-size:.86rem}.hero-title{font-size:clamp(2.5rem,6vw,5.2rem);line-height:.98;letter-spacing:-.055em;font-weight:850;max-width:850px}.hero-title .accent{color:var(--blue-700)}.hero-copy{max-width:650px;color:var(--slate-500);font-size:1.12rem;line-height:1.8}.hero-card{background:rgba(255,255,255,.94);border:1px solid #e5e7eb;border-radius:30px;padding:1.25rem;box-shadow:0 30px 70px rgba(8,32,82,.16);transform:rotate(1deg)}
.visual-panel{min-height:380px;border-radius:23px;background:linear-gradient(145deg,var(--blue-950),var(--blue-700));padding:2rem;color:white;position:relative;overflow:hidden}.visual-panel:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;background:var(--yellow-500);right:-85px;bottom:-100px}.visual-chip{display:inline-flex;padding:.55rem .85rem;border-radius:12px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);font-size:.85rem}.visual-chat{position:absolute;left:1.5rem;right:1.5rem;bottom:1.5rem;background:white;color:var(--slate-950);padding:1.1rem;border-radius:18px;box-shadow:0 16px 30px rgba(0,0,0,.18);z-index:2}
.section-pad{padding:5.5rem 0}.section-eyebrow{color:var(--blue-700);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.section-title{font-size:clamp(2rem,4vw,3.35rem);line-height:1.05;letter-spacing:-.045em;font-weight:800}.section-copy{color:var(--slate-500);line-height:1.8}
.metric-card,.feature-card,.course-card,.team-card,.soft-card{background:white;border:1px solid #e7edf6;border-radius:var(--radius);box-shadow:var(--shadow)}.metric-card{padding:1.5rem}.metric-number{font-size:2rem;font-weight:850;color:var(--blue-800)}.feature-card{padding:1.7rem;height:100%}.feature-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#eff6ff;color:var(--blue-700);font-size:1.25rem}.course-card{overflow:hidden;height:100%;transition:.25s ease}.course-card:hover{transform:translateY(-5px);box-shadow:0 26px 60px rgba(15,23,42,.12)}.course-cover{height:180px;background:linear-gradient(145deg,#dbeafe,#fff4c2);position:relative;overflow:hidden}.course-cover img{width:100%;height:100%;object-fit:cover}.course-cover .cover-letter{position:absolute;inset:0;display:grid;place-items:center;font-size:4.7rem;font-weight:900;color:rgba(8,32,82,.12)}.course-body{padding:1.3rem}.badge-soft-blue{background:#eff6ff;color:#1d4ed8}.badge-soft-yellow{background:#fff7d6;color:#92400e}.team-card{padding:1.3rem;text-align:center;height:100%}.team-avatar{width:94px;height:94px;border-radius:28px;object-fit:cover;background:linear-gradient(145deg,#dbeafe,#fef3c7);display:grid;place-items:center;margin:0 auto 1rem;color:var(--blue-800);font-size:2rem;font-weight:800}.site-footer{background:linear-gradient(145deg,var(--blue-950),#071736)}.footer-link{color:rgba(255,255,255,.76);margin-left:1.2rem}.footer-link:hover{color:white}
.auth-wrap{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:4rem 1rem;background:radial-gradient(circle at 10% 10%,#dbeafe 0,transparent 28%),radial-gradient(circle at 90% 90%,#fff1b8 0,transparent 27%),#f8fafc}.auth-card{width:min(100%,480px);background:white;border:1px solid #e4eaf3;border-radius:28px;padding:2rem;box-shadow:0 30px 70px rgba(15,23,42,.12)}.form-control,.form-select{border-radius:14px;border-color:#dbe3ef;padding:.78rem 1rem}.form-control:focus,.form-select:focus{border-color:#93c5fd;box-shadow:0 0 0 .25rem rgba(37,99,235,.12)}
.app-body{background:#f5f8fc}.app-shell{min-height:100vh;display:flex}.app-sidebar{width:268px;background:linear-gradient(180deg,#092763,#071a42);color:white;position:fixed;left:0;top:0;bottom:0;z-index:1040;padding:1.4rem 1rem;display:flex;flex-direction:column;transition:.25s ease}.sidebar-brand{color:white;font-size:1.15rem;padding:.4rem .7rem;margin-bottom:1.2rem}.sidebar-role{font-size:.67rem;font-weight:800;letter-spacing:.16em;color:rgba(255,255,255,.42);padding:.2rem .8rem .8rem}.sidebar-nav{display:flex;flex-direction:column;gap:.25rem}.sidebar-nav a,.sidebar-footer a,.sidebar-logout{display:flex;align-items:center;gap:.8rem;color:rgba(255,255,255,.74);padding:.78rem .85rem;border-radius:13px;font-weight:600;font-size:.91rem;background:transparent;border:0;width:100%;text-align:left}.sidebar-nav a:hover,.sidebar-footer a:hover,.sidebar-logout:hover{background:rgba(255,255,255,.09);color:white}.sidebar-footer{margin-top:auto}.app-main{margin-left:268px;min-width:0;flex:1}.app-topbar{height:76px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom:1px solid #e7edf5;display:flex;align-items:center;padding:0 1.6rem;position:sticky;top:0;z-index:1020}.app-content{padding:1.8rem}.user-avatar{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,var(--blue-700),var(--blue-600));color:white;display:grid;place-items:center;font-weight:800}.tiny{font-size:.72rem}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.6rem}.page-heading h1{font-size:1.9rem;font-weight:800;letter-spacing:-.04em;margin:0}.dashboard-stat{background:#fff;border:1px solid #e5ebf3;border-radius:20px;padding:1.25rem;position:relative;overflow:hidden}.dashboard-stat .value{font-size:1.9rem;font-weight:850;line-height:1}.dashboard-stat .label{color:var(--slate-500);font-size:.84rem;margin-top:.45rem}.dashboard-stat .icon{position:absolute;right:1rem;top:1rem;width:42px;height:42px;border-radius:14px;background:#eff6ff;color:#1d4ed8;display:grid;place-items:center}.panel{background:white;border:1px solid #e5ebf3;border-radius:20px;padding:1.25rem}.table-modern{vertical-align:middle}.table-modern th{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;border-bottom-color:#e2e8f0}.table-modern td{border-bottom-color:#eef2f7}.progress-thin{height:7px;border-radius:99px}.course-mini{display:flex;align-items:center;gap:.85rem}.course-mini-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#dbeafe,#fef3c7);display:grid;place-items:center;color:#1e40af;font-weight:800}.lesson-list{display:flex;flex-direction:column;gap:.65rem}.lesson-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid #e8edf4;border-radius:15px;background:#fff}.lesson-row.done{background:#f0fdf4;border-color:#bbf7d0}.lesson-content{font-size:1rem;line-height:1.8;color:#253044}.lesson-content h1,.lesson-content h2,.lesson-content h3{letter-spacing:-.03em;margin-top:1.6rem}.video-frame{aspect-ratio:16/9;border:0;border-radius:18px;width:100%;background:#0f172a}.ai-panel{border-radius:22px;background:linear-gradient(180deg,#0a2c6c,#082052);color:white;padding:1.15rem;min-height:530px;display:flex;flex-direction:column}.ai-messages{flex:1;overflow:auto;max-height:440px;padding:.4rem;display:flex;flex-direction:column;gap:.75rem}.ai-bubble{padding:.8rem .95rem;border-radius:16px;line-height:1.55;font-size:.9rem;white-space:pre-wrap}.ai-bubble.user{background:var(--yellow-500);color:#172033;margin-left:18%}.ai-bubble.assistant{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);margin-right:10%}.ai-input{background:white;border-radius:16px;padding:.5rem;display:flex;gap:.5rem;margin-top:.8rem}.ai-input textarea{border:0;resize:none;outline:0;flex:1;padding:.45rem;max-height:120px}.ai-input button{width:44px;height:44px;border-radius:13px;border:0;background:var(--yellow-500);color:#172033}.builder-section{border:1px solid #e4eaf2;border-radius:20px;padding:1rem;background:white;margin-bottom:1rem}.builder-section-title{font-weight:800}.empty-state{padding:3rem 1rem;text-align:center;color:#64748b}.empty-state i{font-size:2.2rem;color:#93c5fd}.sticky-card{position:sticky;top:94px}
@media(max-width:991.98px){.app-sidebar{transform:translateX(-100%);box-shadow:18px 0 45px rgba(0,0,0,.2)}.app-sidebar.open{transform:translateX(0)}.app-main{margin-left:0}.hero{padding-top:4.5rem}.hero-card{margin-top:2rem}.section-pad{padding:4rem 0}}
@media(max-width:575.98px){.app-content{padding:1rem}.page-heading{align-items:flex-start;flex-direction:column}.auth-card{padding:1.35rem;border-radius:22px}.hero-title{font-size:2.7rem}.footer-link{margin:0 .7rem 0 0}.course-cover{height:155px}}
