@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Dancing+Script:wght@600;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#121a2c;background:#fff;font-synthesis:none;--navy:#121a2c;--blue:#0755f5;--muted:#687896;--line:#e2e8f1;--soft:#f5f7fb;--green:#147b57;--radius:10px}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.65}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #639cff;outline-offset:3px}h1,h2,h3{font-family:Manrope,DM Sans,Arial,sans-serif;line-height:1.27;letter-spacing:-.035em;margin:0 0 16px;font-weight:800}h1{font-size:42px;letter-spacing:-.045em}h2{font-size:27px}h3{font-size:20px;letter-spacing:-.02em}p{margin:0 0 18px;color:var(--muted)}small{font-size:13px;line-height:1.55;color:var(--muted)}svg{flex-shrink:0;vertical-align:middle}button svg,a svg{vertical-align:middle}button{border:none;background:transparent;color:inherit}input,textarea,select{width:100%;padding:12px 14px;border:1px solid #cbd5e3;border-radius:7px;background:#fff;color:var(--navy);font-size:15px;line-height:1.5}textarea{resize:vertical;margin:8px 0 14px}input:disabled{background:var(--soft);color:var(--muted)}label{display:block;font-weight:600;font-size:14px;margin:0 0 18px}label input,label select{margin-top:7px}fieldset{border:0;padding:0;margin:0}details{border:1px solid var(--line);border-radius:8px;padding:16px 20px;margin:18px 0}summary{cursor:pointer;font-weight:650;color:#263654}details[open] summary{margin-bottom:20px}details p{margin-top:14px}strong{font-weight:700}.shell{display:flex;min-height:100vh}.sidebar{width:256px;position:fixed;inset:0 auto 0 0;background:var(--navy);color:#b6c8e3;display:flex;flex-direction:column;z-index:30}.brand{display:flex;flex-direction:column;margin:35px 32px 33px;padding-bottom:32px;border-bottom:1px solid #344156;color:#fff;line-height:1.25}.brand strong{font-size:30px;letter-spacing:-1px;font-family:Manrope,sans-serif}.brand span{font-size:23px;color:#8fa8cc;margin-top:3px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav a{display:flex;align-items:center;gap:21px;padding:17px 26px 17px 32px;color:#b7c9e3;border-left:4px solid transparent;font-size:16px;margin-right:10px;border-radius:0 8px 8px 0}.sidebar nav a svg{width:25px;height:25px;stroke-width:1.6}.sidebar nav a.active{color:#4290ff;background:#1a2b45;border-left-color:#267dff}.sidebar nav a:hover{background:#1a2940;color:#fff}.sidebar-foot{margin:auto 30px 30px;padding-top:25px;border-top:1px solid #344156;font-size:14px}.sidebar-foot small{display:block;color:#8396b1;margin-top:6px}.workspace{margin-left:256px;width:calc(100% - 256px)}.topbar{height:74px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;color:#51617e;font-size:14px}.topbar>span,.topbar>div{display:flex;align-items:center;gap:16px}.topbar>div{gap:18px}.user-link{display:flex;gap:9px;align-items:center;color:var(--navy);font-weight:600}.avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#eaf0ff;color:var(--blue)}main{padding:40px 38px 64px;max-width:1440px;margin:auto;min-height:calc(100vh - 150px)}.page-heading{margin:0 0 29px}.page-heading h1{margin-bottom:12px}.page-heading>p{font-size:22px;line-height:1.5;margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--blue);color:#fff;padding:14px 24px;border:1px solid var(--blue);border-radius:8px;font-size:15px;font-weight:650;line-height:1.5;min-height:48px;transition:background .15s,transform .15s}.button:hover{background:#0045d2;border-color:#0045d2;transform:translateY(-1px)}.button.secondary{background:#fff;color:var(--blue);border-color:#bed0f6}.button.secondary:hover{background:#eef4ff}.button.small{padding:9px 17px;min-height:40px;font-size:14px}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;border-radius:6px;color:#465b7c}.icon-button:hover{background:#ecf2fb}.text-button{color:var(--blue);font-size:14px;padding:8px 0;text-align:left}.journey{background:var(--navy);border-radius:10px;position:relative;overflow:hidden;min-height:246px;display:flex;align-items:center;margin-top:25px}.journey>div{padding:35px 42px;z-index:1;width:65%}.journey h2{font-size:35px;color:#fff;margin-bottom:13px}.journey p{font-size:19px;color:#a4badc;margin-bottom:23px}.journey img{height:100%;width:46%;position:absolute;right:0;top:0;object-fit:cover}.journey .button{min-width:196px}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin:36px 0 38px}.stat{display:flex;align-items:center;justify-content:center;gap:9px;border-right:1px solid var(--line);white-space:nowrap}.stat:last-child{border:0}.stat>svg{width:32px;height:32px;stroke-width:1.6;margin-right:16px}.stat strong{font-size:33px;line-height:1;font-family:Manrope,sans-serif}.stat span{font-size:16px;color:#4b5e7f}.stats.personal .stat{flex-wrap:wrap;column-gap:10px;row-gap:5px}.personal .stat>svg{color:var(--blue);margin-right:4px;width:25px}.personal .stat span{width:100%;text-align:center;font-size:13px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 32%;gap:40px;margin-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.section-heading h2{margin:0}.section-heading>a{font-size:14px;display:flex;align-items:center;gap:4px}.track-row{display:flex;align-items:center;gap:31px;border-bottom:1px solid var(--line);padding:25px 0;color:var(--navy)}.track-row:last-child{border-bottom:0}.track-row:hover h3{color:var(--blue)}.track-row>div{flex:1}.track-row h3{font-size:20px;margin-bottom:6px}.track-row p{font-size:15px;margin:0;line-height:1.6}.track-number{font-family:Manrope,sans-serif;font-size:49px;line-height:1;color:#b2bdcf;font-weight:800;min-width:72px}.track-row>svg{width:25px}.rhythm{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:26px 28px;display:flex;flex-direction:column}.rhythm h2{font-size:24px;line-height:1.35;margin-bottom:14px}.rhythm>p{font-size:18px;line-height:1.55;color:#586985}.rhythm>.button{margin-top:auto;width:100%;padding:12px 10px}.book-motif{margin:8px auto 20px;color:#659af8;transform:rotate(-8deg)}.signup-band{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px 0;border-top:1px solid var(--line);margin-top:42px}.signup-band h2{margin-bottom:9px}.signup-band p{margin-bottom:0}.footer{border-top:1px solid var(--line);padding:23px 38px;font-size:12px;display:flex;justify-content:space-between;gap:15px;color:var(--muted)}.footer a{color:var(--muted)}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:14px 0 20px}.calendar span{aspect-ratio:1;display:grid;place-items:center;background:#e5ebf5;border-radius:5px;font-size:12px;color:#7788a3}.calendar span.active-day{background:var(--blue);color:#fff}.achievements{margin-top:46px}.achievements>div{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.badge{border:1px solid var(--line);border-radius:8px;padding:21px 16px;background:#fafbfc;text-align:center;color:#8d9ab0}.badge>svg{width:35px;height:35px;margin-bottom:12px}.badge h3{font-size:15px;margin:0 0 8px}.badge p{font-size:12px;margin:0 0 9px}.badge small{font-size:11px}.badge.earned{color:#086543;background:#f1faf6;border-color:#bde6d5}.badge.earned small{color:#147b57}.search{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;padding:0 13px;margin:0;max-width:460px;min-width:200px;background:#fff;color:var(--muted)}.search input{border:0;padding:13px 0;margin:0;outline:none;background:transparent;min-width:0}.search:focus-within{outline:2px solid var(--blue)}.track-section{margin-top:36px;scroll-margin-top:30px}.track-heading{display:flex;gap:22px;align-items:center;margin-bottom:16px}.track-heading>span{font-size:37px;font-family:Manrope,sans-serif;font-weight:800;color:#b8c4d6}.track-heading>div{flex:1}.track-heading h2{font-size:25px;margin:0 0 6px}.track-heading p{font-size:15px;margin:0}.progress-bar{height:5px;background:#e8edf5;border-radius:4px;overflow:hidden}.progress-bar i{display:block;background:var(--blue);height:100%;border-radius:4px}.lesson-row{display:flex;align-items:center;gap:20px;padding:22px 16px;border-bottom:1px solid var(--line);color:var(--navy)}.lesson-row:hover{background:#f6f9ff}.lesson-row>div{flex:1}.lesson-row h3{font-size:17px;margin:0 0 6px}.lesson-marker{display:grid;place-items:center;width:37px;height:37px;border:1px solid #d7e0ee;border-radius:50%;font-size:13px;color:#637695}.lesson-marker.completed{background:#ebf9f2;color:#14885a;border-color:#c0e8d4}.tabs{display:flex;gap:15px;border-bottom:1px solid var(--line);margin-bottom:25px;overflow-x:auto}.tabs button{padding:15px 19px;border-bottom:2px solid transparent;white-space:nowrap;font-size:15px;font-weight:600}.tabs button[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.tabs button:hover{background:#f6f9ff}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:23px 0}.toolbar .tabs{margin:0}.material-list{border-top:1px solid var(--line)}.material-row{display:flex;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);color:var(--navy)}.material-row>div{flex:1}.material-row h3{font-size:18px;margin:4px 0 0;letter-spacing:-.01em}.file-icon{width:46px;height:54px;border-radius:7px;background:#eef4ff;color:var(--blue);display:grid;place-items:center}.notice,.success,.error{padding:17px 21px;border-radius:8px;margin:20px 0;background:#eff4ff;border:1px solid #d2e0ff;font-size:14px;color:#405a83}.notice p,.success p,.error p{margin:6px 0 0;color:inherit}.success{background:#eefaf4;border-color:#bde6cf;color:#176343}.error{background:#fff1f1;border-color:#ffc8c8;color:#aa3030}.notice strong{display:block}.empty{padding:70px 20px;text-align:center;color:var(--muted)}.empty>svg{color:#95abc9;margin-bottom:22px}.empty h1{font-size:30px}.empty h2{font-size:25px;color:var(--navy)}.empty p{max-width:600px;margin:12px auto 25px}.empty .button{margin-top:5px}.empty.compact{padding:35px 15px}.empty.compact p{margin-bottom:0}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;gap:20px;flex-direction:column}.loading-screen b{font-family:Manrope,sans-serif;font-size:36px}.loading-screen span{color:var(--muted)}.fatal{padding:50px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);z-index:100;padding:15px 24px;max-width:90vw;background:var(--navy);color:#fff;border-radius:8px;box-shadow:0 10px 30px #121a2c30;font-size:14px}.offline{background:#fff7db;padding:12px 38px;font-size:14px;color:#705913}.note-card{border:1px solid var(--line);border-radius:10px;padding:25px;margin:20px 0}.note-card h2{display:flex;align-items:center;justify-content:space-between;font-size:23px;margin-top:6px;color:var(--navy)}.note-card>p{white-space:pre-wrap;color:#42536e}.back-link{display:inline-flex;align-items:center;gap:10px;font-size:14px;margin-bottom:25px}.lesson-title{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:15px}.lesson-title h1{font-size:35px;max-width:900px}.lesson-title p{font-size:14px;margin-bottom:9px}.completion{display:flex;align-items:center;gap:8px;color:var(--green);font-size:14px}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:30px;align-items:start}.lesson-content{min-width:0}.lesson-content>section>h2{font-size:25px}.reading{font-size:17px;line-height:1.9;max-width:900px}.reading h1{margin-bottom:25px}.reading h2{font-size:27px;margin:27px 0 17px}.reading h3{font-size:21px;margin:30px 0 16px}.reading p{color:#465670;margin-bottom:23px}.unit{border-bottom:1px solid var(--line);padding:0 0 28px;margin-bottom:30px;scroll-margin-top:25px}.unit:first-child h2{margin-top:0}.unit-index{padding:20px;background:var(--soft);border-radius:8px;margin-bottom:25px;font-size:14px}.unit-index strong{display:block;margin-bottom:8px}.unit-index a{display:block;margin:5px 0}.learning-goal{font-size:15px;background:#eef5ff;border-left:3px solid #6b9aff;padding:16px 18px;display:flex;gap:10px;line-height:1.65}.learning-goal svg{color:var(--blue);margin-top:3px}.concept-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:22px 0;font-size:13px;color:var(--blue)}.concept-flow span{border:1px solid #d2def2;background:#f8faff;padding:8px 12px;border-radius:5px}.practice-callout{padding:25px 28px;background:var(--navy);border-radius:8px;color:#fff;margin:28px 0}.practice-callout h3{margin:0 0 15px;display:flex;align-items:center;gap:12px;color:#fff}.practice-callout p{color:#c4d3e9;font-size:16px;margin:0}.prompt-box{background:#f4f7fc;border:1px solid var(--line);border-radius:8px;padding:18px 23px}.prompt-box>div{display:flex;justify-content:space-between;align-items:center}.prompt-box small{font-size:10px;letter-spacing:.12em;font-weight:700}.prompt-box p{font-size:15px;line-height:1.8;margin:12px 0 0;color:#263f65}.steps{padding:0;list-style:none;counter-reset:step}.steps li{counter-increment:step;display:flex;align-items:flex-start;gap:14px;margin:15px 0;font-size:16px;color:#4d5f7b;line-height:1.7}.steps li:before{content:counter(step);background:#eaf1ff;color:var(--blue);width:27px;height:27px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;font-size:12px;font-weight:700;margin-top:1px}.challenge{padding:19px 23px;border-left:3px solid #0755f5;background:#f8faff;margin:25px 0}.challenge p{font-size:15px;margin:10px 0 0}.sources{padding-left:21px}.sources li{margin:15px 0;overflow-wrap:anywhere;font-size:14px}.sources small{display:block;margin-top:5px}.sources a svg{margin-left:6px}.tutor{border:1px solid var(--line);border-radius:10px;padding:23px 20px;position:sticky;top:22px;background:#fff}.tutor h2{display:flex;align-items:center;gap:11px;font-size:19px;margin:0 0 10px;letter-spacing:-.025em}.tutor h2 svg{color:var(--blue)}.tutor>p{font-size:13px;margin-bottom:16px}.tutor-context{font-size:11px;display:block;background:#f3f6fc;padding:10px 12px;border-radius:5px;line-height:1.6}.chat-log{max-height:440px;overflow-y:auto;margin:12px 0 20px;scrollbar-width:thin}.tutor-empty{padding:21px 4px 8px;font-size:14px}.tutor-empty>svg{display:block;color:#92a8c8;margin-bottom:16px}.tutor-empty p{font-size:13px;margin-top:9px;margin-bottom:0}.tutor label{font-size:12px;margin:14px 0 6px}.tutor textarea,.tutor select{font-size:13px}.tutor .button{width:100%;font-size:13px;padding:12px 7px}.tutor .small-notice{font-size:12px;padding:12px;line-height:1.7}.privacy-note{display:block;font-size:11px;margin-top:16px}.chat-message{font-size:13px;padding:13px 12px;margin:12px 0;border-radius:8px;background:#f2f6ff}.chat-message.user{background:#121a2c;color:#fff}.chat-message strong{font-size:11px;display:block}.chat-message p{white-space:pre-wrap;margin:7px 0 0;color:inherit;overflow-wrap:anywhere;line-height:1.7}.chat-message small{font-size:10px;display:block;margin-top:8px}.thinking{font-size:12px}.lesson-actions{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:35px}.lesson-actions .button{font-size:13px;padding:12px 16px}.hint{font-size:12px;line-height:1.7;margin-top:14px;color:var(--muted)}.slide-frame{background:var(--navy);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.slide-frame img{width:100%;aspect-ratio:16/9;object-fit:contain;display:block}.slide-controls{display:flex;justify-content:center;align-items:center;gap:12px;background:#1c2940;padding:10px}.slide-controls .icon-button{color:#fff}.slide-controls .icon-button:hover{background:#344660}.slide-controls label{margin:0}.slide-controls select{margin:0;background:#243753;color:#fff;border:1px solid #435572;font-size:12px;width:auto;padding:7px}.slide-frame:fullscreen img{max-height:calc(100vh - 65px)}.slide-frame:fullscreen{border-radius:0}.slide-player>details{font-size:14px}.quiz{padding:25px;background:#f6f8fd;border:1px solid var(--line);border-radius:10px;margin:27px 0 34px}.quiz h3{font-size:19px}.quiz .question{font-size:18px;color:var(--navy);font-weight:600}.answer-option{display:flex;align-items:flex-start;gap:13px;background:#fff;border:1px solid #d9e1ee;padding:15px;border-radius:7px;font-size:14px;font-weight:400;cursor:pointer}.answer-option input{width:16px;flex-shrink:0;margin:4px 0 0;accent-color:var(--blue)}.answer-option.selected{border-color:var(--blue);background:#f0f5ff}.open-question{font-size:14px}.open-question label{font-size:13px}.open-question textarea{font-size:14px}.feedback{margin-top:19px;border-left:3px solid #1a875f;padding:12px 16px;background:#f2faf6}.feedback p{margin-top:10px;color:#375c4d}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:1100px;margin:25px auto}.auth-intro{background:var(--navy);padding:38px 35px;color:#fff;border-radius:12px;overflow:hidden;position:relative;min-height:600px}.auth-intro h1{font-size:37px;line-height:1.3}.auth-intro p{color:#9eb4d6;font-size:17px}.auth-intro>div{display:flex;align-items:center;gap:14px;color:#c1d1e8;font-size:14px;margin-top:22px}.auth-intro img{width:100%;margin-top:25px;border-radius:8px}.auth-form{align-self:center;padding:15px 0}.auth-form h2{font-size:29px}.auth-form label{margin-top:22px}.auth-form>.button{width:100%;margin:20px 0 10px}.auth-form>.text-button{width:100%;text-align:center}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:25px 0}.panel{border:1px solid var(--line);border-radius:10px;padding:27px 28px;margin:25px 0;background:#fff}.settings-grid>.panel{margin:0;min-width:0}.panel h2{font-size:23px;display:flex;align-items:center;gap:10px}.panel h2 svg{color:var(--blue)}.panel p{font-size:14px}.panel label{margin:20px 0}.export-panel{display:flex;align-items:center;justify-content:space-between;gap:25px}.export-panel p{margin-bottom:0}.admin-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:30px 0}.admin-metrics>div{border:1px solid var(--line);border-radius:8px;padding:25px;display:grid;grid-template-columns:35px 1fr;column-gap:17px;align-items:center}.admin-metrics svg{grid-row:span 2;color:var(--blue);background:#f0f5ff;padding:6px;box-sizing:content-box;border-radius:6px;width:25px;height:25px}.admin-metrics strong{font-size:30px;line-height:1.2}.admin-metrics span{font-size:13px;color:var(--muted)}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{background:var(--soft);font-size:12px;font-weight:650;padding:16px}td{padding:18px 16px;border-bottom:1px solid var(--line)}td small{display:block;font-size:11px;margin-top:4px}td strong{font-size:14px}td .progress-bar{margin-top:7px;width:85px}.audit-list p{display:flex;flex-wrap:wrap;gap:15px;padding:13px 0;border-bottom:1px solid var(--line);margin:0;font-size:12px}.audit-list time{color:#8493a9;font-size:11px;min-width:135px}.audit-list strong{color:#3b506f}.track-stat{margin:20px 0}.track-stat>span{display:flex;justify-content:space-between;font-size:13px;margin-bottom:8px;gap:10px}.track-stat small{font-size:11px;white-space:nowrap}.bar-chart{height:190px;display:flex;align-items:flex-end;justify-content:space-around;gap:9px;padding-top:20px}.bar-chart>div{display:flex;flex-direction:column;align-items:center;flex:1}.bar-chart span{display:flex;align-items:flex-start;justify-content:center;background:#3579ff;width:100%;max-width:40px;border-radius:4px 4px 0 0;position:relative}.bar-chart b{position:absolute;top:-20px;font-size:11px;font-weight:500;color:#476387}.bar-chart small{font-size:9px;margin-top:7px}.tutor-settings{max-width:850px}.model-order{list-style:none;padding:0;margin:20px 0}.model-order li{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0;font-size:14px;gap:8px}.model-order li>span{display:flex;align-items:center;gap:15px}.model-order b{width:26px;height:26px;background:#edf3ff;color:var(--blue);display:grid;place-items:center;border-radius:50%;font-size:12px}.model-order li>div{display:flex;gap:3px}.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;left:15px;top:-70px;background:#fff;padding:10px 20px;z-index:200}.skip-link:focus{top:10px}@media(min-width:1500px){h1{font-size:49px}.page-heading>p{font-size:25px}.journey h2{font-size:40px}.journey p{font-size:21px}.journey{min-height:246px}.sidebar nav a{font-size:17px}}@media(max-width:1200px){.sidebar{width:218px}.workspace{margin-left:218px;width:calc(100% - 218px)}.brand{margin:30px 25px}.brand strong{font-size:26px}.sidebar nav a{font-size:14px;gap:14px;padding-left:22px}.sidebar nav a svg{width:21px}.sidebar-foot{font-size:12px;margin-left:24px;margin-right:24px}main{padding:32px 28px}.topbar{padding:0 28px}h1{font-size:35px}.page-heading>p{font-size:19px}.journey>div{padding:30px;width:72%}.journey h2{font-size:30px}.journey p{font-size:16px}.stats{gap:8px}.stat{gap:7px}.stat>svg{width:25px;margin-right:2px}.stat strong{font-size:27px}.stat span{font-size:13px}.dashboard-grid{gap:23px;grid-template-columns:minmax(0,1fr) 33%}.rhythm{padding:22px}.rhythm h2{font-size:21px}.rhythm p{font-size:16px}.track-row{gap:18px}.track-number{font-size:40px;min-width:55px}.track-row h3{font-size:17px}.track-row p{font-size:13px}.lesson-layout{grid-template-columns:minmax(0,1fr) 275px;gap:20px}.tutor{padding:20px 16px}.lesson-title h1{font-size:30px}.auth-layout{gap:32px}.auth-intro{padding:28px}.auth-intro h1{font-size:30px}.panel{padding:23px}.footer{padding:22px 28px;flex-wrap:wrap}.achievements>div{grid-template-columns:repeat(3,1fr)}}@media(max-width:950px){.sidebar{width:190px}.workspace{margin-left:190px;width:calc(100% - 190px)}.brand strong{font-size:23px}.brand span{font-size:20px}.sidebar nav a{padding:14px;font-size:12px;gap:10px}.sidebar nav a svg{width:19px}.sidebar-foot{font-size:11px}.sidebar-foot small{display:none}.lesson-layout{grid-template-columns:1fr}.tutor{position:static;max-width:none}.tutor .chat-log{max-height:350px}.dashboard-grid{grid-template-columns:1fr}.rhythm{display:block}.rhythm .book-motif{display:none}.rhythm>.button{margin-top:15px;width:auto}.stats .stat{flex-wrap:wrap}.stat span{width:100%;text-align:center}.calendar{max-width:310px}.settings-grid{grid-template-columns:1fr}.auth-layout{grid-template-columns:1fr;max-width:470px}.auth-intro{display:none}.admin-metrics{gap:12px}.admin-metrics>div{padding:17px 12px;grid-template-columns:1fr}.admin-metrics svg{grid-row:auto;margin-bottom:10px}.admin-metrics strong{font-size:26px}.admin-metrics span{font-size:11px}.toolbar{flex-wrap:wrap}.panel h2{font-size:20px}.journey img{width:40%;opacity:.65}.journey>div{width:90%}.export-panel{flex-wrap:wrap}.page-heading h1{font-size:33px}}@media(max-width:700px){html,body{overflow-x:hidden}.shell{display:block;overflow-x:hidden}.sidebar{position:static;width:100%;max-width:100vw;overflow-x:hidden;display:block}.brand{border:0;padding:18px 20px 8px;margin:0;flex-direction:row;align-items:baseline;gap:9px}.brand strong{font-size:22px;letter-spacing:-.8px}.brand span{font-size:15px}.sidebar nav{flex-direction:row;gap:0;overflow-x:auto;padding:4px 10px 10px;scrollbar-width:none}.sidebar nav a{flex-direction:column;gap:5px;padding:10px 12px 7px;border:0;border-radius:6px;margin:0;white-space:nowrap;font-size:10px;min-width:78px}.sidebar nav a svg{height:19px;width:19px}.sidebar-foot{display:none}.workspace{width:100%;margin:0;overflow-x:hidden}.topbar{height:60px;padding:0 20px;font-size:12px}.topbar>span{gap:5px}.topbar>div{gap:6px}.topbar .button.small{padding:6px 18px;font-size:12px;min-height:34px}.topbar .user-link{font-size:13px}main{padding:29px 20px 45px}.page-heading h1{font-size:32px;line-height:1.18;max-width:520px}.page-heading>p{font-size:17px;margin-top:14px;line-height:1.6}.journey{min-height:253px}.journey>div{padding:27px 23px;width:100%}.journey h2{font-size:28px;max-width:270px}.journey p{font-size:15px;max-width:260px}.journey img{width:42%;object-position:center;opacity:.35}.journey .button{padding:11px 17px;font-size:14px;min-width:175px}.stats{grid-template-columns:repeat(2,1fr);row-gap:23px;margin:30px 0}.stat:nth-child(2){border:0}.stat>svg{width:25px;height:25px;margin-right:5px}.stat strong{font-size:30px}.stat span{font-size:13px}.stats .stat{white-space:normal!important;flex-direction:column!important;text-align:center!important;border-right:none!important;padding:8px 4px!important}.stats .stat span{white-space:normal!important;text-align:center!important;font-size:12px!important}.stats.personal .stat{flex-wrap:wrap!important}.personal .stat span{width:100%!important}.dashboard-grid{gap:25px;margin-top:32px}.section-heading h2{font-size:24px}.section-heading>a{font-size:12px}.track-row{gap:17px;padding:23px 0}.track-number{font-size:39px;min-width:51px}.track-row h3{font-size:17px}.track-row p{font-size:13px}.track-row>svg{width:21px}.rhythm h2{font-size:24px}.rhythm{padding:25px}.signup-band{flex-direction:column;align-items:flex-start;gap:21px;margin-top:30px}.signup-band h2{font-size:24px}.signup-band p,.signup-band .button{font-size:14px}.footer{font-size:10px;padding:20px;gap:8px}.footer span:last-child{width:100%}.achievements h2{font-size:24px}.achievements>div{grid-template-columns:repeat(2,1fr);gap:11px}.badge{padding:19px 10px}.badge h3{font-size:14px}.track-heading{gap:15px;flex-wrap:wrap}.track-heading>span{font-size:30px}.track-heading h2{font-size:22px}.track-heading p{font-size:13px}.track-heading>small{margin-left:53px}.lesson-row{gap:13px;padding:20px 4px}.lesson-row h3{font-size:15px}.lesson-row small{font-size:11px}.lesson-row>svg{width:18px}.search{max-width:none;width:100%}.toolbar{gap:17px}.toolbar .tabs{width:100%}.tabs{gap:0}.tabs button{padding:13px 12px;font-size:13px}.material-row{gap:12px;padding:21px 0}.material-row h3{font-size:15px;line-height:1.5}.material-row small{font-size:10px}.file-icon{width:35px;height:45px}.material-row .button.small{padding:7px;min-height:35px}.material-row .button span{display:none}.material-row>.icon-button{min-width:28px}.back-link{font-size:12px;margin-bottom:17px}.lesson-title h1{font-size:28px;line-height:1.25}.lesson-title p{font-size:12px}.lesson-title{display:block}.completion{margin-bottom:17px;font-size:12px}.lesson-tabs{margin-bottom:24px}.reading{font-size:16px;line-height:1.85}.reading h2{font-size:24px}.reading h3{font-size:20px}.learning-goal{font-size:13px;padding:14px}.practice-callout{padding:22px}.practice-callout p{font-size:14px}.prompt-box{padding:17px}.prompt-box p{font-size:14px}details{padding:14px 16px}summary{font-size:14px}.steps li{font-size:14px}.tutor{padding:23px;margin-top:15px}.tutor h2{font-size:21px}.tutor textarea{font-size:15px}.tutor select,.tutor .button{font-size:14px}.tutor label{font-size:13px}.quiz{padding:21px 17px}.quiz .question{font-size:16px}.answer-option{font-size:13px;padding:13px}.lesson-actions{gap:10px}.lesson-actions .button{font-size:12px;padding:11px 13px}.lesson-content>section>h2{font-size:24px}.auth-layout{margin:5px auto}.auth-form h2{font-size:27px}.panel{padding:23px 19px;margin:22px 0}.settings-grid{gap:22px}.admin-metrics{gap:8px}.admin-metrics>div{padding:15px 11px}.admin-metrics strong{font-size:26px}.admin-metrics span{font-size:10px;line-height:1.5}.admin-metrics svg{width:20px;height:20px}.admin-metrics{margin:25px 0}.model-order,.model-order li{font-size:12px}.model-order li>span{gap:8px}.model-order b{width:22px;height:22px}.model-order .icon-button{min-width:30px}.toast{width:calc(100% - 32px);bottom:16px;font-size:13px;text-align:center}.offline{padding:10px 20px;font-size:12px}.note-card{padding:21px}.note-card h2{font-size:20px}.note-card p{font-size:14px}.empty{padding:45px 8px}.empty h1{font-size:27px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{.sidebar,.topbar,.footer,.tutor,.lesson-tabs,.lesson-actions,.button{display:none!important}.workspace{margin:0;width:100%}main{padding:0}.lesson-layout{display:block}.reading{max-width:none}.unit{break-inside:auto}.practice-callout{background:#fff;color:#000;border:1px solid #aaa}.practice-callout p,.practice-callout h3{color:#000}}.first-session-guide{margin:24px 0 28px;padding:24px 26px;border:1px solid #cfe0ff;border-radius:14px;background:linear-gradient(135deg,#f5f9ff,#fff)}.first-session-heading{max-width:720px}.first-session-heading h2{margin:8px 0;font-size:25px;color:var(--navy)}.first-session-heading p{margin:0;color:#526987;line-height:1.65}.first-session-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;margin:22px 0 0;padding:0}.first-session-steps li{display:flex;gap:12px;align-items:flex-start;padding:15px;border-radius:10px;background:#fff;border:1px solid #e1e9f6}.first-session-steps li>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#e7f0ff;color:var(--blue);font-weight:800}.first-session-steps strong,.first-session-steps small{display:block}.first-session-steps strong{font-size:14px;color:var(--navy)}.first-session-steps small{margin-top:5px;color:#60738e;line-height:1.45}.mobile-more-trigger{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.mobile-more-trigger.active{color:var(--blue)}.mobile-more-backdrop,.mobile-more-menu{display:none}.material-access-note{margin:0 0 18px}.material-access-note p{margin-bottom:0}.lesson-tabs-wrap{position:relative}.lesson-tabs-hint{display:none;color:#6b7e9a;font-size:11px;margin:-16px 0 17px;text-align:right}.project-workspace{margin:28px 0;padding:22px;border:1px solid #cfe0ff;border-radius:14px;background:linear-gradient(135deg,#f7faff,#fff)}.project-workspace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.project-workspace h3{margin:8px 0 6px;font-size:22px;color:var(--navy)}.project-workspace-head p{margin:0;color:#5d708c;line-height:1.6}.project-workspace textarea{display:block;width:100%;min-height:210px;margin:18px 0 10px;padding:15px;border:1px solid #cfdbea;border-radius:10px;resize:vertical;line-height:1.65}.project-workspace textarea:focus{outline:2px solid var(--blue);border-color:transparent}.project-workspace-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.project-workspace-footer>span{font-size:12px;color:#7b8ca4}.project-workspace-footer>span.met{color:#187957;font-weight:700}.project-workspace-footer>div{display:flex;gap:8px;flex-wrap:wrap}.project-submission-status{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:99px;background:#e9f8f1;color:#167651;font-size:12px;font-weight:700;white-space:nowrap}.project-feedback{margin-top:15px;padding:13px 15px;border-left:3px solid #2b8b65;background:#effaf5;color:#2f5e4e}.project-feedback p{margin:5px 0;color:inherit}.project-feedback small{font-size:11px}.task-review-queue{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.task-review-queue h3{display:flex;align-items:center;gap:8px;margin:0 0 5px}.task-review-list{display:grid;gap:14px}.task-review-card{padding:17px;border:1px solid #dbe5f2;border-radius:11px;background:#fbfdff}.task-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-review-head strong,.task-review-head small{display:block}.task-review-head small{margin-top:5px;color:#647792;line-height:1.45}.task-review-status{padding:5px 9px;border-radius:99px;background:#fff5dc;color:#8c650e;font-size:11px;white-space:nowrap}.task-review-status.evaluated{background:#eaf8f1;color:#167651}.task-review-status.needs_revision{background:#fff0f0;color:#a13434}.task-review-card details{margin:13px 0;padding:0}.task-review-card details summary{cursor:pointer;color:var(--blue);font-size:13px}.task-review-card pre{max-height:180px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:10px 0;padding:12px;background:#f0f4fa;border-radius:8px;font:13px/1.6 inherit}.task-review-card textarea{width:100%;margin:12px 0 8px;min-height:70px}.task-review-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.cert-history-note{margin:18px 0;text-align:left;font-size:13px;line-height:1.55}.admin-preview-note{display:flex;align-items:flex-start;gap:10px;margin:18px 0;padding:12px 14px;border:1px solid #e6d49b;border-radius:9px;background:#fffaf0;color:#6e5617;font-size:13px;line-height:1.5}.admin-preview-note svg{flex:0 0 auto;margin-top:2px}.admin-preview-note strong{color:#5b4307}@media(max-width:700px){.first-session-guide{padding:20px 17px;margin:20px 0 24px}.first-session-heading h2{font-size:21px}.first-session-heading p{font-size:14px}.first-session-steps{grid-template-columns:1fr;gap:9px;margin-top:17px}.first-session-steps li{padding:12px}.mobile-more-backdrop{display:block;position:fixed;inset:0;background:#0a19315c;z-index:98;border:0}.mobile-more-menu{display:block;position:fixed;left:12px;right:12px;bottom:82px;z-index:99;padding:15px;border:1px solid #dce6f5;border-radius:16px;background:#fff;box-shadow:0 18px 50px #1931563d}.mobile-more-menu-head{display:flex;align-items:center;justify-content:space-between;padding:0 2px 10px}.mobile-more-menu-head strong{font-size:16px;color:var(--navy)}.mobile-more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mobile-more-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:68px;padding:9px 5px;border:1px solid #e2e9f4;border-radius:10px;color:#49627f;font-size:11px;text-align:center}.mobile-more-grid a.active{border-color:#9dbfff;background:#eef5ff;color:var(--blue)}.mobile-more-grid a svg{color:var(--blue)}.lesson-tabs-hint{display:block}.lesson-tabs{margin-bottom:23px}.project-workspace{padding:17px;margin-top:22px}.project-workspace-head{display:block}.project-workspace h3{font-size:20px}.project-workspace textarea{min-height:180px;font-size:14px}.project-workspace-footer{display:block}.project-workspace-footer>div{margin-top:12px}.project-workspace-footer .button{width:100%;justify-content:center}.project-nav-item{min-height:60px}.task-review-head{display:block}.task-review-status{display:inline-flex;margin-top:10px}.task-review-actions{display:grid;grid-template-columns:1fr}.task-review-actions .button{width:100%;justify-content:center}}.auth-shell{min-height:100dvh;background:#fff}.auth-header{max-width:1180px;margin:0 auto;padding:25px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.auth-brand{display:flex;align-items:baseline;gap:9px;color:var(--navy);white-space:nowrap}.auth-brand strong{font-family:Manrope,sans-serif;font-size:25px;letter-spacing:-1px}.auth-brand span{color:var(--muted);font-size:18px}.auth-back{display:flex;align-items:center;gap:5px;font-size:13px;white-space:nowrap}.auth-shell main{max-width:1180px;margin:0 auto;padding:30px 40px 50px}@media(max-width:700px){.auth-header{padding:20px;gap:12px;flex-wrap:wrap}.auth-brand strong{font-size:22px}.auth-brand span{font-size:15px}.auth-back{font-size:12px}.auth-shell main{padding:26px 20px 40px}.auth-shell .auth-layout{margin:0 auto}.auth-shell .auth-form{padding:0}.auth-shell .auth-form h2{font-size:27px;line-height:1.25}}.badge-tests-section{scroll-margin-top:25px}.badge-tests-section .section-heading{align-items:flex-start}.badge-tests-section .section-heading h2{display:flex;align-items:center;gap:9px}.badge-test-rule{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#edf4ff;color:#245cc5;font-size:12px;font-weight:750;white-space:nowrap}.badge-test-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.badge-test-card{display:flex;flex-direction:column;gap:10px;min-width:0;border:1px solid var(--line);border-radius:14px;padding:19px;background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 6px 18px #121a2c0a}.badge-test-card.passed{border-color:#bde6d5;background:linear-gradient(180deg,#fbfffd,#f5fffa)}.badge-test-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.badge-test-card h3{font-size:19px;margin:3px 0 0;line-height:1.25}.badge-test-card p{flex:1;color:#5b6d88;font-size:13px;line-height:1.55;margin:0}.badge-test-status{display:inline-flex;align-items:center;gap:4px;color:#71819b;font-size:11px;font-weight:650;text-align:right}.badge-test-status.passed{color:#138653}.badge-test-meta{display:flex;flex-wrap:wrap;gap:7px 12px;color:#71819b;font-size:11px}.badge-test-meta span{display:inline-flex;align-items:center;gap:4px}.badge-test-card .button{align-self:flex-start;margin-top:5px}.badge-test-player{margin-top:28px;border:1px solid #bcd3f5;border-radius:16px;background:#f8fbff;padding:25px;scroll-margin-top:25px}.badge-test-player-header{display:flex;justify-content:space-between;gap:25px;align-items:flex-start;margin-bottom:24px}.badge-test-player-header h3{font-size:27px;margin:7px 0}.badge-test-player-header p{color:#5b6d88;font-size:14px;margin:0;line-height:1.55}.badge-test-progress{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:92px;min-height:72px;padding:8px 12px;border-radius:12px;background:#fff;border:1px solid #d8e4f4;color:#245cc5}.badge-test-progress strong{font-size:24px;line-height:1}.badge-test-progress span{font-size:10px;margin-top:6px;color:#71819b}.badge-test-question-list{display:grid;gap:13px}.badge-test-question{margin:0;padding:17px 18px;border:1px solid #d8e0ec;border-radius:12px;background:#fff;min-width:0}.badge-test-question.correct{border-color:#9edbbb;background:#fbfffc}.badge-test-question.wrong{border-color:#edb5bc;background:#fffafb}.badge-test-question legend{display:flex;align-items:flex-start;gap:10px;width:100%;font-size:15px;font-weight:750;line-height:1.45;padding:0;margin:0 0 14px}.badge-test-question legend>span{flex:0 0 27px;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#eaf2ff;color:#245cc5;font-size:12px}.badge-test-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.badge-test-option{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:11px 12px;border:1px solid #d8e0ec;border-radius:9px;color:#334661;font-size:13px;line-height:1.4;cursor:pointer;transition:background .15s,border-color .15s}.badge-test-option:hover{border-color:#9dbbe9;background:#f6f9ff}.badge-test-option.selected{border-color:#3b82f6;background:#edf4ff;color:#164fae;font-weight:650}.badge-test-option.answer-key{border-color:#63bf8f;background:#effcf5;color:#147443}.badge-test-option.answer-wrong{border-color:#e2959f;background:#fff0f1;color:#a32635}.badge-test-option input{width:16px;height:16px;padding:0;border:0;border-radius:50%;accent-color:#1d65de;margin:2px 0 0;flex:0 0 16px}.badge-test-option>span{min-width:0;overflow-wrap:anywhere}.badge-test-explanation{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px dashed #d7dfeb;font-size:12px;line-height:1.5;color:#52657f}.badge-test-explanation strong{color:#1d6b48}.badge-test-question.wrong .badge-test-explanation strong{color:#a32635}.badge-test-result{display:flex;align-items:flex-start;gap:12px;margin-top:18px;padding:15px 17px;border-radius:11px;border:1px solid #bad8f4;background:#edf6ff;color:#23466f}.badge-test-result.success{border-color:#9edbbb;background:#effcf5;color:#176b43}.badge-test-result.retry{border-color:#f0c9a1;background:#fff8ef;color:#7c4b18}.badge-test-result strong{font-size:15px}.badge-test-result p{margin:4px 0 0;font-size:13px;line-height:1.5}.badge-test-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.task-common-errors{border-color:#f1d7b3;background:#fffaf2;margin:18px 0}.task-common-errors summary{display:flex;align-items:center;gap:8px;color:#7c4b18}.task-common-errors ul{margin:0;padding-left:20px;color:#6d5a42;font-size:13px;line-height:1.65}@media(max-width:950px){.badge-test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.badge-test-grid{grid-template-columns:1fr}.badge-test-rule{white-space:normal}.badge-test-player{padding:17px 13px}.badge-test-player-header{display:block}.badge-test-progress{margin-top:16px;min-height:58px;flex-direction:row;gap:8px;justify-content:flex-start;width:max-content;min-width:0}.badge-test-progress span{margin-top:0}.badge-test-question{padding:15px 12px}.badge-test-question legend{font-size:14px}.badge-test-options{grid-template-columns:1fr}.badge-test-option{font-size:13px}.badge-test-actions .button{flex:1 1 100%}}.mobile-bottom-nav{display:none}@media(max-width:700px){.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--navy);border-top:1px solid #253652;z-index:100;justify-content:space-around;align-items:center;padding:0 4px;box-shadow:0 -4px 16px #0000001f}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#8da4c4;font-size:11px;font-weight:500;min-width:48px;min-height:48px;padding:4px 6px;border-radius:6px;text-decoration:none}.mobile-nav-item.active{color:#4290ff;font-weight:700}.mobile-nav-item svg{stroke-width:2}main{padding-bottom:84px!important}.footer{padding-bottom:74px!important}}.reading-toolbar{display:flex;justify-content:flex-end;margin-bottom:18px}.font-selector{display:inline-flex;align-items:center;gap:6px;background:var(--soft);border:1px solid var(--line);padding:4px 8px;border-radius:6px;color:var(--muted)}.font-btn{background:transparent;border:0;padding:3px 9px;border-radius:4px;font-size:13px;font-weight:600;color:var(--navy);cursor:pointer;transition:all .15s}.font-btn.font-btn-lg{font-size:15px}.font-btn.font-btn-xl{font-size:17px}.font-btn.active{background:#fff;color:var(--blue);box-shadow:0 1px 3px #0000001a}.reading.font-normal{font-size:17px;line-height:1.88}.reading.font-large{font-size:19px;line-height:1.95}.reading.font-large p{font-size:19px}.reading.font-extra{font-size:22px;line-height:2.05}.reading.font-extra p{font-size:22px}.lesson-top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.favorite-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border:1px solid #cdd8eb;border-radius:6px;background:#fff;font-size:13px;font-weight:600;color:#485c7b;cursor:pointer;transition:all .15s}.favorite-btn:hover{background:#f5f8fd;border-color:#acc1e6}.favorite-btn.active{background:#fffbf0;border-color:#f1cf75;color:#a06e08}.clear-chat-btn{color:#8c9cb3;padding:5px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center}.clear-chat-btn:hover{color:#c52929;background:#ffebeb}.tutor-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.hint-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;background:#eaf1ff;border:1px solid #bdd1fa;color:var(--blue);font-size:13px;font-weight:600;cursor:pointer}.hint-btn:hover{background:#d8e6ff}.hints-box{display:flex;flex-direction:column;gap:10px;margin:14px 0 20px}.hint-pill{display:flex;align-items:flex-start;gap:11px;background:#fffde6;border:1px solid #f6e398;border-radius:7px;padding:12px 16px;color:#6a5212;font-size:14px}.hint-pill strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}.hint-pill p{margin:0;color:inherit}.quiz-option-container{margin-bottom:12px}.answer-option.correct{border-color:#14885a;background:#eefaf4}.answer-option.wrong{border-color:#d84545;background:#fdf2f2}.option-explanation{padding:8px 14px 10px;background:#f5f8fc;border-left:3px solid #639cff;border-radius:0 0 6px 6px;margin-top:-2px;margin-left:10px;margin-right:10px;font-size:13px;color:#475a77;line-height:1.5}.quiz-actions{display:flex;gap:12px;align-items:center;margin-top:18px}.result-box{padding:18px 20px;border-radius:8px;margin-top:20px}.result-box.success{background:#eefaf4;border:1px solid #bde6cf;color:#176343}.result-box.notice{background:#eff4ff;border:1px solid #d2e0ff;color:#405a83}.result-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.retry-guidance{display:block;margin-top:10px;color:#5c4510;font-size:13px}.notes-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:15px}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.saving{background:#eef4ff;color:var(--blue)}.status-badge.saved{background:#eafaf1;color:var(--green)}.status-badge.error{background:#fff0f0;color:#c02d2d}.notes-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.char-count{font-size:12px;color:var(--muted)}.local-recovery-notice{margin-bottom:15px}.open-question-actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.onboarding-banner{background:linear-gradient(135deg,#182844,#203a63);color:#fff;border-radius:10px;padding:24px 30px;margin:20px 0}.onboarding-banner h2{color:#fff;margin-bottom:8px;font-size:22px}.onboarding-banner p{color:#bfd4f2;margin-bottom:16px;font-size:15px;max-width:700px}.pending-reviews-panel{border:1px solid var(--line);border-radius:10px;padding:24px 26px;margin:25px 0;background:#fff}.reviews-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.review-item{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#f7f9fd;border-radius:8px;border:1px solid #e1e9f5;gap:15px}.review-info strong{display:block;font-size:15px;color:var(--navy)}.review-info small{display:flex;align-items:center;gap:6px;color:#5a6e8e;font-size:13px;margin-top:4px}.review-actions{display:flex;gap:8px;flex-shrink:0}.favorites-quick-shelf{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.fav-links{display:flex;flex-wrap:wrap;gap:10px}.fav-lesson-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#f3f7fe;border:1px solid #c9daf8;border-radius:20px;font-size:13px;color:var(--navy);text-decoration:none;transition:all .15s}.fav-lesson-chip:hover{background:#e5efff;border-color:#8cb5f8}.fav-lesson-chip strong{color:var(--blue)}.cert-celebration-banner{background:linear-gradient(135deg,#0b492f,#157950);color:#fff;border-radius:10px;padding:24px 30px;margin:25px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.cert-celebration-banner>div{display:flex;align-items:center;gap:18px}.cert-celebration-banner h2{color:#fff;margin-bottom:4px;font-size:22px}.cert-celebration-banner p{color:#c8ebd9;margin:0;font-size:14px}.cert-celebration-banner .button{background:#fff;color:#0d5d3b;border-color:#fff;white-space:nowrap}.onboarding-container{max-width:800px;margin:20px auto;padding:10px}.onboarding-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:35px}.onboarding-steps-indicator{margin-bottom:25px}.onboarding-steps-indicator span{font-size:13px;font-weight:600;color:var(--muted);display:block;margin-bottom:8px}.step-icon{color:var(--blue);margin-bottom:16px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:25px 0}.choice-card{border:1px solid #d2dee8;border-radius:8px;padding:18px;text-align:left;background:#fff;cursor:pointer;transition:all .15s}.choice-card:hover{border-color:#8bb1ea;background:#f8faff}.choice-card.selected{border-color:var(--blue);background:#f0f5ff;outline:2px solid var(--blue)}.choice-card strong{display:block;font-size:15px;margin-bottom:6px;color:var(--navy)}.choice-card small{color:#5a6e8e;line-height:1.45;display:block;font-size:12px}.step-actions{display:flex;justify-content:space-between;align-items:center;margin-top:25px}.certificate-page{max-width:900px;margin:0 auto;padding:15px 0 40px;width:100%}.cert-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:18px}.cert-print-tip{display:flex;align-items:center;gap:10px;background:#f4f8fe;border:1px solid #cde0fc;border-radius:8px;padding:12px 16px;font-size:13px;color:#2a436a;margin-bottom:24px;line-height:1.5}.cert-print-tip svg{color:var(--blue);flex-shrink:0}.cert-print-tip strong{color:var(--navy)}.certificate-document{background:#fff;border:10px solid #132238;padding:30px;box-shadow:0 15px 40px #00000014;border-radius:4px;box-sizing:border-box;max-width:100%;overflow:hidden}.cert-inner-border{border:2px solid #caa146;padding:40px 35px;text-align:center;box-sizing:border-box}.cert-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;gap:15px}.cert-brand strong{font-size:24px;letter-spacing:2px;color:var(--navy);display:block}.cert-brand span{font-size:15px;letter-spacing:5px;color:#8fa8cc;display:block}.cert-badge-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#eaf8f1;color:#147b57;border-radius:20px;font-size:12px;font-weight:700;white-space:nowrap}.cert-subtitle{letter-spacing:4px;color:#8598b2;font-weight:700;font-size:13px;display:block;margin-bottom:12px}.cert-statement{font-size:17px;color:#51627e;margin-bottom:14px;font-style:italic}.cert-student-name{font-size:38px;color:var(--navy);margin-bottom:24px;font-family:Manrope,sans-serif;letter-spacing:-.02em;word-break:break-word;overflow-wrap:break-word;line-height:1.25}.cert-text{font-size:15px;line-height:1.8;color:#3b4c68;max-width:680px;margin:0 auto 26px}.cert-meta-pills{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin:0 auto 32px}.cert-pill{display:inline-flex;align-items:center;gap:6px;background:#f4f8fe;border:1px solid #d0e0fa;color:#243c64;padding:6px 14px;border-radius:20px;font-size:12px}.cert-pill strong{color:var(--navy)}.cert-footer{display:flex;justify-content:space-between;align-items:flex-end;padding-top:30px;border-top:1px solid #e1e9f4;text-align:left;gap:20px}.cert-signature-block strong{display:block;font-size:15px;color:var(--navy)}.cert-signature-handwriting{font-family:Dancing Script,Brush Script MT,Segoe Script,cursive;font-size:28px;font-weight:700;color:#14243b;display:block;line-height:1;margin-bottom:2px;transform:rotate(-3deg);transform-origin:left bottom;-webkit-user-select:none;user-select:none}.cert-sign-title{display:block;font-size:12.5px;font-weight:600;color:#1a4276}.cert-signature-block small{display:block;font-size:12px;color:var(--muted)}.cert-sign-line{width:220px;height:1px;background:#889bb5;margin-bottom:8px}.cert-verification-block{text-align:right;min-width:0}.cert-code{font-family:monospace;font-size:15px;font-weight:700;color:var(--navy);display:block}.cert-verify-link{font-size:11px;color:var(--muted);line-height:1.5;margin-top:4px;display:block;word-break:break-all;overflow-wrap:anywhere}.cert-verify-link code{background:#f0f4fa;padding:2px 6px;border-radius:4px;display:inline-block;word-break:break-all;overflow-wrap:anywhere;max-width:100%}.cert-legal-footer{margin-top:25px;padding-top:14px;border-top:1px dashed #e1e9f4;text-align:center}.cert-legal-footer small{font-size:11px;color:#8394ac}@media(max-width:700px){.certificate-page{padding:8px 0 25px}.cert-actions{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:14px}.cert-actions .button{width:100%;justify-content:center}.cert-print-tip{font-size:12px;padding:10px 12px;margin-bottom:16px}.certificate-document{border:5px solid #132238;padding:10px;border-radius:6px}.cert-inner-border{border:1.5px solid #caa146;padding:18px 10px}.cert-header{flex-direction:column;gap:10px;align-items:center;text-align:center;margin-bottom:18px}.cert-brand strong{font-size:19px;letter-spacing:1px}.cert-brand span{font-size:12px;letter-spacing:3px}.cert-badge-tag{font-size:11px;padding:4px 10px}.cert-subtitle{font-size:11px;letter-spacing:2px;margin-bottom:8px}.cert-statement{font-size:13.5px;margin-bottom:8px}.cert-student-name{font-size:21px;line-height:1.25;margin-bottom:14px}.cert-text{font-size:12.5px;line-height:1.6;margin-bottom:18px}.cert-meta-pills{gap:6px;margin-bottom:18px}.cert-pill{font-size:10px;padding:4px 9px}.cert-footer{flex-direction:column;align-items:center;text-align:center;gap:18px;padding-top:16px}.cert-signature-block{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}.cert-signature-handwriting{font-size:24px;margin-bottom:2px;transform:rotate(-2deg);text-align:center}.cert-sign-title{font-size:11.5px}.cert-sign-line{width:160px;max-width:80%;margin:0 auto 8px}.cert-verification-block{text-align:center;width:100%}.cert-code{font-size:13px}.cert-verify-link{font-size:10px;margin-top:4px}.cert-verify-link code{font-size:9.5px;padding:3px 5px;display:inline-block}.cert-legal-footer{margin-top:16px;padding-top:10px}.cert-legal-footer small{font-size:9px;line-height:1.4;display:block}}.cert-ineligible-panel{text-align:center;padding:60px 20px;max-width:600px;margin:0 auto}.cert-ineligible-panel svg{color:#8da4c4;margin-bottom:20px}.cert-progress-display{background:#f6f8fd;border:1px solid var(--line);border-radius:8px;padding:20px;margin:25px 0 30px}.health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0}.health-card{border:1px solid var(--line);border-radius:8px;padding:20px;background:#fcfdfe}.health-status-badge{display:flex;align-items:center;gap:8px;font-size:15px;margin-bottom:6px}.health-status-badge.ok{color:var(--green)}.health-status-badge.warn{color:#c8810b}.backup-info-box{display:flex;align-items:center;gap:16px;background:#f4f8fe;border:1px solid #d0e0fa;border-radius:8px;padding:18px 22px;margin:15px 0 25px}.backup-info-box strong{font-size:15px;color:var(--navy);display:block}.backup-info-box p{margin:4px 0;font-size:14px;color:#435b80}.health-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:15px 0}.health-stats-row div{border:1px solid var(--line);border-radius:8px;padding:16px;text-align:center;background:#fff}.health-stats-row strong{font-size:26px;display:block;color:var(--navy)}.health-stats-row span{font-size:12px;color:var(--muted)}.fail-tag{padding:3px 8px;border-radius:4px;font-weight:700;font-size:12px}.fail-tag.high{background:#fde8e8;color:#c52222}.fail-tag.medium{background:#fef4e5;color:#b76b00}.fail-tag.low{background:#eafaf1;color:#127e53}.diff-note{font-size:12px;padding:4px 8px;border-radius:4px;display:inline-block}.diff-note.warn{background:#fff5eb;color:#b76403}.diff-note.info{background:#f0f5ff;color:var(--blue)}.diff-note.good{background:#f0faf4;color:var(--green)}.prompts-library{margin-top:20px}.prompts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:25px}.prompt-card{border:1px solid var(--line);border-radius:10px;padding:24px;background:#fff;display:flex;flex-direction:column;gap:14px}.prompt-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.prompt-card-header h3{margin:0;font-size:18px}.prompt-category-tag{display:inline-block;padding:3px 8px;background:#f0f4fb;border-radius:4px;font-size:11px;font-weight:600;color:#4a638b;margin-bottom:6px}.prompt-card-body{background:#f7f9fd;border:1px solid #e1e9f5;border-radius:8px;padding:16px;font-size:14px;line-height:1.6;white-space:pre-wrap;font-family:inherit;color:#243b60}.prompt-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px}.prompt-variables-panel{background:#f8faff;border:1px solid #d5e3f8;border-radius:8px;padding:16px;margin-top:10px}.prompt-variables-panel h4{margin:0 0 12px;font-size:14px;color:var(--navy)}.prompt-variable-input{margin-bottom:10px}.prompt-variable-input label{font-size:12px;margin-bottom:4px}.projects-page{margin-top:20px}.projects-grid{display:flex;flex-direction:column;gap:28px;margin-top:25px}.project-card{border:1px solid var(--line);border-radius:10px;padding:28px;background:#fff}.project-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}.project-header h3{font-size:21px;margin:4px 0 0}.project-track-badge{display:inline-block;padding:4px 10px;background:#eef4ff;color:var(--blue);border-radius:20px;font-size:12px;font-weight:700}.project-scenario{background:#f9fbfd;border-left:3px solid var(--blue);padding:14px 18px;margin:16px 0;font-size:14px;color:#405574}.project-deliverable-box{background:#f6faf8;border:1px solid #c9ebd8;border-radius:8px;padding:16px 20px;margin:16px 0}.project-deliverable-box strong{color:#12724c;display:block;margin-bottom:6px}.rubric-table{width:100%;margin-top:15px;border-collapse:collapse}.rubric-table th,.rubric-table td{padding:10px 12px;border:1px solid var(--line);font-size:13px}.rubric-table th{background:var(--soft)}@page{size:A4 landscape;margin:8mm}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}html,body{background:#fff!important;color:#121a2c!important;margin:0!important;padding:0!important;font-size:14px!important;width:100%!important}.no-print,.sidebar,.topbar,.footer,.tutor,.lesson-tabs,.lesson-actions,.button,.mobile-bottom-nav,.auth-header,.tabs,.cert-actions,.cert-print-tip{display:none!important}.workspace,.shell,main{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;min-height:auto!important;display:block!important}.certificate-page{padding:0!important;margin:0 auto!important;max-width:100%!important;width:100%!important;page-break-inside:avoid!important;break-inside:avoid!important}.certificate-document{border:8px solid #132238!important;box-shadow:none!important;padding:24px 30px!important;border-radius:4px!important;background:#fff!important;page-break-inside:avoid!important;break-inside:avoid!important;width:100%!important;box-sizing:border-box!important}.cert-inner-border{border:2px solid #caa146!important;padding:28px 30px!important;text-align:center!important}.cert-header{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;margin-bottom:24px!important}.cert-brand strong{font-size:24px!important;color:#132238!important}.cert-brand span{font-size:14px!important;color:#8fa8cc!important}.cert-badge-tag{background:#eaf8f1!important;color:#147b57!important;padding:6px 14px!important;border-radius:20px!important;font-size:12px!important;font-weight:700!important}.cert-subtitle{font-size:13px!important;letter-spacing:4px!important;color:#8598b2!important;margin-bottom:10px!important}.cert-statement{font-size:16px!important;color:#51627e!important;margin-bottom:12px!important;font-style:italic!important}.cert-student-name{font-size:34px!important;color:#132238!important;margin-bottom:18px!important}.cert-text{font-size:14px!important;line-height:1.75!important;color:#3b4c68!important;max-width:760px!important;margin:0 auto 20px!important}.cert-meta-pills{display:flex!important;flex-direction:row!important;justify-content:center!important;gap:12px!important;margin:0 auto 24px!important}.cert-pill{background:#f4f8fe!important;border:1px solid #c8d9f4!important;color:#132238!important;padding:4px 12px!important;font-size:11px!important;-webkit-print-color-adjust:exact!important}.cert-footer{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:flex-end!important;padding-top:22px!important;border-top:1px solid #e1e9f4!important;text-align:left!important}.cert-signature-block{text-align:left!important;display:block!important}.cert-signature-handwriting{font-family:Dancing Script,Brush Script MT,cursive!important;font-size:26px!important;font-weight:700!important;color:#132238!important;display:block!important;line-height:1!important;margin-bottom:3px!important;transform:rotate(-3deg)!important;-webkit-print-color-adjust:exact!important}.cert-sign-title{color:#1a4276!important;font-size:12px!important;font-weight:600!important}.cert-sign-line{width:200px!important;height:1px!important;background:#889bb5!important;margin-bottom:8px!important}.cert-verification-block{text-align:right!important;display:block!important}.cert-code{font-size:14px!important;color:#132238!important}.cert-verify-link{font-size:11px!important;color:#687896!important}.cert-verify-link code{background:#f0f4fa!important;color:#132238!important}.cert-legal-footer{margin-top:18px!important;padding-top:10px!important;border-top:1px dashed #cdd7e5!important;text-align:center!important}.cert-legal-footer small{font-size:9px!important;color:#687896!important}}.exercise-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,430px);align-items:center;gap:28px;min-height:330px;margin:-8px 0 30px;padding:35px 42px;overflow:hidden;position:relative;border-radius:18px;color:#fff;background:radial-gradient(circle at 87% 20%,#304d92 0,#172744 40%,#101a2c 76%);box-shadow:0 22px 50px #121a2c2e}.exercise-hero:after{content:"";position:absolute;inset:auto -10% -70% 28%;height:220px;border-radius:50%;border:1px solid rgba(142,190,255,.14);transform:rotate(-8deg)}.exercise-hero-content{position:relative;z-index:1;max-width:650px}.exercise-hero h1{color:#fff;font-size:clamp(30px,4vw,46px);max-width:680px;margin:10px 0 15px}.exercise-hero p{color:#bdcde8;max-width:640px;font-size:17px;line-height:1.65}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#9dc7ff;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:800}.exercise-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.exercise-hero .button.secondary{background:#ffffff14;color:#fff;border-color:#ffffff4d}.exercise-hero .button.secondary:hover{background:#ffffff29}.vector-scene{position:relative;z-index:1;width:100%;max-width:430px;justify-self:end}.vector-scene svg{display:block;width:100%;height:auto;overflow:visible}.vector-scene text{fill:#b9cbee;font:700 12px DM Sans,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}.vector-path{fill:none;stroke:url(#exerciseGlow);stroke-width:2;stroke-dasharray:8 11;opacity:.72}.vector-orbit{fill:none;stroke:#9bc5ff38;stroke-width:1.2;stroke-dasharray:4 8;transform-origin:215px 151px}.orbit-one{animation:vector-spin 18s linear infinite}.orbit-two{animation:vector-spin-reverse 12s linear infinite}.vector-node{fill:#79b2ff;stroke:#e8f3ff;stroke-width:2}.node-one{animation:vector-pulse 2.8s ease-in-out infinite}.node-two{fill:#a88bff;animation:vector-pulse 2.8s .8s ease-in-out infinite}.node-three{fill:#63e0be;animation:vector-pulse 2.8s 1.5s ease-in-out infinite}@keyframes vector-spin{to{transform:rotate(360deg)}}@keyframes vector-spin-reverse{to{transform:rotate(-360deg)}}@keyframes vector-pulse{0%,to{opacity:.72;transform:scale(1)}50%{opacity:1;transform:scale(1.14)}}.exercise-stat-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;background:#fff;margin:0 0 38px;box-shadow:0 8px 24px #121a2c0d}.exercise-stat-strip div{min-height:92px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;border-right:1px solid var(--line);padding:14px;text-align:center}.exercise-stat-strip div:last-child{border-right:0}.exercise-stat-strip strong{font:800 28px/1.1 Manrope,DM Sans,sans-serif;color:var(--navy)}.exercise-stat-strip span{color:var(--muted);font-size:12px}.exercise-heading{margin-bottom:20px}.exercise-heading h2{font-size:29px}.exercise-toolbar{display:flex;flex-direction:column;gap:14px;margin-bottom:24px}.exercise-tabs{margin:0;gap:4px}.exercise-tabs button{display:inline-flex;align-items:center;gap:8px}.exercise-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.exercise-filters .search{flex:1 1 260px;max-width:none}.select-with-icon{display:inline-flex;align-items:center;gap:7px;min-height:47px;padding:0 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);margin:0}.select-with-icon select{width:auto;min-width:165px;border:0;padding:11px 0;background:transparent;color:var(--navy);outline:none}.exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.exercise-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:13px;padding:21px;background:#fff;box-shadow:0 5px 16px #121a2c0a;transition:transform .18s,box-shadow .18s,border-color .18s}.exercise-card:hover{transform:translateY(-3px);border-color:#b9cdf5;box-shadow:0 14px 28px #121a2c17}.exercise-card.is-submitted{border-color:#bde6d5;background:linear-gradient(180deg,#fbfffd,#fff)}.exercise-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-height:25px}.exercise-track{color:var(--blue);font-size:11px;font-weight:750;line-height:1.35}.exercise-status{display:inline-flex;align-items:center;gap:4px;color:#6b7b95;font-size:11px;white-space:nowrap}.exercise-status.done{color:var(--green);font-weight:700}.exercise-status.draft{color:#9a6200}.exercise-status.quick{color:#7c3aed}.exercise-lesson{display:block;margin-top:18px;color:#8191aa;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.exercise-card h3{margin:7px 0 9px;font-size:19px;line-height:1.35}.exercise-card p{flex:1;color:#5b6d88;font-size:13px;line-height:1.6;margin-bottom:18px}.exercise-card-meta{display:flex;flex-wrap:wrap;gap:9px 13px;margin-bottom:19px;color:#71819b;font-size:11px}.exercise-card-meta span{display:inline-flex;align-items:center;gap:5px}.exercise-card-meta svg{color:var(--blue)}.exercise-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.exercise-card-actions .button{flex:1 1 auto;font-size:12px;padding:9px 12px;min-height:39px}.quick-card{border-top:3px solid #8b5cf6}.checkpoint-card{border-top:3px solid #2d7cf6}@media(max-width:1100px){.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.exercise-hero{grid-template-columns:1fr;padding:28px 25px 5px}.vector-scene{justify-self:center;max-width:380px;margin-top:-8px}.exercise-stat-strip{grid-template-columns:repeat(2,1fr)}.exercise-stat-strip div:nth-child(2){border-right:0}.exercise-stat-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media(max-width:580px){.exercise-hero h1{font-size:30px}.exercise-hero p{font-size:14px}.exercise-hero-actions .button{flex:1 1 100%}.exercise-grid{grid-template-columns:1fr}.exercise-stat-strip strong{font-size:24px}.exercise-stat-strip span{font-size:11px}.exercise-filters{align-items:stretch}.exercise-filters .search,.exercise-filters .select-with-icon{flex:1 1 100%;max-width:none}.select-with-icon select{flex:1}}@media(prefers-reduced-motion:reduce){.orbit-one,.orbit-two,.node-one,.node-two,.node-three{animation:none}.exercise-card{transition:none}}.workspace,.auth-shell{position:relative;overflow:hidden}.workspace>.vector-ambient,.auth-shell>.vector-ambient{position:absolute;z-index:0;pointer-events:none}.workspace>.topbar,.workspace>.offline,.workspace>main,.workspace>.footer,.auth-shell>.auth-header,.auth-shell>main,.auth-shell>.offline{position:relative;z-index:1}.vector-ambient{top:4px;right:-72px;width:410px;opacity:.15;color:#397fff}.auth-shell>.vector-ambient{top:64px;right:-30px;width:460px;opacity:.13}.vector-ambient svg{display:block;width:100%;height:auto;overflow:visible}.ambient-path{fill:none;stroke:currentColor;stroke-width:1.35;stroke-dasharray:5 11;opacity:.85}.ambient-path-a{animation:ambient-dash 19s linear infinite}.ambient-path-b{animation:ambient-dash-reverse 23s linear infinite;opacity:.45}.ambient-ring{fill:none;stroke:currentColor;stroke-width:1;stroke-dasharray:4 10;opacity:.4;transform-box:fill-box;transform-origin:center}.ambient-ring-a{animation:ambient-spin 22s linear infinite}.ambient-ring-b{animation:ambient-spin-reverse 31s linear infinite;opacity:.24}.ambient-node{fill:currentColor;stroke:#fff;stroke-width:1.5;opacity:.85;transform-box:fill-box;transform-origin:center}.ambient-node-a{animation:ambient-pulse 3.8s ease-in-out infinite}.ambient-node-b{animation:ambient-pulse 3.8s .8s ease-in-out infinite}.ambient-node-c{animation:ambient-pulse 3.8s 1.6s ease-in-out infinite}.ambient-stars{fill:currentColor;opacity:.55;animation:ambient-twinkle 4.5s ease-in-out infinite}.vector-ambient-violet{color:#8c6bff}.vector-ambient-mint{color:#20b99a}.vector-profile-mark{width:260px;margin:2px 0 -15px auto;opacity:.8;color:#3f85f5;pointer-events:none}.vector-profile-mark-violet{color:#8a6dff}.vector-profile-mark-mint{color:#1bb693}.vector-profile-mark svg{display:block;width:100%;height:auto;overflow:visible}.profile-mark-line{fill:none;stroke:currentColor;stroke-width:1.6;stroke-dasharray:5 8;opacity:.72}.profile-mark-node{fill:currentColor;stroke:#fff;stroke-width:1.5;transform-box:fill-box;transform-origin:center}.profile-mark-node-a{animation:ambient-pulse 3s ease-in-out infinite}.profile-mark-node-b{animation:ambient-pulse 3s .7s ease-in-out infinite}.profile-mark-node-c{animation:ambient-pulse 3s 1.4s ease-in-out infinite}.vector-profile-mark text{fill:currentColor;font:800 9px DM Sans,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}@keyframes ambient-dash{to{stroke-dashoffset:-220}}@keyframes ambient-dash-reverse{to{stroke-dashoffset:240}}@keyframes ambient-spin{to{transform:rotate(360deg)}}@keyframes ambient-spin-reverse{to{transform:rotate(-360deg)}}@keyframes ambient-pulse{0%,to{transform:scale(.9);opacity:.62}50%{transform:scale(1.2);opacity:1}}@keyframes ambient-twinkle{0%,to{opacity:.35}50%{opacity:.8}}@media(max-width:700px){.vector-ambient{top:40px;right:-150px;width:350px;opacity:.1}.auth-shell>.vector-ambient{top:85px;right:-130px;width:360px;opacity:.1}.vector-profile-mark{width:210px;margin:5px 0 -14px auto}}@media(prefers-reduced-motion:reduce){.ambient-path-a,.ambient-path-b,.ambient-ring-a,.ambient-ring-b,.ambient-node-a,.ambient-node-b,.ambient-node-c,.ambient-stars,.profile-mark-node-a,.profile-mark-node-b,.profile-mark-node-c{animation:none}}.task-workspace{margin:10px 0 40px}.task-header-banner{background:linear-gradient(135deg,#121a2c,#1e2c45);color:#fff;border-radius:12px;padding:28px 32px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;margin-bottom:24px;border:1px solid #283a58}.task-meta-tags{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.task-badge-xp{display:inline-flex;align-items:center;gap:5px;background:#fef08a;color:#713f12;font-weight:700;font-size:13px;padding:4px 10px;border-radius:6px}.task-badge-time{display:inline-flex;align-items:center;gap:5px;background:#1e293b;color:#94a3b8;font-size:12px;padding:4px 10px;border-radius:6px;border:1px solid #334155}.task-badge-category{background:#0284c7;color:#fff;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:4px 10px;border-radius:6px}.task-header-banner h2{font-size:26px;color:#fff;margin:0 0 8px}.task-role-line{display:flex;align-items:center;gap:8px;color:#93c5fd;font-size:15px;margin:0}.task-status-tag{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600}.task-status-tag.submitted{background:#065f46;color:#a7f3d0;border:1px solid #059669}.task-scenario-card{background:#f8fafc;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px;padding:22px 24px;margin-bottom:24px}.task-scenario-card h3{display:flex;align-items:center;gap:8px;font-size:18px;margin:0 0 10px;color:var(--navy)}.task-scenario-card p{color:#334155;font-size:15px;line-height:1.7;margin:0}.task-tools-section{margin-bottom:24px}.task-tools-section h3{display:flex;align-items:center;gap:8px;font-size:18px;margin-bottom:14px}.task-tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.task-tool-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px 18px;transition:transform .15s,border-color .15s}.task-tool-card:hover{border-color:#93c5fd;transform:translateY(-2px)}.tool-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tool-card-head strong{font-size:15px;color:var(--navy)}.tool-category-badge{background:#f1f5f9;color:#475569;font-size:11px;padding:2px 8px;border-radius:4px;font-weight:600}.task-tool-card p{font-size:13px;color:#64748b;margin:0;line-height:1.5}.task-steps-section{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px 24px;margin-bottom:24px}.task-steps-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.task-steps-header h3{display:flex;align-items:center;gap:8px;font-size:18px;margin:0}.steps-progress-badge{background:#f1f5f9;color:#1e293b;font-size:12px;font-weight:700;padding:4px 10px;border-radius:20px;border:1px solid #cbd5e1}.task-steps-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.task-step-item{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;min-height:44px;transition:background .15s,border-color .15s}.task-step-item:hover{background:#f1f5f9;border-color:#cbd5e1}.task-step-item.completed{background:#f0fdf4;border-color:#bbf7d0}.step-checkbox{width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:2px;background:#e2e8f0;color:#475569}.task-step-item.completed .step-checkbox{background:#22c55e;color:#fff}.step-text{font-size:14px;line-height:1.6;color:#334155}.task-step-item.completed .step-text{color:#166534}.task-safe-card{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:18px 22px;margin-bottom:20px}.safe-card-header{display:flex;align-items:center;gap:8px;color:#92400e;margin-bottom:6px}.task-safe-card p{color:#78350f;font-size:14px;margin:0 0 6px;line-height:1.55}.task-safe-card small{color:#b45309;font-size:12px;font-style:italic}.task-challenge-card{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:16px 20px;margin-bottom:24px}.task-challenge-card strong{display:flex;align-items:center;gap:6px;color:#166534;font-size:14px;margin-bottom:6px}.task-challenge-card p{color:#14532d;font-size:14px;margin:0;line-height:1.6}.task-delivery-section{background:#fff;border:1px solid var(--line);border-radius:10px;padding:26px 28px;margin-bottom:30px}.delivery-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;flex-wrap:wrap}.delivery-header h3{display:flex;align-items:center;gap:8px;font-size:20px;margin:0 0 4px}.delivery-header p{color:#64748b;font-size:14px;margin:0}.draft-indicator .status{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:4px 10px;border-radius:6px}.draft-indicator .status.saving{background:#fef3c7;color:#92400e}.draft-indicator .status.saved{background:#dcfce7;color:#166534}.draft-indicator .status.error{background:#fee2e2;color:#991b1b}.task-feedback-banner{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;padding:18px 20px;margin-bottom:22px}.feedback-head{display:flex;align-items:center;gap:8px;color:#065f46;margin-bottom:8px}.task-feedback-banner p{color:#047857;font-size:14px;margin:0 0 8px;line-height:1.6}.task-feedback-banner small{color:#059669;display:block;margin-bottom:12px}.task-quality-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin:12px 0;border-radius:6px;background:#d9fbe9;color:#065f46;font-size:13px}.task-submission-checklist{margin:22px 0;padding:16px 18px;border:1px solid var(--line);border-radius:8px;background:#f8faff}.task-submission-checklist>strong{display:block;margin-bottom:12px;color:var(--navy)}.task-requirement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px}.task-requirement-grid span{display:flex;align-items:center;gap:7px;color:#9a3412;font-size:12px;line-height:1.45}.task-requirement-grid span.met{color:#166534}.feedback-actions{display:flex;gap:10px}.delivery-form label{margin-bottom:14px}.delivery-form label strong{display:block;font-size:15px;color:var(--navy);margin-bottom:3px}.delivery-form label small{font-weight:400;color:#64748b;font-size:13px}.char-count{display:block;text-align:right;font-size:11px;color:#94a3b8;margin:-8px 0 16px}.rubric-evaluation-box{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:18px 20px;margin:20px 0}.rubric-evaluation-box h4{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--navy);margin:0 0 6px}.rubric-evaluation-box p{font-size:13px;color:#64748b;margin:0 0 14px}.rubric-list{display:flex;flex-direction:column;gap:10px}.rubric-item{display:flex;align-items:flex-start;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;cursor:pointer;min-height:44px;transition:border-color .15s,background .15s}.rubric-item:hover{background:#f8fafc;border-color:#cbd5e1}.rubric-item.checked{border-color:#3b82f6;background:#eff6ff}.rubric-item.disabled{cursor:default;opacity:.85}.rubric-item input[type=checkbox]{width:18px;height:18px;margin-top:3px;flex-shrink:0;accent-color:var(--blue)}.rubric-item strong{font-size:14px;color:var(--navy);display:block;margin-bottom:2px}.rubric-item p{font-size:12px;color:#475569;margin:0;line-height:1.5}.delivery-actions{display:flex;gap:14px;align-items:center;justify-content:flex-end;margin-top:20px;flex-wrap:wrap}.practice-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;flex-wrap:wrap}.practice-header h2{font-size:24px;margin:0 0 6px}.checkpoint-score-badge{display:inline-flex;align-items:center;gap:6px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:700}.quiz-navigation-tabs{display:flex;gap:8px;margin-bottom:18px;overflow-x:auto;padding-bottom:4px}.q-nav-pill{min-width:44px;min-height:44px;padding:8px 16px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s}.q-nav-pill:hover{background:#f1f5f9;border-color:#94a3b8}.q-nav-pill.active{border-color:var(--blue);background:#eff6ff;color:var(--blue)}.q-nav-pill.correct{border-color:#86efac;background:#f0fdf4;color:#166534}.q-nav-pill.wrong{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.q-nav-icon{flex-shrink:0}.q-indicator{font-size:15px;color:#334155;margin-bottom:10px}.checkpoint-celebration-banner{display:flex;align-items:center;gap:16px;background:#f0fdf4;border:1px solid #86efac;color:#166534;border-radius:8px;padding:18px 22px;margin-top:20px}.checkpoint-celebration-banner p{color:#15803d;font-size:13px;margin:4px 0 0}.passport-page{max-width:1200px;margin:0 auto}.passport-stats-banner{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:24px 0 30px}.passport-stat-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 22px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 4px #00000005}.passport-stat-icon{width:48px;height:48px;border-radius:10px;background:#eff6ff;color:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0}.passport-stat-card strong{font-size:26px;font-family:Manrope,sans-serif;color:var(--navy);display:block;line-height:1.1}.passport-stat-card span{font-size:12px;color:#64748b;margin-top:3px;display:block}.passport-share-box{background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;border-radius:12px;padding:24px 28px;margin-bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.share-box-content{display:flex;align-items:center;gap:14px}.share-box-content h3{font-size:18px;color:#fff;margin:0 0 4px}.share-box-content p{color:#94a3b8;font-size:13px;margin:0}.share-box-actions{display:flex;gap:10px}.passport-filters{display:flex;gap:10px;margin-bottom:24px;overflow-x:auto;padding-bottom:4px}.passport-filter-btn{min-height:44px;padding:8px 18px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-weight:600;font-size:14px;white-space:nowrap;transition:all .15s}.passport-filter-btn:hover{background:#f1f5f9;border-color:#94a3b8}.passport-filter-btn.active{background:var(--blue);border-color:var(--blue);color:#fff}.passport-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:40px}.badge-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 20px;display:flex;flex-direction:column;cursor:pointer;position:relative;transition:transform .15s,box-shadow .15s,border-color .15s}.badge-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0000000f;border-color:#93c5fd}.badge-card.earned{border-color:#86efac;background:linear-gradient(180deg,#fff,#f0fdf4)}.badge-card.locked{opacity:.72}.badge-card-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.badge-icon-wrap{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#64748b;flex-shrink:0}.badge-card.earned .badge-icon-wrap{background:#dcfce7;color:#15803d}.badge-category-tag{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:#64748b;display:block}.badge-card h3{font-size:16px;color:var(--navy);margin:2px 0 0}.badge-description{font-size:13px;color:#64748b;line-height:1.5;margin:0 0 14px;flex:1}.badge-skills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.badge-skill-tag{font-size:11px;background:#f1f5f9;color:#334155;padding:3px 8px;border-radius:4px;font-weight:500}.badge-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f1f5f9;padding-top:12px;margin-top:auto}.badge-earned-tag{display:inline-flex;align-items:center;gap:4px;color:#166534;font-size:12px;font-weight:700}.badge-locked-tag{display:inline-flex;align-items:center;gap:4px;color:#94a3b8;font-size:12px}.badge-modal-backdrop{position:fixed;inset:0;background:#0f172ab3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}.badge-modal{background:#fff;border-radius:16px;max-width:540px;width:100%;max-height:90vh;overflow-y:auto;padding:32px 30px;position:relative;box-shadow:0 20px 40px #00000040}.modal-close-btn{position:absolute;top:18px;right:18px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#64748b}.modal-close-btn:hover{background:#f1f5f9}.modal-badge-hero{text-align:center;margin-bottom:24px}.modal-badge-icon{width:76px;height:76px;border-radius:18px;background:#dcfce7;color:#15803d;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.modal-badge-hero h2{font-size:24px;color:var(--navy);margin:0 0 6px}.modal-badge-hero p{color:#64748b;font-size:14px;margin:0}.modal-cert-band{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin-bottom:20px}.modal-cert-band p{font-size:13px;margin:4px 0 0;color:#334155}.badge-verification-link-box{background:#f1f5f9;border-radius:8px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.badge-verification-link-box code{font-size:12px;color:var(--navy);word-break:break-all}.public-verification-card{background:#fff;border:2px solid #86efac;border-radius:16px;padding:36px 32px;box-shadow:0 12px 30px #00000014}.verification-status-banner{display:inline-flex;align-items:center;gap:8px;background:#dcfce7;color:#166534;font-weight:700;font-size:14px;padding:6px 14px;border-radius:20px;margin-bottom:20px}.public-student-recipient{margin:20px 0;padding:16px 20px;background:#f8fafc;border-radius:8px;border-left:4px solid var(--blue)}.public-student-recipient strong{font-size:22px;color:var(--navy);display:block}.public-student-recipient span{font-size:13px;color:#64748b}.daily-mission-card{background:linear-gradient(135deg,#121a2c,#1a2c47);color:#fff;border-radius:12px;padding:24px 28px;margin:20px 0 26px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;border:1px solid #233758}.mission-content{flex:1;min-width:280px}.mission-tag{display:inline-flex;align-items:center;gap:6px;color:#fef08a;font-size:13px;margin-bottom:8px}.mission-content h3{font-size:20px;color:#fff;margin:0 0 6px}.mission-content p{color:#94a3b8;font-size:14px;margin:0 0 16px;line-height:1.55}.mission-actions{display:flex;gap:12px;flex-wrap:wrap}.mission-passport-preview{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:18px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;min-width:170px}.mission-passport-preview strong{font-size:16px;color:#fff}.mission-passport-preview small{color:#94a3b8;font-size:12px}.passport-preview-link{color:#60a5fa;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:4px;margin-top:4px}.active-tasks-shelf{margin:24px 0 30px}.tasks-shelf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.task-shelf-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 20px;display:flex;flex-direction:column}.task-shelf-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.task-shelf-lesson{font-size:12px;font-weight:700;color:var(--blue)}.task-shelf-status{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.task-shelf-status.submitted{background:#dcfce7;color:#166534}.task-shelf-status.draft{background:#fef3c7;color:#92400e}.task-shelf-card h4{font-size:15px;color:var(--navy);margin:0 0 6px}.task-shelf-card small{color:#64748b;margin-bottom:14px}.task-shelf-card .button{margin-top:auto}.integrity-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:20px 0}.integrity-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px 20px;display:flex;align-items:flex-start;gap:14px}.integrity-card.ok{border-left:4px solid #22c55e}.integrity-card.warning{border-left:4px solid #f59e0b}.integrity-card-icon{color:#16a34a;flex-shrink:0;margin-top:2px}.integrity-card.warning .integrity-card-icon{color:#b45309}.integrity-card strong{font-size:15px;color:var(--navy);display:block;margin-bottom:4px}.integrity-card p{font-size:13px;color:#64748b;margin:0;line-height:1.5}.integrity-summary-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:16px 20px;color:#166534;margin-top:18px}.badge-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:4px;background:#f1f5f9;color:#475569}.badge-tag.success,.badge-tag.ok{background:#dcfce7;color:#166534}.badge-tag.warning{background:#fef3c7;color:#92400e}@media(max-width:768px){.workspace{padding-bottom:74px}.button,.button.small,.icon-button,.q-nav-pill,.passport-filter-btn{min-height:44px}.task-header-banner{padding:20px 18px}.task-delivery-section{padding:20px 16px}.passport-stats-banner{grid-template-columns:1fr 1fr}.daily-mission-card{padding:20px 18px}}@media(max-width:480px){.task-quality-summary,.task-requirement-grid{display:block}.task-quality-summary span,.task-requirement-grid span{display:flex;margin:6px 0}.passport-stats-banner{grid-template-columns:1fr}.task-steps-header{flex-direction:column;align-items:flex-start}.delivery-actions{flex-direction:column;width:100%}.delivery-actions .button{width:100%}.mission-actions{flex-direction:column;width:100%}.mission-actions .button{width:100%}}.passport-header-badge{display:inline-flex;align-items:center;gap:8px;background:#eff6ff;border:1px solid #bfdbfe;color:var(--blue);font-size:13px;font-weight:700;padding:6px 14px;border-radius:20px;margin-bottom:12px}.passport-summary-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0 36px}.passport-stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 22px;text-align:center;box-shadow:0 2px 4px #00000005}.passport-stat strong{font-size:28px;font-family:Manrope,sans-serif;color:var(--navy);display:block;line-height:1.1;margin-bottom:4px}.passport-stat span{font-size:12px;color:#64748b;display:block}.passport-section{margin-bottom:40px}.section-subtitle{font-size:13px;color:#64748b;display:block;margin-top:4px}.badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin-top:18px}.milestone-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.passport-badge-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 18px;display:flex;flex-direction:column;cursor:pointer;position:relative;transition:transform .15s,box-shadow .15s,border-color .15s}.passport-badge-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0000000f;border-color:#93c5fd}.passport-badge-card.earned{border-color:#86efac;background:linear-gradient(180deg,#fff,#f0fdf4)}.passport-badge-card.locked{opacity:.72}.badge-card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#64748b;margin-bottom:12px}.passport-badge-card.earned .badge-card-icon{background:#dcfce7;color:#15803d}.badge-card-tag{font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--blue);margin-bottom:4px}.badge-card-content{flex:1}.badge-card-content h3{font-size:16px;color:var(--navy);margin:0 0 6px}.badge-card-content p{font-size:13px;color:#64748b;line-height:1.5;margin:0 0 14px}.badge-card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f1f5f9;padding-top:10px;margin-top:auto}.badge-status{font-size:12px;display:inline-flex;align-items:center;gap:4px;font-weight:600}.badge-status.earned{color:#166534}.badge-status.pending{color:#94a3b8}.view-details-btn{font-size:11px;color:var(--blue);font-weight:600}.modal-backdrop{position:fixed;inset:0;background:#0f172ab3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}.badge-detail-modal{background:#fff;border-radius:16px;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;padding:30px 28px;box-shadow:0 20px 40px #00000040}.modal-top{display:flex;align-items:center;gap:16px;margin-bottom:18px}.modal-badge-icon{width:64px;height:64px;border-radius:16px;background:#f1f5f9;color:#64748b;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-badge-icon.earned{background:#dcfce7;color:#15803d}.modal-category{font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--blue);display:block}.modal-top h2{font-size:20px;color:var(--navy);margin:2px 0 0}.modal-desc{font-size:14px;color:#475569;line-height:1.6;margin:0 0 18px}.modal-box{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin-bottom:16px}.modal-box strong{font-size:13px;color:var(--navy);display:block;margin-bottom:4px}.modal-box p{font-size:13px;color:#475569;margin:0;line-height:1.5}.skills-tag-list{margin-bottom:18px}.skills-tag-list strong{font-size:13px;color:var(--navy);display:block;margin-bottom:8px}.tags{display:flex;flex-wrap:wrap;gap:6px}.skill-tag{background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:600;padding:4px 10px;border-radius:6px;border:1px solid #dbeafe}.earned-info-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:14px 16px;margin-bottom:18px}.verification-code-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.verification-code-row small{display:block;color:#166534;font-size:11px}.verification-code-row code{font-family:monospace;font-size:14px;font-weight:700;color:#14532d}.verification-date{margin-top:8px}.verification-date small{color:#15803d;font-size:11px}.credential-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.credential-actions .button{font-size:12px;min-height:36px;padding:8px 12px}.pending-info-box{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:14px 16px;margin-bottom:18px}.pending-info-box p{font-size:13px;color:#92400e;margin:0;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end}.badge-public-page{max-width:680px;margin:30px auto 60px;padding:0 20px}.badge-public-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:36px 32px;box-shadow:0 12px 30px #0000000f}.badge-public-header{display:flex;align-items:center;gap:20px;margin-bottom:22px;flex-wrap:wrap}.badge-public-icon{width:72px;height:72px;border-radius:18px;background:#dcfce7;color:#15803d;display:flex;align-items:center;justify-content:center;flex-shrink:0}.badge-verified-tag{display:inline-flex;align-items:center;gap:6px;color:#166534;background:#dcfce7;font-size:12px;font-weight:700;padding:4px 10px;border-radius:20px;margin-bottom:6px}.badge-public-header h1{font-size:26px;color:var(--navy);margin:0 0 4px}.badge-student-name{font-size:15px;color:#64748b;margin:0}.badge-student-name strong{color:var(--navy)}.badge-public-desc{font-size:15px;color:#334155;line-height:1.65;margin-bottom:22px}.badge-public-section{margin-bottom:22px}.badge-public-section h3{font-size:15px;color:var(--navy);margin-bottom:10px}.badge-public-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin-bottom:26px}.badge-public-meta small{display:block;font-size:11px;color:#64748b;margin-bottom:2px}.badge-public-meta code,.badge-public-meta span{font-size:13px;font-weight:600;color:var(--navy)}.badge-public-footer{display:flex;justify-content:center;flex-wrap:wrap;gap:9px}@media(max-width:768px){.passport-summary-bar{grid-template-columns:repeat(2,1fr)}.badge-public-meta{grid-template-columns:1fr;gap:12px}}@media(max-width:480px){.passport-summary-bar,.badge-grid{grid-template-columns:1fr}.badge-public-card{padding:24px 18px}}.linkedin-preview-block{margin:0 0 19px}.linkedin-preview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 9px}.linkedin-preview-heading strong,.linkedin-preview-heading span{display:block}.linkedin-preview-heading strong{color:var(--navy);font-size:13px}.linkedin-preview-heading span{color:#71809b;font-size:11px;line-height:1.4}.linkedin-preview-size{flex:0 0 auto;color:#54709c!important;font-weight:700;white-space:nowrap;padding-top:1px}.linkedin-badge-preview{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(150px,.85fr);min-height:248px;overflow:hidden;border:1px solid #d7e3f5;border-radius:15px;background:linear-gradient(135deg,#fff,#f0f5ff);box-shadow:0 12px 28px #1b3b741f}.linkedin-badge-copy{min-width:0;display:flex;flex-direction:column;padding:18px 18px 14px}.linkedin-badge-brand{display:flex;align-items:center;gap:9px;margin-bottom:17px}.linkedin-badge-logo{width:32px;height:32px;display:grid;place-items:center;flex:0 0 32px;border-radius:10px;background:#e8f0ff}.linkedin-badge-logo img{width:23px;height:23px;object-fit:contain}.linkedin-badge-brand strong,.linkedin-badge-brand small{display:block;line-height:1.05}.linkedin-badge-brand strong{color:#101a2c;font-family:Manrope,DM Sans,Arial,sans-serif;font-size:12px;letter-spacing:.12em}.linkedin-badge-brand small{margin-top:4px;color:#54709c;font-size:8px;font-weight:800;letter-spacing:.2em}.linkedin-badge-kicker{align-self:flex-start;padding:4px 8px;border-radius:999px;background:#e8f0ff;color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.09em;line-height:1.25}.linkedin-badge-copy h3{max-width:270px;margin:12px 0 5px;color:var(--navy);font-size:25px;line-height:1.15;letter-spacing:-.04em;overflow-wrap:anywhere}.linkedin-badge-copy p{margin:0;color:#71809b;font-size:12px;line-height:1.45}.linkedin-badge-copy p strong{color:var(--navy)}.linkedin-badge-skills{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}.linkedin-badge-skills span{max-width:100%;overflow-wrap:anywhere;padding:3px 7px;border:1px solid #d6e2f5;border-radius:5px;color:#405a83;background:#ffffffbf;font-size:9px;font-weight:700;line-height:1.35}.linkedin-badge-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid #dfe7f3;color:#71809b;font-size:9px}.linkedin-badge-meta span{display:inline-flex;align-items:center;gap:4px;min-width:0}.linkedin-badge-meta code{flex:0 0 auto;color:#54709c;font-size:9px;font-weight:700}.linkedin-badge-seal{position:relative;display:grid;place-items:center;min-height:248px;overflow:hidden;background:linear-gradient(145deg,#0755f5,#4d37d8)}.linkedin-badge-seal:before,.linkedin-badge-seal:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.22);border-radius:50%}.linkedin-badge-seal:before{width:210px;height:210px;top:-88px;right:-78px}.linkedin-badge-seal:after{width:160px;height:160px;bottom:-90px;left:-72px;border-color:#071b593d}.linkedin-badge-orbit{position:absolute;width:166px;height:166px;border:1px dashed rgba(255,255,255,.55);border-radius:50%;transform:rotate(-16deg)}.linkedin-badge-seal-core{position:relative;z-index:1;width:126px;height:126px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:8px solid rgba(255,255,255,.95);border-radius:50%;background:#fff;box-shadow:0 13px 24px #0816473d}.linkedin-badge-seal-core img{width:57px;height:57px;object-fit:contain}.linkedin-badge-seal-core span{display:inline-flex;align-items:center;gap:3px;color:#0f8e5d;font-size:8px;font-weight:900;letter-spacing:.08em}.linkedin-badge-seal>small{position:absolute;z-index:1;bottom:16px;color:#d9e6ff;font-size:9px;font-weight:800;letter-spacing:.16em;line-height:1.5;text-align:center}.badge-public-brand{display:flex;align-items:center;gap:10px;margin-bottom:23px}.badge-public-brand img{width:39px;height:39px;object-fit:contain;padding:6px;border-radius:11px;background:#e8f0ff}.badge-public-brand strong,.badge-public-brand small{display:block;line-height:1.05}.badge-public-brand strong{color:var(--navy);font-family:Manrope,DM Sans,Arial,sans-serif;font-size:13px;letter-spacing:.11em}.badge-public-brand small{margin-top:4px;color:#54709c;font-size:9px;font-weight:800;letter-spacing:.2em}@media(max-width:620px){.linkedin-badge-preview{grid-template-columns:1fr}.linkedin-badge-seal{min-height:180px}.linkedin-badge-copy h3{max-width:none}.linkedin-badge-meta{align-items:flex-start;flex-direction:column}.linkedin-preview-heading{display:block}.linkedin-preview-size{margin-top:4px}}.quiz-actions{flex-wrap:wrap}.quiz-actions .button{min-width:0}.slide-download-bar{display:flex;flex-direction:column;gap:18px;margin-top:20px}.slide-download-main{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.slide-download-extras{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-top:16px;border-top:1px solid var(--line)}.slide-download-extras strong{font-size:13px;color:var(--navy)}.slide-download-extras .button{justify-content:flex-start;max-width:100%;text-align:left}.slide-download-extras .button span{font-weight:400;color:var(--muted)}@media(max-width:700px){.quiz-actions{display:grid;grid-template-columns:1fr;gap:10px}.quiz-actions .button,.slide-download-main .button,.slide-download-extras .button{width:100%}.slide-download-extras .button span{display:inline}}.task-header-simple{align-items:center}.task-header-simple h2{font-size:32px;max-width:780px}.task-eyebrow{font-size:11px!important;letter-spacing:.12em;text-transform:uppercase;color:#9cc7ff!important;font-weight:700;margin:4px 0 7px!important}.task-intro{font-size:17px;color:#d4e1f5!important;line-height:1.6;max-width:760px;margin:0!important}.task-start-card{background:#eef5ff;border:1px solid #c8dcff;border-left:5px solid var(--blue);border-radius:10px;padding:23px 25px;margin:0 0 20px}.task-start-main{display:flex;align-items:flex-start;gap:14px}.task-start-number{display:grid;place-items:center;flex:0 0 31px;height:31px;border-radius:50%;background:var(--blue);color:#fff;font-weight:800;font-size:15px}.task-start-label{display:block;color:var(--blue);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:5px}.task-start-main h3{color:var(--navy);font-size:21px;line-height:1.4;margin:0 0 6px}.task-start-main p{font-size:15px;color:#405a83;margin:0;line-height:1.6}.task-start-result{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0 17px 45px;font-size:14px;color:#29466f}.task-start-result strong{color:var(--navy)}.task-start-button{margin-left:45px;min-height:44px}.task-context-details,.task-optional-details{background:#fff;border:1px solid var(--line);border-radius:8px;padding:13px 17px;margin:0 0 17px;color:#435875}.task-context-details summary,.task-optional-details summary{display:flex;align-items:center;gap:8px;color:#2e4a73;font-size:14px;font-weight:700;min-height:28px}.task-context-details p{font-size:14px;line-height:1.6;margin:12px 0 0;color:#4b607c}.task-context-details p+p{margin-top:7px}.task-optional-details{padding-bottom:15px}.task-optional-details[open] summary{margin-bottom:12px}.task-optional-note{font-size:13px;color:#64748b;margin:0 0 13px}.task-steps-help{font-size:13px;color:#64748b;margin:-7px 0 15px}.task-example-card{background:#fffdf3;border:1px solid #f3df9a;border-left:4px solid #d99b09;border-radius:8px;padding:17px 20px;margin:0 0 20px}.task-example-head{display:flex;align-items:center;gap:8px;color:#7a5605;margin-bottom:8px}.task-example-card p{color:#5f4b1c;font-size:14px;line-height:1.7;margin:0 0 8px}.task-example-card small{color:#856d32}.task-challenge-card{padding:13px 17px;margin:0 0 20px}.task-challenge-card summary{display:flex;align-items:center;gap:8px;color:#166534;font-size:14px}.task-challenge-card[open] summary{margin-bottom:8px}.task-challenge-card p{margin:0;color:#14532d}.task-delivery-section{scroll-margin-top:20px}.rubric-evaluation-box{padding:15px 18px}.rubric-evaluation-box summary{display:flex;align-items:center;gap:8px;color:var(--navy);font-size:15px}.rubric-evaluation-box[open] summary{margin-bottom:12px}@media(max-width:700px){.task-header-simple h2{font-size:26px}.task-intro{font-size:15px}.task-start-card{padding:19px 17px}.task-start-main h3{font-size:18px}.task-start-result{margin-left:0;display:block}.task-start-result strong,.task-start-result span{display:block}.task-start-result span{margin-top:4px}.task-start-button{width:100%;margin-left:0}.task-context-details,.task-optional-details{padding:11px 14px}.task-steps-section{padding:18px 15px}.task-steps-help{font-size:12px}.task-example-card{padding:15px 16px}}
