@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";:root{font-family:DM Sans,sans-serif;color:var(--theme-text, #19243c);background:var(--theme-surface, #f6f8fc);font-synthesis:none;font-weight:400;--blue: #2563eb;--blue-deep: #164cc8;--muted: #78849a;--border: #e7ecf3;--radius: 18px;--shadow: 0 5px 18px #17366a04}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--theme-accent-text, var(--blue));text-decoration:none}button{color:inherit}h1,h2,h3,h4{font-family:Manrope,sans-serif;letter-spacing:-.035em;margin:0;line-height:1.3}h1{font-size:31px;font-weight:800}h2{font-size:23px;font-weight:800}h3{font-size:18px;font-weight:750}p{line-height:1.7;color:var(--theme-muted, #748097);margin:10px 0}svg{flex-shrink:0;vertical-align:middle}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--theme-accent-text, #80adff);outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid var(--theme-accent-text, #82afff);outline-offset:1px}input,textarea,select{border:1px solid var(--theme-border, #dce3ee);border-radius:10px;padding:11px 13px;background:var(--theme-surface, #fff);color:var(--theme-text, #24324d);max-width:100%}textarea{resize:vertical;line-height:1.6;width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--blue);width:17px;height:17px;padding:0;flex-shrink:0}label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;color:var(--theme-muted, #4d5c75)}fieldset{border:0;padding:0;margin:20px 0}legend{font-size:13px;font-weight:650;color:var(--theme-muted, #4d5c75);margin-bottom:12px}pre{white-space:pre-wrap;overflow-wrap:anywhere}small,.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.5px;color:var(--theme-muted, #8793a9);display:block;margin-bottom:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 19px;border:1px solid transparent;border-radius:10px;background:var(--blue);color:var(--theme-on-accent, white);font-size:13px;font-weight:650;line-height:1.4;transition:background .15s,transform .15s;white-space:normal}.button:hover:not(:disabled){background:var(--blue-deep);transform:translateY(-1px)}.button-secondary{background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));border-color:var(--theme-accent-border, #dce8fd)}.button-secondary:hover:not(:disabled){background:var(--theme-accent-soft, #e0edff)}.button-ghost{background:transparent;color:var(--theme-muted, #62728e)}.button-ghost:hover:not(:disabled){background:var(--theme-accent-soft, #eef3fa)}.button-white{background:var(--theme-surface, #fff);color:var(--theme-accent-text, #2252bc)}.button-white:hover{background:var(--theme-accent-soft, #eff5ff)!important}.button-danger{background:var(--theme-danger-text, #c53838)}.full-width{width:100%}.button-row{display:flex;flex-wrap:wrap;gap:10px}.icon-button{background:none;border:0;padding:7px;color:var(--theme-muted, #8390a5);border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover{background:var(--theme-accent-soft, #f0f4fb);color:var(--theme-accent-text, var(--blue))}.tag{display:inline-flex;align-items:center;align-self:flex-start;padding:5px 9px;background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #3667be);border-radius:6px;font-size:10px;font-weight:750;letter-spacing:.25px;line-height:1.4}.tag.purple,.purple{background:var(--theme-purple-soft, #f2eefe);color:var(--theme-purple-text, #8566d6)}.tag.green,.green{background:var(--theme-success-soft, #e9f8f1);color:var(--theme-success-text, #289a77)}.tag.amber,.amber{background:var(--theme-warning-soft, #fff5e7);color:var(--theme-warning-text, #d69832)}.blue{background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #3c76dc)}.panel{background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}.panel>h2{margin-bottom:15px}.error-box,.info-banner,.success-box{border:1px solid var(--theme-danger-border, #f3d6d7);background:var(--theme-danger-soft, #fff2f2);color:var(--theme-danger-text, #a83d49);border-radius:12px;padding:15px 18px;display:flex;align-items:center;gap:12px;margin:15px 0;font-size:13px;line-height:1.6}.error-box span{flex:1}.error-box button{background:transparent;border:0;color:inherit;text-decoration:underline;white-space:nowrap}.info-banner{background:var(--theme-accent-soft, #edf4ff);border-color:var(--theme-accent-border, #dbe7fc);color:var(--theme-accent-text, #3665b2)}.info-banner p{color:inherit;margin:0;flex:1}.info-banner a{display:flex;align-items:center;gap:8px;font-weight:600}.success-box{background:var(--theme-success-soft, #eaf8f0);color:var(--theme-success-text, #1f7c57);border-color:var(--theme-success-border, #c8e8d7)}.loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:150px;font-size:14px;color:var(--theme-muted, #7a88a0)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;padding:65px 25px;color:var(--theme-subtle, #8b9bb5);background:var(--theme-surface, white);border:1px dashed var(--theme-border, #d7e1ee);border-radius:18px}.empty h3{margin:16px 0 6px;color:var(--theme-text, #31415d)}.empty p{max-width:490px;margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;background:var(--theme-surface, white);padding:15px;z-index:20}.skip-link:focus{top:12px}.mobile-only{display:none!important}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:var(--theme-surface, #fff);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:34px 19px 20px;z-index:15;overflow-y:auto;transition:transform .2s ease}.sidebar-brand{padding:0 4px 0 13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-collapse-button,.sidebar-open-button{flex-shrink:0;color:var(--theme-muted, #71809a)}.brand{display:flex;align-items:center;gap:10px;color:var(--theme-text, #253452);font-family:Manrope,sans-serif;font-size:25px;font-weight:800;letter-spacing:-1px;line-height:1.2}.brand-mark{display:block;flex-shrink:0;border-radius:13px;width:42px;height:42px;object-fit:contain;background:var(--blue);box-shadow:0 6px 12px var(--theme-accent-shadow, #2563eb20)}.brand-compact{gap:8px}.brand-compact .brand-mark{width:28px;height:28px;border-radius:8px;box-shadow:none}.brand-blue{color:var(--theme-accent-text, var(--blue))}.brand small{font-family:DM Sans,sans-serif;display:block;font-size:7px;letter-spacing:2.2px;font-weight:700;margin-top:4px;color:var(--theme-subtle, #9ba7ba)}.nav-label{font-size:8px;letter-spacing:1.1px;font-weight:700;color:var(--theme-subtle, #a5afbf);margin:30px 13px 14px}.nav-item{display:flex;align-items:center;gap:12px;color:var(--theme-muted, #7c889d);font-size:12px;font-weight:550;padding:13px;border-radius:9px;margin:3px 0;position:relative}.nav-item.active{background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, var(--blue));font-weight:700}.nav-item.active:before{content:"";position:absolute;left:-19px;width:3px;height:23px;border-radius:0 3px 3px 0;background:var(--blue)}.nav-item:hover{background:var(--theme-surface, #f3f6fc);color:var(--theme-accent-text, #3765b3)}.nav-code{margin-left:auto;color:var(--theme-subtle, #8c9bb3);font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:36px}.sidebar-plus{background:linear-gradient(125deg,var(--theme-accent-soft, #f4f8ff),var(--theme-accent-soft, #eef3ff));border:1px solid var(--theme-accent-border, #e8eefb);border-radius:13px;margin:0 5px 18px;padding:18px 15px;color:var(--theme-accent-text, #527dd1)}.sidebar-plus>svg{margin-bottom:12px}.sidebar-plus strong{display:block;font-family:Manrope,sans-serif;color:var(--theme-accent-text, #324b7d);font-size:14px;line-height:1.55;letter-spacing:-.3px}.sidebar-plus p{font-size:10px;margin:7px 0 13px}.sidebar-plus>a{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700}.sidebar-note{font-size:9px;color:var(--theme-subtle, #a9b3c3);line-height:1.7;margin:22px 13px 0}.sidebar-note a{color:var(--theme-subtle, #99a6bc);font-size:8px}.main-shell{margin-left:252px;width:calc(100% - 252px);min-width:0;transition:margin-left .2s ease,width .2s ease}.app-shell.sidebar-collapsed .sidebar{transform:translate(-100%)}.app-shell.sidebar-collapsed .main-shell{margin-left:0;width:100%}.topbar{height:76px;border-bottom:1px solid var(--border);background:var(--theme-surface-glass, #ffffffeb);display:flex;align-items:center;justify-content:space-between;padding:0 39px;gap:15px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}.breadcrumb{display:flex;gap:14px;font-size:11px;color:var(--theme-subtle, #97a3b7);align-items:center}.breadcrumb strong{font-weight:550;color:var(--theme-muted, #64728c)}.breadcrumb>span{color:var(--theme-subtle, #c9d0dd)}.school-pill{display:flex;align-items:center;gap:14px;font-size:10px;border:1px solid var(--border);padding:9px 12px;border-radius:7px;color:var(--theme-muted, #6a7790)}.user-avatar{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:3px solid var(--theme-surface, white);outline:1px solid var(--theme-accent-text, #dce8fc);background:var(--theme-accent-soft, #dbeafe);color:var(--theme-accent-text, #4b71ad);font-size:13px;font-weight:700;border-radius:50%}.top-login{display:flex;align-items:center;gap:7px;background:none;border:0;color:var(--theme-accent-text, var(--blue));font-size:11px;font-weight:650}.main-content{max-width:1500px;margin:0 auto;padding:36px 39px 35px}.main-content.python-project-main{width:100%;max-width:none;min-height:calc(100vh - 76px);padding:12px 16px 16px}.python-project-shell .main-footer{display:none}.main-footer{max-width:1500px;margin:0 auto;padding:18px 39px 28px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;color:var(--theme-subtle, #a0adbf);font-size:9px}.main-footer a{color:var(--theme-subtle, #8495ad)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:29px}.page-heading p{font-size:13px;margin:9px 0 0;max-width:740px}.page-heading .button{flex-shrink:0}.welcome-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 28px}.welcome-heading h1{font-size:26px;letter-spacing:-.8px}.welcome-heading p{font-size:12px;margin:9px 0 0}.welcome-heading .eyebrow{font-size:8px;letter-spacing:1.4px;color:var(--theme-subtle, #9ca8bb)}.greeting-spark{color:var(--theme-warning-text, #ebbb57);margin-left:10px;font-size:26px}.public-site{background:#fff;min-height:100vh}.public-site :is(section,[id]){scroll-margin-top:28px}.public-header,.public-footer{max-width:1220px;margin:auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:28px}.public-header nav,.public-actions{display:flex;align-items:center;gap:28px}.public-header nav{flex-wrap:wrap;justify-content:center;row-gap:12px}.public-header nav a,.public-footer>a{color:#536783;font-size:13px}.public-hero{max-width:1220px;margin:auto;padding:75px 32px 90px;display:grid;grid-template-columns:minmax(0,760px);align-items:center;gap:50px}.public-hero h1{margin:23px 0;font-size:clamp(34px,4vw,51px);line-height:1.18;letter-spacing:-2px}.public-hero h1>span{color:var(--blue)}.public-lead{font-size:16px;color:#62728c;max-width:490px}.public-actions{margin-top:28px;gap:20px;flex-wrap:wrap}.public-actions .google-button{background:var(--blue);color:#fff;border-color:transparent;min-height:49px}.public-actions>a{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:650}.public-login-note{font-size:12px;max-width:400px;margin-top:16px}.public-preview{min-width:0;border:1px solid #dce7f9;border-radius:20px;background:#fff;box-shadow:0 25px 75px #2563eb1a;position:relative}.public-preview-bar{display:flex;align-items:center;gap:9px;padding:20px 18px;color:#4574c2;border-bottom:1px solid #e4edfb;background:#f7faff;border-radius:20px 20px 0 0}.public-preview-bar strong{color:#345079;font-size:11px}.public-preview-bar>span{margin-left:auto;font-size:8px;letter-spacing:1px}.public-preview-body{display:grid;grid-template-columns:145px minmax(0,1fr);min-height:245px}.public-preview-files{padding:22px 10px;border-right:1px solid #e4edfb;background:#fbfcff}.public-preview-files>span{display:flex;align-items:center;gap:7px;color:#7a8daa;padding:10px 8px;font-size:10px;white-space:nowrap}.public-preview-files>.selected{background:#eaf2ff;color:var(--blue);border-radius:7px}.public-preview-code{padding:28px 18px;min-width:0}.public-preview-label{font-size:7px;letter-spacing:.8px;color:#8496b2}.public-preview-code pre{color:#405678;font-size:10px;line-height:1.9;margin:24px 0}.public-code-comment{color:#8b9bb1}.public-code-blue{color:var(--blue)}.public-preview-output{padding:13px;background:#f3f7fd;border-radius:8px}.public-preview-output span{display:block;font-size:7px;color:#8496b2;letter-spacing:1px;margin-bottom:8px}.public-preview-output strong{font:11px monospace;color:#45739c}.public-preview-footer{display:flex;align-items:center;gap:10px;border-top:1px solid #e4edfb;padding:15px 20px;color:#3e6cbb;font-size:11px}.public-preview-caption{text-align:center;font-size:10px;position:absolute;width:100%;margin:14px 0 0}.public-features,.public-faq{max-width:1220px;margin:auto;padding:65px 32px}.public-features{border-top:1px solid var(--border);text-align:center}.public-site h2{font-size:clamp(23px,3vw,31px)}.public-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:35px;text-align:left}.public-feature-grid article{background:#f8faff;border:1px solid #edf2fb;border-radius:16px;padding:27px}.public-feature-icon{display:inline-flex;background:#eaf2ff;color:var(--blue);border-radius:12px;padding:12px;margin-bottom:22px}.public-feature-grid p{font-size:13px}.public-section-intro{max-width:690px;margin:16px auto 0;font-size:15px}.public-why-now{background:#f8faff}.public-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:35px;text-align:left}.public-context-grid>article{min-width:0;padding:28px;border:1px solid var(--border);border-radius:16px;background:#fff}.public-context-grid p,.public-curriculum-list{font-size:13px}.public-curriculum-list{list-style:none;padding:0;margin:22px 0;display:grid;gap:18px}.public-curriculum-list strong,.public-curriculum-list span{display:block}.public-curriculum-list span{margin-top:5px;line-height:1.7;color:#62728c}.public-context-grid .public-curriculum-note{font-size:12px}.public-learning-question>.button{margin-top:16px}.public-curriculum-sources{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px;margin-top:28px;font-size:12px}.public-curriculum-sources a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.public-curriculum-sources p{flex-basis:100%;max-width:780px;margin:0}.public-learning-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.public-learning-link{display:inline-flex;align-items:center;gap:8px;font-size:12px;line-height:1.6}.public-learning-link svg{flex-shrink:0}.public-learning-note{margin:28px auto 0;font-size:13px}.public-tutor{max-width:1156px;margin:10px auto 65px;padding:40px;border-radius:18px;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:32px;background:#eef5ff}.public-tutor-copy{min-width:0}.public-tutor-copy>.public-feature-icon{margin-bottom:18px}.public-tutor-copy>.eyebrow{display:block}.public-tutor-copy>p{font-size:13px}.public-tutor-benefits{list-style:none;padding:0;margin:26px 0;display:grid;gap:18px;font-size:13px}.public-tutor-benefits strong,.public-tutor-benefits span{display:block}.public-tutor-benefits span{margin-top:5px;color:#62728c;line-height:1.7}.public-tutor-assessment{padding-top:20px;border-top:1px solid #cfdef6}.public-plus{border-left:1px solid #cfdef6;padding-left:25px;display:grid;gap:9px;min-width:225px}.public-plus>strong{font-size:13px;color:#3764ae}.public-plus>span{font-size:12px;color:#687d9e}.public-plus b{font-size:26px;color:#244e8e}.public-plus small{font-size:10px;line-height:1.6;max-width:230px}.public-faq{display:grid;grid-template-columns:1fr 1.3fr;gap:65px}.public-faq>div>p{font-size:13px}.public-faq details{padding:20px 0;border-bottom:1px solid var(--border)}.public-faq details:first-child{padding-top:0}.public-faq summary{cursor:pointer;font-size:14px;font-weight:600;line-height:1.6}.public-faq details p{font-size:13px}.public-start{text-align:center;padding:50px 25px 65px;background:#f5f9ff}.public-start p{font-size:14px;margin-bottom:23px}.public-footer{padding-top:35px;padding-bottom:35px;flex-wrap:wrap}.public-footer>span{font-size:11px;color:#8391a7}.public-loading{min-height:100vh;display:grid;place-items:center;background:#fff}@media (max-width: 1000px){.public-header{flex-wrap:wrap}.public-header nav{order:2;flex-basis:100%;flex-wrap:wrap;justify-content:center;gap:12px 24px}.public-context-grid{grid-template-columns:1fr}.public-hero{grid-template-columns:1fr;gap:45px;padding-top:45px}.public-hero-copy{max-width:650px}.public-preview{width:100%;max-width:570px}.public-tutor{margin-left:32px;margin-right:32px;grid-template-columns:minmax(0,1fr) 225px;padding:32px;gap:24px}.public-learning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-feature-grid{gap:14px}.public-feature-grid article{padding:22px}.public-faq{gap:30px}}@media (max-width: 640px){.public-header,.public-footer{padding:22px 20px;gap:15px}.public-header nav{display:none}.public-header>.button{padding:10px 13px;font-size:11px}.public-header .brand,.public-footer .brand{font-size:22px}.public-hero{padding:35px 20px 70px}.public-hero h1{letter-spacing:-1.3px}.public-lead{font-size:14px}.public-preview-body{grid-template-columns:105px minmax(0,1fr)}.public-preview-files{padding:17px 4px}.public-preview-files>span{font-size:8px;gap:4px;padding:10px 4px}.public-preview-code{padding:22px 12px}.public-preview-bar{padding:17px 12px}.public-preview-bar strong{font-size:10px}.public-preview-bar>span{display:none}.public-features,.public-faq{padding:40px 20px}.public-context-grid{gap:18px}.public-context-grid>article{padding:22px}.public-section-intro{font-size:14px}.public-feature-grid,.public-learning-grid,.public-faq{grid-template-columns:1fr}.public-tutor{margin:0 20px 40px;padding:25px;grid-template-columns:minmax(0,1fr)}.public-plus{border-left:0;border-top:1px solid #cfdef6;padding:20px 0 0;width:100%;min-width:0}.public-footer{flex-wrap:wrap}.public-footer>span{flex-basis:100%;order:1}}.public-video .public-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 1000px){.public-video .public-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.public-video .public-feature-grid{grid-template-columns:minmax(0,1fr)}}.hero-card{display:grid;grid-template-columns:1.12fr 1fr;position:relative;background:linear-gradient(110deg,var(--theme-accent-soft-strong, #215ede),var(--theme-accent-soft-strong, #2769eb) 60%,var(--theme-accent-soft, #397af4));border-radius:19px;overflow:hidden;min-height:306px;color:var(--theme-on-accent, white);box-shadow:0 14px 27px var(--theme-accent-shadow, #2563eb0d)}.hero-close{position:absolute;z-index:5;top:12px;right:12px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--theme-surface, #ffffff70);border-radius:10px;color:var(--theme-on-accent, #fff);background:var(--theme-backdrop, #174fb4bb)}.hero-close:hover{background:var(--theme-accent, #123d91)}.hero-close:focus-visible{outline-color:var(--theme-surface, #fff)}.dashboard-activity{min-width:0}.recent-lessons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.recent-lesson{background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:15px;padding:23px;display:flex;flex-direction:column}.recent-lesson-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.recent-lesson-icon{display:inline-flex;padding:13px;background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #4176d6);border-radius:14px}.recent-lesson-ai .recent-lesson-icon{background:var(--theme-purple-soft, #f2effe);color:var(--theme-purple-text, #9174d6)}.recent-completed{display:flex;align-items:center;gap:5px;color:var(--theme-success-text, #268664);font-size:10px}.recent-lesson h3{font-size:18px;margin-bottom:12px}.recent-lesson time{display:block;color:var(--theme-muted, #8391a7);font-size:11px;margin-bottom:22px}.recent-lesson-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid var(--border);margin-top:auto}.recent-lesson-footer>span{font-size:10px;color:var(--theme-muted, #8391a7)}.recent-lesson-footer a{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600}.recent-exercises-heading{margin-top:30px}.recent-exercises-list{padding:0;list-style:none;margin:0}.recent-exercises-list .recent-exercise{height:100%;flex-direction:column;align-items:stretch;gap:12px;border:1px solid var(--border);border-radius:15px;background:var(--theme-surface, #fff)}.recent-exercises-list .recent-exercise-grade{text-align:left}.recent-exercise{display:flex;align-items:center;gap:20px;padding:20px 23px;color:inherit}.recent-exercise:hover{background:var(--theme-surface, #f8faff)}.recent-exercise:focus-visible{outline-offset:-4px}.recent-exercise-info{flex:1;min-width:0}.recent-exercise-info>strong{display:block;font-size:14px;overflow-wrap:anywhere}.recent-exercise-info>span,.recent-exercise-info>time{display:block;font-size:11px;color:var(--theme-muted, #8391a7);margin-top:7px}.recent-exercise-grade{text-align:right;min-width:77px}.recent-exercise-grade>strong{display:block;color:var(--theme-accent-text, #244c8b);font-size:22px;margin:2px 0}.recent-exercise-grade>strong>span{font-size:11px;font-weight:400;color:var(--theme-muted, #8391a7)}.recent-exercise-grade small{font-size:10px}.recent-exercise>svg{color:var(--theme-accent-text, #7796c5)}.recent-history-note{font-size:11px;margin:12px 2px 0}@media (max-width: 650px){.recent-lessons-grid{grid-template-columns:1fr}.recent-lesson{padding:20px}.recent-exercise{gap:12px;padding:18px}.recent-exercise>svg{display:none}}.hero-copy{padding:32px 0 28px 32px;position:relative;z-index:2}.hero-kicker{display:flex;align-items:center;gap:8px;font-size:8px;letter-spacing:1.3px;color:var(--theme-on-accent, #c6dcff);font-weight:600;margin-bottom:20px}.hero-copy h2{font-size:34px;line-height:1.22;font-weight:800;letter-spacing:-1.1px}.hero-copy h2 span{color:var(--theme-on-accent, #bfdcff)}.hero-copy>p{font-size:11px;line-height:1.8;color:var(--theme-on-accent, #d4e3fd);max-width:350px;margin:15px 0 21px}.hero-buttons{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.hero-buttons .button{font-size:10px;min-height:39px;padding:10px 14px;box-shadow:0 4px 7px var(--theme-accent-shadow, #1048b91f)}.hero-link{display:inline-flex;gap:6px;align-items:center;font-size:9px;color:var(--theme-on-accent, #f1f6ff)}.hero-footnote{display:flex;align-items:center;gap:6px;font-size:8px;color:var(--theme-on-accent, #b6d2ff);margin-top:18px}.hero-footnote>span{margin:0 5px}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center;padding:26px 27px 35px 9px;min-width:0}.hero-code-window{width:100%;max-width:360px;position:relative;z-index:2;background:#102e66;border:1px solid #96bafc44;border-radius:12px;transform:rotate(-3deg);box-shadow:0 17px 30px #153b9640}.window-top{display:flex;gap:4px;padding:13px 12px;border-bottom:1px solid #ffffff0c;align-items:center}.window-top>i{width:5px;height:5px;border-radius:50%;background:#6a85b0}.window-top>i:first-child{background:#e18a94}.window-top>i:nth-child(2){background:#e6c881}.window-top>i:nth-child(3){background:#71c0b1}.window-top>span{font-family:monospace;font-size:8px;color:#8da6d1;margin-left:9px}.code-lines{font-family:Consolas,monospace;font-size:10px;line-height:2.1;padding:19px 18px;color:#d1def2}.code-comment{color:#6e91bf}.syntax-purple{color:#c8a9f7}.syntax-yellow{color:#e3d38f}.syntax-green{color:#94d9b3}.code-result{border-top:1px solid #ffffff09;background:#09265580;padding:14px 16px;color:#9fceb9;font:8px monospace;border-radius:0 0 12px 12px}.code-result>span:first-child{color:#548cac;margin-right:7px}.cursor{display:inline-block;width:4px;height:10px;background:#6cce9d;margin-left:8px;vertical-align:middle}.orbit{position:absolute;left:5%;top:1%;width:375px;height:375px;border:1px solid var(--theme-accent-border, #abcaff24);border-radius:50%}.orbit-two{width:260px;height:260px;left:20%;top:18%;border-style:dashed}.hero-floating{position:absolute;z-index:3;display:flex;align-items:center;justify-content:center;background:var(--theme-accent-soft, #7fa8ff40);border:1px solid var(--theme-accent-border, #99c1ff70);border-radius:13px;box-shadow:0 5px 12px var(--theme-accent-shadow, #1042a02b)}.floating-python{font-size:19px;font-weight:700;top:30px;right:25px;width:45px;height:45px;transform:rotate(11deg)}.floating-spark{bottom:24px;left:3px;width:43px;height:43px;transform:rotate(-12deg)}.hero-success{position:absolute;bottom:16px;right:30px;background:var(--theme-surface, #fff);display:flex;align-items:center;gap:9px;border-radius:10px;padding:10px 14px;box-shadow:0 7px 20px var(--theme-accent-shadow, #123b912a);z-index:3;transform:rotate(3deg);color:var(--theme-accent-text, #34516f);font-size:9px;font-weight:600}.hero-success>span{background:var(--theme-success-soft, #e8f7f0);color:var(--theme-success-text, #43a983);padding:6px;border-radius:8px}.hero-success small{display:block;font-size:7px;margin-top:4px;font-weight:400}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:24px 0 34px}.stat-card{display:flex;align-items:center;gap:13px;padding:20px 16px;background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.stat-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;flex-shrink:0}.stat-icon svg{width:20px;height:20px}.stat-card p{margin:0 0 7px;font-size:9px;color:var(--theme-subtle, #8996aa)}.stat-card strong{font-size:21px;line-height:1.2;font-weight:700;font-family:Manrope,sans-serif;letter-spacing:-.5px}.stat-card strong small{font:8px DM Sans,sans-serif;letter-spacing:0;margin-left:7px;color:var(--theme-subtle, #a2adbd)}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:25px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.section-heading h2{font-size:19px}.section-heading .eyebrow{font-size:7px;letter-spacing:1.4px;color:var(--theme-subtle, #98a4b9);margin-bottom:7px}.section-heading>a{font-size:9px;font-weight:600;display:flex;align-items:center;gap:7px;white-space:nowrap}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.course-card{display:block;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--theme-surface, white);color:inherit;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.course-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px var(--theme-accent-shadow, #1746850b)}.course-art{height:128px;position:relative;overflow:hidden;background:var(--theme-accent-soft, #ecf3ff);display:flex;align-items:center;justify-content:center;color:var(--theme-accent-text, #4176d6)}.course-ai .course-art{background:var(--theme-purple-soft, #f2effe);color:var(--theme-purple-text, #9174d6)}.course-icon{position:relative;z-index:1;width:66px;height:66px;background:var(--theme-surface-glass, #ffffffd6);border:1px solid var(--theme-surface, #fff);border-radius:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 9px 20px var(--theme-accent-shadow, #527cc419);transform:rotate(-8deg)}.course-ai .course-icon{transform:rotate(8deg)}.course-decoration{position:absolute;width:150px;height:150px;border:1px solid var(--theme-accent-border, #719bdb22);border-radius:50%;top:4px;right:-30px}.decoration-two{width:110px;height:110px;left:-20px;top:-40px;background:var(--theme-accent-soft, #dce9ff5e)}.course-ai .decoration-two{background:var(--theme-purple-soft, #e5ddfc54)}.course-label{position:absolute;right:12px;bottom:11px;font:8px monospace;color:var(--theme-accent-text, #7293c566);transform:rotate(-4deg)}.course-body{padding:19px}.course-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:13px}.course-meta .tag{font-size:7px;padding:4px 6px}.course-meta>span:last-child{font-size:8px;color:var(--theme-subtle, #9da8b9)}.course-body h3{font-size:16px;margin-bottom:8px}.course-body>p{font-size:10px;line-height:1.8;min-height:36px;margin:0 0 16px}.course-info{display:flex;gap:16px;font-size:8px;color:var(--theme-subtle, #94a0b4)}.course-info>span{display:flex;align-items:center;gap:5px}.course-progress{border-top:1px solid var(--theme-border, #f0f3f7);margin-top:17px;padding-top:17px}.progress-track{height:5px;background:var(--theme-accent-soft, #edf1f7);border-radius:5px;overflow:hidden}.progress-track>span{display:block;height:100%;background:var(--blue);border-radius:5px;transition:width .3s}.course-progress>div:last-child{display:flex;align-items:center;justify-content:space-between;margin-top:10px;color:var(--theme-subtle, #97a2b5);font-size:8px}.course-progress svg{color:var(--theme-accent-text, #5981cf)}.lab-banner{display:flex;align-items:center;gap:16px;padding:20px;background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:12px;margin-top:20px}.lab-banner-icon{background:var(--theme-accent-soft, #f0f5ff);border:1px solid var(--theme-border, #e6eefc);border-radius:12px;padding:12px;color:var(--theme-accent-text, #5a86d5)}.lab-banner h3{font-size:12px}.lab-banner p{font-size:8px;margin:5px 0 0;max-width:280px}.lab-banner .button{font-size:8px;padding:9px 11px;min-height:34px;margin-left:auto;white-space:nowrap}.dashboard-aside{padding-top:0}.next-card{background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:14px;padding:22px}.aside-heading{display:flex;align-items:center;gap:9px;margin-bottom:24px}.aside-heading h3{font-size:12px;letter-spacing:-.3px}.small-icon{display:flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:8px;color:var(--theme-accent-text, #4379d7);background:var(--theme-accent-soft, #eef4ff)}.next-card>.tag{font-size:7px}.next-card h4{font-size:17px;line-height:1.6;margin:12px 0 7px}.next-card>p{font-size:10px;line-height:1.8}.time-meta{display:flex;align-items:center;gap:7px;color:var(--theme-subtle, #95a1b6);font-size:8px;margin:17px 0 19px}.next-card .button{font-size:10px;min-height:39px}.source-link{display:flex;align-items:center;gap:10px;margin:20px 5px;font-size:9px;font-weight:600;color:var(--theme-subtle, #7f90aa)}.source-link>span{flex:1}.source-link small{display:block;font-weight:400;font-size:8px;margin-top:5px}.learn-filters{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.track-select{display:grid;gap:4px;min-width:178px;color:var(--theme-muted, #62728e);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.track-select select{min-height:40px;border:1px solid var(--border);border-radius:9px;padding:0 34px 0 11px;background:var(--theme-surface, #fff);color:var(--theme-text, #24344b);font:inherit;font-size:11px;text-transform:none;letter-spacing:0}.tabs{display:flex;gap:4px;background:var(--theme-accent-soft, #edf1f7);padding:4px;border-radius:10px;width:max-content;max-width:100%}.tabs button{border:0;border-radius:7px;background:transparent;padding:10px 16px;color:var(--theme-muted, #8290a7);font-size:12px;font-weight:600}.tabs button.selected{background:var(--theme-surface, white);color:var(--theme-accent-text, var(--blue));box-shadow:0 2px 5px var(--theme-accent-shadow, #19355b0a)}.search-input{display:flex;flex-direction:row;align-items:center;gap:8px;background:var(--theme-surface, white);padding:0 12px;border:1px solid var(--border);border-radius:9px;color:var(--theme-subtle, #9ba9bf)}.search-input input{border:0;background:none;max-width:260px;outline:none;font-size:12px}.filter-pills{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.filter-pills>button{border:1px solid var(--border);background:var(--theme-surface, #fff);color:var(--theme-muted, #7b8aa2);font-size:11px;border-radius:20px;padding:9px 14px}.filter-pills>button.selected{background:var(--theme-accent-soft, #eaf2ff);color:var(--theme-accent-text, var(--blue));border-color:var(--theme-accent-border, #cfe0fd)}.chapter-navigation{padding:clamp(18px,3vw,28px);margin-bottom:25px;border:1px solid var(--theme-border, #dfe7f4);border-radius:18px;background:linear-gradient(135deg,var(--theme-surface, #fff),var(--theme-accent-soft, #f4f7fd))}.chapter-navigation-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:18px}.chapter-navigation-heading h2{margin:3px 0 0;font-size:21px}.chapter-navigation-heading p{max-width:510px;margin:0;color:var(--theme-muted, #62728e);font-size:12px;line-height:1.65}.chapter-pills{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;margin-bottom:0;padding:2px 0 7px}.chapter-pills>button{flex:0 0 auto;min-height:38px;background:var(--theme-surface, #fff);box-shadow:0 3px 12px var(--theme-accent-shadow, #20395b0a)}.lesson-path-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:4px 0 18px}.lesson-path-heading h2{margin:4px 0 6px;font-size:clamp(21px,3vw,28px)}.lesson-path-heading p{max-width:620px;margin:0;color:var(--theme-muted, #62728e);font-size:12px;line-height:1.65}.lesson-path-heading>strong{flex:0 0 auto;color:var(--theme-accent-text, #3866ad);font-size:12px}.lesson-list.lesson-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;overflow:visible}.lesson-path-card.lesson-row{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:18px;background:var(--theme-surface, #fff);border:1px solid var(--border);padding:58px 20px 20px;border-radius:20px;color:inherit;transition:border-color .2s,box-shadow .2s,transform .2s}.lesson-path-card:not(:last-child):after{content:"";position:absolute;z-index:0;top:29px;left:calc(50% + 22px);width:calc(100% - 22px);height:2px;background:var(--theme-accent-border, #c8d8ef)}.lesson-path-marker{position:absolute;z-index:1;top:12px;left:50%;display:grid;place-items:center;width:36px;height:36px;transform:translate(-50%);border:4px solid var(--theme-surface, #fff);border-radius:50%;background:var(--theme-accent-soft, #eaf2ff);color:var(--theme-accent-text, #3866ad);box-shadow:0 0 0 1px var(--theme-accent-border, #c8d8ef);font-size:11px;font-weight:800}.lesson-path-card.current{border-color:var(--theme-accent-border, #9fbeee);box-shadow:0 14px 34px var(--theme-accent-shadow, #1b3d7514)}.lesson-path-card.current .lesson-path-marker{background:var(--blue, #2869d8);color:#fff;box-shadow:0 0 0 4px var(--theme-accent-soft, #eaf2ff)}.lesson-path-card.completed .lesson-path-marker{background:var(--theme-success-text, #2c8a72);color:#fff}.lesson-row:not(.locked):hover{border-color:var(--theme-accent-border, #acc8f7);box-shadow:0 9px 28px var(--theme-accent-shadow, #1b3d750e);transform:translateY(-1px)}.lesson-row.locked{background:var(--theme-surface, #f7f9fc)}.lesson-path-card .lesson-lock-reason{color:var(--theme-muted, #62728e);font-weight:600}.lesson-row-copy{display:flex;flex:1;flex-direction:column}.lesson-path-card h3{min-height:52px;font-size:18px;line-height:1.4;margin:8px 0 14px}.lesson-path-card p{font-size:11px;margin:6px 0 0}.lesson-path-card .lesson-row-tags{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.lesson-path-card .lesson-row-tags .tag{display:inline-flex;align-items:center;gap:4px;font-size:9px}.lesson-path-context{color:var(--theme-muted, #62728e);font-size:10px!important;font-weight:650}.lesson-learning-points{margin-top:auto;padding:14px;border-radius:14px;background:var(--theme-accent-soft, #f2f6fc)}.lesson-learning-points strong{display:block;margin-bottom:8px;color:var(--theme-text, #293b55);font-size:11px}.lesson-learning-points ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.lesson-learning-points li{position:relative;padding-left:14px;color:var(--theme-muted, #5e708b);font-size:10px;line-height:1.55}.lesson-learning-points li:before{content:"";position:absolute;top:.62em;left:0;width:5px;height:5px;border-radius:50%;background:var(--theme-accent-text, #4f7fc5)}.free-label{color:var(--theme-success-text, #45a586);font-size:9px;font-weight:600}.lesson-path-card .lesson-row-end{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:var(--theme-subtle, #99a6bb);font-size:11px}.lesson-path-card .lesson-row-end>span:first-child{margin-right:auto}.lesson-preview-button,.lesson-open-button{min-height:38px;padding:9px 12px;white-space:nowrap;font-size:10px}.lesson-preview-button{color:var(--theme-accent-text, #365f9f)}.lesson-path-card .lesson-row-end>span{display:flex;align-items:center;gap:6px}.mastery-label{color:var(--theme-accent-text, #4f84d4)}.lesson-path-pagination{margin-top:20px}.lesson-preview-dialog{width:min(760px,calc(100vw - 32px));max-height:min(860px,calc(100dvh - 32px));padding:0;border:0;border-radius:22px;color:var(--theme-text, #24344b);background:var(--theme-surface, #fff);box-shadow:0 28px 85px #1023443b}.lesson-preview-dialog::backdrop{background:#1426408f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lesson-preview-shell{padding:clamp(22px,4vw,36px)}.lesson-preview-header{display:flex;align-items:flex-start;gap:22px}.lesson-preview-header>div{flex:1;min-width:0}.lesson-preview-header h2{margin:8px 0 10px;font-size:clamp(23px,4vw,31px);line-height:1.18}.lesson-preview-header p{margin:0;font-size:13px;line-height:1.75}.lesson-preview-chapter{color:var(--theme-accent-text, #3769b8);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.lesson-preview-meta{display:flex;flex-wrap:wrap;gap:9px;padding:18px 0;margin:22px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.lesson-preview-meta span,.lesson-preview-includes span{display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:var(--theme-accent-soft, #eef4ff);padding:8px 11px;color:var(--theme-accent-text, #4069a6);font-size:10px;font-weight:650}.lesson-preview-objectives,.lesson-preview-steps{margin-top:26px}.lesson-preview-objectives h3,.lesson-preview-steps h3{margin:5px 0 15px;font-size:17px}.lesson-preview-objectives ul{display:grid;gap:9px;list-style:none;padding:0;margin:0}.lesson-preview-objectives li{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.65}.lesson-preview-objectives li svg{flex:0 0 auto;margin-top:3px;color:var(--theme-success-text, #27816e)}.lesson-preview-steps ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:0}.lesson-preview-steps li{display:flex;gap:12px;align-items:center;min-width:0;padding:13px;border:1px solid var(--theme-border, #e0e7f2);border-radius:13px;background:var(--theme-surface, #fbfcff)}.lesson-preview-steps li>span{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border-radius:10px;background:var(--theme-accent-soft, #eaf2ff);color:var(--theme-accent-text, #3e69a8);font-size:10px;font-weight:800}.lesson-preview-steps li div{min-width:0}.lesson-preview-steps small{display:block;margin-bottom:3px;color:var(--theme-subtle, #8696ae);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.lesson-preview-steps strong{display:block;overflow-wrap:anywhere;font-size:11px;line-height:1.45}.lesson-preview-includes{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.lesson-preview-footer{display:flex;justify-content:flex-end;margin-top:28px;padding-top:22px;border-top:1px solid var(--border)}.lesson-preview-lock{display:flex;align-items:center;gap:11px;width:100%;color:var(--theme-muted, #62728e);font-size:11px}.lesson-preview-lock>svg{flex:0 0 auto}.lesson-preview-lock p{flex:1;margin:0;line-height:1.6}@media (max-width: 1100px){.learn-filters{align-items:stretch;flex-wrap:wrap}.learn-filters .search-input{flex:1;min-width:210px}.learn-filters .search-input input{max-width:none;width:100%}.track-select{flex:1}.chapter-navigation-heading{align-items:flex-start;flex-direction:column;gap:8px}.lesson-list.lesson-path{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-path-card:after{display:none}.lesson-path-card.lesson-row{align-items:stretch}.lesson-path-card .lesson-row-end{width:100%;flex-direction:row;flex-wrap:wrap;align-items:center}.lesson-path-card .lesson-row-end .lesson-preview-button{margin-left:0}}@media (max-width: 560px){.tabs{width:100%;overflow-x:auto}.tabs button{flex:0 0 auto;padding-inline:12px}.lesson-path-heading{align-items:flex-start;flex-direction:column;gap:8px}.lesson-list.lesson-path{grid-template-columns:1fr}.lesson-path-card:not(:last-child):after{display:block;top:auto;bottom:-19px;left:29px;width:2px;height:18px}.lesson-path-marker{left:28px;transform:none}.lesson-path-card.lesson-row{align-items:stretch;padding-top:58px}.lesson-path-card h3{min-height:0}.lesson-path-card .lesson-row-end .lesson-preview-button,.lesson-path-card .lesson-row-end .lesson-open-button{flex:1;justify-content:center}.lesson-preview-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:17px}.lesson-preview-shell{padding:19px}.lesson-preview-steps ol{grid-template-columns:1fr}.lesson-preview-header h2{font-size:23px}.lesson-preview-lock{align-items:flex-start;flex-wrap:wrap}.lesson-preview-lock .button{width:100%}}.onboarding-screen{min-height:100vh;min-height:100dvh;width:100%;padding:clamp(24px,6vh,64px) clamp(16px,4vw,48px);background:var(--theme-surface, #f6f8fc)}.onboarding-content{width:100%;max-width:640px;margin:0 auto}.onboarding-progress{margin-bottom:clamp(24px,5vh,48px)}.onboarding-progress-label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;font-size:12px;font-weight:600;color:var(--theme-muted, #62728e);margin-bottom:12px}.onboarding-progress-track{height:8px;border-radius:999px;overflow:hidden;background:var(--theme-accent-soft, #e1e9f5)}.onboarding-progress-track>span{display:block;height:100%;border-radius:inherit;background:var(--blue)}.onboarding-form{width:100%;max-width:640px;margin:0 auto;padding:clamp(22px,5vw,40px);border:1px solid var(--border);background:var(--theme-surface, #fff);border-radius:20px}.onboarding-form h1{font-size:clamp(24px,4vw,30px)}.onboarding-form>p{font-size:13px;margin:12px 0 28px}.onboarding-fields{min-width:0;margin:0 0 28px}.onboarding-fields>legend{font-size:15px;color:var(--theme-text, #31415d);margin-bottom:20px}.onboarding-fields>fieldset{min-width:0;margin:0}.onboarding-fields .form-grid>label{min-width:0}.onboarding-fields select{width:100%;min-width:0}.onboarding-actions{display:flex;flex-wrap:wrap;gap:12px}.onboarding-actions>button[type=submit]{flex:1}.onboarding-form .error-box{flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.radio-card{flex-direction:row;align-items:center;gap:11px;padding:13px;border:1px solid var(--border);border-radius:9px;font-size:11px;font-weight:500;margin:9px 0}.radio-card:has(input:checked){background:var(--theme-accent-soft, #f1f6ff);border-color:var(--theme-accent-border, #9dbff8);color:var(--theme-accent-text, #3e6dbb)}.google-button{background:var(--theme-surface, white);color:var(--theme-accent-text, #4a5c79);border:1px solid var(--theme-border, #dce4ef);width:100%;font-weight:600;justify-content:space-between;padding:14px 18px}.google-button:hover{background:var(--theme-accent-soft, #f4f8ff)!important}.fine-print{font-size:10px!important;line-height:1.7;display:block;margin-top:17px}.login-card{margin:80px auto;max-width:460px;text-align:center;background:var(--theme-surface, #fff);border:1px solid var(--border);padding:40px;border-radius:20px}.login-card>svg{color:var(--theme-accent-text, var(--blue));margin-bottom:20px}.login-card h1{font-size:25px}.login-card p{font-size:12px;margin:17px 0 25px}.checkbox-label{flex-direction:row;align-items:center;margin:18px 0}.assessment-intro{max-width:730px;margin:40px auto;background:var(--theme-surface, white);border:1px solid var(--border);border-radius:22px;padding:42px;text-align:center}.intro-large-icon{display:inline-flex;padding:24px;color:var(--theme-accent-text, var(--blue));background:var(--theme-accent-soft, #edf4ff);border-radius:50%;margin-bottom:25px}.assessment-intro>h2{font-size:25px}.assessment-intro>p{font-size:13px}.assessment-facts{display:flex;justify-content:space-around;gap:16px;flex-wrap:wrap;margin:30px 0;color:var(--theme-subtle, #8393ad);font-size:11px}.assessment-facts>span{display:flex;align-items:center;gap:7px}.assessment-intro>label{max-width:350px;margin:20px auto;text-align:left}.assessment-intro .button{margin-top:12px}.assessment-player{max-width:820px;margin:10px auto;background:var(--theme-surface, white);border:1px solid var(--border);border-radius:20px;padding:35px}.assessment-top{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:25px}.assessment-top>a{font-size:20px;font-weight:750}.assessment-top>span:last-child{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--theme-subtle, #8193ae)}.assessment-top>.time-warning{color:var(--theme-danger-text, #db4b59)!important}.question-heading{margin:38px 0 26px}.question-heading h1{font-size:24px;line-height:1.6;white-space:pre-wrap}.answer-options{display:flex;flex-direction:column;gap:12px}.answer-option{display:flex;flex-direction:row;align-items:center;gap:14px;border:1px solid var(--theme-border, #e2e8f1);border-radius:12px;padding:16px;font-size:14px;font-weight:450;line-height:1.6;cursor:pointer}.answer-option.chosen{border-color:var(--theme-accent-border, #93b5f4);background:var(--theme-accent-soft, #f1f6ff);color:var(--theme-accent-text, #295fab)}.answer-option>span{border:1px solid var(--theme-border, #e1e7ef);background:var(--theme-surface, white);border-radius:6px;padding:4px 9px;font-size:11px;color:var(--theme-subtle, #9ba7b9)}.answer-option>div{white-space:pre-wrap}.answer-option input{position:absolute;opacity:0}.answer-option:focus-within{outline:2px solid var(--theme-accent-text, #8cb6ff)}.question-navigation{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:32px;padding-top:25px;border-top:1px solid var(--border)}.question-dots{display:flex;gap:5px;flex-wrap:wrap;justify-content:center;max-width:200px}.question-dots button{width:7px;height:7px;border-radius:50%;background:var(--theme-accent-soft, #e1e8f4);border:0;padding:0}.question-dots button.answered{background:var(--theme-accent-soft-strong, #98b6ec)}.question-dots button.current{background:var(--blue);outline:2px solid var(--theme-accent-text, #d6e5ff);outline-offset:2px}.hint-box{display:flex;align-items:flex-start;gap:10px;padding:15px;background:var(--theme-warning-soft, #fffaeb);border:1px solid var(--theme-warning-border, #f2e8c6);border-radius:10px;margin-top:12px;color:var(--theme-warning-text, #b69b5d)}.hint-box p{color:var(--theme-warning-text, #8d7a54);font-size:12px;margin:0}.result-overview{display:flex;align-items:center;gap:35px;background:var(--theme-surface, #fff);border:1px solid var(--border);padding:35px;border-radius:18px;margin-bottom:25px}.result-score{width:140px;height:140px;background:var(--theme-accent-soft, #edf4ff);border:8px solid var(--theme-accent-border, #d8e7ff);color:var(--theme-accent-text, #3973d4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:750;flex-shrink:0}.result-score span{font-size:20px}.result-overview p{font-size:12px;margin-bottom:20px}.feedback-list{display:flex;flex-direction:column;gap:15px}.feedback-card{display:flex;align-items:flex-start;gap:17px;padding:25px;background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:14px}.feedback-card>svg{color:var(--theme-success-text, #50b498);margin-top:4px}.feedback-card.incorrect>svg{color:var(--theme-warning-text, #d39754)}.feedback-card h3{font-size:15px;line-height:1.65;white-space:pre-wrap}.feedback-card strong{font-size:12px;color:var(--theme-accent-text, #5b769f);display:block;margin-top:10px}.feedback-card p{font-size:12px}.feedback-card small{font-size:10px}.tests-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(125deg,var(--theme-accent, #163d8a),var(--theme-accent, #3264c8));color:var(--theme-on-accent, white);border-radius:22px;padding:32px;margin:0 0 28px}.tests-hero .eyebrow{color:var(--theme-on-accent, #b9d2ff);font-size:10px;letter-spacing:.15em}.tests-hero h2{font-size:26px;max-width:430px;margin:10px 0;color:var(--theme-on-accent, white)}.tests-hero p{color:var(--theme-on-accent, #d5e4ff);font-size:13px;margin:0}.tests-hero>svg{flex-shrink:0;color:var(--theme-on-accent, #bad3ff)}.test-discovery-card{display:flex;flex-direction:column;gap:16px;background:var(--theme-surface, white);border:1px solid var(--theme-border, #e1e9f5);border-radius:20px;padding:24px;min-width:0;box-shadow:0 8px 26px var(--theme-accent-shadow, #264a8005)}.test-discovery-card h2{font-size:18px;line-height:1.5;margin:0;overflow-wrap:anywhere}.test-discovery-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.test-discovery-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--theme-accent-soft, #edf3ff);color:var(--theme-accent-text, var(--blue));flex-shrink:0}.test-availability{font-size:10px;color:var(--theme-success-text, #27816e);border-radius:30px;background:var(--theme-success-soft, #edf9f4);padding:6px 9px}.test-discovery-card.is-unavailable .test-availability{background:var(--theme-surface-soft, #f3f5f9);color:var(--theme-muted, #77849a)}.test-discovery-meta{display:flex;align-items:center;gap:7px;font-size:11px;margin:0}.test-discovery-card>.button{width:100%;margin-top:auto;justify-content:space-between}@media (max-width: 560px){.tests-hero{padding:24px}.tests-hero h2{font-size:23px}.tests-hero>svg{display:none}}.practice-hero{display:flex;align-items:center;gap:22px;padding:28px;background:var(--theme-surface-soft, #eff8f5);border:1px solid var(--theme-success-border, #d7ebe4);border-radius:20px;margin-bottom:26px}.practice-hero>svg{color:var(--theme-success-text, #27816e);flex-shrink:0}.practice-hero .eyebrow{color:var(--theme-success-text, #27816e);font-size:9px;letter-spacing:.13em}.practice-hero h2{font-size:23px;margin:7px 0}.practice-hero p{font-size:12px;margin:0}.practice-discovery-card{display:flex;flex-direction:column;gap:16px;padding:24px;background:var(--theme-surface, white);border:1px solid var(--theme-border, #e1e9f5);border-radius:20px;min-width:0}.practice-discovery-card>p{margin:0;font-size:11px}.practice-discovery-card h3{font-size:17px;line-height:1.65;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.practice-card-kicker{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--theme-success-text, #27816e)}.practice-discovery-card>.button{margin-top:auto;justify-content:space-between}@media (max-width: 560px){.practice-hero{padding:22px;gap:15px}.practice-hero h2{font-size:21px}}.practice-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.practice-catalog-heading>span{color:var(--theme-muted, #6b7d97);font-size:13px}.practice-lesson-group{margin:26px 0 38px}.practice-lesson-heading{padding:18px 0;border-bottom:1px solid var(--theme-border, #dbe6f4);margin-bottom:18px}.practice-lesson-heading h3{margin:6px 0 8px;font-size:21px}.practice-lesson-heading>span:last-child{font-size:12px;color:var(--theme-muted, #6b7d97)}.practice-discovery-card h4{font-size:16px;line-height:1.65;margin:18px 0;white-space:pre-wrap;overflow-wrap:anywhere}.practice-discovery-card.is-unavailable{background:var(--theme-surface, #f8faff);border-color:var(--theme-border, #dfe6f3)}.practice-discovery-card .study-requirements{font-size:14px;line-height:1.6}.practice-discovery-card .study-requirements ul{padding-left:16px}.practice-discovery-card .study-requirements li{margin:6px 0}.practice-pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin:28px 0}.practice-pagination>span{font-size:12px;color:var(--theme-muted, #6b7d97);text-align:center}.exercise-prompt-text{white-space:pre-wrap;overflow-wrap:anywhere}.exercise-prompt-code{margin:16px 0;padding:20px;background:#13233d;color:#e9f0fc;border-radius:14px;font:13px/1.7 monospace;white-space:pre;overflow-x:auto;max-width:100%}.exercise-prompt details>summary{color:var(--theme-accent-text, #285dbe);font-size:12px;cursor:pointer}.answer-option>div,.feedback-card strong,.feedback-card p,.feedback-card h3{white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width: 600px){.practice-pagination{flex-wrap:wrap;gap:12px}.practice-pagination>span{order:-1;width:100%}.practice-pagination .button{font-size:11px;padding:12px}}.back-link{display:inline-flex;align-items:center;gap:7px;font-size:11px;margin-bottom:22px;color:var(--theme-subtle, #8193af)}.lesson-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px}.lesson-cheatsheet-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px}.lesson-outline{align-self:start;background:var(--theme-surface, white);border:1px solid var(--border);border-radius:14px;padding:20px;position:sticky;top:20px}.lesson-outline h3{font-size:12px;margin-bottom:20px}.lesson-outline>button{display:flex;align-items:center;gap:9px;text-align:left;background:transparent;border:0;padding:10px 5px;color:var(--theme-subtle, #9aa7bb);font-size:10px;line-height:1.6;width:100%;border-radius:7px}.lesson-outline>button>span{font-size:9px;border:1px solid var(--theme-border, #e7edf7);width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.lesson-outline>button.current{color:var(--theme-accent-text, var(--blue));background:var(--theme-accent-soft, #f2f6ff)}.lesson-outline>button.current>span{border-color:var(--theme-accent-border, #bfd4fc);background:var(--theme-accent-soft, #e4eeff)}.lesson-objectives{margin-top:25px;padding-top:20px;border-top:1px solid var(--border)}.lesson-objectives>strong{font-size:10px;color:var(--theme-subtle, #8696ad)}.lesson-objectives p{display:flex;align-items:flex-start;gap:6px;font-size:9px;line-height:1.7}.lesson-objectives p svg{margin-top:2px;color:var(--theme-accent-text, #66a2ca)}.lesson-main{min-width:0}.lesson-content{background:var(--theme-surface, #fff);border:1px solid var(--border);padding:32px;border-radius:17px;margin-bottom:25px}.lesson-content h2{margin-bottom:20px;font-size:25px}.lesson-step-heading{margin:-6px 0 24px;padding-bottom:22px;border-bottom:1px solid var(--theme-border, #e2e8f2)}.lesson-step-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--theme-subtle, #8595ad);font-size:9px;font-weight:800;letter-spacing:.1em}.lesson-step-meta strong{color:var(--theme-accent-text, #3c6aad);letter-spacing:.04em}.lesson-step-progress{height:7px;margin:11px 0 22px;overflow:hidden;border-radius:999px;background:var(--theme-accent-soft, #e7eef9)}.lesson-step-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--theme-accent-text, #4678c2),var(--theme-purple-text, #896ccd));transition:width .25s ease}.lesson-step-heading h2{margin:0;line-height:1.25}.lesson-prose p{font-size:14px;line-height:1.9;color:var(--theme-muted, #62728b);white-space:pre-line}.lesson-code{background:var(--theme-accent-soft, #f1f5fc);padding:24px;border-radius:10px;border:1px solid var(--theme-border, #e6edf7);font:13px/1.8 Consolas,monospace;color:var(--theme-accent-text, #42689e);margin:25px 0}.lesson-step-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding-top:24px;margin-top:28px}.lesson-check{display:flex;align-items:center;gap:18px;padding:27px;border:1px solid var(--theme-accent-border, #dce9fd);background:var(--theme-accent-soft, #edf4ff);border-radius:14px;margin:25px 0}.check-illustration{color:var(--theme-accent-text, #719fe9)}.lesson-check h2{font-size:17px}.lesson-check p{font-size:11px;margin:6px 0 0}.lesson-check .button{margin-left:auto;font-size:10px;flex-shrink:0}.lesson-sources{background:var(--theme-surface, #fff);border:1px solid var(--border);padding:19px;border-radius:12px;font-size:11px;margin-top:25px;color:var(--theme-subtle, #8696ae)}.lesson-sources summary{display:flex;align-items:center;gap:9px;cursor:pointer}.lesson-sources a{display:flex;align-items:center;gap:6px;margin:9px 0;font-size:10px}.tutor-panel{background:var(--theme-surface, white);border:1px solid var(--theme-purple-border, #e5e0f6);border-radius:16px;padding:25px}.tutor-header{display:flex;align-items:center;gap:13px;margin-bottom:20px}.tutor-header>span:first-child{padding:12px;border-radius:12px;background:var(--theme-purple-soft, #f2effc);color:var(--theme-purple-text, #8a70c6)}.tutor-header>div{flex:1}.tutor-header h3{font-size:16px}.tutor-header p{font-size:10px;margin:4px 0 0}.tutor-upgrade p{font-size:12px}.tutor-panel form>textarea{font-size:12px;margin-bottom:12px}.tutor-panel form>.button{font-size:11px;margin-top:12px}.tutor-answer{background:var(--theme-surface, #f7f5fe);border-radius:12px;padding:20px;margin-top:22px}.tutor-answer p{white-space:pre-wrap;color:var(--theme-purple-text, #605779);font-size:13px;line-height:1.9}.tutor-answer small{font-size:9px}.tutor-answer a{font-size:9px;display:flex;align-items:center;gap:5px;margin-top:7px;color:var(--theme-purple-text, #8b6cbe)}.paywall-card{max-width:550px;background:var(--theme-surface, white);border:1px solid var(--border);border-radius:20px;padding:45px;margin:45px auto;text-align:center}.paywall-card>svg{color:var(--theme-purple-text, #9776d5);margin-bottom:20px}.paywall-card p{font-size:13px;margin:20px 0 25px}.paywall-card>a:last-child{display:block;font-size:11px;margin:20px 0 0}.lesson-assessment{margin:24px 0;min-width:0}.lesson-recommendations{border-top:1px solid var(--border);margin-top:28px;padding-top:24px}.lesson-recommendations h3{font-size:17px}.lesson-recommendations>p{font-size:12px;line-height:1.8}.lesson-recommendation-list{display:grid;gap:10px;padding-left:22px;margin:18px 0}.lesson-recommendation-list li::marker{color:var(--theme-accent-text, var(--blue));font-weight:600}.lesson-recommendation-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;padding:14px;background:var(--theme-surface, #f7faff);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.lesson-recommendation-list a:hover,.lesson-recommendation-list a:focus-visible{border-color:var(--blue)}.lesson-recommendation-list svg{flex-shrink:0}.lesson-last-step{display:inline-flex;align-items:center;gap:7px;color:var(--theme-success-text, #27816e);font-size:13px}.lesson-completion,.lesson-test-card{display:flex;align-items:center;gap:18px;padding:24px;border-radius:18px;margin:24px 0}.lesson-completion{background:var(--theme-surface-soft, #f0faf7);border:1px solid var(--theme-success-border, #d1ebe2)}.lesson-completion>div,.lesson-test-card>div{flex:1;min-width:0}.lesson-completion h2,.lesson-test-card h2{font-size:19px;margin:0 0 7px}.lesson-completion p,.lesson-test-card p{font-size:12px;line-height:1.7;margin:0}.completion-icon{color:var(--theme-success-text, #27816e)}.lesson-test-card{background:linear-gradient(125deg,var(--theme-accent-soft, #eef4ff),var(--theme-surface, #fafbff));border:1px solid var(--theme-accent-border, #d5e3fd)}.test-card-icon{display:grid;place-items:center;border-radius:15px;background:var(--theme-accent-soft, #dfeaff);color:var(--theme-accent-text, var(--blue));width:54px;height:54px;flex-shrink:0}.lesson-test-card .eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:8px}.lesson-test-card small{display:block;margin-top:8px;color:var(--theme-muted, #6b7d97);font-size:11px;line-height:1.6}.lesson-completion .button,.lesson-test-card .button{flex-shrink:0}.lesson-recommendations{border-top:0;padding:24px;border-radius:18px;background:var(--theme-surface, #f6f9ff);border:1px solid var(--theme-border, #e1e9f9)}.recommendations-heading{display:flex;align-items:center;gap:13px}.recommendations-heading>span{color:var(--theme-accent-text, var(--blue));padding:12px;background:var(--theme-accent-soft, #e8f0ff);border-radius:13px;display:flex}.recommendations-heading .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:6px}.lesson-recommendation-list{list-style:none;counter-reset:exercise;padding:0}.lesson-recommendation-list li{counter-increment:exercise}.lesson-recommendation-list a{background:var(--theme-surface, white);padding:16px;border-radius:14px;color:var(--theme-accent-text, #243d64);transition:border-color .18s,box-shadow .18s}.lesson-recommendation-list a:before{content:counter(exercise,decimal-leading-zero);align-self:flex-start;color:var(--theme-subtle, #86a3d5);font-size:11px;font-weight:700;padding-top:4px}.lesson-recommendation-list a>span{flex:1}.lesson-recommendation-list a:hover{box-shadow:0 6px 20px var(--theme-accent-shadow, #3f66ac0c)}@media (max-width: 760px){.lesson-completion,.lesson-test-card{flex-wrap:wrap;padding:20px;gap:13px}.lesson-completion .button,.lesson-test-card .button{width:100%}.lesson-recommendations{padding:18px}}.notebook-page{container-type:inline-size;container-name:notebook;min-width:0;background:var(--theme-surface, #fff);border:1px solid var(--border);border-radius:20px;overflow:hidden}.notebook-detail{display:flex;flex-direction:column;height:calc(100dvh - 180px);min-height:600px}.notebook-access-lock{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:clamp(24px,5vw,60px);background:linear-gradient(135deg,var(--theme-surface, #fff),var(--theme-accent-soft, #edf4ff))}.notebook-access-lock p{max-width:620px;color:var(--theme-muted, #536783);line-height:1.7}.notebook-access-lock h1{max-width:640px}.notebook-nav-lock{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-size:10px}.notebook-pdf-action{display:flex;flex-direction:column;max-width:100%;gap:4px}.notebook-pdf-error{max-width:240px;color:var(--theme-danger-text, #b23b48);font-size:11px}.notebook-note-header{flex-wrap:wrap}.notebook-card-open{display:block;color:inherit;text-decoration:none}.notebook-card-open:focus-visible{outline:3px solid var(--theme-accent-text, var(--blue));outline-offset:-3px}.notebook-library{flex:1;min-height:0;overflow:auto;padding:28px}.notebook-library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.notebook-library-heading h1{font-size:24px}.notebook-library-heading p{font-size:12px;margin:8px 0 0}.notebook-library-heading .button{flex-shrink:0}.notebook-search{display:flex;flex-direction:row;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--border);border-radius:10px;margin-bottom:24px;color:var(--theme-muted, #78849a)}.notebook-search input{border:0;flex:1;min-width:0;font-size:12px}.notebook-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px;padding-bottom:20px}.notebook-card{border:1px solid var(--border);border-radius:13px;overflow:hidden;display:flex;flex-direction:column}.notebook-card:hover{border-color:var(--theme-accent-border, #a9c7f9);box-shadow:0 3px 15px var(--theme-accent-shadow, #17366a0d)}.notebook-card-open{flex:1;width:100%;padding:0 0 15px;text-align:left;background:var(--theme-surface, white);border:0}.notebook-card-preview{background-color:var(--theme-surface, #f6f9ff);background-image:radial-gradient(var(--theme-accent-soft, #dae4f5) 1px,transparent 1px);background-size:16px 16px;padding:18px;height:135px;overflow:hidden;color:var(--theme-accent-text, #7796c7)}.notebook-card-preview p{color:var(--theme-muted, #617692);font-size:12px;line-height:1.6;overflow-wrap:anywhere}.notebook-card-open h3{font-size:14px;margin:14px 16px 7px;overflow-wrap:anywhere}.notebook-card-open small{display:block;margin:0 16px;font-size:10px}.notebook-card-lesson{display:flex;gap:6px;align-items:center;border:0;border-top:1px solid var(--border);background:var(--theme-surface, #fbfcff);color:var(--theme-accent-text, var(--blue));text-align:left;font-size:10px;padding:10px 15px}.notebook-editor{flex:1;min-height:0;display:flex;flex-direction:column}.notebook-note-header{display:flex;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.notebook-note-header>input{flex:1;min-width:60px;border-color:transparent;font-weight:700;padding:7px}.notebook-note-header .button{min-height:34px;padding:7px 10px;font-size:11px}.notebook-save-status{font-size:10px;color:var(--theme-success-text, #528b76);max-width:95px}.notebook-save-status.dirty,.notebook-save-status.saving{color:var(--theme-warning-text, #8a7132)}.notebook-save-status.error{color:var(--theme-danger-text, #b23b48)}.notebook-editor>.error-box{margin:6px 12px;padding:7px 10px;max-height:85px;overflow:auto;font-size:11px;flex-shrink:0}.notebook-recovery{display:flex;align-items:center;gap:10px;padding:0 12px 8px;flex-shrink:0}.notebook-recovery p{font-size:10px;margin:0;flex:1}.notebook-recovery .button{min-height:30px;font-size:10px;padding:6px 8px}.notebook-text-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--theme-surface, #fbfcff)}.notebook-text-actions .button{min-height:34px;padding:7px 10px;font-size:11px}.notebook-phone-drawing-note{color:var(--theme-muted, #65758d);font-size:11px}.notebook-text-workspace{display:block;min-height:0;flex:1}.notebook-text-workspace.has-link-picker{display:grid;grid-template-columns:minmax(0,1fr) 260px}.notebook-text-paper{display:flex;flex-direction:column;height:100%;min-width:0;min-height:0;gap:14px;padding:clamp(16px,3vw,34px);overflow:auto;background:var(--theme-surface, #fff)}.notebook-text-paper>textarea{flex:1;width:100%;min-height:340px;resize:none;border:0;border-radius:0;padding:0;background:transparent;color:var(--theme-text, #17243a);font:inherit;font-size:clamp(16px,1.6vw,19px);line-height:1.75}.notebook-text-paper>textarea:focus{outline:2px solid var(--theme-accent-text, #2563eb);outline-offset:6px}.notebook-text-paper>textarea::placeholder{color:var(--theme-subtle, #8b97ab)}.notebook-anchor-warning{margin:0;color:var(--theme-warning-text, #775c1b);font-size:11px}.notebook-text-links{min-height:0;overflow:auto;padding:18px;border-left:1px solid var(--border);background:var(--theme-surface, #fbfcff)}.notebook-text-links>section+section{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.notebook-text-links h3{margin-bottom:10px;font-size:12px}.notebook-text-links p{margin:0;color:var(--theme-muted, #65758d);font-size:11px;line-height:1.6}.notebook-existing-links{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--theme-surface, #fbfcff)}.notebook-existing-links>summary{cursor:pointer;color:var(--theme-muted, #65758d);font-size:11px;font-weight:600}.notebook-existing-links>section{margin-top:14px}.notebook-existing-links>section+section{padding-top:14px;border-top:1px solid var(--border)}.notebook-existing-links h3{font-size:12px}.notebook-legacy-content{padding:12px 14px;border:1px solid var(--theme-warning-border, #ead48a);border-radius:10px;background:var(--theme-warning-soft, #fff9df)}.notebook-legacy-content>summary{cursor:pointer;color:var(--theme-warning-text, #775c1b);font-size:11px;font-weight:700}.notebook-legacy-content>p,.notebook-legacy-content article p{margin:10px 0;color:var(--theme-muted, #65758d);font-size:11px;line-height:1.6;white-space:pre-wrap}.notebook-legacy-content article{margin:12px 0;padding-top:10px;border-top:1px solid var(--theme-warning-border, #ead48a)}.notebook-legacy-content article h3{font-size:11px}.notebook-legacy-content>.button{min-height:32px;padding:7px 10px;font-size:10px}.notebook-drawing-card{display:grid;grid-template-columns:minmax(160px,280px) 1fr;align-items:center;gap:16px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--theme-surface, #fbfcff)}.notebook-drawing-card>div{display:flex;flex-direction:column;gap:4px}.notebook-drawing-card strong{font-size:12px}.notebook-drawing-card span{color:var(--theme-muted, #65758d);font-size:10px;line-height:1.5}.notebook-drawing-preview{display:block;width:100%;height:130px;border:1px solid var(--border);border-radius:8px;background:var(--theme-surface, #fff)}.notebook-drawing-dialog{width:min(1080px,calc(100vw - 48px));height:min(820px,calc(100dvh - 48px));max-width:none;max-height:none;padding:0;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--theme-surface, #fff);color:var(--theme-text, #17243a);box-shadow:0 24px 80px #0f172a47}.notebook-drawing-dialog::backdrop{background:#0f172a94;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.notebook-drawing-dialog-content{display:flex;flex-direction:column;height:100%;min-height:0}.notebook-drawing-dialog-content>header,.notebook-drawing-dialog-content>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;flex-shrink:0}.notebook-drawing-dialog-content>header{border-bottom:1px solid var(--border)}.notebook-drawing-dialog-content>footer{justify-content:flex-end;border-top:1px solid var(--border)}.notebook-drawing-dialog-content h2{margin:2px 0 0;font-size:20px}.notebook-drawing-toolbar{display:flex;align-items:center;gap:6px;padding:9px 14px;overflow-x:auto;border-bottom:1px solid var(--border);flex-shrink:0}.notebook-drawing-toolbar>button{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--theme-muted, #65758d);font-size:11px}.notebook-drawing-toolbar>button:hover,.notebook-drawing-toolbar>button[aria-pressed=true]{background:var(--theme-accent-soft, #eaf2ff);color:var(--theme-accent-text, var(--blue))}.notebook-drawing-toolbar input[type=color]{width:34px;height:32px;padding:2px}.notebook-drawing-toolbar select{min-width:72px;padding:7px;font-size:11px}.notebook-drawing-dialog .notebook-canvas-viewport{flex:1;min-height:0}.notebook-toolbar{display:flex;align-items:center;gap:4px;padding:8px 12px;border-bottom:1px solid var(--border);overflow-x:auto;flex-shrink:0}.notebook-toolbar>button{border:0;background:none;padding:8px;border-radius:7px;flex-shrink:0;color:var(--theme-muted, #6e809b)}.notebook-toolbar>button:hover,.notebook-toolbar>button[aria-pressed=true]{background:var(--theme-accent-soft, #eaf2ff);color:var(--theme-accent-text, var(--blue))}.notebook-toolbar-divider{width:1px;height:22px;background:var(--border);margin:0 4px;flex-shrink:0}.notebook-toolbar select{padding:6px 3px;font-size:11px;border-radius:7px;flex-shrink:0}.notebook-toolbar input[type=color]{width:32px;height:30px;padding:2px;flex-shrink:0}.notebook-editor-workspace{display:grid;grid-template-columns:minmax(0,1fr) 245px;min-height:0;flex:1}.notebook-canvas-viewport{overflow:auto;min-width:0;min-height:0;overscroll-behavior:contain;background:#fbfcff}.notebook-canvas{display:block;touch-action:none;-webkit-user-select:none;user-select:none}.notebook-drawing-limit{position:sticky;left:8px;top:8px;width:min(340px,95%);background:var(--theme-warning-soft, #fff4bc);color:var(--theme-warning-text, #775c1b);border-radius:8px;padding:10px;font-size:11px;margin:0;z-index:1}.notebook-canvas.tool-pen{cursor:crosshair}.notebook-canvas.tool-hand{cursor:grab}.notebook-canvas g:focus-visible{outline:3px solid var(--theme-accent-text, #9dbef8)}.notebook-canvas-text{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;line-height:1.5;height:100%;overflow:hidden}.notebook-canvas-text.is-mind{text-align:center;padding-top:20px;font-weight:600}.notebook-placeholder{color:var(--theme-subtle, #8b97ab);font-size:14px}.notebook-inline-link{display:inline;padding:0;border:0;border-radius:2px;background:var(--theme-accent-soft, #dfeaff);color:var(--theme-accent-text, #174cc1);text-decoration:underline;font:inherit;white-space:pre-wrap;text-align:inherit}.notebook-element-link{border:1px solid var(--theme-accent-border, #c3d8fa);background:var(--theme-surface, white);color:var(--theme-accent-text, var(--blue));border-radius:6px;padding:1px 6px;font-size:16px}.notebook-properties{overflow:auto;min-height:0;border-left:1px solid var(--border);padding:15px}.notebook-properties h3{font-size:12px;margin-bottom:12px;letter-spacing:-.01em}.notebook-properties label{font-size:11px;margin-bottom:12px;gap:5px}.notebook-properties input,.notebook-properties select,.notebook-properties textarea{font-size:11px;padding:7px;border-radius:7px;min-width:0}.notebook-properties textarea{font-size:13px}.notebook-properties .button{font-size:10px;min-height:32px;padding:7px 10px;gap:6px;width:100%}.notebook-properties .button-row{gap:6px}.notebook-properties .error-box{display:block;padding:8px;font-size:11px}.notebook-hint,.notebook-inspector>p{color:var(--theme-muted, #6a7b95);font-size:11px;line-height:1.7;margin:12px 0}.notebook-number-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px}.notebook-number-grid input{width:100%}.notebook-number-grid input[type=color]{height:32px;padding:2px}.notebook-note-links{border-bottom:1px solid var(--border);padding-bottom:16px;margin-bottom:16px}.notebook-links{list-style:none;padding:0;margin:8px 0 0}.notebook-links li{display:flex;gap:3px;align-items:flex-start;margin:5px 0}.notebook-links button{display:flex;gap:4px;background:var(--theme-accent-soft, #f3f7ff);border:0;border-radius:6px;padding:6px;font-size:10px;color:var(--theme-accent-text, #41689f);text-align:left;overflow-wrap:anywhere}.notebook-links button:first-child{flex:1;min-width:0}.notebook-links small{display:block;font-size:9px;margin-top:4px}.notebook-section-title,.notebook-connection{display:flex;align-items:center;justify-content:space-between;gap:6px}.notebook-section-title h3{margin:0}.notebook-section-title{margin-bottom:12px}.notebook-mind-controls,.notebook-page-settings{padding-top:15px;border-top:1px solid var(--border);margin-top:16px}.notebook-mind-controls label{margin-top:12px}.notebook-connection{font-size:11px;margin-top:6px;overflow-wrap:anywhere}.notebook-page-settings summary{font-size:11px;color:var(--theme-muted, #6a7b95);cursor:pointer;margin-bottom:15px}.notebook-element-list{list-style:none;padding:0}.notebook-element-list button{width:100%;text-align:left;font-size:11px;padding:7px;border:0;background:transparent;border-radius:6px;overflow-wrap:anywhere}.notebook-element-list button[aria-pressed=true]{background:var(--theme-accent-soft, #eaf2ff);color:var(--theme-accent-text, var(--blue))}.notebook-lesson-picker blockquote{font-size:11px;line-height:1.6;margin:12px 0;padding:10px;border-left:2px solid var(--theme-accent-border, #9dbcf3);background:var(--theme-accent-soft, #f5f8ff);max-height:160px;overflow:auto;white-space:pre-wrap}.notebook-linked-paragraph{background:var(--theme-warning-soft, #fff4bc);border-radius:6px;outline:3px solid var(--theme-warning-text, #f4db79);scroll-margin:90px}@container notebook (max-width: 620px){.notebook-library{padding:18px}.notebook-library-heading{flex-direction:column;gap:12px}.notebook-editor-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(120px,1fr) minmax(100px,42%)}.notebook-text-workspace.has-link-picker{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(330px,1fr) auto}.notebook-text-links{max-height:230px;border-left:0;border-top:1px solid var(--border)}.notebook-text-paper{padding:18px}.notebook-drawing-card{grid-template-columns:minmax(0,1fr)}.notebook-properties{border-left:0;border-top:1px solid var(--border)}.notebook-number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notebook-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.notebook-recovery p{display:none}.notebook-note-header{gap:6px;padding:10px}.notebook-note-header>input{flex-basis:calc(100% - 48px)}.notebook-save-status{margin-right:auto}}@media (max-width: 767px){.notebook-drawing-dialog{display:none!important}}.notebook-topbar-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--theme-accent-border, #d9e5fa);background:var(--theme-accent-soft, #f5f8ff);color:var(--theme-accent-text, #315fc2);border-radius:10px;padding:10px 13px;font-size:12px;font-weight:600}.notebook-topbar-button:hover{background:var(--theme-accent-soft, #eaf1ff)}.notebook-topbar-button:focus-visible{outline:2px solid var(--theme-accent-text, #2463eb);outline-offset:3px}.python-lab{border:1px solid var(--theme-border, #dce5f2);border-radius:14px;background:var(--theme-surface, white);overflow:hidden}.python-projects-page,.python-project-page{display:grid;gap:20px;min-width:0}.python-projects-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.python-projects-heading>div,.python-project-detail-heading{display:grid;gap:7px}.python-projects-heading h1,.python-project-detail-heading h1,.python-projects-heading p{margin:0}.python-projects-heading .python-project-limits{color:var(--theme-accent-text, #4d6f9f);font-size:11px}.python-project-limits strong{font-weight:750}.python-create-project{display:flex;align-items:flex-end;gap:10px;padding:16px;border:1px solid var(--theme-border, #dce5f2);border-radius:12px;background:var(--theme-surface-soft, #f8faff)}.python-create-project label{flex:1;min-width:180px;font-size:11px}.python-create-project input{margin-top:6px}.python-project-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--theme-border, #dce5f2);border-radius:14px;background:var(--theme-surface, #fff);overflow:hidden}.python-project-open{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px;color:inherit}.python-project-open h2,.python-project-open p{margin:0}.python-project-open h2{font-size:15px;overflow-wrap:anywhere}.python-project-open p,.python-project-open small{color:var(--theme-muted, #6e7890);font-size:11px}.python-project-open .python-project-size-detail{display:block;margin-top:5px;color:var(--theme-accent-text, #527caf);font-weight:650}.python-project-delete{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:0;border-top:1px solid var(--theme-border, #dce5f2);background:transparent;color:var(--danger, #b42318);cursor:pointer}.python-project-delete:disabled{cursor:wait;opacity:.6}.python-project-terminal-shell{min-width:0;border-radius:16px;box-shadow:0 18px 50px #1e375a1f}.python-project-page{min-height:calc(100vh - 104px);grid-template-rows:auto minmax(0,1fr);gap:10px}.python-project-detail-heading{grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;min-width:0}.python-project-detail-heading>a{font-size:11px;white-space:nowrap}.python-project-detail-heading .eyebrow{padding-left:10px;border-left:1px solid var(--theme-border, #dce5f2);font-size:7px}.python-project-detail-heading h1{min-width:0;overflow:hidden;font-size:17px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.python-project-terminal-shell,.python-project-terminal-shell .python-lab{min-height:calc(100vh - 132px)}.python-project-terminal-shell .python-lab{display:flex;flex-direction:column}.python-project-terminal-shell .lab-ide-grid{flex:1;min-height:390px}.code-task{display:flex;align-items:flex-start;gap:13px;background:var(--theme-accent-soft, #f0f6ff);padding:21px;color:var(--theme-accent-text, #4d7bbf);border-bottom:1px solid var(--border)}.code-task strong{font-size:13px}.code-task p{font-size:12px;margin:6px 0 0;color:var(--theme-subtle, #6d88af)}.lab-toolbar{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;gap:12px;background:var(--theme-surface, #fff);border-bottom:1px solid var(--border)}.lab-title{display:flex;align-items:center;gap:8px;font-size:12px}.lab-title .muted{font-size:10px}.python-dot{width:7px;height:7px;background:var(--theme-accent-soft-strong, #5a94df);border-radius:50%}.lab-actions{display:flex;gap:8px;align-items:center}.lab-tool-actions{display:flex;align-items:center;gap:3px;padding-right:8px;border-right:1px solid var(--theme-border, #dce5f2)}.lab-tool-actions button{display:inline-flex;align-items:center;gap:5px;min-height:31px;padding:6px 8px;border:0;border-radius:7px;background:transparent;color:var(--theme-muted, #71809a);font-size:9px}.lab-tool-actions button:hover,.lab-tool-actions button.active{background:var(--theme-accent-soft, #edf4ff);color:var(--theme-accent-text, #4e7aba)}.lab-actions .button{font-size:11px;min-height:35px;padding:8px 13px}.lab-ide-grid{display:flex;min-width:0}.lab-workspace{display:flex;flex:1;min-width:0;min-height:370px}.file-sidebar{width:165px;flex-shrink:0;border-right:1px solid var(--border);padding:14px 8px;background:var(--theme-surface, #fbfcff);display:flex;flex-direction:column}.files-heading{display:flex;justify-content:space-between;align-items:center;padding-left:9px;font-size:8px;letter-spacing:1.5px;color:var(--theme-subtle, #8a9bb2);font-weight:650;margin-bottom:10px}.file-item{display:flex;align-items:center;gap:6px;background:none;border:0;border-radius:6px;padding:9px 8px;font-size:10px;color:var(--theme-muted, #7a8ca7);text-align:left;min-height:33px}.file-item>span{overflow:hidden;text-overflow:ellipsis}.file-item.selected{background:var(--theme-accent-soft, #edf3fe);color:var(--theme-accent-text, #4e7aba)}.file-item .entry-dot{width:4px;height:4px;border-radius:50%;background:var(--theme-success-soft, #77b7a7);margin-left:auto;flex-shrink:0}.file-tools{display:flex;justify-content:space-around;gap:6px;border-top:1px solid var(--border);margin-top:18px;padding-top:13px}.file-tools button{border:0;background:none;color:var(--theme-subtle, #97a7bc);padding:4px}.export-project{border:0;background:none;display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;color:var(--theme-subtle, #8da1bf);margin-top:auto;padding:24px 0 5px}.editor-pane{min-width:0;flex:1;display:flex;flex-direction:column}.editor-pane .code-editor{flex:1;min-height:0}.python-learning-tools{width:285px;flex:0 0 285px;border-left:1px solid var(--theme-border, #dce5f2);background:var(--theme-surface, #fbfcff);color:var(--theme-muted, #687892);overflow:auto}.python-tools-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;padding:9px 12px;border-bottom:1px solid var(--theme-border, #dce5f2);background:var(--theme-surface, #fbfcff)}.python-tools-heading>span,.python-tools-heading button,.python-help-panel a,.python-add-template{display:flex;align-items:center;gap:7px}.python-tools-heading>span{color:var(--theme-text, #34445f);font-size:11px;font-weight:700}.python-tools-heading button{padding:4px;border:0;background:transparent;color:var(--theme-muted, #71809a)}.python-library-list,.python-help-panel,.python-ml-panel{display:flex;flex-direction:column;gap:10px;padding:13px;font-size:10px;line-height:1.55}.python-library-list>p,.python-help-panel>p,.python-ml-panel>p,.python-ml-panel ol{margin:0}.python-library-list article{display:grid;gap:5px;padding:10px;border:1px solid var(--theme-border, #dce5f2);border-radius:9px;background:var(--theme-surface, #fff)}.python-library-list article>div{display:flex;align-items:center;justify-content:space-between;gap:6px}.python-library-list code,.python-help-panel pre{overflow:auto;margin:0;padding:7px;border-radius:6px;background:var(--theme-surface-soft, #f1f5fb);font:9px/1.5 Consolas,monospace}.python-library-list small,.python-ml-panel small{color:var(--theme-subtle, #8b99af)}.python-library-detected{display:inline-flex;align-items:center;gap:3px;color:var(--theme-success-text, #438d73);font-size:8px}.python-help-panel details{padding:8px;border:1px solid var(--theme-border, #dce5f2);border-radius:8px;background:var(--theme-surface, #fff)}.python-help-panel summary{cursor:pointer;font-weight:650}.python-help-panel pre{margin-top:8px;white-space:pre-wrap}.python-help-panel a{justify-content:space-between;padding:8px;border-radius:7px;color:var(--theme-accent-text, #4e7aba)}.python-ml-panel ol{padding-left:20px}.python-add-template{justify-content:center;min-height:38px;border:0;border-radius:8px;background:var(--theme-accent-text, #3b73c5);color:#fff;font-size:10px;font-weight:700}.editor-tab{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);height:40px;padding:0 15px;gap:7px}.editor-tab>span{font-size:10px;display:flex;align-items:center;gap:7px;color:var(--theme-subtle, #7e93b2);min-width:0;overflow:hidden;text-overflow:ellipsis}.editor-tab i{width:5px;height:5px;background:var(--theme-warning-soft, #dfbd72);border-radius:50%;flex-shrink:0}.editor-tab label{flex-direction:row;align-items:center;font-size:9px;font-weight:400;color:var(--theme-subtle, #91a1b8)}.editor-tab select{padding:2px 6px;border:0;font-size:9px;color:var(--theme-subtle, #7990b1);background:var(--theme-surface, #f6f9fd);max-width:160px}.file-name-form{display:flex;align-items:end;gap:12px;background:var(--theme-surface, #f7faff);padding:18px;border-top:1px solid var(--border)}.file-name-form label{flex:1;font-size:11px}.file-name-form .button{font-size:10px;min-height:39px}.console-grid{display:block;border-top:1px solid var(--border)}.console-pane{background:var(--theme-surface, #fbfdff);min-width:0;padding:16px}.python-project-size{padding-left:9px;border-left:1px solid var(--theme-border, #dce5f2);color:var(--theme-accent-text, #527caf);font-size:9px;white-space:nowrap}.python-project-size.exceeded{color:var(--theme-danger-text, #b54755);font-weight:700}.console-heading{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1px;color:var(--theme-subtle, #8499b6);gap:10px}.console-heading>span{display:flex;align-items:center;gap:7px}.console-input-toggle{display:inline-flex;align-items:center;gap:5px;margin-left:auto;padding:5px 7px;border:1px solid var(--theme-border, #dce5f2);border-radius:7px;background:var(--theme-surface, #fff);color:var(--theme-accent-text, #527caf);font:inherit;letter-spacing:0;cursor:pointer}.console-input{display:grid;gap:6px;margin-top:10px;color:var(--theme-subtle, #8499b6);font-size:8px;letter-spacing:1px}.console-input textarea{min-height:52px;padding:9px 10px;border:1px solid var(--theme-border, #dce5f2);border-radius:8px;background:var(--theme-surface, #fff);color:var(--theme-accent-text, #5f779e);font:11px/1.6 Consolas,monospace;letter-spacing:0;resize:vertical}.console-interactive-input{display:grid;gap:7px;margin-top:11px;padding:11px;border:1px solid var(--theme-accent-border, #bdd3ee);border-radius:9px;background:var(--theme-accent-soft, #f2f7fd);color:var(--theme-accent-text, #527caf);font-size:10px}.console-interactive-input>div{display:flex;align-items:stretch;gap:8px}.console-interactive-input input{min-width:0;flex:1;padding:9px 10px;border:1px solid var(--theme-border, #dce5f2);border-radius:8px;background:var(--theme-surface, #fff);color:var(--theme-accent-text, #5f779e);font:12px/1.5 Consolas,monospace}.console-interactive-input input:focus-visible{outline:2px solid var(--theme-accent, #5b8ecb);outline-offset:2px}.console-interactive-input .button{min-height:38px;padding:8px 13px}.console-interactive-input small{color:var(--theme-subtle, #8499b6);font-size:9px}.run-success{color:var(--theme-success-text, #58a990);letter-spacing:0;font-size:8px}.run-status{color:var(--theme-accent-text, #527caf);letter-spacing:0;font-size:8px}.run-timeout{color:var(--theme-danger-text, #b54755);letter-spacing:0;font-size:8px}.console-pane>pre{color:var(--theme-subtle, #7693b4);font:11px/1.9 Consolas,monospace;min-height:90px;max-height:270px;overflow:auto;white-space:pre-wrap}.console-pane>pre.console-error{color:var(--theme-danger-text, #bc7380)}.console-pane figure{margin:12px 0}.console-pane img{max-width:100%;height:auto}.console-pane figcaption{font-size:10px;color:var(--theme-subtle, #8a9db8)}.lab-status{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 17px;border-top:1px solid var(--border);font-size:9px;color:var(--theme-subtle, #8fa0b7);background:var(--theme-surface, #fff)}.lab-status .button{font-size:9px;min-height:32px;padding:7px 10px}.python-sandbox{display:none}.python-lab>.error-box{margin:12px}.test-results{padding:15px;display:flex;flex-direction:column;gap:8px}.test-results details{font-size:11px;padding:12px;border:1px solid var(--theme-border, #e0ebe6);border-radius:9px;color:var(--theme-success-text, #518f79);background:var(--theme-surface-soft, #f3faf6)}.test-results .failed{color:var(--theme-warning-text, #b58150);background:var(--theme-warning-soft, #fffaf3);border-color:var(--theme-warning-border, #f0e3d5)}.test-results pre{font:11px/1.7 monospace}.code-input{font-family:Consolas,monospace;font-size:12px}.progress-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.progress-summary>div{display:flex;align-items:center;gap:18px;border:1px solid var(--border);padding:25px;border-radius:14px;background:var(--theme-surface, #fff)}.progress-summary svg{color:var(--theme-accent-text, #86a8dd)}.progress-summary strong{font-size:30px;font-family:Manrope,sans-serif}.progress-summary span{font-size:11px;color:var(--theme-subtle, #90a0b7)}.progress-columns{display:grid;grid-template-columns:1.6fr 1fr;gap:25px}.progress-columns>aside{min-width:0}.learned-panel{min-width:0}.learned-panel>.section-heading svg{color:var(--theme-success-text, #398260)}.learned-entry{padding:24px 0;border-bottom:1px solid var(--border)}.learned-entry:last-child{border-bottom:0;padding-bottom:0}.learned-meta,.learned-context{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px}.learned-meta time,.learned-context{color:var(--theme-muted, #61718a);font-size:12px;line-height:1.6}.learned-points{display:grid;gap:12px;margin:18px 0;padding-left:22px;color:var(--theme-text, #354760);font-size:14px;line-height:1.8;overflow-wrap:anywhere}.learned-points li::marker{color:var(--theme-success-text, #398260)}.learned-notice{padding:14px;border-radius:10px;background:var(--theme-accent-soft, #f1f5fc);color:var(--theme-muted, #536681);font-size:13px}.learned-panel>.button{margin-top:22px}.mastery-row{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--border);padding:19px 0;color:var(--theme-muted, #536681)}.mastery-row:last-child{border:0}.mastery-row>div:first-child{flex:1}.mastery-row strong{font-size:12px}.mastery-row>div>span:not(.mastery-score){display:block;font-size:9px;color:var(--theme-subtle, #96a4b9);margin-top:6px}.mastery-row>div:last-child{min-width:95px;text-align:right}.mastery-score{display:block;font-size:13px;color:var(--theme-subtle, #92a3bd);margin-bottom:7px}.mastery-score.good{color:var(--theme-success-text, #55aa87)}.recommendation{display:flex;align-items:center;gap:13px;padding:20px 0;border-bottom:1px solid var(--border);color:var(--theme-muted, #7288a8)}.recommendation:last-child{border:0}.recommendation>span{display:flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:8px;background:var(--theme-accent-soft, #f1f5fc);font-size:10px}.recommendation>div{flex:1}.recommendation strong{font-size:11px}.recommendation small{display:block;margin-top:6px;font-size:9px}.trend-panel{margin-top:25px}.trend-chart{display:flex;align-items:flex-end;gap:10px;justify-content:space-around;height:165px;margin-top:30px}.trend-chart>div{display:flex;align-items:center;flex-direction:column;gap:8px;min-width:0}.trend-chart span{font-size:8px;color:var(--theme-subtle, #88a0c4)}.trend-chart i{display:block;width:17px;background:linear-gradient(var(--theme-accent-soft, #87acf0),var(--theme-accent-soft, #d1e0fc));border-radius:4px}.trend-chart small{font-size:7px;white-space:nowrap;color:var(--theme-subtle, #a4b2c7)}.trend-panel>p{font-size:10px}.account-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.account-identity{display:flex;align-items:center;gap:20px;margin-bottom:25px}.large-avatar{display:flex;align-items:center;justify-content:center;width:70px;height:70px;background:var(--theme-accent-soft, #e2edff);color:var(--theme-accent-text, #6890cc);border-radius:50%;font-size:30px}.account-identity h2{font-size:21px}.account-identity p{font-size:11px;margin:6px 0 9px}.account-grid dl{border-top:1px solid var(--border);padding-top:15px;margin-bottom:25px}.account-grid dl>div{display:flex;justify-content:space-between;font-size:12px;margin:15px 0}.account-grid dt{color:var(--theme-subtle, #9aa8bb)}.account-grid dd{color:var(--theme-accent-text, #5e7698)}.account-grid .panel>h2{margin:20px 0 12px}.account-grid .panel>p{font-size:12px;margin-bottom:20px}.account-data{display:flex;align-items:center;gap:20px;margin-top:25px}.account-data>div{flex:1}.account-data h2{font-size:18px}.account-data p,.account-data .button{font-size:11px}.pricing-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;max-width:890px;margin:40px auto}.pricing-card{background:var(--theme-surface, white);border:1px solid var(--border);border-radius:21px;padding:34px;display:flex;flex-direction:column}.pricing-card.plus{border:2px solid var(--theme-accent-border, #79a4f4);box-shadow:0 14px 30px var(--theme-accent-shadow, #3a74d813);position:relative}.pricing-card h2{font-size:26px;margin:22px 0 6px}.pricing-card>p{font-size:12px;margin:5px 0 22px}.price{font-size:52px;font-family:Manrope,sans-serif;font-weight:800;color:var(--theme-accent-text, #244777);letter-spacing:-2px}.price>span{font:12px DM Sans,sans-serif;color:var(--theme-subtle, #90a0b8);letter-spacing:0;margin-left:10px}.pricing-card ul{list-style:none;padding:0;margin:25px 0 35px;flex:1}.pricing-card li{display:flex;gap:11px;align-items:flex-start;color:var(--theme-muted, #7a8da9);font-size:12px;line-height:1.6;margin:17px 0}.pricing-card li svg{color:var(--theme-success-text, #77aa95);margin-top:1px}.pricing-top{display:flex;justify-content:space-between;align-items:center;color:var(--theme-subtle, #9ba9e3)}.pricing-card small{font-size:10px;line-height:1.8;margin-top:18px}.pricing-security{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;margin:30px 0 45px}.pricing-faq{max-width:890px;margin:auto}.pricing-faq h2{margin-bottom:20px}.pricing-faq details{padding:22px;background:var(--theme-surface, white);border:1px solid var(--border);border-radius:12px;margin:12px 0}.pricing-faq summary{font-size:14px;color:var(--theme-accent-text, #617ba0);font-weight:600;cursor:pointer}.pricing-faq p{font-size:12px}.sources-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:25px}.sources-grid h2{font-size:18px;line-height:1.6;margin:17px 0 8px}.sources-grid p{font-size:12px}.sources-grid small{font-size:10px}.source-open{display:flex;align-items:center;gap:8px;font-size:12px;margin-top:22px}.data-info{max-width:850px}.data-info h2{font-size:20px;margin:25px 0 12px}.data-info p{font-size:13px;line-height:1.9}.history-intro{display:flex;align-items:center;gap:22px;padding:26px 30px;margin-bottom:26px;border:1px solid var(--theme-accent-border, #dbe6ff);border-radius:20px;background:linear-gradient(115deg,var(--theme-accent-soft, #ecf3ff),var(--theme-purple-soft, #f5f1ff))}.history-intro-icon{display:grid;place-items:center;flex-shrink:0;width:62px;height:62px;color:var(--theme-accent-text, #2861ed);border-radius:18px;background:var(--theme-surface, #fff)}.history-intro h2{margin:0 0 8px;font-size:21px}.history-intro p{margin:0;max-width:720px;color:var(--theme-muted, #667896);font-size:14px;line-height:1.65}.history-tabs{display:flex;gap:8px;padding:6px;margin:0 0 22px;border-radius:14px;background:var(--theme-accent-soft, #eaf0f9)}.history-tabs button{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;min-width:0;padding:15px 12px;border:0;border-radius:10px;background:transparent;color:var(--theme-muted, #657795);font-weight:700;font-size:13px;cursor:pointer}.history-tabs button.selected{background:var(--theme-surface, #fff);color:var(--theme-accent-text, #245eec);box-shadow:0 3px 10px var(--theme-accent-shadow, #1836630b)}.history-tabs button:focus-visible{outline:3px solid var(--theme-accent-text, #89afff);outline-offset:2px}.history-result-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:25px 0 18px}.history-result-heading h2{margin:0;font-size:21px}.history-result-heading>span,.history-version,.history-date{color:var(--theme-muted, #72829c);font-size:12px}.history-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.history-card{min-width:0;padding:24px;border:1px solid var(--theme-border, #e2e9f4);border-radius:18px;background:var(--theme-surface, #fff);box-shadow:0 6px 20px var(--theme-accent-shadow, #1d385704)}.history-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.history-card-icon{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;background:var(--theme-accent-soft, #edf3ff);color:var(--theme-accent-text, #2861ed);border-radius:13px}.history-status{display:inline-flex;align-items:center;gap:5px;color:var(--theme-success-text, #248861);background:var(--theme-success-soft, #edf9f2);border-radius:20px;padding:6px 10px;font-size:11px;font-weight:700}.history-status.needs-review{color:var(--theme-warning-text, #b16a20);background:var(--theme-warning-soft, #fff5e7)}.history-status.pending{color:var(--theme-muted, #6d6c98);background:var(--theme-surface-soft, #f0eff8)}.history-card h3{margin:10px 0 12px;font-size:19px;overflow-wrap:anywhere}.history-card h4{overflow-wrap:anywhere}.history-card .eyebrow{font-size:10px}.history-evidence{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.history-evidence span{padding:5px 9px;border-radius:7px;background:var(--theme-surface, #f3f6fc);color:var(--theme-muted, #536784);font-size:11px}.history-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--theme-border, #edf0f6)}.history-card-footer>span{color:var(--theme-muted, #72829c);font-size:11px}.history-card-footer a{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700}.history-repeat{margin-top:16px}.history-repeat .button{white-space:normal}.history-exercise-context>p{margin:12px 0 6px;font-size:13px;overflow-wrap:anywhere}.history-exercise-context>.history-version{margin:0 0 12px;font-size:12px}.history-exercise-card .exercise-prompt{font-size:15px;line-height:1.65;margin:12px 0 16px}.history-exercise-card .history-card-top{margin-bottom:12px}.history-exercise-card .exercise-prompt-text{font-size:15px;line-height:1.65;margin:12px 0 16px}@media (max-width: 650px){.history-intro{padding:20px;gap:14px;align-items:flex-start}.history-intro-icon{width:44px;height:44px;border-radius:12px}.history-intro-icon svg{width:23px}.history-intro h2{font-size:17px}.history-intro p{font-size:12px}.history-tabs{gap:4px;padding:4px}.history-tabs button{flex-direction:column;gap:6px;padding:12px 5px;font-size:11px}.history-card-grid{grid-template-columns:minmax(0,1fr)}.history-card{padding:20px}.history-result-heading{align-items:flex-start;flex-direction:column;gap:6px}}.feature-lock{min-width:0}.feature-lock.is-locked{margin:16px 0}.feature-lock-overlay{display:flex;align-items:center;gap:14px;padding:16px 20px;border:1px solid var(--theme-border, #dde7fa);border-radius:14px;background:var(--theme-accent-soft, #f3f7ff);color:var(--theme-text, #19243c)}.feature-lock-overlay>svg{color:var(--theme-accent-text, var(--blue));flex-shrink:0}.feature-lock-overlay>div{flex:1;min-width:0}.feature-lock-overlay strong{font-size:13px}.feature-lock-overlay p{margin:4px 0 0;font-size:11px}.feature-lock-overlay .button{flex-shrink:0;font-size:11px;padding:10px 14px}@media (max-width: 560px){.feature-lock-overlay{flex-wrap:wrap;padding:14px;gap:10px}.feature-lock-overlay>div{flex-basis:calc(100% - 36px)}.feature-lock-overlay .button{margin-left:31px}}.contextual-tool-buttons{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:20;display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px;max-width:calc(100vw - 32px)}.ai-floating-button,.python-floating-button{display:flex;align-items:center;gap:10px;border:1px solid var(--theme-accent-border, #6b8cfa);background:linear-gradient(125deg,var(--theme-accent-soft-strong, #295be5),var(--theme-accent-soft-strong, #6256d8));color:var(--theme-on-accent, white);border-radius:50px;padding:16px 22px;box-shadow:0 8px 28px var(--theme-accent-shadow, #3156c340);font:inherit;font-size:13px;font-weight:650;cursor:pointer}.python-floating-button{background:var(--theme-surface, white);color:var(--theme-accent-text, #295be5)}.ai-floating-button:hover{box-shadow:0 10px 34px var(--theme-accent-shadow, #3156c359)}.ai-dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--theme-accent-border, #dae5fb);border-radius:22px;box-shadow:0 24px 80px var(--theme-accent-shadow, #17285040);color:var(--theme-text, #19243c);background:var(--theme-surface, white);overflow:hidden}.ai-dialog[open]{display:flex;flex-direction:column}.ai-dialog--chat{height:min(740px,calc(100dvh - 40px))}.floating-dialog{position:fixed;margin:0;min-width:0;min-height:0;max-width:none;max-height:none}.floating-dialog-header{padding:12px 16px;gap:8px}.floating-dialog-move{display:flex;align-items:center;gap:10px;min-width:0;flex:1;border:0;padding:4px 0;background:none;color:inherit;font:inherit;text-align:left;cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.floating-dialog-move>svg{flex-shrink:0;color:var(--theme-muted, #6e7890)}.floating-dialog-move h2{font-size:17px}.floating-dialog-actions{display:flex;gap:4px;flex-shrink:0}.floating-dialog-resize{position:absolute;right:0;bottom:0;width:24px;height:24px;display:grid;place-items:center;padding:0;border:0;border-radius:8px 0 0;color:var(--theme-muted, #6e7890);background:var(--theme-surface-soft, #f3f6fb);cursor:nwse-resize;touch-action:none}.floating-dialog-move:focus-visible,.floating-dialog-resize:focus-visible{outline:2px solid var(--theme-accent-text, #295be5);outline-offset:-2px}.python-terminal{height:100%;display:flex;flex-direction:column;padding:12px 16px 24px;gap:8px;overflow:auto}.python-terminal>div{flex:1;min-height:0}.python-terminal .tutor-code-block{height:100%;display:flex;flex-direction:column;margin:0;overflow-y:auto}.python-terminal .code-editor{flex:1;min-height:140px}.python-terminal .tutor-code-toolbar,.python-terminal .tutor-code-controls,.python-terminal .tutor-code-result{flex-shrink:0}.ai-dialog::backdrop{background:var(--theme-backdrop, #17294d66);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ai-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid var(--theme-border, #e9eef8);flex-shrink:0}.ai-dialog-header h2{font-size:20px;margin:5px 0 0}.ai-dialog-header .eyebrow{font-size:9px;letter-spacing:.14em}.ai-dialog-content{padding:20px;min-height:0;overflow-y:auto}.ai-dialog--chat .ai-dialog-content{flex:1;padding:0;overflow:hidden}.ai-dialog--chat .ai-dialog-content>.feature-lock,.ai-dialog--chat .feature-lock-content{height:100%;min-height:0}.tutor-chat.tutor-panel{display:flex;flex-direction:column;height:100%;min-height:0;padding:0;border:0;border-radius:0}.tutor-chat .tutor-header{flex-shrink:0;padding:14px 20px;margin:0;border-bottom:1px solid var(--theme-border, #e9eef8)}.tutor-chat .tutor-header>span:first-child{padding:9px}.tutor-chat .tutor-header h3{margin:0;font-size:14px}.tutor-chat .tutor-header p{font-size:11px}.tutor-chat-log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:20px}.tutor-chat-welcome{padding:32px 18px;text-align:center;color:var(--theme-muted, #6e7890)}.tutor-chat-welcome>svg{color:var(--theme-purple-text, #7157c9)}.tutor-chat-welcome h4{font-size:20px;color:var(--theme-text, #19243c);margin:16px 0 10px}.tutor-chat-welcome p{max-width:400px;margin:0 auto;font-size:13px;line-height:1.7}.tutor-chat-turn+.tutor-chat-turn{margin-top:24px}.tutor-chat-message{max-width:92%;padding:14px 16px;border-radius:16px;overflow-wrap:anywhere}.tutor-chat-message--user{width:fit-content;margin-left:auto;background:var(--theme-accent-soft, #edf3ff);border-bottom-right-radius:5px}.tutor-chat-message--assistant{margin-top:16px;background:var(--theme-surface, white);border:1px solid var(--theme-border, #e9eef8);border-bottom-left-radius:5px}.tutor-chat-author{display:flex;align-items:center;gap:6px;color:var(--theme-muted, #6e7890);font-size:10px;font-weight:650}.tutor-chat-message>p{white-space:pre-wrap;font-size:13px;line-height:1.8;margin:9px 0 0}.tutor-message-content>p{white-space:pre-wrap;font-size:13px;line-height:1.8;margin:9px 0 0}.tutor-message-content>p>code{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.93em;padding:2px 5px;border-radius:4px;background:var(--theme-surface-soft, #f3f6fb);color:var(--theme-accent-text, #295be5)}.tutor-message-content{overflow-wrap:anywhere}.tutor-message-content :is(ul,ol){padding-left:24px;font-size:13px;line-height:1.8}.tutor-message-content :is(h1,h2,h3,h4,h5,h6){margin:14px 0 7px;font-size:15px;line-height:1.45}.tutor-message-content blockquote{margin:12px 0;padding:4px 14px;border-left:3px solid var(--theme-border, #dce5f2)}.tutor-message-content :is(li,p,td,th)>code{font-family:Consolas,monospace;background:var(--theme-surface-soft, #f3f6fb);padding:2px 5px;border-radius:4px}.tutor-markdown-table{overflow-x:auto;margin:12px 0}.tutor-markdown-table table{border-collapse:collapse;font-size:12px}.tutor-markdown-table :is(th,td){padding:7px 10px;border:1px solid var(--theme-border, #dce5f2);text-align:left}.python-terminal .python-lab{min-width:0}.python-terminal .lab-toolbar,.python-terminal .lab-actions{flex-wrap:wrap}.python-terminal{container-type:inline-size}@container (max-width: 540px){.python-terminal .lab-workspace{flex-direction:column}.python-terminal .file-sidebar{width:auto;flex-direction:row;flex-wrap:wrap;gap:6px;border-right:0;border-bottom:1px solid var(--theme-border, #dce5f2)}.python-terminal .files-heading{flex-basis:100%}.python-terminal .file-tools{margin-top:0;padding-top:0;border:0}.python-terminal .export-project{margin-top:0;padding:6px}.python-terminal .console-grid{grid-template-columns:1fr}.python-terminal .lab-status{flex-wrap:wrap}}.tutor-chat-message:has(.tutor-code-block){width:92%;min-width:0}.tutor-code-block{min-width:0;margin-top:12px;border:1px solid var(--theme-border, #dce5f2);border-radius:10px;background:var(--theme-surface, white);overflow:hidden}.tutor-code-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 10px;border-bottom:1px solid var(--theme-border, #dce5f2);background:var(--theme-surface-soft, #f3f6fb);font-size:11px}.tutor-code-toolbar>span{font-weight:650}.tutor-code-toolbar>div{display:flex;flex-wrap:wrap;gap:6px}.tutor-code-toolbar button{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:5px 8px;border:1px solid var(--theme-border, #dce5f2);border-radius:6px;background:var(--theme-surface, white);color:var(--theme-accent-text, #295be5);font:inherit;cursor:pointer}.tutor-code-toolbar button:disabled{opacity:.5;cursor:not-allowed}.tutor-code-block .code-editor:focus-within{outline:2px solid var(--theme-accent-text, #295be5);outline-offset:-2px}.tutor-code-toolbar button:focus-visible,.tutor-code-input-toggle:focus-visible,.tutor-code-result pre:focus-visible,.tutor-code-plain:focus-visible{outline:2px solid var(--theme-accent-text, #295be5);outline-offset:-2px}.tutor-code-controls{padding:8px 10px;border-top:1px solid var(--theme-border, #dce5f2)}.tutor-code-input-toggle{padding:4px 0;border:0;background:none;color:var(--theme-accent-text, #295be5);font:inherit;font-size:10px;text-align:left;cursor:pointer}.tutor-code-controls label{font-size:11px;margin:8px 0 5px}.tutor-code-controls textarea{min-height:50px;font-family:monospace;font-size:12px}.tutor-code-controls small{display:block;margin-top:5px;color:var(--theme-muted, #6e7890);font-size:9px}.tutor-code-status{margin:0;padding:10px;font-size:11px;color:var(--theme-muted, #6e7890)}.tutor-code-plain,.tutor-code-result pre{margin:0;padding:10px;max-height:280px;overflow:auto;white-space:pre;overflow-wrap:normal;font:12px/1.8 SFMono-Regular,Consolas,Liberation Mono,monospace;color:var(--theme-text, #19243c);background:var(--theme-surface, white)}.tutor-code-result{border-top:1px solid var(--theme-border, #dce5f2)}.tutor-code-result>strong{display:block;padding:10px 10px 0;font-size:11px}.tutor-code-result pre{white-space:pre-wrap;overflow-wrap:anywhere}.tutor-code-result .tutor-code-error{color:var(--theme-danger-text, #b43d4b)}.tutor-code-result figure{margin:10px}.tutor-code-result img{display:block;max-width:100%}.tutor-code-result figcaption{margin-top:5px;font-size:10px}.tutor-chat-typing{display:flex;align-items:center;gap:9px;padding:16px 0;font-size:12px;color:var(--theme-muted, #6e7890)}.tutor-chat-typing>span:last-child{letter-spacing:3px}.tutor-chat-failure{margin-top:12px;font-size:12px}.tutor-chat-failure .button{font-size:11px;padding:8px 12px}.tutor-chat-sources{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.tutor-chat-sources:empty{display:none}.tutor-chat-sources a{display:inline-flex;align-items:center;gap:5px;color:var(--theme-accent-text, #295be5);font-size:10px}.tutor-chat-recommendations{margin-top:16px}.tutor-chat-recommendations h4{font-size:12px;margin:0 0 10px}.tutor-chat-lesson{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--theme-border, #e9eef8);border-radius:12px;padding:12px;margin-top:8px;background:var(--theme-accent-soft, #f3f7ff)}.tutor-chat-lesson>svg{flex-shrink:0;color:var(--theme-accent-text, #295be5)}.tutor-chat-lesson>div{flex:1;min-width:0}.tutor-chat-lesson strong{display:block;font-size:12px}.tutor-chat-lesson small{display:block;font-size:10px;color:var(--theme-muted, #6e7890);margin-top:5px}.tutor-chat-lesson p{font-size:11px;line-height:1.6;margin:8px 0 0}.tutor-chat-lesson>a{display:flex;align-items:center;justify-content:center;min-height:36px;min-width:36px;border-radius:8px;background:var(--theme-surface, white);color:var(--theme-accent-text, #295be5)}.tutor-chat-composer{flex-shrink:0;max-height:55%;overflow-y:auto;padding:14px 20px;border-top:1px solid var(--theme-border, #e9eef8)}.tutor-chat-input{display:flex;align-items:flex-end;gap:10px;padding:9px;border:1px solid var(--theme-accent-border, #dae5fb);border-radius:16px}.tutor-chat-input:focus-within{outline:2px solid var(--theme-accent-border, #dae5fb);outline-offset:2px}.tutor-chat-input>textarea{flex:1;min-width:0;width:100%;border:0;padding:5px 7px;resize:vertical;min-height:44px;max-height:120px;font:inherit;font-size:13px;background:transparent;box-shadow:none;outline:0}.tutor-chat-send{display:flex;justify-content:center;align-items:center;flex-shrink:0;width:38px;height:38px;padding:0;border:0;border-radius:11px;color:var(--theme-on-accent, white);background:var(--theme-accent-text, #295be5);cursor:pointer}.tutor-chat-send:disabled{opacity:.45;cursor:not-allowed}.tutor-chat-caption{font-size:9px;color:var(--theme-muted, #6e7890);margin:9px 0 0}.tutor-chat-composer .ai-usage-notice{margin:8px 0 0;font-size:9px;line-height:1.6}.tutor-review-chat.panel{display:flex;flex-direction:column;height:100%;min-height:0;padding:0;margin:0;border:0;border-radius:0;gap:0}.tutor-review-chat>h2{flex-shrink:0;padding:16px 20px 0;font-size:15px;margin:0}.tutor-review-chat>p{flex-shrink:0;padding:0 20px;font-size:12px;margin:8px 0 0}.tutor-review-chat .tutor-chat-composer{display:grid;gap:10px}.tutor-review-chat .tutor-chat-composer label{margin:0}.tutor-review-chat .tutor-chat-composer p{font-size:11px}.tutor-review-chat .tutor-chat-composer .ai-usage-notice{font-size:9px}.ai-review-link{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--theme-purple-soft, #f5f3ff);border:1px solid var(--theme-purple-border, #e4defb);border-radius:16px;margin:24px 0}.ai-review-link>div{flex:1;min-width:0}.ai-review-link h2{font-size:16px;margin:0 0 6px}.ai-review-link p{font-size:12px;margin:0}.ai-review-icon{color:var(--theme-purple-text, #7157c9)}.ai-review-link .button{flex-shrink:0}.tutor-exercise-context{background:var(--theme-accent-soft, #f3f7ff);border-radius:12px;padding:14px;font-size:13px;white-space:pre-wrap}@media (max-width: 560px){.ai-review-link{flex-wrap:wrap;padding:18px}.ai-review-link .button{width:100%}.ai-dialog:not(.floating-dialog){max-height:calc(100dvh - 24px);width:calc(100vw - 20px)}.ai-dialog--chat:not(.floating-dialog){height:calc(100dvh - 24px)}.tutor-chat-log{padding:14px}.tutor-chat-message{max-width:96%}.tutor-chat-message:has(.tutor-code-block){width:96%}.tutor-chat-composer{padding:12px 14px;max-height:60%}.tutor-chat .tutor-header{padding:12px 14px}.ai-dialog-header{padding:18px}.contextual-tool-buttons{right:16px;bottom:16px;gap:6px}.ai-floating-button,.python-floating-button{padding:13px 18px;font-size:11px}}.python-terminal>.lesson-language-buttons{flex:0 0 auto}.python-terminal .lesson-variant-code{display:flex;flex-direction:column;min-height:220px;height:100%}.contextual-tool-buttons{max-width:calc(100vw - 32px);flex-wrap:wrap}.plus-offer,.pay-for-life-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px;max-width:1000px;margin:34px auto;background:linear-gradient(115deg,var(--theme-accent-soft, #f4f7ff),var(--theme-surface, #ffffff) 55%)}.pay-for-life-card{border-color:var(--theme-success-border, #b9e1cd);background:linear-gradient(115deg,var(--theme-success-soft, #eaf8f0),var(--theme-surface, #ffffff) 55%)}.plus-offer-summary,.plus-offer-benefits{min-width:0}.plus-offer-summary>p{color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:22px}.plus-offer-summary .price{margin:24px 0}.plus-offer-summary .price del{margin-right:10px;color:var(--theme-muted, #536784);font-size:20px;font-weight:500}.pay-for-life-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:24px 0}.pay-for-life-price del{color:var(--theme-muted, #536784);font-size:18px}.pay-for-life-price strong{color:var(--theme-success-text, #247454);font-size:clamp(34px,6vw,48px);line-height:1}.pay-for-life-price span{color:var(--theme-muted, #536784);font-size:13px}.plus-offer-summary small{display:block;color:var(--muted)}.pricing-ai-notice{display:flex;align-items:flex-start;gap:10px;max-width:900px;margin:16px 0;color:var(--theme-muted, #536784);font-size:14px;line-height:1.55}.pricing-ai-notice input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0}.pay-for-life-ai-notice{margin:16px 0}.pay-for-life-ai-notice label{display:flex;align-items:flex-start;gap:10px;margin-top:12px;color:var(--theme-muted, #536784);font-size:13px;line-height:1.55}.pay-for-life-ai-notice input{flex:0 0 auto;width:18px;height:18px;margin:2px 0 0}.launch-offer-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--theme-accent-border, #c7d8fa);border-radius:24px;background:var(--theme-surface, #fff);color:var(--theme-text, #19243c);box-shadow:0 28px 90px #070d1759;overflow:auto}.launch-offer-dialog::backdrop{background:var(--theme-backdrop, rgb(7 13 23 / 55%));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.launch-offer-dialog-content{padding:30px}.launch-offer-dialog-content>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.launch-offer-icon{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:16px;background:var(--theme-success-soft, #eaf8f0);color:var(--theme-success-text, #247454)}.launch-offer-dialog-content h2{margin:8px 0 12px;font-size:clamp(24px,4vw,34px);line-height:1.2}.launch-offer-dialog-content>p{line-height:1.65}.launch-offer-dialog-content ul{display:grid;gap:10px;margin:22px 0;padding:0;list-style:none}.launch-offer-dialog-content li{display:flex;align-items:flex-start;gap:10px}.launch-offer-dialog-content li svg{flex:0 0 auto;margin-top:2px;color:var(--theme-success-text, #247454)}.launch-offer-note{color:var(--theme-muted, #536784);font-size:13px}.launch-offer-dialog-content>.button{width:100%;margin-top:8px}.plus-offer-summary .plus-access-status{padding:12px 14px;border-radius:12px;color:var(--theme-success-text, #247454);background:var(--theme-success-soft, #eaf8f0)}.plus-offer-benefits{padding-left:32px;border-left:1px solid var(--theme-accent-border, #e2e9f7)}.plus-offer-benefits h3{margin:0 0 20px;font-size:20px}.plus-offer-benefits ul{margin:0}.plus-offer-benefits li{font-size:14px;color:var(--theme-muted, #536784)}.plus-offer-benefits li svg{flex-shrink:0}.plus-offer-benefits>p{display:flex;align-items:flex-start;gap:9px;margin-top:20px;color:var(--theme-success-text, #247454);font-size:14px;line-height:1.55}.plus-offer-benefits>p svg{flex:0 0 auto;margin-top:2px}@media (max-width: 700px){.plus-offer,.pay-for-life-card{grid-template-columns:minmax(0,1fr);gap:28px}.plus-offer-benefits{padding:24px 0 0;border-left:0;border-top:1px solid var(--theme-accent-border, #e2e9f7)}.launch-offer-dialog-content{padding:22px}}.pricing-community{margin:42px auto;max-width:1100px}.volume-price-breakdown{margin:16px 0}.volume-price-breakdown>div{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding:12px 0}.volume-price-breakdown dt{color:var(--theme-muted, #536783)}.volume-price-breakdown dd{margin:0;font-weight:600}.volume-price-total{border-top:1px solid var(--border)}.volume-price-total strong{font-size:clamp(24px,4vw,34px);color:var(--theme-accent-text, #1d4ed8)}.volume-price-total dd>span{font-size:13px;font-weight:400}.pricing-community-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px}.pricing-review{margin:0}.pricing-review blockquote{margin:18px 0;white-space:pre-wrap;overflow-wrap:anywhere}.pricing-review figcaption{display:grid;gap:5px;overflow-wrap:anywhere}.pricing-review figcaption span{color:var(--muted);font-size:13px}.pricing-rating,.pricing-partner a{display:flex;align-items:center;gap:5px}.pricing-rating{color:var(--theme-warning-text, #a26817)}.pricing-partner{overflow-wrap:anywhere}.pricing-partner p{white-space:pre-wrap}.pricing-content-admin{margin-top:24px}.pricing-content-admin fieldset{min-width:0}.pricing-content-admin>fieldset{border:0;padding:0}.pricing-content-admin .pricing-content-entry{display:grid;gap:14px;margin:18px 0;border:1px solid var(--border);border-radius:12px;padding:18px}.pricing-content-entry label{display:grid;gap:6px}.pricing-content-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.pricing-content-entry .pricing-publish{display:flex;align-items:center;gap:8px}.pricing-publish input{width:auto}.schools-page,.school-form{display:flex;flex-direction:column;gap:20px;min-width:0}.class-modal{width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:20px;background:transparent;color:inherit;overflow-y:auto}.class-modal::backdrop{background:#0f172a73}.class-modal-content{display:flex;flex-direction:column;gap:20px}.class-modal-content h2{margin:0}.class-modal-content .school-list-row{flex-direction:row;align-items:flex-start}.class-modal-content .icon-button{flex-shrink:0}.schools-page>.panel>h2,.school-card-grid h2{margin-top:12px}.school-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}.school-card-grid .panel{display:flex;flex-direction:column;gap:12px;min-width:0}.school-card-grid .button-row{margin-top:auto}.school-list-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.school-list-row>span,.school-list-row>div{min-width:0;overflow-wrap:anywhere}.school-list-row>.button{flex-shrink:0}.school-tabs{flex-wrap:wrap;margin:8px 0}.school-tabs button{white-space:normal}.school-form>.button,.schools-page>.button{align-self:flex-start}.school-form fieldset{min-width:0;margin:0}.school-form select[multiple]{min-height:150px}.school-form legend{font-size:16px;white-space:pre-wrap;line-height:1.6}.school-form .admin-inline-check{align-items:flex-start;line-height:1.6}.school-text{white-space:pre-wrap;overflow-wrap:anywhere}.school-answer-option{display:flex;align-items:flex-start;gap:10px;line-height:1.6}.school-answer-option input{width:auto;margin-top:5px}.school-tier{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:12px}.schools-page summary{cursor:pointer;font-weight:650;padding:8px 0}@media (max-width: 650px){.school-list-row{align-items:stretch;flex-direction:column}.school-tier{grid-template-columns:1fr}.school-tabs button{flex:1}.school-form>.button{width:100%}}.platform-access{max-width:640px;margin:6vh auto;padding:20px;overflow-wrap:anywhere}.school-dashboard{gap:24px}.school-dashboard-back{display:inline-flex;align-items:center;align-self:flex-start;gap:8px;color:var(--theme-muted, #53647d);font-size:13px;font-weight:600}.school-dashboard-back:hover{color:var(--theme-accent-text, var(--blue))}.school-dashboard-heading{display:flex;align-items:center;gap:20px;padding:28px;background:linear-gradient(110deg,var(--theme-surface, #fff) 55%,var(--theme-accent-soft, #eff5ff))}.school-dashboard-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;flex-shrink:0;border:1px solid var(--theme-accent-border, #dce8fd);border-radius:18px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue))}.school-dashboard-heading .page-heading{min-width:0;margin:0}.school-dashboard-heading h1{overflow-wrap:anywhere;font-size:clamp(24px,3vw,31px)}.school-dashboard-heading .eyebrow{margin-bottom:7px;color:var(--theme-accent-text, var(--blue))}:is(.school-dashboard,.teacher-portal) .school-tabs{display:flex;flex-wrap:wrap;gap:8px;width:100%;max-width:100%;margin:0;padding:8px;border:1px solid var(--theme-border, var(--border));border-radius:18px;background:var(--theme-surface, #fff);box-shadow:var(--shadow);overflow:visible}:is(.school-dashboard,.teacher-portal) .school-tabs button{display:inline-flex;align-items:center;justify-content:center;flex:1 1 auto;gap:10px;min-width:0;min-height:48px;padding:12px 16px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--theme-muted, #53647d);font-size:13px;font-weight:650;line-height:1.5;text-align:left;white-space:normal;transition:background-color .16s ease,color .16s ease}:is(.school-dashboard,.teacher-portal) .school-tabs button span{min-width:0;overflow-wrap:anywhere}:is(.school-dashboard,.teacher-portal) .school-tabs button:hover{background:var(--theme-surface-soft, #f1f5fa);color:var(--theme-text, #19243c)}:is(.school-dashboard,.teacher-portal) .school-tabs button.selected{background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, var(--blue));border-color:var(--theme-accent-border, #dce8fd);font-weight:750}:is(.school-dashboard,.teacher-portal) .school-tabs button:focus-visible{outline-offset:2px}.school-dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.school-dashboard-toolbar h2{font-size:21px}.school-dashboard-toolbar p{margin:6px 0 0;font-size:13px}.school-dashboard-toolbar .button{flex-shrink:0}.school-dashboard-stat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--theme-accent-text, var(--blue))}.school-dashboard .school-card-grid h2{margin:0;overflow-wrap:anywhere}.school-dashboard .school-card-grid p{margin:0 0 8px;font-size:13px}.school-dashboard .school-card-grid .button-row{padding-top:8px}.school-dashboard .empty{padding:48px 24px;background:var(--theme-surface, #fff);border-color:var(--theme-accent-border, #dce8fd)}.school-dashboard .empty>svg{color:var(--theme-accent-text, var(--blue))}@media (max-width: 760px){:is(.school-dashboard,.teacher-portal) .school-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}:is(.school-dashboard,.teacher-portal) .school-tabs button{justify-content:flex-start;padding:12px}}@media (max-width: 520px){.school-dashboard{gap:20px}.school-dashboard-heading{align-items:flex-start;gap:14px;padding:20px}.school-dashboard-icon{width:46px;height:46px;border-radius:14px}.school-dashboard-icon svg{width:23px;height:23px}:is(.school-dashboard,.teacher-portal) .school-tabs button{gap:8px;font-size:12px}.school-dashboard-toolbar{align-items:stretch;flex-direction:column;gap:14px}.school-dashboard .school-card-grid .button-row>.button{width:100%}}@media (prefers-reduced-motion: reduce){:is(.school-dashboard,.teacher-portal) .school-tabs button{transition:none}}@media (min-width: 1550px){.main-content{padding:42px 55px}.hero-card{min-height:345px}.hero-copy{padding:40px}.hero-copy h2{font-size:40px}.hero-copy>p{font-size:13px;max-width:440px}.hero-kicker{font-size:9px}.hero-buttons .button{font-size:12px}.hero-link{font-size:11px}.hero-code-window{max-width:420px}.code-lines{font-size:12px}.hero-success{right:55px;bottom:25px}.course-art{height:150px}.course-body h3{font-size:18px}.course-body>p{font-size:12px}.course-info{font-size:10px}.course-meta>span:last-child{font-size:10px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 300px}.next-card h4{font-size:21px}.next-card>p{font-size:12px}.next-card .button{font-size:12px}.time-meta{font-size:10px}.stat-card p{font-size:11px}.stat-card strong small{font-size:10px}.lab-banner h3{font-size:15px}.lab-banner p,.lab-banner .button{font-size:10px}}@media (max-width: 1250px){.sidebar{width:225px;padding-left:15px;padding-right:15px}.main-shell{margin-left:225px;width:calc(100% - 225px)}.topbar{padding:0 25px}.main-content{padding:28px 25px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 235px;gap:20px}.hero-copy{padding:28px 0 25px 27px}.hero-copy h2{font-size:30px}.hero-buttons{gap:12px}.hero-visual{padding-right:20px}.code-lines{font-size:8px;padding:20px 12px}.hero-success{right:15px;font-size:8px}.stats-grid{gap:10px}.stat-card{padding:17px 12px;gap:9px}.stat-icon{width:34px;height:34px;border-radius:10px}.stat-card strong small{display:block;margin:3px 0 0;font-size:7px}.course-body{padding:16px}.course-body h3{font-size:14px}.course-body>p{font-size:9px}.course-info{gap:10px}.course-info svg{width:12px}.lab-banner{flex-wrap:wrap;gap:12px}.lab-banner .button{margin-left:57px}.next-card{padding:18px}.lesson-layout{grid-template-columns:180px minmax(0,1fr);gap:20px}.lesson-outline{padding:16px}.lesson-check{flex-wrap:wrap}.lesson-check .button{margin-left:47px}.nav-item.active:before{left:-15px}.file-sidebar{width:140px}.lesson-row-end{gap:15px}.progress-columns{grid-template-columns:1.4fr 1fr}.progress-summary>div{gap:13px;padding:20px}.progress-summary span{font-size:10px}}@media (max-width: 1000px){.sidebar{width:205px}.main-shell{margin-left:205px;width:calc(100% - 205px)}.app-shell.sidebar-collapsed .main-shell{margin-left:0;width:100%}.python-learning-tools{width:240px;flex-basis:240px}.lab-tool-actions button span{display:none}.brand{font-size:22px}.brand-mark{width:37px;height:37px}.nav-item{font-size:11px;padding:12px 9px;gap:9px}.nav-item svg{width:18px}.nav-label{font-size:7px;margin-left:8px}.sidebar-plus{margin:0 0 17px;padding:15px 12px}.sidebar-plus>a{font-size:9px}.hero-card{grid-template-columns:1fr .8fr}.hero-copy h2{font-size:27px}.hero-copy>p{font-size:10px}.hero-kicker{font-size:6px;letter-spacing:1px}.hero-buttons .button{font-size:9px}.hero-visual{padding-left:0}.hero-code-window{transform:rotate(-4deg)}.code-lines{font-size:7px;line-height:2.2;padding:15px 10px}.hero-success{padding:8px;font-size:7px;right:10px}.hero-success small{font-size:6px}.floating-python{top:30px;right:12px}.hero-footnote{font-size:7px}.dashboard-columns{grid-template-columns:1fr}.dashboard-aside{display:grid;grid-template-columns:1fr 1fr;gap:18px}.source-link{grid-column:1/-1;margin:0 3px}.next-card .aside-heading{margin-bottom:18px}.course-body h3{font-size:18px}.course-body>p{font-size:11px;min-height:38px}.course-info{font-size:9px}.course-meta>span:last-child{font-size:9px}.lab-banner{flex-wrap:nowrap}.lab-banner .button{margin-left:auto}.lesson-layout{grid-template-columns:1fr}.lesson-outline{position:static;display:flex;flex-wrap:wrap;gap:8px;padding:15px}.lesson-outline>h3{width:100%;margin:0 0 7px}.lesson-outline>button{width:auto;padding:4px 7px}.lesson-objectives{display:none}.learn-filters{align-items:stretch;flex-direction:column;gap:15px}.search-input input{max-width:none;width:100%}.lesson-row{gap:15px;padding:20px}.lesson-row-end{flex-direction:column;gap:12px;align-items:flex-end;font-size:9px}.lesson-row h3{font-size:14px}.lesson-row p{font-size:10px}.progress-columns{grid-template-columns:1fr}.progress-summary{gap:12px}.progress-summary>div{flex-wrap:wrap;padding:18px;gap:12px}.progress-summary>div>span{width:100%}.account-grid{grid-template-columns:1fr}.account-data{flex-wrap:wrap}.account-data>div{flex-basis:100%}.pricing-grid{gap:18px}.pricing-card{padding:24px}.pricing-card h2{font-size:22px}.pricing-card li{font-size:11px}.admin-layout{grid-template-columns:1fr}.admin-lessons{position:static;max-height:260px;overflow:auto}.page-heading{align-items:flex-start}.page-heading h1{font-size:26px}.sources-grid{grid-template-columns:1fr}}@media (max-width: 760px){.mobile-only{display:inline-flex!important}.sidebar-collapse-button,.sidebar-open-button{display:none!important}.sidebar{transform:translate(-100%);transition:transform .2s;width:260px;padding:28px 20px;box-shadow:12px 0 30px var(--theme-accent-shadow, #28456b1a)}.sidebar.is-open,.app-shell.sidebar-collapsed .sidebar.is-open{transform:translate(0)}.sidebar-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--theme-backdrop, #24355255);z-index:14;border:0}.sidebar-brand{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.brand{font-size:26px}.brand-mark{width:42px;height:42px}.nav-label{font-size:8px}.nav-item{font-size:13px;padding:13px;gap:12px}.nav-item.active:before{left:-20px}.sidebar-plus{padding:19px}.sidebar-plus strong{font-size:16px}.sidebar-plus>a{font-size:11px}.main-shell{margin:0;width:100%}.topbar{height:64px;padding:0 18px}.topbar-left{gap:12px}.breadcrumb{font-size:10px;gap:8px}.breadcrumb>strong{max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-right{gap:10px}.python-projects-topbar-button span,.school-pill{display:none}.main-content{padding:26px 20px}.main-content.python-project-main{min-height:calc(100vh - 64px);padding:10px}.python-project-page{min-height:calc(100vh - 84px)}.python-project-terminal-shell,.python-project-terminal-shell .python-lab{min-height:calc(100vh - 122px)}.python-projects-heading{align-items:flex-start}.python-project-detail-heading{grid-template-columns:auto minmax(0,1fr)}.python-project-detail-heading .eyebrow{display:none}.python-project-detail-heading h1{text-align:right}.lab-ide-grid{flex-direction:column}.python-learning-tools{width:auto;flex-basis:auto;max-height:300px;border-top:1px solid var(--theme-border, #dce5f2);border-left:0}.main-footer{padding:15px 20px 25px;font-size:8px;gap:18px;line-height:1.8}.welcome-heading h1{font-size:25px;line-height:1.45;max-width:420px}.welcome-heading p{font-size:12px}.hero-card{grid-template-columns:1.1fr 1fr;min-height:290px}.hero-copy{padding:27px 0 25px 25px}.hero-copy h2{font-size:29px}.hero-kicker{font-size:6px}.hero-copy>p{font-size:10px}.code-lines{font-size:8px}.hero-visual{padding-right:17px}.hero-success{right:17px;bottom:25px}.hero-buttons{gap:15px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0 30px}.stat-card{padding:18px;gap:14px}.stat-card p{font-size:10px}.stat-card strong small{display:inline-block;margin-left:7px;font-size:8px}.stat-icon{width:39px;height:39px}.page-heading h1{font-size:27px}.section-heading h2{font-size:21px}.course-art{height:145px}.lab-banner h3{font-size:14px}.lab-banner p{font-size:10px}.lab-banner .button{font-size:9px}.lesson-row-tags{flex-wrap:wrap}.lesson-row{gap:13px;padding:19px 15px}.lesson-row h3{font-size:15px}.lesson-content{padding:25px}.lesson-content h2{font-size:23px}.lesson-prose p{font-size:13px}.lesson-check{padding:22px}.assessment-intro{margin:25px 0;padding:28px}.assessment-intro>h2{font-size:23px}.assessment-player{padding:25px}.question-heading h1{font-size:21px}.question-navigation .button{font-size:11px;padding:10px 13px}.result-score{width:110px;height:110px;font-size:34px}.result-overview{padding:26px;gap:25px}.result-overview h2{font-size:21px}.file-sidebar{width:140px}.lab-workspace{min-height:330px}.code-editor .cm-editor{height:320px!important}.python-project-terminal-shell .code-editor .cm-editor{height:100%!important}.lab-status{font-size:9px}.file-name-form{flex-wrap:wrap}.file-name-form label{flex-basis:100%}.pricing-grid{gap:15px}.pricing-card{padding:25px}.pricing-card h2{font-size:23px}.pricing-card li{font-size:11px}.page-heading{flex-wrap:wrap}.page-heading>.button{font-size:11px}.account-data .button{font-size:10px}.tutor-header h3{font-size:15px}.admin-editor{padding:20px}.admin-section{padding:17px}}@media (max-width: 480px){.python-projects-heading,.python-create-project{flex-direction:column;align-items:stretch}.python-projects-heading .button,.python-create-project .button{width:100%}.lab-toolbar{flex-wrap:wrap}.lab-actions{width:100%;justify-content:space-between}.lab-tool-actions{flex:1}.main-content{padding:22px 16px}.topbar{padding:0 12px}.breadcrumb{font-size:9px}.breadcrumb>strong{max-width:115px}.top-login{font-size:10px}.welcome-heading h1{font-size:25px}.welcome-heading .eyebrow{font-size:7px}.welcome-heading p{font-size:11px}.greeting-spark{display:none}.hero-card{grid-template-columns:1fr;min-height:0}.hero-copy{padding:29px 25px 22px}.hero-copy h2{font-size:34px}.hero-copy>p{font-size:11px;max-width:310px}.hero-kicker{font-size:7px;letter-spacing:1.1px}.hero-buttons .button{font-size:10px;min-height:42px}.hero-link{font-size:9px}.hero-footnote{font-size:8px}.hero-visual{height:205px;padding:0 35px 32px;margin-top:0}.hero-code-window{max-width:300px}.code-lines{font-size:8px;line-height:1.7;padding:13px 16px}.window-top{padding:8px 12px}.code-result{padding:9px 15px}.hero-success{bottom:16px;right:27px;font-size:8px}.hero-success small{font-size:7px}.floating-python{top:0;right:20px;width:36px;height:36px;font-size:15px}.floating-spark{left:20px;bottom:25px;width:35px;height:35px}.orbit-one{top:-90px;left:15%;width:290px;height:290px}.orbit-two{top:-40px;width:230px;height:230px}.stats-grid{gap:10px}.stat-card{padding:15px 11px;gap:9px}.stat-card p{font-size:8px}.stat-card strong{font-size:23px}.stat-card strong small{display:block;margin:4px 0 0;font-size:7px}.stat-icon{width:35px;height:35px}.section-heading h2{font-size:20px}.section-heading .eyebrow{font-size:6px}.section-heading>a{font-size:8px}.course-grid{grid-template-columns:1fr}.course-card{display:grid;grid-template-columns:100px 1fr}.course-art{height:100%;min-height:238px;border-radius:0}.course-icon{width:57px;height:57px;border-radius:16px}.course-icon svg{width:32px}.course-label{display:none}.course-body{padding:17px}.course-meta .tag{font-size:6px}.course-meta>span:last-child{font-size:7px}.course-body h3{font-size:16px}.course-body>p{font-size:10px;min-height:auto}.course-info{font-size:8px;gap:10px}.course-progress{margin-top:14px;padding-top:14px}.course-progress>div:last-child{font-size:8px}.lab-banner{flex-wrap:wrap;padding:18px;gap:13px}.lab-banner-icon{padding:11px}.lab-banner>div{flex:1;min-width:200px}.lab-banner .button{margin-left:0;width:100%;font-size:11px;min-height:39px}.dashboard-aside{grid-template-columns:1fr;gap:16px}.next-card{padding:23px}.next-card h4{font-size:22px}.next-card>p{font-size:12px}.next-card .button{font-size:12px}.source-link{font-size:10px;margin:4px}.source-link small{font-size:9px}.main-footer{flex-direction:column;gap:8px;font-size:8px}.tabs{width:100%;justify-content:space-between}.tabs button{padding:10px 12px;font-size:10px}.filter-pills{gap:7px}.filter-pills>button{font-size:10px;padding:8px 12px}.lesson-row{gap:12px;align-items:flex-start}.lesson-row h3{font-size:14px;line-height:1.55}.lesson-row p{font-size:10px}.lesson-row-end{font-size:8px;gap:18px;margin-top:15px}.lesson-row-end .mastery-label{display:none}.lesson-row-tags .tag{font-size:7px}.free-label{font-size:8px}.page-heading h1{font-size:26px}.page-heading p{font-size:12px}.form-grid{grid-template-columns:1fr}.assessment-intro{padding:28px 23px}.assessment-intro h2{font-size:23px}.assessment-facts{align-items:flex-start;flex-direction:column;gap:14px;max-width:220px;margin:27px auto}.assessment-player{padding:22px 17px}.question-heading h1{font-size:20px}.question-heading{margin:28px 0 20px}.answer-option{font-size:12px;padding:14px;gap:10px}.answer-option>span{font-size:10px}.question-navigation{flex-wrap:wrap;gap:13px}.question-dots{order:3;width:100%;max-width:none;padding:10px}.question-navigation .button{font-size:10px}.result-overview{flex-direction:column;align-items:flex-start;padding:25px}.result-score{width:100px;height:100px;font-size:31px}.result-overview h2{font-size:22px}.feedback-card{padding:20px;gap:11px}.feedback-card h3{font-size:13px}.feedback-card p{font-size:11px}.lesson-content{padding:24px 20px}.lesson-content h2{font-size:22px}.lesson-step-navigation .button{font-size:10px;padding:10px 12px}.lesson-check>div{flex:1;min-width:180px}.lesson-check .button{margin-left:0;width:100%}.lesson-check h2{font-size:18px}.tutor-panel{padding:20px}.tutor-header h3{font-size:14px}.tutor-header>span:first-child{padding:9px}.tutor-header p{font-size:9px}.file-sidebar{width:110px;padding:10px 5px}.file-item{font-size:9px;padding:9px 6px}.file-item svg{width:13px}.files-heading{font-size:7px;padding-left:5px}.file-tools{flex-wrap:wrap;gap:10px}.file-tools button{padding:3px}.export-project{font-size:8px;gap:3px;line-height:1.6}.export-project svg{width:12px}.editor-tab{padding:0 9px}.editor-tab>span{font-size:9px}.editor-tab label{font-size:0;gap:0}.editor-tab select{font-size:8px;max-width:90px}.lab-title .muted{display:none}.lab-toolbar{padding:11px 12px}.lab-actions .button{font-size:10px;padding:7px 10px}.lab-actions .button-ghost span{display:none}.console-pane{padding:14px}.console-pane>pre{min-height:70px}.lab-status{flex-direction:column;align-items:stretch;font-size:8px;gap:10px}.code-task{padding:17px;gap:10px}.code-task p{font-size:11px}.progress-summary{gap:8px}.progress-summary>div{padding:13px;gap:8px}.progress-summary strong{font-size:25px}.progress-summary svg{width:20px}.progress-summary span{font-size:8px}.progress-columns .panel{padding:21px}.mastery-row{gap:12px}.mastery-row strong{font-size:11px}.mastery-row>div:last-child{min-width:65px}.account-identity h2{font-size:19px}.account-identity{gap:14px}.account-identity p{font-size:10px;overflow-wrap:anywhere}.large-avatar{width:50px;height:50px;font-size:25px;flex-shrink:0}.account-grid .panel{padding:24px}.pricing-grid{grid-template-columns:1fr;margin:25px 0}.pricing-card{padding:30px}.pricing-card h2{font-size:27px}.pricing-card li{font-size:12px}.pricing-security{font-size:10px;align-items:flex-start;line-height:1.7}.pricing-faq h2{font-size:23px}.pricing-faq summary{font-size:12px}.pricing-faq p{font-size:11px}.error-box,.info-banner{flex-wrap:wrap;font-size:11px;padding:14px}.info-banner p{min-width:180px}.info-banner a{margin-left:30px;font-size:11px}.admin-tabs button{font-size:9px;padding:9px}.admin-editor{padding:18px}.admin-section{padding:15px}.metrics-list>div{font-size:12px;gap:12px}.metrics-list dd{margin-left:15px}.sources-grid .panel{padding:22px}.sources-grid h2{font-size:17px}.data-info{padding:24px}.data-info h2{font-size:19px}.data-info p{font-size:12px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.legal-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px;width:100%;font-size:12px;line-height:1.7}.legal-links a{color:var(--theme-muted, #536783)}.legal-links a:hover,.legal-links a[aria-current=page]{text-decoration:underline;text-underline-offset:3px}.main-footer:has(.legal-links){flex-wrap:wrap}.main-footer .legal-links{justify-content:flex-start;font-size:11px}.public-legal .public-guide{overflow-wrap:anywhere}.public-legal nav ol{list-style:none;padding:0}.public-legal li{margin:10px 0;color:var(--theme-muted, #536783)}.legal-company{display:grid;gap:10px;margin-top:20px;font-style:normal;line-height:1.7;color:var(--theme-muted, #536783)}.portal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}.tutor-panel .ai-usage-notice,.school-form .ai-usage-notice{margin:16px 0;padding:12px 14px;border:1px solid var(--theme-border, #dce5f1);border-radius:12px;background:var(--theme-surface, #f7f9fd);color:var(--theme-accent-text, #425875);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.ai-usage-notice a{text-decoration:underline;text-underline-offset:3px}@media (max-width: 640px){.legal-links{justify-content:flex-start;gap:10px 18px}}.app-shell .main-content,.practice-page,.history-page,.dashboard-activity,.assigned-activities{container-type:inline-size;min-width:0}:is(.student-card-grid,.app-shell :is(.discovery-grid,.school-card-grid,.notebook-grid,.python-project-grid,.video-grid,.sources-grid,.recent-lessons-grid,.stats-grid,.progress-summary,.pricing-community-grid)){display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}@container (min-width: 460px){:is(.student-card-grid,.app-shell :is(.discovery-grid,.school-card-grid,.notebook-grid,.python-project-grid,.video-grid,.sources-grid,.recent-lessons-grid,.stats-grid,.progress-summary,.pricing-community-grid)){grid-template-columns:repeat(2,minmax(0,1fr))}}@container (min-width: 710px){:is(.student-card-grid,.app-shell :is(.discovery-grid,.school-card-grid,.notebook-grid,.python-project-grid,.video-grid,.sources-grid,.recent-lessons-grid,.stats-grid,.progress-summary,.pricing-community-grid)){grid-template-columns:repeat(3,minmax(0,1fr))}}@container (min-width: 960px){:is(.student-card-grid,.app-shell :is(.discovery-grid,.school-card-grid,.notebook-grid,.python-project-grid,.video-grid,.sources-grid,.recent-lessons-grid,.stats-grid,.progress-summary,.pricing-community-grid)){grid-template-columns:repeat(4,minmax(0,1fr))}}@container (min-width: 1190px){:is(.student-card-grid,.app-shell :is(.discovery-grid,.school-card-grid,.notebook-grid,.python-project-grid,.video-grid,.sources-grid,.recent-lessons-grid,.stats-grid,.progress-summary,.pricing-community-grid)):has(>:nth-child(5)){grid-template-columns:repeat(5,minmax(0,1fr))}}.lesson-tag{display:inline-flex;align-self:flex-start;max-width:100%;padding:5px 8px;border:1px solid var(--theme-accent-border, #d9e5fa);border-radius:8px;background:var(--theme-accent-soft, #eff5ff);color:var(--theme-accent-text, #4670b3);font-size:11px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}html[data-appearance]{--blue: var(--theme-accent);--blue-deep: var(--theme-accent-hover);--muted: var(--theme-subtle);--border: var(--theme-border);--theme-danger-solid: #bc2644;--theme-danger-solid-hover: #a01e39;--theme-backdrop: rgb(7 13 23 / 55%);background:var(--theme-canvas);color:var(--theme-text)}html[data-appearance=light]{color-scheme:light;--theme-canvas: #f6f8fc;--theme-surface: #ffffff;--theme-surface-soft: #f1f5fa;--theme-surface-glass: #fffffff0;--theme-text: #19243c;--theme-muted: #53647d;--theme-subtle: #65758c;--theme-border: #dbe3ee;--theme-success-text: #176b4d;--theme-success-soft: #eaf7f0;--theme-success-border: #b9dfcd;--theme-warning-text: #89520b;--theme-warning-soft: #fff5e5;--theme-warning-border: #ead4ad;--theme-danger-text: #b42341;--theme-danger-soft: #fff0f3;--theme-danger-border: #efb8c3;--theme-purple-text: #6941b8;--theme-purple-soft: #f3eefc;--theme-purple-border: #d7c8ef;--theme-syntax-meta: #46534b;--theme-syntax-keyword: #770088;--theme-syntax-atom: #221199;--theme-syntax-number: #116644;--theme-syntax-string: #aa1111;--theme-syntax-escape: #ad3500;--theme-syntax-definition: #174ac4;--theme-syntax-type: #116677;--theme-syntax-comment: #805000;--theme-syntax-invalid: #b42341}html[data-appearance=dark]{color-scheme:dark;--theme-canvas: #0d1523;--theme-surface: #172235;--theme-surface-soft: #1d2b40;--theme-surface-glass: #172235f2;--theme-text: #edf3fc;--theme-muted: #b0bfd3;--theme-subtle: #9caec5;--theme-border: #34445c;--theme-success-text: #87e2b7;--theme-success-soft: #16382e;--theme-success-border: #386952;--theme-warning-text: #f4cc88;--theme-warning-soft: #3b3020;--theme-warning-border: #756041;--theme-danger-text: #ffa4b4;--theme-danger-soft: #3d2530;--theme-danger-border: #784252;--theme-purple-text: #c9b1ff;--theme-purple-soft: #302744;--theme-purple-border: #61517e;--theme-syntax-meta: #bfcdc5;--theme-syntax-keyword: #d8a8ff;--theme-syntax-atom: #b6b2ff;--theme-syntax-number: #8ce2b9;--theme-syntax-string: #f1b78c;--theme-syntax-escape: #f4d283;--theme-syntax-definition: #a8c7ff;--theme-syntax-type: #83dbe5;--theme-syntax-comment: #a6b6ca;--theme-syntax-invalid: #ffa4b4}html[data-appearance] ::selection{background:var(--theme-accent-soft-strong);color:var(--theme-text)}html[data-appearance] ::placeholder{color:var(--theme-subtle);opacity:1}html[data-appearance] .button:not(:where(.button-secondary,.button-ghost,.button-white,.button-danger)){border-color:var(--theme-accent-edge)}html[data-appearance] .button-danger{background:var(--theme-danger-solid);color:#fff}html[data-appearance] .button-danger:hover:not(:disabled){background:var(--theme-danger-solid-hover)}html[data-appearance] .ai-dialog,html[data-appearance] .appearance-dialog{background:var(--theme-surface);color:var(--theme-text)}html[data-appearance] .hero-card,html[data-appearance] .tests-hero,html[data-appearance] .ai-floating-button{background:linear-gradient(125deg,var(--theme-accent-hover),var(--theme-accent));color:var(--theme-on-accent)}html[data-appearance] .hero-close{background:#0000001f;color:var(--theme-on-accent)}html[data-appearance] .hero-close:hover{background:#00000038}html[data-appearance] .ai-floating-button{border-color:var(--theme-accent-edge)}html[data-appearance] .cm-editor{background:var(--theme-surface);color:var(--theme-text)}html[data-appearance] .cm-editor .cm-cursor{border-left-color:var(--theme-text)}html[data-appearance] .cm-editor .cm-activeLineGutter{background:var(--theme-accent-soft);color:var(--theme-accent-text)}html[data-appearance] .cm-editor .cm-selectionBackground,html[data-appearance] .cm-editor.cm-focused .cm-selectionBackground{background:var(--theme-accent-soft-strong)}html[data-appearance] .cm-editor .cm-tooltip{background:var(--theme-surface-soft);color:var(--theme-text);border-color:var(--theme-border)}html[data-appearance] .cm-editor .cm-tooltip-autocomplete ul li[aria-selected]{background:var(--theme-accent-soft-strong);color:var(--theme-text)}html[data-appearance] .cm-editor .cm-matchingBracket{background:var(--theme-success-soft);color:var(--theme-success-text)}html[data-appearance] .cm-editor .cm-nonmatchingBracket{background:var(--theme-danger-soft);color:var(--theme-danger-text)}html[data-appearance] .cm-editor .cm-searchMatch{background:var(--theme-warning-soft);outline-color:var(--theme-warning-border)}html[data-appearance] .cm-editor .cm-panels{background:var(--theme-surface-soft);color:var(--theme-text)}.appearance-trigger{min-width:40px;min-height:40px}.appearance-dialog{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 40px);border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:0 24px 90px #00000035;overflow-y:auto}.appearance-dialog::backdrop{background:#0c162770;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.appearance-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.appearance-dialog h2{font-size:23px}.appearance-intro{margin-top:16px;font-size:13px}.appearance-settings fieldset{min-width:0;margin:24px 0}.appearance-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.appearance-mode{position:relative;display:flex;align-items:center;padding:18px 8px;gap:10px;border:1px solid var(--border);border-radius:14px;background:var(--theme-surface);color:var(--theme-muted);cursor:pointer;text-align:center;font-size:12px}.appearance-mode input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.appearance-mode.is-selected{background:var(--theme-accent-soft);color:var(--theme-accent-text);border-color:var(--theme-accent-text)}.appearance-mode:focus-within{outline:2px solid var(--theme-accent-text);outline-offset:3px}.appearance-swatches{display:flex;flex-wrap:wrap;gap:12px;margin:4px 0 22px}.appearance-swatch{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:2px solid transparent;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001f}.appearance-swatch[aria-pressed=true]{outline:2px solid var(--theme-text);outline-offset:3px}.appearance-custom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.appearance-custom label{min-width:0}.appearance-custom input[type=color]{width:100%;height:46px;padding:4px;cursor:pointer}.appearance-custom input[type=text]{width:100%;min-width:0;font-family:monospace;height:46px}.appearance-error{color:var(--theme-danger-text);font-size:12px}.appearance-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:16px}.appearance-footer small{max-width:300px;font-size:11px;line-height:1.6}.appearance-footer .button{padding:10px 0;font-size:11px}.account-appearance{margin-top:25px}.account-appearance .appearance-settings{max-width:600px}@media (max-width: 520px){.appearance-dialog{padding:20px;width:calc(100vw - 20px)}.appearance-modes{gap:6px}.appearance-mode{font-size:11px;padding:16px 4px}.topbar-right{gap:10px}}@media (prefers-reduced-motion: reduce){html[data-appearance] .button{transition:none}}.feedback-trigger{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(86px,calc(env(safe-area-inset-bottom) + 86px));z-index:19;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:11px 16px;border:1px solid var(--theme-accent-border, #c9dafb);border-radius:999px;background:var(--theme-surface, #fff);color:var(--theme-accent-text, #2563eb);box-shadow:0 8px 28px var(--theme-accent-shadow, #17376b24);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.feedback-trigger:hover{transform:translateY(-1px);box-shadow:0 10px 32px var(--theme-accent-shadow, #17376b30)}.feedback-trigger:focus-visible{outline:3px solid var(--theme-accent-border, #93b4f5);outline-offset:3px}.feedback-dialog{width:min(420px,calc(100vw - 28px));padding:22px;border:1px solid var(--theme-accent-border, #d6e2f7);border-radius:20px;background:var(--theme-surface, #fff);color:var(--theme-text, #19243c);box-shadow:0 24px 70px #12203842}.feedback-dialog::backdrop{background:#0c162770;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.feedback-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.feedback-dialog h2{margin:2px 0 0;font-size:24px}.feedback-dialog form>p{margin:0 0 18px;color:var(--theme-muted, #66758b);font-size:13px}.feedback-dialog label{font-size:12px;font-weight:700}.feedback-dialog textarea{width:100%;margin-top:8px;resize:vertical;min-height:118px}.feedback-counter{margin:5px 0 14px;color:var(--theme-subtle, #8794a8);font-size:11px;text-align:right}.feedback-dialog form>.button{width:100%;justify-content:center}.feedback-success{display:grid;justify-items:center;gap:14px;padding:18px 0 4px;text-align:center}.feedback-success p{margin:0;font-weight:650}@media (max-width: 560px){.feedback-trigger{right:16px;bottom:max(78px,calc(env(safe-area-inset-bottom) + 78px));padding:11px 13px}.feedback-dialog{padding:18px}}@media (prefers-reduced-motion: reduce){.feedback-trigger:hover{transform:none}}.public-guide{max-width:850px;margin:auto;padding:24px 32px 60px}.public-guide nav{font-size:13px;color:#536783;line-height:1.7;margin-bottom:36px}.public-guide header{margin-bottom:40px}.public-guide h1{font-size:clamp(30px,4vw,46px);overflow-wrap:anywhere}.public-guide p{color:#536783;margin:18px 0}.public-guide .public-guide-intro{font-size:19px}.public-guide section{margin-top:36px}.public-guide section h2{font-size:clamp(23px,3vw,28px)}.public-guide pre{max-width:100%;overflow-x:auto;background:#f3f7fd;border:1px solid #dce7f9;border-radius:12px;padding:22px;line-height:1.8}.public-guide li{line-height:1.8}.public-guide a{text-decoration:underline;text-underline-offset:3px}.public-guide .public-guide-contents{padding:20px;border:1px solid #dce7f9;border-radius:12px;background:#f3f7fd;font-size:15px}.public-guide h2[id]{scroll-margin-top:24px}@media (max-width: 640px){.public-guide{padding:20px 20px 40px}}.public-audience{--audience-ink: #183256;--audience-soft: #eff5ff}.audience-home-link,.audience-text-link,.audience-actions{display:flex;align-items:center;gap:10px}.audience-home-link{font-size:13px;font-weight:600}.audience-role-bar{max-width:1220px;margin:auto;padding:14px 32px;display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;border-top:1px solid var(--border)}.audience-role-bar>span{font-size:12px;color:#536783}.audience-role-bar nav{display:flex;flex-wrap:wrap;gap:7px}.audience-role-bar a{padding:9px 17px;border-radius:30px;color:#536783;font-size:13px}.audience-role-bar a:hover{background:#f3f6fb}.audience-role-bar a[aria-current=page]{background:#eaf1ff;color:#1d4ed8;font-weight:700}.audience-hero{max-width:1220px;margin:auto;padding:60px 32px 84px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,76px);align-items:center}.audience-kicker{display:inline-flex;align-items:center;gap:9px;background:var(--audience-soft);color:#245dcc;padding:8px 13px;border-radius:30px;font-size:12px;font-weight:700}.audience-hero h1{font-size:clamp(34px,4.1vw,56px);line-height:1.13;letter-spacing:-.045em;margin:22px 0;color:var(--audience-ink)}.audience-lead{font-size:16px;color:#536783;max-width:560px}.audience-actions{flex-wrap:wrap;gap:18px 24px;margin:28px 0}.audience-text-link{font-size:13px;font-weight:600}.audience-price-preview{display:inline-grid;gap:5px;color:var(--audience-ink);padding-left:15px;border-left:3px solid #86aaf5}.audience-price-preview>strong{font-size:19px}.audience-price-preview>strong span,.audience-price-preview>span{font-size:12px;color:#536783;font-weight:400;line-height:1.6}.audience-journey{position:relative;padding:32px;border:1px solid #d9e5fb;border-radius:26px;background:linear-gradient(145deg,#f3f7ff,#fff 70%);box-shadow:0 20px 55px #244f9410}.audience-journey-heading{display:flex;gap:13px;align-items:center;color:#245dcc;font-size:10px;font-weight:700;letter-spacing:.08em;margin-bottom:22px}.audience-journey h2{font-size:clamp(23px,2.5vw,30px);max-width:320px;color:var(--audience-ink)}.audience-journey ol{list-style:none;padding:0;margin:30px 0}.audience-journey li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:16px;padding:0 0 26px;position:relative}.audience-journey li:last-child{padding-bottom:0}.audience-journey li:not(:last-child):before{content:"";position:absolute;width:1px;background:#cadbf7;left:18px;top:38px;bottom:0}.audience-journey-number{position:relative;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e5edfe;color:#245dcc;font-size:12px;font-weight:700}.audience-journey h3{font-size:16px;margin:1px 0 5px}.audience-journey p{font-size:13px;color:#536783;margin:0}.audience-journey-tags{display:flex;gap:9px;flex-wrap:wrap;padding-top:20px;border-top:1px solid #e3ebf7}.audience-journey-tags span{border:1px solid #dce6f6;border-radius:20px;padding:5px 11px;font-size:11px;color:#42608b}.audience-section{max-width:1220px;padding:64px 32px;margin:auto}.audience-section-heading{margin-bottom:32px}.audience-section-heading h2{font-size:clamp(27px,3vw,36px);line-height:1.22;color:var(--audience-ink);margin-top:12px}.audience-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.audience-benefit-grid article{display:flex;align-items:start;gap:19px;padding:28px;border:1px solid #e3eaf4;border-radius:18px;background:#fff}.audience-benefit-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:13px;background:var(--audience-soft);color:#245dcc}.audience-benefit-grid h3{font-size:17px;line-height:1.45}.audience-benefit-grid p{font-size:14px;color:#536783;margin:10px 0 0}.audience-pricing-section{background:#f5f8fd;border-radius:28px}.audience-pricing-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:start}.audience-price-card{padding:34px;border-radius:22px;background:#17365e;color:#fff}.audience-plan-label{font-size:10px;font-weight:700;letter-spacing:.08em;color:#c4d9fb}.audience-price-card .audience-price{display:grid;gap:3px;margin:25px 0 16px;color:#fff}.audience-price strong{font-size:clamp(42px,5vw,60px);letter-spacing:-.04em;line-height:1.1}.audience-price>span{color:#ccdcf4;font-size:13px}.audience-price-card .audience-price-note{color:#fff;font-size:15px;font-weight:600;padding-bottom:23px;border-bottom:1px solid #ffffff26}.audience-price-card ul{list-style:none;padding:0;margin:23px 0;display:grid;gap:20px}.audience-price-card li{display:flex;align-items:start;gap:11px;font-size:13px;line-height:1.75;color:#e1eafa}.audience-price-card li svg{margin-top:4px;color:#a8c7ff}.audience-price-card>a{color:#dceaff;font-size:12px;display:inline-flex;align-items:center;gap:9px;text-decoration:underline;text-underline-offset:4px}.public-audience .public-volume-pricing,.audience-included{padding:30px;border:1px solid #dce6f5;background:#fff;border-radius:22px;display:grid;gap:15px;margin:0;min-width:0}.public-volume-pricing h3,.audience-included h3{font-size:24px;line-height:1.3}.public-volume-pricing p,.audience-included p{color:#536783;font-size:13px;margin:0}.public-volume-pricing .public-volume-estimate{font-size:12px;padding:10px 13px;background:#f2f6fd;border-radius:9px}.public-volume-pricing label{display:grid;gap:8px;font-size:13px;font-weight:600;margin:5px 0}.public-volume-pricing input{width:100%;max-width:180px;font-size:19px}.public-volume-pricing .volume-price{min-width:0;font-size:13px}.public-volume-pricing .volume-price p{margin-top:12px}.public-volume-pricing .volume-price-total{border-bottom:1px solid var(--border);padding:18px 0}.public-volume-tiers{padding-top:16px;border-top:1px solid var(--border);font-size:12px;color:#536783}.public-volume-tiers summary{font-weight:600;cursor:pointer;color:var(--audience-ink)}.public-volume-tiers ul{padding-left:18px;line-height:1.9}.audience-included ul{display:grid;gap:17px;list-style:none;padding:8px 0;margin:0}.audience-included li{display:flex;align-items:start;gap:12px;font-size:14px;line-height:1.6}.audience-included li svg{color:#245dcc;margin-top:2px}.audience-included .button{justify-self:start}.audience-start-steps{list-style:none;padding:0;margin:32px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.audience-start-steps li{border-top:1px solid #cbd9ed;padding-top:24px}.audience-start-steps li>span{color:#86a7d9;font-size:28px;font-weight:600}.audience-start-steps h3{margin:17px 0 10px;font-size:18px}.audience-start-steps p{font-size:14px;color:#536783}.audience-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;border-top:1px solid var(--border)}.audience-faq details{border-bottom:1px solid var(--border);padding:21px 0}.audience-faq details:first-child{padding-top:0}.audience-faq summary{font-size:15px;font-weight:600;line-height:1.7;cursor:pointer}.audience-faq p{color:#536783;font-size:14px;margin:13px 0 0}.public-audience #comunitate{padding-top:30px}.public-audience #comunitate .public-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 900px){.audience-hero{grid-template-columns:1fr;gap:36px;padding-top:38px}.audience-hero-copy{max-width:680px}.audience-journey{max-width:600px;width:100%}.audience-journey h2{max-width:none}.audience-pricing-grid{grid-template-columns:1fr}.audience-price-card{max-width:none}.audience-faq{grid-template-columns:1fr;gap:12px}.audience-benefit-grid article{flex-direction:column}}@media (max-width: 640px){.public-audience .public-header nav{display:flex;gap:12px 26px;padding-top:6px}.audience-role-bar{padding:14px 20px;gap:9px}.audience-role-bar>span{flex-basis:100%}.audience-role-bar a{padding:8px 13px}.audience-hero{padding:32px 20px 42px}.audience-hero h1{font-size:34px}.audience-lead{font-size:14px}.audience-journey{padding:24px;border-radius:20px}.audience-section{padding:42px 20px}.audience-benefit-grid{grid-template-columns:1fr;gap:12px}.audience-benefit-grid article{flex-direction:row;gap:14px;padding:22px 18px}.audience-benefit-icon{width:36px;height:36px;border-radius:10px}.audience-pricing-section{border-radius:0}.audience-price-card,.public-audience .public-volume-pricing,.audience-included{padding:24px 20px}.audience-start-steps{grid-template-columns:1fr;gap:16px}.audience-start-steps li{padding-top:18px}.audience-start-steps h3{margin-top:8px}.public-audience #comunitate .public-feature-grid{grid-template-columns:1fr}}
