.growth-rules-page{max-width:1080px;margin-inline:auto}.growth-rules-heading h1{margin:6px 0 10px;font-size:clamp(28px,3vw,36px)}.growth-rules-heading>p:last-child{color:var(--muted);margin-bottom:24px}.growth-rules-summary{display:flex;gap:40px;align-items:center;padding:28px 32px;margin-bottom:20px}.growth-rules-summary>div:first-child{display:grid;gap:8px;color:var(--muted)}.growth-rules-summary strong{color:var(--ink);font-size:36px}.growth-rules-current{flex:1}.growth-rules-current>span{display:flex;justify-content:space-between}.growth-rules-current p{color:var(--muted);font-size:14px;margin-bottom:0}.growth-rules-content{padding:30px 32px}.growth-rules-content h2{margin:30px 0 16px;font-size:21px}.growth-rules-content h2:first-child{margin-top:0}.growth-rules-content p,.growth-no-reward{color:var(--muted);line-height:1.8;font-size:14px}.growth-reward-list{margin:0}.growth-reward-list>div{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding:22px 0;border-bottom:1px solid #e3eaf2}.growth-reward-list dt{display:flex;gap:10px;font-weight:650;font-size:15px}.growth-reward-list dt>svg{color:var(--blue);flex-shrink:0}.growth-reward-list small{display:block;color:var(--muted);line-height:1.7;margin-top:8px;font-size:13px;font-weight:400}.growth-reward-list dd{margin:0;color:var(--blue-dark);font-size:16px;font-weight:650}.growth-task-reward{display:flex;justify-content:space-between;gap:16px;font-size:14px;margin-bottom:8px;color:var(--ink);font-weight:400}.growth-task-reward b{color:var(--blue-dark);white-space:nowrap}.growth-level-scale{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:18px 0;border-block:1px solid #e3eaf2}.growth-level-scale li{display:grid;gap:8px;padding:8px}.growth-level-scale span{font-size:13px;color:var(--muted)}.growth-no-reward{padding-left:20px}.growth-no-reward li{margin:7px 0}.growth-rules-note{padding-top:18px;border-top:1px solid #e3eaf2}@media(max-width:600px){.growth-rules-summary{gap:22px;padding:22px}.growth-rules-content{padding:24px 20px}.growth-reward-list>div{grid-template-columns:1fr;gap:14px}.growth-level-scale{grid-template-columns:repeat(2,1fr);gap:10px}}.app-select{position:relative;display:inline-flex;flex-direction:column;min-width:0;max-width:100%;vertical-align:middle}.app-select>.app-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;margin:0;padding:10px 12px;border:1px solid var(--code-border, #d9e2ee);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;font-weight:450;line-height:1.5;text-align:left;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.app-select>.app-select-trigger:hover:not(:disabled){border-color:#94b5e4;background:#f7faff}.app-select>.app-select-trigger[aria-expanded=true]{border-color:var(--blue);box-shadow:0 0 0 3px #2369f514}.app-select>.app-select-trigger:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.app-select>.app-select-trigger:active:not(:disabled){background:var(--blue-soft)}.app-select>.app-select-trigger:disabled{opacity:.55;cursor:not-allowed}.app-select>.app-select-trigger[aria-invalid=true]{border-color:#b74d45}.app-select-value{flex:1;min-width:0;overflow-wrap:anywhere}.app-select-value.is-placeholder{color:var(--muted)}.app-select-caret{flex:0 0 auto;color:var(--muted);transition:transform .18s ease}[aria-expanded=true]>.app-select-caret{transform:rotate(180deg)}.app-select>select.app-select-native{display:none!important}.app-select-error{padding-top:6px;font-size:12px;line-height:1.5;color:#a53f37}.app-select-menu{position:fixed;z-index:2000;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b7c9e0 transparent;padding:6px;border:1px solid #d9e4f2;border-radius:16px;background:#fff;color:var(--ink);box-shadow:0 14px 36px #152f571f,0 3px 8px #152f570a;font:14px/1.5 Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;transform-origin:top center;animation:select-menu-in .16s cubic-bezier(.2,.7,.2,1);transition:opacity .12s ease,transform .12s ease}.app-select-menu[data-side=top]{transform-origin:bottom center}.app-select-menu.is-closing{opacity:0;transform:translateY(-3px);pointer-events:none}.app-select-menu[data-side=top].is-closing{transform:translateY(3px)}.app-select-group{padding:8px 10px 5px;color:var(--muted);font-size:12px;font-weight:550}.app-select-menu>div+div>.app-select-group{margin-top:5px;border-top:1px solid #edf1f6;padding-top:10px}.app-select-option{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px;border-radius:10px;font-weight:450;cursor:pointer;transition:background-color .12s ease,color .12s ease}.app-select-option>span{min-width:0;overflow-wrap:anywhere}.app-select-option>svg{flex:0 0 auto}.app-select-option.is-active{background:#f0f5fc}.app-select-option[aria-selected=true]{color:var(--blue-dark);background:var(--blue-soft);font-weight:600}.app-select-option[aria-selected=true].is-active{background:#dfeaff}.app-select-option[aria-disabled=true]{color:#8a95a6;cursor:not-allowed;background:transparent}.field-control>.app-select{flex:1;align-self:stretch}.auth-card .auth-grade-field .field-control,.auth-card .auth-grade-field .field-control:focus-within{padding:0;border:0;background:transparent;box-shadow:none;gap:0;position:relative}.auth-grade-field .field-control>svg{position:absolute;left:13px;z-index:1;pointer-events:none}.auth-grade-field .app-select>.app-select-trigger{min-height:48px;padding:10px 14px 10px 42px;border-color:var(--auth-stroke);border-radius:13px;background:#ffffff7a;color:var(--auth-ink);font-size:16px}.auth-grade-field .app-select>.app-select-trigger:hover,.auth-grade-field .app-select>.app-select-trigger[aria-expanded=true]{background:#ffffffed;border-color:var(--blue)}.profile-editor-fields .app-select,.feedback-card .app-select,.pk-friend-select .app-select{width:100%}.profile-editor-fields .app-select-trigger{min-height:46px;font-size:16px}.curriculum-filter-row .app-select,.filter-bar .app-select{min-width:min(150px,100%)}.wb-editor-toolbar .app-select-trigger{gap:8px;padding:5px 8px;min-height:36px;border-radius:9px;font-size:13px}.question-navigation label .app-select{flex:1;min-width:0;max-width:min(330px,60vw)}.wb-editor-toolbar label{display:flex;align-items:center;gap:6px}@keyframes select-menu-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media(max-height:820px)and (min-width:761px){.auth-grade-field .app-select>.app-select-trigger{min-height:46px}}@media(max-width:600px){.app-select-menu{font-size:16px}.filter-bar label{min-width:0}.filter-bar .app-select{width:100%}.question-navigation label .app-select{max-width:100%}}@media(prefers-reduced-motion:reduce){.app-select-trigger,.app-select-caret,.app-select-menu,.app-select-option{animation:none!important;transition:none!important}}.contest-page :is(.contest-feature,.competition-row){transition:border-color .18s ease,box-shadow .2s ease,scale .12s ease}.contest-page :is(.contest-feature,.competition-row):focus-within{border-color:#a8c2ec}@media(hover:hover)and (pointer:fine){.contest-page :is(.contest-feature,.competition-row):hover{border-color:#b7cdef;box-shadow:0 8px 24px #1735540b}}.contest-page :is(.contest-feature,.competition-row):has(button:not(:disabled):active){scale:.996}.contest-page button,.contest-modal-panel button{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .18s ease}.contest-page button:not(:disabled):active,.contest-modal-panel button:not(:disabled):active{filter:brightness(.97)}.contest-page .toggle-filter[aria-pressed=true]{border-color:#adc7f1}.contest-modal-shell{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:22px;border:0;box-sizing:border-box;background:transparent;overflow:hidden}.contest-modal-shell[open]{display:grid;place-items:center}.contest-modal-shell::backdrop{background:transparent}.contest-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0d1e3d75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.contest-modal-shell .contest-modal-panel{width:min(560px,100%);max-height:calc(100dvh - 44px);margin:auto;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box}.contest-modal-panel .dialog-close{width:44px;height:44px;top:12px;right:12px}.contest-modal-panel :is(button,input):focus-visible{outline:2px solid var(--blue);outline-offset:3px}.contest-modal-panel[inert]{pointer-events:none}.contest-modal-panel>.contest-dialog-feedback{min-height:22px;margin:12px 0 0;padding:0;font-size:13px;line-height:22px;background:transparent}.contest-modal-panel>.contest-dialog-feedback.form-error{color:#aa4844}.contest-modal-panel .contest-dialog-actions{margin-top:8px}@media(max-width:600px){.contest-modal-shell{padding:12px}.contest-modal-shell .contest-modal-panel{padding:24px 20px;max-height:calc(100dvh - 24px)}.contest-modal-panel h2{font-size:24px;padding-right:12px}}@media(prefers-reduced-motion:reduce){.contest-page :is(.contest-feature,.competition-row),.contest-page button,.contest-modal-panel button{transition:none}.contest-page :is(.contest-feature,.competition-row):has(button:not(:disabled):active){scale:1}}.friend-invite-preview{padding:24px;margin-bottom:20px;border-radius:22px}.friend-invite-preview header{display:flex;align-items:center;justify-content:space-between;gap:16px}.friend-invite-preview h2{margin:0;font-size:21px}.friend-invite-preview h2:focus-visible{outline:2px solid var(--blue);outline-offset:5px;border-radius:5px}.friend-invite-person{display:flex;align-items:center;gap:14px;margin:20px 0 12px}.friend-invite-person .surface-icon{width:54px;height:54px;overflow:hidden;flex-shrink:0}.friend-invite-person img{width:100%;height:100%;object-fit:cover}.friend-invite-person h3{font-size:19px;margin:0 0 5px;overflow-wrap:anywhere}.friend-invite-person p,.friend-invite-status{margin:0;color:var(--muted, #596b82);font-size:14px;line-height:1.6}.friend-invite-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.friend-invite-actions button,.friend-invite-preview .icon-button{min-height:44px}.friend-invite-actions button{transition:background-color .18s ease,box-shadow .18s ease,transform .12s ease}.friend-invite-actions button:active:not(:disabled){transform:scale(.98)}.friend-invite-error{color:#a33030;line-height:1.6;font-size:14px}.friend-share-actions{display:flex;flex-wrap:wrap;gap:0 12px}.friends-workspace .friend-add-hero{overflow:clip}.friend-share-actions .friend-code-copy{min-height:44px;margin-top:2px;font-size:12px}.my-friend-code .friend-share-hint{color:#586b85;font-size:12px}.my-friend-code .friend-share-fallback{width:100%;box-sizing:border-box;margin-top:8px;border:1px solid #9eabc0;border-radius:10px;padding:8px;font-size:12px}.friend-qr:disabled{cursor:default}.auth-invite-notice{padding:12px 14px;border-radius:12px;background:var(--blue-soft);color:var(--blue-dark);font-size:14px;line-height:1.6}@media(max-width:600px){.friend-invite-preview{padding:20px 16px}.friend-invite-actions>button{flex:1}.my-friend-code.is-visible{grid-template-columns:1fr;justify-items:start}.my-friend-code.is-visible .friend-qr{width:168px;height:168px}}@media(prefers-reduced-motion:reduce){.friend-invite-actions button,.friend-qr{transition:none!important;transform:none!important}}.pioneer-library,.pioneer-reader{min-width:0}.pioneer-section-kicker{margin:0 0 9px;color:var(--blue-dark, #2549a6);font-size:12px;font-weight:650;letter-spacing:.04em;line-height:1.6}.pioneer-editorial-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;padding:18px;overflow:hidden;border-radius:24px}.pioneer-feature-cover,.pioneer-card-cover{position:relative;overflow:hidden;background:var(--blue-soft)}.pioneer-feature-cover{min-height:270px;border-radius:17px}.pioneer-feature-cover img{display:block;width:100%;height:100%;object-fit:cover}.pioneer-feature-cover>span,.pioneer-card-cover>span{position:absolute;left:12px;bottom:12px;padding:5px 8px;border-radius:8px;color:#fff;background:#14263bd9;font-size:10px;line-height:1.4;pointer-events:none}.pioneer-feature-copy{align-self:center;padding:14px 14px 14px 0}.pioneer-feature-copy h2{margin:0 0 12px;font-size:clamp(23px,2.3vw,32px);line-height:1.5;text-wrap:balance;letter-spacing:-.025em}.pioneer-feature-copy>p:not(.pioneer-section-kicker){color:var(--muted);font-size:14px;line-height:1.85;margin:0}.pioneer-feature-copy .primary-button{margin-top:10px}.pioneer-reading-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0;color:var(--muted);font-size:12px;line-height:1.6}.pioneer-reading-meta span{display:inline-flex;align-items:center;gap:5px}.pioneer-catalog{margin-top:30px;scroll-margin-top:24px}.pioneer-catalog-heading{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap}.pioneer-catalog-heading h2{margin:0;font-size:21px;line-height:1.5}.pioneer-search{display:flex;align-items:center;gap:9px;width:240px;max-width:100%;min-height:44px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted)}.pioneer-search:focus-within{outline:2px solid var(--blue);outline-offset:2px}.pioneer-search input{width:100%;min-width:0;height:44px;border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:var(--ink)}.pioneer-topic-filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.pioneer-topic-filters button{min-height:44px;padding:8px 14px;border:1px solid transparent;border-radius:12px;color:var(--muted);background:transparent;font-size:13px;cursor:pointer;transition:background-color .16s ease,color .16s ease}.pioneer-topic-filters button:hover{background:var(--blue-soft);color:var(--blue-dark)}.pioneer-topic-filters button[aria-pressed=true]{background:var(--blue-soft);border-color:var(--line);color:var(--blue-dark);font-weight:700}.pioneer-result-count{margin:14px 0;font-size:12px;color:var(--muted)}.pioneer-result-count:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:6px}.pioneer-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.pioneer-story-card{display:flex;flex-direction:column;min-width:0;padding:0;overflow:hidden;border-radius:22px}.pioneer-card-open{display:flex;flex:1;flex-direction:column;width:100%;padding:0;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.pioneer-card-cover{width:100%;aspect-ratio:16 / 9}.pioneer-card-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:filter .18s ease}.pioneer-card-open:hover img{filter:brightness(1.045)}.pioneer-card-copy{display:flex;flex-direction:column;flex:1;padding:18px 18px 0}.pioneer-card-copy h3{margin:0 0 10px;font-size:18px;line-height:1.6;text-wrap:balance}.pioneer-card-copy>p:not(.pioneer-section-kicker){margin:0 0 12px;color:var(--muted);font-size:13px;line-height:1.8}.pioneer-card-copy .pioneer-reading-meta{margin-top:auto;padding-top:8px}.pioneer-story-actions{display:flex;align-items:center;gap:4px;padding:10px 14px;border-top:1px solid var(--line)}.pioneer-story-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:8px 10px;border:0;border-radius:12px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;transition:color .16s ease,background-color .16s ease}.pioneer-story-actions button:hover,.pioneer-story-actions button[aria-pressed=true]{color:var(--blue-dark);background:var(--blue-soft)}.pioneer-story-actions .pioneer-save{margin-left:auto}.pioneer-pagination{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:28px 0 8px}.pioneer-pagination button{min-height:44px;min-width:44px;border:1px solid var(--line);border-radius:12px;padding:8px 12px;background:var(--surface);color:var(--ink);cursor:pointer}.pioneer-pagination button[aria-current=page]{color:#fff;background:var(--blue);border-color:var(--blue)}.pioneer-library button:disabled,.pioneer-reader button:disabled{opacity:.5;cursor:not-allowed}.pioneer-library button:focus-visible,.pioneer-reader button:focus-visible,.pioneer-reader a:focus-visible,.pioneer-reader summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.pioneer-card-open:focus-visible{outline-offset:-4px!important}.pioneer-reader{max-width:1120px;margin-inline:auto;--pioneer-success: var(--code-success, #247346)}.pioneer-reader-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.pioneer-reader-topline>span{display:flex;gap:10px;color:var(--muted);font-size:12px}.pioneer-back{min-height:44px;margin:0}.pioneer-article{padding:0}.pioneer-reader-hero{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:28px;padding:28px;border-radius:24px;box-shadow:none}.pioneer-article-header{min-width:0;padding:4px 0}.pioneer-article-header>.pioneer-section-kicker{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pioneer-article-header>.pioneer-section-kicker span{padding-left:10px;border-left:1px solid var(--line);color:var(--muted);font-weight:400}.pioneer-article-header h1{max-width:20em;margin:16px 0;font-size:clamp(25px,2.25vw,34px);line-height:1.5;letter-spacing:-.025em;text-wrap:balance}.pioneer-article-header h1:focus{outline:none}.pioneer-deck{max-width:46em;margin:0;color:var(--muted);font-size:14px;line-height:1.9}.pioneer-article-header .pioneer-reading-meta{gap:7px 14px;margin:18px 0}.pioneer-start-reading{display:inline-flex;align-items:center;gap:24px;min-height:44px;padding:0;border:0;background:transparent;color:var(--blue-dark);font:inherit;font-weight:650;font-size:14px;cursor:pointer}.pioneer-start-reading svg{transition:transform .18s ease}.pioneer-start-reading:hover svg{transform:translate(4px)}.pioneer-article-cover{min-width:0;margin:0}.pioneer-article-cover>img{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;border-radius:18px}.pioneer-article-cover figcaption{padding:10px 4px 0;color:var(--muted);font-size:11px;line-height:1.8}.pioneer-read-layout{display:grid;grid-template-columns:minmax(0,1fr) 182px;gap:28px;align-items:start;margin-top:28px}.pioneer-reading-main{min-width:0;grid-column:1;grid-row:1}.pioneer-read-rail{position:sticky;top:28px;grid-column:2;grid-row:1}.pioneer-contents{padding:12px 0}.pioneer-contents-title{display:flex;align-items:center;gap:9px;margin:0 0 18px 12px;font-size:14px;font-weight:650}.pioneer-contents>div{display:grid;gap:4px}.pioneer-contents button{display:flex;align-items:baseline;gap:12px;min-height:44px;padding:11px 12px;border:0;border-radius:12px;text-align:left;background:transparent;color:var(--muted);font:inherit;font-size:13px;line-height:1.7;cursor:pointer;transition:color .18s ease,background-color .18s ease}.pioneer-contents button>span{font-size:11px;font-variant-numeric:tabular-nums}.pioneer-contents button:hover,.pioneer-contents button[aria-current=location]{background:var(--blue-soft);color:var(--blue-dark)}.pioneer-contents button[aria-current=location]{font-weight:650}.pioneer-contents-note{margin:22px 12px 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;line-height:1.85}.pioneer-prose{width:100%;margin:0;padding:28px 32px 16px;border-radius:24px;box-shadow:none;overflow-wrap:anywhere}.pioneer-prose-label{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.pioneer-prose-label>span:first-child{color:var(--blue-dark);font-weight:650;letter-spacing:.1em}.pioneer-reading-section{padding-top:28px;overflow-wrap:anywhere}.pioneer-reading-section h2{margin:0 0 16px;font-size:22px;line-height:1.5}.pioneer-reading-section h2[tabindex]{scroll-margin-top:88px}.pioneer-reading-section h2[tabindex]:focus-visible{outline:2px solid var(--blue);outline-offset:6px;border-radius:4px}.pioneer-reading-section h3{font-size:17px;line-height:1.6}.pioneer-reading-section>p,.pioneer-reading-section li{margin:0 0 16px;color:var(--ink);font-size:16px;line-height:1.95}.pioneer-reading-section .pioneer-section-kicker{font-size:12px;color:var(--blue-dark);margin-bottom:8px}.pioneer-story-section+.pioneer-story-section{margin-top:14px;padding-top:28px;border-top:1px solid var(--line)}.pioneer-story-section-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.pioneer-story-section-title>span{color:var(--blue-dark);font:500 22px/1 Georgia,serif}.pioneer-story-section-title h2{margin:0}.pioneer-block-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}.pioneer-section-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:14px;background:var(--blue-soft);color:var(--blue-dark)}.pioneer-block-heading .pioneer-section-kicker{margin:0 0 4px}.pioneer-block-heading h2{margin:0;font-size:21px}.pioneer-article-response{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.pioneer-article-response>p{margin:0 0 8px;font-size:12px;color:var(--muted)}.pioneer-article-response .pioneer-story-actions{border:0;padding:0}.pioneer-sources{margin:26px 8px;padding:0}.pioneer-sources h2{font-size:16px;margin-bottom:12px}.pioneer-sources>p{color:var(--muted);font-size:13px;line-height:1.85}.pioneer-sources ul{padding:0;list-style:none;margin:12px 0}.pioneer-sources li{margin:3px 0}.pioneer-sources a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;color:var(--blue-dark);font-size:14px;text-decoration:none}.pioneer-sources a svg{flex-shrink:0}.pioneer-sources a:hover{text-decoration:underline}.pioneer-sources small{display:block;margin-top:12px;color:var(--muted);font-size:12px;line-height:1.8}.pioneer-discussion{margin-top:24px;padding:28px 32px;border:1px solid var(--line);border-radius:24px;background:var(--surface)}.pioneer-discussion>p{color:var(--muted);font-size:14px}.pioneer-discussion-empty{display:flex;align-items:center;gap:16px;padding:20px;margin:20px 0;border:1px dashed var(--line);border-radius:16px;color:var(--muted)}.pioneer-discussion-empty svg{flex-shrink:0}.pioneer-discussion-empty strong{color:var(--ink);font-size:14px;font-weight:550}.pioneer-discussion-empty p{margin:5px 0 0;font-size:12px;line-height:1.8}.pioneer-comment-list{display:grid;gap:6px;margin:10px 0;padding:0;list-style:none}.pioneer-comment-list>li{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.pioneer-comment-list>li>div{min-width:0;flex:1}.pioneer-comment-avatar{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;color:var(--blue-dark);background:var(--blue-soft);font-size:13px}.pioneer-comment-list strong{font-size:14px}.pioneer-comment-list p{margin:6px 0 0;font-size:15px;line-height:1.9;white-space:pre-wrap}.pioneer-discussion form label{display:block;font-size:14px;margin:16px 0 8px}.pioneer-discussion textarea{display:block;width:100%;min-height:120px;padding:14px;resize:vertical;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;font-size:16px;line-height:1.8}.pioneer-comment-submit{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.pioneer-comment-submit button{min-width:144px}.pioneer-comment-feedback{display:grid;align-items:start;min-height:44px;margin-top:10px;font-size:13px;line-height:1.7}.pioneer-comment-feedback>p{grid-area:1 / 1;margin:0}.pioneer-comment-feedback svg{flex-shrink:0}.pioneer-discussion form small{color:var(--muted);font-size:12px}.pioneer-comment-privacy{display:block;margin-top:8px;line-height:1.7}.pioneer-discussion textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.pioneer-discussion .primary-button{margin:0;min-height:44px;box-shadow:none}.pioneer-inline-error{color:#963b24;line-height:1.8}.pioneer-inline-error button{margin-left:10px}.pioneer-comment-shortcut{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 8px;border:0;border-radius:10px;background:transparent;color:var(--blue-dark);font:inherit;cursor:pointer}.pioneer-comment-shortcut:hover{background:var(--blue-soft)}.pioneer-comments-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:14px}.pioneer-comments-heading .pioneer-block-heading{margin:0}.pioneer-comments-heading>span,.pioneer-comment-byline time{color:var(--muted);font-size:12px}.pioneer-comment-count{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.pioneer-comment-byline{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 14px}.pioneer-comments-feed{margin-top:12px;border-top:1px solid var(--line);padding-top:12px;min-height:116px;overflow-anchor:none}.pioneer-comment-status{color:var(--muted);font-size:14px}.pioneer-comment-success{display:flex;align-items:center;gap:6px;margin:12px 0 0;color:var(--pioneer-success);font-size:13px}.pioneer-comment-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:20px}.pioneer-comment-pagination>span{color:var(--muted);font-size:12px}.pioneer-comment-pagination button{margin:0;min-height:44px}.pioneer-related{margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}.pioneer-related-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.pioneer-related-heading h2{font-size:22px;margin:0}.pioneer-related-heading>span{font-size:13px;color:var(--muted)}.pioneer-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.pioneer-related button{display:grid;grid-template-columns:minmax(100px,.85fr) minmax(0,1fr);align-items:center;gap:18px;padding:14px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.pioneer-related button:hover{border-color:var(--blue);box-shadow:var(--shadow-sm)}.pioneer-related-cover{aspect-ratio:4 / 3;overflow:hidden;border-radius:13px}.pioneer-related-cover img{width:100%;height:100%;object-fit:cover}.pioneer-related small{font-size:11px;color:var(--muted)}.pioneer-related h3{margin:8px 0 12px;font-size:15px;line-height:1.7}.pioneer-related-link{display:inline-flex;align-items:center;gap:10px;color:var(--blue-dark);font-size:12px}.pioneer-related svg{flex-shrink:0}.pioneer-cover-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:180px;height:100%;padding:24px;background:var(--blue-soft);color:var(--blue-dark)}.ideology-page{--pioneer-control-time: .16s;--pioneer-control-ease: cubic-bezier(.2, .7, .2, 1)}.ideology-page button{touch-action:manipulation;transition:color var(--pioneer-control-time) ease,background-color var(--pioneer-control-time) ease,border-color var(--pioneer-control-time) ease,box-shadow var(--pioneer-control-time) ease,opacity .12s ease}.ideology-page button:not(:disabled):hover{transform:none}.ideology-page button:not(:disabled):active{opacity:.76}.ideology-page button:disabled{cursor:not-allowed}.ideology-page button:focus-visible,.ideology-page select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.ideology-page button[aria-busy=true]{cursor:progress;opacity:.75}.ideology-page .text-button:hover,.pioneer-pagination button:not([aria-current]):not(:disabled):hover{background:var(--blue-soft);color:var(--blue-dark)}.ideology-page .text-button{border-radius:10px;min-height:44px}.ideology-page .text-button svg,.pioneer-sources a svg,.pioneer-related-link svg{transition:transform .18s var(--pioneer-control-ease)}.ideology-page .text-button:hover svg,.pioneer-sources a:hover svg,.pioneer-related button:hover .pioneer-related-link svg{transform:translate(3px)}.ideology-page .pioneer-back:hover svg{transform:translate(-3px)}.pioneer-topic-filters button[aria-pressed=true]{box-shadow:inset 0 -2px 0 var(--blue)}.pioneer-action-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.pioneer-action-label{font-variant-numeric:tabular-nums;white-space:nowrap}.pioneer-share .pioneer-action-label,.pioneer-save .pioneer-action-label{min-width:3em}.pioneer-busy-icon{animation:pioneer-spin .8s linear infinite}.pioneer-search{padding-right:7px;transition:border-color .16s ease,box-shadow .16s ease}.pioneer-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.pioneer-search input::-webkit-search-cancel-button{-webkit-appearance:none}.ideology-page .pioneer-search-clear{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .14s ease,visibility 0s .14s,background-color .14s ease}.ideology-page .pioneer-search-clear.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;cursor:pointer}.pioneer-search-clear svg{transform:scale(.65) rotate(-45deg);transition:transform .18s var(--pioneer-control-ease)}.pioneer-search-clear.is-visible svg{transform:scale(1) rotate(0)}.pioneer-search-clear:hover{background:var(--blue-soft);color:var(--blue-dark)}.ideology-page .ideology-tabs{position:relative;isolation:isolate}.ideology-tabs:before{content:"";position:absolute;left:4px;top:4px;bottom:4px;width:calc((100% - 12px)/2);border-radius:9px;background:var(--surface);box-shadow:0 4px 10px #1f4b9117;pointer-events:none;transition:transform .28s var(--pioneer-control-ease)}.ideology-tabs[data-active=practice]:before{transform:translate(calc(100% + 4px))}.ideology-page .ideology-tabs button{position:relative;z-index:1;min-height:44px;flex:1}.ideology-page .ideology-tabs button.is-active{background:transparent;box-shadow:none}.ideology-tabs button:not(.is-active):hover{color:var(--blue-dark);background:#ffffff60}.ideology-practice-panel>section+section{margin-top:28px}.pioneer-inline-error,.pioneer-comment-success{animation:pioneer-feedback-in .18s ease-out both}.pioneer-task-modal{animation:pioneer-backdrop-in .22s ease-out both}.pioneer-task-modal .dialog{max-height:calc(100dvh - 44px);overflow-y:auto;animation:pioneer-dialog-in .24s var(--pioneer-control-ease) both}.pioneer-task-modal.is-closing{pointer-events:none;animation:pioneer-backdrop-out .16s ease-in both}.pioneer-task-modal.is-closing .dialog{animation:pioneer-dialog-out .16s ease-in both}@keyframes pioneer-spin{to{transform:rotate(360deg)}}@keyframes pioneer-feedback-in{0%{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes pioneer-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes pioneer-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes pioneer-dialog-in{0%{opacity:.5;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes pioneer-dialog-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(6px) scale(.99)}}@media(max-width:1280px){.pioneer-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1050px){.pioneer-read-layout{display:flex;flex-direction:column;gap:20px}.pioneer-reading-main,.pioneer-read-rail{width:100%}.pioneer-read-rail{position:static}.pioneer-contents{padding:0}.pioneer-contents-title{margin:0 0 10px}.pioneer-contents>div{display:flex;flex-wrap:wrap;gap:4px}.pioneer-contents button{padding-inline:10px}.pioneer-contents button>span,.pioneer-contents-note{display:none}}@media(max-width:850px){.pioneer-editorial-feature{grid-template-columns:1fr;gap:16px}.pioneer-feature-cover{min-height:0;aspect-ratio:16 / 9}.pioneer-feature-copy{padding:4px 8px 14px}.pioneer-reader-hero{grid-template-columns:1fr;gap:22px;padding:24px}.pioneer-article-header{padding:0}.pioneer-article-header h1{max-width:none;font-size:28px}.pioneer-article-cover{margin:0}.pioneer-related-grid{grid-template-columns:1fr}.pioneer-related button{grid-template-columns:minmax(100px,180px) minmax(0,1fr)}}@media(max-width:560px){.ideology-page .segmented-tabs.prominent{width:100%}.ideology-page .segmented-tabs.prominent button{min-width:0;flex:1;min-height:44px}.pioneer-story-grid{grid-template-columns:1fr}.pioneer-editorial-feature{padding:12px}.pioneer-catalog-heading{align-items:stretch;flex-direction:column}.pioneer-search{width:100%}.pioneer-topic-filters{gap:4px}.pioneer-topic-filters button{padding-inline:11px}.pioneer-card-copy>p:not(.pioneer-section-kicker),.pioneer-feature-copy>p:not(.pioneer-section-kicker){font-size:16px}.pioneer-reader-topline>span{display:none}.pioneer-reader-hero{padding:20px;border-radius:22px}.pioneer-article-header h1{font-size:25px}.pioneer-deck{font-size:16px}.pioneer-article-cover figcaption{padding-inline:0}.pioneer-read-layout{margin-top:22px}.pioneer-prose,.pioneer-discussion{padding:22px 18px;border-radius:22px}.pioneer-prose-label{flex-wrap:wrap}.pioneer-block-heading{gap:10px}.pioneer-reading-section h2{font-size:20px}.pioneer-related button{grid-template-columns:100px minmax(0,1fr);gap:12px}.pioneer-related h3{font-size:14px}.pioneer-pagination{gap:4px}.pioneer-pagination button{padding-inline:9px}}@media(prefers-reduced-motion:reduce){.ideology-page *,.ideology-page *:before,.ideology-page *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.ideology-page button,.ideology-page button svg,.pioneer-sources a svg{transform:none!important}}.practice-catalog{min-width:0}.practice-intro{display:flex;justify-content:space-between;align-items:center;gap:28px;margin:30px 0 26px}.practice-eyebrow{margin:0 0 9px;color:var(--blue-dark);font-size:12px;font-weight:600;letter-spacing:.03em}.practice-intro h2{margin:0;font-size:26px;letter-spacing:-.035em}.practice-intro>div>p:last-child{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.8}.practice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.practice-filters{display:flex;flex-wrap:wrap;gap:4px}.practice-filters button{min-height:42px;padding:0 14px;border:0;border-radius:12px;color:#5a687e;background:transparent;font:inherit;font-size:13px;cursor:pointer;transition:background-color .16s ease,color .16s ease}.practice-filters button:hover{background:#eef2f6}.practice-filters button[aria-pressed=true]{color:var(--blue-dark);background:var(--blue-soft);font-weight:650}.practice-search{display:flex;align-items:center;gap:8px;width:236px;min-height:42px;padding:0 12px;flex-shrink:0;border:1px solid #dde3eb;border-radius:12px;color:var(--muted);background:var(--surface)}.practice-search:focus-within{border-color:var(--blue);outline:3px solid #2369f514}.practice-search input{width:100%;min-width:0;padding:0;border:0;outline:none;background:transparent;color:var(--ink);font:inherit;font-size:13px}.practice-search input::-webkit-search-cancel-button{-webkit-appearance:none}.practice-search>button{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.practice-search>button:hover{background:var(--blue-soft);color:var(--blue-dark)}.practice-result-note{min-height:20px;margin:18px 0;color:var(--muted);font-size:12px;line-height:1.7}.practice-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}.practice-project{display:flex;flex-direction:column;min-width:0;padding:24px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.practice-project-top{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-bottom:22px}.practice-project-icon{display:grid;place-items:center;width:30px;height:36px;color:var(--blue-dark)}.practice-project.is-green .practice-project-icon{color:#368069}.practice-project-category{color:#66718a;font-size:12px}.practice-state{display:inline-flex;align-items:center;width:fit-content;min-height:25px;padding:3px 9px;border-radius:8px;background:#f0f2f5;color:#5a687c;font-size:11px;font-weight:550;white-space:nowrap}.practice-project-top>.practice-state{margin-left:auto}.practice-state.is-open{color:#286a54;background:#e9f4ed}.practice-state.is-upcoming{color:#885e25;background:#fbf1de}.practice-state.is-joined{color:var(--blue-dark);background:var(--blue-soft)}.practice-project h3{margin:0;color:var(--ink);font-size:21px;line-height:1.5;letter-spacing:-.025em;text-wrap:balance}.practice-project-summary{margin:12px 0 18px;color:#5a687e;font-size:14px;line-height:1.85}.practice-requirement-preview{display:grid;gap:9px;margin:auto 0 22px;padding:0;list-style:none}.practice-requirement-preview li{display:flex;align-items:baseline;gap:8px;color:#415573;font-size:13px;line-height:1.65}.practice-requirement-preview svg{flex-shrink:0;align-self:flex-start;margin-top:3px;color:#7d90a8}.practice-project-meta{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--muted);font-size:12px;line-height:1.7}.practice-project-meta>span{display:flex;align-items:center;gap:5px}.practice-project footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:8px}.practice-project footer>span{color:var(--muted);font-size:12px}.practice-catalog .secondary-button,.practice-catalog .primary-button{margin-top:0;min-height:44px;border-radius:12px;font-size:13px;box-shadow:none}.practice-project .secondary-button{padding-inline:16px;border-color:#dce5f2;background:#f6f9fe;color:var(--blue-dark)}.practice-empty{display:grid;justify-items:center;text-align:center;padding:48px 24px;border:1px dashed #d5dde6;border-radius:20px;color:var(--muted)}.practice-empty h3{margin:14px 0 0;color:var(--ink);font-size:17px}.practice-empty p{margin:10px 0 20px;font-size:14px;line-height:1.8}.practice-progress{margin-top:16px}.practice-progress>div{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.practice-progress strong{color:var(--blue-dark);font-variant-numeric:tabular-nums}.practice-progress progress{display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;margin-top:9px;border:0;border-radius:6px;overflow:hidden;background:#e8edf3}.practice-progress progress::-webkit-progress-bar{background:#e8edf3;border-radius:6px}.practice-progress progress::-webkit-progress-value{background:var(--blue);border-radius:6px}.practice-progress progress::-moz-progress-bar{background:var(--blue);border-radius:6px}.pioneer-task-modal .dialog.practice-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(920px,100%);max-height:min(850px,calc(100dvh - 44px));overflow:hidden;padding:0;border-radius:24px}.practice-dialog-heading{padding:28px 64px 22px 30px;border-bottom:1px solid var(--line)}.practice-dialog-heading h2{margin:0;font-size:26px;line-height:1.4}.practice-dialog-heading>p:last-child{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.8}.practice-dialog .dialog-close{width:40px;height:40px;border-radius:13px}.practice-dialog-scroll{display:grid;grid-template-columns:minmax(0,1fr) 242px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.practice-dialog-scroll:focus-visible{outline:2px solid var(--blue);outline-offset:-3px}.practice-brief{min-width:0;padding:26px 30px}.practice-brief section+section{margin-top:30px}.practice-brief h3,.practice-brief-aside h3{margin:0 0 14px;font-size:16px;font-weight:650}.practice-brief p,.practice-brief-checks{color:#475b75;font-size:14px;line-height:1.95}.practice-brief p{margin:0}.practice-brief-checks{display:grid;gap:10px;list-style:none;margin:0;padding:0}.practice-brief-checks li{display:flex;gap:9px;align-items:flex-start}.practice-brief-checks svg{flex-shrink:0;margin-top:5px;color:#739088}.practice-brief .practice-section-note{margin:-5px 0 16px;color:var(--muted);font-size:12px;line-height:1.8}.practice-brief-checks+.practice-section-note{margin:14px 0 0}.practice-making-steps{list-style:none;margin:0;padding:0}.practice-making-steps li{display:flex;align-items:flex-start;gap:14px;padding:0 0 22px}.practice-making-steps li:last-child{padding-bottom:0}.practice-making-steps li>span{min-width:30px;color:#6482aa;font-size:16px;font-variant-numeric:tabular-nums;line-height:1.8}.practice-making-steps h4{margin:0 0 7px;font-size:14px;line-height:1.8}.practice-making-steps small{display:flex;align-items:baseline;gap:6px;margin-top:9px;color:#617c9e;font-size:12px;line-height:1.7}.practice-making-steps small svg{flex-shrink:0}.practice-brief-aside{padding:26px 22px;border-left:1px solid var(--line);background:#f8fafc}.practice-brief-aside section+section{margin-top:26px}.practice-brief-aside dl{margin:18px 0 0}.practice-brief-aside dl>div{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin-top:12px;font-size:12px;line-height:1.6}.practice-brief-aside dt{color:var(--muted)}.practice-brief-aside dd{margin:0;color:#40536e;text-align:right}.practice-brief-aside ul{margin:0;padding-left:17px;color:#596b82;font-size:13px;line-height:1.9}.practice-brief-aside li+li{margin-top:9px}.practice-safety{display:flex;align-items:flex-start;gap:8px;padding-top:20px;margin:24px 0 0;border-top:1px solid var(--line);color:#62718a;font-size:12px;line-height:1.9}.practice-safety svg{flex-shrink:0;margin-top:3px}.practice-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 28px;border-top:1px solid var(--line);background:var(--surface)}.practice-dialog-footer>div{min-width:0}.practice-dialog-footer p{margin:0;color:#53667f;font-size:13px;line-height:1.65}.practice-dialog-footer small{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.6}.practice-dialog-footer .primary-button{flex-shrink:0;min-width:144px}.practice-dialog-footer .primary-button:disabled{color:#69788d;background:#e9edf2;opacity:1;cursor:not-allowed;transform:none}.practice-enroll-feedback.is-error{color:#a04132}.practice-enroll-feedback.is-success{color:#286a54}.practice-catalog button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}@media(max-width:1150px){.practice-intro{align-items:flex-start;flex-direction:column;gap:18px}.practice-toolbar{flex-wrap:wrap}.practice-project{padding:22px 0}.practice-project-top{gap:8px}.practice-project-top>.practice-state{margin-left:0}}@media(max-width:760px){.practice-project-grid{grid-template-columns:1fr}.practice-search{width:100%}.practice-search input{font-size:16px}.practice-dialog-scroll{grid-template-columns:1fr}.practice-brief-aside{border-left:0;border-top:1px solid var(--line)}.practice-brief-aside dl>div{justify-content:flex-start;gap:16px}.practice-intro h2{font-size:24px}.practice-intro{margin-top:24px}}@media(max-width:480px){.practice-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:0}.practice-filters button{padding-inline:3px;font-size:12px}.practice-intro .practice-eyebrow{display:none}.practice-project{padding:20px 0}.practice-project h3{font-size:20px}.practice-catalog .modal-backdrop{padding:10px}.pioneer-task-modal .dialog.practice-dialog{max-height:calc(100dvh - 20px);border-radius:20px}.practice-dialog-heading{padding:22px 52px 18px 20px}.practice-dialog-heading h2{font-size:21px}.practice-dialog .dialog-close{top:12px;right:10px}.practice-dialog-heading>p:last-child{font-size:13px;line-height:1.7}.practice-brief,.practice-brief-aside{padding:22px 20px}.practice-dialog-footer{flex-direction:column;align-items:stretch;padding:14px 20px;gap:12px}.practice-dialog-footer .primary-button{width:100%}}@media(prefers-reduced-motion:reduce){.practice-filters button,.practice-project{transition:none}}.profile-editor{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:28px;overflow-y:auto;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink);box-shadow:0 24px 80px #15294b29}.profile-editor::backdrop{background:#14243a66}.profile-editor header{display:flex;justify-content:space-between;align-items:center;gap:12px}.profile-editor h2{margin:0;font-size:23px;letter-spacing:-.025em}.profile-editor .icon-button{width:44px;height:44px;flex-shrink:0}.profile-photo-row{display:flex;align-items:center;gap:18px;margin:24px 0}.profile-photo-preview{display:grid;place-items:center;width:80px;height:80px;flex-shrink:0;overflow:hidden;border-radius:50%;background:var(--blue-soft);color:var(--blue)}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.profile-photo-row p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.profile-editor .primary-button,.profile-editor .secondary-button{min-height:44px;margin:0;font-size:14px;border-radius:12px}.profile-avatar-options{border:0;padding:0;margin:0 0 24px}.profile-avatar-options legend{margin-bottom:12px;padding:0;font-size:14px;font-weight:600}.profile-avatar-options>div{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.profile-avatar-options button{position:relative;width:56px;height:56px;padding:2px;justify-self:center;display:grid;place-items:center;border:2px solid transparent;border-radius:50%;color:var(--muted);background:var(--bg);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.profile-avatar-options button:hover{border-color:#abc4e7}.profile-avatar-options button[aria-pressed=true]{border-color:var(--blue)}.profile-avatar-options img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.profile-avatar-options button>span{position:absolute;right:-1px;bottom:-1px;display:grid;place-items:center;width:18px;height:18px;border:2px solid var(--surface);border-radius:50%;background:var(--blue);color:#fff}.profile-editor-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-editor-fields label{display:grid;gap:9px;font-size:14px;font-weight:600}.profile-editor-fields input,.profile-editor-fields select{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:16px;font-weight:400}.profile-editor :is(button,input,select):focus-visible{outline:2px solid var(--blue);outline-offset:3px}.profile-editor-feedback{min-height:24px;margin:14px 0 10px;color:#a04132;font-size:13px;line-height:1.7}.profile-editor footer{display:flex;justify-content:flex-end;gap:10px}.profile-editor footer button{min-width:100px}@media(max-width:480px){.profile-editor{padding:20px}.profile-editor h2{font-size:21px}.profile-photo-row{gap:12px}.profile-photo-preview{width:64px;height:64px}.profile-avatar-options>div{gap:10px 6px}.profile-avatar-options button{width:48px;height:48px}.profile-editor-fields{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.profile-avatar-options button{transition:none}}.question-navigation{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid #e6ebf2;margin-bottom:20px}.question-navigation label{display:flex;align-items:center;gap:10px;margin-right:auto;color:#596b83}.question-navigation select{max-width:min(330px,60vw);min-height:44px;border:1px solid #dce4ef;border-radius:12px;padding:8px 12px;color:#22334d;background:#fff}.question-navigation button{min-height:44px}.question-stem{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}.question-coding{margin-top:16px;display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:28px}.practice-workspace.is-coding{max-width:1280px}.practice-workspace.is-coding .question-card{max-width:none;margin-top:24px}.question-problem{min-width:0;padding-right:24px;border-right:1px solid #e6ebf2}.question-problem h3{font-size:15px;margin:0 0 12px}.question-coding-meta{font-size:12px;color:#526f99;margin:0 0 8px}.question-problem .question-sample{grid-template-columns:1fr;gap:8px}.question-code-help{margin-top:24px;color:#53657d;font-size:13px;line-height:1.8}.question-code-help summary{cursor:pointer;min-height:44px;display:list-item}.question-workbench{min-width:0}.question-editor-shell{height:300px;border:1px solid #d7e0ec;border-radius:16px;overflow:hidden;background:#fbfcfe}.question-editor-shell .wb-code-host{height:100%;min-width:0}.question-editor-shell .cm-editor{border:0}.question-editor-shortcuts{color:#65748a;font-size:12px;margin:8px 0 16px}.question-input-controls label{display:flex;align-items:center;gap:12px;color:#43536c;font-size:13px}.question-input-controls select{min-height:44px;padding:8px 12px;color:#34445d;border:1px solid #dce4ef;background:#fff;border-radius:12px}.question-stdin{width:100%;min-height:90px;margin-top:10px;padding:12px;border:1px solid #dce4ef;border-radius:12px;resize:vertical;font:14px/1.7 ui-monospace,monospace}.question-result-tabs{display:flex;gap:20px;border-bottom:1px solid #e1e7f0}.question-result-tabs button{min-height:44px;padding:8px 0;color:#64748b;background:none;border:0;border-bottom:2px solid transparent;font-size:14px;cursor:pointer}.question-result-tabs button[aria-pressed=true]{color:#3462dd;border-bottom-color:#3462dd;font-weight:650}.question-result-tabs button:focus-visible,.question-result-body:focus-visible{outline:2px solid #598bdd;outline-offset:2px}.question-result-body{min-height:170px;max-height:340px;overflow:auto;scrollbar-gutter:stable;padding:18px 2px 4px;color:#40536c}.question-result-body>p{font-size:13px}.question-code-result.is-correct .question-result-body>div>strong{color:#237752}.question-code-result.is-wrong .question-result-body>div>strong{color:#a44e27}.question-code-result.is-stale .question-result-body>div>strong{color:#67748a}.question-result-empty{color:#64748b}.question-output,.question-error-output{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px 14px;border-radius:10px;font:13px/1.7 ui-monospace,monospace}.question-output{background:#f5f7fb}.question-error-output{background:#fff2ef;color:#9c3e29}.question-output-label{display:block;font-size:13px;margin-top:16px}.question-run-pending{color:#3462dd}.coding-prompt{white-space:pre-wrap;line-height:1.85;color:#34445d;font-size:16px}.question-samples{margin:22px 0}.question-sample{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.question-sample strong{font-size:13px;color:#62738a}.question-sample pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px 16px;background:#f5f7fb;border-radius:12px;font-size:14px;line-height:1.6;margin:8px 0}.question-editor-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;font-weight:650;margin:0 0 12px}.question-editor-label span{font-weight:400;color:#6e7b8e;font-size:12px}.question-code-editor{display:block;width:100%;min-height:280px;resize:vertical;padding:18px;border:1px solid #d7e0ec;border-radius:16px;color:#203149;background:#fbfcfe;font:15px/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;-moz-tab-size:4;tab-size:4}.question-code-editor:focus-visible{outline:2px solid #598bdd;outline-offset:2px}.question-run-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:18px}.question-run-actions button{min-height:44px;font-size:14px;padding:10px 18px}.question-run-notice{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#8a602d;margin-top:12px;font-size:14px}.question-code-result{border-top:1px solid #e1e7f0;padding-top:20px;margin-top:24px}.question-code-result>p{color:#64748b;font-size:14px}.question-code-result.is-correct>strong{color:#237752}.question-code-result.is-wrong>strong{color:#a44e27}.question-code-result.is-stale>strong{color:#67748a}.question-test-result{padding:12px 0;border-bottom:1px solid #edf0f5}.question-test-result summary{cursor:pointer;min-height:32px;line-height:32px;font-size:14px}.question-test-result p{font-size:14px;color:#64748b}@media(max-width:600px){.question-sample{grid-template-columns:1fr;gap:8px}.question-editor-label{align-items:flex-start;flex-direction:column;gap:5px}.question-navigation label{width:100%}.question-navigation select{flex:1;max-width:100%;min-width:0}}@media(max-width:1050px){.question-coding{grid-template-columns:1fr}.question-problem{border-right:0;border-bottom:1px solid #e6ebf2;padding:0 0 16px}.question-problem .question-sample{grid-template-columns:1fr 1fr}}@media(max-width:600px){.question-problem .question-sample{grid-template-columns:1fr}.question-editor-label{flex-direction:row;align-items:center}.question-run-actions button{flex:1}}.honor-collection{--honor-text: #555f70;--honor-soft: #f0f1f3;--honor-border: #e1e3e7;--honor-success: #247346;min-width:0}.honor-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:20px}.honor-filters{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.honor-filter-slider{position:absolute;z-index:-1;inset:4px auto 4px 0;border-radius:11px;background:var(--blue-soft);pointer-events:none;opacity:0}.honor-filters button{min-height:44px;padding:0 18px;border:0;border-radius:11px;background:transparent;color:var(--honor-text);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .16s ease,color .16s ease,transform .12s ease}.honor-filters button:hover{background:#2d78da09}.honor-filters button[aria-pressed=true]{color:var(--blue-dark)}.honor-count{color:var(--honor-text);font-size:13px;font-variant-numeric:tabular-nums}.honor-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.honor-card-slot{min-width:0}.honor-card{min-width:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 14px 22px;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;transition:border-color .18s ease,box-shadow .22s ease,transform .22s cubic-bezier(.2,.8,.2,1)}.honor-card.is-locked{border-color:var(--honor-border);background:#fcfcfb}.honor-card:hover{border-color:#a6b4cc;box-shadow:0 8px 22px #10203f0a}@media(hover:hover)and (pointer:fine){.honor-card:hover{transform:translateY(-3px)}.honor-preview-strip button:hover{transform:translateY(-2px)}}.honor-card:active,.honor-preview-strip button:active{transform:translateY(0) scale(.98);transition-duration:90ms}.honor-filters button:active,.honor-dialog-close:active,.honor-filter-empty button:active{transform:scale(.95)}.honor-card>strong{font-size:17px;line-height:1.5;font-weight:650}.honor-category{color:#66718a;font-size:12px;line-height:1.5}.honor-art{width:min(100%,184px);aspect-ratio:384 / 338;flex-shrink:0;display:block;overflow:hidden}.honor-art>svg{display:block;width:100%;height:100%}.honor-art.is-locked{filter:grayscale(1);opacity:.62}.honor-state{min-height:26px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:3px 9px;border-radius:8px;color:#555f70;background:#f0f1f3;font-size:12px;line-height:1.5}.honor-state.is-earned{color:#247346;background:#edf7f0}.honor-legacy-art{display:grid;place-items:center;height:100%;color:var(--orange)}.honor-filter-empty{display:grid;justify-items:center;gap:8px;min-height:220px;align-content:center;color:var(--muted)}.honor-filter-empty p{margin:0;font-size:15px}.honor-filter-empty button{min-height:44px;transition:color .16s ease,transform .12s ease}.honor-card:focus-visible,.honor-filters button:focus-visible,.honor-preview-strip button:focus-visible,.honor-dialog button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}.honor-dialog-shell{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:20px 16px;border:0;box-sizing:border-box;background:transparent;overflow:hidden}.honor-dialog-shell[open]{display:grid;place-items:center}.honor-dialog-shell::backdrop{background:transparent}.honor-dialog-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#10203f66}.honor-dialog{position:relative;width:min(440px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;margin:auto;padding:30px 28px 24px;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink);text-align:center;box-shadow:var(--shadow-md)}.honor-dialog>.honor-art{width:194px;margin:0 auto 16px}.honor-dialog h2{margin:5px 0 12px;font-size:24px}.honor-dialog-close{position:absolute;top:10px;right:10px;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:14px;color:var(--muted);background:transparent;cursor:pointer;transition:background .16s ease,color .16s ease,transform .12s ease}.honor-dialog-close:hover{background:#f0f1f3;color:var(--ink)}.honor-rule{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);text-align:left}.honor-rule h3{margin:0 0 8px;font-size:14px}.honor-rule p{margin:0;font-size:15px;line-height:1.8;overflow-wrap:anywhere}.honor-detail-note{margin:18px 0 0;color:#66718a;font-size:12px;line-height:1.6}.honor-preview-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.honor-preview-strip button{min-width:0;display:flex;flex-direction:column;align-items:center;gap:7px;padding:8px 2px;border:0;border-radius:14px;color:var(--ink);background:transparent;font:inherit;cursor:pointer;transition:background .18s ease,transform .22s cubic-bezier(.2,.8,.2,1)}.honor-preview-strip button:hover{background:#f0f1f3}.honor-preview-strip .honor-art{max-width:94px}.honor-preview-strip strong{max-width:100%;font-size:13px;line-height:1.5;font-weight:600;text-align:center;overflow-wrap:anywhere}.honor-preview-strip button>span:last-child{display:inline-flex;align-items:center;gap:4px;color:#66718a;font-size:12px}.honor-recent-strip .honor-art{max-width:108px}.honor-recent-strip time,.honor-recent-strip small{color:#66718a;font-size:12px;line-height:1.5;font-variant-numeric:tabular-nums}@media(max-width:1050px){.honor-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}@media(max-width:700px){.honor-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.honor-card{padding:14px 8px 18px;gap:8px;border-radius:18px}.honor-card>strong{font-size:15px}.honor-filters button{padding-inline:14px}}@media(max-width:360px){.honor-filters button{padding-inline:11px}.honor-dialog{padding-inline:20px}}@media(prefers-reduced-motion:reduce){.honor-card,.honor-filters button,.honor-dialog-close,.honor-preview-strip button,.honor-filter-empty button{transition:none}.honor-card:hover,.honor-card:active,.honor-preview-strip button:hover,.honor-preview-strip button:active,.honor-filters button:active,.honor-dialog-close:active,.honor-filter-empty button:active{transform:none}}.home-project-challenge>button{min-height:44px}.home-project-challenge .home-challenge-progress{margin-top:14px}.home-challenge-progress>span{color:#526781;font-size:11px}.home-challenge-progress .dashboard-progress{margin-top:6px}.home-project-challenge progress,.challenge-participation progress{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:#dceaf4;border-radius:20px;height:7px;width:100%;overflow:hidden}.home-project-challenge progress::-webkit-progress-bar,.challenge-participation progress::-webkit-progress-bar{background:#dceaf4;border-radius:20px}.home-project-challenge progress::-webkit-progress-value,.challenge-participation progress::-webkit-progress-value{background:#187ae8;border-radius:20px}.home-project-challenge progress::-moz-progress-bar,.challenge-participation progress::-moz-progress-bar{background:#187ae8;border-radius:20px}.challenge-inline-error{color:#a43d32;font-size:12px;line-height:1.65}.challenge-inline-error button,.challenge-notice button{color:#1266bf;background:transparent;border:0;padding:8px;text-decoration:underline;min-height:44px}.project-challenge-page{max-width:1230px;margin:0 auto;padding-bottom:30px;color:#263951}.project-challenge-page button,.home-project-challenge button{cursor:pointer;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.project-challenge-page button:disabled,.home-project-challenge button:disabled{cursor:not-allowed;opacity:.56}.project-challenge-page :is(button,a,input,textarea):focus-visible,.home-project-challenge button:focus-visible{outline:3px solid #81b7f5;outline-offset:3px}.project-challenge-page button:active:not(:disabled){filter:brightness(.94)}.challenge-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0 0 12px;padding:0 8px;background:transparent;border:0;color:#48617c;font-weight:600;font-size:13px}.challenge-back:hover{color:#076cdc}.challenge-surface{background:#fff;border:1px solid #e2eaf2;border-radius:24px}.challenge-header{display:flex;align-items:center;gap:20px;padding:28px}.challenge-emblem{display:grid;place-items:center;flex:0 0 64px;height:64px;border-radius:22px;color:#c3801c;background:#fff3dc}.challenge-header>div:nth-child(2){flex:1;min-width:0}.challenge-eyebrow{margin:0 0 8px;color:#61758b;font-size:12px}.challenge-header h1{margin:0;font-size:clamp(22px,2.1vw,29px);letter-spacing:-.5px;line-height:1.35}.challenge-summary{margin:10px 0 0;font-size:14px;line-height:1.8;color:#546b83}.challenge-deadline{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.challenge-deadline>span:not(.challenge-status){color:#697b8e;font-size:11px;margin-top:8px}.challenge-deadline strong{font-size:13px;font-weight:600}.challenge-status{display:inline-flex;align-items:center;min-height:28px;border-radius:12px;padding:4px 10px;background:#edf3f9;color:#4e657c;font-size:12px;line-height:1.3;white-space:nowrap}.challenge-status.is-open{background:#e7f6ed;color:#27724a}.challenge-notice{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:13px;line-height:1.8;color:#596c7f;margin:14px 4px}.challenge-notice.is-error{color:#a43d32}.challenge-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;margin-top:20px;align-items:start}.challenge-tasks,.challenge-participation,.challenge-submissions{padding:26px}.project-challenge-page h2{font-size:17px;line-height:1.5;margin:0}.challenge-requirements{list-style:none;padding:0 0 24px;margin:17px 0 24px;display:grid;gap:12px;border-bottom:1px solid #edf1f6}.challenge-requirements li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.65}.challenge-requirements svg{margin-top:3px;color:#3984cc;flex-shrink:0}.challenge-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.challenge-section-heading>span{color:#65778a;font-size:12px}.challenge-stages{list-style:none;padding:0;margin:22px 0 4px;display:grid}.challenge-stages>li{display:flex;align-items:flex-start;gap:16px;padding-bottom:26px}.challenge-stage-number{display:grid;place-items:center;flex:0 0 36px;height:36px;color:#65788d;background:#f0f4f8;border-radius:13px;font-size:13px;font-weight:700}.challenge-stages .is-current .challenge-stage-number{color:#fff;background:#1678e8}.challenge-stages .is-recorded .challenge-stage-number{background:#edf7f1;color:#368d5d}.challenge-stages h3{font-size:15px;line-height:1.6;margin:5px 0 7px}.challenge-stages p:not(.challenge-stage-label){color:#546b80;line-height:1.9;font-size:13px;margin:0 0 10px}.challenge-stage-label{display:flex;align-items:center;gap:10px;color:#64788c;font-size:12px;margin:0;line-height:1.6}.challenge-stage-label span{color:#2375c2;font-size:11px}.challenge-stages small{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:#64778b;line-height:1.6}.challenge-stages small svg{flex-shrink:0;margin-top:2px}.challenge-lab-link{min-height:44px}.challenge-participation>p{font-size:13px;line-height:1.8;color:#5f7387}.challenge-participation .primary-button{width:100%;min-height:44px;margin-top:8px;justify-content:center}.challenge-progress-heading{display:flex;align-items:center;justify-content:space-between;margin-top:23px;gap:10px}.challenge-progress-heading>span{font-size:12px;color:#667b8f}.challenge-progress-heading>strong{font-size:25px;font-weight:700;color:#1d6fc6}.challenge-progress-heading small{font-size:13px;font-weight:500;margin-left:2px}.challenge-self-check{display:flex;gap:9px;align-items:flex-start;font-size:13px;line-height:1.8;margin:20px 0 8px;cursor:pointer}.challenge-self-check input{width:17px;height:17px;flex-shrink:0;margin:3px 0 0;accent-color:#1377e6}.project-challenge-page .challenge-fine-print{color:#67798a;font-size:12px;line-height:1.8;font-weight:400;margin:10px 0 0}.challenge-feedback{min-height:36px;margin-top:10px;font-size:12px;line-height:1.8}.challenge-feedback.is-error,.challenge-form-feedback.is-error{color:#a43d32}.challenge-feedback.is-success,.challenge-form-feedback.is-success{color:#287549}.challenge-submissions{grid-column:1 / -1}.challenge-submission-form{margin-top:22px}.challenge-submission-form fieldset{padding:0;margin:0;border:0;min-width:0}.challenge-submission-form label{display:grid;gap:9px;font-size:13px;font-weight:600;margin-top:18px}.challenge-submission-form label:first-of-type{margin-top:0}.challenge-submission-form :is(input,textarea){width:100%;min-height:44px;padding:12px 14px;border-radius:14px;border:1px solid #dce5ef;color:#263951;background:#fbfdff;font:inherit;font-weight:400;line-height:1.7;box-sizing:border-box}.challenge-submission-form textarea{resize:vertical;min-height:118px}.challenge-submission-form :is(input,textarea):disabled{background:#f2f5f8}.challenge-submit-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.challenge-submit-footer .primary-button{flex-shrink:0;min-height:44px}.challenge-submit-footer .challenge-fine-print{margin:0}.challenge-form-feedback{font-size:13px;line-height:1.8}.challenge-submission-list{padding:0;list-style:none;display:grid;gap:16px;margin:22px 0 0}.challenge-submission-list>li{padding:20px;background:#f7fafe;border-radius:18px;border:1px solid #e5edf5}.challenge-submission-list header,.challenge-submission-list footer{display:flex;justify-content:space-between;align-items:center;gap:14px}.challenge-submission-list h3{font-size:15px;line-height:1.6;margin:0;overflow-wrap:anywhere}.challenge-submission-list p{font-size:13px;line-height:1.85;color:#526a80;white-space:pre-wrap;overflow-wrap:anywhere}.challenge-submission-list footer{color:#63798c;font-size:12px;flex-wrap:wrap}.challenge-submission-list a{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:#146fcb;text-decoration:none}.challenge-submission-list a:hover{text-decoration:underline}.challenge-review-feedback{border-top:1px solid #e2eaf4;padding-top:12px}.challenge-no-submission{font-size:13px;color:#64798f;margin:18px 0 0;line-height:1.8}.challenge-empty{min-height:280px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px;text-align:center;gap:16px}.challenge-empty h1{font-size:22px;margin:0}.challenge-empty p{font-size:14px;color:#61778d;margin:0}@media(max-width:1050px){.challenge-layout{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.challenge-header{flex-wrap:wrap}.challenge-deadline{flex-basis:100%;flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap}.challenge-deadline>span:not(.challenge-status){margin:0}.challenge-tasks,.challenge-participation,.challenge-submissions{padding:22px}}@media(max-width:760px){.challenge-layout{grid-template-columns:1fr}.challenge-participation{grid-row:1}.challenge-header{padding:22px;gap:14px}.challenge-emblem{flex-basis:46px;height:46px;border-radius:16px}.challenge-header h1{font-size:22px}.challenge-header .challenge-eyebrow{font-size:11px}.challenge-submit-footer{align-items:stretch;flex-direction:column;gap:12px}.challenge-submit-footer .primary-button{justify-content:center}.challenge-stages>li{gap:12px}}@media(prefers-reduced-motion:reduce){.project-challenge-page button,.home-project-challenge button{transition:none}}.study-streak{position:relative;flex-shrink:0}.study-streak[open]{z-index:30}.study-streak>summary{list-style:none}.study-streak>summary::-webkit-details-marker{display:none}.study-streak .streak-trigger{width:auto;min-height:44px;padding:0 11px;display:flex;white-space:nowrap;transition:background-color .16s ease,box-shadow .16s ease}.study-streak .streak-trigger :is(span,strong){display:inline}.study-streak .streak-trigger .streak-label{color:#795416;font-size:12px}.study-streak .streak-trigger svg{color:#d9850d}.study-streak .streak-trigger:hover,.study-streak[open] .streak-trigger{background:#fff0d3}.study-streak .streak-trigger:active{background:#ffe6b6}.study-streak :is(summary,button):focus-visible{outline:3px solid #6ca9ee;outline-offset:3px}.streak-popover{position:absolute;top:calc(100% + 12px);right:0;width:min(326px,calc(100vw - 28px));max-height:min(640px,calc(100dvh - 170px));overflow-y:auto;overscroll-behavior:contain;padding:18px;border:1px solid #e3eaf1;border-radius:22px;background:#fff;box-shadow:0 16px 40px #19365220;box-sizing:border-box;color:#263951;text-align:left}.streak-popover header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:-8px}.streak-popover h2{font-size:15px;margin:0}.streak-popover header button{border:0;background:transparent;color:#61758b;display:grid;place-items:center;min-width:44px;height:44px;border-radius:13px;margin-right:-8px;cursor:pointer}.streak-popover header button:hover{background:#f0f5fa}.streak-count{display:flex;gap:12px;align-items:center;margin-top:6px}.streak-count>svg{color:#ce7c0d}.streak-count strong{font-size:32px;line-height:1.3;font-variant-numeric:tabular-nums}.streak-count strong span{font-size:13px;margin-left:6px;font-weight:500;color:#536981}.streak-count small{font-size:12px;margin-left:auto;color:#68798c}.streak-today{font-size:13px;line-height:1.7;color:#5d7186;margin:12px 0}.streak-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;list-style:none;margin:18px 0;padding:0}.streak-week li{display:grid;justify-items:center;gap:8px;color:#697a8c;font-size:12px}.streak-week i{font-style:normal;display:grid;place-items:center;width:29px;height:29px;background:#f0f3f7;border-radius:50%;color:#728094}.streak-week small{font-size:10px}.streak-week .is-qualified i{background:#fae7c4;color:#99631b}.streak-rules{border-top:1px solid #edf1f6;font-size:12px}.streak-rules>summary{padding:13px 0;cursor:pointer;color:#516a83;min-height:44px;box-sizing:border-box}.streak-rules p{color:#677a8e;line-height:1.85;margin:0 0 10px}.streak-profile-link{display:flex;width:100%;align-items:center;justify-content:space-between;min-height:44px;padding:0 12px;border-radius:13px;background:#f0f6fd;border:0;color:#2868b1;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .16s ease}.streak-profile-link:hover{background:#e6f0fc}.streak-error{display:flex;gap:8px;align-items:center;font-size:12px;color:#a14732}.streak-error button{background:none;border:none;color:#2868b1;text-decoration:underline;cursor:pointer;min-height:44px;padding:0 8px}.streak-demo{color:#796239;font-size:12px;line-height:1.7}@media(max-width:680px){.study-streak .streak-trigger{padding-inline:9px;gap:4px}.study-streak .streak-trigger .streak-label-long{display:none}.streak-popover{right:-50px}}@media(prefers-reduced-motion:reduce){.study-streak .streak-trigger,.streak-profile-link{transition:none}}.welcome-guide{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:transparent;color:var(--ink)}.welcome-guide::backdrop{background:transparent}.welcome-guide-spotlight{position:absolute;top:0;left:0;border:2px solid #fff;border-radius:18px;pointer-events:none;box-shadow:0 0 0 100vmax #10203f52;box-sizing:border-box}.welcome-guide-spotlight.is-fallback{border:0}.welcome-guide-card{position:absolute;top:0;left:0;box-sizing:border-box;width:min(352px,calc(100vw - 32px));padding:14px 24px 22px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-md)}.welcome-guide-card header{display:flex;align-items:center;justify-content:space-between;gap:16px}.welcome-guide-card header>span{color:var(--muted);font-size:12px}.welcome-guide-card header b{margin-left:10px;color:var(--ink);font-weight:650;font-variant-numeric:tabular-nums}.welcome-guide-card header i{font-style:normal;color:var(--muted);font-weight:400}.welcome-guide-card button{min-height:44px;border:0;border-radius:12px;cursor:pointer;font:inherit;font-size:13px;transition:background-color .15s ease,color .15s ease,transform .1s ease;touch-action:manipulation}.welcome-guide-card header button{padding:0 10px;margin-right:-10px;background:transparent;color:var(--muted)}.welcome-guide-label{display:inline-flex;align-items:center;gap:7px;color:var(--blue-dark);font-size:13px;font-weight:650;margin-top:10px}.welcome-guide-copy h2{margin:12px 0 10px;font-size:22px;line-height:1.45;font-weight:750;letter-spacing:-.02em}.welcome-guide-copy h2:focus{outline:none}.welcome-guide-copy p{min-height:54px;margin:0 0 22px;color:var(--muted);font-size:14px;line-height:1.9;text-wrap:balance}.welcome-guide-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.welcome-guide-card footer button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.welcome-guide-back{padding:0 10px;margin-left:-10px;background:transparent;color:var(--muted)}.welcome-guide-next{padding:0 17px;background:var(--blue);color:#fff;font-weight:650!important}.welcome-guide-card header button:hover:not(:disabled),.welcome-guide-back:hover:not(:disabled){background:var(--blue-soft);color:var(--blue-dark)}.welcome-guide-next:hover:not(:disabled){background:var(--blue-dark)}.welcome-guide-card button:active:not(:disabled){transform:scale(.97)}.welcome-guide-card button:focus-visible{outline:3px solid var(--blue-dark);outline-offset:3px}.welcome-guide-card button:disabled{opacity:.38;cursor:default}.welcome-guide-entry{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px}.welcome-guide-entry h2{margin:0;font-size:17px}.welcome-guide-entry-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.welcome-guide-entry-actions button{min-height:44px}.welcome-guide-error{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;color:var(--code-error);font-size:13px}.welcome-guide-error button{min-height:44px}.onboarding-card .onboarding-optional{display:flex;justify-content:flex-end}.onboarding-card .onboarding-optional button{min-height:44px}@media(max-width:880px){.welcome-guide-card{border-radius:20px}.welcome-guide-copy p{font-size:15px}.welcome-guide-spotlight{border-radius:15px}.welcome-guide-entry{align-items:flex-start;flex-direction:column;padding:20px}}@media(prefers-reduced-motion:reduce){.welcome-guide-card button{transition:none}.welcome-guide-card button:active:not(:disabled){transform:none}}:root{--code-bg: #f5f7fb;--code-border: #d9e2ee;--code-success: #247346;--code-error: #ab3838;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#10203f;background:#f7f4ec;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #10203f;--muted: #66718a;--line: #e7e2d7;--surface: #fffefb;--blue: #2369f5;--blue-dark: #1552db;--blue-soft: #eaf2ff;--cyan: #4dc7ed;--orange: #f4a415;--orange-soft: #fff3d9;--green: #59ad26;--green-soft: #ecf8e6;--shadow-sm: 0 8px 20px rgba(30, 62, 120, .08);--shadow-md: 0 16px 38px rgba(30, 62, 120, .12)}.python-teaching,.course-coding{min-width:0;color:var(--ink)}.python-teaching h3,.course-coding h3{margin:20px 0 12px;font-size:18px;line-height:1.5}.python-teaching>p,.course-coding p{font-size:14px;line-height:1.85;overflow-wrap:anywhere}.python-source,.python-code-input,.python-io-pair pre,.python-stdin{font:14px/1.8 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;-moz-tab-size:4;tab-size:4}.python-source{margin:0;padding:20px;border:1px solid var(--code-border);border-radius:16px;background:var(--code-bg);overflow-x:auto}.python-io-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:12px;margin:16px 0}.python-io-pair>div{min-width:0;padding:14px 16px;border:1px solid var(--code-border);border-radius:12px;background:var(--surface)}.python-io-pair strong{display:block;font-size:13px}.python-io-pair small{display:block;margin-top:10px;color:var(--muted)}.python-io-pair pre{max-height:240px;overflow:auto;margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.python-walkthrough{padding:0;list-style:none;display:grid;gap:12px}.python-walkthrough li{display:flex;gap:12px;align-items:flex-start}.python-walkthrough li>span{display:grid;place-items:center;flex-shrink:0;width:28px;height:28px;border-radius:9px;background:var(--blue-soft);color:var(--blue-dark);font-size:13px}.python-walkthrough p{margin:0;line-height:1.8;font-size:14px}.python-caution{padding:16px;background:var(--orange-soft);border-radius:14px}.python-caution strong{display:block;margin-bottom:4px}.course-coding{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.course-coding-heading{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap}.course-coding-heading h3{margin:5px 0 0}.code-save-state{font-size:12px;color:var(--muted)}.code-save-state.is-passed{color:var(--code-success)}.code-mode-controls{display:inline-flex;gap:4px;padding:4px;margin:20px 0 8px;border:1px solid var(--code-border);border-radius:13px;background:var(--code-bg)}.code-mode-controls button{min-height:44px;padding:0 18px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:14px;cursor:pointer}.code-mode-controls button[aria-pressed=true]{color:var(--blue-dark);background:var(--surface);box-shadow:0 1px 4px #10203f12}.code-task-brief h4,.course-code-results h4{margin:16px 0 8px;font-size:16px;line-height:1.6}.code-hints{margin:12px 0 20px;font-size:14px;line-height:1.8}.code-hints summary{min-height:44px;align-content:center;cursor:pointer;color:var(--blue-dark)}.course-code-editor{overflow:hidden;border:1px solid var(--code-border);border-radius:16px;background:var(--code-bg)}.code-file-bar{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--code-border);font-size:12px;color:var(--muted)}.code-file-bar>label{display:flex;gap:8px;align-items:center;color:var(--ink);font-weight:650}.python-code-input{display:block;width:100%;min-height:260px;padding:18px;border:0;border-radius:0;resize:vertical;background:transparent;color:var(--ink);white-space:pre;overflow:auto}.course-code-editor>small{display:block;padding:10px 16px;border-top:1px solid var(--code-border);color:var(--muted);font-size:12px;line-height:1.65}.code-input-label{display:block;margin:18px 0 8px;font-size:14px;font-weight:650}.code-input-label span{display:inline-block;margin-left:8px;font-size:12px;font-weight:400;color:var(--muted)}.code-run-options{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:18px;font-size:14px}.code-run-options select{max-width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--code-border);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit}.code-result-input{margin:12px 0;font-size:14px}.code-result-input pre{white-space:pre-wrap;overflow-wrap:anywhere}.python-stdin{width:100%;padding:12px 16px;border:1px solid var(--code-border);border-radius:12px;color:var(--ink);background:var(--surface);resize:vertical}.code-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:16px}.code-actions button{min-height:44px}.course-coding .code-runtime-note{color:var(--muted);font-size:12px;line-height:1.8}.context-note{min-width:0;margin:10px 0 0;color:var(--muted)}.context-note>summary{width:fit-content;max-width:100%;min-height:44px;align-content:center;padding:8px 4px;font-size:12px;line-height:1.6;cursor:pointer;border-radius:8px}.context-note>summary:hover{color:var(--blue-dark)}.context-note>summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.context-note>div{padding:2px 4px 8px}.context-note p{margin:0 0 8px;color:var(--muted);font-size:13px;line-height:1.75;overflow-wrap:anywhere}.context-note p:last-child{margin-bottom:0}.code-recovery,.code-error,.code-unavailable{padding:16px;margin:16px 0;border-radius:14px;background:var(--orange-soft)}.code-recovery button{margin:4px 8px 4px 0}.code-error{color:var(--code-error)}.code-field-error{margin:10px 0;color:var(--code-error);font-size:14px;line-height:1.7}.python-code-input[aria-invalid=true]{outline:2px solid var(--code-error);outline-offset:-2px}.course-code-results>article{padding:16px;margin:12px 0;border:1px solid var(--code-border);border-radius:14px}.course-code-results article>header{display:flex;justify-content:space-between;gap:12px;font-size:14px}.course-code-results article.is-passed>header>span{color:var(--code-success)}.course-code-results article.is-run>header>span{color:var(--muted)}.course-code-results article.is-failed>header>span{color:var(--code-error)}.course-code-results article>p{white-space:pre-wrap}.code-reading-question{margin:16px 0}.code-reading-question>p{font-size:14px;white-space:pre-wrap}.course-coding :is(button,summary,textarea,select):focus-visible{outline:2px solid var(--blue);outline-offset:3px}.course-coding button:disabled{cursor:not-allowed;opacity:.55}.lesson-quiz-question label>span:last-child{white-space:pre-line}@media(max-width:600px){.code-actions>button{flex:1 1 auto;justify-content:center}.python-code-input{min-height:220px;font-size:16px}.code-file-bar{padding:12px}.code-input-label span{display:block;margin:4px 0 0}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f7f4ec;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid rgba(35,105,245,.25);outline-offset:2px}.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}.app-shell{min-height:100vh;display:grid;grid-template-columns:218px minmax(0,1fr);background:#faf8f2}.sidebar{position:sticky;top:0;height:100vh;z-index:20;display:flex;flex-direction:column;gap:48px;padding:28px 18px 22px;background:#fffefb;border-right:1px solid var(--line)}.brand{display:flex;align-items:center;padding:2px 8px}.brand img{width:176px;max-width:100%;height:52px;object-fit:contain;object-position:left center}.nav-list{display:grid;gap:18px}.nav-item{width:100%;min-height:58px;border:0;border-radius:15px;display:flex;align-items:center;gap:15px;padding:0 18px;background:transparent;color:#1c2c4d;font-size:16px;font-weight:750;cursor:pointer;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease}.nav-item:hover{color:var(--blue);background:#f3f7ff}.nav-item.is-active{color:#fff;background:var(--blue);box-shadow:0 10px 20px #2369f53d}.mission-capsule{position:relative;margin-top:auto;min-height:78px;border:0;display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;text-align:left;background:transparent;color:#263757;cursor:pointer}.mission-capsule .capsule-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;color:#ffd44c;background:#195fe7;box-shadow:0 8px 18px #195fe73b}.mission-capsule strong,.mission-capsule small{display:block}.mission-capsule strong{font-size:13px}.mission-capsule small{margin-top:4px;color:#7b879d;font-size:11px}.main-content{min-width:0;max-width:1540px;width:100%;margin-inline:auto;padding:27px 26px 30px}.page-header{min-height:156px;display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:30px 6px 0 58px}.page-header h1{margin:4px 0 7px;font-size:clamp(28px,2.35vw,42px);line-height:1.13;letter-spacing:-.04em;color:#0d1e3d}.page-header>div>p:last-child{margin:0;color:#51627f;font-size:14px}.eyebrow{display:flex;align-items:center;gap:6px;margin:0;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.06em}.eyebrow.orange{color:#dd8100}.header-actions{display:flex;align-items:center;gap:10px;padding-top:6px}.streak-chip,.profile-chip{height:44px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:14px;background:#fffefb;color:#40516e;box-shadow:0 5px 14px #203c6e0d}.streak-chip{padding:0 13px;color:#a66806;border-color:#f1dfb9;background:#fffaf0;font-size:12px;font-weight:750}.profile-chip{border:0;padding:4px 10px 4px 5px;cursor:pointer}.profile-chip .avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#fff;background:#6ea6ff}.profile-chip strong,.profile-chip small{display:block;text-align:left}.profile-chip strong{color:#1b2c4d;font-size:11px}.profile-chip small{margin-top:1px;color:#7b879c;font-size:9px}.icon-button{border:0;display:inline-grid;place-items:center;background:transparent;cursor:pointer}.icon-button:disabled{opacity:.4;cursor:not-allowed}.notification-button{position:relative;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;color:#40516e;background:#fffefb}.notification-dot{position:absolute;right:-3px;top:-4px;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border:2px solid #faf8f2;border-radius:99px;color:#fff;background:#f05b46;font-size:9px;font-weight:900}.learning-grid{min-height:580px;display:grid;grid-template-columns:minmax(390px,1.35fr) minmax(245px,.68fr) minmax(290px,.83fr);gap:16px}.mission-stage,.lesson-card,.ai-panel,.challenge-section{border:1px solid rgba(208,213,221,.72);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.mission-stage{position:relative;min-height:580px;overflow:hidden;background:#f8f3e8}.mission-stage>img{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;object-fit:cover;object-position:47% 50%;transform:scale(1.16);transform-origin:46% 46%}.stage-wash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fffcf414;pointer-events:none}.mission-marker{position:absolute;z-index:3;min-height:40px;display:flex;align-items:center;gap:7px;padding:7px 12px 7px 8px;border:1px solid rgba(255,255,255,.8);border-radius:99px;color:#243555;background:#fffefbf0;box-shadow:0 9px 22px #1c3a6829;font-size:11px;font-weight:800;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .18s ease,color .18s ease}.mission-marker:hover,.mission-marker.is-selected{color:var(--blue);transform:translateY(-2px)}.mission-marker svg{width:30px;height:30px;padding:6px;border-radius:50%;color:#fff;background:var(--blue)}.marker-start{top:8%;left:50%}.marker-code{top:35%;right:8%}.marker-check{top:59%;right:17%}.marker-done{bottom:12%;right:8%}.marker-check svg{background:var(--orange)}.marker-done svg{background:var(--green)}.route-tracker{position:absolute;z-index:4;left:48%;bottom:15%;width:32px;height:32px;display:grid;place-items:center;border:3px solid #fff;border-radius:50%;color:#fff;background:var(--blue);box-shadow:0 8px 18px #2369f557;will-change:transform}.mission-objective{position:absolute;z-index:3;left:18px;bottom:18px;width:min(240px,calc(100% - 36px));padding:15px 16px;border:1px solid rgba(255,255,255,.9);border-radius:16px;color:#34415a;background:#fffefbed;box-shadow:0 10px 26px #1c3a681f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mission-objective span{display:flex;align-items:center;gap:6px;color:#173662;font-size:12px;font-weight:850}.mission-objective span svg{color:var(--blue)}.mission-objective p{margin:8px 0 0;color:#647088;font-size:11px;line-height:1.55}.lesson-card{min-height:580px;display:flex;flex-direction:column;padding:24px 22px 20px}.lesson-badge{align-self:flex-start;padding:6px 10px;border-radius:8px;color:#fff;background:var(--blue);font-size:10px;font-weight:800}.lesson-heading{margin-top:16px;display:flex;justify-content:space-between;color:#6a7890;font-size:11px;font-weight:750}.lesson-heading strong{color:var(--blue)}.lesson-card h2{margin:9px 0 8px;color:#142341;font-size:clamp(20px,1.6vw,27px);line-height:1.3;letter-spacing:-.035em}.lesson-card>p{margin:0;color:#68748a;font-size:11px;line-height:1.65}.progress-block{margin-top:17px}.progress-block>div,.challenge-progress-heading{display:flex;justify-content:space-between;align-items:center;color:#5e6a81;font-size:10px;font-weight:750}.progress-block strong,.challenge-progress-heading strong{color:var(--blue)}.progress-track{height:7px;display:block;margin-top:8px;overflow:hidden;border-radius:99px;background:#e8edf6}.progress-track>span{width:var(--progress);height:100%;display:block;border-radius:inherit;background:var(--blue)}.code-preview{margin-top:17px;padding:13px 14px;border:1px solid #e2e7f0;border-radius:14px;background:#fbfcff}.code-preview>div{display:flex;align-items:center;gap:6px;color:#3471dc;font-size:10px;font-weight:750}.python-dot{width:8px;height:8px;border-radius:50%;background:#f5c94a}.code-preview pre{margin:9px 0 0;overflow:auto;color:#46618e;font-family:SFMono-Regular,Consolas,monospace;font-size:9px;line-height:1.62}.code-preview code span{color:#2369f5;font-weight:800}.primary-button,.secondary-button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:13px;font-weight:850;cursor:pointer;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px)}.primary-button{min-height:51px;margin-top:auto;color:#fff;background:var(--blue);box-shadow:0 10px 20px #2369f540}.primary-button:hover{background:var(--blue-dark)}.primary-button:disabled,.secondary-button:disabled,.soft-button:disabled{cursor:not-allowed;opacity:.56;box-shadow:none;transform:none}.ai-panel{min-height:580px;display:flex;flex-direction:column;overflow:hidden;padding:22px 14px 14px;background:#f3f8ff;border-color:#cfe1ff}.ai-heading{display:flex;align-items:flex-start;justify-content:space-between;padding:0 7px}.ai-heading p{display:flex;align-items:center;gap:5px;margin:0 0 5px;color:#6380ae;font-size:9px;font-weight:750}.ai-heading h2{margin:0;color:#152747;font-size:22px;letter-spacing:-.035em}.online-dot{margin-top:4px;padding:5px 8px;border:0;border-radius:99px;color:#3a8c1e;background:#eaf7e5;font-size:8px;font-weight:850;cursor:pointer}.online-dot.is-checking{color:#5f7090;background:#edf1f7}.online-dot.is-configured{color:#3f6fae;background:#e9f1ff}.online-dot.is-unconfigured{color:#9b6206;background:#fff2d7}.online-dot.is-degraded{color:#a44c47;background:#fff0ee}.online-dot.is-demo{color:#8b651f;background:#fff5da}.online-dot.is-live{color:#3a8c1e;background:#eaf7e5}.ai-intro{position:relative;min-height:142px;margin:12px 2px 7px}.ai-intro img{position:absolute;right:-13px;bottom:-11px;width:47%;max-height:146px;object-fit:contain;object-position:bottom right}.ai-bubble{position:relative;z-index:2;width:70%;min-height:92px;padding:13px 15px;border:1px solid #d9e7fb;border-radius:16px 16px 6px;color:#40516f;background:#ffffffeb;box-shadow:0 8px 20px #294f9114;font-size:11px;line-height:1.65;white-space:pre-wrap}.ai-bubble.is-error{color:#884d49;border-color:#f1c8c4;background:#fff4f2}.ai-answer-meta{display:block;margin-top:8px;color:#7385a0;font-size:8px;font-weight:750}.ai-actions{display:grid;gap:8px}.ai-action{width:100%;min-height:71px;display:grid;grid-template-columns:39px 1fr 18px;align-items:center;gap:10px;padding:10px;border:1px solid #deebfb;border-radius:14px;text-align:left;background:#ffffffe6;box-shadow:0 7px 16px #264e8f12;cursor:pointer}.ai-action.is-selected{border-color:#a8c8ff;background:#fff}.ai-action-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;color:#fff;background:var(--blue)}.tone-green .ai-action-icon{background:var(--green)}.tone-orange .ai-action-icon{background:var(--orange)}.ai-action.tone-green.is-selected{border-color:#afd9bc;background:#f4fbf6}.ai-action.tone-orange.is-selected{border-color:#efcca8;background:#fff8f0}.ai-action.tone-green>svg{color:var(--green)}.ai-action.tone-orange>svg{color:var(--orange)}.ai-action strong,.ai-action small{display:block}.ai-action strong{color:#223350;font-size:12px}.ai-action small{margin-top:3px;color:#77849a;font-size:9px;line-height:1.35}.ai-action>svg{color:var(--blue)}.chat-form{min-height:43px;margin-top:auto;display:grid;grid-template-columns:1fr 34px;align-items:center;gap:5px;padding:4px 4px 4px 11px;border:1px solid #d6e4f7;border-radius:12px;background:#fff}.chat-form input{min-width:0;border:0;outline:0;color:#283a59;background:transparent;font-size:10px}.chat-form input::placeholder{color:#9ba8bb}.chat-form .icon-button{width:34px;height:34px;border-radius:9px;color:#fff;background:var(--blue)}.challenge-section{min-height:240px;margin-top:16px;display:grid;grid-template-columns:minmax(190px,.65fr) minmax(270px,.8fr) minmax(460px,1.45fr);align-items:stretch;gap:20px;padding:15px}.challenge-section>img{width:100%;height:100%;min-height:208px;max-height:208px;border-radius:15px;object-fit:cover}.challenge-copy{align-self:center;padding:5px 0}.challenge-copy h2{margin:7px 0 8px;color:#142341;font-size:24px;letter-spacing:-.035em}.challenge-copy>p:not(.eyebrow){margin:0;color:#68758a;font-size:11px;line-height:1.6}.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.tag-row span{padding:5px 9px;border-radius:99px;color:#4f6fa6;background:#edf3fc;font-size:8px;font-weight:750}.tag-row span:first-child{color:#be7600;background:var(--orange-soft)}.challenge-progress{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:3px 6px 2px 21px;border-left:1px solid var(--line)}.step-line{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:22px}.step-line:before{content:"";position:absolute;left:11%;right:11%;top:14px;height:3px;border-radius:99px;background:#e3e7ef}.step-line:after{content:"";position:absolute;left:11%;top:14px;width:30%;height:3px;border-radius:99px;background:var(--green)}.progress-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}.progress-step>span{width:30px;height:30px;display:grid;place-items:center;border:4px solid #fff;border-radius:50%;color:#fff;background:#c5ccd8;box-shadow:0 0 0 1px #dfe4ec;font-size:9px;font-weight:900}.progress-step.is-done>span{background:var(--green)}.progress-step.is-active>span{color:#d78100;background:#fff;box-shadow:0 0 0 3px var(--orange)}.progress-step strong{margin-top:9px;color:#34435d;font-size:9px}.progress-step small{margin-top:3px;color:#8a95a7;font-size:7px}.secondary-button{min-height:34px;align-self:flex-end;margin-top:12px;padding:0 12px;border:1px solid #8eb5ff;color:var(--blue);background:#fff;font-size:9px}.help-button{position:fixed;right:22px;bottom:20px;z-index:30;width:48px;height:48px;border-radius:17px;color:#fff;background:var(--blue);box-shadow:0 12px 24px #2369f54d}.toast{position:fixed;z-index:60;left:50%;bottom:24px;max-width:min(520px,calc(100vw - 40px));min-height:44px;display:flex;align-items:center;gap:9px;padding:10px 16px;border:1px solid #dbe7d4;border-radius:13px;color:#315024;background:#f5fbf2;box-shadow:var(--shadow-md);transform:translate(-50%);font-size:12px;font-weight:700}.toast svg{color:var(--green)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:22px;background:#0d1e3d75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialog{position:relative;width:min(470px,100%);padding:30px;border:1px solid rgba(255,255,255,.84);border-radius:22px;background:#fffefb;box-shadow:0 28px 75px #0a224e47}.dialog-close{position:absolute;right:16px;top:16px;width:36px;height:36px;border-radius:10px;color:#5d6a7f;background:#f1f4f8}.dialog-icon{width:52px;height:52px;margin-bottom:18px;display:grid;place-items:center;border-radius:16px}.dialog-icon.blue{color:#1f63ed;background:var(--blue-soft)}.dialog-icon.orange{color:#d48100;background:var(--orange-soft)}.dialog-icon.green{color:#4a9a23;background:var(--green-soft)}.dialog h2{margin:8px 0 10px;color:#132342;font-size:28px;letter-spacing:-.04em}.dialog>p:not(.eyebrow){margin:0;color:#69758a;font-size:13px;line-height:1.72}.dialog-callout{margin-top:20px;display:flex;gap:11px;padding:14px;border-radius:14px;color:#4f6385;background:#f3f7fd;font-size:11px;line-height:1.5}.dialog-callout svg{flex:0 0 auto;color:var(--orange)}.dialog-callout strong{display:block;color:#263a5d;margin-bottom:2px}.dialog-primary{width:100%;margin-top:22px}.dialog-options{display:grid;gap:9px;margin-top:20px}.dialog-options button{min-height:47px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border:1px solid var(--line);border-radius:12px;color:#2c3e5e;background:#fff;font-weight:750;cursor:pointer}@media(max-width:1220px){.app-shell{grid-template-columns:188px minmax(0,1fr)}.sidebar{padding-inline:14px;gap:34px}.brand img{width:148px}.learning-grid{grid-template-columns:minmax(390px,1.2fr) minmax(250px,.8fr)}.ai-panel{grid-column:1 / -1;min-height:260px;display:grid;grid-template-columns:.85fr 1.4fr;grid-template-rows:auto 1fr auto;gap:10px 14px}.ai-heading{grid-column:1}.ai-intro{grid-column:1;grid-row:2 / span 2}.ai-actions{grid-column:2;grid-row:1 / span 2}.chat-form{grid-column:2;grid-row:3}.challenge-section{grid-template-columns:220px 1fr}.challenge-progress{grid-column:1 / -1;border-left:0;border-top:1px solid var(--line);padding:16px 6px 4px}}@media(max-width:880px){.app-shell{display:block;padding-bottom:74px}.sidebar{position:fixed;inset:auto 0 0;height:68px;padding:6px 10px;gap:0;flex-direction:row;align-items:center;border:0;border-top:1px solid var(--line)}.brand,.mission-capsule{display:none}.nav-list{width:100%;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:3px}.nav-item{min-height:55px;flex-direction:column;justify-content:center;gap:2px;padding:4px;border-radius:12px;font-size:9px}.nav-item svg{width:21px;height:21px}.main-content{padding:18px 14px 24px}.page-header{min-height:126px;display:block;padding:30px 6px 0}.page-header h1{font-size:30px}.header-actions{margin-top:15px}.streak-chip{display:none}.learning-grid{display:grid;grid-template-columns:1fr}.mission-stage{min-height:520px}.lesson-card{min-height:510px}.ai-panel{min-height:510px;display:flex}.challenge-section{grid-template-columns:1fr}.challenge-progress{grid-column:1}.help-button{bottom:82px}}@media(min-width:881px)and (max-height:820px){.sidebar{gap:24px;overflow-y:auto}.nav-list{gap:8px}}@media(max-width:520px){.page-header{min-height:156px}.page-header h1{font-size:27px}.profile-chip{margin-left:auto}.mission-stage{min-height:460px}.mission-marker span{display:none}.mission-marker{min-width:40px;padding-right:7px}.marker-start{left:55%}.marker-code{right:4%}.marker-check{right:9%}.challenge-section{padding:12px}.step-line{gap:0}.progress-step strong{font-size:8px}.dialog{padding:26px 20px 22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}select,textarea{font:inherit;color:inherit}textarea{resize:vertical}select:focus-visible,textarea:focus-visible{outline:3px solid rgba(35,105,245,.2);outline-offset:2px}.page-surface{border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.section-heading-row h2{margin:5px 0 0;font-size:clamp(22px,2.1vw,30px);letter-spacing:-.035em}.section-heading-row>span{color:var(--muted);font-size:13px}.soft-button,.text-button,.back-button,.logout-button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:760}.soft-button{min-height:42px;padding:0 15px;border:1px solid #d9e3f3;border-radius:12px;color:#34517e;background:#f5f8fd}.soft-button:hover{color:var(--blue);border-color:#a9c5fa;background:#edf4ff}.favorite-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:1px solid #d9e3f3;border-radius:12px;color:#456080;background:#fff;cursor:pointer;font-size:11px;font-weight:780;transition:color .16s ease,border-color .16s ease,background-color .16s ease,transform .16s ease}.favorite-button:hover{color:var(--blue);border-color:#a9c5fa;background:#f2f7ff;transform:translateY(-1px)}.favorite-button.is-saved{color:#9b680e;border-color:#e9cb87;background:#fff8e8}.favorite-button:disabled{opacity:.58;cursor:wait;transform:none}.soft-button.full,.primary-button.full{width:100%}.primary-button.compact{min-height:42px;padding-inline:18px;font-size:13px}.text-button{padding:6px 0;color:var(--blue);background:transparent}.back-button{min-height:38px;padding:0;color:#60708b;background:transparent}.back-button:hover,.text-button:hover{color:var(--blue-dark)}.text-button:hover:not(:disabled),.text-button:focus-visible,.dashboard-section-heading>button:hover,.dashboard-section-heading>button:focus-visible,.ai-quick-card>button:hover,.ai-quick-card>button:focus-visible,.home-project-challenge>button:hover,.home-project-challenge>button:focus-visible{text-decoration:underline;text-underline-offset:4px}.surface-icon{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px}.surface-icon.blue{color:var(--blue);background:var(--blue-soft)}.surface-icon.orange{color:#d48400;background:var(--orange-soft)}.surface-icon.green{color:#438f21;background:var(--green-soft)}.surface-icon.purple{color:#7954d9;background:#f0ebff}.status-pill{min-height:26px;display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;color:#5f6f88;background:#f0f3f8;font-size:11px;font-weight:760}.status-pill.blue{color:var(--blue);background:var(--blue-soft)}.status-pill.green{color:#478b27;background:var(--green-soft)}.status-pill.orange{color:#b76d00;background:var(--orange-soft)}.inline-progress{min-width:0}.inline-progress>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;color:#6d7890;font-size:11px}.inline-progress>div strong{color:var(--blue)}.inner-page{min-height:calc(100vh - 56px);padding:9px 30px 42px}.partial-sync-banner{min-height:44px;display:flex;align-items:center;gap:10px;margin:0 6px 14px;padding:9px 12px;border:1px solid #ead8aa;border-radius:13px;color:#735621;background:#fff9e9;box-shadow:0 6px 16px #70521a0f;font-size:11px;font-weight:720}.partial-sync-banner>svg{flex:0 0 auto;color:#bf8520}.partial-sync-banner>span{min-width:0}.partial-sync-banner>button{min-height:30px;margin-left:auto;padding:0 10px;border:1px solid #e5c77f;border-radius:9px;color:#8a651e;background:#ffffffc2;cursor:pointer;font-size:10px;font-weight:800}.partial-sync-banner>button:hover{border-color:#d7ac4e;background:#fff}.inner-page-heading{min-height:148px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:23px 2px 18px}.inner-page-heading h1{margin:6px 0 8px;color:#0f203f;font-size:clamp(30px,3.2vw,46px);line-height:1.1;letter-spacing:-.05em}.inner-page-heading>div:first-child>p:last-child{max-width:720px;margin:0;color:#6e788c;font-size:14px;line-height:1.65}.inner-page-actions{display:flex;align-items:center;gap:10px}.search-control{min-height:44px;display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid #dfe5ef;border-radius:13px;color:#7c879a;background:#fff}.search-control input{min-width:210px;border:0;outline:0;color:var(--ink);background:transparent}.home-extended,.home-recommendations{margin-top:26px}.home-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:15px}.home-module-card{min-height:174px;position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:20px;border:1px solid var(--line);border-radius:18px;text-align:left;background:#fff;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.home-module-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:#c8d8f2}.home-module-card>span{width:43px;height:43px;display:grid;place-items:center;border-radius:13px}.home-module-card.tone-blue>span{color:var(--blue);background:var(--blue-soft)}.home-module-card.tone-orange>span{color:#cf7900;background:var(--orange-soft)}.home-module-card.tone-green>span{color:#448c25;background:var(--green-soft)}.home-module-card strong{margin-top:15px;font-size:16px}.home-module-card p{margin:6px 22px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.home-module-card>svg{position:absolute;right:17px;bottom:17px;color:var(--blue)}.recommendation-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:15px}.recommendation-card{min-height:100px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:15px;text-align:left;color:inherit;cursor:pointer}.recommendation-card>div span,.recommendation-card>div strong,.recommendation-card>div small{display:block}.recommendation-card>div span{color:var(--blue);font-size:10px;font-weight:760}.recommendation-card>div strong{margin:5px 0;font-size:14px}.recommendation-card>div small{color:var(--muted);font-size:10px}.recommendation-card>svg{color:#8aa1c5}.recommendation-empty{grid-column:1 / -1;min-height:92px;display:flex;align-items:center;gap:13px;padding:18px;color:var(--blue)}.recommendation-empty div{display:grid;gap:5px}.recommendation-empty strong{color:var(--ink);font-size:13px}.recommendation-empty small{color:var(--muted);font-size:10px}.learning-overview{display:grid;grid-template-columns:minmax(0,1fr) 142px repeat(2,94px);gap:0;padding:18px}.learning-overview>div{min-width:0;padding:4px 18px;border-right:1px solid var(--line)}.learning-overview>div:last-child{border-right:0}.continue-course{display:grid;grid-template-columns:132px minmax(0,1fr) auto;grid-template-areas:"cover copy action";align-items:center;gap:16px}.continue-course p,.continue-course h2{margin:0}.continue-course p{color:var(--blue);font-size:11px;font-weight:760}.continue-course h2{margin-top:5px;font-size:17px;line-height:1.45}.continue-course-media{grid-area:cover;display:grid;place-items:center;width:100%;aspect-ratio:20 / 13;overflow:hidden;border-radius:14px;color:var(--blue);background:#edf3fa}.continue-course-cover{display:block;width:100%;max-width:100%;height:100%;object-fit:contain}.continue-course-copy{grid-area:copy;min-width:0;overflow-wrap:anywhere}.continue-course .primary-button{grid-area:action;margin:0;min-height:44px;white-space:nowrap}.continue-course-copy>span{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.6}.weekly-goal>div:first-child,.study-stat{display:flex;align-items:center;gap:8px}.weekly-goal>div:first-child svg,.study-stat svg{color:var(--orange)}.weekly-goal>div:first-child span,.study-stat span{color:var(--muted);font-size:10px}.weekly-goal>div:first-child strong,.study-stat strong{margin-left:auto;font-size:14px}.weekly-goal .inline-progress{margin-top:12px}.study-stat{flex-direction:column;justify-content:center;text-align:center}.study-stat strong{margin:1px 0 0;font-size:16px}.course-catalog,.path-section{margin-top:30px}.segmented-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid #e0e5ed;border-radius:13px;background:#f3f5f8}.segmented-tabs button{min-height:36px;padding:0 13px;border:0;border-radius:9px;color:#66748d;background:transparent;cursor:pointer;font-size:11px;font-weight:760}.segmented-tabs button.is-active{color:var(--blue);background:#fff;box-shadow:0 5px 12px #1f4b911a}.course-catalog>.segmented-tabs{margin-top:16px}.curriculum-filter-row{display:flex;align-items:end;gap:12px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:15px;background:#fff}.curriculum-filter-row label{min-width:170px;display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:720}.curriculum-filter-row select{min-height:42px;padding:0 34px 0 11px;border:1px solid #dce4ef;border-radius:11px;background:#f8fafc;cursor:pointer}.curriculum-filter-row p{margin:0 0 11px auto;color:var(--muted);font-size:11px}.curriculum-filter-row p strong{color:var(--ink);font-variant-numeric:tabular-nums}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.course-card{overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.course-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.course-cover{min-height:118px;position:relative;display:flex;align-items:flex-end;padding:18px;color:#fff;background:#3274f4}.course-cover .favorite-button.on-course-cover{min-height:32px;position:absolute;z-index:2;top:13px;left:13px;padding:0 10px;border-color:#ffffff73;color:#fff;background:#0f22483d;box-shadow:0 7px 18px #0f204124;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:9px}.course-cover .favorite-button.on-course-cover:hover,.course-cover .favorite-button.on-course-cover.is-saved{border-color:#ffffffc2;color:#fff;background:#ffffff40}.course-cover.tone-purple{background:#7859cf}.course-cover.tone-green{background:#37935d}.course-cover.tone-blue{background:#3274f4}.course-cover.tone-orange{background:#d37b28}.course-cover.tone-cyan{background:#168a9d}.course-cover.tone-pink{background:#b14f83}.course-cover>span{position:absolute;top:14px;right:14px;padding:5px 9px;border-radius:999px;background:#fff3;font-size:10px;font-weight:760}.course-cover>strong{position:absolute;left:18px;bottom:15px;display:flex;align-items:center;gap:5px;margin-left:50px;font-size:10px}.course-card-body{padding:17px}.course-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.course-card h3{margin:10px 0 7px;font-size:17px}.course-card p{min-height:48px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.course-pathway-line{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.course-pathway-line span{padding:4px 8px;border-radius:999px;color:#46617e;background:#edf3fa;font-size:9px;font-weight:720}.course-card .tag-row{margin-top:11px}.course-card .inline-progress{margin-top:15px}.course-card .text-button{width:100%;justify-content:space-between;margin-top:9px}.course-pagination{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:22px}.course-pagination-pages{display:flex;align-items:center;gap:5px}.course-pagination button{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid #dfe5ed;border-radius:11px;color:#5d6980;background:#fff;cursor:pointer;font-size:11px;font-weight:760;transition:color .16s ease,border-color .16s ease,background-color .16s ease,transform .16s ease}.course-pagination button:hover:not(:disabled){color:var(--blue);border-color:#a9c4f7;background:#f6f9ff;transform:translateY(-1px)}.course-pagination button:focus-visible{outline:3px solid rgba(50,116,244,.2);outline-offset:2px}.course-pagination-pages button.is-active{color:#fff;border-color:var(--blue);background:var(--blue);box-shadow:0 7px 16px #3274f433}.course-pagination button:disabled{opacity:.4;cursor:not-allowed}.course-pagination-pages>span{min-width:24px;color:var(--muted);text-align:center}.course-pagination-step{min-width:82px!important}.empty-state{min-height:240px;margin-top:16px;display:grid;place-items:center;align-content:center;color:#8190a7;text-align:center}.empty-state h3{margin:12px 0 5px;color:var(--ink)}.empty-state p{margin:0}.empty-state.compact{min-height:150px;margin-top:8px;padding:18px}.empty-state.compact h3{font-size:14px}.empty-state.compact p{max-width:420px;font-size:10px;line-height:1.55}.empty-state.compact .soft-button{margin-top:12px}.path-section{padding:22px}.learning-path{position:relative;display:grid;grid-template-columns:repeat(4,1fr);margin-top:26px}.learning-path:before{content:"";position:absolute;top:22px;left:11%;right:11%;height:3px;background:#e2e7ef}.path-node{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}.path-node>span{width:44px;height:44px;display:grid;place-items:center;border:5px solid #fff;border-radius:50%;color:#fff;background:#bec7d5;box-shadow:0 0 0 1px #dfe4ec;font-weight:850}.path-node.is-done>span{background:var(--green)}.path-node.is-active>span{color:var(--blue);background:#fff;box-shadow:0 0 0 3px var(--blue)}.path-node strong{margin-top:10px;font-size:12px}.path-node small{margin-top:4px;color:var(--muted);font-size:9px}.course-hero{min-height:245px;display:grid;grid-template-columns:90px 1fr 260px;align-items:center;gap:24px;margin-top:16px;padding:28px;border-color:#d8e4f8;background:#f3f7ff}.course-hero.tone-purple{background:#f5f2ff}.course-hero.tone-green{background:#f1f8f3}.course-hero-icon{width:84px;height:84px;display:grid;place-items:center;border-radius:24px;color:#fff;background:var(--blue);box-shadow:0 15px 30px #2369f538}.course-hero-copy h1{margin:13px 0 8px;font-size:clamp(28px,3vw,42px);letter-spacing:-.04em}.course-hero-copy>p{max-width:680px;margin:0;color:var(--muted);font-size:13px;line-height:1.65}.course-hero-stats{display:flex;gap:18px;margin-top:16px;color:#52637e;font-size:11px}.course-hero-stats span{display:flex;align-items:center;gap:6px}.course-hero-action{display:grid;gap:16px;padding:8px 0 8px 18px;border-radius:0;background:transparent}.course-hero-action .favorite-button{width:100%}.course-detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.75fr);gap:18px;margin-top:18px}.syllabus{padding:22px}.lesson-list{margin-top:18px;border-top:1px solid var(--line)}.lesson-row{border-bottom:1px solid var(--line)}.lesson-row-main{width:100%;min-height:72px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:10px 4px;border:0;text-align:left;background:transparent;cursor:pointer}.lesson-index{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#687890;background:#edf1f6;font-size:11px;font-weight:800}.lesson-index.is-done{color:#fff;background:var(--green)}.lesson-index.is-current{color:#fff;background:var(--blue)}.lesson-row-main strong,.lesson-row-main small{display:block}.lesson-row-main strong{font-size:13px}.lesson-row-main small{margin-top:5px;color:var(--muted);font-size:10px}.lesson-caret{color:#8d9bb0;transition:transform .18s ease}.lesson-row.is-open .lesson-caret{transform:rotate(90deg)}.lesson-row-detail{padding:0 6px 16px 50px}.lesson-row-detail p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.lesson-row-detail .text-button{margin-top:7px}.lesson-row-detail button:disabled{color:#9da7b8;cursor:not-allowed}.course-side-stack{display:grid;align-content:start;gap:0;padding:4px 22px;border-radius:22px;background:var(--surface)}.course-side-stack>.page-surface{padding:22px 0;border:0;border-radius:0;background:transparent;box-shadow:none}.course-side-stack>.page-surface+.page-surface{border-top:1px solid var(--line)}.teacher-card{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:17px}.teacher-card p,.teacher-card h3{margin:0}.teacher-card p{color:var(--muted);font-size:9px}.teacher-card h3{margin-top:3px;font-size:15px}.teacher-card div>span{color:var(--muted);font-size:9px}.teacher-card>button{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:12px;color:var(--blue);background:var(--blue-soft);cursor:pointer}.value-card,.resources-card{padding:20px}.value-card h3,.resources-card h3{margin:7px 0;font-size:17px}.value-card>p:not(.eyebrow){color:var(--muted);font-size:11px;line-height:1.6}.resources-card>button{width:100%;min-height:48px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;padding:0;border:0;border-bottom:1px solid var(--line);text-align:left;background:transparent;cursor:pointer;font-size:10px}.resources-card>button:last-child{border-bottom:0}.resources-card>button svg:first-child{color:var(--blue)}.lab-main-content{max-width:none;padding:16px 18px 24px}.lab-page{min-height:calc(100vh - 40px)}.lab-topbar{min-height:62px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 4px 14px}.lab-topbar>div:nth-child(2){display:flex;align-items:center;gap:10px}.lab-top-actions{justify-self:end;display:flex;gap:9px}.lab-workspace{min-height:calc(100vh - 106px);display:grid;grid-template-columns:minmax(220px,.72fr) minmax(420px,1.45fr) minmax(300px,1fr);gap:12px}.lab-workspace>*{min-width:0;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.lab-mission-panel{padding:20px}.lab-mission-panel h2{margin:8px 0 9px;font-size:21px;letter-spacing:-.03em}.lab-mission-panel>p:not(.eyebrow){margin:0;color:var(--muted);font-size:11px;line-height:1.65}.mission-checks{display:grid;gap:9px;margin:20px 0}.mission-checks>div{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;color:#6f7b8f;font-size:11px}.mission-checks>div>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#eef1f5;font-weight:780}.mission-checks>div.is-done{color:#315d27}.mission-checks>div.is-done>span{color:#fff;background:var(--green)}.concept-card{display:flex;gap:10px;margin:18px 0;padding:13px;border-radius:13px;color:#5b6d87;background:var(--orange-soft)}.concept-card svg{flex:0 0 auto;color:var(--orange)}.concept-card strong{color:#6d4a0a;font-size:11px}.concept-card p{margin:4px 0 0;font-size:10px;line-height:1.55}.code-editor-panel{overflow:hidden;display:grid;grid-template-rows:48px 1fr 42px;color:#d9e6ff;background:#13213a;border-color:#1d3153}.editor-toolbar,.editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 15px;background:#182a48;font-size:10px}.editor-toolbar>div{display:flex;align-items:center;gap:7px}.editor-toolbar strong{margin-left:7px;font-size:11px}.editor-toolbar>span,.editor-footer{color:#91a4c2}.editor-dot{width:9px;height:9px;border-radius:50%;background:#ff6f68}.editor-dot.amber{background:#f5bd4f}.editor-dot.green{background:#5cca67}.editor-area{min-height:440px;display:grid;grid-template-columns:42px 1fr;overflow:hidden}.line-numbers{display:flex;flex-direction:column;align-items:flex-end;gap:0;padding:16px 11px;color:#607493;background:#102038;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.75}.editor-area textarea{width:100%;height:100%;min-height:440px;padding:16px;border:0;outline:0;resize:none;color:#dbe7ff;caret-color:#62a1ff;background:#13213a;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.75;-moz-tab-size:4;tab-size:4}.editor-footer span{display:flex;align-items:center;gap:7px}.editor-footer button{border:0;color:#b9cdf0;background:transparent;cursor:pointer;font-weight:700}.simulator-panel{display:flex;flex-direction:column;padding:16px}.simulator-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.simulator-heading h2{margin:4px 0 0;font-size:18px}.sim-status{display:inline-flex;padding:5px 8px;border-radius:999px;color:#3b8420;background:var(--green-soft);font-size:9px;font-weight:780}.sim-status.is-running{color:var(--blue);background:var(--blue-soft)}.simulator-stage{min-height:330px;position:relative;overflow:hidden;margin-top:14px;border-radius:15px;background:#eaf2fb}.simulator-stage>img{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;object-fit:cover;transform:scale(1.15)}.lab-robot-token{width:38px;height:38px;position:absolute;left:18%;bottom:14%;display:grid;place-items:center;border:4px solid #fff;border-radius:13px;color:#fff;background:var(--blue);box-shadow:0 9px 18px #184ea947;will-change:transform}.speed-control{display:grid;gap:8px;margin-top:14px}.speed-control>span{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.speed-control input{width:100%;accent-color:var(--blue)}.run-result{display:flex;gap:9px;margin-top:14px;padding:12px;border-radius:13px;color:#5f6f86;background:#f1f4f8}.run-result svg{flex:0 0 auto;color:#7e8da4}.run-result strong{display:block;color:var(--ink);font-size:11px}.run-result p{margin:4px 0 0;font-size:9px;line-height:1.5}.run-result.is-success{color:#4c6c3c;background:var(--green-soft)}.run-result.is-success svg{color:var(--green)}.run-result.is-error{color:#8b4f4f;background:#fff0ee}.run-result.is-error svg{color:#d75b54}.main-content.ai-main-content{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.ai-tutor-page{min-height:0;flex:1;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;padding-bottom:0}.ai-workbench{min-height:0;height:100%;display:grid;grid-template-columns:255px minmax(0,1fr);gap:14px;overflow:hidden}.ai-history{min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:14px}.history-heading{display:flex;justify-content:space-between;align-items:center;margin:18px 4px 8px;color:var(--muted);font-size:10px;font-weight:760}.history-heading button,.chat-topbar-actions>button,.ai-guide-trigger{width:31px;height:31px;display:grid;place-items:center;border:0;border-radius:9px;color:#73819a;background:#f2f5f9;cursor:pointer}.history-heading button.is-active{color:var(--blue);background:var(--blue-soft)}.history-search-control{min-height:38px;margin-bottom:8px}.history-search-control input{width:100%;min-width:0}.ai-history-error{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding:8px 9px;border-radius:9px;color:#8f554f;background:#fff2f0;font-size:8px}.ai-history-error button{border:0;color:var(--blue);background:transparent;cursor:pointer;font-size:8px;font-weight:800}.history-list{min-height:0;display:grid;align-content:start;gap:5px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bfd0e8 transparent}.history-list::-webkit-scrollbar{width:7px}.history-list::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:#bfd0e8;background-clip:padding-box}.history-item{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:center;border-radius:11px;color:#516078;background:transparent;transition:background .16s ease,color .16s ease}.history-item.is-active{color:var(--blue);background:var(--blue-soft)}.history-conversation-button{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;padding:10px 4px 10px 10px;border:0;text-align:left;color:inherit;background:transparent;cursor:pointer}.history-conversation-button>span{min-width:0}.history-delete-button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;color:#9aa6b8;background:transparent;cursor:pointer;opacity:.62;transition:color .16s ease,background .16s ease,opacity .16s ease}.history-item:hover .history-delete-button,.history-item:focus-within .history-delete-button,.history-item.is-active .history-delete-button{opacity:1}.history-delete-button:hover{color:#bd534e;background:#fff0ee}.history-delete-button:disabled{cursor:not-allowed;opacity:.35}.history-list strong,.history-list small{display:block}.history-list strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.history-list small{display:flex;align-items:center;gap:4px;margin-top:4px;color:#8994a7;font-size:8px}.history-mode-dot{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--blue)}.history-mode-dot.tone-green{background:var(--green)}.history-mode-dot.tone-orange{background:var(--orange)}.history-empty{margin:8px 4px 2px;color:#929caf;font-size:9px;text-align:center}.history-delete-confirm{display:grid;gap:10px;margin-top:9px;padding:11px;border:1px solid #f0d1cd;border-radius:12px;color:#744945;background:#fff7f5;box-shadow:0 8px 20px #6d2f2814}.history-delete-confirm strong{display:block;color:#673d39;font-size:10px}.history-delete-confirm p{overflow:hidden;margin:3px 0 0;color:#956963;font-size:8px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.history-delete-confirm>div:last-child{display:flex;justify-content:flex-end;gap:6px}.history-delete-confirm button{min-height:28px;padding:0 9px;border:1px solid #e1c2be;border-radius:8px;color:#7d5550;background:#fff;cursor:pointer;font-size:8px;font-weight:800}.history-delete-confirm button.is-danger{border-color:#d8665e;color:#fff;background:#d8665e}.history-delete-confirm button:disabled{cursor:wait;opacity:.58}.ai-safety-note{display:flex;gap:8px;margin-top:auto;padding:12px;border-radius:12px;color:#56714b;background:var(--green-soft)}.ai-safety-note svg{flex:0 0 auto;color:var(--green)}.ai-safety-note p{margin:0;font-size:9px;line-height:1.5}.ai-safety-note strong{display:block;color:#385c2d}.chat-workspace{min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:64px minmax(0,1fr) auto;overflow:hidden}.chat-topbar{position:relative;z-index:12;display:grid;grid-template-columns:minmax(145px,auto) minmax(270px,520px) auto;align-items:center;justify-content:space-between;gap:12px;padding:0 18px;border-bottom:1px solid var(--line);border-radius:19px 19px 0 0}.chat-assistant-identity,.chat-topbar-actions{display:flex;align-items:center;gap:10px}.chat-assistant-identity{min-width:0}.chat-assistant-identity>span{min-width:0}.chat-topbar img{width:42px;height:42px;object-fit:contain;border-radius:12px;background:var(--blue-soft)}.chat-topbar strong,.chat-topbar small{display:block}.chat-topbar strong{font-size:13px}.chat-topbar small{margin-top:3px;color:var(--muted);font-size:9px}.chat-topbar-actions>button:disabled{cursor:not-allowed;opacity:.45}.ai-guide-trigger-wrap{position:relative;display:flex}.ai-guide-trigger{position:relative;transition:color .16s ease,background-color .16s ease}.ai-guide-trigger:hover,.ai-guide-trigger.is-open{color:var(--blue);background:var(--blue-soft)}.ai-guide-trigger>span{width:7px;height:7px;position:absolute;right:5px;top:4px;border:2px solid #f2f5f9;border-radius:50%;background:var(--orange)}.ai-guide-trigger.is-open>span{border-color:var(--blue-soft)}.ai-connection-detail.is-live{color:#4d852f}.ai-connection-detail.is-unconfigured{color:#9b6206}.ai-connection-detail.is-degraded{color:#a44c47}.ai-connection-detail.is-demo{color:#8b651f}.ai-mode-tabs{width:min(100%,342px);min-width:0;position:relative;isolation:isolate;justify-self:center;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;border:1px solid #e2e7ef;border-radius:15px;background:#f3f5f8}.ai-mode-selection{--mode-color: #2f6fe8;height:34px;position:absolute;left:0;top:3px;z-index:0;pointer-events:none;border:1px solid color-mix(in srgb,var(--mode-color) 24%,#dfe6f1);border-radius:12px;background:#fff;box-shadow:0 2px 7px #2b416217;will-change:transform,width;transition:border-color .16s ease}.ai-mode-selection.tone-green{--mode-color: #2f8a56}.ai-mode-selection.tone-orange{--mode-color: #c66e18}.ai-mode-tabs button{--mode-color: #2f6fe8;--mode-soft: #edf4ff;min-width:0;min-height:34px;position:relative;z-index:1;display:grid;grid-template-columns:24px auto;align-items:center;justify-content:center;gap:5px;padding:3px 7px;border:1px solid transparent;border-radius:12px;text-align:left;color:#677791;background:transparent;cursor:pointer;transition:color .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease,transform .16s ease}.ai-mode-tabs button.tone-green{--mode-color: #2f8a56;--mode-soft: #edf9f1}.ai-mode-tabs button.tone-orange{--mode-color: #c66e18;--mode-soft: #fff4e8}.ai-mode-tabs button:hover:not(:disabled):not(.is-active){color:var(--mode-color);border-color:transparent;background:#fff9}.ai-mode-tabs button:hover:not(:disabled) strong{color:var(--mode-color)}.ai-mode-tabs button.is-active{border-color:transparent;color:var(--mode-color);background:transparent;box-shadow:none}.ai-mode-tabs button:disabled{cursor:not-allowed;opacity:.55}.ai-mode-tab-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;color:#7f8b9d;background:transparent;transition:color .16s ease,background-color .16s ease}.ai-mode-tabs button:hover:not(:disabled) .ai-mode-tab-icon{color:var(--mode-color)}.ai-mode-tabs button.is-active .ai-mode-tab-icon{color:var(--mode-color);background:var(--mode-soft)}.ai-mode-tabs button strong{overflow:hidden;color:#2c3d59;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.ai-mode-tabs button.is-active strong{color:var(--mode-color)}.ai-mode-guide{--mode-color: #2f6fe8;--mode-soft: #edf4ff;min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;margin:12px 18px 0;padding:13px 14px;border:1px solid color-mix(in srgb,var(--mode-color) 20%,#e4e9f1);border-radius:15px;background:linear-gradient(135deg,var(--mode-soft),#fff 74%)}.ai-mode-guide.is-popover{width:min(540px,calc(100vw - 310px));position:absolute;top:calc(100% + 12px);right:-41px;z-index:30;grid-template-columns:44px minmax(0,1fr);align-items:start;margin:0;padding:16px 46px 16px 16px;box-shadow:0 18px 44px #1e396033;transform-origin:top right;will-change:transform,opacity}.ai-mode-guide.is-popover:before{content:"";width:12px;height:12px;position:absolute;right:51px;top:-7px;border-top:1px solid color-mix(in srgb,var(--mode-color) 20%,#e4e9f1);border-left:1px solid color-mix(in srgb,var(--mode-color) 20%,#e4e9f1);background:var(--mode-soft);transform:rotate(45deg)}.ai-mode-guide.is-popover ol{grid-column:1 / -1}.ai-mode-guide.is-popover .ai-guide-profile-link{grid-column:1 / -1;justify-self:start;min-height:44px;font-size:12px}.ai-mode-guide-close{width:32px;height:32px;position:absolute;top:10px;right:10px;display:grid;place-items:center;border:0;border-radius:9px;color:#718097;background:#fffc;cursor:pointer}.ai-mode-guide-close:hover{color:#3f5f8a;background:#fff}.ai-mode-guide.tone-green,.composer-mode-context.tone-green,.message-mode-badge.tone-green{--mode-color: #2f8a56;--mode-soft: #edf9f1}.ai-mode-guide.tone-orange,.composer-mode-context.tone-orange,.message-mode-badge.tone-orange{--mode-color: #c66e18;--mode-soft: #fff4e8}.ai-mode-guide-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;color:#fff;background:var(--mode-color);box-shadow:0 8px 17px color-mix(in srgb,var(--mode-color) 23%,transparent)}.ai-mode-guide-copy{min-width:0}.ai-mode-guide-copy>p{margin:0 0 2px;color:var(--mode-color);font-size:9px;font-weight:850;letter-spacing:.08em}.ai-mode-guide-copy h2{margin:0;color:#263955;font-size:15px;letter-spacing:-.015em}.ai-mode-guide-copy>span{display:block;margin-top:4px;color:#68778e;font-size:10px;line-height:1.5}.ai-mode-guide-copy small{display:flex;align-items:center;gap:5px;margin-top:6px;color:#52647e;font-size:9px;font-weight:720}.ai-mode-guide-copy small svg{flex:0 0 auto;color:var(--mode-color)}.ai-mode-guide ol{display:grid;grid-template-columns:repeat(3,minmax(68px,1fr));gap:7px;margin:0;padding:0;list-style:none}.ai-mode-guide li{min-height:46px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;padding:7px;border:1px solid color-mix(in srgb,var(--mode-color) 14%,#e7ebf2);border-radius:10px;color:#4c5e78;background:#ffffffc7;font-size:9px}.ai-mode-guide li>span{width:20px;height:20px;display:grid;place-items:center;border-radius:7px;color:var(--mode-color);background:var(--mode-soft);font-weight:850}.ai-mode-guide li strong{line-height:1.35}.chat-stream{min-height:0;overflow-y:scroll;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#aebfda #eef3f9;padding:22px clamp(18px,6vw,90px);background:#fbfcfe}.chat-stream::-webkit-scrollbar{width:9px}.chat-stream::-webkit-scrollbar-track{background:#eef3f9}.chat-stream::-webkit-scrollbar-thumb{border:2px solid #eef3f9;border-radius:999px;background:#aebfda}.chat-stream::-webkit-scrollbar-thumb:hover{background:#879fbe}.chat-welcome{max-width:760px;margin:22px auto 30px;text-align:center}.chat-welcome-orbit{width:94px;height:94px;position:relative;display:inline-grid;place-items:center;border-radius:28px;background:radial-gradient(circle,#fff 44%,#edf4ff 45% 63%,transparent 64%)}.chat-welcome-orbit img{width:82px;height:82px;object-fit:contain}.chat-welcome-orbit i{width:31px;height:31px;position:absolute;right:-3px;bottom:0;display:grid;place-items:center;border:4px solid #fbfcfe;border-radius:11px;color:#fff;background:var(--blue);box-shadow:0 6px 13px #275bb333}.chat-welcome.tone-green .chat-welcome-orbit i{background:var(--green)}.chat-welcome.tone-orange .chat-welcome-orbit i{background:var(--orange)}.chat-welcome>.eyebrow{justify-content:center;margin:6px 0 0}.chat-welcome h2{margin:5px 0 7px;font-size:24px}.chat-welcome>p:not(.eyebrow){max-width:650px;margin:0 auto;color:var(--muted);font-size:11px;line-height:1.65}.quick-prompts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:22px}.quick-prompts button{min-width:0;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;border:1px solid #dfe6f2;border-radius:14px;text-align:left;color:#3f5271;background:#fff;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.quick-prompts button:hover:not(:disabled){border-color:#b9cdf0;box-shadow:0 8px 18px #274c8b14;transform:translateY(-2px)}.quick-prompts button>span{min-width:0}.quick-prompts button small{display:block;margin-bottom:5px;color:var(--blue);font-size:9px;font-weight:850}.chat-welcome.tone-green .quick-prompts button small{color:var(--green)}.chat-welcome.tone-orange .quick-prompts button small{color:#b96716}.quick-prompts button strong{display:-webkit-box;overflow:hidden;color:#3f5271;font-size:10px;font-weight:720;line-height:1.52;-webkit-box-orient:vertical;-webkit-line-clamp:3}.quick-prompts button>svg{flex:0 0 auto;color:#8ca0be}.quick-prompts button:disabled{color:#929cad;background:#f5f7fa;cursor:not-allowed}.chat-message{display:flex;align-items:flex-start;gap:9px;margin:14px 0}.chat-message>img{width:36px;height:36px;object-fit:contain;border-radius:11px;background:var(--blue-soft)}.chat-message>div{max-width:min(72%,680px);padding:11px 13px;border-radius:5px 15px 15px;color:#41516c;background:#edf3fd;font-size:11px;line-height:1.62}.chat-message.is-user{justify-content:flex-end}.chat-message.is-user>div{color:#fff;background:var(--blue);border-radius:15px 5px 15px 15px}.chat-message p{margin:0;white-space:pre-wrap}.message-mode-badge{--mode-color: #2f6fe8;--mode-soft: #edf4ff;width:max-content;display:inline-flex;align-items:center;gap:4px;margin-bottom:7px;padding:4px 7px;border:1px solid color-mix(in srgb,var(--mode-color) 18%,#dfe6f1);border-radius:999px;color:var(--mode-color);background:#ffffffc7;font-size:9px;font-weight:820}.message-agent-trace{display:flex;align-items:center;gap:7px;margin:0 0 9px;padding:8px 9px;border:1px solid #bfe2cf;border-radius:10px;color:#24734b;background:#f0faf5}.message-agent-trace>svg{flex:0 0 auto}.message-agent-trace span,.message-agent-trace strong,.message-agent-trace small{display:block}.message-agent-trace strong{color:#1f6744;font-size:9px}.message-agent-trace small{margin-top:2px;color:#4f7f68;font-size:8px;line-height:1.4}.message-agent-trace.is-knowledge{align-items:flex-start;border-color:#c9d9f4;color:#2f6bbf;background:#f3f7fe}.message-agent-trace.is-knowledge>span{min-width:0;flex:1}.message-agent-trace.is-knowledge strong{color:#2d5fa8}.message-agent-trace.is-knowledge small{color:#60799e}.message-agent-trace.is-knowledge button{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;margin:1px 0 0 5px;padding:4px 6px;border:1px solid #bdd0ef;border-radius:7px;color:#2f6bbf;background:#fff;cursor:pointer;font-size:8px;font-weight:800}.message-agent-trace.is-knowledge button:hover{border-color:#8eb0e6;background:#eaf2ff}.message-agent-traces{display:grid;gap:7px;margin-bottom:9px}.message-agent-traces .message-agent-trace{margin-bottom:0}.message-delivery-status{display:block;margin-top:5px;color:#ffffffc7;font-size:8px;font-weight:720}.message-delivery-status.is-failed{color:#fff0d8}.ai-message-content strong{color:#263a5d;font-weight:850}.ai-message-content code{padding:1px 4px;border:1px solid rgba(67,105,178,.14);border-radius:5px;color:#244fba;background:#ffffffb3;font:700 .94em/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.ai-message-content pre{margin:8px 0 2px;padding:11px 12px;overflow-x:auto;border:1px solid rgba(67,105,178,.16);border-radius:10px;color:#e9f0ff;background:#1d2b44}.ai-message-content pre code{padding:0;border:0;color:inherit;background:transparent;font-weight:600;white-space:pre}.ai-markdown-heading{display:inline-block;margin-top:4px;color:#263a5d;font-weight:850}.ai-markdown-bullet{display:inline-block;padding-left:4px}.message-attachments{display:flex;flex-wrap:wrap;gap:5px}.message-meta{display:block;margin-top:7px;color:#7586a1;font-size:8px;font-weight:750}.suggestion-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.suggestion-list button{padding:5px 8px;border:1px solid #c8d8f2;border-radius:999px;color:var(--blue);background:#fff;cursor:pointer;font-size:9px}.typing-indicator{min-width:58px;display:flex;gap:4px}.typing-indicator span{width:6px;height:6px;border-radius:50%;background:#7897c6;animation:typing-bounce .9s ease-in-out infinite alternate}.typing-indicator span:nth-child(2){animation-delay:.12s}.typing-indicator span:nth-child(3){animation-delay:.24s}@keyframes typing-bounce{to{transform:translateY(-5px)}}.chat-error,.ai-availability-note{max-width:720px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:start;gap:9px;margin:14px auto;padding:12px;border:1px solid #f0c9c4;border-radius:13px;color:#8a504b;background:#fff4f2;font-size:9px}.chat-error>svg,.ai-availability-note>svg{color:#cf6860}.chat-error strong,.ai-availability-note strong{display:block;color:#6e3d39;font-size:10px}.chat-error p,.ai-availability-note p{margin:3px 0 0;line-height:1.5}.chat-error small{display:block;margin-top:5px;color:#9b7773;font-size:7px}.chat-error-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.chat-error button,.ai-availability-note button{min-height:29px;padding:0 9px;border:1px solid #ddb4af;border-radius:8px;color:#8b4d47;background:#fff;cursor:pointer;font-size:8px;font-weight:800}.chat-error button:disabled{opacity:.56;cursor:not-allowed}.ai-availability-note{border-color:#d8e1ee;color:#63718a;background:#f4f7fb}.ai-availability-note>svg{color:#7889a5}.ai-availability-note strong{color:#45546e}.ai-availability-note.is-unconfigured{border-color:#ecd9aa;color:#806028;background:#fff9ea}.ai-availability-note.is-unconfigured>svg{color:#bc8426}.ai-composer{margin:0 18px 16px;padding:11px 12px;border:1px solid #dbe3ef;border-radius:15px;background:#fff;box-shadow:0 8px 20px #1f488714}.ai-composer textarea{width:100%;min-height:58px;max-height:140px;margin-top:7px;border:0;outline:0;resize:none;font-size:11px;line-height:1.55}.ai-composer>div{display:flex;align-items:center;gap:7px}.ai-composer>div:last-child>span{margin-left:4px;color:#9aa4b5;font-size:8px}.ai-composer kbd{padding:2px 5px;border:1px solid #d7e0ec;border-bottom-width:2px;border-radius:5px;color:#5f6f86;background:#f7f9fc;font-family:inherit;font-size:8px;font-weight:750;line-height:1.2}.composer-mode-context{--mode-color: #2f6fe8;--mode-soft: #edf4ff;padding-bottom:9px;border-bottom:1px solid #e9edf4}.composer-mode-context>span{width:32px;height:32px;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;color:var(--mode-color);background:var(--mode-soft)}.composer-mode-context>div{min-width:0}.composer-mode-context strong,.composer-mode-context small{display:block}.composer-mode-context strong{color:#334760;font-size:10px}.composer-mode-context small{overflow:hidden;margin-top:3px;color:#7b889b;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.composer-learning-profile-link{min-width:168px;min-height:38px;display:grid;grid-template-columns:22px minmax(0,1fr) 14px;align-items:center;gap:6px;margin-left:auto;padding:5px 8px;border:1px solid #d9e5f7;border-radius:11px;text-align:left;color:#3563a5;background:#f6f9ff;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.composer-learning-profile-link:hover{border-color:#aac6ef;background:#eef5ff;transform:translateY(-1px)}.composer-learning-profile-link>svg{color:#4b76bb}.composer-learning-profile-link>span{min-width:0}.composer-learning-profile-link strong{color:#315b97;font-size:9px}.composer-learning-profile-link small{color:#7486a0;font-size:8px}.conversation-context-chips{flex-wrap:wrap;margin-top:8px}.conversation-context-chips>span{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:8px;color:#46678e;background:#eef4fb;font-size:8px;font-weight:740}.conversation-context-chips>span:first-child{color:#7d899b;background:transparent}.conversation-context-chips button{min-height:27px;display:inline-flex;align-items:center;gap:3px;margin-left:auto;padding:0 7px;border:0;border-radius:8px;color:#7c899b;background:#f2f4f7;cursor:pointer;font-size:8px}.composer-tool{width:32px;height:32px;position:relative;display:grid;place-items:center;border-radius:9px;color:#65758f;background:#f1f4f8;cursor:pointer}.composer-tool input{width:1px;height:1px;position:absolute;padding:0;margin:-1px;overflow:hidden;border:0;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.composer-tool:focus-within{outline:3px solid rgba(35,105,245,.28);outline-offset:2px}.composer-tool.is-disabled{color:#aab3c1;background:#f4f5f7;cursor:not-allowed;opacity:.72}.ai-capability-note{display:flex;align-items:center;gap:5px;margin:0 0 7px;color:#876628;font-size:9px;font-weight:700;line-height:1.45}.ai-capability-note svg{flex:0 0 auto;color:#bc8426}.send-button{width:36px;height:36px;margin-left:auto;display:grid;place-items:center;border:0;border-radius:11px;color:#fff;background:var(--blue);cursor:pointer}.send-button:disabled{background:#b7c7e4;cursor:not-allowed}.attachment-chip{display:inline-flex;align-items:center;gap:5px;margin-bottom:6px;padding:5px 8px;border-radius:8px;color:#4b6286;background:#eef3fa;font-size:9px}.attachment-chip button{width:18px;height:18px;display:grid;place-items:center;border:0;border-radius:50%;background:#fff;cursor:pointer}.ai-tutor-page button:focus-visible,.ai-tutor-page textarea:focus-visible,.ai-tutor-page input:focus-visible{outline:3px solid rgba(35,105,245,.28);outline-offset:2px}.segmented-tabs.prominent{display:flex;width:max-content;margin:4px auto 22px}.segmented-tabs.prominent button{min-width:180px;display:flex;align-items:center;justify-content:center;gap:8px}.pioneer-feature{min-height:310px;display:grid;grid-template-columns:minmax(340px,.95fr) minmax(0,1fr);gap:28px;padding:18px}.pioneer-visual{min-height:270px;position:relative;overflow:hidden;border-radius:16px}.pioneer-visual img{width:100%;height:100%;object-fit:cover}.video-play{width:58px;height:58px;position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;border:5px solid rgba(255,255,255,.8);border-radius:50%;color:#fff;background:var(--blue);transform:translate(-50%,-50%);box-shadow:0 12px 30px #10316440}.pioneer-feature>div:last-child{align-self:center;padding-right:24px}.pioneer-feature h2{margin:8px 0 10px;font-size:clamp(26px,3vw,38px);letter-spacing:-.04em}.pioneer-feature>div:last-child>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.7}.pioneer-meta{display:flex;gap:16px;margin:16px 0;color:#596b86;font-size:10px}.pioneer-meta span{display:flex;align-items:center;gap:6px}.pioneer-feature-actions,.contest-feature-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pioneer-feature-actions .primary-button,.contest-feature-actions .primary-button{margin-top:0;padding-inline:20px}.ideology-page>section:not(.pioneer-feature):not(.monthly-task){margin-top:28px}.lecture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.lecture-card{position:relative;padding:19px}.lecture-open{width:100%;display:block;padding:0;border:0;text-align:left;color:inherit;background:transparent;cursor:pointer}.lecture-open:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid transparent;border-radius:20px;pointer-events:none;transition:border-color .16s ease}.lecture-open:hover:after{border-color:#2369f52e}.lecture-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;color:#fff;background:var(--blue)}.lecture-icon.tone-green{background:#3d9758}.lecture-card>.status-pill,.lecture-open>.status-pill{position:absolute;right:18px;top:18px}.lecture-card h3,.lecture-open h3{margin:16px 0 8px;font-size:18px}.lecture-card>p,.lecture-open>p{min-height:38px;margin:0;color:var(--muted);font-size:11px;line-height:1.6}.lecture-actions{display:flex;gap:7px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.lecture-actions button{display:flex;align-items:center;gap:4px;padding:5px 8px;border:0;border-radius:8px;color:#718098;background:#f3f5f8;cursor:pointer;font-size:9px}.lecture-actions button.is-active{color:#d84d57;background:#fff0f1}.lecture-actions .favorite-button{min-height:30px;margin-left:auto;color:#5d6f8b}.lecture-actions .favorite-button.is-saved{color:#9b680e;background:#fff5dc}.monthly-task{min-height:330px;display:grid;grid-template-columns:1.25fr .75fr;gap:20px;overflow:hidden;padding:24px}.monthly-task>div{align-self:center;padding-left:10px}.monthly-task h2{margin:10px 0;font-size:clamp(26px,3vw,40px);letter-spacing:-.04em}.monthly-task>div>p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:12px;line-height:1.7}.monthly-task .tag-row{margin:15px 0}.monthly-task>img{width:100%;height:100%;min-height:280px;object-fit:cover;border-radius:16px}.task-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:14px}.task-card{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:18px}.task-card-head,.task-card-footer{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:9px}.task-card-head span{color:var(--blue);font-weight:780}.task-card h3{margin:8px 0 6px;font-size:16px}.task-card>div>p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.task-card .tag-row{margin:10px 0}.task-card-footer{align-items:center;padding-top:10px;border-top:1px solid var(--line)}.task-card-footer>span{display:flex;align-items:center;gap:5px}.inline-filter{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #dfe5ee;border-radius:12px;color:#738098;background:#fff;box-shadow:0 4px 12px #1f42770a}.inline-filter>svg{flex:0 0 auto;color:var(--blue)}.inline-filter select{min-width:112px;border:0;outline:0;color:#42536f;background:transparent;cursor:pointer;font-size:10px;font-weight:740}.pioneer-dialog{width:min(640px,100%);max-height:min(820px,calc(100vh - 44px));overflow-y:auto}.official-media-link{min-height:43px;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;padding:0 15px;border-radius:12px;color:#fff;background:var(--blue);font-size:10px;font-weight:800;text-decoration:none}.official-media-link:hover{background:#245ed1}.comment-panel{margin-top:18px;padding:16px;border:1px solid #dce6f4;border-radius:16px;background:#f7f9fd}.comment-panel .section-heading-row{align-items:center}.comment-panel .section-heading-row h3{margin:0;color:#263956;font-size:14px}.comment-panel .section-heading-row>span{font-size:9px}.comment-panel>p{margin:12px 0;color:var(--muted);font-size:10px;line-height:1.55}.comment-list{max-height:190px;display:grid;gap:8px;overflow-y:auto;margin-top:12px;padding-right:3px}.comment-list>div{padding:10px 11px;border:1px solid #e5eaf2;border-radius:11px;background:#fff}.comment-list strong{color:#2b4266;font-size:10px}.comment-list p{margin:4px 0 0;color:#65738a;font-size:10px;line-height:1.55;white-space:pre-wrap}.comment-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin-top:12px}.comment-composer textarea{width:100%;min-height:76px;max-height:160px;padding:10px 11px;border:1px solid #d9e2ef;border-radius:11px;outline:0;background:#fff;font-size:10px;line-height:1.55}.comment-composer .primary-button{min-width:96px;margin-top:0}.pioneer-dialog .dialog-options{grid-template-columns:repeat(3,minmax(0,1fr))}.pioneer-dialog .dialog-options button{justify-content:center}.pioneer-dialog .dialog-options .favorite-button.is-saved{color:#9b680e;border-color:#e9cb87;background:#fff8e8}.contest-feature{min-height:280px;display:grid;grid-template-columns:minmax(360px,.9fr) 1.1fr;gap:28px;padding:17px}.contest-feature .contest-feature-cover{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:contain;border-radius:16px;align-self:center;padding:0}.contest-feature .contest-feature-cover-placeholder{display:grid;place-items:center;background:#edf3fc;color:#8096bd}.contest-feature>div{align-self:center;padding-right:24px}.contest-feature h2{margin:11px 0 8px;font-size:clamp(28px,3vw,39px);letter-spacing:-.04em}.contest-feature>div>p{color:var(--muted);font-size:12px;line-height:1.65}.contest-feature-meta{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0 18px;color:#546680;font-size:10px}.contest-feature-meta span{display:flex;align-items:center;gap:5px}.contest-browser{margin-top:28px}.filter-bar{display:flex;align-items:flex-end;gap:10px;margin:15px 0;padding:12px;border:1px solid var(--line);border-radius:15px;background:#fff}.filter-bar label{display:grid;gap:5px;color:var(--muted);font-size:9px}.filter-bar select{min-width:150px;min-height:37px;padding:0 10px;border:1px solid #dfe5ee;border-radius:10px;background:#f8f9fb}.toggle-filter{min-height:38px;margin-left:auto;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #e4e7ed;border-radius:10px;color:#68778f;background:#fff;cursor:pointer;font-size:10px;font-weight:760}.toggle-filter.is-active{color:#bb7300;border-color:#edc875;background:var(--orange-soft)}.competition-list{display:grid;gap:11px}.competition-row{min-height:150px;display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px}.competition-badge{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;color:#fff;background:var(--blue)}.competition-badge.tone-orange{background:var(--orange)}.competition-main h3{margin:8px 0 5px;font-size:17px}.competition-main>p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.competition-meta{display:flex;flex-wrap:wrap;gap:11px;margin-top:10px;color:#6e7c92;font-size:9px}.competition-meta span{display:flex;align-items:center;gap:4px}.competition-action{display:flex;align-items:center;justify-content:flex-end;gap:10px}.competition-action .secondary-button,.competition-action .favorite-button{min-height:44px;margin:0;padding-inline:14px;font-size:13px;white-space:nowrap}.competition-action .status-pill{min-height:36px;padding:8px 12px;font-size:12px;white-space:nowrap}@media(min-width:761px)and (max-width:1350px){.competition-row{grid-template-columns:54px minmax(0,1fr)}.competition-action{grid-column:2}}.contest-dialog{width:min(560px,100%)}.contest-dialog-actions{display:grid;grid-template-columns:minmax(138px,.48fr) minmax(0,1fr);gap:10px;margin-top:22px}.contest-dialog-actions>button{width:100%;min-height:49px;margin:0}.prep-plan-list{display:grid;gap:8px;margin-top:18px}.prep-plan-list>button{width:100%;min-height:62px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e2e7ef;border-radius:12px;text-align:left;color:#42536d;background:#fafbfd;cursor:pointer}.prep-plan-list>button:hover{border-color:#bcd1f6;background:#f2f7ff}.prep-plan-list>button>svg:first-child{color:var(--orange)}.prep-plan-list strong,.prep-plan-list small{display:block}.prep-plan-list strong{overflow:hidden;color:#233651;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.prep-plan-list small{margin-top:4px;color:var(--muted);font-size:9px;line-height:1.4}.registration-fields{display:grid;gap:10px;margin-top:16px;padding:14px;border:1px solid #e4e8ef;border-radius:14px;background:#fafbfd}.registration-fields>p:first-child{display:flex;align-items:center;gap:7px;margin:0;color:var(--blue);font-size:11px;font-weight:800}.registration-fields label{display:grid;gap:6px;color:#566980;font-size:9px;font-weight:760}.registration-fields input{width:100%;min-height:40px;box-sizing:border-box;border:1px solid #dbe2ec;border-radius:10px;padding:0 11px;color:var(--ink);background:#fff;outline:none}.registration-fields input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #3068e21a}.registration-fields>small{color:var(--muted);font-size:9px}.registration-fields .form-error{margin:0}.detail-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.detail-list>div{display:flex;gap:7px;padding:10px;border-radius:11px;color:#60708a;background:#f3f6fa}.detail-list strong,.detail-list span{display:block}.detail-list strong{color:#31435f;font-size:9px}.detail-list span{font-size:8px;line-height:1.45}.profile-page{display:flex;flex-direction:column}.profile-hero{min-height:240px;position:relative;display:grid;grid-template-columns:116px minmax(220px,1fr) minmax(340px,420px);align-items:center;gap:26px;overflow:hidden;padding:28px;background:linear-gradient(135deg,#fff,#fbfdff 56%,#f4f8ff)}.profile-hero:before{content:"";width:280px;height:280px;position:absolute;right:-110px;top:-150px;border-radius:50%;background:#4784f114;pointer-events:none}.profile-avatar-block{position:relative;z-index:1;display:grid;justify-items:center;gap:12px}.large-avatar{width:92px;height:92px;position:relative;display:grid;place-items:center;overflow:visible;border-radius:28px;color:#fff;background:var(--blue);box-shadow:0 14px 30px #2369f538}.large-avatar>img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.large-avatar>button{width:28px;height:28px;position:absolute;right:-5px;bottom:-5px;display:grid;place-items:center;border:3px solid #fff;border-radius:50%;color:#fff;background:var(--orange);cursor:pointer}.large-avatar.small{width:60px;height:60px;border-radius:18px}:is(.large-avatar,.learning-friend-avatar,.profile-chip .avatar,.sidebar-profile-card .avatar,.profile-photo-preview,.friend-invite-person .surface-icon):has(>img){border-radius:50%;background:transparent;box-shadow:none}.profile-level-badge{min-height:28px;display:inline-flex;align-items:center;gap:5px;padding:0 10px;border:1px solid #d8e5fb;border-radius:999px;color:#2f65bd;background:#f2f7ff;font-size:11px;font-weight:850;box-shadow:0 6px 16px #2d65bd14}.profile-level-badge svg{color:#f0a223}.profile-identity{min-width:0;position:relative;z-index:1}.profile-identity>div:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.profile-identity h2{margin:0;color:#162c4b;font-size:clamp(28px,2.4vw,34px);line-height:1.15;letter-spacing:-.02em}.profile-identity .status-pill{min-height:28px;padding-inline:11px;font-size:11px}.profile-identity>p{display:flex;align-items:center;gap:9px;margin:10px 0 19px;color:#6b7d96;font-size:12px}.profile-identity>p i{width:4px;height:4px;border-radius:50%;background:#b3bfd0}.profile-numbers{display:flex;flex-wrap:wrap;gap:10px}.profile-numbers>span{min-width:110px;display:grid;gap:2px;padding:10px 13px;border:1px solid #e4eaf3;border-radius:13px;background:#ffffffc7}.profile-numbers strong{color:#233b5c;font-size:17px;line-height:1.25}.profile-numbers small{color:#7a899e;font-size:10px}.level-card{position:relative;z-index:1;padding:18px;border:1px solid #d8e6fb;border-radius:20px;background:linear-gradient(145deg,#f5f9ff,#edf5ff);box-shadow:0 14px 32px #3568b51c}.level-card-heading{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px}.level-card-heading>span{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(145deg,#4d8bf4,#2865d5);box-shadow:0 8px 18px #2665d533}.level-card-heading small,.level-card-heading strong{display:block}.level-card-heading small{color:#72829a;font-size:10px;font-weight:760}.level-card-heading strong{display:flex;align-items:center;gap:5px;margin-top:3px;color:#203858;font-size:15px}.level-card-heading b{color:#2e6fd8;font-size:20px;font-weight:880;font-variant-numeric:tabular-nums}.level-progress-copy{display:flex;justify-content:space-between;gap:12px;margin-top:16px;color:#718198;font-size:10px}.level-progress-copy strong{color:#315d9d;font-size:10px}.level-progress-track{height:10px;margin-top:8px;overflow:hidden;border-radius:999px;background:#dbe7f7;box-shadow:inset 0 1px 2px #315c9717}.level-progress-track>span{width:var(--progress);height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#2f79ec,#63b5ff);box-shadow:0 0 12px #2f79ec3d;transition:width .32s ease}.level-points-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.level-points-grid>div{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:10px;border:1px solid rgba(204,220,242,.85);border-radius:14px;background:#ffffffbf}.level-points-grid .surface-icon{width:34px;height:34px;border-radius:11px}.level-points-grid small,.level-points-grid strong{display:block}.level-points-grid small{overflow:hidden;color:#75849a;font-size:9px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.level-points-grid strong{margin-top:2px;color:#233b5d;font-size:17px;line-height:1.15;font-variant-numeric:tabular-nums}.level-points-grid em{margin-left:2px;color:#72829a;font-size:9px;font-style:normal}.level-card-footer{min-height:29px;display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:8px;color:#75849a;font-size:9px}.level-card-footer .text-button{flex:0 0 auto;padding:4px 0;font-size:10px}.learning-profile-panel{order:10;scroll-margin-top:18px;overflow:hidden;padding:24px;border-color:#dce6f4;background:radial-gradient(circle at 94% 5%,rgba(80,131,222,.09),transparent 28%),linear-gradient(145deg,#fff,#fbfdff)}.learning-profile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.learning-profile-title{min-width:0;display:flex;align-items:center;gap:13px}.learning-profile-mark{width:48px;height:48px;flex:0 0 auto;display:grid;place-items:center;border-radius:16px;color:#fff;background:linear-gradient(145deg,#4b86eb,#275fbf);box-shadow:0 10px 22px #275fbf33}.learning-profile-title h2{margin:4px 0 6px;color:#172f50;font-size:21px;letter-spacing:-.015em}.learning-profile-title>div>p:last-child{max-width:72ch;margin:0;color:#667892;font-size:10px;line-height:1.65}.learning-profile-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.72fr);align-items:start;gap:16px;margin-top:16px}.learning-profile-topics,.learning-profile-insights>section{border:1px solid #e0e7f0;border-radius:18px;background:#ffffffeb}.learning-profile-topics{min-width:0;padding:18px}.learning-profile-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.learning-profile-section-heading h3{margin:4px 0 0;color:#213a5b;font-size:16px}.learning-profile-section-heading>small{color:#8290a4;font-size:8px;white-space:nowrap}.learning-profile-topic-scroll{min-width:0;min-height:0;max-height:clamp(280px,50vh,480px);max-height:clamp(280px,50dvh,480px);margin-top:14px;padding:2px 5px 2px 2px;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#aab9cf transparent;border-radius:12px}.learning-profile-topic-scroll:focus-visible{outline:2px solid #3472ce;outline-offset:-2px}.learning-profile-topic-scroll::-webkit-scrollbar{width:8px}.learning-profile-topic-scroll::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:#aab9cf;background-clip:padding-box}.learning-profile-topic-scroll::-webkit-scrollbar-track{background:transparent}.learning-profile-topic-list{display:grid;align-content:start;gap:9px}.learning-profile-topic-scroll .learning-profile-topic{scroll-margin-block:8px}.learning-profile-topic h4,.learning-profile-evidence strong{overflow-wrap:anywhere}.learning-profile-topic{overflow:hidden;padding:13px 14px 0;border:1px solid #e2e8f0;border-radius:15px;background:#fbfcfe}.learning-profile-topic.is-steady{--profile-accent: #31875a;--profile-soft: #eaf7ef}.learning-profile-topic.is-developing{--profile-accent: #3472ce;--profile-soft: #edf4ff}.learning-profile-topic.is-needs-practice{--profile-accent: #bd6b1c;--profile-soft: #fff3e5}.learning-profile-topic.is-observed{--profile-accent: #718097;--profile-soft: #f0f3f7}.learning-profile-topic-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px}.learning-profile-state-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:var(--profile-accent);background:var(--profile-soft)}.learning-profile-topic h4{margin:0;color:#263d5d;font-size:12px}.learning-profile-topic-row p{margin:3px 0 0;color:#8290a3;font-size:9px;line-height:1.4}.learning-profile-state{padding:5px 8px;border-radius:999px;color:var(--profile-accent);background:var(--profile-soft);font-size:9px;font-weight:820;white-space:nowrap}.learning-profile-confidence{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:11px 0 9px 44px}.learning-profile-confidence>span{color:var(--profile-accent);font-size:9px;font-weight:800}.learning-profile-confidence>small{color:#8a96a8;font-size:8px}.learning-profile-evidence{margin-inline:-14px;border-top:1px solid #e8edf3}.learning-profile-evidence-toggle{width:100%;min-height:37px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 14px;border:0;color:#60738e;background:#f8fafc;cursor:pointer;font:inherit;font-size:9px;font-weight:780}.learning-profile-evidence-toggle:hover{color:#3c5f8f;background:#f3f7fc}.learning-profile-evidence-toggle:focus-visible{position:relative;z-index:1;outline:3px solid rgba(52,114,206,.2);outline-offset:-3px}.learning-profile-evidence-toggle svg{transition:transform .24s cubic-bezier(.22,1,.36,1)}.learning-profile-evidence.is-open .learning-profile-evidence-toggle svg{transform:rotate(90deg)}.learning-profile-evidence-panel{height:0;overflow:hidden;visibility:hidden}.learning-profile-evidence ul{display:grid;gap:8px;margin:0;padding:12px 14px 14px;list-style:none}.learning-profile-evidence li{display:grid;grid-template-columns:14px minmax(0,1fr);gap:8px}.learning-profile-evidence li>span{width:12px;height:12px;display:grid;place-items:center;margin-top:2px;border-radius:50%;background:#e5eaf1}.learning-profile-evidence li>span i{width:5px;height:5px;border-radius:50%;background:#8b97a9}.learning-profile-evidence li>span.is-supports{background:#ddf2e6}.learning-profile-evidence li>span.is-supports i{background:#379563}.learning-profile-evidence li>span.is-needs-review{background:#ffead5}.learning-profile-evidence li>span.is-needs-review i{background:#c47220}.learning-profile-evidence strong,.learning-profile-evidence small{display:block}.learning-profile-evidence strong{color:#4d5f78;font-size:9px;font-weight:680;line-height:1.5}.learning-profile-evidence small{margin-top:2px;color:#96a0af;font-size:8px}.learning-profile-insights{display:grid;align-content:start;gap:10px}.learning-profile-privacy{margin:0;padding-inline:8px}.learning-profile-insights>section{padding:16px}.learning-profile-next{position:relative;overflow:hidden;background:linear-gradient(145deg,#fffaf2,#fff6e7)!important;border-color:#f1dfc6!important}.learning-profile-next>span{width:38px;height:38px;display:grid;place-items:center;margin-bottom:12px;border-radius:12px;color:#ad641c;background:#ffe9c8}.learning-profile-next h3{margin:4px 0 7px;color:#5a4124;font-size:15px}.learning-profile-next>p:last-of-type{margin:0;color:#765e43;font-size:10px;line-height:1.65}.learning-profile-next .primary-button{width:100%;justify-content:center;margin-top:14px}.learning-profile-sources>div{display:flex;align-items:center;gap:7px;color:#315f9d;font-size:11px}.learning-profile-sources ul{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0 0;padding:0;list-style:none}.learning-profile-sources li{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:9px;color:#526985;background:#f1f5fa;font-size:8px;font-weight:760}.learning-profile-sources li svg{color:#3e9365}.learning-profile-boundary{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;color:#356b53;background:#f4faf7!important;border-color:#d9e9e0!important}.learning-profile-boundary>svg{margin-top:1px}.learning-profile-boundary strong{display:block;color:#315d49;font-size:10px}.learning-profile-boundary p{margin:4px 0 0;color:#668174;font-size:8px;line-height:1.6}.learning-profile-loading{min-height:260px;display:flex;align-items:center;justify-content:center;gap:6px;color:#75849a}.learning-profile-loading>span{width:8px;height:8px;border-radius:50%;background:#5388df;animation:learning-profile-bounce .9s ease-in-out infinite alternate}.learning-profile-loading>span:nth-child(2){animation-delay:.16s}.learning-profile-loading>span:nth-child(3){animation-delay:.32s}.learning-profile-loading p{margin-left:6px;font-size:10px}@keyframes learning-profile-bounce{to{opacity:.35;transform:translateY(-5px)}}.learning-profile-error{min-height:150px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:18px;padding:18px;border:1px solid #f1d8d6;border-radius:16px;color:#ad514b;background:#fff7f6}.learning-profile-error strong{font-size:11px}.learning-profile-error p{margin:4px 0 0;color:#8e6865;font-size:9px}.learning-profile-empty{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:14px;padding:22px;border:1px dashed #ccd9eb;border-radius:15px;text-align:center;color:#6d82a0;background:#f8fbff}.learning-profile-empty h3{margin:10px 0 5px;color:#38577e;font-size:14px}.learning-profile-empty p{max-width:42ch;margin:0;font-size:9px;line-height:1.6}.learning-profile-empty .primary-button{margin-top:14px}.daily-goal-settings{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.7fr);gap:28px;padding:22px}.daily-goal-settings-intro{display:grid;grid-template-columns:44px minmax(0,1fr);align-content:start;gap:0 12px}.daily-goal-settings-intro>.surface-icon{grid-row:1 / span 2}.daily-goal-settings-intro h2{margin:3px 0 7px;font-size:18px}.daily-goal-settings-intro p:last-child{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.daily-goal-settings-intro>strong{grid-column:2;justify-self:start;margin-top:13px;padding:6px 10px;border-radius:999px;color:#a76600;background:#fff2d8;font-size:10px}.daily-goal-settings form{display:grid;grid-template-columns:minmax(0,1fr) 190px auto;grid-template-areas:"presets custom save" ". help help";align-items:end;gap:6px 14px}.daily-goal-settings fieldset{grid-area:presets;min-width:0;padding:0;border:0;margin:0}.daily-goal-custom{grid-area:custom}.daily-goal-settings legend,.daily-goal-custom>label{display:block;margin-bottom:8px;color:#4e6078;font-size:10px;font-weight:800}.daily-goal-presets{display:flex;flex-wrap:wrap;gap:8px}.daily-goal-presets button{min-width:58px;min-height:46px;padding:6px 10px;border:1px solid #dce3ed;border-radius:12px;color:#53647b;background:#fff;font-size:15px;font-weight:850;cursor:pointer;transition:border-color .18s ease,color .18s ease,background-color .18s ease,box-shadow .18s ease}.daily-goal-presets button small{display:block;margin-top:2px;color:#8591a2;font-size:8px;font-weight:700}.daily-goal-presets button:hover{border-color:#aebfe1}.daily-goal-presets button.is-selected{border-color:#6f98f2;color:var(--blue);background:#f1f6ff;box-shadow:0 0 0 3px #3068e217}.daily-goal-presets button.is-selected small{color:#5f7fbf}.daily-goal-custom>div{height:46px;display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid #dce3ed;border-radius:12px;background:#fff;overflow:hidden}.daily-goal-custom input{width:100%;height:100%;box-sizing:border-box;border:0;padding:0 10px;color:var(--ink);background:transparent;outline:none;font:inherit;font-weight:800}.daily-goal-custom>div:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #3068e21a}.daily-goal-custom>div>span{padding-right:10px;color:var(--muted);font-size:9px}.daily-goal-help{grid-area:help;display:block;color:var(--muted);font-size:8px;line-height:1.45}.daily-goal-settings form>.primary-button{grid-area:save;min-width:96px;min-height:46px;margin:0;justify-content:center;white-space:nowrap}.daily-goal-settings form>.form-error{grid-column:1 / -1;margin:-4px 0 0}.profile-dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:15px;margin-top:16px}.progress-summary,.weekly-chart,.profile-dashboard-grid>section{padding:20px}.profile-progress-list{display:grid;gap:15px;margin-top:18px}.profile-progress-list>div{display:grid;grid-template-columns:44px 1fr;gap:11px}.profile-progress-list strong{font-size:12px}.profile-progress-list p{margin:3px 0 8px;color:var(--muted);font-size:9px}.bar-chart{height:170px;display:grid;grid-template-columns:repeat(7,1fr);align-items:end;gap:8px;margin-top:18px;padding:0 6px 8px;border-bottom:1px solid var(--line)}.bar-chart>div{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px}.bar-chart span{width:min(28px,72%);height:var(--bar-height);min-height:14px;display:block;border-radius:8px 8px 3px 3px;background:var(--blue)}.bar-chart small{color:var(--muted);font-size:8px}.chart-note{display:flex;gap:8px;margin-top:14px;color:#567050}.chart-note svg{flex:0 0 auto;color:var(--green)}.chart-note p{margin:0;font-size:9px;line-height:1.5}.chart-note strong{display:block;color:#3d6036}.profile-page>section:not(.profile-hero){margin-top:28px}.profile-tools-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin-top:14px}.profile-tools-grid>button{min-height:140px;position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:16px;border:1px solid var(--line);text-align:left;color:inherit;cursor:pointer}.profile-tools-grid>button>strong{margin-top:13px;font-size:12px}.profile-tools-grid>button>span:not(.surface-icon){margin-top:5px;color:var(--muted);font-size:9px}.profile-tools-grid>button>svg{position:absolute;right:13px;bottom:13px;color:#91a0b5}.social-grid{grid-template-columns:1fr 1fr}.social-actions{display:grid;gap:8px;margin-top:14px}.social-actions>button{min-height:68px;display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;text-align:left;color:#40516c;background:#fbfcfe;cursor:pointer}.social-actions>button>svg:first-child{color:var(--blue)}.social-actions strong,.social-actions small{display:block}.social-actions strong{font-size:11px}.social-actions small{margin-top:3px;color:var(--muted);font-size:8px}.profile-edit-dialog{width:min(500px,100%)}.profile-edit-fields{display:grid;gap:13px;margin-top:20px}.profile-edit-fields>label{display:grid;gap:6px;color:#5f6e85;font-size:10px;font-weight:740}.profile-edit-fields input,.profile-edit-fields select{width:100%;min-height:44px;padding:0 11px;border:1px solid #dce3ee;border-radius:11px;outline:0;color:var(--ink);background:#fff;font-size:11px}.profile-edit-fields input:focus,.profile-edit-fields select:focus{border-color:#93b7f6;box-shadow:0 0 0 3px #2369f51a}.avatar-presets{display:flex;align-items:center;gap:9px}.avatar-presets>button{width:48px;height:48px;display:grid;place-items:center;overflow:hidden;padding:0;border:2px solid #e1e6ee;border-radius:14px;color:#6f7d92;background:#f4f6f9;cursor:pointer}.avatar-presets>button.is-selected{border-color:var(--blue);box-shadow:0 0 0 3px #2369f51c}.avatar-presets img{width:100%;height:100%;object-fit:cover}.settings-page>.inner-page-heading{min-height:120px}.settings-stack{max-width:830px;display:grid;gap:14px}.settings-group{padding:18px 20px}.settings-group h2{margin:0 0 10px;font-size:17px}.setting-row{min-height:68px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;border-top:1px solid var(--line)}.setting-row strong,.setting-row small{display:block}.setting-row strong{font-size:11px}.setting-row small{margin-top:4px;color:var(--muted);font-size:9px}.switch{width:44px;height:25px;padding:3px;border:0;border-radius:999px;background:#cdd4df;cursor:pointer;transition:background .18s ease}.switch span{width:19px;height:19px;display:block;border-radius:50%;background:#fff;box-shadow:0 2px 5px #20314d33;transition:transform .18s ease}.switch.is-on{background:var(--blue)}.switch.is-on span{transform:translate(19px)}.setting-link{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:10px;color:#7f8ba0;background:#f2f4f8;cursor:pointer}.logout-button{min-height:50px;border:1px solid #f0d1cf;border-radius:14px;color:#bd514d;background:#fff5f4}.settings-dialog{width:min(540px,100%)}.settings-dialog .detail-list{grid-template-columns:1fr}.settings-dialog .detail-list>div{align-items:flex-start;padding:12px}.settings-dialog .detail-list strong{margin-bottom:3px;font-size:10px}.settings-dialog .detail-list span{font-size:9px}.settings-dialog .soft-button.full{margin-top:18px}.password-fields{display:grid;gap:12px;margin-top:17px}.password-fields label{display:grid;gap:6px;color:#52647d;font-size:10px;font-weight:760}.password-fields input{width:100%;min-height:43px;box-sizing:border-box;border:1px solid #dbe2ec;border-radius:11px;padding:0 12px;color:var(--ink);background:#fbfcfe;outline:none}.password-fields input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #3068e21a}.password-fields .form-error{margin:0}.settings-faq-list{display:grid;gap:8px;margin-top:17px}.settings-faq-list details{overflow:hidden;border:1px solid #e1e6ee;border-radius:12px;background:#fafbfd}.settings-faq-list summary{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;color:#344862;cursor:pointer;font-size:10px;font-weight:780;list-style:none}.settings-faq-list summary::-webkit-details-marker{display:none}.settings-faq-list summary:after{content:"+";flex:0 0 auto;color:var(--blue);font-size:16px}.settings-faq-list details[open] summary:after{content:"−"}.settings-faq-list details p{margin:0;padding:0 12px 12px;color:var(--muted);font-size:9px;line-height:1.6}.settings-faq-list summary:focus-visible,details.help-question summary:focus-visible{outline:3px solid rgba(35,105,245,.22);outline-offset:-3px}.lesson-page>.inner-page-heading{min-height:150px;margin-bottom:18px;padding:25px 28px;border:1px solid #dbe7f7;border-radius:24px;background:radial-gradient(circle at 88% 18%,rgba(99,166,255,.18),transparent 26%),linear-gradient(145deg,#f8fbff,#f1f6ff);box-shadow:0 16px 40px #244c8412}.lesson-page>.inner-page-heading h1{max-width:18ch;text-wrap:balance}.lesson-page>.inner-page-heading>div:first-child>p:last-child{max-width:72ch;line-height:1.65}.lesson-workspace{display:grid;grid-template-columns:210px minmax(620px,1fr) 210px;align-items:start;gap:16px}.lesson-outline{position:sticky;top:18px;align-self:start;padding:18px;border-radius:20px}.lesson-outline>div:first-child{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.lesson-outline>div:first-child strong{color:var(--blue);font-variant-numeric:tabular-nums}.lesson-outline .inline-progress{margin:11px 0 18px}.lesson-outline nav{display:grid;gap:7px}.lesson-outline nav button{width:100%;min-height:62px;display:grid;grid-template-columns:32px 1fr;align-items:center;gap:10px;padding:9px;border:1px solid transparent;border-radius:13px;text-align:left;color:#64728a;background:transparent;cursor:pointer;transition:color .16s ease,background .16s ease,border-color .16s ease,transform .16s ease}.lesson-outline nav button:hover{color:#355271;background:#f6f9fd;transform:translate(2px)}.lesson-outline nav button.is-active{color:var(--blue);border-color:#d7e6ff;background:linear-gradient(135deg,#eff5ff,#e7f0ff);box-shadow:inset 3px 0 0 var(--blue)}.lesson-outline nav button>span:first-child{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#edf1f6;font-size:10px;font-weight:800}.lesson-outline nav button.is-active>span:first-child{color:#fff;background:var(--blue);box-shadow:0 6px 14px #2369f533}.lesson-outline nav strong,.lesson-outline nav small{display:block}.lesson-outline nav strong{font-size:12px}.lesson-outline nav small{margin-top:4px;color:#8794a8;font-size:10px}.lesson-content{min-height:680px;padding:28px;border-radius:22px}.lesson-content-head{display:flex;align-items:center;gap:13px;padding-bottom:18px;border-bottom:1px solid var(--line)}.lesson-content-head>div{min-width:0}.lesson-content-head h2{margin:5px 0 0;font-size:25px;text-wrap:balance}.lesson-section-status{margin-left:auto;padding:7px 11px;border-radius:999px;color:#526985;background:#f1f5fa;font-size:10px;font-weight:760;white-space:nowrap}.lesson-lead{max-width:72ch;margin:20px 0;color:#52647d;font-size:14px;line-height:1.75}.content-label{display:block;color:var(--blue);font-size:10px;font-weight:820;letter-spacing:.08em;text-transform:uppercase}.lesson-scenario-stack,.lesson-knowledge-stack,.lesson-practice-stack,.lesson-reflection-stack{display:grid;gap:16px}.mission-brief-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:20px;border:1px solid #d8e5f8;border-radius:18px;background:linear-gradient(145deg,#f7faff,#edf4ff)}.mission-role{min-height:136px;display:flex;flex-direction:column;justify-content:space-between;padding:16px;border-radius:15px;color:#fff;background:linear-gradient(150deg,#276ef1,#174cb3);box-shadow:0 14px 28px #2369f533}.mission-role span{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:760;opacity:.9}.mission-role strong{font-size:19px;line-height:1.3}.mission-brief-card>div:last-child{display:grid;align-content:center;gap:7px}.mission-brief-card p{margin:0 0 7px;color:#5a6c84;font-size:12px;line-height:1.7}.mission-brief-card h3{margin:0;color:#172b4d;font-size:17px;line-height:1.55}.scenario-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.scenario-detail-grid>section{padding:17px;border:1px solid #e1e7f0;border-radius:16px;background:#fbfcfe}.scenario-detail-grid h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:14px}.scenario-detail-grid h3 svg{color:var(--orange)}.scenario-detail-grid ul{display:grid;gap:9px;padding:0;margin:0;list-style:none}.scenario-detail-grid li{position:relative;padding-left:16px;color:#5b6a7f;font-size:11px;line-height:1.6}.scenario-detail-grid li:before{content:"";width:5px;height:5px;position:absolute;left:1px;top:.62em;border-radius:50%;background:#8ca7ca}.scenario-detail-grid .success-panel{border-color:#d6eadf;background:#f5fbf7}.scenario-detail-grid .success-panel h3 svg,.scenario-detail-grid .success-panel li svg{color:var(--green)}.scenario-detail-grid .success-panel li{display:grid;grid-template-columns:17px 1fr;gap:7px;padding-left:0}.scenario-detail-grid .success-panel li:before{display:none}.sensor-demo{min-height:190px;display:grid;grid-template-columns:1fr 92px 1fr;align-items:center;gap:18px;padding:21px;border-radius:18px;background:#edf4ff}.sensor-demo>div{min-height:112px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:12px;border:1px solid #d6e4fa;border-radius:15px;text-align:center;background:#fff}.sensor-demo span{color:var(--muted);font-size:10px}.sensor-demo strong{margin:9px 0 5px;font-size:14px;line-height:1.45}.sensor-demo small{color:var(--blue);font-size:10px;font-weight:760}.robot-core{width:78px;height:78px;display:grid;place-items:center;border:7px solid #fff;border-radius:24px;color:#fff;background:var(--blue);box-shadow:0 14px 28px #2369f538}.lesson-track-demo.tone-purple{background:#f4f0ff}.lesson-track-demo.tone-purple>div{border-color:#ddd3fa}.lesson-track-demo.tone-purple small{color:#7654cf}.lesson-track-demo.tone-purple .robot-core{background:#7654cf;box-shadow:0 14px 28px #7654cf33}.lesson-track-demo.tone-green{background:#eef9f2}.lesson-track-demo.tone-green>div{border-color:#cfe8d7}.lesson-track-demo.tone-green small{color:var(--green)}.lesson-track-demo.tone-green .robot-core{background:var(--green);box-shadow:0 14px 28px #30905733}.lesson-track-demo.tone-orange{background:#fff6e9}.lesson-track-demo.tone-orange>div{border-color:#f0ddbd}.lesson-track-demo.tone-orange small{color:#bd6a12}.lesson-track-demo.tone-orange .robot-core{background:#d68125;box-shadow:0 14px 28px #d6812533}.lesson-track-demo.tone-cyan{background:#eaf8fa}.lesson-track-demo.tone-cyan>div{border-color:#c7e7eb}.lesson-track-demo.tone-cyan small{color:#137e90}.lesson-track-demo.tone-cyan .robot-core{background:#168a9d;box-shadow:0 14px 28px #168a9d33}.lesson-track-demo.tone-pink{background:#fff0f7}.lesson-track-demo.tone-pink>div{border-color:#efd2e1}.lesson-track-demo.tone-pink small{color:#a74478}.lesson-track-demo.tone-pink .robot-core{background:#b14f83;box-shadow:0 14px 28px #b14f8333}.lesson-warmup{display:grid;gap:13px;padding:17px;border:1px solid #f0ddbb;border-radius:16px;background:#fff9ed}.lesson-warmup>div{display:flex;align-items:flex-start;gap:9px}.lesson-warmup>div svg{flex:0 0 auto;color:var(--orange)}.lesson-warmup>div span{color:#736344;font-size:11px;line-height:1.55}.lesson-warmup>div strong{display:block;color:#5c4419;font-size:13px}.lesson-warmup ol{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:0;margin:0;list-style:none;counter-reset:warmup}.lesson-warmup li{min-height:58px;display:grid;grid-template-columns:25px 1fr;align-items:center;gap:8px;padding:9px 11px;border-radius:12px;color:#655b49;background:#fff;font-size:11px;line-height:1.5;counter-increment:warmup}.lesson-warmup li:before{content:counter(warmup);width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:#fff;background:var(--orange);font-size:10px;font-weight:800}.knowledge-card-list{display:grid;gap:10px}.knowledge-card{overflow:hidden;border:1px solid #dfe7f2;border-radius:16px;background:#fff;transition:border-color .16s ease,box-shadow .16s ease}.knowledge-card.is-open{border-color:#bcd3f7;box-shadow:0 12px 28px #264b8014}.knowledge-card>button{width:100%;min-height:70px;display:grid;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:12px 15px;border:0;text-align:left;color:inherit;background:transparent;cursor:pointer}.knowledge-card>button>span:first-child{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:var(--blue);background:var(--blue-soft);font-size:12px;font-weight:850}.knowledge-card>button small,.knowledge-card>button strong{display:block}.knowledge-card>button small{margin-bottom:4px;color:#74849b;font-size:9px;font-weight:760}.knowledge-card>button strong{font-size:15px}.knowledge-card>button>svg{color:#8ca0ba;transition:transform .16s ease}.knowledge-card.is-open>button>svg{transform:rotate(90deg)}.knowledge-card-body{display:grid;gap:13px;padding:0 16px 16px 69px}.knowledge-card-body>p{margin:0;color:#53647a;font-size:12px;line-height:1.7}.knowledge-card-body>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.knowledge-card-body>div>span{display:grid;grid-template-columns:19px 1fr;align-content:start;gap:3px 7px;padding:12px;border-radius:12px;background:#f5f8fd}.knowledge-card-body>div svg{grid-row:1 / span 2;color:var(--blue)}.knowledge-card-body>div strong{font-size:10px}.knowledge-card-body>div p{margin:0;color:#68788e;font-size:10px;line-height:1.55}.knowledge-card-body>aside{display:grid;grid-template-columns:19px 1fr;gap:8px;padding:11px 12px;border-radius:12px;color:#735b32;background:var(--orange-soft)}.knowledge-card-body>aside svg{color:var(--orange)}.knowledge-card-body>aside p{margin:0;font-size:10px;line-height:1.55}.knowledge-card-body>aside strong{display:block;margin-bottom:2px}.knowledge-example{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.knowledge-example pre{min-height:245px;margin:0;padding:22px;border-radius:16px;color:#cfe0ff;background:#142542;font-size:12px;line-height:1.8}.knowledge-example code{white-space:pre-wrap;overflow-wrap:anywhere}.knowledge-example pre span{color:#65a0ff}.knowledge-example>div{display:flex;align-items:flex-start;gap:9px;padding:16px;border-radius:15px;color:#6b5a36;background:var(--orange-soft)}.knowledge-example>div svg{flex:0 0 auto;color:var(--orange)}.knowledge-example>div p{margin:0;font-size:10px;line-height:1.65}.knowledge-example>div strong{display:block;margin-bottom:4px}.practice-brief-card{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;padding:18px;border:1px solid #d7e4f8;border-radius:17px;background:linear-gradient(145deg,#f6f9ff,#edf4ff)}.practice-brief-card h3{margin:5px 0 7px;font-size:18px}.practice-brief-card p{margin:0;color:#5d6d82;font-size:12px;line-height:1.65}.practice-brief-card>div>strong{display:flex;align-items:flex-start;gap:7px;margin-top:10px;color:#284d79;font-size:10px;line-height:1.55}.practice-brief-card>div>strong svg{flex:0 0 auto;color:var(--blue)}.practice-step-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;counter-reset:step}.practice-step-grid article{min-height:142px;display:grid;grid-template-columns:36px minmax(0,1fr);gap:11px;padding:15px;border:1px solid #e1e7ef;border-radius:15px;background:#fff}.practice-step-grid article>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,#3b7cf4,#245ec8);font-size:12px;font-weight:850}.practice-step-grid small{color:var(--blue);font-size:9px;font-weight:760}.practice-step-grid h3{margin:4px 0 6px;font-size:14px}.practice-step-grid p{margin:0;color:#65758b;font-size:10px;line-height:1.55}.practice-step-grid strong{display:inline-block;margin-top:9px;padding:4px 7px;border-radius:7px;color:#46627f;background:#eef3f8;font-size:9px}.practice-check-panel{display:grid;gap:11px;padding:17px;border:1px solid #dbe9e1;border-radius:17px;background:#f7fcf9}.practice-check-panel>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#53705e;font-size:10px}.practice-check-panel>div:first-child>span:first-child{display:flex;align-items:center;gap:7px;color:#244e34;font-size:13px}.practice-check-panel>div:first-child svg{color:var(--green)}.practice-check-progress{height:7px;overflow:hidden;border-radius:999px;background:#dfebe3}.practice-check-progress i{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#41a66a,#65c98c);transition:width .18s ease}.practice-check-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.practice-check-list button{min-height:58px;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;padding:9px 11px;border:1px solid #dfe9e2;border-radius:12px;text-align:left;color:#586d60;background:#fff;cursor:pointer;font-size:10px;line-height:1.5;transition:border-color .16s ease,color .16s ease,background .16s ease}.practice-check-list button>span{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;color:#718279;background:#edf2ef;font-size:9px;font-weight:800}.practice-check-list button.is-checked{border-color:#8ecba7;color:#28533a;background:#eef9f2}.practice-check-list button.is-checked>span{color:#fff;background:var(--green)}.practice-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.practice-review-grid>section{padding:15px;border:1px solid #e2e7ee;border-radius:15px;background:#fafbfd}.practice-review-grid h3{margin:0 0 9px;font-size:13px}.practice-review-grid ul{display:grid;gap:7px;padding-left:18px;margin:0;color:#617186;font-size:10px;line-height:1.5}.practice-review-grid>section:last-child{display:flex;align-items:flex-start;gap:9px;color:#685126;border-color:#f0dfbb;background:#fff9ed}.practice-review-grid>section:last-child svg{flex:0 0 auto;color:var(--orange)}.practice-review-grid>section:last-child p{margin:5px 0 0;font-size:10px;line-height:1.6}.lesson-lab-launch{justify-self:start}.reflection-guide{display:grid;gap:13px;padding:17px;border:1px solid #eedcaf;border-radius:17px;background:#fff9ec}.reflection-guide>div:first-child{display:flex;align-items:flex-start;gap:9px;color:#6f5b35;font-size:11px;line-height:1.55}.reflection-guide>div:first-child svg{flex:0 0 auto;color:var(--orange)}.reflection-guide>div:first-child strong{display:block;color:#5d4315;font-size:13px}.reflection-guide ol{display:grid;gap:7px;padding-left:21px;margin:0;color:#625d53;font-size:11px;line-height:1.55}.reflection-guide>div:last-child{display:flex;flex-wrap:wrap;gap:7px}.reflection-guide>div:last-child button{min-height:34px;padding:6px 10px;border:1px solid #ead9b7;border-radius:999px;color:#705a32;background:#fff;cursor:pointer;font-size:9px}.reflection-box{display:grid;gap:11px;padding:20px;border-radius:17px;background:#fff8e9}.reflection-box label{color:#443819;font-size:14px;font-weight:760;line-height:1.55}.reflection-box textarea{min-height:190px;padding:14px;border:1px solid #eadab8;border-radius:12px;background:#fff;font-size:14px;line-height:1.65;resize:vertical}.reflection-box>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.reflection-box>div small{color:#8b7a57;font-size:9px}.lesson-navigation{display:flex;justify-content:space-between;margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.lesson-assistant{position:sticky;top:18px;align-self:start;padding:19px;border-radius:20px;text-align:center}.lesson-assistant img{width:105px;height:105px;object-fit:contain}.lesson-assistant h3{margin:8px 0 7px;font-size:16px}.lesson-assistant p{min-height:68px;margin:0 0 15px;color:var(--muted);font-size:11px;line-height:1.65}.lesson-outline nav button:focus-visible,.knowledge-card>button:focus-visible,.practice-check-list button:focus-visible,.reflection-guide>div:last-child button:focus-visible{outline:3px solid rgba(35,105,245,.23);outline-offset:2px}.lesson-page>.inner-page-heading{min-height:0;padding:24px 26px;border:1px solid #d6dde7;border-top:4px solid #214f7b;border-radius:22px;background:#fff;box-shadow:none}.lesson-page>.inner-page-heading .status-pill{border-radius:999px;color:#29465f;background:#eef2f5}.lesson-page>.inner-page-heading .eyebrow svg{display:none}.lesson-outline,.lesson-content,.lesson-assistant{border-color:#d9dfe7;border-radius:22px;box-shadow:none}.lesson-outline nav button{min-height:58px;border-radius:14px;font-size:13px;transition:color .14s ease,background .14s ease,border-color .14s ease}.lesson-outline nav button:hover{transform:none}.lesson-outline nav button.is-active{color:#183e62;border-color:#cbd6e2;border-left:3px solid #214f7b;background:#f2f5f7;box-shadow:none}.lesson-outline nav button>span:first-child,.lesson-outline nav button.is-active>span:first-child{border-radius:10px;color:#334e68;background:#e4e9ee;box-shadow:none}.lesson-outline nav strong{font-size:13px}.lesson-outline nav small{font-size:11px}.lesson-content{padding:28px 30px}.lesson-content-head>.surface-icon{display:none}.lesson-content-head h2{font-family:inherit;font-size:26px;letter-spacing:-.02em}.lesson-section-status{border:1px solid #d5dce4;border-radius:999px;color:#516170;background:#fff;font-size:11px}.lesson-lead{color:#435466;font-size:15px}.content-label{color:#526777;font-size:11px;letter-spacing:.04em}.lesson-scenario-stack,.lesson-knowledge-stack,.lesson-practice-stack,.lesson-reflection-stack{gap:20px}.lesson-case-file{overflow:hidden;border:1px solid #cfd7e0;border-radius:18px;background:#fff}.lesson-case-file>header{padding:24px 26px;border-bottom:1px solid #d8dee6}.case-file-meta{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px;color:#5c6b78;font-size:11px;font-weight:750;letter-spacing:.06em}.lesson-case-file h3{margin:0 0 12px;color:#182b3b;font-family:inherit;font-size:24px;letter-spacing:-.025em}.lesson-case-file header>p{max-width:76ch;margin:0;color:#405263;font-size:14px;line-height:1.8}.lesson-case-file dl{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(280px,1.3fr);gap:0;overflow:hidden;margin:22px 0 0;border:1px solid #d8dee6;border-radius:12px}.lesson-case-file dl>div{display:grid;grid-template-columns:86px 1fr;min-width:0}.lesson-case-file dl>div+div{border-left:1px solid #d8dee6}.lesson-case-file dt,.lesson-case-file dd{margin:0;padding:10px 12px;font-size:12px;line-height:1.55}.lesson-case-file dt{color:#52616e;background:#f2f4f6;font-weight:750}.lesson-case-file dd{color:#1f3446;font-weight:650}.case-evidence-table{display:grid;overflow:hidden;margin:0 26px;border:1px solid #d8dee6;border-top:0;border-radius:0 0 12px 12px}.case-evidence-table [role=row]{display:grid;grid-template-columns:126px minmax(0,1fr) 88px;align-items:stretch}.case-evidence-table [role=row]+[role=row]{border-top:1px solid #d8dee6}.case-evidence-table [role=row]:first-child{color:#435462;background:#edf1f4}.case-evidence-table [role=columnheader],.case-evidence-table [role=cell]{margin:0;padding:10px 12px;font-size:12px;line-height:1.55}.case-evidence-table [role=columnheader]+[role=columnheader],.case-evidence-table [role=cell]+[role=cell]{border-left:1px solid #d8dee6}.case-evidence-table p{color:#314658}.case-evidence-table small{color:#687783}.case-knowledge-links{padding:22px 26px 24px}.case-knowledge-links h4{margin:0 0 10px;color:#21384b;font-size:14px}.case-knowledge-links>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;padding:10px 0;border-top:1px solid #e2e6eb}.case-knowledge-links strong{color:#214f7b;font-size:12px}.case-knowledge-links p{margin:0;color:#4c5e6d;font-size:12px;line-height:1.6}.scenario-detail-grid{gap:0;overflow:hidden;border:1px solid #d8dee6;border-radius:16px}.scenario-detail-grid>section,.scenario-detail-grid .success-panel{padding:20px 22px;border:0;border-radius:0;background:#fff}.scenario-detail-grid>section+section{border-left:1px solid #d8dee6}.scenario-detail-grid h3{color:#233b4e;font-size:15px}.scenario-detail-grid h3 svg,.scenario-detail-grid .success-panel h3 svg,.scenario-detail-grid .success-panel li svg{color:#315f87}.scenario-detail-grid li{color:#465a6b;font-size:12px}.lesson-warmup{padding:18px 20px;border:1px solid #ddd8c9;border-radius:16px;background:#faf9f5}.lesson-warmup>div svg{color:#766744}.lesson-warmup li{border:1px solid #e1ded4;border-radius:12px;color:#4e514e;font-size:12px}.lesson-warmup li:before{border-radius:8px;color:#fff;background:#5d6870}.knowledge-card{border-color:#d6dde5;border-radius:16px}.knowledge-card.is-open{border-color:#9fb2c2;box-shadow:none}.knowledge-card>button{min-height:66px}.knowledge-card>button>span:first-child{border-radius:11px;color:#315a7e;background:#e9eef2}.knowledge-card>button small{font-size:11px}.knowledge-card-body>p{font-size:13px}.knowledge-card-body>div>span{border:1px solid #e0e5ea;border-radius:12px;background:#f7f8f9}.knowledge-card-body>div p,.knowledge-card-body>aside p{font-size:12px}.knowledge-card-body>aside{border:1px solid #ddd6c4;border-radius:12px;color:#5b523f;background:#faf8f2}.knowledge-example{overflow:hidden;border:1px solid #d6dde5;border-radius:16px}.knowledge-example pre{border-radius:0}.knowledge-example>div{border-radius:0;color:#4d5360;background:#f2f4f6}.practice-brief-card{grid-template-columns:42px minmax(0,1fr);padding:20px 22px;border:1px solid #d4dce4;border-left:4px solid #214f7b;border-radius:16px;background:#fff}.practice-brief-card h3{font-size:19px}.practice-brief-card p,.practice-brief-card>div>strong{font-size:12px}.practice-step-grid{grid-template-columns:1fr;gap:0;overflow:hidden;border:1px solid #d8dee6;border-radius:16px}.practice-step-grid article{min-height:0;grid-template-columns:40px minmax(0,1fr);padding:16px 18px;border:0;border-radius:0}.practice-step-grid article+article{border-top:1px solid #d8dee6}.practice-step-grid article>span{width:32px;height:32px;border-radius:10px;color:#28465e;background:#e8edf1}.practice-step-grid small{color:#5b7184;font-size:11px}.practice-step-grid h3{font-size:15px}.practice-step-grid p{font-size:12px}.practice-step-grid strong{border-radius:8px;color:#485a68;background:#eef1f3;font-size:11px}.lesson-quiz{overflow:hidden;border:1px solid #cfd7df;border-radius:18px;background:#fff}.lesson-quiz>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:2px solid #294e6b}.lesson-quiz>header span{color:#5e6d79;font-size:11px;font-weight:800;letter-spacing:.08em}.lesson-quiz>header h3{margin:5px 0;color:#192f40;font-size:20px}.lesson-quiz>header p{margin:0;color:#596976;font-size:12px}.lesson-quiz-sync{flex:0 0 auto;display:grid;justify-items:end;gap:6px}.lesson-quiz-sync>strong{padding:7px 10px;border:1px solid #cbd4dc;border-radius:999px;color:#29475e;background:#f4f6f7;font-size:12px}.lesson-quiz-sync>small{display:inline-flex;align-items:center;gap:5px;color:#4f715d;font-size:12px}.lesson-quiz-sync svg{color:#4c8660}.lesson-practice-mastery{display:flex;flex-wrap:wrap;gap:8px;padding:12px 24px;border-bottom:1px solid #d8dee5;background:#f8fafb}.lesson-practice-mastery>span{min-width:132px;display:grid;gap:2px;padding:8px 10px;border:1px solid #e0e5ea;border-left:3px solid #9aa9b5;border-radius:12px;background:#fff}.lesson-practice-mastery strong{color:#2b4051;font-size:12px}.lesson-practice-mastery small{color:#667783;font-size:12px}.lesson-practice-mastery>span.is-mastered{border-left-color:#5b936c}.lesson-practice-mastery>span.is-developing{border-left-color:#4f7da3}.lesson-practice-mastery>span.is-needs-practice{border-left-color:#b06b65}.lesson-quiz-list{display:grid}.lesson-quiz-question{padding:24px}.lesson-quiz-question+.lesson-quiz-question{border-top:1px solid #d8dee5}.quiz-question-meta{display:flex;align-items:center;gap:8px;margin-bottom:9px}.quiz-question-meta span{color:#60717e;font-size:11px;font-weight:750}.quiz-question-meta span+span{padding-left:8px;border-left:1px solid #cdd5dc;color:#315b7d}.lesson-quiz-question h4{margin:0 0 15px;color:#1f3342;font-size:15px;line-height:1.65}.lesson-quiz-question fieldset{display:grid;gap:8px;padding:0;margin:0;border:0}.lesson-quiz-question label{min-height:46px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:8px 12px;border:1px solid #d8dee5;border-radius:12px;color:#3f5261;background:#fff;cursor:pointer;font-size:13px;line-height:1.5}.lesson-quiz-question label:hover{border-color:#9eafbd;background:#f8fafb}.lesson-quiz-question label input{position:absolute;opacity:0;pointer-events:none}.lesson-quiz-question label>span:first-of-type{width:26px;height:26px;display:grid;place-items:center;border:1px solid #b9c3cc;border-radius:50%;color:#536572;font-size:11px;font-weight:800}.lesson-quiz-question label.is-selected{border-color:#557b9a;background:#f1f5f8}.lesson-quiz-question label.is-selected>span:first-of-type{color:#fff;border-color:#315f83;background:#315f83}.lesson-quiz-question label.is-correct{border-color:#5e8f6d;background:#f1f7f2}.lesson-quiz-question label.is-wrong{border-color:#b56b67;background:#fbf3f2}.lesson-quiz-question footer{display:flex;align-items:flex-start;gap:14px;margin-top:14px}.quiz-submit{min-height:40px;padding:8px 16px;border:1px solid #244d6e;border-radius:12px;color:#fff;background:#244d6e;cursor:pointer;font-size:12px;font-weight:750}.quiz-submit:disabled{color:#8b979f;border-color:#d6dce1;background:#edf0f2;cursor:default}.quiz-save-error{max-width:210px;display:flex;align-items:flex-start;gap:6px;margin:0;color:#834b46;font-size:12px;line-height:1.5}.quiz-save-error svg{flex:0 0 auto;margin-top:2px}.quiz-feedback{flex:1;padding:10px 12px;border-left:3px solid #63836d;border-radius:12px;background:#f3f7f4}.quiz-feedback.is-wrong{border-left-color:#9c625e;background:#faf4f3}.quiz-feedback strong{color:#294837;font-size:12px}.quiz-feedback.is-wrong strong{color:#77413e}.quiz-feedback p{margin:3px 0 0;color:#4b5a52;font-size:12px;line-height:1.6}.quiz-feedback small{display:block;margin-top:4px;color:#6f5b59;font-size:11px}.lesson-quiz-question label:focus-within,.quiz-submit:focus-visible{outline:3px solid rgba(33,79,123,.22);outline-offset:2px}.lesson-review-queue{margin:0 24px 24px;overflow:hidden;border:1px solid #d6dde5;border-radius:16px;background:#f8fafc}.lesson-review-queue>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid #dce3e9;background:#fff}.lesson-review-queue h4{margin:4px 0 0;color:#233b4d;font-size:15px}.lesson-review-queue>header>strong{flex:0 0 auto;padding:6px 10px;border-radius:999px;color:#8a4e27;background:#fff2e8;font-size:11px}.lesson-review-queue>div{display:grid}.lesson-review-queue article{min-height:72px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 16px}.lesson-review-queue article+article{border-top:1px solid #e0e6eb}.lesson-review-queue article>span{color:#b66a34}.lesson-review-queue article.is-resolved>span{color:#4c8a61}.lesson-review-queue article small{color:#6b7a87;font-size:10px;font-weight:750}.lesson-review-queue article p{margin:3px 0 0;color:#354b5c;font-size:12px;line-height:1.55}.lesson-review-queue article button{min-height:40px;padding:7px 11px;border:1px solid #b9c7d2;border-radius:10px;color:#315c7e;background:#fff;cursor:pointer;font-size:11px;font-weight:750}.lesson-review-queue article button:hover{border-color:#7896ad;background:#f1f6fa}.practice-check-panel{border:1px solid #d5ddd8;border-radius:16px;background:#fff}.practice-check-panel>div:first-child,.practice-check-panel>div:first-child>span:first-child{font-size:12px}.practice-check-progress,.practice-check-progress i{border-radius:999px}.practice-check-list button{border-radius:12px;font-size:12px}.practice-check-list button>span{border-radius:8px}.practice-review-grid>section,.practice-review-grid>section:last-child{border-radius:16px;background:#fff}.practice-review-grid ul,.practice-review-grid>section:last-child p{font-size:12px}.reflection-guide,.reflection-box{border-radius:16px}.lesson-completion-gate{display:grid;gap:15px;padding:18px;border:1px solid #d9dfe6;border-radius:18px;background:#f8fafb}.lesson-completion-gate.is-ready{border-color:#bfddca;background:#f4faf6}.lesson-completion-gate>header{display:flex;align-items:center;gap:11px}.lesson-completion-gate>header>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#657786;background:#e9edf1}.lesson-completion-gate.is-ready>header>span{color:#fff;background:#58a36f}.lesson-completion-gate h3{margin:3px 0 0;color:#263c4d;font-size:16px}.lesson-completion-gate ul{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:0;margin:0;list-style:none}.lesson-completion-gate li{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:8px;padding:12px;border:1px solid #dce2e8;border-radius:12px;color:#87929d;background:#fff}.lesson-completion-gate li.is-done{color:#4d8d63;border-color:#cfe3d6;background:#f9fcfa}.lesson-completion-gate li strong,.lesson-completion-gate li small{display:block}.lesson-completion-gate li strong{color:#3c5060;font-size:12px}.lesson-completion-gate li small{margin-top:4px;color:#6b7985;font-size:10px;line-height:1.5}.lesson-completion-gate>button{justify-self:start}.lesson-completion-error{display:flex;align-items:flex-start;gap:7px;margin:20px 0 -12px;padding:11px 13px;border:1px solid #ddb9b5;border-radius:12px;color:#77413e;background:#fbf2f1;font-size:12px;line-height:1.55}.lesson-completion-error svg{flex:0 0 auto;margin-top:1px}.lesson-assistant img{width:84px;height:84px}.syntax-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:14px}.syntax-browser,.syntax-detail{padding:18px}.syntax-browser .search-control input{min-width:0;width:100%}.compact-tabs{display:flex;margin-top:12px}.compact-tabs button{min-width:0;flex:1;padding-inline:7px}.syntax-list{display:grid;gap:4px;margin-top:12px}.syntax-list>button{width:100%;min-height:62px;display:grid;grid-template-columns:21px 1fr auto;align-items:center;gap:9px;padding:9px;border:0;border-radius:11px;text-align:left;color:#5a6980;background:transparent;cursor:pointer}.syntax-list>button.is-active{color:var(--blue);background:var(--blue-soft)}.syntax-list strong,.syntax-list small{display:block}.syntax-list strong{font-size:10px}.syntax-list small{margin-top:4px;color:#8b96a8;font-size:8px}.syntax-detail .section-heading-row{align-items:center}.syntax-detail h2{margin:8px 0 0}.syntax-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.syntax-actions .soft-button{min-height:38px;padding-inline:12px}.syntax-detail>p{color:var(--muted);font-size:12px}.code-preview.large{margin-top:18px}.code-preview.large pre{min-height:230px;font-size:13px;line-height:1.8}.syntax-tip{display:flex;gap:10px;margin:15px 0;padding:14px;border-radius:13px;color:#5f6e83;background:var(--orange-soft)}.syntax-tip svg{flex:0 0 auto;color:var(--orange)}.syntax-tip p{margin:0;font-size:10px;line-height:1.55}.syntax-tip strong{display:block;color:#6c4b0e}.bank-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.bank-card{display:grid;grid-template-columns:48px 1fr;gap:13px;padding:20px}.bank-card h2{margin:10px 0 7px;font-size:18px}.bank-card p{margin:0 0 14px;color:var(--muted);font-size:10px}.bank-stats{display:flex;justify-content:space-between;margin:10px 0 13px;color:var(--muted);font-size:9px}.practice-workspace{max-width:900px;margin-inline:auto;padding:21px}.practice-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.practice-topbar span{font-size:12px;font-weight:760}.practice-topbar strong{color:var(--blue);font-size:11px}.question-card{max-width:720px;margin:32px auto 12px}.question-card>p{color:var(--blue);font-size:10px;font-weight:760}.question-card h2{margin:9px 0 20px;font-size:23px;line-height:1.45}.answer-options{display:grid;gap:9px}.answer-options button{min-height:54px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:9px;padding:10px;border:1px solid #dfe5ee;border-radius:12px;text-align:left;color:#4c5d77;background:#fff;cursor:pointer}.answer-options button>span{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#f0f3f8;font-weight:800}.answer-options button.is-selected{color:var(--blue);border-color:#8eb5ff;background:#f4f8ff}.answer-options button.is-correct{color:#41702e;border-color:#a9d79a;background:var(--green-soft)}.answer-options button.is-wrong{color:#a64b48;border-color:#edb7b4;background:#fff2f1}.answer-analysis{display:flex;gap:10px;margin-top:14px;padding:14px;border-radius:13px;background:var(--green-soft)}.answer-analysis.is-wrong{background:#fff3e6}.answer-analysis svg{flex:0 0 auto;color:var(--green)}.answer-analysis.is-wrong svg{color:var(--orange)}.answer-analysis strong{font-size:11px}.answer-analysis p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.question-actions{display:flex;justify-content:space-between;margin-top:18px}.toolkit-list,.mistake-list{display:grid;gap:10px}.toolkit-list>button{min-height:80px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);text-align:left;color:inherit;cursor:pointer}.toolkit-list strong,.toolkit-list small{display:block}.toolkit-list strong{font-size:13px}.toolkit-list small{margin-top:5px;color:var(--muted);font-size:9px}.toolkit-error{min-height:44px;display:flex;align-items:center;gap:9px;margin:0 0 14px;padding:10px 12px}.toolkit-error>svg{flex:0 0 auto}.toolkit-error>button{min-height:28px;margin-left:auto;padding:0 9px;border:1px solid #e4b8b5;border-radius:8px;color:#a64c48;background:#fff;cursor:pointer;font-size:9px;font-weight:800}.toolkit-resource{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 50px;align-items:stretch;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.toolkit-resource:hover{border-color:#c8d8f2;box-shadow:var(--shadow-md);transform:translateY(-1px)}.toolkit-resource-main{min-width:0;min-height:82px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:14px;border:0;text-align:left;color:inherit;background:transparent;cursor:pointer}.toolkit-resource-main>span:nth-child(2){min-width:0}.toolkit-resource-main strong,.toolkit-resource-main small{display:block}.toolkit-resource-main strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.toolkit-resource-main small{margin-top:5px;overflow:hidden;color:var(--muted);font-size:9px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.toolkit-resource-main>svg{color:#8fa0b7}.toolkit-resource>.icon-button{width:100%;height:100%;border-left:1px solid var(--line);border-radius:0;color:#a1aaba;background:#fafbfd}.toolkit-resource>.icon-button:hover:not(:disabled){color:#bd514d;background:#fff2f1}.toolkit-list>.empty-state,.mistake-list>.empty-state,.honor-wall>.empty-state{grid-column:1 / -1}.notes-layout,.help-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px}.notes-layout>section,.help-layout>section{padding:20px}.notes-layout h2,.help-layout h2{margin:0 0 15px;font-size:18px}.notes-layout label{display:grid;gap:6px;color:var(--muted);font-size:10px}.notes-layout label+label{margin-top:11px}.notes-layout input,.notes-layout select,.notes-layout textarea,.feedback-card select,.feedback-card textarea{width:100%;padding:11px;border:1px solid #dfe5ee;border-radius:11px;background:#fff}.notes-layout input,.feedback-card select{min-height:43px}.notes-layout textarea,.feedback-card textarea{min-height:180px;margin:11px 0}.saved-notes{display:grid;align-content:start}.saved-notes>button{min-height:62px;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:9px;padding:5px 0;border:0;border-bottom:1px solid var(--line);text-align:left;background:transparent;cursor:pointer}.saved-notes strong,.saved-notes small{display:block}.saved-notes small{margin-top:4px;color:var(--muted);font-size:9px}.saved-note-row{min-width:0;min-height:76px;display:grid;grid-template-columns:22px minmax(0,1fr) 36px;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid var(--line)}.saved-note-row>svg{color:var(--blue)}.saved-note-row>span{min-width:0}.saved-note-row strong,.saved-note-row small,.saved-note-row time{display:block}.saved-note-row strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.saved-note-row small{display:-webkit-box;overflow:hidden;margin-top:4px;color:var(--muted);font-size:9px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.saved-note-row time{margin-top:5px;color:#9aa4b4;font-size:8px}.saved-note-row .icon-button{width:34px;height:34px;border-radius:9px;color:#9ba5b5;background:#f3f5f8}.saved-note-row .icon-button:hover:not(:disabled){color:#ba4f4b;background:#fff1ef}.muted-empty{margin:14px 0 0;color:#8994a7;font-size:10px;line-height:1.6;text-align:center}.honor-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.honor-wall article{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px;text-align:center}.honor-wall h2{margin:13px 0 6px;font-size:15px}.honor-wall p{min-height:35px;margin:0;color:var(--muted);font-size:9px}.honor-wall article>span:last-child{margin-top:12px;color:var(--blue);font-size:9px;font-weight:780}.mistake-list article{min-height:76px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:14px}.mistake-list article>span{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;color:#a14f4b;background:#fff0ef;font-weight:800}.mistake-list article.is-reviewed>span{color:#fff;background:var(--green)}.mistake-list strong,.mistake-list small{display:block}.mistake-list strong{font-size:12px}.mistake-list small{margin-top:4px;color:var(--muted);font-size:9px}.mistake-list article>div{min-width:0}.mistake-list article>div>p{margin:6px 0 0;color:#7b8799;font-size:9px;line-height:1.5}.toolkit-filter-row{display:flex;align-items:center;gap:6px;margin-bottom:12px;padding:5px;border:1px solid #e0e5ed;border-radius:13px;color:#758298;background:#f3f5f8}.toolkit-filter-row>svg{margin-left:7px;color:var(--blue)}.toolkit-filter-row>span{margin-right:auto;font-size:10px;font-weight:760}.toolkit-filter-row>button{min-height:34px;padding:0 12px;border:0;border-radius:9px;color:#66748d;background:transparent;cursor:pointer;font-size:10px;font-weight:760}.toolkit-filter-row>button.is-active{color:var(--blue);background:#fff;box-shadow:0 5px 12px #1f4b911a}.analytics-board{display:grid;grid-template-columns:.75fr 1.25fr;gap:14px}.analytics-board>section{padding:20px}.metric-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.metric-strip>div{min-height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;background:#f3f7fe}.metric-strip strong{color:var(--blue);font-size:24px}.metric-strip span{margin-top:5px;color:var(--muted);font-size:9px}.analytics-board section:last-child .inline-progress{margin-top:13px}.recent-activity{grid-column:1 / -1}.recent-activity>h2{margin:5px 0 13px;font-size:19px}.recent-activity>div{min-height:64px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:11px;border-top:1px solid var(--line)}.recent-activity strong,.recent-activity small{display:block}.recent-activity strong{font-size:11px}.recent-activity small{margin-top:4px;color:var(--muted);font-size:8px}.friends-workspace{--friends-columns: minmax(0, 1.3fr) minmax(400px, 1fr);--friends-inset: 24px;display:grid;gap:18px}.pk-invitations{padding:22px 24px;border-radius:20px}.pk-invitations>header{display:flex;align-items:flex-start;gap:12px;color:var(--blue-dark)}.pk-invitations h2{margin:0;color:var(--ink);font-size:18px}.pk-invitations header p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.pk-invitation-list{margin-top:16px;display:grid;gap:12px}.pk-invitation-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.pk-invitation-row>div:first-child{min-width:0;overflow-wrap:anywhere}.pk-invitation-row strong{color:var(--ink);font-size:15px}.pk-invitation-row p{margin:5px 0;color:var(--muted);font-size:13px;line-height:1.5}.pk-invitation-row small{color:var(--muted);font-size:12px}.pk-invitation-actions{display:flex;flex-shrink:0;gap:10px}.pk-invitation-actions button{min-height:44px;margin:0;padding:0 16px;border-radius:12px;font-size:13px;cursor:pointer}.pk-invitation-actions button:disabled,.friend-pk-button:disabled{opacity:.55;cursor:wait}.pk-private-room{display:flex;align-items:center;gap:10px;margin-top:18px;padding:14px 16px;border-radius:15px;color:var(--blue-dark);background:var(--blue-soft);font-size:13px;line-height:1.6}.pk-private-room svg{flex-shrink:0}.nav-item .friend-invite-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;margin-left:auto;padding:0 6px;border-radius:99px;background:var(--blue-soft);color:var(--blue-dark);font-size:12px;font-weight:750}@media(max-width:700px){.pk-invitations{padding:20px 16px}.pk-invitation-row{flex-direction:column;align-items:stretch;gap:14px;padding:16px}.pk-invitation-actions{flex-wrap:wrap}.pk-invitation-actions button{flex:1}}.friend-add-hero{min-height:286px;position:relative;display:grid;grid-template-columns:var(--friends-columns);column-gap:16px;overflow:hidden;border:1px solid #d5e6fb;border-radius:24px;background:linear-gradient(112deg,#edf7ff,#f5f9ff 56%,#e2efff);box-shadow:0 14px 34px #3e6faa14}.friend-add-hero:after{width:200px;height:58px;position:absolute;right:-72px;bottom:19px;border-radius:999px;background:#a6cfff47;content:"";transform:rotate(47deg)}.friend-add-copy{min-width:0;z-index:1;align-self:center;padding:30px var(--friends-inset)}.friend-add-copy h2{margin:0;color:#142d54;font-size:28px;line-height:1.2;letter-spacing:-.025em}.friend-add-copy>p:not(.eyebrow){margin:11px 0 18px;color:#69809d;font-size:12.5px;line-height:1.7}.friend-code-form{max-width:570px;display:grid;grid-template-columns:minmax(190px,1fr) 172px;gap:10px}.friend-code-form input{min-width:0;height:50px;box-sizing:border-box;padding:0 17px;border:1px solid #cedbed;border-radius:13px;outline:0;color:#243b5a;background:#fffffff0;font-size:14px;font-weight:720;letter-spacing:.08em;transition:border-color .18s ease,box-shadow .18s ease}.friend-code-form input::placeholder{color:#9aa8ba;font-weight:560;letter-spacing:0}.friend-code-form input:focus{border-color:#76a7ff;box-shadow:0 0 0 4px #2c68f51a}.friend-code-form>button{border:0;border-radius:13px;color:#fff;background:linear-gradient(135deg,#4878ff,#2561eb);box-shadow:0 9px 18px #2663eb33;cursor:pointer;font-size:13px;font-weight:820}.friend-code-form>button:disabled{cursor:wait;opacity:.65}.friend-code-toggle{min-height:44px;display:inline-flex;align-items:center;gap:9px;margin-top:10px;padding:0 17px;border:1px solid #5f8cff;border-radius:12px;color:#2a64ee;background:#ffffffab;cursor:pointer;font-size:12px;font-weight:800}.friend-code-toggle:hover{background:#fff;box-shadow:0 7px 18px #3869cd1f}.my-friend-code{min-width:0;position:relative;z-index:1;display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:16px;margin-block:36px;padding-inline:var(--friends-inset)}.my-friend-code:before{position:absolute;inset:0 auto 0 -8px;width:1px;background:#d4e2f4;content:""}.friend-qr{width:140px;height:140px;display:grid;place-items:center;padding:12px;border:0;border-radius:16px;color:#182b4c;background:#fff;box-shadow:0 12px 28px #2f53841a;cursor:pointer;transition:color .18s ease,transform .18s ease}.friend-qr-image{width:100%;height:auto;aspect-ratio:1;display:block;object-fit:contain;image-rendering:auto}.my-friend-code.is-visible .friend-qr{color:#2563eb;transform:translateY(-2px)}.my-friend-code>div{min-width:0}.my-friend-code>div>span{display:block;color:#273b59;font-size:12px;font-weight:820}.my-friend-code strong{display:block;margin-top:5px;color:#11294e;font-size:clamp(19px,1.8vw,27px);letter-spacing:.04em;white-space:nowrap}.my-friend-code p{max-width:245px;margin:11px 0 0;color:#71849f;font-size:11px;line-height:1.65}.friend-code-copy{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:0;border:0;color:#2864ec;background:transparent;cursor:pointer;font-size:10px;font-weight:780}.friends-board{display:grid;grid-template-columns:var(--friends-columns);gap:16px;align-items:stretch}.friends-board>section{min-width:0;padding:24px var(--friends-inset);border-radius:20px}.friends-board>section>header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding-bottom:12px;border-bottom:1px solid #e7ecf3}.friends-board h2{margin:0;color:#183052;font-size:21px}.friend-directory{display:flex;flex-direction:column}.friend-directory>header>span{color:#8190a5;font-size:11px;font-weight:700}.friend-list{flex:1;display:flex;flex-direction:column}.friend-row{min-height:75px;display:grid;grid-template-columns:52px minmax(0,1fr) auto 34px;align-items:center;gap:12px;border-top:1px solid #e8edf4}.friend-row:first-child{border-top:0}.learning-friend-avatar{width:48px;height:48px;position:relative;display:grid;place-items:center;color:var(--blue);flex:0 0 auto;overflow:hidden;border-radius:50%;background:#e6f1ff}.learning-friend-avatar>img:not(.friend-avatar-sheet){width:100%;height:100%;object-fit:cover}.friend-avatar-sheet{width:200%;max-width:none;height:200%;position:absolute;object-fit:cover}.learning-friend-avatar.avatar-0 .friend-avatar-sheet{left:0;top:0}.learning-friend-avatar.avatar-1 .friend-avatar-sheet{left:-100%;top:0}.learning-friend-avatar.avatar-2 .friend-avatar-sheet{left:0;top:-100%}.learning-friend-avatar.avatar-3 .friend-avatar-sheet{left:-100%;top:-100%}.friend-identity{min-width:0}.friend-identity>span{display:flex;flex-wrap:wrap;align-items:center;gap:4px 9px}.friend-row strong,.friend-request strong{color:#253a59;font-size:13px}.friend-identity .friend-presence{display:inline-flex;align-items:center;gap:5px;min-inline-size:7em;white-space:nowrap;color:#197349;font-size:12px;font-style:normal;font-weight:650;line-height:1.5}.friend-presence>span{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:currentColor}.friend-identity .friend-presence.is-offline,.friend-identity .friend-presence.is-unknown{color:#617086}.friend-presence.is-unknown>span{background:transparent;border:1px solid currentColor;box-sizing:border-box}.friend-row small,.friend-request small,.friend-request time{display:block;margin-top:4px;color:#8b98ab;font-size:11px;line-height:1.35}.friend-pk-button{min-height:38px;padding:0 18px;border:1px solid #adc9ff;border-radius:11px;color:#2f6beb;background:#fff;cursor:pointer;font-size:11px;font-weight:800}.friend-pk-button:hover{border-color:#6395f7;background:#f4f8ff}.friend-nudge-button{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:12px;color:#627591;background:transparent;cursor:pointer;transition:color .15s,background .15s}.friend-nudge-button:hover{color:var(--blue);background:var(--blue-soft)}.friend-nudge-button:active{background:#dce9ff}.friend-nudge-button:disabled{opacity:.5;cursor:wait}.friend-empty{flex:1;min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8ba0b9;text-align:center}.friend-empty strong{margin-top:10px;color:#4a5e79;font-size:12px}.friend-empty p{margin:6px 0 0;font-size:9px}.friend-request-panel{display:grid;align-content:start}.friend-request-panel>header{margin-bottom:0}.friend-request-group{border-top:1px solid #e7ecf3}.friend-request-panel>header+.friend-request-group{border-top:0}.friend-request-heading{width:100%;min-height:54px;display:flex;align-items:center;gap:8px;padding:0;border:0;color:inherit;background:transparent;cursor:pointer;text-align:left}.friend-request-heading strong{color:#233955;font-size:12px}.friend-request-heading span{min-width:22px;height:22px;display:inline-grid;place-items:center;border-radius:999px;color:#396ee9;background:#e9f0ff;font-size:9px;font-weight:820}.friend-request-heading>svg{margin-left:auto;color:#7f90a7;transition:transform .18s ease}.friend-request-heading>svg.is-collapsed{transform:rotate(180deg)}.friend-request-content{min-width:0}.friend-request{min-height:76px;display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 0 13px}.friend-request time{margin-top:3px}.friend-request-actions{display:flex;align-items:center;gap:7px}.friend-request-actions button,.request-cancel{min-height:36px;padding:0 12px;border-radius:10px;cursor:pointer;font-size:9px;font-weight:790}.request-ignore,.request-cancel{border:1px solid #dbe2ec;color:#5f6f85;background:#fff}.request-accept{border:0;color:#fff;background:#2d68ed;box-shadow:0 6px 12px #2d68ed29}.friend-request-actions button:disabled,.request-cancel:disabled{cursor:wait;opacity:.55}.friend-request-group.is-sent{margin-top:5px}.friend-request-empty{margin:0;padding:7px 0 18px;color:#98a5b5;font-size:9px}@media(max-width:1180px){.friends-workspace{--friends-columns: minmax(0, 1fr)}.friend-add-hero{row-gap:0}.my-friend-code{margin:0 var(--friends-inset) 30px;padding:26px 0 0;border-top:1px solid #d4e2f4}.my-friend-code:before{display:none}}.pk-history{margin-top:24px;padding:24px;border-radius:20px}.pk-history-heading,.pk-history-heading>div,.pk-review-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.pk-history-heading>div{justify-content:flex-start;color:var(--ink)}.pk-history h2,.pk-review h2{margin:0;color:var(--ink);font-size:20px}.pk-history select{min-height:44px;padding:0 12px;border:1px solid #dce3ee;border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:13px}.pk-history-description,.pk-review-note{color:#586b85;font-size:13px;line-height:1.8}.pk-history-description{margin:6px 0 18px}.pk-history-empty{padding:24px 0;color:#586b85;font-size:14px;line-height:1.8}.pk-history-row{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 0;border-top:1px solid #e7edf5}.pk-history-row>div{min-width:0}.pk-history-row h3{margin:0 0 5px;font-size:15px;color:var(--ink)}.pk-history-row p,.pk-history-row small{margin:0;color:#586b85;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.pk-outcome{display:inline-flex;align-items:center;justify-content:center;align-self:center;min-width:64px;padding:7px 10px;border-radius:10px;background:#f0f3f8;color:#53637b;font-size:13px;font-weight:700;white-space:nowrap}.pk-outcome.is-won{background:#edf8f1;color:#237341}.pk-outcome.is-lost{background:#fff4e5;color:#875309}.pk-outcome.is-draw{background:var(--blue-soft);color:var(--blue-dark)}.pk-history-pagination{display:flex;justify-content:flex-end;align-items:center;gap:14px;padding-top:18px;color:#586b85;font-size:13px}.pk-history .soft-button{min-height:44px}.pk-review-layout{display:grid;gap:22px;max-width:1040px;margin-inline:auto}.pk-review{min-width:0;padding:28px;border-radius:22px}.pk-review-heading{align-items:flex-start}.pk-review-heading>div{min-width:0}.pk-review-heading h2{margin:4px 0 8px;font-size:24px}.pk-review-heading p:last-child{margin:0;font-size:13px;color:#586b85}.pk-review h3{margin:24px 0 8px;color:var(--ink);font-size:15px}.pk-review-reason{margin:22px 0 5px;color:var(--ink);font-size:15px;line-height:1.7}.pk-review-task{margin:22px 0;padding:18px;border-radius:16px;background:#f6f9ff}.pk-review-task h3{margin-top:0}.pk-review-task p{margin-bottom:0;color:#435873;font-size:14px;line-height:1.85;overflow-wrap:anywhere}.pk-review-checks{padding:0;margin:12px 0;list-style:none}.pk-review-checks li{display:flex;align-items:flex-start;gap:18px;padding:15px 0;border-bottom:1px solid #e7edf5}.pk-review-checks li>span{display:flex;gap:7px;align-items:center;flex-shrink:0;color:#875309;font-size:13px}.pk-review-checks li>span.is-passed{color:#237341}.pk-review-checks strong{color:var(--ink);font-size:14px}.pk-review-checks p{margin:5px 0 0;color:#586b85;font-size:13px;line-height:1.8;overflow-wrap:anywhere}.pk-review-code,.pk-practice-editor{width:100%;box-sizing:border-box;padding:18px;border:1px solid #dce3ee;border-radius:16px;background:#f8faff;color:#203655;font:13px/1.8 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.pk-review-code{white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto}.pk-review-practice>p{font-size:14px;color:#586b85;line-height:1.8}.pk-practice-label{display:block;margin:24px 0 10px;color:var(--ink);font-size:14px;font-weight:650}.pk-practice-editor{display:block;min-height:260px;resize:vertical;-moz-tab-size:4;tab-size:4}.pk-practice-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:16px}.pk-practice-actions>span{color:#586b85;font-size:12px}.pk-review :focus-visible,.pk-history :focus-visible{outline:2px solid var(--blue);outline-offset:3px}@media(max-width:650px){.pk-history,.pk-review{padding:20px 16px}.pk-history-row{grid-template-columns:auto minmax(0,1fr);gap:12px}.pk-history-row>button{grid-column:2;justify-self:start}.pk-history-row p span{display:block}.pk-review-heading h2{font-size:20px}.pk-review-checks li{gap:10px}.pk-practice-editor{font-size:16px}}.pk-recovery-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;margin:16px 0;border-radius:16px;background:#fff5df;color:#71531c}.pk-recovery-notice p{margin:0;font-size:14px;line-height:1.6}.pk-recovery-notice small{display:block;margin-top:4px;font-size:12px}.pk-recovery-notice .soft-button{flex-shrink:0;min-height:44px}.pk-draft-warning{color:#71531c;font-size:13px;line-height:1.6;margin:12px 0}@media(max-width:650px){.pk-recovery-notice{align-items:flex-start;flex-direction:column}}.pk-entry-grid{max-width:1040px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.75fr);align-items:start;gap:20px;margin-inline:auto}.pk-entry-grid>.pk-inline-error{grid-column:1 / -1}.pk-arena{padding:30px;text-align:left}.pk-header{display:flex;align-items:flex-start;gap:12px;text-align:left}.pk-header h2{margin:5px 0;color:#172b49;font-size:24px}.pk-header p:last-child{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.pk-friend-select{display:grid;gap:7px;margin:24px 0 0;color:#68778e;text-align:left;font-size:13px;font-weight:760}.pk-friend-select select{width:100%;min-height:45px;padding:0 12px;border:1px solid #dce3ee;border-radius:12px;outline:0;color:#334760;background:#fff}.pk-friend-select select:focus{border-color:#93b7f6;box-shadow:0 0 0 3px #2369f51a}.pk-challenge-picker{min-width:0;padding:0;margin:24px 0 0;border:0}.pk-challenge-picker legend{margin-bottom:10px;color:var(--ink);font-size:14px;font-weight:750}.pk-challenge-option{display:flex;align-items:center;gap:12px;padding:14px;margin-bottom:9px;border:1px solid #dce3ee;border-radius:16px;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.pk-challenge-option:hover{background:#f6f9ff;border-color:#93b7f6}.pk-challenge-option.is-selected{border-color:#4785e5;background:#eef5ff}.pk-challenge-option:focus-within{outline:2px solid #2369f5;outline-offset:3px}.pk-challenge-option input{flex:0 0 auto;width:17px;height:17px;margin:0;accent-color:#2369f5}.pk-challenge-option>span{min-width:0}.pk-challenge-option strong{display:block;color:var(--ink);font-size:15px;line-height:1.5}.pk-challenge-option small{display:block;margin-top:3px;color:#586b85;font-size:12px;line-height:1.6}.pk-challenge-meta{flex:0 0 auto;margin-left:auto;text-align:right}.pk-challenge-meta b{color:#3e5e8a;font-size:12px;font-weight:650}.pk-challenge-picker:disabled .pk-challenge-option{opacity:.55;cursor:not-allowed}.pk-challenge-preview{margin:16px 0;color:#4e617c;font-size:13px;line-height:1.8}.pk-challenge-preview p{margin:0 0 8px}.pk-challenge-preview strong{display:block;margin-bottom:6px;color:var(--ink);font-size:14px}.pk-challenge-preview summary{width:fit-content;padding:10px 0;cursor:pointer;color:#2464b4;font-weight:650}.pk-challenge-preview small{font-size:12px}.pk-room>.pk-challenge-preview{padding:18px;background:#f6f9ff;border-radius:16px}.pk-mode-summary{display:flex;align-items:center;gap:10px;margin:14px 0 18px;padding:12px;border-radius:13px;color:#d27a00;background:#fff5e5}.pk-mode-summary>svg{flex:0 0 auto}.pk-mode-summary strong,.pk-mode-summary small{display:block}.pk-mode-summary strong{color:#3a4659;font-size:13px}.pk-mode-summary small{margin-top:4px;color:#586b85;font-size:12px;line-height:1.6}.pk-arena>.primary-button{min-width:230px;margin-top:0;padding-inline:18px}.pk-join-card{display:flex;flex-direction:column;align-items:flex-start;padding:30px}.pk-join-card h2{margin:6px 0 7px;color:#172b49;font-size:20px}.pk-join-card>p:not(.eyebrow){margin:0;color:var(--muted);font-size:13px;line-height:1.6}.pk-join-card>label{width:100%;display:grid;gap:7px;margin-top:20px;color:#68778e;font-size:13px;font-weight:760}.pk-join-card input{width:100%;min-height:48px;box-sizing:border-box;padding:0 14px;border:1px solid #dce3ee;border-radius:12px;outline:0;color:#213a5a;background:#fff;font-size:17px;font-weight:820;letter-spacing:.16em;font-variant-numeric:tabular-nums}.pk-join-card input:focus{border-color:#79a9f4;box-shadow:0 0 0 3px #2369f51a}.pk-join-card .soft-button{width:100%;min-height:44px;justify-content:center;margin-top:12px}.pk-join-card .text-button{align-self:center;margin-top:12px}@media(max-width:900px){.pk-entry-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:480px){.pk-arena,.pk-join-card{padding:20px}.pk-header h2{font-size:21px}.pk-challenge-option{gap:8px;padding:12px}.pk-challenge-option strong{font-size:14px}.pk-arena>.primary-button{min-width:0;width:100%}}@media(prefers-reduced-motion:reduce){.pk-challenge-option{transition:none}}.pk-room{max-width:1120px;margin-inline:auto;padding:26px 28px}.pk-room-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.pk-room-header h2{margin:5px 0;color:#172b49;font-size:24px}.pk-room-header p:last-child{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.pk-connection{min-width:148px;display:grid;justify-items:end;gap:5px;padding:9px 11px;border:1px solid #dce6f2;border-radius:12px;color:#6b7c94;background:#f7f9fc}.pk-connection>span{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:800}.pk-connection>small{font-size:8px;font-variant-numeric:tabular-nums}.pk-connection.is-connected{border-color:#cdebd9;color:#278a52;background:#effaf4}.pk-connection.is-error{border-color:#f1cecc;color:#ba534e;background:#fff4f3}.pk-room-code{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:13px 16px;border:1px solid #cfe3fa;border-radius:15px;background:#f0f7ff}.pk-room-code small,.pk-room-code strong{display:block}.pk-room-code small{color:#6380a3;font-size:9px;font-weight:760}.pk-room-code strong{margin-top:3px;color:#156cd4;font-size:24px;letter-spacing:.13em;font-variant-numeric:tabular-nums}.pk-room-code button{min-height:40px;display:inline-flex;align-items:center;gap:6px;padding:0 13px;border:1px solid #bdd8f7;border-radius:11px;color:#1969c4;background:#fff;cursor:pointer;font-size:10px;font-weight:800}.pk-players.is-networked{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:70px;margin:22px 0}.pk-players.is-networked>div{min-height:174px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;border:1px solid #e3e9f1;border-radius:17px;background:#fbfcfe}.pk-players.is-networked>div.is-me{border-color:#bcd9fa;background:#f4f9ff;box-shadow:inset 0 0 0 1px #2369f50a}.pk-players strong{margin-top:9px;color:#263a56;font-size:12px}.pk-players small{min-height:14px;margin-top:4px;color:var(--muted);font-size:9px}.pk-versus{position:absolute;left:-57px;top:50%;transform:translateY(-50%);color:var(--orange);font-size:22px;font-style:italic;font-weight:900}.pk-ready-badge{display:inline-flex;align-items:center;gap:5px;margin-top:10px;padding:5px 8px;border-radius:999px;color:#748399;background:#edf1f5;font-size:9px;font-weight:800}.pk-ready-badge.is-ready{color:#25884f;background:#e8f8ef}.pk-phase{min-height:62px;display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;padding:10px 14px;border-radius:15px;color:#216ec2;background:#edf6ff}.pk-phase>span{min-width:46px;display:grid;place-items:center;color:#0f73df;font-size:27px;font-weight:900;font-variant-numeric:tabular-nums}.pk-phase strong,.pk-phase small{display:block}.pk-phase strong{color:#263b59;font-size:12px}.pk-phase small{margin-top:4px;color:#687b94;font-size:9px;line-height:1.45}.pk-phase.is-countdown{color:#d37a00;background:#fff5e5}.pk-phase.is-countdown>span{color:#e18808}.pk-phase.is-running{color:#25884f;background:#ecf9f2}.pk-phase.is-running>span{color:#25884f;font-size:20px}.pk-phase.is-finished,.pk-phase.is-cancelled{color:#66768d;background:#f2f5f8}.pk-challenge-placeholder{display:flex;align-items:flex-start;gap:11px;margin-top:12px;padding:13px 14px;border:1px dashed #bed5ef;border-radius:14px;color:#1a6bc2;background:#f8fbff}.pk-challenge-placeholder>svg{flex:0 0 auto}.pk-challenge-placeholder strong{color:#2c405b;font-size:11px}.pk-challenge-placeholder p{margin:4px 0 0;color:#6b7c92;font-size:9px;line-height:1.55}.pk-coding-workspace{display:grid;grid-template-columns:210px minmax(360px,1fr) 220px;gap:14px;margin-top:16px}.pk-task-panel,.pk-code-panel,.pk-judge-panel{min-width:0;overflow:hidden;border:1px solid #dfe7f1;border-radius:16px;background:#fff}.pk-task-panel,.pk-judge-panel{padding:16px}.pk-task-panel h3{margin:6px 0 7px;color:#263b58;font-size:14px}.pk-task-panel>p:not(.eyebrow){margin:0;color:#697b93;font-size:9px;line-height:1.6}.pk-test-list{display:grid;gap:7px;margin-top:14px}.pk-test-list>div{min-height:43px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;padding:7px 8px;border-radius:11px;background:#f4f6f9}.pk-test-list>div>span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:#728197;background:#e5eaf0;font-size:9px;font-weight:850}.pk-test-list>div.is-passed{background:#ecf9f2}.pk-test-list>div.is-passed>span{color:#fff;background:#2fa465}.pk-test-list strong,.pk-test-list small{display:block}.pk-test-list strong{color:#344861;font-size:9px}.pk-test-list small{margin-top:3px;color:#77869a;font-size:8px;line-height:1.35}.pk-hint{display:flex;align-items:flex-start;gap:7px;margin-top:12px;padding:10px;border-radius:11px;color:#bc7507;background:#fff5df;font-size:8px;line-height:1.5}.pk-hint>svg{flex:0 0 auto}.pk-hint strong{display:block;color:#7a560e;font-size:9px}.pk-code-panel{display:grid;grid-template-rows:43px minmax(330px,1fr) auto;background:#101a2b}.pk-editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 13px;border-bottom:1px solid #29374c;color:#dbe8f8;background:#18253a}.pk-editor-toolbar>span{display:flex;align-items:center;gap:7px}.pk-editor-toolbar strong{font-size:10px}.pk-editor-toolbar small{color:#91a7c1;font-size:8px}.pk-editor-toolbar small.is-saved{color:#82d9a6}.pk-editor-toolbar small.is-error{color:#ff9e99}.pk-editor-area{min-height:330px;display:grid;grid-template-columns:38px minmax(0,1fr);overflow:auto}.pk-line-numbers{display:flex;flex-direction:column;align-items:center;padding-top:14px;color:#64748b;background:#0c1524;font:10px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;-webkit-user-select:none;user-select:none}.pk-line-numbers span{min-height:16.5px}.pk-editor-area textarea{width:100%;min-height:330px;box-sizing:border-box;resize:none;padding:14px;border:0;outline:0;color:#dce9f8;background:#101a2b;caret-color:#66b3ff;font:12px/1.65 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;-moz-tab-size:4;tab-size:4}.pk-editor-area textarea:focus{box-shadow:inset 0 0 0 2px #438cf1}.pk-editor-area textarea[readonly]{color:#aebdd0;background:#172235}.pk-editor-actions{display:grid;grid-template-columns:auto auto minmax(126px,1fr);gap:8px;padding:10px;border-top:1px solid #29374c;background:#18253a}.pk-editor-actions>button{min-height:44px;justify-content:center;margin-top:0}.pk-editor-actions .soft-button{color:#d5e2f2;border-color:#405069;background:#24334a}.pk-judge-panel{align-self:stretch}.pk-judge-heading{display:flex;align-items:center;gap:9px}.pk-judge-heading>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#50749e;background:#edf3f9}.pk-judge-heading p{margin:0;color:#718198;font-size:8px;font-weight:780}.pk-judge-heading strong{display:block;margin-top:3px;color:#2f425d;font-size:11px}.pk-judge-panel.is-success .pk-judge-heading>span{color:#29945a;background:#e9f8f0}.pk-judge-panel.is-error .pk-judge-heading>span{color:#c75b56;background:#fff0ef}.pk-score{min-height:90px;display:grid;place-items:center;align-content:center;margin-top:13px;border-radius:14px;color:#176fce;background:#edf6ff}.pk-score strong{font-size:30px;line-height:1;font-variant-numeric:tabular-nums}.pk-score small{margin-top:5px;color:#6d7f96;font-size:8px}.pk-judge-panel>p{margin:11px 0 0;color:#687b93;font-size:8px;line-height:1.55}.pk-submit-readiness,.pk-result-summary{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px;border-radius:11px;color:#9b690e;background:#fff5df}.pk-submit-readiness.is-ready,.pk-result-summary.is-winner{color:#278a52;background:#eaf8f0}.pk-submit-readiness>svg,.pk-result-summary>svg{flex:0 0 auto}.pk-submit-readiness strong,.pk-submit-readiness small,.pk-result-summary strong,.pk-result-summary small{display:block}.pk-submit-readiness strong,.pk-result-summary strong{font-size:9px}.pk-submit-readiness small,.pk-result-summary small{margin-top:3px;color:#6f7f92;font-size:8px;line-height:1.4}.pk-judge-note{display:block;margin-top:12px;color:#7b899b;font-size:8px;line-height:1.5}.pk-coding-workspace.is-finished .pk-code-panel{opacity:.94}.pk-room-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:18px}.pk-room-actions .primary-button,.pk-room-actions .soft-button{min-height:44px;margin-top:0;padding-inline:18px}.pk-leave-button{color:#a34d49;border-color:#edd2d0;background:#fff6f5}.pk-inline-error{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:7px;margin:12px 0 0;padding:10px 12px;border-radius:11px;color:#a64d49;background:#fff1f0;font-size:10px;font-weight:760}.help-question{width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;border:0;border-top:1px solid var(--line);text-align:left;background:transparent;cursor:pointer;font-size:11px}.help-guide{min-height:74px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line)}.help-guide strong{color:#2b3d59;font-size:11px}.help-guide p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.5}details.help-question{display:block;min-height:0;cursor:default}details.help-question summary{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#3d4f6a;cursor:pointer;font-size:11px;font-weight:720;list-style:none}details.help-question summary::-webkit-details-marker{display:none}details.help-question summary svg{flex:0 0 auto;color:#8d9bb0;transition:transform .16s ease}details.help-question[open] summary svg{transform:rotate(90deg)}details.help-question>p{margin:-2px 24px 13px 0;color:var(--muted);font-size:9px;line-height:1.65}.help-contact{display:flex;align-items:center;gap:7px;margin:16px 0 0;padding:10px 11px;border-radius:11px;color:#52724a;background:var(--green-soft);font-size:9px;line-height:1.5}.help-contact svg{flex:0 0 auto;color:var(--green)}.feedback-card>label{display:grid;gap:6px;margin-top:14px;color:var(--muted);font-size:10px;font-weight:720}.feedback-card>p{color:var(--muted);font-size:10px}.auth-page{--auth-ink: #071d50;--auth-muted: #526a91;--auth-stroke: rgba(150, 178, 216, .42);--auth-page-gutter: clamp(24px, 2.6vw, 48px);position:relative;isolation:isolate;min-height:100vh;min-height:100svh;padding:32px var(--auth-page-gutter);color:var(--auth-ink);background:#d4e6fc}.auth-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}.auth-backdrop>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.auth-light-layer{position:absolute;top:-4%;right:-4%;bottom:-4%;left:-4%;opacity:0}.auth-light-layer img{display:block;width:100%;height:100%;object-fit:cover;transform-origin:top left}.auth-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 auto}.auth-brand{width:214px;height:56px;object-fit:contain;mix-blend-mode:multiply}.auth-motion-toggle{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;padding:0;border:1px solid rgba(132,161,204,.24);border-radius:50%;color:#365a88;background:#f4f9ff99;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.auth-motion-toggle:hover{background:#ffffffe0}.auth-motion-toggle:active{transform:scale(.94)}.auth-motion-toggle:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.auth-layout,.auth-visual{display:grid;grid-template-columns:minmax(0,1fr) minmax(370px,36.6vw);gap:7.5vw}.auth-layout{width:100%;min-height:calc(100vh - 120px);min-height:calc(100svh - 120px);align-items:center;margin:0 auto;padding:40px 5.1vw 96px 6.5vw}.auth-visual{position:fixed;top:88px;left:var(--auth-page-gutter);width:calc(100vw - 2 * var(--auth-page-gutter));padding:40px 5.1vw 0 6.5vw;pointer-events:none}.auth-visual .auth-story{pointer-events:auto}.auth-story{align-self:start;min-width:0;padding-top:max(32px,calc(18.4svh - 128px))}.auth-story h1{margin:0;font-size:clamp(46px,5.2vw,80px);font-weight:800;line-height:1.25;letter-spacing:-.035em}.auth-story>p{margin:20px 0 0;color:#657dad;font-size:clamp(20px,2.2vw,34px);font-weight:650;line-height:1.5}.auth-panel{min-width:0;width:100%;max-width:440px;justify-self:center;grid-column:2;overflow-anchor:none}.auth-card{width:100%;padding:36px 36px 24px;border:1px solid rgba(255,255,255,.48);border-radius:28px;background:#eaf2fd;box-shadow:0 18px 48px -28px #3d61942e}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.auth-card{background:#e9f2ffe0;-webkit-backdrop-filter:blur(40px) saturate(105%);backdrop-filter:blur(40px) saturate(105%)}}.auth-card-heading{margin-bottom:28px}.auth-card-heading p,.auth-card-heading h2{margin:0}.auth-card-heading p{color:#5d76a6;font-size:16px;font-weight:650}.auth-card-heading h2{margin-top:6px;color:var(--auth-ink);font-size:30px;font-weight:750;line-height:1.3;letter-spacing:-.035em}.auth-card-heading h2:focus{outline:none}.auth-capability-status{display:flex;align-items:center;gap:7px;margin:0 0 14px;padding:9px 11px;border:1px solid #dce7f8;border-radius:10px;color:#58708f;background:#f5f8fd;font-size:10px;line-height:1.5}.auth-capability-status svg{flex:0 0 auto;color:var(--blue)}.auth-capability-status.is-error{border-color:#f1ded5;color:#8c5842;background:#fff8f4}.auth-capability-status.is-error svg{color:var(--orange)}.auth-card>.segmented-tabs{display:flex;margin-bottom:16px}.auth-card>.segmented-tabs button{flex:1}.auth-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.auth-fields>label{min-width:0;display:grid;align-content:start;gap:8px;color:var(--auth-ink);font-size:14px;font-weight:600}.auth-field-help{grid-column:1 / -1;margin-top:-12px}.field-control{min-height:47px;display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid #dfe5ee;border-radius:12px;color:#8390a3;background:#fff}.field-control:focus-within{border-color:#8ab5ff;box-shadow:0 0 0 3px #297cff1f}.field-control.is-invalid{border-color:#d96d68;background:snow;box-shadow:0 0 0 3px #d96d681a}.field-control input,.field-control select{min-width:0;flex:1;border:0;outline:0;background:transparent}.field-control>button{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;color:#718099;background:#f2f4f8;cursor:pointer}.field-control.verification>button{width:auto;padding:0 9px;color:var(--blue);background:var(--blue-soft);font-size:9px;font-weight:760}.direct-registration-notice{display:flex;align-items:flex-start;gap:9px;margin:13px 0 0;padding:11px 12px;border:1px solid #f0dfb8;border-radius:12px;color:#775d26;background:#fffaf0;font-size:10px;line-height:1.55}.direct-registration-notice svg{flex:0 0 auto;margin-top:1px;color:#cf8a19}.direct-registration-notice span{display:grid;gap:2px}.direct-registration-notice strong{color:#765416;font-size:10px}.field-helper,.field-error{display:block;font-size:11px;font-weight:620;line-height:1.45}.field-helper{color:#66758a}.field-error{color:#a33f3a}.auth-card .field-control{min-height:52px;padding-inline:14px 6px;border-color:var(--auth-stroke);border-radius:13px;color:#7389b5;background:#ffffff7a;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.auth-card .field-control:focus-within{border-color:var(--blue);background:#ffffffed;box-shadow:0 0 0 3px #2369f526}.auth-card .field-control.is-invalid{border-color:#b74d45;background:#fff8f7}.auth-card .field-control>svg{flex-shrink:0;width:20px;height:20px}.auth-card .field-control input,.auth-card .field-control select{width:100%;min-height:48px;color:var(--auth-ink);font:inherit;font-size:16px;font-weight:450}.auth-card .field-control>button{min-width:44px;height:44px;background:transparent;color:#3e6083}.auth-card .field-control>button svg{width:20px;height:20px}.auth-card .field-control>button:hover{background:#e1ecfad9}.auth-card .field-control.verification>button{white-space:nowrap;font-size:12px}.auth-card .field-helper{color:var(--auth-muted);font-size:12px;font-weight:400;line-height:1.6}.auth-card .field-error,.auth-card .form-error,.auth-card .form-notice{font-size:12px;line-height:1.6}.auth-card>.primary-button{min-height:52px;margin-top:28px;border-radius:14px;font-size:16px;font-weight:600;background:#096def;box-shadow:none}.auth-card>.primary-button:hover{background:#085dd0}.auth-links{display:flex;justify-content:center;gap:24px;margin-top:12px}.auth-links button{min-height:44px;display:flex;align-items:center;gap:5px;padding:5px 0;border:0;color:#1764d6;background:transparent;cursor:pointer;font-size:14px;font-weight:550}.auth-card button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.auth-card .auth-links button:hover{color:#103e7c;text-decoration:underline;text-underline-offset:4px}.auth-card button:active:not(:disabled){filter:brightness(.95)}.auth-card .direct-registration-notice,.auth-card .direct-registration-notice strong,.auth-card .auth-capability-status{font-size:12px;line-height:1.6}.auth-page--register .auth-layout{padding-block:20px}.auth-page--register .auth-card{padding:24px 28px 18px}.auth-page--register .auth-card-heading{margin-bottom:22px}.auth-page--register .auth-card-heading>p{display:none}.auth-page--register .auth-card-heading h2{margin-top:0;font-size:28px}.auth-page--register .auth-fields{grid-template-columns:minmax(0,1fr);gap:12px}.auth-page--register .auth-fields>label{gap:4px;line-height:20px}.auth-page--register .auth-field-help{margin-top:-6px}.auth-page--register .field-control{min-height:48px;gap:6px;padding-inline:12px 4px}.auth-page--register .field-control input,.auth-page--register .field-control select{min-height:44px}.auth-page--register .auth-card>.primary-button{min-height:48px;margin-top:20px}.auth-page--register .auth-links{margin-top:6px}@media(min-width:901px)and (max-height:800px){.auth-layout{padding-block:24px}.auth-visual{padding-top:24px}.auth-story{padding-top:18px}.auth-story h1{font-size:clamp(42px,4.5vw,68px)}.auth-story>p{margin-top:12px;font-size:24px}.auth-card{padding-block:32px 24px}.auth-card-heading{margin-bottom:24px}.auth-card>.primary-button{margin-top:24px}.auth-page--register .auth-layout{min-height:calc(100svh - 88px);margin-block:-16px;padding-block:8px}.auth-page--register .auth-card{padding-block:20px 12px}.auth-page--register .auth-card-heading{margin-bottom:16px}.auth-page--register .auth-card-heading h2{font-size:26px}.auth-page--register .auth-fields{gap:8px}.auth-page--register .auth-fields>label{line-height:18px}.auth-page--register .auth-field-help{margin-top:-4px}.auth-page--register .field-control{min-height:46px}.auth-page--register .field-control input,.auth-page--register .field-control select{min-height:42px}.auth-page--register .auth-card>.primary-button{min-height:46px;margin-top:16px}.auth-page--register .auth-links{margin-top:0}}@media(max-width:900px){.auth-page{padding:24px 24px 32px}.auth-layout{max-width:440px;min-height:calc(100svh - 112px);grid-template-columns:minmax(0,1fr);padding:28px 0}.auth-visual{display:none}.auth-panel{grid-column:1}.auth-brand{width:178px;height:48px}.auth-backdrop>img{object-position:30% center}}@media(max-width:480px){.auth-page{padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.auth-layout{min-height:calc(100svh - 98px);padding-block:24px}.auth-card{padding:28px 22px;border-radius:24px}.auth-card-heading h2{font-size:26px}.auth-card-heading{margin-bottom:26px}.auth-page--register .auth-layout{padding-block:12px}.auth-page--register .auth-card{padding:24px 22px 18px}.auth-page--register .auth-card-heading h2{font-size:26px}}@media(prefers-reduced-transparency:reduce){.auth-card{background:#f4f8fd;-webkit-backdrop-filter:none;backdrop-filter:none}}@media(prefers-reduced-motion:reduce){.auth-light-layer,.auth-motion-toggle{display:none}.auth-card *,.auth-card *:before,.auth-card *:after{transition:none!important}}.form-error,.form-notice{margin:10px 0 0;padding:9px;border-radius:9px;color:#aa4844;background:#fff0ef;font-size:9px}.form-notice{color:#3f782a;background:var(--green-soft)}.onboarding-page{min-height:100vh;position:relative;display:grid;place-items:center;overflow:hidden;padding:80px 25px 35px;background:#f5f8fd}.onboarding-page>img:first-child{width:180px;position:absolute;left:36px;top:24px}.onboarding-card{width:min(720px,100%);padding:34px}.onboarding-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:24px}.onboarding-progress span{height:5px;border-radius:99px;background:#e0e5ee}.onboarding-progress span.is-active{background:var(--blue)}.onboarding-card h1{margin:8px 0;font-size:32px}.onboarding-card>p:not(.eyebrow){margin:0 0 24px;color:var(--muted)}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.choice-grid button{min-height:90px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #dfe5ee;border-radius:14px;color:#52627b;background:#fff;cursor:pointer;font-weight:760}.choice-grid button.is-selected,.choice-list button.is-selected{color:var(--blue);border-color:#8eb5ff;background:var(--blue-soft)}.choice-list{display:grid;gap:9px}.choice-list button{min-height:75px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:12px;border:1px solid #dfe5ee;border-radius:13px;text-align:left;color:#52627b;background:#fff;cursor:pointer}.choice-list strong,.choice-list small{display:block}.choice-list small{margin-top:4px;color:var(--muted);font-size:9px}.onboarding-actions{display:flex;justify-content:space-between;margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}.onboarding-robot{width:170px;position:absolute;right:4%;bottom:-12px}.search-suggestions{display:grid;gap:18px;padding:18px}.search-suggestion-section{display:grid;gap:10px}.search-suggestion-heading{min-height:28px;display:flex;align-items:center;justify-content:space-between}.search-suggestion-heading p{margin:0;color:var(--muted);font-size:10px;font-weight:760;line-height:1.4}.search-suggestion-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.search-suggestions button{min-height:36px;padding:0 12px;border:1px solid #dce4ef;border-radius:999px;color:#51637f;background:#f7f9fc;cursor:pointer;font-size:10px;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.search-suggestions button:hover{border-color:#b8cff2;color:var(--blue);background:#f2f7ff}.search-suggestions small{display:block;margin-top:18px;color:#99a3b3;font-size:8px}.search-suggestions .search-suggestion-heading>button{min-height:28px;padding:0 8px;border:0;border-radius:8px;color:#7d899c;background:transparent;font-size:9px;font-weight:760}.search-suggestions .search-suggestion-heading>button:hover{color:#b4534f;background:#fff1ef}.search-history-chip{min-width:0;display:inline-flex;align-items:stretch;overflow:hidden;border:1px solid #d8e2f0;border-radius:999px;background:#f7f9fc}.search-suggestions .search-history-chip>button{min-width:0;min-height:34px;padding:0 4px 0 12px;border:0;border-radius:0;background:transparent}.search-suggestions .search-history-chip>button:first-child{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-suggestions .search-history-chip>button:last-child{width:30px;flex:0 0 30px;padding:0 8px 0 3px;color:#98a4b6}.search-suggestions .search-history-chip>button:last-child:hover{color:#b4534f}.search-empty-state{min-height:132px;display:grid;place-items:center;align-content:center;gap:9px;padding:22px;color:#8190a8;text-align:center}.search-empty-state.is-loading{grid-template-columns:auto auto}.search-empty-state p{margin:0;color:#64738a;font-size:11px;line-height:1.55}.search-result-list>div:first-child{min-height:42px;position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line);color:var(--muted);background:#fffffff7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:10px}.search-result-list>div:first-child small{color:#98a5b8;font-size:9px}.search-result-list>button{width:100%;min-height:68px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:11px;padding:10px 16px;border:0;border-top:1px solid var(--line);text-align:left;color:#233654;background:#fff;cursor:pointer;transition:background-color .14s ease}.search-result-list>div:first-child+button{border-top:0}.search-result-list>button:hover,.search-result-list>button.is-active{background:#f2f7ff}.search-result-list>button>span:nth-child(2){min-width:0}.search-result-list strong,.search-result-list small{display:block}.search-result-list strong{overflow-wrap:anywhere;font-size:12px;line-height:1.45}.search-result-list small{margin-top:4px;color:var(--muted);font-size:9px;line-height:1.55;overflow-wrap:anywhere;white-space:normal}.notification-dialog{width:min(520px,100%);max-height:calc(100dvh - 44px);display:flex;flex-direction:column}.notification-dialog>:not(.notification-list){flex-shrink:0}.notification-dialog>.eyebrow{font-size:13px;line-height:1.5}.notification-dialog .dialog-close{width:44px;height:44px}.notification-dialog>.soft-button{min-height:46px;font-size:14px}.notification-list{min-height:0;max-height:430px;overflow:auto;overscroll-behavior:contain;display:grid;grid-auto-rows:max-content;align-content:start;gap:10px;margin:16px 0;padding:3px}.notification-list>button{min-height:88px;position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:12px;padding:14px 26px 14px 14px;border:0;border-radius:14px;text-align:left;color:var(--ink);background:#f3f6fc;font-family:inherit;cursor:pointer}.notification-list>button.is-read{background:#fafaf8}.notification-list>button:hover{background:#edf3fd}.notification-list>button:active{background:#e5edfc}.notification-list>button:focus-visible,.notification-dialog>button:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.notification-list>button>span:not(.surface-icon){min-width:0}.notification-list strong,.notification-list small{display:block;overflow-wrap:anywhere}.notification-list strong{font-size:16px;line-height:1.5;font-weight:650}.notification-list>button.is-read strong{font-weight:550}.notification-list small{margin-top:6px;color:var(--muted);font-size:14px;line-height:1.65}.notification-list i{width:7px;height:7px;position:absolute;right:13px;top:20px;border-radius:50%;background:#ef5d59}.notification-dialog .empty-state.compact{min-height:170px;margin-top:0;padding:20px 12px}.notification-dialog .empty-state.compact h3{margin-top:14px;font-size:18px;line-height:1.5}.notification-dialog .empty-state.compact p{margin-top:4px;color:var(--muted);font-size:14px;line-height:1.65}@media(max-width:560px){.notification-dialog{max-height:calc(100dvh - 44px);padding:24px 18px}.notification-dialog .notification-list>button{grid-template-columns:36px minmax(0,1fr);gap:10px;padding-left:10px}.notification-dialog .notification-list .surface-icon{width:36px;height:36px;border-radius:11px}.notification-dialog .notification-list small,.notification-dialog .empty-state.compact p{font-size:16px}}@media(max-height:520px){.notification-dialog{padding-block:18px}.notification-dialog>.dialog-icon,.notification-dialog>.eyebrow{display:none}.notification-dialog>h2{margin-top:0;padding-right:38px;font-size:24px}}@media(max-width:1220px){.inner-page{padding-inline:18px}.pk-coding-workspace{grid-template-columns:210px minmax(340px,1fr)}.pk-judge-panel{grid-column:1 / -1}.learning-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.learning-overview>.continue-course{grid-column:1 / -1;padding:0 0 18px;margin-bottom:14px;border-right:0;border-bottom:1px solid var(--line)}.learning-overview>.study-stat{min-height:68px}.course-grid{grid-template-columns:repeat(2,1fr)}.profile-tools-grid{grid-template-columns:repeat(3,1fr)}.home-module-grid{grid-template-columns:repeat(2,1fr)}.lab-workspace{grid-template-columns:230px minmax(430px,1fr)}.simulator-panel{grid-column:1 / -1;min-height:430px;display:grid;grid-template-columns:minmax(320px,1fr) minmax(280px,.8fr);grid-template-rows:auto 1fr auto;gap:8px 18px}.simulator-heading{grid-column:1 / -1}.simulator-stage{grid-row:2 / span 2}.speed-control{align-self:end}.run-result{align-self:start}.lesson-workspace{grid-template-columns:220px minmax(420px,1fr)}.lesson-assistant{position:static;grid-column:1 / -1;display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:15px;text-align:left}.lesson-assistant img{width:80px;height:80px}.lesson-assistant p{min-height:0;margin:0}}@media(min-width:881px)and (max-width:1100px){.chat-topbar{grid-template-columns:auto minmax(132px,1fr) auto;gap:7px;padding-inline:10px}.chat-assistant-identity>span{display:none}.ai-mode-tabs button{grid-template-columns:1fr;justify-items:center;padding-inline:4px}.ai-mode-tabs button>strong{display:none}}@media(max-width:880px){.main-content.ai-main-content{height:auto;min-height:100dvh;display:block;overflow:visible}.ai-tutor-page{min-height:calc(100dvh - 116px);display:block;overflow:visible;padding-bottom:26px}.inner-page{padding:2px 0 26px}.inner-page-heading{min-height:135px;display:block}.inner-page-actions{margin-top:15px;flex-wrap:wrap}.section-heading-row{align-items:flex-start}.learning-overview{gap:10px}.learning-overview>div{border:0;border-radius:13px;background:#f7f9fc}.learning-overview>.continue-course{background:transparent;border-radius:0;margin-bottom:0}.continue-course{grid-column:1 / -1}.learning-overview>div:last-child{display:flex}.course-detail-grid,.profile-dashboard-grid,.social-grid,.syntax-layout,.analytics-board{grid-template-columns:1fr}.course-hero{grid-template-columns:74px 1fr}.course-hero-icon{width:70px;height:70px}.course-hero-action{grid-column:1 / -1}.curriculum-filter-row{display:grid;grid-template-columns:1fr 1fr}.curriculum-filter-row label{min-width:0}.curriculum-filter-row p{grid-column:1 / -1;margin:0}.home-module-grid,.recommendation-row{grid-template-columns:1fr 1fr}.recommendation-row>button:last-child{grid-column:1 / -1}.lab-main-content{padding:10px 10px 20px}.lab-topbar{grid-template-columns:1fr auto}.lab-topbar>div:nth-child(2){display:none}.lab-workspace{grid-template-columns:1fr}.code-editor-panel,.simulator-panel{grid-column:1}.simulator-panel{display:flex;min-height:570px}.ai-workbench{height:auto;grid-template-columns:1fr;overflow:visible}.ai-history{display:block;max-height:360px;overflow:auto}.chat-workspace{min-height:760px}.ai-mode-guide.is-popover{grid-template-columns:44px minmax(0,1fr);margin:0}.ai-mode-guide ol{grid-column:1 / -1}.pioneer-feature,.monthly-task,.contest-feature{grid-template-columns:1fr}.pioneer-feature>div:last-child,.contest-feature>div{padding:4px 8px 14px}.lecture-grid,.task-grid{grid-template-columns:1fr}.competition-row{grid-template-columns:52px 1fr}.competition-action{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}.detail-list{grid-template-columns:1fr}.profile-hero{grid-template-columns:100px 1fr;padding:24px}.level-card{grid-column:1 / -1}.learning-profile-layout{grid-template-columns:1fr}.learning-profile-insights{grid-template-columns:1.25fr .75fr}.learning-profile-boundary{grid-column:1 / -1}.daily-goal-settings{grid-template-columns:1fr;gap:20px}.daily-goal-settings form{grid-template-columns:minmax(0,1fr) 190px auto}.profile-tools-grid{grid-template-columns:repeat(3,1fr)}.lesson-workspace{grid-template-columns:1fr}.lesson-outline{display:none}.lesson-assistant{grid-column:1}.lesson-content{min-height:0}.notes-layout,.friends-board,.help-layout,.friend-add-hero{grid-template-columns:1fr}.recent-activity{grid-column:1}.honor-wall{grid-template-columns:repeat(2,1fr)}.onboarding-robot{opacity:.25;right:-30px}.pk-coding-workspace{grid-template-columns:1fr}.pk-task-panel,.pk-judge-panel{padding:14px}.pk-code-panel{grid-template-rows:43px minmax(300px,1fr) auto}.pk-editor-area,.pk-editor-area textarea{min-height:300px}}@media(max-width:420px){.lab-topbar{grid-template-columns:minmax(0,1fr);gap:10px}.lab-topbar>.back-button{justify-self:start}.lab-top-actions{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.lab-top-actions>button{width:100%;min-width:0}}@media(max-width:620px){.inner-page-heading h1{font-size:29px}.inner-page-actions{display:grid;grid-template-columns:1fr}.inner-page-actions>*{width:100%}.home-module-grid,.recommendation-row,.course-grid,.bank-grid{grid-template-columns:1fr}.recommendation-row>button:last-child{grid-column:1}.home-module-card{min-height:145px}.learning-overview{grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));padding:16px;gap:8px}.learning-overview>.study-stat{min-height:78px;padding:8px 4px;gap:6px}.learning-overview>.study-stat strong{font-size:14px}.course-catalog>.section-heading-row{display:grid;grid-template-columns:minmax(0,1fr)}.course-catalog .search-control{width:100%;min-width:0;box-sizing:border-box}.course-catalog .search-control input{width:100%;min-width:0}.course-catalog>.segmented-tabs{width:100%;max-width:100%;overflow-x:auto;box-sizing:border-box;scrollbar-width:thin}.course-catalog>.segmented-tabs button{flex:0 0 auto}.curriculum-filter-row{grid-template-columns:1fr}.curriculum-filter-row p{grid-column:1}.course-pagination{gap:5px}.course-pagination-step{min-width:36px!important;width:36px;padding:0!important}.course-pagination-step span{display:none}.continue-course{grid-template-columns:100px minmax(0,1fr);grid-template-areas:"cover copy" "action action";gap:14px 12px}.continue-course h2{font-size:16px}.continue-course .primary-button{width:100%;justify-content:center}.weekly-goal,.study-stat{min-height:90px}.learning-path{grid-template-columns:1fr;gap:10px}.learning-path:before{display:none}.path-node{min-height:56px;display:grid;grid-template-columns:42px 1fr;grid-template-rows:1fr 1fr;gap:0 10px;text-align:left}.path-node>span{grid-row:1 / span 2;width:40px;height:40px}.path-node strong,.path-node small{margin:0}.course-hero{grid-template-columns:1fr;padding:20px}.course-hero-icon{width:64px;height:64px}.course-hero-stats{display:grid;gap:7px}.quick-prompts{grid-template-columns:1fr}.partial-sync-banner{align-items:flex-start;margin-inline:0}.partial-sync-banner>button{flex:0 0 auto}.chat-workspace{grid-template-rows:auto minmax(0,1fr) auto}.chat-topbar{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:10px 12px}.chat-assistant-identity{min-width:0}.ai-mode-tabs{grid-column:1 / -1;grid-row:2;width:100%}.ai-mode-tabs button{min-height:34px;padding:3px 6px}.ai-mode-guide.is-popover{width:min(420px,calc(100vw - 44px));right:-41px;grid-template-columns:38px minmax(0,1fr);gap:9px;padding:13px 44px 13px 13px}.ai-mode-guide-icon{width:38px;height:38px;border-radius:11px}.ai-mode-guide-copy h2{font-size:13px}.ai-mode-guide-copy>span{font-size:9px}.ai-mode-guide ol{gap:5px}.ai-mode-guide li{min-width:0;min-height:42px;grid-template-columns:18px minmax(0,1fr);gap:4px;padding:5px}.ai-mode-guide li>span{width:18px;height:18px}.chat-stream{padding-inline:12px}.chat-welcome{margin-top:14px}.chat-message>div{max-width:85%}.ai-composer{margin-inline:8px}.ai-composer>div:last-child>span{display:none}.composer-mode-context{align-items:flex-start}.composer-mode-context small{white-space:normal;line-height:1.4}.composer-learning-profile-link{min-width:42px;grid-template-columns:1fr;justify-items:center;padding:6px}.composer-learning-profile-link>span,.composer-learning-profile-link>svg:last-child{display:none}.conversation-context-chips>span:first-child{display:none}.conversation-context-chips button{margin-left:0}.composer-tool,.send-button{width:42px;height:42px}.segmented-tabs.prominent{width:100%}.segmented-tabs.prominent button{min-width:0;flex:1}.pioneer-visual{min-height:210px}.ideology-page .section-heading-row{display:grid;grid-template-columns:minmax(0,1fr)}.inline-filter,.inline-filter select{width:100%}.pioneer-dialog{max-height:calc(100vh - 20px)}.comment-panel{padding:13px}.comment-composer{grid-template-columns:1fr}.comment-composer .primary-button{width:100%}.pioneer-feature-actions,.contest-feature-actions{display:grid;grid-template-columns:1fr}.pioneer-feature-actions>button,.contest-feature-actions>button{width:100%}.course-cover .favorite-button.on-course-cover,.lecture-actions .favorite-button,.competition-action .favorite-button{min-height:44px}.lecture-actions{flex-wrap:wrap}.lecture-actions .favorite-button{width:100%;justify-content:center;margin-left:0}.pioneer-dialog .dialog-options{grid-template-columns:1fr}.monthly-task{padding:15px}.filter-bar{display:grid;grid-template-columns:1fr 1fr}.filter-bar label select{min-width:0;width:100%}.toggle-filter{grid-column:1 / -1;margin-left:0;justify-content:center}.competition-row{grid-template-columns:44px 1fr;padding:14px}.competition-badge{width:43px;height:43px}.competition-meta{display:grid;gap:5px}.competition-action{display:grid;grid-template-columns:auto minmax(0,.85fr) minmax(0,1fr);gap:8px;width:100%}.competition-action>button{min-width:0;padding-inline:10px;justify-content:center}.contest-dialog-actions{grid-template-columns:1fr}.prep-plan-list>button{grid-template-columns:24px minmax(0,1fr) 16px;padding-inline:10px}.prep-plan-list strong{white-space:normal}.profile-hero{grid-template-columns:1fr;gap:20px;padding:22px 16px;text-align:center}.large-avatar{margin-inline:auto}.profile-identity>div:first-child,.profile-identity>p,.profile-numbers{justify-content:center}.profile-numbers>span{min-width:min(136px,42vw);text-align:left}.level-card{text-align:left}.level-card-footer{align-items:flex-start}.learning-profile-panel{padding:17px 14px}.learning-profile-header{display:grid}.learning-profile-title{align-items:center}.learning-profile-title h2{font-size:18px}.learning-profile-layout,.learning-profile-insights{grid-template-columns:1fr}.learning-profile-boundary{grid-column:auto}.learning-profile-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.learning-profile-topic-row{grid-template-columns:34px minmax(0,1fr)}.learning-profile-state{grid-column:2;justify-self:start}.learning-profile-confidence{margin-left:44px;align-items:flex-start;flex-direction:column;gap:3px}.daily-goal-settings form{grid-template-columns:1fr;grid-template-areas:"presets" "custom" "help" "save";align-items:stretch;row-gap:12px}.daily-goal-settings form>.primary-button{width:100%;justify-content:center}.profile-tools-grid{grid-template-columns:repeat(2,1fr)}.sensor-demo,.knowledge-example{grid-template-columns:1fr}.robot-core{margin-inline:auto}.lesson-assistant{display:block;text-align:center}.lesson-page>.inner-page-heading{min-height:0;padding:21px 18px;border-radius:20px}.lesson-content{padding:18px;border-radius:20px}.lesson-content-head{align-items:flex-start}.lesson-section-status{display:none}.mission-brief-card{grid-template-columns:1fr;padding:14px}.mission-role{min-height:100px}.scenario-detail-grid,.lesson-warmup ol,.knowledge-card-body>div,.practice-step-grid,.practice-check-list,.practice-review-grid{grid-template-columns:1fr}.knowledge-card-body{padding:0 13px 14px}.knowledge-card>button{grid-template-columns:38px minmax(0,1fr) 18px;padding-inline:12px}.knowledge-card>button>span:first-child{width:36px;height:36px}.practice-step-grid article{min-height:0}.practice-brief-card{grid-template-columns:44px minmax(0,1fr);padding:14px}.lesson-case-file>header{padding:18px 16px}.case-file-meta{align-items:flex-start;flex-direction:column;gap:5px}.lesson-case-file h3{font-size:21px}.lesson-case-file dl{grid-template-columns:1fr}.lesson-case-file dl>div+div{border-top:1px solid #d8dee6;border-left:0}.case-evidence-table{margin-inline:16px;border-top:1px solid #d8dee6}.case-evidence-table [role=row]{grid-template-columns:1fr}.case-evidence-table [role=row]:first-child{display:none}.case-evidence-table [role=cell]+[role=cell]{padding-top:0;border-left:0}.case-evidence-table [role=cell]:first-child{color:#244d6e;font-weight:800}.case-knowledge-links{padding:18px 16px}.case-knowledge-links>div{grid-template-columns:1fr;gap:4px}.lesson-quiz>header{display:block;padding:18px 16px}.lesson-quiz-sync{justify-items:start;margin-top:12px}.lesson-practice-mastery{padding-inline:16px}.lesson-practice-mastery>span{flex:1 1 145px}.lesson-quiz-question{padding:20px 16px}.lesson-quiz-question footer{flex-direction:column}.quiz-submit,.quiz-feedback{width:100%;box-sizing:border-box}.lesson-review-queue{margin:0 16px 18px}.lesson-review-queue>header{align-items:flex-start;flex-direction:column}.lesson-review-queue article{grid-template-columns:24px minmax(0,1fr)}.lesson-review-queue article button{grid-column:1 / -1;width:100%}.reflection-box>div{align-items:flex-start;flex-direction:column}.reflection-box .soft-button{width:100%;justify-content:center}.lesson-completion-gate ul{grid-template-columns:1fr}.lesson-completion-gate>button{width:100%;justify-content:center}.lesson-navigation{gap:8px}.lesson-navigation>button{flex:1;justify-content:center}.syntax-detail .section-heading-row{display:grid}.syntax-actions{display:grid;grid-template-columns:1fr 1fr}.syntax-detail .soft-button{width:100%}.practice-workspace{padding:14px}.practice-topbar>span{display:none}.question-card h2{font-size:19px}.honor-wall,.analytics-board{grid-template-columns:1fr}.toolkit-resource{grid-template-columns:minmax(0,1fr) 44px}.toolkit-resource-main{grid-template-columns:40px minmax(0,1fr);gap:9px;padding:11px}.toolkit-resource-main .surface-icon{width:40px;height:40px}.toolkit-resource-main small{white-space:normal}.notes-layout>section,.friends-board>section,.help-layout>section{padding:16px}.friends-workspace{--friends-inset: 16px}.friend-add-copy{padding:24px var(--friends-inset)}.friend-code-form{grid-template-columns:1fr}.friend-code-form>button{min-height:48px}.my-friend-code{grid-template-columns:96px minmax(0,1fr);gap:15px;margin:0 var(--friends-inset) 18px}.friend-qr{width:96px;height:96px;border-radius:13px}.friend-qr svg{width:68px;height:68px}.my-friend-code strong{font-size:19px}.friend-row{grid-template-columns:52px minmax(0,1fr) auto;gap:9px;padding:10px 0}.friend-pk-button{padding-inline:11px}.friend-nudge-button{grid-column:3;grid-row:1}.friend-row .friend-pk-button{grid-column:2 / -1;grid-row:2;justify-self:end}.toolkit-filter-row{flex-wrap:wrap}.toolkit-filter-row>span{flex:1 0 calc(100% - 38px)}.toolkit-filter-row>button{flex:1;padding-inline:8px}.mistake-list article{grid-template-columns:34px minmax(0,1fr)}.mistake-list article>.soft-button{grid-column:1 / -1;width:100%}.recent-activity>div{grid-template-columns:40px minmax(0,1fr)}.friend-request{grid-template-columns:52px minmax(0,1fr);padding-block:10px}.friend-request-actions,.request-cancel{grid-column:2;justify-self:start}.pk-entry-grid{grid-template-columns:1fr}.pk-arena{padding:21px 16px}.pk-header{align-items:flex-start}.pk-arena>.primary-button{width:100%;min-width:0}.pk-join-card{padding:21px 16px}.pk-room{padding:20px 15px}.pk-room-header{display:grid;gap:14px}.pk-connection{width:100%;box-sizing:border-box;justify-items:start}.pk-room-code{align-items:flex-end}.pk-room-code strong{font-size:21px}.pk-players.is-networked{grid-template-columns:1fr;gap:34px}.pk-players.is-networked>div{min-height:152px}.pk-versus{left:50%;top:-28px;transform:translate(-50%,-50%);font-size:18px}.pk-room-actions{display:grid;grid-template-columns:1fr}.pk-room-actions>button{width:100%}.pk-editor-actions{grid-template-columns:1fr 1fr}.pk-editor-actions .primary-button{grid-column:1 / -1;width:100%}.pk-editor-area textarea{font-size:14px}.onboarding-page{padding-inline:12px}.onboarding-page>img:first-child{left:18px;width:150px}.onboarding-card{padding:25px 18px}.choice-grid,.choice-grid.three{grid-template-columns:1fr 1fr}.search-suggestions{padding:17px 15px}.search-suggestions .search-history-chip>button:first-child{max-width:min(210px,58vw)}.search-empty-state{padding:20px 15px}.modal-backdrop{padding:10px}.profile-edit-fields{gap:11px}.settings-faq-list summary{padding-inline:10px}}.sidebar-footer{display:grid;gap:12px;margin-top:auto}.sidebar-feature-card,.sidebar-profile-card{width:100%;border:0;text-align:left;cursor:pointer}.sidebar-feature-card{min-height:174px;display:flex;flex-direction:column;align-items:flex-start;padding:16px;border-radius:20px;color:#193969;background:#e9f5ff;box-shadow:0 12px 28px #3785d21f;transition:transform .18s ease,box-shadow .18s ease}.sidebar-feature-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px #3785d22e}.sidebar-feature-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;color:#fff;background:#ffb526;box-shadow:0 8px 16px #f4a41533}.sidebar-feature-card strong{margin-top:12px;font-size:13px}.sidebar-feature-card small{margin-top:5px;color:#63809f;font-size:11px;line-height:1.5}.sidebar-feature-cta{width:100%;min-height:36px;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:auto;border-radius:12px;color:#fff;background:var(--blue);font-size:11px;font-weight:820}.sidebar-profile-card{min-height:58px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;padding:8px;border-radius:14px;background:#fff;transition:background-color .16s ease}.sidebar-profile-card:hover{background:#f3f7ff}.sidebar-profile-card .avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#fff;background:#5b94f7}.sidebar-profile-card strong,.sidebar-profile-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-profile-card strong{color:#173052;font-size:12px}.sidebar-profile-card small{margin-top:3px;color:#7a8aa1;font-size:10px}.sidebar-profile-card>svg{color:#8291a7}.sidebar-profile-card .avatar{overflow:hidden}.sidebar-profile-card .avatar img{width:100%;height:100%;object-fit:cover}.dashboard-home{min-width:0;padding:2px 0 30px}.dashboard-topbar{min-height:84px;position:relative;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:22px}.dashboard-search-wrap{width:min(460px,46vw);position:relative;z-index:30;flex:0 1 auto}.dashboard-search{width:100%;min-height:48px;position:relative;z-index:2;display:flex;align-items:center;gap:12px;padding:0 18px;border:0;border-radius:17px;color:#74839a;text-align:left;background:transparent;will-change:transform}.dashboard-search input{min-width:0;flex:1;border:0;outline:0;color:#203453;background:transparent;font:inherit;font-size:13px}.dashboard-search input::placeholder{color:#8290a4;opacity:1}.dashboard-search input::-webkit-search-cancel-button{display:none}.dashboard-search-surface{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border:1px solid #dce8f6;border-radius:inherit;background:#fff;box-shadow:0 8px 22px #305b9412;pointer-events:none;transform-origin:left center;will-change:transform,box-shadow;transition:border-color .18s ease,background-color .18s ease}.dashboard-search-wrap:hover .dashboard-search-surface,.dashboard-search-wrap.is-open .dashboard-search-surface,.dashboard-search:focus-within .dashboard-search-surface{border-color:#a9c7f6;background:#fbfdff}.dashboard-search-wrap.is-open .dashboard-search-surface,.dashboard-search:focus-within .dashboard-search-surface{outline:2px solid rgba(47,126,236,.18);outline-offset:2px}.dashboard-search-icon{position:relative;z-index:1;flex:0 0 auto;color:#60738e}.dashboard-search-clear{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;padding:0;border:0;border-radius:10px;color:#74839a;background:#edf3fa;cursor:pointer;will-change:transform;transition:color .15s ease,background-color .15s ease}.dashboard-search-clear:hover{color:#275fbd;background:#e2edfb}.dashboard-search-clear:disabled{pointer-events:none}.dashboard-search-clear:focus-visible{outline:2px solid #4a8eec;outline-offset:2px}.dashboard-search-clear svg{will-change:transform}.dashboard-search-spinner{width:17px;height:17px;flex:0 0 17px;border:2px solid #d9e5f4;border-top-color:var(--blue);border-radius:50%;animation:search-spin .7s linear infinite}@keyframes search-spin{to{transform:rotate(360deg)}}.dashboard-search-panel{width:100%;max-height:min(560px,calc(100vh - 118px));position:absolute;top:calc(100% + 10px);left:0;z-index:35;overflow-x:hidden;overflow-y:auto;border:1px solid #dbe6f3;border-radius:20px;background:#fffffffa;box-shadow:0 24px 54px #18376033;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overscroll-behavior:contain;scrollbar-gutter:stable}.dashboard-topbar-actions{display:flex;align-items:center;gap:10px}.dashboard-stat{min-width:72px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:0;border-radius:14px;color:#925d08;background:#fff8e8;cursor:pointer}.dashboard-stat svg{color:#ffad1f}.dashboard-stat strong{color:#173052;font-size:13px}.dashboard-stat span{color:#718097;font-size:11px}.dashboard-stat.is-points{color:#256fe8;background:#ecf5ff}.dashboard-stat.is-points svg{color:#2a8df4}.dashboard-notification{background:#fff;border-color:#dce8f6}.dashboard-layout{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 298px;align-items:start;gap:18px}.dashboard-primary{min-width:0;display:grid;gap:20px}.dashboard-hero{min-height:312px;position:relative;overflow:hidden;border-radius:24px;background:#9bdcf8;box-shadow:0 16px 34px #2f8cc72e}.dashboard-hero>img{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;object-fit:cover;object-position:center 47%}.dashboard-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#e8f7fff7,#e8f7ffe6 24%,#e8f7ff80 43%,#e8f7ff0f 59%,#e8f7ff00 70%)}.dashboard-hero-copy{width:52%;position:relative;z-index:2;padding:38px 0 34px 38px;color:#10224c}.dashboard-kicker{display:flex;align-items:center;gap:6px;margin:0 0 8px;color:#1164d9;font-size:12px;font-weight:820}.dashboard-hero-copy h1{margin:0;font-size:clamp(34px,3.1vw,48px);line-height:1.02;letter-spacing:-.045em}.dashboard-hero-copy h1 span{color:#0874e9}.dashboard-hero-copy>p:not(.dashboard-kicker){margin:14px 0 20px;color:#274769;font-size:14px;line-height:1.55}.dashboard-primary-button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:0 22px;border:0;border-radius:15px;color:#fff;background:#0878ed;box-shadow:0 10px 22px #0767dc3d;font-size:13px;font-weight:820;cursor:pointer;transition:transform .18s ease,background-color .18s ease}.dashboard-primary-button:hover{transform:translateY(-2px);background:#0067dc}.dashboard-hero-context{min-height:40px;position:absolute;z-index:2;top:18px;right:18px;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid rgba(255,255,255,.8);border-radius:999px;color:#17345d;background:#ffffffd1;box-shadow:0 8px 20px #2260931f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:11px;font-weight:780;cursor:pointer}.dashboard-section{min-width:0}.dashboard-section-heading{min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.dashboard-section-heading h2{margin:0;color:#10213e;font-size:18px;letter-spacing:-.025em}.dashboard-section-heading button,.reward-card>button,.ai-quick-card>button{display:inline-flex;align-items:center;gap:5px;border:0;color:#146ad8;background:transparent;font-size:11px;font-weight:760;cursor:pointer}.continue-learning-card{min-height:122px;display:grid;grid-template-columns:150px minmax(0,1fr) 106px;align-items:center;gap:18px;padding:14px;border:1px solid #d9e9fa;border-radius:21px;background:#e9f5ff}.continue-learning-card>img{width:150px;height:94px;border-radius:15px;object-fit:cover}.continue-learning-copy{min-width:0}.continue-learning-copy p{margin:0 0 4px;color:#2271d2;font-size:10px;font-weight:780}.continue-cover-placeholder{display:grid;place-items:center;width:100%;height:94px;border-radius:15px;color:#5684b4;background:#dcebf8}.continue-learning-copy h3{margin:0;color:#132846;font-size:16px;overflow-wrap:anywhere}.continue-learning-copy>span{display:block;margin-top:5px;color:#687993;font-size:11px}.dashboard-progress{display:flex;align-items:center;gap:9px;margin-top:12px}.dashboard-progress>span{height:7px;flex:1;overflow:hidden;border-radius:999px;background:#d8e5f4}.dashboard-progress i{width:var(--progress);height:100%;display:block;border-radius:inherit;background:#1680ee}.dashboard-progress strong{color:#243851;font-size:11px;font-variant-numeric:tabular-nums}.continue-start{min-height:46px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 16px;border:0;border-radius:15px;color:#fff;background:#0b7aeb;box-shadow:0 9px 18px #0b7aeb33;font-size:12px;font-weight:820;cursor:pointer}.skill-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.skill-card{min-width:0;min-height:82px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:9px;padding:11px;border:0;border-radius:18px;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.skill-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px #2d4f841a}.skill-card>span:first-child{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;color:#fff}.skill-card strong,.skill-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-card strong{color:#172845;font-size:12px}.skill-card small{margin-top:4px;color:#687993;font-size:10px}.skill-card>svg{color:#4b607f}.skill-card.is-violet{background:#f1ebff}.skill-card.is-violet>span:first-child{background:#8066e8}.skill-card.is-rose{background:#ffecef}.skill-card.is-rose>span:first-child{background:#ef6673}.skill-card.is-green{background:#e6f8ef}.skill-card.is-green>span:first-child{background:#30b96d}.skill-card.is-orange{background:#fff0de}.skill-card.is-orange>span:first-child{background:#f5a022}.dashboard-recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dashboard-recommendation-grid>button{min-width:0;min-height:88px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;padding:12px;border:1px solid #dee8f4;border-radius:17px;color:#173052;text-align:left;background:#fff;cursor:pointer}.dashboard-recommendation-grid>button>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#146edc;background:#eaf3ff}.dashboard-recommendation-grid>button small,.dashboard-recommendation-grid>button strong,.dashboard-recommendation-grid>button p{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-recommendation-grid>button small{color:#3579d3;font-size:9px;font-weight:760}.dashboard-recommendation-grid>button strong{margin-top:3px;font-size:11px}.dashboard-recommendation-grid>button p{margin:3px 0 0;color:#718198;font-size:9px}.dashboard-recommendation-grid>button>svg{color:#8b9ab0}.dashboard-recommendation-empty{grid-column:1 / -1;min-height:82px;display:flex;align-items:center;gap:11px;padding:14px;border:1px dashed #bad3f2;border-radius:17px;color:#2873d4;background:#f5f9ff}.dashboard-recommendation-empty strong,.dashboard-recommendation-empty small{display:block}.dashboard-recommendation-empty strong{font-size:12px}.dashboard-recommendation-empty small{margin-top:4px;color:#718198;font-size:10px}.dashboard-rail{min-width:0;display:grid;gap:14px}.rail-card{border:1px solid #dee8f3;border-radius:21px;background:#fff;box-shadow:0 10px 26px #2f517e12}.daily-goal-card,.growth-card{padding:18px}.rail-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.rail-heading h2{margin:0;color:#142642;font-size:15px}.rail-heading>span{color:#687993;font-size:10px;font-weight:760}.rail-heading>button{min-height:28px;padding:0 9px;border:0;border-radius:9px;color:#63738d;background:#f3f6fa;font-size:9px;cursor:pointer}.daily-goal-value{display:flex;align-items:center;gap:12px;margin-top:18px}.daily-goal-value>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;color:#ee8e00;background:#fff2d8}.daily-goal-value strong{display:block;color:#152945;font-size:24px;line-height:1;font-variant-numeric:tabular-nums}.daily-goal-value small{display:block;margin-top:4px;color:#718198;font-size:10px}.week-checks{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-top:15px}.week-checks>span{min-width:0;display:grid;justify-items:center;gap:4px;color:#c4cfdd}.week-checks>span.is-done{color:#1680ee}.week-checks small{color:#718198;font-size:8px}.mini-study-chart{height:86px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:4px;margin-top:14px}.mini-study-chart>div{min-width:0;height:100%;display:grid;grid-template-rows:15px minmax(32px,1fr) 13px;gap:3px;align-items:end;justify-items:center}.mini-study-chart small,.mini-study-chart em{color:#718198;font-size:7px;font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}.mini-study-chart>div>span{width:8px;height:100%;position:relative;overflow:hidden;border-radius:999px;background:#edf3fa}.mini-study-chart>div>span>i{width:100%;height:var(--bar-height);position:absolute;inset:auto 0 0;border-radius:inherit;background:linear-gradient(180deg,#56b6ff,#147df0);transition:height .26s ease}.study-session-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 8px;min-width:0;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);color:var(--ink)}.study-session-heading{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;font-size:12px;line-height:1.5}.study-session-heading>span:first-child{display:inline-flex;align-items:center;gap:5px;color:var(--muted)}.study-session-state{color:var(--muted);font-size:11px}.study-session-inline.is-active .study-session-state{color:var(--code-success)}.study-session-inline.is-error .study-session-state,.study-session-error{color:var(--code-error)}.study-session-clock{min-width:0;color:var(--ink);font-size:22px;line-height:1.4;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.study-session-inline>button{min-height:44px;min-width:64px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;border:1px solid var(--code-border);border-radius:11px;color:var(--muted);background:transparent;font:inherit;font-size:12px;cursor:pointer;transition:color .14s ease,background-color .14s ease,border-color .14s ease}.study-session-inline>button:hover:not(:disabled){color:var(--blue-dark);background:var(--blue-soft);border-color:var(--blue)}.study-session-inline>button:active:not(:disabled){background:var(--code-border)}.study-session-inline>button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.study-session-inline>button:disabled{opacity:.5;cursor:not-allowed}.study-session-error{grid-column:1 / -1;margin:0;font-size:12px;line-height:1.6;overflow-wrap:anywhere}@media(max-width:880px){.lesson-outline{display:contents}.lesson-outline>div:first-child,.lesson-outline>:not(.study-session-inline){display:none}.lesson-outline>.study-session-inline{grid-template-columns:minmax(0,1fr) auto auto;margin:0;padding:0 4px 14px;border-top:0;border-bottom:1px solid var(--line);column-gap:14px}.lesson-outline .study-session-heading{grid-column:auto;align-items:flex-start;flex-direction:column;gap:2px}.lesson-outline .study-session-clock{font-size:20px}}@media(prefers-reduced-motion:reduce){.study-session-inline>button{transition:none}}.growth-list{display:grid;margin-top:9px}.growth-row{min-height:49px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;border-top:1px solid #edf1f6}.growth-row:first-child{border-top:0}.growth-row>span{width:30px;height:30px;display:grid;place-items:center;border-radius:10px}.growth-row strong{color:#2a3b55;font-size:11px}.growth-row small{color:#63738b;font-size:10px;font-weight:760;font-variant-numeric:tabular-nums}.growth-row.is-blue>span{color:#1f76dd;background:#eaf3ff}.growth-row.is-green>span{color:#2a9d5b;background:#e8f8ef}.growth-row.is-orange>span{color:#d98200;background:#fff1d9}.growth-row.is-violet>span{color:#7560d8;background:#f0ebff}.reward-card{position:relative;overflow:hidden;padding:17px 18px;background:#ecf7ff}.reward-icon{width:50px;height:50px;position:absolute;right:16px;top:17px;display:grid;place-items:center;border-radius:16px;color:#f19a12;background:#fff3d6}.reward-card>div:first-of-type{padding-right:58px}.reward-card p,.ai-quick-card p{margin:0;color:#3274bd;font-size:9px;font-weight:800}.reward-card h2,.ai-quick-card h2{margin:5px 0;color:#173052;font-size:13px;line-height:1.35}.reward-card small,.ai-quick-card small{color:#68809a;font-size:9px;line-height:1.45}.reward-card>button{margin-top:10px;padding:0}.ai-quick-card{min-height:112px;position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center;overflow:hidden;padding:14px;background:#f1f6ff}.ai-quick-card>img{width:72px;height:78px;align-self:end;object-fit:contain;object-position:bottom center}.ai-quick-card p{display:flex;align-items:center;gap:4px}.ai-quick-card>button{grid-column:2;justify-self:start;margin-top:-8px;padding:0}@media(max-width:1220px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 260px}.dashboard-hero-copy{width:57%;padding-left:30px}.continue-learning-card{grid-template-columns:120px minmax(0,1fr) 94px;gap:13px}.continue-learning-card>img{width:120px}.skill-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-recommendation-grid{grid-template-columns:1fr}}@media(max-width:1080px){.dashboard-layout{grid-template-columns:1fr}.dashboard-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.daily-goal-card,.growth-card{min-height:200px}.ai-quick-card{min-height:150px}}@media(max-width:880px){.sidebar-footer{display:none}.dashboard-topbar{min-height:70px}.dashboard-search-wrap{width:min(500px,64vw)}.dashboard-hero{min-height:300px}.dashboard-hero-copy{width:60%;padding-left:26px}.dashboard-hero-copy h1{font-size:36px}.dashboard-hero-context{display:none}}@media(max-width:680px){.dashboard-search-wrap{width:auto;min-width:0;flex:1}.dashboard-stat{min-width:44px;width:44px;padding:0}.dashboard-stat span,.dashboard-stat strong{display:none}.dashboard-hero{min-height:420px}.dashboard-hero>img{height:64%;top:auto;object-position:67% 50%;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 28%);mask-image:linear-gradient(to bottom,transparent,#000 28%)}.dashboard-hero:after{background:linear-gradient(128deg,#e8f7fff7,#e8f7ffeb 26%,#e8f7ffa6 43%,#e8f7ff00 65%)}.dashboard-hero-copy{width:100%;padding:26px 22px}.dashboard-hero-copy h1{font-size:34px}.dashboard-hero-copy>p:not(.dashboard-kicker){margin-block:12px 16px}.continue-learning-card{grid-template-columns:92px minmax(0,1fr)}.continue-learning-card>img{width:92px;height:86px}.continue-start{grid-column:1 / -1;width:100%}.skill-card-grid,.dashboard-rail,.dashboard-recommendation-grid{grid-template-columns:1fr}.daily-goal-card,.growth-card,.ai-quick-card{min-height:unset}}@media(max-width:420px){.dashboard-home{padding-bottom:12px}.dashboard-topbar{gap:8px}.dashboard-topbar-actions{gap:6px}.dashboard-search{min-height:44px;padding-inline:12px}.dashboard-search-panel{border-radius:17px}.dashboard-stat{display:none}.dashboard-hero{min-height:390px;border-radius:20px}.dashboard-hero-copy h1{font-size:31px}.dashboard-section-heading h2{font-size:17px}.continue-learning-card{grid-template-columns:78px minmax(0,1fr);padding:11px}.continue-learning-card>img{width:78px;height:78px}}@media(prefers-reduced-motion:reduce){.ai-mode-tabs button,.ai-mode-selection,.ai-mode-tab-icon,.ai-mode-guide.is-popover{transition:none}.ai-mode-selection,.ai-mode-guide.is-popover{will-change:auto}.sidebar-feature-card,.dashboard-search,.dashboard-search-surface,.dashboard-search-clear,.dashboard-search-panel,.dashboard-primary-button,.skill-card,.mini-study-chart>div>span>i{transition:none}.dashboard-search-spinner{animation:none;border-top-color:#8eb5e9}}.lesson-workspace.is-ai-open{grid-template-columns:210px minmax(540px,1fr) 340px}.quiz-question-actions{flex:0 0 auto;display:grid;gap:8px}.quiz-ai-help{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border:1px solid #9eb7cc;border-radius:12px;color:#204f75;background:#f2f7fb;cursor:pointer;font-size:12px;font-weight:760}.quiz-ai-help:hover{border-color:#5f83a0;background:#eaf2f8}.quiz-ai-help:focus-visible,.lesson-ai-header button:focus-visible,.lesson-ai-return:focus-visible,.lesson-ai-form textarea:focus-visible,.lesson-ai-form button:focus-visible,.lesson-ai-error button:focus-visible{outline:3px solid rgba(33,79,123,.25);outline-offset:2px}.lesson-assistant.is-open{max-height:calc(100dvh - 124px);display:flex;flex-direction:column;overflow:hidden;padding:0;text-align:left}.lesson-assistant.is-open{will-change:transform,opacity}.lesson-ai-header{min-height:68px;display:grid;grid-template-columns:42px minmax(0,1fr) 44px;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid #d8e0e8;background:#f7f9fb}.lesson-ai-avatar{width:42px;height:42px;display:grid;place-items:center;overflow:hidden;border:1px solid #d5e0ea;border-radius:10px;background:#fff}.lesson-ai-avatar img,.lesson-assistant.is-open .lesson-ai-avatar img{width:38px;height:38px;object-fit:contain}.lesson-ai-header>span:nth-child(2){min-width:0}.lesson-ai-header small,.lesson-ai-header strong{display:block}.lesson-ai-header small{color:#617488;font-size:11px}.lesson-ai-header strong{margin-top:3px;color:#19364e;font-size:15px}.lesson-ai-header button{width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:12px;color:#52697d;background:transparent;cursor:pointer}.lesson-ai-header button:hover{background:#e9eef3}.lesson-ai-context{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:8px;margin:12px;padding:11px 12px;border:1px solid #cddbe8;border-radius:12px;color:#315f83;background:#f2f7fb}.lesson-ai-context svg{margin-top:2px}.lesson-ai-context small,.lesson-ai-context strong{display:block;overflow-wrap:anywhere}.lesson-ai-context small{color:#62798d;font-size:10px;line-height:1.45}.lesson-ai-context strong{margin-top:3px;color:#244d6e;font-size:12px;line-height:1.45}.lesson-ai-code-tools{display:grid;gap:7px;margin:0 12px 12px;padding:10px 12px;border:1px solid #d8e0e8;border-radius:12px;background:#fff;color:#314b60;font-size:11px}.lesson-ai-code-tools>div{display:flex;align-items:start;gap:6px;line-height:1.5}.lesson-ai-code-tools svg{flex-shrink:0}.lesson-ai-code-tools summary{cursor:pointer;padding:4px 0}.lesson-ai-code-tools pre{max-height:112px;overflow:auto;padding:9px;margin:6px 0 0;border-radius:10px;background:#f3f6f8;white-space:pre;font:11px/1.6 ui-monospace,monospace}.lesson-ai-code-tools .soft-button{min-height:36px;justify-content:center;font-size:12px}.lesson-ai-code-tools>small{color:#62798d;font-size:10px;line-height:1.5}.lesson-ai-code-tools summary:focus-visible,.lesson-ai-code-tools button:focus-visible{outline:2px solid #237be0;outline-offset:3px}.lesson-ai-code-snapshot{margin-top:8px;color:#315f83;font-size:11px}.lesson-ai-code-snapshot summary{cursor:pointer;min-height:24px}.lesson-ai-code-snapshot pre{max-height:140px;overflow:auto;white-space:pre;font:11px/1.6 ui-monospace,monospace}.lesson-ai-thread{min-height:150px;flex:1 1 auto;display:grid;align-content:start;gap:10px;overflow-y:auto;padding:0 12px 12px;scroll-padding-block:12px}.lesson-ai-empty{padding:20px 16px;border:1px dashed #cbd6df;border-radius:14px;color:#4f6578;background:#fbfcfd;text-align:center}.lesson-ai-empty svg{color:#b57922}.lesson-ai-empty strong{display:block;margin-top:7px;color:#263f53;font-size:13px}.lesson-ai-empty p{margin:5px 0 0;color:#627384;font-size:12px;line-height:1.55}.lesson-ai-message{padding:11px 12px;border:1px solid #d7dfe7;border-radius:14px;background:#fff}.lesson-ai-message.is-user{margin-left:22px;border-color:#c5d8e9;background:#f1f6fa}.lesson-ai-message>small{display:block;margin-bottom:5px;color:#526f86;font-size:10px;font-weight:800}.lesson-ai-message>p,.lesson-ai-message .ai-message-content p{margin:0;color:#354b5d;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.lesson-ai-message .message-agent-trace{margin-bottom:9px;padding:8px;border-radius:10px}.lesson-ai-message .message-agent-trace button{display:none}.lesson-ai-thinking{min-height:44px;display:flex;align-items:center;gap:5px;color:#546b7e;font-size:11px}.lesson-ai-thinking span{width:6px;height:6px;border-radius:50%;background:#4f78a0;animation:lesson-ai-pulse 1s ease-in-out infinite alternate}.lesson-ai-thinking span:nth-child(2){animation-delay:.12s}.lesson-ai-thinking span:nth-child(3){animation-delay:.24s;margin-right:3px}@keyframes lesson-ai-pulse{to{opacity:.3;transform:translateY(-2px)}}.lesson-ai-error{padding:11px 12px;border:1px solid #ddb9b5;border-radius:12px;color:#6d3e3a;background:#fbf2f1}.lesson-ai-error strong{font-size:12px}.lesson-ai-error p{margin:4px 0 9px;font-size:11px;line-height:1.55}.lesson-ai-error button{min-height:40px;padding:7px 12px;border:1px solid #a56d68;border-radius:10px;color:#6d3e3a;background:#fff;cursor:pointer;font-weight:750}.lesson-ai-return{min-height:44px;display:flex;align-items:center;justify-content:center;gap:7px;margin:0 12px 10px;border:1px solid #b8c7d3;border-radius:12px;color:#284e6b;background:#fff;cursor:pointer;font-size:12px;font-weight:750}.lesson-ai-return:hover{background:#f5f8fa}.lesson-ai-form{display:grid;gap:8px;padding:12px;border-top:1px solid #d8e0e8;background:#fff}.lesson-ai-form label{color:#314b60;font-size:12px;font-weight:800}.lesson-ai-form textarea{width:100%;min-height:92px;resize:vertical;box-sizing:border-box;padding:10px 11px;border:1px solid #bfcbd6;border-radius:12px;color:#20394d;background:#fff;font:inherit;font-size:12px;line-height:1.6}.lesson-ai-form>div{display:flex;align-items:center;justify-content:flex-end;gap:10px}.lesson-ai-form small{max-width:170px;color:#6a7a88;font-size:10px;line-height:1.45}.lesson-ai-form button{min-width:88px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px solid #244d6e;border-radius:12px;color:#fff;background:#244d6e;cursor:pointer;font-size:12px;font-weight:800}.lesson-ai-form button:disabled{color:#8a969f;border-color:#d5dbe0;background:#eceff1;cursor:not-allowed}@media(max-width:1280px){.lesson-workspace.is-ai-open{grid-template-columns:220px minmax(0,1fr)}.lesson-assistant.is-open{position:static;grid-column:1 / -1;max-height:none}.lesson-ai-thread{max-height:430px}}@media(min-width:1281px){.lesson-workspace{transition:grid-template-columns .42s cubic-bezier(.22,1,.36,1)}}@media(max-width:880px){.lesson-workspace.is-ai-open{grid-template-columns:1fr}.lesson-assistant.is-open{grid-column:1;display:flex;text-align:left}.lesson-quiz-question footer{align-items:stretch}.quiz-question-actions{width:100%;grid-template-columns:1fr 1fr}.quiz-question-actions .quiz-submit,.quiz-question-actions .quiz-ai-help{width:100%}}@media(max-width:520px){.quiz-question-actions{grid-template-columns:1fr}.lesson-ai-form>div{align-items:stretch;flex-direction:column}.lesson-ai-form small{max-width:none}.lesson-ai-form button{width:100%}}@media(prefers-reduced-motion:reduce){.lesson-workspace{transition:none}.lesson-assistant.is-open{will-change:auto}.lesson-ai-thinking span{animation:none}}
