:root{--ink:#172345;--sub:#66738f;--line:#e8ecf4;--paper:#fff;--bg:#f5f7fd;--primary:#4b5de9;--primary-dark:#374bd6;--purple:#8161e9;--mint:#18a79a;--orange:#ed9c48;--danger:#cf5266;--shadow:0 12px 38px rgba(31,53,104,.07);--radius:20px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[contenteditable]:focus-visible{outline:3px solid #9ab0ff;outline-offset:3px}::selection{background:#bed1ff}.app-shell{min-height:100vh}.boot,.noscript{min-height:85vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}.boot h1{font-size:23px}.boot p{color:var(--sub)}.shell{display:grid;grid-template-columns:254px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;padding:28px 15px 18px}.brand{display:flex;align-items:center;gap:10px;padding:0 10px 28px}.logo-mark{width:43px;height:43px;display:grid;place-items:center;color:#fff;border-radius:14px;background:linear-gradient(145deg,#596dfa,#7c58e9);font-weight:900;font-size:25px;box-shadow:0 10px 20px #4c5bdf35;flex-shrink:0}.brand b{font-size:13px;line-height:1.25;letter-spacing:.015em}.brand small{display:block;font-size:10px;color:#7f8ba8;margin-top:5px;font-weight:700;letter-spacing:.11em}.side-label{font-size:10px;letter-spacing:.15em;font-weight:900;color:#a0a9bd;padding:8px 15px 12px}.nav-link{display:flex;align-items:center;gap:13px;text-align:left;background:transparent;border:0;border-radius:12px;color:#64718a;font-size:13px;font-weight:660;padding:12px 14px;margin:2px 0;width:100%}.nav-link svg{width:19px;height:19px;flex:0 0 19px}.nav-link:hover{background:#f4f6fd}.nav-link.active{color:#4355d9;background:#eff1ff}.side-bottom{margin-top:auto;background:linear-gradient(145deg,#f1f3ff,#f8f6ff);border-radius:17px;padding:17px 14px}.side-bottom b{font-size:13px}.side-bottom p{font-size:11px;color:var(--sub);line-height:1.6;margin:6px 0 10px}.mini-progress{height:7px;background:#dfe5fa;border-radius:99px;overflow:hidden}.mini-progress>i,.progress>i{display:block;height:100%;background:linear-gradient(90deg,#5266ed,#23bdad);border-radius:99px;transition:width .3s}.side-bottom small{display:block;text-align:right;color:#5665ae;font-weight:800;padding-top:6px}.main{min-width:0}.topbar{height:80px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 clamp(18px,4vw,54px);background:#fff;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;gap:8px;align-items:center;color:#8793aa;font-size:12px;font-weight:700}.breadcrumbs strong{color:#26365f}.profile{display:flex;gap:10px;align-items:center}.profile-info{text-align:right}.profile-info b{font-size:12px;display:block}.profile-info span{font-size:11px;color:var(--sub)}.avatar{width:38px;height:38px;border-radius:12px;background:#eaf0ff;color:#5265db;font-weight:850;display:grid;place-items:center}.xp-pill{background:#fff5e9;color:#bc7b2a;border:1px solid #f5e2bf;padding:8px 10px;border-radius:99px;font-size:11px;font-weight:800}.content{max-width:1320px;margin:0 auto;padding:30px clamp(18px,4vw,54px) 75px}.eyebrow{text-transform:uppercase;color:var(--primary);letter-spacing:.14em;font-size:11px;font-weight:850;margin:0 0 10px}.page-title{font-size:clamp(24px,2.7vw,34px);font-weight:850;letter-spacing:-.035em;margin:0 0 10px;line-height:1.2}.page-desc{font-size:14px;color:var(--sub);line-height:1.75;margin:0 0 26px;max-width:800px}.hero{background:linear-gradient(111deg,#3046bc,#5a63e8 65%,#8270ec);border-radius:26px;padding:35px 37px;color:#fff;display:grid;grid-template-columns:1.55fr .8fr;align-items:center;gap:16px;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;width:350px;height:350px;border:1px solid #ffffff18;border-radius:50%;right:-100px;top:-100px;box-shadow:0 0 0 35px #ffffff0a,0 0 0 75px #ffffff08}.hero p{color:#e2e8ff;line-height:1.7;font-size:13px;max-width:510px}.hero h1{font-size:clamp(26px,3.6vw,43px);line-height:1.13;letter-spacing:-.04em;margin:8px 0 11px}.hero-tag{display:inline-flex;align-items:center;gap:8px;background:#ffffff24;border:1px solid #ffffff30;border-radius:99px;padding:8px 12px;font-size:11px;font-weight:760}.hero-art{position:relative;min-height:220px;display:grid;place-items:center}.paper-stack{width:180px;height:220px;background:#fff;border:10px solid #eaf0ff;border-radius:14px;transform:rotate(9deg);box-shadow:0 22px 45px #172c7885;padding:23px 14px}.paper-stack:before{content:"W";background:#5265dc;color:white;border-radius:10px;display:grid;place-items:center;width:36px;height:36px;font-size:22px;font-weight:850;margin-bottom:18px}.paper-line{height:7px;background:#d8def5;border-radius:6px;margin:9px 0}.paper-line:nth-child(3){width:75%}.paper-line:nth-child(4){width:90%}.float-badge{position:absolute;background:#fff;color:#4460b5;border-radius:13px;padding:12px;font-size:11px;font-weight:850;box-shadow:0 15px 28px #182e7f55;transform:rotate(-8deg);left:2%;bottom:12%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:12px;padding:11px 17px;font-weight:780;font-size:12px;line-height:1.3;transition:transform .15s,background .15s,box-shadow .15s;text-align:center;min-height:41px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn.primary{background:var(--primary);color:#fff;box-shadow:0 7px 17px #4a5bde2e}.btn.primary:hover{background:var(--primary-dark)}.btn.white{background:#fff;color:#4353b6}.btn.outline{border-color:#dce2ef;background:#fff;color:#394669}.btn.ghost{background:#eef1ff;color:#475ad1}.btn.soft-mint{background:#e3faf5;color:#128b7c}.btn.danger{background:#fff0f2;color:#c34b5b}.btn.sm{padding:7px 11px;min-height:33px;border-radius:9px;font-size:11px}.btn.full{width:100%}.btn-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.section-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:30px 0 16px}.section-head h2{font-size:18px;letter-spacing:-.015em;margin:0}.section-head span{font-size:12px;color:var(--sub)}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:22px 0}.stat{border:1px solid var(--line);background:#fff;border-radius:17px;padding:19px;box-shadow:0 6px 15px #1a315006}.stat .symbol{width:35px;height:35px;border-radius:11px;background:#eef1ff;display:grid;place-items:center;font-size:18px;margin-bottom:14px}.stat b{font-size:25px;display:block;letter-spacing:-.025em}.stat small{font-size:11px;color:var(--sub);font-weight:700}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.card{background:#fff;border:1px solid var(--line);border-radius:19px;padding:22px;box-shadow:var(--shadow);min-width:0}.card h3{margin:0 0 9px;font-size:16px}.card p{font-size:12px;color:var(--sub);line-height:1.7}.feature-card{display:flex;flex-direction:column;min-height:205px}.feature-icon{width:47px;height:47px;border-radius:15px;display:grid;place-items:center;background:#eff1ff;color:#4d5dde;font-size:24px;margin-bottom:15px}.feature-card .btn{align-self:flex-start;margin-top:auto}.module-card{display:flex;flex-direction:column;min-height:242px}.module-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.mod-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;font-size:23px;background:#f4f5ff}.status-tag{background:#f2f5fa;color:#67758d;padding:6px 10px;border-radius:99px;font-size:10px;font-weight:800}.status-tag.done{background:#e5f8f2;color:#118d77}.module-card h3{line-height:1.35}.module-card .btn{margin-top:auto}.meta-line{font-size:11px;color:#8790a6;margin:12px 0;display:flex;gap:12px}.progress{height:8px;background:#e7ebf5;border-radius:99px;overflow:hidden}.rounded-icon{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f0f3ff}.alert{display:flex;gap:12px;background:#edf6ff;border:1px solid #d9eafd;color:#365a89;padding:15px 17px;border-radius:14px;font-size:12px;line-height:1.7;margin:17px 0}.alert.warn{background:#fff8e9;border-color:#fae8bf;color:#8d651f}.alert.success{background:#eaf9f3;border-color:#c9eeda;color:#17745f}.lesson-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:27px;margin-bottom:16px}.lesson-card h3{margin:0 0 13px;font-size:18px}.lesson-card p{font-size:14px;color:#5c6880;line-height:1.85;margin:0}.lesson-card .tip{margin:17px 0 0;background:#f1f4ff;border-radius:11px;padding:12px 15px;font-size:12px;color:#4d5eab}.quiz-wrap{max-width:850px;margin:0 auto}.quiz-index{display:flex;justify-content:space-between;font-size:12px;color:var(--sub);font-weight:800;margin-bottom:13px}.question{font-size:22px;letter-spacing:-.015em;line-height:1.5;margin:15px 0 24px}.option{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:14px;border:1.5px solid #e5e9f2;background:#fff;border-radius:13px;margin-bottom:10px;color:#2a3655;font-size:13px}.option:hover:not(:disabled){border-color:#9aabf6;background:#fafbff}.option.selected{border-color:#6574e7;background:#f0f2ff}.option.right{background:#e6f9f2;border-color:#69cbaa}.option.wrong{background:#fff0f2;border-color:#e8a2aa}.letter{display:grid;place-items:center;background:#f1f3f8;color:#61708c;width:29px;height:29px;flex:0 0 29px;border-radius:8px;font-weight:900}.option.selected .letter{background:#5868e6;color:#fff}.answer-note{margin:17px 0;padding:14px 17px;border-radius:12px;background:#eef7ff;color:#3c628f;font-size:12px;line-height:1.7}.result-ring{width:130px;height:130px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#5868e9 calc(var(--score)*1%),#ecedf8 0);margin:0 auto 20px}.result-ring>span{background:#fff;width:107px;height:107px;display:grid;place-items:center;border-radius:50%;font-weight:900;font-size:29px}.center{text-align:center}.label{display:block;font-size:11px;font-weight:800;color:#64728a;margin:0 0 7px}.field{border:1px solid #dfe5ef;background:#fff;border-radius:11px;padding:11px 12px;font-size:13px;color:#293656;width:100%;min-height:42px}.field:focus{outline:3px solid #e1e8ff;border-color:#7382e9}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-group{margin-bottom:16px}.welcome{min-height:100vh;background:radial-gradient(circle at 80% 15%,#e5e9ff 0,#f7f9ff 45%);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:max(35px,5vw);max-width:1440px;margin:auto}.welcome h1{font-size:clamp(36px,5vw,62px);letter-spacing:-.055em;line-height:1.11;margin:14px 0}.welcome p{line-height:1.8;color:#66738d;max-width:530px}.welcome-art{padding:16px;background:linear-gradient(140deg,#5662dd,#8069ec);border-radius:29px;min-height:450px;display:grid;place-items:center}.welcome-art .paper-stack{transform:rotate(6deg) scale(1.3)}.welcome-form{max-width:470px;margin:25px 0}.welcome-form .card{padding:27px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;align-items:flex-start;gap:15px;padding:13px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.5}.steps li:last-child{border-bottom:0}.step-num{width:29px;height:29px;border-radius:9px;background:#eff2ff;color:#5262de;display:grid;place-items:center;flex-shrink:0;font-weight:900}.game-hero{background:linear-gradient(118deg,#233b91,#6559d6);border-radius:20px;color:#fff;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:15px}.game-hero h2{margin:5px 0;font-size:24px}.game-hero p{color:#dbe2ff;font-size:12px}.game-icon{font-size:65px}.game-tile{height:100%;display:flex;flex-direction:column}.game-tile .btn{margin-top:auto;align-self:flex-start}.symbol-big{width:125px;height:125px;display:grid;place-items:center;background:#eef0ff;color:#4556d7;border-radius:23px;font-size:47px;font-weight:900;margin:10px auto 20px;box-shadow:inset 0 -8px 0 #dce3fa}.pill-tabs{display:flex;gap:5px;border:1px solid #e7ebf4;padding:5px;background:#f8f9fc;border-radius:12px;flex-wrap:wrap}.pill-tab{border:0;background:transparent;padding:10px 13px;border-radius:9px;color:#707c95;font-size:12px;font-weight:750}.pill-tab.active{color:#3b50ca;background:#fff;box-shadow:0 3px 12px #26376910}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 284px;gap:17px;align-items:start}.editor-wrap{border:1px solid #e0e5f0;border-radius:19px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.editor-titlebar{background:#f4f6fd;border-bottom:1px solid #e5e9f2;padding:11px 14px;display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:12px;font-weight:800}.editor-tabs{display:flex;gap:4px;background:#fff;border-bottom:1px solid #e9edf5;padding:8px 13px}.editor-tabs span{border-bottom:2px solid #5e6deb;color:#4b5dc9;font-weight:800;font-size:11px;padding:6px 11px}.toolbar{background:#fbfcff;border-bottom:1px solid #e3e8f2;padding:10px 12px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tool-btn{min-width:31px;height:33px;border-radius:7px;background:#fff;border:1px solid #e6eaf2;font-size:13px;font-weight:800;display:grid;place-items:center;color:#3c4969;padding:4px 7px}.tool-btn:hover{border-color:#91a3eb;background:#eef0ff}.tool-divider{height:29px;border-left:1px solid #dae0eb;margin:0 3px}.tool-select{width:auto;max-width:114px;border:1px solid #e0e6f0;border-radius:7px;font-size:11px;padding:7px 4px;background:#fff;color:#344363}.tool-color{width:34px;height:33px;padding:4px;border:1px solid #e0e6f0;border-radius:8px;background:#fff}.doc-stage{padding:30px 18px;background:#e9edf6;overflow-x:auto;max-height:640px;overflow-y:auto}.document{background:#fff;border-radius:2px;margin:auto;min-height:390px;padding:var(--doc-margin,44px);box-shadow:0 7px 24px #243b651b;color:#1b2232;outline:none;line-height:1.6;font-family:Arial,sans-serif;font-size:12pt;overflow-wrap:anywhere}.document[data-paper="a4"][data-orient="portrait"]{width:min(100%,595px)}.document[data-paper="a4"][data-orient="landscape"]{width:min(100%,720px)}.document[data-paper="letter"][data-orient="portrait"]{width:min(100%,570px)}.document[data-paper="letter"][data-orient="landscape"]{width:min(100%,710px)}.document p,.document div{margin:0 0 10px}.document ul,.document ol{padding-left:25px}.document table{border-collapse:collapse;width:100%;margin:12px 0}.document td,.document th{border:1px solid #8d98a9;padding:7px;min-width:28px}.document img{display:block;max-width:100%;max-height:300px;object-fit:contain;margin:12px 0}.doc-status{border-top:1px solid #e7eaf2;padding:11px 13px;display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#7b88a1;background:#fff}.mission-panel{position:sticky;top:12px}.mission-panel h3{margin:0 0 12px}.check-item{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.5;padding:10px 0;border-bottom:1px solid var(--line);color:#64718a}.check-item:last-child{border:0}.check-dot{width:19px;height:19px;border-radius:6px;background:#eef1f7;display:grid;place-items:center;flex-shrink:0;color:#8993ac}.check-item.pass{color:#147a66}.check-item.pass .check-dot{background:#d9f6ea;color:#18947f}.check-item.fail{color:#af4c57}.score-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.score-strip>div{background:#f5f7ff;border-radius:12px;padding:13px;text-align:center}.score-strip b{display:block;font-size:22px}.score-strip small{font-size:10px;color:#818ca4}.rubric-row{display:grid;grid-template-columns:1fr 72px;gap:12px;padding:12px 0;border-bottom:1px solid #eef0f5;font-size:12px;line-height:1.5}.rubric-row strong{text-align:right;color:#4459bd}.badge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.badge-card{border:1px solid #e8ebf3;border-radius:13px;text-align:center;padding:16px 8px;opacity:.48}.badge-card.unlocked{opacity:1;background:#fbfaff;border-color:#e1defa}.badge-card .badge-emoji{font-size:31px;display:block;margin-bottom:9px}.badge-card b{font-size:11px}.footerline{text-align:center;color:#9ca8bc;font-size:11px;padding:20px}.cert{max-width:830px;margin:0 auto;border:11px solid #dce1ff;background:#fff;padding:45px 45px;text-align:center;outline:2px solid #a5b3ee;outline-offset:-22px;box-shadow:var(--shadow)}.cert .seal{font-size:60px}.cert h2{letter-spacing:.1em;font-size:32px;color:#3446a8}.cert strong{display:block;font-size:29px;margin:22px 0;color:#29365e}.cert p{line-height:1.8;color:#64728d}.tiny{font-size:11px;color:#8290a7}.divider{height:1px;background:var(--line);margin:20px 0}.small-muted{font-size:12px;color:var(--sub);line-height:1.7}.hide{display:none!important}.mobile-nav{display:none}.toast{position:fixed;bottom:24px;right:24px;background:#20305a;color:#fff;border-radius:12px;padding:13px 19px;box-shadow:0 12px 35px #1c2e583b;font-size:12px;z-index:80;max-width:min(90vw,440px)}.toast.error{background:#9f3d54}.modal-shade{position:fixed;inset:0;background:#101a3380;display:flex;align-items:center;justify-content:center;padding:16px;z-index:95}.modal{width:min(100%,490px);background:#fff;border-radius:20px;padding:27px;box-shadow:0 25px 80px #0b112b69}.modal h2{font-size:21px;margin:0 0 12px}.modal p{font-size:13px;color:#626e83;line-height:1.8}.modal .btn-row{justify-content:flex-end}.confetti{font-size:50px;text-align:center}.review-list{margin:18px 0}.review-item{border:1px solid #e7ebf3;border-radius:12px;padding:16px;margin-bottom:10px}.review-item strong{font-size:13px}.review-item p{font-size:12px;color:#66738e}.review-item em{font-size:12px;color:#158b70}.print-only{display:none}
@media(max-width:1100px){.shell{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding-left:9px;padding-right:9px}.editor-layout{grid-template-columns:minmax(0,1fr)}.mission-panel{position:static}.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1.5fr .6fr}.hero-art{min-height:185px}.paper-stack{transform:rotate(9deg) scale(.85)}}
@media(max-width:760px){.shell{display:block}.sidebar{display:none}.mobile-nav{position:fixed;z-index:55;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#fff;border-top:1px solid var(--line);padding:7px 5px max(8px,env(safe-area-inset-bottom))}.mobile-nav .nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px 3px;margin:0;border-radius:9px;width:auto;min-width:45px;font-size:8px}.mobile-nav .nav-link svg{height:19px;width:19px}.content{padding:20px 16px 110px}.topbar{height:63px;padding:0 17px}.breadcrumbs{font-size:11px}.profile-info{display:none}.hero{grid-template-columns:1fr;padding:25px}.hero-art{display:none}.hero h1{font-size:29px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:15px}.stat b{font-size:22px}.grid3,.grid2{grid-template-columns:1fr}.welcome{display:block;padding:28px 18px}.welcome-art{display:none}.welcome h1{font-size:36px}.welcome-form{margin:22px 0}.welcome-form .card{padding:20px}.page-title{font-size:27px}.field-row{grid-template-columns:1fr;gap:0}.section-head{align-items:flex-start}.section-head h2{font-size:17px}.editor-layout{display:block}.doc-stage{padding:14px 8px;max-height:540px}.document{min-height:300px;padding:min(25px,var(--doc-margin,25px));font-size:11pt}.editor-wrap{margin-bottom:15px}.mission-panel{position:static}.toolbar{gap:4px;padding:8px}.tool-btn{min-width:29px;height:33px}.game-icon{font-size:43px}.game-hero{padding:20px}.game-hero h2{font-size:20px}.quiz-wrap .card{padding:18px}.question{font-size:18px}.option{font-size:12px}.badge-grid{grid-template-columns:repeat(2,1fr)}.cert{padding:26px 17px}.cert h2{font-size:22px}.cert strong{font-size:23px}.score-strip{gap:6px}.score-strip b{font-size:18px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.mobile-nav,.topbar,.btn,.toolbar,.editor-tabs,.editor-titlebar,.doc-status,.mission-panel,.no-print,.footerline{display:none!important}.shell{display:block}.content{margin:0;padding:0}.main{margin:0}.document{box-shadow:none;width:100%!important;min-height:0}.doc-stage{background:#fff;padding:0;overflow:visible;max-height:none}.editor-wrap{border:0;box-shadow:none}.print-only{display:block}.cert{box-shadow:none}.page-title{page-break-after:avoid}body{background:#fff}}

@media print{body.print-document .content>*:not(.editor-layout){display:none!important}body.print-document .editor-layout{display:block!important}body.print-document .editor-layout>.mission-panel{display:none!important}body.print-document .doc-stage{padding:0!important}body.print-document .document{padding:0!important;width:100%!important}body.print-certificate .content>*:not(.cert){display:none!important}}

.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;align-items:start;gap:17px}
@media(max-width:760px){.lesson-layout{grid-template-columns:1fr}}
