*{box-sizing:border-box} :root{--ink:#18243b;--muted:#77839a;--line:#e7ebf3;--bg:#f6f8fc;--purple:#6758e8;--blue:#3f79ef;--green:#22a879}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}a{color:inherit;text-decoration:none}.container{max-width:1160px;margin:auto;padding:0 28px}.topbar{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100% - 1160px)/2));gap:20px;position:relative;z-index:4}.brand{display:flex;align-items:center;gap:11px;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:17px;letter-spacing:-.5px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;background:linear-gradient(135deg,#6e60ee,#4b8af3);border-radius:13px;color:white;font-size:14px;letter-spacing:0;box-shadow:0 6px 15px #6758e833}.brand-muted{color:var(--purple)}.brand small{display:block;font:700 9px 'DM Sans',sans-serif;letter-spacing:1.25px;color:#929bb0;margin-top:3px}.topbar nav{display:flex;gap:28px;align-items:center;color:#69758a;font-weight:600}.topbar nav>a,.nav-dropdown>span{padding:12px 0;cursor:pointer}.nav-active,.topbar nav a:hover{color:var(--purple)!important}.nav-dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:32px;left:-15px;width:190px;background:white;border:1px solid var(--line);border-radius:13px;padding:7px;box-shadow:0 15px 35px #1d2b4815}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{display:block}.dropdown-menu a{display:flex;justify-content:space-between;padding:10px;border-radius:8px}.dropdown-menu a:hover{background:#f5f4ff}.top-cta{border:1px solid #dcdff0;border-radius:10px;padding:11px 15px;font-weight:700;font-size:12px}.top-cta span{color:var(--purple);margin-left:8px}.hero{margin-top:30px;border-radius:23px;background:linear-gradient(115deg,#171d3a,#222a54 58%,#313c79);color:#fff;min-height:365px;padding:50px 54px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:340px;height:340px;border:1px solid #ffffff0d;border-radius:50%;right:-120px;top:-180px}.hero-copy{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:800;color:#8581ff;display:inline-flex;align-items:center;gap:8px}.hero .eyebrow{color:#b5b3ff}.pulse{width:7px;height:7px;border-radius:50%;background:#7cdbb0;box-shadow:0 0 0 4px #7cdbb020}.hero h1,.page-hero h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:37px;line-height:1.23;letter-spacing:-1.5px;margin:20px 0 14px}.hero h1 span{color:#a7a2ff}.hero-copy>p{max-width:500px;color:#c3c9df;line-height:1.8;margin:0;font-size:13px}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:27px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:12px 17px;border-radius:10px;font:700 12px 'DM Sans',sans-serif;border:0;cursor:pointer}.btn-primary{background:var(--purple);color:white;box-shadow:0 7px 18px #6758e82b}.btn-primary:hover{background:#5748d4;transform:translateY(-1px)}.hero .btn-primary{background:#7770f7}.tech-note{color:#c4c9df;font-size:11px}.tech-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#48d6a0;margin-right:7px}.hero-art{height:250px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #a5a7ff1e;border-radius:50%;width:310px;height:310px}.orbit-two{width:245px;height:245px;border-color:#a5a7ff26}.code-window{position:relative;z-index:1;background:#10162c;border:1px solid #ffffff20;border-radius:15px;width:300px;box-shadow:0 25px 65px #070b1c80;overflow:hidden;transform:rotate(-2deg)}.window-top{height:39px;background:#ffffff08;border-bottom:1px solid #ffffff0e;display:flex;align-items:center;gap:5px;padding:0 13px}.window-top i{height:6px;width:6px;border-radius:50%;background:#f17b84}.window-top i:nth-child(2){background:#f5c66b}.window-top i:nth-child(3){background:#59cfa1}.window-top span{margin-left:12px;color:#858ca9;font-size:10px}.code-lines{padding:17px 13px 12px;font:10px/2.2 monospace;color:#d4dcf8}.code-lines div{white-space:nowrap}.code-lines b{font-weight:400;color:#59617f;margin-right:15px}.purple{color:#c19bff}.blue{color:#8cbcff}.yellow{color:#f5d77d}.green{color:#72dbb1}.code-status{border-top:1px solid #ffffff12;padding:11px 13px;color:#8d98b5;font-size:9px}.code-status span{color:#51d9a3;margin-right:5px}.code-status strong{float:right;color:#b8b9ff}.floating-chip{position:absolute;z-index:2;background:#fff;color:#293450;border:1px solid #eef0fa;border-radius:10px;padding:11px 13px;box-shadow:0 10px 30px #090e2855;font-size:12px;font-weight:800}.floating-chip span{font-size:10px;font-weight:700;margin-left:5px}.chip-a{top:24px;right:-4px}.chip-a:first-letter{color:#6758e8}.chip-b{bottom:18px;left:-3px}.chip-b:first-letter{color:#22a879}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0 42px}.stat-card{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px 22px}.stat-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;font-size:20px}.violet{background:#f0eeff;color:#7162e9}.blue{background:#eaf2ff;color:#4783ed}.green{background:#e6f8f1;color:#24a779}.stat-card span{display:block;color:#818ca1;font-size:11px;margin-bottom:5px}.stat-card strong{font:800 20px 'Plus Jakarta Sans',sans-serif}.stat-card strong small{font:600 11px 'DM Sans',sans-serif;color:#8a94a8}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.section-heading h2{font:800 23px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.7px;margin:9px 0 7px}.section-heading p{margin:0;color:var(--muted);font-size:12px}.section-counter{font:700 11px monospace;color:#969fb1;letter-spacing:1px;padding-bottom:5px}.task-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.task-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:21px;min-height:220px;display:flex;flex-direction:column;transition:.2s}.task-card:hover{border-color:#c8c3ff;box-shadow:0 12px 30px #293b6710;transform:translateY(-3px)}.task-top{display:flex;justify-content:space-between;align-items:center}.task-number{font-size:9px;font-weight:800;letter-spacing:1.2px;color:#7d87a0}.arrow-circle{width:29px;height:29px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:#77839a}.task-symbol{margin:17px 0 10px;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-size:22px;background:#f0eeff;color:#6858e7}.symbol-2{background:#eaf2ff;color:#3e7eea}.symbol-3{background:#e6f8f1;color:#22a879}.symbol-4{background:#fff3e6;color:#d58a32}.symbol-5{background:#fcecf3;color:#d45b92}.task-card h3{font:800 14px 'Plus Jakarta Sans',sans-serif;margin:0 0 7px;letter-spacing:-.2px}.task-card p{font-size:11px;line-height:1.65;color:#818ca1;margin:0 0 15px}.task-footer{margin-top:auto;border-top:1px solid #f0f2f7;padding-top:13px;display:flex;justify-content:space-between;font-size:11px;font-weight:700;color:#6d63df}.bottom-banner{margin:25px 0 38px;background:#eeedff;border:1px solid #e2e0ff;border-radius:16px;padding:20px 23px;display:flex;align-items:center;gap:15px}.banner-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:#6a5ce6;font-size:20px}.bottom-banner strong{font:800 13px 'Plus Jakarta Sans',sans-serif}.bottom-banner p{margin:5px 0 0;color:#747e98;font-size:11px}.bottom-banner .btn{margin-left:auto;white-space:nowrap}.btn-light{background:#fff;color:#6254d9;border:1px solid #e1defd}.site-footer{max-width:1160px;margin:auto;padding:22px 28px 28px;border-top:1px solid var(--line);display:flex;align-items:center;gap:18px;color:#8a94a8;font-size:10px}.footer-brand{display:flex;align-items:center;gap:9px;color:#29344d;font-weight:800;font-size:12px}.footer-brand small{display:block;color:#8a94a8;font-weight:500;font-size:9px;margin-top:3px}.small-mark{width:30px;height:30px;border-radius:9px;font-size:10px}.site-footer p{margin-left:auto}.site-footer>a{font-weight:700;color:#6b60df}.breadcrumb{display:flex;align-items:center;gap:10px;margin:25px 0;color:#8b95a9;font-size:11px}.breadcrumb a{color:#685ce0;font-weight:700}.page-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(110deg,#1b2241,#2c356a);border-radius:18px;padding:28px 34px;color:white;margin-bottom:22px}.page-hero h1{font-size:27px;margin:10px 0 7px;letter-spacing:-.8px}.page-hero p{color:#c2c8df;margin:0;font-size:12px;line-height:1.6}.module-badge{font:800 34px 'Plus Jakarta Sans',sans-serif;color:#b6b1ff;background:#ffffff0c;border:1px solid #ffffff1b;border-radius:14px;padding:16px 18px}.module-badge small{font:600 11px 'DM Sans',sans-serif;color:#a5aecb}.module-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:start;margin-bottom:36px}.module-nav,.panel{background:#fff;border:1px solid var(--line);border-radius:15px}.module-nav{padding:15px;position:sticky;top:15px}.aside-label{font-size:9px;letter-spacing:1.3px;font-weight:800;color:#9aa3b5;display:block;padding:7px 8px 12px}.module-nav>a{display:flex;align-items:center;gap:10px;padding:11px 9px;border-radius:9px;color:#65718a;font-size:11px;font-weight:700;margin-bottom:3px}.module-nav>a.selected{background:#f0efff;color:#6558df}.nav-num{font:800 10px monospace;color:#9ca5b9}.selected .nav-num{color:#685ce0}.nav-arrow{margin-left:auto}.aside-tip{margin-top:17px;border-top:1px solid var(--line);padding:17px 8px 5px}.aside-tip>span{color:#7063e9;font-size:17px}.aside-tip strong{display:block;font-size:11px;margin:8px 0 5px}.aside-tip p{font-size:10px;line-height:1.7;color:#8791a5;margin:0}.module-content{min-width:0}.panel{padding:23px;margin-bottom:17px}.panel-heading{display:flex;align-items:start;justify-content:space-between;margin-bottom:18px}.panel h2{font:800 15px 'Plus Jakarta Sans',sans-serif;margin:0 0 6px;letter-spacing:-.3px}.panel-heading p{color:#8791a5;font-size:11px;margin:0;line-height:1.6}.pill{display:inline-block;background:#e8f8f0;color:#218b65;padding:6px 9px;border-radius:30px;font-size:9px;font-weight:800}.pill-blue{background:#edf3ff;color:#4578d7}.pill-purple{background:#f0efff;color:#6858df}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:11px}th{text-align:left;background:#f7f8fc;color:#7e899e;font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:800}th,td{padding:12px 13px;border-bottom:1px solid #edf0f6}td{color:#47536b}tbody tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums}.code-block{background:#141a30;color:#d7def7;border-radius:12px;padding:18px;overflow:auto;font:11px/1.8 Consolas,monospace;white-space:pre}.code-label{font-size:9px;font-weight:800;letter-spacing:1px;color:#969ff0;margin-bottom:10px}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:17px}.result-metric{padding:15px;background:#f7f8fc;border:1px solid #edf0f6;border-radius:11px}.result-metric span{display:block;font-size:10px;color:#8490a5;margin-bottom:7px}.result-metric strong{font:800 20px 'Plus Jakarta Sans',sans-serif}.result-metric small{display:block;color:#8993a8;font-size:9px;margin-top:4px}.note{background:#f2f4ff;border-left:3px solid #7468e9;border-radius:0 9px 9px 0;padding:13px 15px;color:#68738c;font-size:11px;line-height:1.7;margin-top:14px}.note strong{color:#303b57}.module-pagination{display:flex;justify-content:space-between;gap:12px;margin:20px 0}.btn-outline{background:white;border:1px solid #dfe4ef;color:#68738a}.ascii-chart{font:12px/1.8 Consolas,monospace;overflow-x:auto;background:#151b31;color:#d9def5;border-radius:12px;padding:18px}.bar{color:#8f86ff}.success{color:#27a878;font-weight:700}.muted{color:#8994a8}.dataset-note{font-size:11px;color:#8994a8;margin-top:10px}@media(max-width:850px){.topbar{padding:0 20px}.topbar nav{gap:14px}.top-cta{display:none}.hero{padding:36px 30px;grid-template-columns:1fr}.hero-art{display:none}.task-grid{grid-template-columns:repeat(2,1fr)}.module-layout{grid-template-columns:1fr}.module-nav{position:static;display:flex;flex-wrap:wrap;align-items:center;gap:4px}.aside-label{width:100%}.module-nav>a{flex:1;min-width:90px}.aside-tip{display:none}}@media(max-width:560px){.container{padding:0 15px}.topbar{height:70px;padding:0 15px}.brand{font-size:15px}.brand-mark{width:38px;height:38px}.topbar nav{font-size:11px}.nav-dropdown{display:none}.hero{margin-top:16px;padding:30px 22px;min-height:auto}.hero h1{font-size:29px}.hero-actions{align-items:flex-start;flex-direction:column;gap:13px}.stats-grid{grid-template-columns:1fr;gap:10px;margin:15px 0 32px}.stat-card{padding:14px 17px}.section-heading h2{font-size:20px}.task-grid{grid-template-columns:1fr}.task-card{min-height:190px}.bottom-banner{align-items:flex-start;flex-wrap:wrap}.bottom-banner .btn{margin:5px 0 0;width:100%}.site-footer{padding:20px 15px;flex-wrap:wrap}.site-footer p{margin-left:0;width:100%;order:3}.page-hero{padding:23px 20px}.page-hero h1{font-size:22px}.module-badge{font-size:25px;padding:12px}.panel{padding:16px}.result-grid{grid-template-columns:repeat(2,1fr)}.module-nav>a{min-width:75px;padding:9px 5px;font-size:10px}.module-pagination .btn{font-size:10px;padding:11px}.code-block{font-size:10px}}


/* Simplified dashboard */
.simple-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:58px 0 30px}
.simple-header h1{font:800 31px 'Plus Jakarta Sans',sans-serif;letter-spacing:-1px;margin:12px 0 8px;color:#18243b}
.simple-header p{font-size:13px;color:#77839a;margin:0}
.student-info{display:grid;grid-template-columns:auto auto;gap:7px 18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 19px;min-width:245px}
.student-info span{font-size:11px;color:#8993a8}
.student-info strong{font-size:12px;color:#27334c}
.simple-task-list{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.simple-task-card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:19px 20px;min-height:98px;transition:border-color .18s,transform .18s,box-shadow .18s}
.simple-task-card:hover{border-color:#c8c3ff;transform:translateY(-2px);box-shadow:0 8px 22px #293b670d}
.simple-task-number{width:42px;height:42px;flex:0 0 42px;border-radius:11px;background:#f0eeff;color:#6858e7;display:grid;place-items:center;font:800 13px 'Plus Jakarta Sans',sans-serif}
.simple-task-card:nth-child(2) .simple-task-number{background:#eaf2ff;color:#3e7eea}
.simple-task-card:nth-child(3) .simple-task-number{background:#e6f8f1;color:#22a879}
.simple-task-card:nth-child(4) .simple-task-number{background:#fff3e6;color:#d58a32}
.simple-task-card:nth-child(5) .simple-task-number{background:#fcecf3;color:#d45b92}
.simple-task-copy{min-width:0;display:flex;flex-direction:column;gap:6px;flex:1}
.simple-task-copy strong{font:800 13px 'Plus Jakarta Sans',sans-serif;color:#18243b}
.simple-task-copy small{font-size:11px;color:#818ca1;line-height:1.5}
.simple-task-arrow{font-size:20px;color:#6d63df;margin-left:auto}
.simple-footnote{text-align:center;font-size:10px;color:#9aa3b5;padding:30px 0 12px}
@media(max-width:700px){.simple-header{align-items:flex-start;flex-direction:column;padding:35px 0 22px}.simple-header h1{font-size:26px}.student-info{width:100%;max-width:360px}.simple-task-list{grid-template-columns:1fr}.simple-task-card{padding:16px}.simple-task-copy strong{font-size:12px}}
