:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17233f;background:#eef3ff;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#eef3ff}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:4px solid rgba(49,87,213,.24);outline-offset:3px}.app{--ink: #17233f;--muted: #5b6780;--blue: #3157d5;--blue-dark: #203b9b;--purple: #7652c7;--teal: #168a86;--yellow: #f4c95d;--line: #dbe2f2;min-height:100vh;color:var(--ink);background:#eef3ff}.eyebrow{margin:0 0 8px;color:var(--blue);font-size:.76rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.primary-button,.secondary-button{min-height:50px;border-radius:14px;padding:13px 18px;font-weight:800;cursor:pointer}.primary-button{border:1px solid transparent;color:#fff;background:linear-gradient(110deg,var(--blue),var(--purple));box-shadow:0 10px 24px #3157d533}.primary-button:disabled{opacity:.5;cursor:not-allowed}.secondary-button{border:1px solid #bfc9e3;color:var(--blue-dark);background:#fff}.learning-home{background:radial-gradient(circle at 8% 10%,rgba(244,201,93,.35),transparent 22rem),radial-gradient(circle at 92% 14%,rgba(118,82,199,.2),transparent 26rem),linear-gradient(160deg,#f7f9ff,#eef3ff 62%,#e6f5f4)}.home-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:22px 0 64px}.brand-bar{display:flex;min-height:48px;align-items:center}.brand-bar a{display:inline-flex;align-items:center;gap:10px;color:var(--blue-dark);font-weight:900;text-decoration:none}.brand-bar a span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,var(--blue),var(--purple))}.home-hero{max-width:820px;margin:30px auto 32px;text-align:center}.home-mark{position:relative;width:94px;height:94px;margin:0 auto 22px;display:grid;place-items:center;border:3px solid #fff;border-radius:30px;color:#fff;background:linear-gradient(145deg,var(--blue),var(--purple));box-shadow:0 20px 45px #3b469138;transform:rotate(-4deg)}.home-mark span{font-size:3rem;font-weight:900;line-height:1}.home-mark i{position:absolute;right:-12px;top:-12px;color:#d99e19;font-size:2rem;font-style:normal}.home-hero h1{max-width:780px;margin:0 auto;font-size:clamp(2.45rem,7vw,5.4rem);line-height:.98;letter-spacing:-.055em}.home-hero>p:last-child{max-width:670px;margin:22px auto 0;color:var(--muted);font-size:clamp(1.05rem,2.2vw,1.3rem);line-height:1.6}.start-panel{width:min(900px,100%);margin:0 auto;display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:14px;align-items:end;padding:24px;border:1px solid rgba(117,135,183,.25);border-radius:26px;background:#ffffffe6;box-shadow:0 24px 70px #2837691f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.start-panel label{display:grid;gap:8px}.start-panel label>span{font-size:.82rem;font-weight:800}.start-panel input,.question-panel textarea{width:100%;border:1px solid #bdc8e2;border-radius:14px;color:var(--ink);background:#fff}.start-panel input{min-height:54px;padding:12px 14px}.topic-field input{font-size:1.05rem}.notice{grid-column:1 / -1;padding:13px 15px;border:1px solid #efbaaa;border-radius:12px;color:#742f25;background:#fff1ed;line-height:1.45}.suggestion{grid-column:1 / -1;justify-self:start;border:0;padding:0;color:var(--blue-dark);background:transparent;font-weight:850;text-decoration:underline;cursor:pointer}.suggestions{width:min(900px,100%);margin:32px auto 0}.suggestions h2{margin:0 0 14px;font-size:1rem}.suggestions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.suggestions button{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #cbd4e8;border-radius:16px;color:var(--ink);background:#ffffffb8;font-weight:750;text-align:left;cursor:pointer}.suggestions button:hover{border-color:#91a4d5;background:#fff}.suggestions button span{color:var(--blue);font-size:1.25rem}.first-load-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;overflow-y:auto;padding:20px;background:radial-gradient(circle at 12% 12%,rgba(244,201,93,.38),transparent 22rem),radial-gradient(circle at 88% 18%,rgba(118,82,199,.26),transparent 25rem),#eff4fff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.first-load-panel{width:min(720px,100%);padding:clamp(26px,6vw,56px);border:1px solid rgba(112,128,174,.28);border-radius:30px;background:#fffffff5;box-shadow:0 28px 85px #26346233;text-align:center}.first-load-orbit{position:relative;width:120px;height:120px;margin:0 auto 24px;display:grid;place-items:center}.first-load-orbit>span{width:78px;height:78px;display:grid;place-items:center;border-radius:26px;color:#fff;background:linear-gradient(145deg,var(--blue),var(--purple));box-shadow:0 14px 35px #3157d542;font-size:2.65rem;font-weight:900;transform:rotate(-5deg)}.first-load-orbit i,.first-load-orbit b,.first-load-orbit em{position:absolute;display:grid;place-items:center;border-radius:50%;font-style:normal;animation:orbitPulse 1.6s ease-in-out infinite}.first-load-orbit i{width:34px;height:34px;right:2px;top:8px;color:#62470e;background:var(--yellow)}.first-load-orbit b{width:28px;height:28px;left:2px;bottom:14px;color:#fff;background:var(--teal);animation-delay:.3s}.first-load-orbit em{width:30px;height:30px;right:8px;bottom:4px;color:#fff;background:var(--purple);animation-delay:.6s}.first-load-panel h2{margin:0;font-size:clamp(2rem,6vw,3.4rem);letter-spacing:-.045em}.first-load-stage{min-height:28px;margin:18px 0;color:var(--muted);font-size:1.08rem;font-weight:750}.first-load-track{height:13px;overflow:hidden;border-radius:999px;background:#e3e9f6}.first-load-track span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--purple),var(--teal));transition:width .25s ease}.first-load-meta{display:flex;justify-content:space-between;gap:16px;margin-top:10px;color:#69758d;font-size:.82rem;font-weight:700}.first-load-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}.first-load-steps span{display:grid;gap:8px;justify-items:center;color:#8791a6;font-size:.78rem;font-weight:750}.first-load-steps i{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#7a859c;background:#edf0f6;font-style:normal}.first-load-steps span.is-active{color:var(--blue-dark)}.first-load-steps span.is-active i{color:#fff;background:var(--blue)}@keyframes orbitPulse{50%{transform:scale(1.14)}}.learning-page{padding-bottom:72px}.app-header{position:sticky;top:0;z-index:30;min-height:64px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:10px max(18px,calc((100% - 1180px)/2));border-bottom:1px solid rgba(132,147,184,.25);background:#fafcfff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app-header strong{color:var(--blue-dark);letter-spacing:-.02em}.app-header button{width:fit-content;min-height:42px;border:0;padding:8px 10px;color:var(--blue-dark);background:transparent;font-weight:800;cursor:pointer}.app-header>:last-child{justify-self:end}.breadcrumbs{width:min(1180px,calc(100% - 32px));margin:0 auto;display:flex;gap:4px;align-items:center;overflow-x:auto;padding:18px 2px 14px;scrollbar-width:thin}.breadcrumbs span{display:inline-flex;align-items:center;flex:0 0 auto}.breadcrumbs i{margin:0 5px;color:#8b96ac;font-style:normal}.breadcrumbs button{border:0;padding:7px 10px;border-radius:999px;color:#46516a;background:#fff;font-size:.85rem;font-weight:750;cursor:pointer}.breadcrumbs span:last-child button{color:#fff;background:var(--blue)}.loading,.notice--app{width:min(1180px,calc(100% - 32px));margin:0 auto 14px}.loading{display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:14px;color:#203b6a;background:#e6edff;font-weight:750}.loading span,.preparing span{width:18px;height:18px;flex:0 0 auto;border:3px solid rgba(49,87,213,.25);border-top-color:var(--blue);border-radius:50%;animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.node-hero{width:min(1180px,calc(100% - 32px));margin:0 auto 28px;display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.25fr);overflow:hidden;border:1px solid #d1daed;border-radius:28px;background:#fff;box-shadow:0 18px 55px #2b39651a}.learning-image{position:relative;min-height:420px;overflow:hidden;color:var(--blue);background:radial-gradient(circle at 70% 22%,rgba(244,201,93,.42),transparent 12rem),linear-gradient(145deg,#dfe8ff,#e5f6f4)}.learning-image--compact{min-height:210px;border-radius:18px 18px 0 0}.learning-image img{width:100%;height:100%;min-height:inherit;display:block;object-fit:cover}.learning-image-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;gap:10px;text-align:center}.learning-image-placeholder span{font-size:4.5rem;line-height:1;animation:pulse 1.5s ease-in-out infinite}.learning-image-placeholder small{color:#4f6083;font-weight:750}@keyframes pulse{50%{transform:scale(1.08);opacity:.68}}.node-copy{padding:clamp(24px,4vw,46px)}.node-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.node-meta span{padding:6px 9px;border-radius:999px;color:#3e4c6f;background:#edf1fb;font-size:.7rem;font-weight:850;letter-spacing:.055em;text-transform:uppercase}.node-copy h1{margin:0;font-size:clamp(2.15rem,5vw,4.4rem);line-height:1;letter-spacing:-.05em}.node-copy>p{color:#46536d;font-size:1.04rem;line-height:1.7}.node-copy aside,.learning-card aside{display:grid;gap:5px;padding:13px 15px;border-radius:14px;color:#294463;background:#eaf7f5;line-height:1.5}.node-copy aside strong,.learning-card aside strong{color:var(--teal);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.reveal{padding-top:13px;border-top:1px solid var(--line)}.node-copy .secondary-button{margin-top:10px}.preparing{margin-top:16px;display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #c8d5f1;border-radius:14px;color:#29436f;background:#eef3ff;font-weight:750;line-height:1.45}.branch-section{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:26px 0 12px}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:18px}.section-heading h2,.question-panel h2{margin:0;font-size:clamp(1.75rem,3vw,2.6rem);letter-spacing:-.035em}.section-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.section-actions button{min-height:44px;padding:10px 13px;border:1px solid #c3cee5;border-radius:12px;color:var(--blue-dark);background:#fff;font-weight:800;cursor:pointer}.section-actions button:last-child{color:#fff;border-color:var(--blue);background:var(--blue)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.learning-card{min-width:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid #d0d9eb;border-radius:20px;background:#fff;box-shadow:0 12px 34px #2c3a6214}.learning-card>div:last-child{flex:1;display:flex;flex-direction:column;padding:20px}.learning-card h3{margin:0;font-size:1.35rem;letter-spacing:-.025em}.learning-card p{color:var(--muted);line-height:1.58}.learning-card aside{margin:2px 0 18px;font-size:.9rem}.learning-card button{min-height:48px;margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:0;border-radius:13px;color:#fff;background:var(--blue);font-weight:850;cursor:pointer}.alternative-controls{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:20px}.set-tabs{display:flex;flex-wrap:wrap;gap:8px}.set-tabs button{min-height:42px;padding:9px 13px;border:1px solid #c8d1e5;border-radius:999px;color:#526078;background:#fff;font-weight:750;cursor:pointer}.set-tabs button.is-active{color:#fff;border-color:var(--purple);background:var(--purple)}.learning-card--skeleton{pointer-events:none}.skeleton-image,.skeleton-line,.skeleton-button{position:relative;overflow:hidden;display:block;background:#e7ecf6}.skeleton-image:after,.skeleton-line:after,.skeleton-button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.78) 48%,transparent 76%);transform:translate(-100%);animation:shimmer 1.25s ease-in-out infinite}.skeleton-image{min-height:210px}.skeleton-line{width:100%;height:14px;margin-bottom:12px;border-radius:999px}.skeleton-line--title{width:68%;height:24px;margin-bottom:18px}.skeleton-line--short{width:76%}.skeleton-button{width:100%;height:48px;margin-top:auto;border-radius:13px;background:#d9e1f2}@keyframes shimmer{to{transform:translate(100%)}}.question-panel{width:min(1180px,calc(100% - 32px));margin:34px auto 0;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;padding:clamp(24px,4vw,40px);border:1px solid #cdd8ef;border-radius:26px;background:radial-gradient(circle at 90% 10%,rgba(244,201,93,.3),transparent 16rem),#fff}.question-panel p{color:var(--muted);line-height:1.6}.question-panel>div:last-child{display:grid;gap:10px}.question-panel label{font-weight:800}.question-panel textarea{min-height:110px;resize:vertical;padding:13px 14px;line-height:1.5}.question-panel .primary-button{justify-self:end}.map-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;overflow-y:auto;padding:28px 16px;background:#161e369e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.map-panel{width:min(980px,100%);margin:0 auto;padding:24px;border-radius:26px;background:#f7f9ff;box-shadow:0 30px 90px #0c122559}.map-panel>header{display:flex;align-items:start;justify-content:space-between;gap:18px}.map-panel h2{margin:0;font-size:2.4rem;letter-spacing:-.04em}.map-panel>header>button{width:48px;height:48px;border:1px solid #cbd4e7;border-radius:50%;color:var(--ink);background:#fff;font-size:1.8rem;cursor:pointer}.map-trail{display:flex;gap:10px;overflow-x:auto;padding:24px 2px 20px}.map-trail button,.map-branches button{border:1px solid #cad4e8;border-radius:16px;color:var(--ink);background:#fff;text-align:left;cursor:pointer}.map-trail button{min-width:170px;display:grid;grid-template-columns:auto 1fr;gap:4px 10px;padding:13px}.map-trail button>span{grid-row:1 / 3;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--teal);font-weight:850}.map-trail button small{color:var(--muted)}.map-trail button.is-current{border-color:var(--blue);background:#eaf0ff}.map-branches{padding-top:20px;border-top:1px solid var(--line)}.map-branches h3{margin:0 0 14px}.map-branches>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.map-branches button{min-height:92px;display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-content:center;padding:14px}.map-branches button>span{grid-row:1 / 3;font-size:1.25rem;color:var(--blue)}.map-branches button small{color:var(--muted)}.map-branches button.is-visited{border-color:#74b9ad;background:#effaf8}.map-preparing{margin:0;padding:16px;border:1px solid #cbd6ed;border-radius:14px;color:#41516f;background:#edf2ff;line-height:1.55}.quiz-page{background:linear-gradient(160deg,#f9fbff,#e9efff)}.quiz-shell,.results{width:min(850px,calc(100% - 32px));margin:42px auto;padding:clamp(24px,5vw,48px);border:1px solid #d2dbee;border-radius:28px;background:#fff;box-shadow:0 22px 65px #2735611f}.quiz-progress{height:10px;overflow:hidden;margin-bottom:30px;border-radius:999px;background:#e5eaf5}.quiz-progress span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--purple));transition:width .24s ease}.quiz-shell h1{margin:0 0 26px;font-size:clamp(1.8rem,4vw,3rem);line-height:1.15;letter-spacing:-.035em}.answer-list{display:grid;gap:12px;margin-bottom:22px}.answer-list button{min-height:62px;display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;padding:12px 15px;border:2px solid #d4dceb;border-radius:16px;color:var(--ink);background:#fff;font-weight:700;text-align:left;cursor:pointer}.answer-list button>span{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#4a5874;background:#edf1f8;font-weight:850}.answer-list button.is-selected{border-color:var(--blue);background:#eef2ff}.answer-list button.is-correct{border-color:#48a291;background:#ebfaf6}.answer-list button.is-wrong{border-color:#e18470;background:#fff1ed}.answer-feedback{margin-top:20px;padding:20px;border-radius:17px}.answer-feedback.is-correct{color:#174d45;background:#e9f8f4}.answer-feedback.is-wrong{color:#6d3429;background:#fff0eb}.answer-feedback strong{font-size:1.15rem}.answer-feedback p{line-height:1.6}.results{text-align:center}.results h1{margin:0;font-size:clamp(3rem,9vw,6.5rem);line-height:1;letter-spacing:-.06em}.results>p:not(.eyebrow){color:var(--muted);font-size:1.15rem}.results-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:26px 0 34px}.review-list{display:grid;gap:12px;text-align:left}.review-list article{padding:17px;border:1px solid #d8dfed;border-radius:15px}.review-list article>span{display:inline-block;padding:5px 8px;border-radius:999px;font-size:.7rem;font-weight:850;text-transform:uppercase}.review-list article>span.is-correct{color:#176454;background:#ddf5ee}.review-list article>span.is-incorrect{color:#833b2c;background:#ffebe5}.review-list h2{margin:10px 0 5px;font-size:1.05rem}.review-list p{margin:0;color:var(--muted);line-height:1.5}@media (max-width: 900px){.start-panel{grid-template-columns:120px minmax(0,1fr)}.start-panel .primary-button{grid-column:1 / -1}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.node-hero{grid-template-columns:1fr}.node-hero>.learning-image{min-height:min(54vw,430px)}.question-panel{grid-template-columns:1fr}.map-branches>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 620px){.home-shell{width:min(100% - 22px,1120px);padding-top:10px}.home-hero{margin-top:18px}.home-mark{width:76px;height:76px;border-radius:24px}.home-mark span{font-size:2.4rem}.start-panel{grid-template-columns:1fr;padding:17px;border-radius:20px}.start-panel .primary-button{grid-column:auto;width:100%}.suggestions>div{grid-template-columns:1fr}.first-load-overlay{padding:10px}.first-load-panel{padding:28px 18px;border-radius:22px}.first-load-steps{gap:6px}.first-load-steps span{font-size:.68rem}.first-load-meta{flex-direction:column;gap:3px}.app-header{grid-template-columns:1fr 1fr}.app-header strong{display:none}.node-hero,.branch-section,.question-panel,.breadcrumbs,.loading,.notice--app{width:calc(100% - 22px)}.node-hero{border-radius:20px}.node-copy{padding:22px 18px}.node-copy h1{font-size:2.35rem}.card-grid{grid-template-columns:1fr}.learning-card{display:grid;grid-template-columns:125px minmax(0,1fr)}.learning-card .learning-image--compact{min-height:100%;border-radius:0}.learning-card>div:last-child{padding:16px}.learning-card aside{display:none}.learning-card--skeleton .skeleton-image{min-height:100%}.section-heading{align-items:stretch;flex-direction:column}.section-actions{justify-content:stretch}.section-actions button{flex:1}.alternative-controls{align-items:stretch;flex-direction:column}.question-panel{padding:22px 18px;border-radius:20px}.question-panel .primary-button{width:100%;justify-self:stretch}.map-panel{padding:18px;border-radius:20px}.map-branches>div{grid-template-columns:1fr}.quiz-shell,.results{width:calc(100% - 22px);margin:22px auto;padding:22px 18px;border-radius:20px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
