:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e7edf7;background:#081322;color-scheme:dark;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #e7edf7;--ink-soft: #d6e0ec;--muted: #8e9fb3;--line: #24364e;--surface: #101d30;--canvas: #081322;--navy: #0d1a2b;--navy-2: #152d47;--green: #62dca5;--green-dark: #218766;--green-soft: #112e2b;--lime: #cef28b;--red: #ff8e98;--shadow: 0 16px 40px rgba(0, 0, 0, .23)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--canvas)}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #91bc68;outline-offset:3px}.app-shell{display:grid;min-height:100vh;grid-template-columns:222px minmax(0,1fr);grid-template-rows:70px minmax(calc(100vh - 70px),auto)}.topbar{grid-column:1 / -1;grid-row:1;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 34px;border-bottom:1px solid #e7ebe7;background:#fffffff2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-size:16px;letter-spacing:-.45px}.brand strong{font-weight:780}.brand-mark{display:flex;width:35px;height:35px;align-items:flex-end;justify-content:center;gap:2px;padding:9px 8px;border-radius:11px;background:var(--navy)}.brand-mark i{width:4px;border-radius:3px 3px 1px 1px;background:var(--lime)}.brand-mark i:nth-child(1){height:8px;opacity:.7}.brand-mark i:nth-child(2){height:13px}.brand-mark i:nth-child(3){height:10px;opacity:.85}.topbar-right{display:flex;align-items:center;gap:14px}.account-context{display:inline-flex;align-items:center;gap:7px;color:#6d7987;font-size:11px}.account-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#9cb67f;box-shadow:0 0 0 3px #eef4e7}.demo-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dce5d3;border-radius:7px;color:#49613e;background:#f4f8ed;font-size:9px;letter-spacing:.8px;font-weight:850;white-space:nowrap}.demo-dot{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#76a44e}.avatar{display:grid;width:36px;height:36px;place-items:center;border:1px solid #dce4e2;border-radius:50%;background:#edf1ed;color:var(--navy);font-size:12px;font-weight:800}.sidebar{position:sticky;top:70px;grid-column:1;grid-row:2;display:flex;height:calc(100vh - 70px);flex-direction:column;padding:29px 15px 20px;border-right:1px solid #e5e9e5;background:#fbfcfa}.sidebar-label{margin:0 0 12px 12px;color:#94a097;font-size:9px;font-weight:850;letter-spacing:1.25px}.sidebar-links{display:grid;gap:5px}.sidebar-link{display:flex;min-height:43px;align-items:center;gap:12px;padding:0 11px;border:0;border-radius:9px;background:transparent;color:#73808d;text-align:left;font-size:12px;font-weight:650;transition:background .16s ease,color .16s ease}.sidebar-link:hover{background:#f2f5f1;color:var(--ink)}.sidebar-link.active{background:#eaf0e5;color:#34543b;font-weight:800}.nav-mark{display:grid;width:23px;height:23px;flex:0 0 auto;place-items:center;border-radius:7px;color:currentColor;font-size:16px;font-weight:650}.sidebar-link.active .nav-mark{background:#ffffffbf}.sidebar-chevron{margin-left:auto;color:#83947b;font-size:19px}.sidebar-footnote{margin-top:auto;padding:15px 13px;border:1px solid #e0e8db;border-radius:12px;background:linear-gradient(150deg,#f4f7ed,#fff 78%)}.sidebar-footnote-icon{display:grid;width:25px;height:25px;place-items:center;margin-bottom:12px;border-radius:8px;background:#e5efda;color:#668246;font-size:15px}.sidebar-footnote strong{color:var(--ink);font-size:11px}.sidebar-footnote p{margin:5px 0 11px;color:#748172;font-size:10px;line-height:1.5}.sidebar-footnote-tag{display:inline-block;padding:5px 7px;border-radius:5px;background:#fff;color:#526343;font-size:9px;font-weight:750}.sidebar-local{display:flex;align-items:center;gap:9px;margin:17px 3px 0;padding-top:14px;border-top:1px solid #e8ece8}.local-lock{display:grid;width:26px;height:26px;flex:0 0 auto;place-items:center;border-radius:50%;background:#eff3ee;color:#758479;font-size:12px}.sidebar-local>span:last-child{display:flex;flex-direction:column;gap:3px}.sidebar-local strong{color:#586656;font-size:9px}.sidebar-local small{color:#9aa39b;font-size:9px}.content{grid-column:2;grid-row:2;width:min(calc(100% - 64px),1180px);margin:0 auto;padding:34px 0 24px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 23px}.eyebrow{margin:0 0 7px;color:#869287;font-size:9px;line-height:1.4;font-weight:850;letter-spacing:1.35px}.heading-dot{margin:0 4px;color:#c2c9c0}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.55px}h1{margin-bottom:0;color:var(--ink);font-size:clamp(27px,3.4vw,35px);line-height:1.12;font-weight:730}h2{margin-bottom:10px;font-size:21px;font-weight:720}h3{margin-bottom:8px;font-size:15px;font-weight:730}.session-label{display:inline-flex;align-items:center;gap:8px;padding-bottom:4px;color:#76818d;font-size:11px}.portfolio-overview{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.83fr);gap:15px;align-items:stretch}.hero-card{position:relative;overflow:hidden;min-width:0;padding:24px 26px 17px;border:1px solid rgba(255,255,255,.13);border-radius:17px;color:#fff;background:radial-gradient(ellipse at 93% 9%,rgba(165,210,123,.13),transparent 38%),linear-gradient(130deg,#11253a,#193b48 58%,#245847);box-shadow:0 18px 36px #12243a21}.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.card-kicker{margin:0 0 9px;color:#ffffffa8;font-size:9px;font-weight:850;letter-spacing:1.15px}.total-value{font-size:clamp(32px,5vw,43px);line-height:1.05;font-weight:730;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}.return-pill{margin-top:4px;padding:8px 11px;border:1px solid rgba(201,242,122,.24);border-radius:8px;background:#c9f27a17;color:var(--lime);font-size:12px;font-weight:800;white-space:nowrap}.return-pill span{padding-left:3px;color:#ffffff9e;font-size:10px;font-weight:550}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 5px;padding-top:15px;border-top:1px solid rgba(255,255,255,.16)}.hero-stats>div{display:flex;flex-direction:column;gap:5px;min-width:0}.hero-stats span{color:#ffffffa1;font-size:10px;line-height:1.35}.hero-stats strong{font-size:14px;font-weight:680;font-variant-numeric:tabular-nums}.hero-stats .change{font-size:14px}.change{font-variant-numeric:tabular-nums}.change.positive{color:#d4f2ad}.change.negative{color:#ffc5c8}.hero-simulation-note{display:flex;align-items:center;gap:7px;margin-top:11px;color:#ffffffad;font-size:9px;letter-spacing:.1px}.hero-simulation-note .demo-dot{background:var(--lime)}.term-wrap{position:relative;display:inline-flex;vertical-align:middle}.term-button{display:inline-grid;width:15px;height:15px;place-items:center;margin-left:4px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:transparent;color:inherit;font-size:9px;line-height:1}.term-tooltip{position:absolute;z-index:9;left:50%;bottom:calc(100% + 8px);width:205px;padding:9px 11px;border-radius:8px;background:#152b40;color:#fff;font-size:10px;line-height:1.45;opacity:0;pointer-events:none;transform:translate(-50%,4px);transition:.15s ease;box-shadow:0 7px 20px #0000002e}.term-wrap:hover .term-tooltip,.term-wrap:focus-within .term-tooltip{opacity:1;transform:translate(-50%)}.chart-wrap{margin-top:10px}.chart-caption,.chart-period{display:flex;justify-content:space-between;color:#ffffff9c;font-size:9px}.chart-wrap svg{display:block;width:100%;height:62px;margin-top:3px;overflow:visible}.chart-baseline{stroke:#ffffff3b;stroke-width:1;stroke-dasharray:3 4}.chart-line{fill:none;stroke:#c8ed89;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.chart-line.chart-down{stroke:#ffc0be}.chart-period{margin-top:-3px}.overview-sidecard{display:flex;min-width:0;flex-direction:column;padding:20px 19px 17px;border:1px solid #e3e8e1;border-radius:16px;background:linear-gradient(150deg,#fff 10%,#fbfcf8);box-shadow:var(--shadow)}.sidecard-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.sidecard-icon{display:grid;width:31px;height:31px;place-items:center;border:1px solid #e0e8d7;border-radius:9px;background:#f3f7eb;color:#668246;font-size:17px}.local-pill{padding:5px 7px;border:1px solid #e6e9e3;border-radius:5px;color:#818b7b;font-size:8px;font-weight:850;letter-spacing:.7px}.overview-sidecard .eyebrow{margin-bottom:5px;font-size:8px}.overview-sidecard h2{max-width:220px;margin:0 0 7px;font-size:18px;line-height:1.25}.sidecard-copy{margin:0;color:#7a8590;font-size:10px;line-height:1.55}.session-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:auto 0 12px;padding:14px 0 0}.session-metrics>div{display:flex;flex-direction:column;gap:4px;padding-left:10px;border-left:2px solid #e4eadf}.session-metrics span{color:#8c958f;font-size:9px}.session-metrics strong{color:var(--ink);font-size:16px;font-variant-numeric:tabular-nums}.session-metrics small{color:#9aa39b;font-size:9px;font-weight:500}.sidecard-link{display:flex;align-items:center;justify-content:space-between;min-height:35px;padding:0 10px;border:1px solid #e0e8d8;border-radius:8px;background:#f7f9f3;color:#4e6944;font-size:10px;font-weight:800;transition:background .15s ease,border-color .15s ease}.sidecard-link:hover{border-color:#c9d7bc;background:#eff4e7}.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:29px 0 13px}.section-head h2{margin:0}.section-head .eyebrow{margin-bottom:5px}.text-button,.back-button{border:0;background:transparent;color:#51704c;font-size:11px;font-weight:800}.text-button{padding:7px 0;white-space:nowrap}.empty-card,.holdings-card,.leaderboard-card,.settings-card,.admin-card,.lesson-detail{border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.empty-card{padding:32px 20px;text-align:center}.empty-icon{display:inline-grid;width:38px;height:38px;place-items:center;margin-bottom:12px;border-radius:12px;background:#edf3e8;color:#658247;font-size:22px}.empty-card p{max-width:390px;margin:0 auto 18px;color:var(--muted);font-size:12px;line-height:1.6}.empty-card h3{margin-bottom:8px}.primary-button,.secondary-button,.danger-button{min-height:40px;padding:0 15px;border:1px solid transparent;border-radius:8px;font-size:11px;font-weight:800;transition:transform .15s,background .15s,border-color .15s}.primary-button{background:var(--green-dark);color:#fff}.primary-button:hover{background:#0d5541;transform:translateY(-1px)}.secondary-button{border-color:#dce4df;background:#fff;color:#425648}.secondary-button:hover{background:#f6f8f5}.danger-button{border-color:#efdddd;background:#fff;color:#a8434a}.small{min-height:35px;padding:0 11px;font-size:10px}.holdings-card{padding:0 17px}.holding-row{display:flex;align-items:center;gap:11px;min-height:68px;border-bottom:1px solid #edf0ed}.holding-row:last-child{border-bottom:0}.ticker-avatar,.leader-avatar{display:grid;flex:0 0 auto;width:36px;height:36px;place-items:center;border-radius:11px;background:#f0f3ef;color:#516c4b;font-size:13px;font-weight:800}.holding-name,.holding-price{display:flex;flex-direction:column;gap:4px}.holding-name{flex:1;min-width:0}.holding-name strong,.holding-price strong{font-size:12px}.holding-name span,.holding-price span{color:var(--muted);font-size:10px}.holding-price{align-items:flex-end}.warning-card{display:flex;gap:12px;margin-top:14px;padding:14px 16px;border:1px solid #efe2c2;border-radius:12px;background:#fffaf1}.warning-icon{display:grid;flex:0 0 auto;width:23px;height:23px;place-items:center;border-radius:50%;background:#f5e6c3;color:#845f19;font-weight:900}.warning-card strong{font-size:11px}.warning-card p{margin:4px 0 0;color:#786a4a;font-size:10px;line-height:1.5}.recent-trades{margin-top:23px}.section-head.compact{align-items:center;margin:0 0 8px}.section-head.compact h2{font-size:15px}.muted{color:var(--muted);font-size:10px}.trade-row{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:12px;min-height:42px;border-bottom:1px solid var(--line);font-size:11px}.trade-side{width:fit-content;padding:4px 7px;border-radius:5px;font-size:9px;font-weight:800;text-transform:uppercase}.trade-side.buy{background:#e7f3e9;color:#28714f}.trade-side.sell{background:#f8ece7;color:#995b43}.disclaimer{display:flex;align-items:flex-start;justify-content:center;gap:10px;margin-top:30px;padding:15px 10px 5px;border-top:1px solid #e2e7e2;color:#627165;font-size:10px;line-height:1.5;text-align:left}.disclaimer-mark{display:grid;width:18px;height:18px;flex:0 0 auto;place-items:center;border:1px solid #c9d3c8;border-radius:50%;color:#667869;font-size:10px;font-weight:800}.disclaimer>span:last-child{display:flex;flex-direction:column;gap:3px}.disclaimer strong{color:#4d5c4f;font-size:10px}.disclaimer small{color:#8a958c;font-size:9px}.bottom-nav{display:none}.toast{position:sticky;top:80px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;padding:11px 14px;border:1px solid #cddfc5;border-radius:9px;background:#f5f9ef;color:#496342;font-size:11px;box-shadow:0 6px 20px #143c320f}.toast button{border:0;background:transparent;color:inherit;font-size:18px}.notice-card{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px;padding:13px 15px;border:1px solid #e5e7d9;border-radius:10px;background:#f7f8ef}.notice-card:before{content:"i";display:grid;width:18px;height:18px;flex:0 0 auto;place-items:center;border-radius:50%;background:#e6ecd9;color:#617849;font-size:10px;font-weight:850}.notice-card strong{color:#4b6241;font-size:11px}.notice-card p{margin:3px 0 0;color:#78816d;font-size:10px;line-height:1.5}.trade-toolbar{display:flex;align-items:center;gap:12px;margin:18px 0 15px}.search-box{display:flex;flex:1;align-items:center;gap:9px;min-width:0;padding:0 12px;border:1px solid #e0e5e0;border-radius:9px;background:#fff;color:#879189;transition:box-shadow .15s,border-color .15s}.search-box:focus-within{border-color:#aabda1;box-shadow:0 0 0 3px #94b47e24}.search-box span{font-size:18px}.search-box input{width:100%;min-width:0;height:40px;border:0;outline:none;color:var(--ink);font-size:11px}.search-box input:focus-visible{outline:none}.filters{display:flex;align-items:center;gap:4px;padding:3px;border:1px solid #e5e9e4;border-radius:8px;background:#edf0eb}.filter-button{padding:7px 10px;border:0;border-radius:6px;background:transparent;color:#778178;font-size:9px;font-weight:750}.filter-button.selected{background:#fff;color:#465d42;box-shadow:0 1px 4px #00000014}.stock-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stock-card{min-width:0;padding:15px;border:1px solid #e5e9e4;border-radius:12px;background:#fff;box-shadow:0 5px 18px #16253509;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.stock-card:hover{transform:translateY(-2px);border-color:#cbd7c6;box-shadow:0 12px 26px #16253514}.stock-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.stock-identity{display:flex;align-items:center;gap:9px;min-width:0}.stock-identity>div{display:flex;flex-direction:column;gap:3px;min-width:0}.stock-monogram{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border:1px solid #e8ece5;border-radius:9px;background:#f5f7f2;color:#52694b;font-size:12px;font-weight:850}.ticker{font-size:12px;font-weight:850;letter-spacing:.25px}.company{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.kind-tag,.sector-tag{flex:0 0 auto;padding:4px 6px;border-radius:5px;background:#f0f3ee;color:#6a776c;font-size:8px;font-weight:750}.stock-explainer{min-height:32px;margin:12px 0;color:#63716e;font-size:10px;line-height:1.5}.stock-quote{display:flex;align-items:center;justify-content:space-between;gap:5px;padding-top:9px;border-top:1px solid #eef1ed}.stock-quote>span:first-child{display:flex;flex-direction:column;gap:3px}.stock-quote strong{font-size:16px;font-variant-numeric:tabular-nums}.quote-label{color:#929b93;font-size:8px}.sector-tag{background:#f7f8f5;color:#838d83;font-size:8px;font-weight:600}.stock-actions{display:flex;gap:7px;margin-top:11px}.stock-actions button{flex:1;padding-inline:6px}.learn-intro,.leaderboard-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 19px;padding:20px 22px;border:1px solid #e2e8df;border-radius:14px;background:linear-gradient(115deg,#f0f4e9,#fbfcf8)}.learn-intro h2,.leaderboard-intro h2{margin-bottom:6px}.learn-intro p:not(.eyebrow),.leaderboard-intro p:not(.eyebrow){max-width:550px;margin:0;color:#6f7b73;font-size:11px;line-height:1.6}.progress-ring{display:flex;width:72px;height:72px;flex:0 0 auto;align-items:center;flex-direction:column;justify-content:center;border:4px solid #cbdcba;border-radius:50%;color:#567345}.progress-ring strong{font-size:16px}.progress-ring small{font-size:10px;font-weight:500}.progress-ring span{font-size:8px}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.lesson-card{min-height:168px;padding:15px;border:1px solid #e5e9e4;border-radius:12px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 5px 18px #16253509;transition:border-color .15s,transform .15s,box-shadow .15s}.lesson-card:hover{border-color:#c7d5bd;transform:translateY(-2px);box-shadow:0 11px 24px #16253512}.lesson-card-top,.lesson-detail-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.lesson-number{color:#7f9278;font-size:9px;font-weight:850;letter-spacing:1px}.lesson-time{color:#88938a;font-size:9px}.done-tag{padding:4px 7px;border-radius:5px;background:#e8f3e7;color:#39704b;font-size:8px;font-weight:800}.lesson-card h3{margin-bottom:7px;font-size:14px}.lesson-card p{min-height:42px;margin-bottom:10px;color:var(--muted);font-size:9px;line-height:1.55}.lesson-link{color:#5a754b;font-size:9px;font-weight:850}.lesson-detail{padding:20px}.back-button{margin-bottom:17px;padding:0}.lesson-detail-head{margin:0}.lesson-detail h2{margin:10px 0 8px;font-size:23px}.lesson-copy{color:#52635d;font-size:13px;line-height:1.75}.key-idea{margin:18px 0 24px;padding:14px 16px;border-left:3px solid #91b578;border-radius:0 9px 9px 0;background:#f3f7ee}.key-idea strong{font-size:11px}.key-idea p{margin:4px 0 0;color:#68776b;font-size:10px;line-height:1.55}.lesson-detail>h3{margin:0 0 4px}.quiz-question{margin:15px 0;padding:13px 14px 10px;border:1px solid var(--line);border-radius:10px}.quiz-question legend{padding:0 5px;font-size:11px;font-weight:800}.quiz-option{display:flex;align-items:center;gap:8px;min-height:34px;padding:5px 4px;color:#53645a;font-size:10px;cursor:pointer}.quiz-option input{accent-color:#63834c}.quiz-option.correct-answer{color:#26714b;font-weight:700}.answer-explanation{margin:6px 0 4px;color:#64756a;font-size:9px;line-height:1.5}.result-card{margin-top:16px;padding:15px;border-radius:10px;background:#eff5e9}.result-card strong{color:#426642;font-size:12px}.result-card p{margin:5px 0 12px;color:#687b68;font-size:10px}.class-count{display:flex;width:68px;height:68px;flex:0 0 auto;align-items:center;flex-direction:column;justify-content:center;border:1px solid #e1e8dd;border-radius:14px;background:#fff;color:#5d794d;font-size:18px;font-weight:800;line-height:1.05}.class-count small{margin-top:4px;color:#829082;font-size:8px;font-weight:600}.leaderboard-card{overflow:hidden}.leaderboard-head{display:flex;justify-content:space-between;padding:13px 17px;background:#f7f9f6;color:#849087;font-size:8px;font-weight:850;letter-spacing:.8px}.leader-row{display:flex;align-items:center;gap:10px;min-height:53px;padding:7px 17px;border-top:1px solid #edf0ed}.leader-row.my-row{background:#f1f5ed}.rank-number{width:22px;color:#829087;font-size:9px;font-weight:800}.leader-avatar{width:29px;height:29px;border-radius:50%;font-size:10px}.leader-name{display:flex;flex:1;align-items:center;gap:7px;font-size:10px;font-weight:700}.leader-name small{padding:3px 5px;border-radius:4px;background:#e1edd8;color:#557343;font-size:7px}.leader-row>strong{font-size:11px;font-variant-numeric:tabular-nums}.positive-text{color:var(--green)}.negative-text{color:var(--red)}.privacy-toggle{display:flex;align-items:center;gap:11px;margin-top:14px;padding:14px 16px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.privacy-toggle input{width:17px;height:17px;accent-color:#68844f}.privacy-toggle span{display:flex;flex-direction:column;gap:3px}.privacy-toggle strong{font-size:10px}.privacy-toggle small{color:var(--muted);font-size:9px;line-height:1.45}.profile-card{display:flex;align-items:center;gap:14px;padding:19px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow)}.profile-avatar{display:grid;width:52px;height:52px;flex:0 0 auto;place-items:center;border-radius:14px;background:var(--navy);color:var(--lime);font-size:19px;font-weight:800}.profile-card h2{margin:0 0 3px}.profile-card p{margin-bottom:0}.profile-card>.demo-badge{margin-left:auto}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:14px 0;padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff}.profile-stats div{display:flex;flex-direction:column;gap:7px;padding:2px 12px;border-right:1px solid var(--line)}.profile-stats div:last-child{border:0}.profile-stats span{color:var(--muted);font-size:9px}.profile-stats strong{font-size:14px}.settings-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:11px;padding:16px}.settings-card h3{margin-bottom:4px;font-size:12px}.settings-card p{max-width:490px;margin-bottom:0;color:var(--muted);font-size:9px;line-height:1.5}.compact-toggle{min-width:180px;margin:0;padding:9px;box-shadow:none}.reset-card{border-color:#f0e2df}.admin-entry{border-color:#dce7d6}.admin-heading{margin:0 0 18px}.admin-heading h2{margin-bottom:6px;font-size:25px}.admin-heading p:last-child{margin:0;color:var(--muted);font-size:11px}.admin-card{margin:14px 0;padding:17px}.admin-card>p{margin-bottom:14px;line-height:1.5}.admin-add{display:flex;gap:8px;margin-bottom:11px}.admin-add input{flex:1;min-width:0;height:38px;padding:0 11px;border:1px solid #dce4dc;border-radius:8px;font-size:10px}.admin-client{display:flex;align-items:center;gap:9px;min-height:39px;border-top:1px solid #edf0ed;font-size:10px}.active-tag{padding:3px 6px;border-radius:5px;background:#eef3eb;color:#748171;font-size:8px}.link-danger{margin-left:auto;border:0;background:transparent;color:#a54a4d;font-size:9px;font-weight:700}.lesson-edit{padding:11px 0;border-top:1px solid #edf0ed}.lesson-edit summary{cursor:pointer;font-size:10px;font-weight:700}.lesson-edit textarea{display:block;width:100%;min-height:86px;margin:9px 0 4px;padding:9px;border:1px solid #dfe6df;border-radius:8px;font-size:10px;line-height:1.5}.lesson-edit small{color:var(--muted);font-size:8px}.modal-backdrop{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:16px;background:#0d1c2a91;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.trade-modal{position:relative;width:min(100%,440px);padding:25px;border:1px solid #e1e8e1;border-radius:15px;background:#fff;box-shadow:0 24px 70px #081f2a47}.trade-modal h2{margin-bottom:7px;font-size:23px}.trade-modal>.muted{line-height:1.5}.modal-close{position:absolute;top:13px;right:15px;width:30px;height:30px;border:0;border-radius:50%;background:#f1f4ef;color:#5d6f63;font-size:19px}.quantity-label{display:flex;flex-direction:column;gap:6px;margin:18px 0;color:#526256;font-size:10px;font-weight:750}.quantity-label input{height:42px;padding:0 11px;border:1px solid #dce5dc;border-radius:8px;font-size:14px}.trade-summary{display:grid;grid-template-columns:1fr auto;gap:9px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px}.trade-summary strong{font-size:11px}.trade-summary strong:last-child{font-size:14px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}@media(max-width:980px)and (min-width:761px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.sidebar{align-items:center;padding:25px 8px 16px}.sidebar-label,.sidebar-link>span:not(.nav-mark),.sidebar-footnote,.sidebar-local{display:none}.sidebar-links{width:100%}.sidebar-link{justify-content:center;padding:0}.nav-mark{width:34px;height:34px;font-size:18px}.content{width:min(calc(100% - 42px),860px)}.portfolio-overview{grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr)}}@media(max-width:760px){.app-shell{display:block;min-height:100vh;padding-bottom:calc(74px + env(safe-area-inset-bottom))}.topbar{height:62px;padding:0 16px}.sidebar{display:none}.brand{gap:9px;font-size:15px}.brand-mark{width:32px;height:32px;border-radius:10px}.account-context{display:none}.topbar-right{gap:9px}.demo-badge{padding:6px 8px;font-size:8px}.avatar{width:32px;height:32px}.content{width:min(calc(100% - 30px),620px);padding:24px 0 16px}.page-heading{margin-bottom:17px}.eyebrow{font-size:8px}.session-label{display:none}.portfolio-overview{grid-template-columns:1fr;gap:11px}.hero-card{padding:19px 17px 14px;border-radius:14px}.hero-stats{gap:8px;margin-top:17px}.hero-stats span{font-size:8px;line-height:1.3}.hero-stats strong,.hero-stats .change{font-size:11px}.return-pill{padding:7px 8px;font-size:10px}.return-pill span{display:block;padding:2px 0 0;text-align:right}.chart-wrap svg{height:52px}.hero-simulation-note{font-size:8px}.overview-sidecard{padding:15px}.sidecard-top{margin-bottom:11px}.overview-sidecard h2{max-width:none}.session-metrics{margin:13px 0 11px;padding-top:0}.section-head{margin-top:24px}.stock-grid,.lesson-grid{grid-template-columns:1fr;gap:9px}.stock-card{padding:14px}.stock-explainer{min-height:0;margin:8px 0}.stock-actions{max-width:360px}.trade-toolbar{align-items:stretch;flex-direction:column;gap:8px}.filters{width:fit-content}.lesson-card,.lesson-card p{min-height:0}.learn-intro,.leaderboard-intro{padding:15px}.progress-ring{width:62px;height:62px}.class-count{width:56px;height:56px}.profile-card{padding:15px}.profile-card>.demo-badge{align-self:flex-start;padding:5px 7px;font-size:7px}.profile-stats{padding:12px 6px}.profile-stats div{padding:2px 6px}.profile-stats span{font-size:8px}.profile-stats strong{font-size:11px}.settings-card{align-items:flex-start;flex-direction:column}.compact-toggle{width:100%}.admin-add{align-items:stretch;flex-direction:column}.admin-add input{flex:unset}.bottom-nav{position:fixed;z-index:22;right:0;bottom:0;left:0;display:flex;justify-content:space-around;gap:0;padding:8px 5px max(9px,env(safe-area-inset-bottom));border-top:1px solid #e4e9e4;background:#fffffff7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-item{display:flex;min-width:55px;align-items:center;flex-direction:column;gap:2px;padding:2px 5px;border:0;background:transparent;color:#8a948e;font-size:8px;font-weight:650}.nav-item.active{color:#47633f;font-weight:850}.nav-item .nav-mark{width:27px;height:24px;border-radius:7px;font-size:16px}.nav-item.active .nav-mark{background:#edf3e7}.disclaimer{margin-top:24px;padding-bottom:8px}}@media(max-width:420px){.content{width:calc(100% - 24px)}.topbar{padding:0 12px}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.hero-stats span{font-size:7px}.hero-stats strong,.hero-stats .change{font-size:10px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.profile-card{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.market-intro{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 18px}.market-intro h2{margin:0 0 5px;font-size:23px}.market-intro p:not(.eyebrow){margin:0;color:#74808a;font-size:11px;line-height:1.5}.market-feed-status{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #e3e9df;border-radius:8px;background:#fbfcf8;color:#75816f;font-size:9px;line-height:1.4}.market-feed-status .demo-dot{background:#c09550}.market-layout{display:grid;grid-template-columns:minmax(0,1fr) 294px;align-items:start;gap:14px}.market-primary{display:grid;gap:13px;min-width:0}.market-chart-card,.company-info-card,.watchlist-panel{min-width:0;border:1px solid #e1e7e2;border-radius:15px;background:#fff;box-shadow:var(--shadow)}.market-chart-card{padding:20px}.instrument-heading{display:flex;align-items:center;gap:12px;min-width:0}.instrument-name{min-width:0;flex:1}.instrument-name .eyebrow{margin:0 0 4px;color:#89948d;font-size:8px}.instrument-name h2{overflow:hidden;margin:0 0 3px;font-size:20px;text-overflow:ellipsis;white-space:nowrap}.instrument-symbol{color:#7b8791;font-size:10px;font-weight:600}.instrument-symbol span{padding:0 3px;color:#b0bab3}.stock-mark{display:inline-grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border:1px solid color-mix(in srgb,var(--mark-color),white 78%);border-radius:11px;background:color-mix(in srgb,var(--mark-color),white 92%);color:var(--mark-color);font-size:13px;font-weight:850;letter-spacing:-.4px}.stock-mark.large{width:48px;height:48px;border-radius:14px;font-size:18px}.market-reference-tag{flex:0 0 auto;padding:6px 8px;border:1px solid #e8ece8;border-radius:6px;background:#fafbf9;color:#839087;font-size:7px;font-weight:850;letter-spacing:.8px}.daily-chart{margin-top:18px;padding:18px 18px 12px;overflow:hidden;border:1px solid #23374b;border-radius:13px;background:radial-gradient(ellipse at 86% 0%,rgba(46,114,91,.19),transparent 40%),linear-gradient(150deg,#14283e,#102136 74%);color:#f4f7f8}.chart-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:60px}.chart-topline .eyebrow{margin:0 0 4px;color:#a1b1bd;font-size:8px}.chart-large-price{color:#f6f9f9;font-size:28px;line-height:1.1;font-weight:750;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.chart-large-price.positive-text,.chart-large-price.negative-text{color:#f6f9f9}.chart-current-caption{margin-top:5px;color:#87d5ae;font-size:10px;font-weight:750;font-variant-numeric:tabular-nums}.caption-separator{padding:0 3px;color:#82949f}.caption-window{color:#a3b0b8;font-weight:500}.quote-source{display:inline-flex;align-items:center;gap:6px;max-width:240px;padding:7px 9px;border:1px solid rgba(255,255,255,.14);border-radius:7px;color:#b9c7ce;background:#ffffff0b;font-size:8px;line-height:1.4;text-align:right}.quote-source.connected{border-color:#70d4a340;color:#b5e6ce}.source-dot{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#d2a45d}.quote-source.connected .source-dot{background:#65c897}.chart-visual{position:relative;margin-top:7px;touch-action:pan-y}.chart-visual svg{display:block;width:100%;height:240px;overflow:visible}.market-grid-line{stroke:#dbe8eb1b;stroke-width:1;stroke-dasharray:3 5}.market-axis-label{fill:#8296a4;font-size:10px;font-family:inherit}.market-line{fill:none;stroke:#68d8a4;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.market-line.down{stroke:#f08088}.market-crosshair{stroke:#deedec80;stroke-width:1;stroke-dasharray:3 4}.market-point{fill:#12253a;stroke:#78e0b0;stroke-width:2.5;vector-effect:non-scaling-stroke}.market-point.down{stroke:#ff9299}.chart-axis{display:flex;justify-content:space-between;margin:-2px 1px 0 68px;color:#8497a5;font-size:8px}.chart-footer{display:flex;justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(231,239,240,.09);color:#8fa2af;font-size:8px;line-height:1.4}.period-bar{display:flex;align-items:center;gap:5px;margin-top:12px}.period-button{min-width:38px;min-height:28px;padding:0 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:#aebcc4;font-size:9px;font-weight:750}.period-button:hover{background:#ffffff12;color:#fff}.period-button.selected{background:#d1f08a;color:#1e3b32}.interval-note{margin-left:auto;color:#8fa1ac;font-size:8px}.instrument-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:13px;padding:13px 1px 0;border-top:1px solid #edf0ed}.instrument-actions>div:first-child{display:flex;flex-direction:column;gap:3px}.instrument-actions>div:first-child span{color:#7d8a86;font-size:9px}.instrument-actions>div:first-child strong{color:#26374a;font-size:15px;font-variant-numeric:tabular-nums}.instrument-action-buttons{display:flex;gap:7px}.instrument-action-buttons .primary-button,.instrument-action-buttons .secondary-button{min-height:35px}.company-info-card{padding:17px 19px 16px}.company-info-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.company-info-head .eyebrow{margin-bottom:4px}.company-info-head h3{margin:0;font-size:14px}.company-info-card .sector-tag{padding:6px 8px;font-size:8px}.company-summary{margin:13px 0 11px;color:#52616d;font-size:12px;line-height:1.55}.learning-context{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border:1px solid #e8ede4;border-radius:9px;background:#f7f9f4}.context-icon{display:grid;width:17px;height:17px;flex:0 0 auto;place-items:center;border:1px solid #cfddc6;border-radius:50%;color:#5e7a4d;font-size:9px;font-weight:850}.learning-context p{margin:0;color:#66766c;font-size:9px;line-height:1.55}.learning-context strong{margin-right:4px;color:#3b5541}.company-facts{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:10px;margin-top:13px}.company-facts>div{display:flex;flex-direction:column;gap:4px;min-width:0}.company-facts span{color:#919b95;font-size:8px}.company-facts strong{color:#4d5d57;font-size:9px;line-height:1.4}.watchlist-panel{overflow:hidden;padding:15px 0 0}.watchlist-head{display:flex;align-items:center;justify-content:space-between;padding:0 14px 10px}.watchlist-head .eyebrow{margin:0 0 3px;font-size:8px}.watchlist-head h3{margin:0;font-size:13px}.watchlist-count{display:grid;width:25px;height:25px;place-items:center;border:1px solid #e8ece7;border-radius:8px;background:#f7f9f5;color:#7c897e;font-size:9px;font-weight:800}.watchlist-search{margin:0 12px 9px;padding:0 9px}.watchlist-search input{height:35px;font-size:10px}.watchlist-search span{font-size:16px}.watchlist-filters{width:fit-content;margin:0 12px 9px}.watchlist-items{max-height:600px;overflow-y:auto;border-top:1px solid #edf0ed;scrollbar-width:thin;scrollbar-color:#d7ded7 transparent}.watchlist-row{display:flex;width:100%;align-items:center;gap:9px;padding:9px 12px;border:0;border-bottom:1px solid #f0f2ef;background:#fff;color:var(--ink);text-align:left;transition:background .12s ease}.watchlist-row:hover{background:#f8faf7}.watchlist-row.active{background:#eef4e9;box-shadow:inset 3px 0 #658753}.watchlist-row .stock-mark{width:31px;height:31px;border-radius:9px;font-size:11px}.watchlist-label{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.watchlist-label strong{font-size:10px;font-weight:850;letter-spacing:.2px}.watchlist-label small{overflow:hidden;color:#83908b;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.watchlist-price{display:flex;flex-direction:column;gap:3px;align-items:flex-end;color:#334559;font-size:9px;font-weight:750;font-variant-numeric:tabular-nums}.watchlist-price small{color:#a0aaa3;font-size:7px;font-weight:500}.watchlist-empty{padding:24px 15px;color:#7d8982;font-size:10px;text-align:center}.watchlist-footer{padding:11px 13px 12px;background:#fafbf8;color:#89948b;font-size:8px;line-height:1.5}.trade-reference-note{margin-top:-2px;color:#79877f;font-size:9px}.onboarding-shell{position:relative;display:grid;min-height:100vh;overflow:hidden;place-items:center;padding:32px 18px;background:radial-gradient(ellipse at 18% 6%,rgba(199,240,134,.13),transparent 32%),radial-gradient(ellipse at 92% 85%,rgba(66,145,120,.2),transparent 38%),linear-gradient(145deg,#0d1e31,#152f42 58%,#17483f)}.onboarding-glow{position:absolute;width:390px;height:390px;border-radius:50%;filter:blur(90px);pointer-events:none}.onboarding-glow-one{top:-210px;right:5%;background:#c9f27a1c}.onboarding-glow-two{bottom:-220px;left:3%;background:#58c8971f}.onboarding-card{position:relative;z-index:1;width:min(100%,540px);overflow:hidden;border:1px solid rgba(255,255,255,.55);border-radius:21px;background:#fff;box-shadow:0 30px 90px #00000045}.onboarding-brand{display:flex;align-items:center;gap:10px;padding:18px 25px;border-bottom:1px solid #edf0ec;color:#1b2b3e;font-size:14px}.onboarding-brand .brand-mark{width:32px;height:32px;border-radius:10px}.onboarding-brand .demo-badge{margin-left:auto;font-size:7px}.onboarding-content{padding:29px 32px 30px}.onboarding-content>.eyebrow{margin-bottom:8px;color:#6f826c}.onboarding-content h1{max-width:425px;margin:0 0 9px;color:#14273b;font-size:clamp(27px,6vw,36px);letter-spacing:-1px;line-height:1.12}.onboarding-copy{margin:0 0 20px;color:#6d7a82;font-size:12px;line-height:1.6}.onboarding-field{display:flex;flex:1;flex-direction:column;gap:6px;min-width:0;margin:0 0 12px;color:#42534c;font-size:9px;font-weight:800}.onboarding-field input{width:100%;height:43px;padding:0 11px;border:1px solid #dbe4dd;border-radius:8px;background:#fcfdfb;color:#1b2b3e;font-size:12px;outline:none}.onboarding-field input:focus{border-color:#78986b;box-shadow:0 0 0 3px #78986b21}.onboarding-field input[type=password]{letter-spacing:3px}.onboarding-two-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.local-data-notice{display:flex;gap:9px;margin:3px 0 15px;padding:10px 11px;border:1px solid #ece5d2;border-radius:9px;background:#fcfaf4;color:#877447}.local-data-notice>span{padding-top:1px;font-size:12px}.local-data-notice p{margin:0;color:#786d53;font-size:9px;line-height:1.5}.local-data-notice strong{color:#5c5038}.onboarding-primary{display:flex;width:100%;min-height:45px;align-items:center;justify-content:space-between;padding:0 14px;font-size:11px}.onboarding-primary span{font-size:17px;font-weight:500}.onboarding-primary:disabled{cursor:wait;opacity:.75}.form-error{margin:0 0 11px;color:#ae3e4b;font-size:10px}.onboarding-small{margin:13px 0 0;color:#929b98;font-size:8px;line-height:1.5;text-align:center}.onboarding-small strong{color:#58684c}.tutorial-content{min-height:365px}.tutorial-stepper{display:flex;justify-content:space-between;color:#829085;font-size:8px;font-weight:850;letter-spacing:1px}.tutorial-stepper i{padding:0 2px;color:#b8c0b8;font-style:normal}.tutorial-icon{display:grid;width:52px;height:52px;place-items:center;margin:23px 0 17px;border:1px solid #dfe8d9;border-radius:15px;background:linear-gradient(145deg,#f2f7eb,#fff);color:#53744d;font-size:25px;box-shadow:0 8px 18px #3f5d3b14}.tutorial-content h1{font-size:29px}.tutorial-content .onboarding-copy{min-height:59px;font-size:12px}.tutorial-progress{display:flex;gap:6px;margin:21px 0 19px}.tutorial-progress span{width:19px;height:4px;border-radius:99px;background:#e4e9e3}.tutorial-progress span.active{background:#70915e}.tutorial-actions{display:flex;align-items:center;gap:10px}.skip-button{min-height:42px;padding:0 11px;border:0;background:transparent;color:#78857d;font-size:10px;font-weight:750}.tutorial-actions .onboarding-primary{flex:1}.onboarding-bottom{position:absolute;bottom:15px;margin:0;color:#e9f2ee8c;font-size:9px;letter-spacing:.25px;text-align:center}@media(max-width:1100px)and (min-width:761px){.market-layout{grid-template-columns:minmax(0,1fr) 260px;gap:10px}.market-chart-card{padding:16px}.quote-source{max-width:180px}.chart-visual svg{height:220px}}@media(max-width:760px){.market-intro{align-items:flex-start;flex-direction:column;gap:10px}.market-intro h2{font-size:21px}.market-feed-status{width:100%}.market-layout{grid-template-columns:minmax(0,1fr);gap:10px}.market-primary{order:1}.watchlist-panel{order:0}.watchlist-items{display:flex;max-height:none;overflow-x:auto;overflow-y:hidden;border-top:0;scrollbar-width:thin}.watchlist-row{width:155px;min-width:155px;min-height:66px;border-right:1px solid #f0f2ef;border-bottom:0}.watchlist-row.active{box-shadow:inset 0 -3px #658753}.watchlist-footer{padding:8px 12px}.market-chart-card{padding:13px}.instrument-heading{gap:9px}.stock-mark.large{width:42px;height:42px;border-radius:12px;font-size:16px}.instrument-name h2{font-size:16px}.instrument-name .eyebrow{font-size:7px}.instrument-symbol{font-size:9px}.market-reference-tag{padding:5px 6px;font-size:6px}.daily-chart{margin-top:13px;padding:14px 12px 11px}.chart-topline{gap:7px}.chart-large-price{font-size:24px}.chart-current-caption{font-size:8px}.quote-source{max-width:145px;padding:5px 6px;font-size:7px}.chart-visual svg{height:190px}.chart-axis{margin-left:51px}.market-axis-label{font-size:9px}.period-button{min-width:34px;padding:0 7px}.interval-note,.chart-footer{font-size:7px}.instrument-actions{align-items:flex-start;flex-direction:column}.instrument-action-buttons{width:100%}.instrument-action-buttons button{flex:1}.company-info-card{padding:14px}.company-facts{grid-template-columns:1fr 1fr}.company-facts>div:last-child{grid-column:1 / -1}.onboarding-shell{align-items:start;padding:22px 13px 44px}.onboarding-card{align-self:center;border-radius:17px}.onboarding-brand{padding:14px 16px}.onboarding-brand .demo-badge{padding:5px 6px;font-size:6px}.onboarding-content{padding:24px 19px 22px}.onboarding-content h1{font-size:29px}.tutorial-content{min-height:355px}.tutorial-content h1{font-size:27px}.onboarding-bottom{bottom:10px;padding:0 10px;font-size:8px}}@media(max-width:390px){.instrument-name h2{max-width:165px;font-size:14px}.market-reference-tag{max-width:86px;white-space:normal;line-height:1.25;text-align:center}.quote-source{max-width:116px}.chart-large-price{font-size:22px}.chart-current-caption{font-size:7px}.chart-visual svg{height:170px}.interval-note{max-width:90px;text-align:right}.onboarding-two-fields{gap:7px}.onboarding-field{font-size:8px}}.market-map-card{min-width:0;padding:17px;border:1px solid #e1e7e2;border-radius:15px;background:#fff;box-shadow:var(--shadow)}.market-map-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.market-map-head .eyebrow{margin:0 0 4px;color:#839087;font-size:8px}.market-map-head h3{margin:0;color:#21354a;font-size:14px}.market-map-caption{margin:9px 0 12px;color:#75827c;font-size:9px;line-height:1.5}.market-map-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.heat-cell{display:grid;min-width:0;min-height:61px;grid-template-columns:27px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;column-gap:7px;row-gap:3px;padding:8px;border:1px solid rgba(49,77,62,.1);border-radius:9px;background:var(--heat-background);color:#26394a;text-align:left;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.heat-cell:hover{z-index:1;transform:translateY(-1px);border-color:#37604659;box-shadow:0 5px 12px #182c2414}.heat-cell.selected{outline:2px solid #587d4f;outline-offset:1px}.heat-cell .stock-mark{width:26px;height:26px;grid-row:1 / 3;border-radius:7px;font-size:10px}.heat-cell .stock-mark img{width:65%;height:65%;object-fit:contain}.heat-cell-name{display:flex;min-width:0;flex-direction:column;gap:3px}.heat-cell-name strong{overflow:hidden;color:#283a4b;font-size:9px;font-weight:850;letter-spacing:.15px;text-overflow:ellipsis;white-space:nowrap}.heat-cell-name small{overflow:hidden;color:#68777e;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.heat-change{grid-column:3;grid-row:1;color:#356b4c;font-size:8px;font-variant-numeric:tabular-nums}.heat-cell .heat-change.negative-text{color:#a5444d}.heat-sector{overflow:hidden;grid-column:2 / 4;grid-row:2;color:#788680;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.heat-map-legend{display:flex;justify-content:space-between;gap:8px;margin-top:10px;padding-top:9px;border-top:1px solid #edf0ed;color:#89948e;font-size:8px}.heat-map-legend>span:last-child{display:inline-flex;align-items:center;gap:5px}.heat-map-legend i{width:8px;height:8px;border-radius:3px}.heat-legend-down{background:#c8787b}.heat-legend-up{background:#75ae84}.stock-mark img{width:66%;height:66%;object-fit:contain}@media(max-width:1100px)and (min-width:761px){.market-map-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.market-map-card{padding:13px}.market-map-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.heat-cell{min-height:58px;padding:7px;column-gap:6px}.heat-cell-name strong{font-size:8px}.heat-cell-name small,.heat-change,.heat-map-legend{font-size:7px}}body{background:radial-gradient(ellipse at 60% -18%,rgba(31,72,106,.22),transparent 54%),var(--canvas);color:var(--ink)}.topbar{border-color:#1d2d42;background:#081322f0}.brand{color:var(--ink)}.brand-mark{background:linear-gradient(145deg,#1a3754,#102239);box-shadow:inset 0 0 0 1px #a6cbec14}.account-context{color:#9aacc0}.account-live-dot{background:#6cdda5;box-shadow:0 0 0 3px #6cdda51f}.demo-badge{border-color:#365443;background:#142d29;color:#c6e3a8}.demo-dot{background:#a6df72}.avatar{border-color:#2c4058;background:#172940;color:#d9efae}.sidebar{border-color:#1d2d42;background:#0b1728}.sidebar-label,.eyebrow{color:#8da0b5}.sidebar-link{color:#9aabc0}.sidebar-link:hover{background:#14243a;color:#f2f6fc}.sidebar-link.active{background:#1a3046;color:#d7f3a1}.sidebar-link.active .nav-mark{background:#cff28b1f}.sidebar-chevron{color:#b2cb8e}.sidebar-link.learn-link{margin-top:6px;border:1px solid rgba(206,242,139,.22);background:linear-gradient(115deg,#cef28b1a,#52b79112);color:#d6f09d}.sidebar-link.learn-link .nav-mark{background:#cef28b21}.sidebar-link.learn-link.active{border-color:#cef28b61;background:#203a42;color:#e4f7b4}.sidebar-footnote{border-color:#2b3d50;background:linear-gradient(150deg,#14253a,#101d2e 78%)}.sidebar-footnote-icon{background:#26394a;color:#c8e896}.sidebar-footnote strong{color:#e0e9f3}.sidebar-footnote p{color:#9cacbb}.sidebar-footnote-tag{background:#1b3044;color:#cce5a0}.sidebar-local{border-color:#22334a}.local-lock{background:#182a3e;color:#a7b6c7}.sidebar-local strong{color:#c6d2de}.sidebar-local small{color:#8092a6}.content,h1,h2,h3{color:var(--ink)}.session-label{color:#9babc0}.hero-card{border-color:#96c0e21a;background:radial-gradient(ellipse at 92% 4%,rgba(93,173,181,.13),transparent 39%),linear-gradient(132deg,#132a43,#142943 58%,#173947);box-shadow:0 20px 42px #00000038}.overview-sidecard,.empty-card,.holdings-card,.leaderboard-card,.settings-card,.admin-card,.lesson-detail,.market-chart-card,.company-info-card,.watchlist-panel,.market-map-card,.profile-card,.profile-stats,.privacy-toggle,.trade-modal{border-color:#263a52;background:linear-gradient(145deg,#122137,#0f1b2d);color:var(--ink);box-shadow:var(--shadow)}.overview-sidecard{background:radial-gradient(ellipse at 100% 0%,rgba(93,173,181,.08),transparent 48%),linear-gradient(145deg,#122137,#0f1b2d)}.sidecard-icon{border-color:#344b5e;background:#1a3042;color:#d0ee96}.local-pill{border-color:#314256;color:#a7b5c4}.sidecard-copy,.muted{color:#96a6b8}.session-metrics>div{border-color:#3b534b}.session-metrics span{color:#97a8b8}.session-metrics strong{color:#ecf2f8}.session-metrics small{color:#899caf}.sidecard-link{border-color:#c7ec83;background:#d0f28e;color:#122438;box-shadow:0 7px 18px #b2dd6f21}.sidecard-link:hover{border-color:#e0f5b4;background:#dcf6a7}.sidecard-secondary-link{align-self:flex-start;margin-top:9px;padding:2px 0;border:0;background:transparent;color:#a8c4d2;font-size:10px;font-weight:750}.sidecard-secondary-link:hover,.text-button:hover,.back-button:hover{color:#d8f39d}.text-button,.back-button{color:#b8d38a}.empty-card,.holdings-card,.leaderboard-card,.settings-card,.admin-card,.lesson-detail{background:#101d30}.empty-icon{background:#203649;color:#d2ee97}.primary-button{background:#288b6a;color:#f2fff8}.primary-button:hover{background:#31a27a}.secondary-button{border-color:#35495f;background:#17283d;color:#d2dde9}.secondary-button:hover{background:#20354b}.danger-button{border-color:#614047;background:#2a202c;color:#ffabb1}.holding-row{border-color:#24364a}.ticker-avatar,.leader-avatar{background:#1b3045;color:#d3e7aa}.holding-name span,.holding-price span{color:#92a3b5}.warning-card{border-color:#544838;background:#2b281f}.warning-icon{background:#4b4029;color:#f1cd80}.warning-card p{color:#c4b58e}.trade-row{border-color:#26384c}.trade-side.buy{background:#15372f;color:#7be0b3}.trade-side.sell{background:#3a272d;color:#ffafb3}.disclaimer{border-color:#26374b;color:#a0afbf}.disclaimer-mark{border-color:#405267;color:#b5c2d0}.disclaimer strong{color:#d2dce7}.disclaimer small{color:#8395a8}.toast{border-color:#31584c;background:#122b2a;color:#b9e6c7}.notice-card{border-color:#4b4939;background:#26271f}.notice-card:before{background:#45402d;color:#e8cf8b}.notice-card strong{color:#eadcae}.notice-card p{color:#b8b193}.search-box{border-color:#30435a;background:#0d1a2b;color:#9aabc0}.search-box:focus-within{border-color:#5b927c;box-shadow:0 0 0 3px #62dca521}.search-box input,.admin-add input,.lesson-edit textarea,.quantity-label input{border-color:#30435a;background:#0b1728;color:#e7edf7}.search-box input::placeholder,.admin-add input::placeholder{color:#71849a}.filters{border-color:#2b3d52;background:#0c192a}.filter-button{color:#9aabc0}.filter-button.selected{background:#24384a;color:#dcf1ad;box-shadow:0 1px 5px #00000047}.stock-card,.lesson-card{border-color:#293b51;background:#111f33;color:var(--ink);box-shadow:0 8px 20px #00000024}.stock-card:hover,.lesson-card:hover{border-color:#44645b;box-shadow:0 13px 27px #0000003d}.stock-monogram{border-color:#33465a;background:#1b2d40;color:#c9e39d}.company,.stock-explainer,.learn-intro p:not(.eyebrow),.leaderboard-intro p:not(.eyebrow),.lesson-card p,.lesson-copy{color:#9eafc1}.kind-tag,.sector-tag{background:#1d3043;color:#c0cfdd}.stock-quote{border-color:#293b50}.quote-label,.lesson-time,.company-facts span{color:#8294a8}.learn-intro,.leaderboard-intro{border-color:#2a3e54;background:radial-gradient(ellipse at 0% 0%,rgba(68,144,122,.12),transparent 52%),linear-gradient(120deg,#16283c,#112036)}.progress-ring{border-color:#638c6d;color:#d3ef9b}.lesson-number{color:#a8c987}.done-tag{background:#17392f;color:#83e0af}.lesson-link{color:#c8e98e}.key-idea{border-color:#9bca73;background:#182d31}.key-idea p,.quiz-option,.answer-explanation{color:#a7b7c7}.quiz-question{border-color:#2d4057}.quiz-option.correct-answer{color:#7be0b3}.quiz-option input{accent-color:#8fd56c}.result-card{background:#18302e}.result-card strong{color:#8ce0b6}.result-card p{color:#a7c7bb}.class-count{border-color:#30445a;background:#17283c;color:#d0e99b}.class-count small{color:#a0afbd}.leaderboard-head{background:#17263a;color:#9bacc0}.leader-row{border-color:#26384d}.leader-row.my-row{background:#182c35}.rank-number{color:#8fa1b5}.leader-name small{background:#263a37;color:#cbe89d}.privacy-toggle{background:#111f32}.privacy-toggle input{accent-color:#b4e774}.profile-stats div{border-color:#293b50}.admin-client,.lesson-edit{border-color:#283a4f}.active-tag{background:#1c3042;color:#a8b8c8}.link-danger{color:#ff9fa8}.modal-backdrop{background:#01070fc2}.trade-modal{background:#101d30}.modal-close{background:#1a2a3f;color:#c0ccda}.quantity-label{color:#b7c5d3}.trade-summary{border-color:#2a3d52}.market-intro p:not(.eyebrow),.instrument-symbol{color:#9bacc0}.market-feed-status{border-color:#32445a;background:#122137;color:#a6b5c5}.market-chart-card,.company-info-card,.watchlist-panel,.market-map-card{background:linear-gradient(150deg,#122137,#0f1b2d)}.instrument-name .eyebrow,.market-map-head .eyebrow{color:#8da1b5}.stock-mark{border-color:color-mix(in srgb,var(--mark-color),#fff 60%);background:color-mix(in srgb,var(--mark-color),#0b1728 82%)}.market-reference-tag{border-color:#2d4057;background:#17283d;color:#a5b4c3}.daily-chart{border-color:#293d55}.instrument-actions{border-color:#293b50}.instrument-actions>div:first-child span{color:#9aabbd}.instrument-actions>div:first-child strong{color:#e4edf6}.company-summary{color:#bdc9d6}.learning-context{border-color:#2b4054;background:#17283a}.context-icon{border-color:#456256;color:#bde38d}.learning-context p{color:#a6b8c4}.learning-context strong{color:#d2e6b7}.company-facts strong{color:#c6d3df}.watchlist-count{border-color:#304258;background:#1a2b40;color:#b9c8d5}.watchlist-items{border-color:#293b50;scrollbar-color:#455a70 transparent}.watchlist-row{border-color:#25384d;background:#101d30;color:var(--ink)}.watchlist-row:hover{background:#17283e}.watchlist-row.active{background:#1b353e;box-shadow:inset 3px 0 #8fcf87}.watchlist-label small{color:#93a5b8}.watchlist-price{color:#e0e9f2}.watchlist-price small,.watchlist-empty{color:#8b9db1}.watchlist-footer{background:#0d192a;color:#91a2b4}.market-map-head h3{color:#e3ebf4}.market-map-caption{color:#a0b0c0}.heat-cell{border-color:#b4ccdd1c;color:#dce7f1}.heat-cell.selected{outline-color:#d0f28e}.heat-cell-name strong{color:#e1ebf4}.heat-cell-name small,.heat-sector{color:#9fb1c1}.heat-change{color:#8be0ad}.heat-cell .heat-change.negative-text{color:#ff9ca3}.heat-map-legend{border-color:#2a3c51;color:#91a2b3}.onboarding-card{border-color:#2c4057;background:#101d30;box-shadow:0 30px 90px #0000006b}.onboarding-brand{border-color:#293b50;color:#e7edf7}.onboarding-content>.eyebrow{color:#a9c98d}.onboarding-content h1{color:#edf3fa}.onboarding-copy{color:#a3b3c3}.onboarding-field{color:#c1ceda}.onboarding-field input{border-color:#30445b;background:#0b1728;color:#e7edf7}.onboarding-field input::placeholder{color:#74879c}.onboarding-field input:focus{border-color:#83b878;box-shadow:0 0 0 3px #83b87829}.local-data-notice{border-color:#574b36;background:#2a281f;color:#e0c878}.local-data-notice p{color:#c4b98e}.local-data-notice strong{color:#f0dfa9}.onboarding-small{color:#8fa1b4}.onboarding-small strong{color:#d4e7b3}.tutorial-stepper{color:#9aabbd}.tutorial-stepper i{color:#70849a}.tutorial-icon{border-color:#31475a;background:linear-gradient(145deg,#1c3043,#142238);color:#d3ee99}.tutorial-progress span{background:#304157}.tutorial-progress span.active{background:#bde77d}.skip-button{color:#a7b5c4}.form-error{color:#ff9da7}.onboarding-bottom{color:#dceaf494}.stock-mark img{background:transparent}@media(max-width:760px){.app-shell{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.bottom-nav{right:10px;bottom:max(9px,env(safe-area-inset-bottom));left:10px;align-items:flex-end;justify-content:space-around;gap:2px;padding:8px 7px 7px;border:1px solid #2d4058;border-radius:19px;background:#0d1b2df7;box-shadow:0 12px 38px #0000007a,inset 0 1px #ffffff0b;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.nav-item{flex:1;min-width:0;min-height:45px;justify-content:center;gap:2px;padding:3px 2px;border-radius:12px;color:#91a2b7;font-size:8px;transition:color .16s ease,transform .16s ease,background .16s ease}.nav-item.active:not(.learn-nav){background:#172b40;color:#dcefae;transform:translateY(-2px)}.nav-item .nav-mark{width:27px;height:24px;border-radius:7px;font-size:16px}.nav-item.active:not(.learn-nav) .nav-mark{background:#cef28b1a}.nav-item.learn-nav{position:relative;flex:1.15;min-height:62px;margin-top:-25px;color:#d7ef9e;font-weight:850}.nav-item.learn-nav .nav-mark{width:52px;height:52px;margin-bottom:1px;border:4px solid #0d1b2d;border-radius:18px;background:linear-gradient(145deg,#e0f7a8,#b8e77b);color:#10243a;font-size:22px;box-shadow:0 8px 22px #b4e06f33;transition:transform .16s ease,box-shadow .16s ease}.nav-item.learn-nav:hover .nav-mark,.nav-item.learn-nav.active .nav-mark{transform:translateY(-3px) scale(1.04);box-shadow:0 10px 27px #b4e06f4d}.nav-item.learn-nav.active{color:#e9f8c7}.watchlist-row{border-right-color:#25384d}.watchlist-row.active{box-shadow:inset 0 -3px #9bd786}}@media(max-width:420px){.bottom-nav{right:7px;left:7px;padding-right:4px;padding-left:4px}.nav-item{font-size:7px}.nav-item.learn-nav .nav-mark{width:49px;height:49px}.sidecard-secondary-link{font-size:9px}}
