:root{--bg:#07111c;--panel:#0d1926;--panel2:#101f2f;--line:#1c3043;--text:#eef5fb;--muted:#8ba0b3;--accent:#f2a93b;--accent2:#ffd482;--good:#65d6a6;--bad:#ff7c82;--blue:#73b8ff;--shadow:0 22px 60px rgba(0,0,0,.28);--radius:18px}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(circle at 75% -10%,rgba(45,103,153,.18),transparent 34%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:26px 18px;display:flex;flex-direction:column;background:rgba(6,16,26,.9);backdrop-filter:blur(16px);z-index:10}.brand{display:flex;align-items:center;gap:12px;margin:0 7px 35px}.brand strong{display:block;font-size:14px;letter-spacing:.2px}.brand small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(242,169,59,.55);border-radius:11px;background:linear-gradient(145deg,rgba(242,169,59,.2),rgba(242,169,59,.04));color:var(--accent2);font-family:Georgia,serif;font-size:23px}.sidebar nav{display:flex;flex-direction:column;gap:5px}.nav-item{display:flex;align-items:center;gap:13px;color:#a8b7c5;padding:11px 13px;border-radius:11px;font-size:14px;transition:.2s}.nav-item span{font-size:18px;width:22px;text-align:center}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.055);color:#fff}.nav-item.active{box-shadow:inset 2px 0 var(--accent)}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:20px 8px 0}.mini-stat{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin:7px 0}.mini-stat strong{color:var(--text)}.text-button{border:0;background:none;padding:8px 0;color:var(--muted);cursor:pointer;font-size:12px}.text-button:hover{color:#fff}.danger-text{color:var(--bad)}.main{min-width:0}.topbar{height:70px;border-bottom:1px solid rgba(28,48,67,.7);display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:rgba(7,17,28,.66);backdrop-filter:blur(12px);position:sticky;top:0;z-index:8}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:var(--accent);text-transform:uppercase}.user-pill{border:1px solid var(--line);border-radius:99px;padding:7px 12px;color:#a9bac8;font-size:12px;display:flex;gap:8px;align-items:center}.user-dot{width:7px;height:7px;background:var(--good);border-radius:50%;box-shadow:0 0 0 3px rgba(101,214,166,.1)}.content{max-width:1400px;margin:0 auto;padding:42px}.hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,.7fr);gap:40px;align-items:center;padding:34px 0 44px}.hero h1,.page-title h1,.module-hero h1,.lesson-header h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-1.4px}.hero h1{font-size:52px;line-height:1.04;max-width:760px;margin:12px 0 18px}.hero h1 em,.login-copy h1 em{color:var(--accent2);font-style:italic}.hero p{color:var(--muted);font-size:16px;max-width:720px}.hero-actions{display:flex;gap:12px;margin-top:28px}.btn{border:1px solid transparent;border-radius:10px;padding:11px 17px;font-weight:700;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s}.btn.primary{background:var(--accent);color:#1d1404}.btn.primary:hover{background:#ffc162;transform:translateY(-1px)}.btn.secondary{border-color:var(--line);background:rgba(255,255,255,.035);color:var(--text)}.btn.secondary:hover{border-color:#36526a;background:rgba(255,255,255,.06)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.wide{width:100%}.hero-score{border:1px solid var(--line);background:linear-gradient(145deg,rgba(18,39,58,.86),rgba(10,23,35,.86));border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);display:grid;grid-template-columns:150px 1fr;gap:25px;align-items:center}.ring{--p:0;width:140px;height:140px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--p)*1%),#1b2c3d 0);position:relative}.ring:before{content:"";position:absolute;width:116px;height:116px;border-radius:50%;background:#0e1c2a}.ring div{position:relative;text-align:center}.ring strong{font-size:29px;display:block}.ring span{font-size:10px;color:var(--muted)}.score-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.score-grid div{border-left:1px solid var(--line);padding-left:14px}.score-grid strong{display:block;font-size:19px}.score-grid span{font-size:10px;color:var(--muted)}.alert{padding:13px 16px;border-radius:11px;margin:0 0 28px;font-size:13px;border:1px solid}.alert a{text-decoration:underline}.alert.warning{background:rgba(242,169,59,.08);border-color:rgba(242,169,59,.28);color:#e9c98e}.alert.danger{background:rgba(255,124,130,.08);border-color:rgba(255,124,130,.3);color:#ffc0c4}.alert.success{background:rgba(101,214,166,.08);border-color:rgba(101,214,166,.28);color:#a8eed2}.section-head{display:flex;justify-content:space-between;align-items:end;margin:30px 0 18px}.section-head h2{font-size:24px;margin:6px 0 0}.section-head p{color:var(--muted);font-size:12px}.module-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.module-card{border:1px solid var(--line);background:linear-gradient(160deg,rgba(17,33,49,.75),rgba(10,23,35,.72));border-radius:15px;padding:18px;min-height:245px;display:flex;flex-direction:column;transition:.18s;position:relative;overflow:hidden}.module-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;background:rgba(242,169,59,.04);right:-35px;bottom:-40px}.module-card:hover{border-color:#3a566e;transform:translateY(-2px);box-shadow:0 12px 35px rgba(0,0,0,.18)}.module-top{display:flex;justify-content:space-between;align-items:center}.module-icon{width:38px;height:38px;border:1px solid #2c4358;border-radius:10px;display:grid;place-items:center;color:var(--accent2);font-size:19px;background:rgba(255,255,255,.025)}.module-icon.small{width:32px;height:32px;font-size:15px}.badge{font-size:9px;text-transform:uppercase;letter-spacing:1px;border:1px solid #294157;color:#9cb0c1;border-radius:99px;padding:4px 7px}.badge.ai{border-color:rgba(242,169,59,.42);color:var(--accent2)}.module-number{font-family:Georgia,serif;color:#345069;font-size:27px;margin-top:18px}.module-card h3{font-size:16px;margin:4px 0 8px}.module-card p{font-size:12px;color:var(--muted);margin:0 0 16px;min-height:38px}.progress-track{height:4px;background:#1b2c3c;border-radius:10px;overflow:hidden;margin-top:auto}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#ffd37e)}.module-meta{display:flex;justify-content:space-between;color:#73899d;font-size:10px;margin-top:8px}.split-cards{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:44px 0 10px}.feature-card{border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);padding:20px;display:grid;grid-template-columns:48px 1fr 25px;gap:15px;align-items:center}.feature-card:hover{background:rgba(255,255,255,.04);border-color:#36526a}.feature-icon{width:45px;height:45px;border-radius:12px;background:rgba(242,169,59,.1);color:var(--accent);display:grid;place-items:center;font-size:22px}.feature-card h3{margin:4px 0;font-size:16px}.feature-card p{font-size:11px;color:var(--muted);margin:0}.arrow{color:var(--accent);font-size:20px}.breadcrumb{display:flex;gap:8px;color:#688196;font-size:11px;margin-bottom:28px}.breadcrumb a:hover{color:#fff}.module-hero{display:grid;grid-template-columns:80px 1fr 220px;gap:25px;align-items:start;padding-bottom:34px;border-bottom:1px solid var(--line)}.module-hero-icon{width:70px;height:70px;border:1px solid rgba(242,169,59,.35);border-radius:18px;background:rgba(242,169,59,.08);display:grid;place-items:center;color:var(--accent2);font-size:32px}.module-hero h1{font-size:42px;margin:4px 0 8px}.module-hero p{color:var(--muted);font-size:14px;max-width:760px}.tag-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.tag-row span{font-size:10px;border:1px solid var(--line);padding:5px 8px;border-radius:99px;color:#93a9bb}.module-progress-box{border:1px solid var(--line);border-radius:14px;padding:16px;background:rgba(255,255,255,.022)}.module-progress-box>span,.module-progress-box small{font-size:10px;color:var(--muted)}.module-progress-box strong{font-size:30px;display:block;margin:3px 0 8px}.module-progress-box small{display:block;margin-top:9px}.lesson-launch{margin:28px 0;border:1px solid var(--line);border-radius:18px;padding:26px;background:linear-gradient(110deg,rgba(21,42,61,.75),rgba(10,23,35,.7));display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.lesson-launch h2{font-size:23px;margin:5px 0 7px}.lesson-launch p{color:var(--muted);font-size:13px;max-width:760px}.lesson-meta{display:flex;gap:7px;color:#6f8799;font-size:10px}.launch-actions{display:flex;flex-direction:column;gap:8px;min-width:190px}.launch-actions small{font-size:10px;color:var(--muted);text-align:center}.launch-actions small a{text-decoration:underline}.learning-principles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.learning-principles div{border-top:1px solid #31485d;padding:16px 5px}.learning-principles span{font-family:Georgia,serif;color:var(--accent);font-size:15px}.learning-principles h3{font-size:14px;margin:8px 0}.learning-principles p{font-size:11px;color:var(--muted)}.lesson-header{max-width:900px;margin:0 auto 30px;text-align:center}.lesson-header h1{font-size:45px;margin:12px 0 12px}.lesson-header p{color:var(--muted);font-size:15px}.chart-card{border:1px solid var(--line);border-radius:17px;background:#0b1825;padding:18px;margin:25px 0;box-shadow:var(--shadow);overflow:hidden}.chart-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.chart-head h3{margin:4px 0;font-size:16px}.status-dot{font-size:9px;color:#84a0b5;border:1px solid #263c4f;border-radius:99px;padding:4px 7px}.status-dot:before{content:"";display:inline-block;width:5px;height:5px;background:var(--good);border-radius:50%;margin-right:5px}.market-chart,#labChart{width:100%;display:block;background:linear-gradient(180deg,#0a1622,#0c1926);border-radius:10px}.chart-caption{font-size:9px;color:#62798d;margin:10px 2px 0}.lesson-body{max-width:920px;margin:42px auto}.lesson-section{display:grid;grid-template-columns:65px 1fr;gap:15px;padding:27px 0;border-top:1px solid var(--line)}.section-index{font-family:Georgia,serif;font-size:25px;color:#38546a}.lesson-section h2{font-size:22px;margin:0 0 10px}.lesson-section p,.lesson-section li{color:#a4b5c4;font-size:14px;line-height:1.7}.lesson-section ul{padding-left:19px}.exercise-zone{margin:55px 0}.exercise-card{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);padding:24px;margin:14px 0}.exercise-number{color:var(--accent);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;font-weight:800}.exercise-card h3{font-size:16px;margin:8px 0 17px}.options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.option{border:1px solid #243b4e;background:#0c1a27;color:#c9d4dd;border-radius:10px;padding:11px;text-align:left;cursor:pointer;font-size:12px;display:flex;align-items:center;gap:9px}.option span{width:23px;height:23px;border:1px solid #355067;border-radius:6px;display:grid;place-items:center;font-size:9px;color:#8ca4b8;flex:none}.option:hover{border-color:#45637b;background:#102231}.option.correct{border-color:rgba(101,214,166,.6);background:rgba(101,214,166,.08);color:#c9f7e5}.option.wrong{border-color:rgba(255,124,130,.55);background:rgba(255,124,130,.07);color:#ffd0d2}.option:disabled{cursor:default}.feedback{margin-top:13px;padding:11px 13px;border-left:2px solid var(--accent);background:rgba(242,169,59,.05);font-size:12px;color:#b7c7d3}.feedback.good{border-color:var(--good)}.feedback.bad{border-color:var(--bad)}.hidden{display:none!important}.takeaway{border:1px solid rgba(242,169,59,.25);background:rgba(242,169,59,.055);border-radius:15px;padding:20px;display:flex;gap:14px;align-items:start}.takeaway>span{color:var(--accent);font-size:22px}.takeaway strong{font-size:12px;color:var(--accent2)}.takeaway p{margin:5px 0 0;font-size:13px;color:#c2d0da}.lesson-footer{display:flex;justify-content:flex-end;gap:10px;margin:25px 0}.page-title{max-width:850px;margin-bottom:30px}.page-title h1{font-size:42px;margin:5px 0 8px}.page-title p{color:var(--muted);font-size:14px}.lab-layout{display:grid;grid-template-columns:230px 1fr;gap:18px}.lab-controls{border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);padding:17px;height:max-content}.lab-controls label,.form-stack label{display:block;font-size:11px;color:#9fb0bd;margin-bottom:14px}.lab-controls select,.form-stack input,.chat-form textarea{width:100%;margin-top:6px;border:1px solid #294155;border-radius:9px;background:#091621;color:#eaf2f8;padding:10px 11px;outline:none}.lab-controls select:focus,.form-stack input:focus,.chat-form textarea:focus{border-color:#56758e}.toggle-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:6px 0 15px}.toggle-list label{display:flex;align-items:center;gap:8px;margin:8px 0;cursor:pointer}.toggle-list input{accent-color:var(--accent)}.lab-controls .btn{margin-top:8px}.lab-chart-card{margin:0}.challenge-card{border:1px solid var(--line);border-radius:15px;padding:20px;margin-top:14px;background:rgba(255,255,255,.025)}.challenge-card h3{font-size:15px}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px}.stat-card{border:1px solid var(--line);border-radius:14px;padding:18px;background:rgba(255,255,255,.025)}.stat-card>span,.stat-card small{color:var(--muted);font-size:10px;display:block}.stat-card strong{font-size:30px;display:block;margin:4px 0}.progress-panel{border:1px solid var(--line);border-radius:16px;padding:20px;background:rgba(255,255,255,.018)}.progress-row{display:grid;grid-template-columns:38px 240px 1fr 48px;gap:13px;align-items:center;padding:12px 4px;border-top:1px solid rgba(28,48,67,.7)}.progress-row:hover{background:rgba(255,255,255,.018)}.progress-name strong{display:block;font-size:12px}.progress-name span{color:var(--muted);font-size:9px}.progress-value{text-align:right;font-size:12px}.chat-shell{border:1px solid var(--line);border-radius:17px;background:#091622;min-height:620px;display:flex;flex-direction:column;overflow:hidden}.chat-messages{padding:24px;flex:1;max-height:620px;overflow:auto}.chat-empty{text-align:center;color:var(--muted);padding:120px 20px}.chat-empty>span{font-size:30px;color:var(--accent)}.chat-empty h3{color:var(--text);font-size:17px;margin:10px}.chat-empty p{max-width:540px;margin:auto;font-size:12px}.bubble{max-width:760px;margin:12px 0}.bubble.user{margin-left:auto}.bubble>span{display:block;font-size:9px;color:#6f879a;margin-bottom:4px}.bubble.user>span{text-align:right}.bubble p{white-space:pre-wrap;margin:0;border:1px solid var(--line);border-radius:13px 13px 13px 3px;padding:12px 14px;background:#10202f;color:#c7d4dd;font-size:13px}.bubble.user p{background:rgba(242,169,59,.1);border-color:rgba(242,169,59,.2);border-radius:13px 13px 3px 13px}.chat-form{border-top:1px solid var(--line);padding:14px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.chat-form textarea{resize:none;margin:0}.settings-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.settings-card{border:1px solid var(--line);border-radius:16px;padding:24px;background:rgba(255,255,255,.025)}.settings-card h2{margin:0;font-size:19px}.settings-card>div>p{font-size:11px;color:var(--muted);margin-top:5px}.settings-icon{float:left;width:38px;height:38px;border-radius:10px;background:rgba(242,169,59,.1);color:var(--accent);display:grid;place-items:center;margin-right:12px}.settings-form{clear:both;padding-top:22px}.form-stack small{display:block;color:#637d91;font-size:9px;margin-top:5px}.delete-form{margin-top:12px}.clean-list{list-style:none;padding:15px 0 0;margin:0;clear:both}.clean-list li{border-top:1px solid var(--line);padding:12px 0}.clean-list strong{display:block;font-size:11px}.clean-list span{font-size:10px;color:var(--muted)}.disclaimer{margin-top:16px;border:1px dashed #31495c;border-radius:14px;padding:17px;color:#8ea5b7;font-size:11px}.disclaimer strong{color:#c2d0da}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;position:relative;overflow:hidden}.login-backdrop{background:radial-gradient(circle at 45% 44%,rgba(242,169,59,.12),transparent 18%),linear-gradient(135deg,#07111c 0%,#0d2234 100%);position:relative}.login-backdrop:before{content:"MARKET\A LAB";white-space:pre;position:absolute;left:10%;top:24%;font-family:Georgia,serif;font-size:120px;line-height:.82;color:rgba(255,255,255,.025);letter-spacing:-6px}.market-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(89,129,158,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(89,129,158,.06) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(90deg,#000,transparent)}.market-lines:after{content:"";position:absolute;width:65%;height:2px;left:12%;top:56%;background:linear-gradient(90deg,transparent,var(--accent),#7bb9e8,transparent);transform:rotate(-13deg);box-shadow:90px -36px 0 rgba(242,169,59,.22),180px -8px 0 rgba(115,184,255,.16)}.login-card{padding:60px clamp(38px,7vw,110px);display:flex;flex-direction:column;justify-content:center;background:#091520}.brand-login{margin:0 0 65px}.login-copy h1{font-family:Georgia,serif;font-weight:400;font-size:45px;line-height:1.05;margin:12px 0 17px}.login-copy p{color:var(--muted);font-size:13px;max-width:480px;margin-bottom:28px}.form-stack{max-width:520px}.fineprint{font-size:9px;color:#566e80;max-width:500px;margin-top:23px}.loading{position:relative;pointer-events:none}.loading:after{content:"";width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1150px){.module-grid{grid-template-columns:repeat(3,1fr)}.hero{grid-template-columns:1fr}.hero-score{max-width:520px}.settings-grid{grid-template-columns:1fr}.module-hero{grid-template-columns:70px 1fr}.module-progress-box{grid-column:2}.stats-row{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;bottom:0;top:auto;width:100%;height:64px;border-right:0;border-top:1px solid var(--line);padding:7px 10px;z-index:20}.brand,.sidebar-bottom{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(5,1fr);gap:2px}.nav-item{font-size:8px;display:flex;flex-direction:column;gap:1px;padding:4px}.nav-item span{font-size:17px}.topbar{padding:0 18px;height:56px}.topbar .eyebrow{display:none}.content{padding:24px 18px 90px}.hero h1{font-size:39px}.module-grid{grid-template-columns:1fr 1fr}.split-cards{grid-template-columns:1fr}.module-hero{grid-template-columns:55px 1fr}.module-hero-icon{width:50px;height:50px;font-size:23px}.module-hero h1{font-size:32px}.lesson-launch{grid-template-columns:1fr}.learning-principles{grid-template-columns:1fr 1fr}.options{grid-template-columns:1fr}.lab-layout{grid-template-columns:1fr}.stats-row{grid-template-columns:1fr 1fr}.progress-row{grid-template-columns:35px 1fr 45px}.progress-bar-wrap{grid-column:2/4}.login-page{grid-template-columns:1fr}.login-backdrop{display:none}.login-card{padding:40px 28px}.lesson-header h1{font-size:35px}}
@media(max-width:520px){.module-grid{grid-template-columns:1fr}.hero-score{grid-template-columns:1fr}.ring{margin:auto}.learning-principles,.stats-row{grid-template-columns:1fr}.feature-card{grid-template-columns:45px 1fr}.feature-card .arrow{display:none}.page-title h1{font-size:34px}}
