.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 var(--theme-line, #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 var(--theme-line, #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 var(--theme-line, #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, var(--theme-line, #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:var(--theme-line, #94b5e4);background:var(--theme-surface, #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:var(--theme-accent, #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:var(--theme-red, #a53f37)}.app-select-menu{position:fixed;z-index:2000;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--theme-line, #b7c9e0) transparent;padding:6px;border:1px solid var(--theme-line, #d9e4f2);border-radius:16px;background:var(--theme-surface, #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 var(--theme-line, #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:var(--theme-surface, #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:var(--theme-blue-soft, #dfeaff)}.app-select-option[aria-disabled=true]{color:var(--theme-muted, #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:var(--theme-glass, rgba(255,255,255,.48));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:var(--theme-glass, rgba(255,255,255,.93));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:var(--theme-line, #a8c2ec)}@media(hover:hover)and (pointer:fine){.contest-page :is(.contest-feature,.competition-row):hover{border-color:var(--theme-line, #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:var(--theme-line, #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:var(--theme-red, #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, var(--theme-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:var(--theme-red, #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:var(--theme-muted, #586b85);font-size:12px}.my-friend-code .friend-share-fallback{width:100%;box-sizing:border-box;margin-top:8px;border:1px solid var(--theme-line, #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, var(--theme-accent, #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(--theme-action, 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, var(--theme-green, #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;overflow:hidden;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:var(--surface)}.pioneer-comment-avatar img{width:100%;height:100%;object-fit:cover}.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:var(--theme-red, #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:var(--theme-overlay-soft, #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:var(--theme-muted, #5a687e);background:transparent;font:inherit;font-size:13px;cursor:pointer;transition:background-color .16s ease,color .16s ease}.practice-filters button:hover{background:var(--theme-subtle, #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 var(--theme-line, #dde3eb);border-radius:12px;color:var(--muted);background:var(--surface)}.practice-search:focus-within{border-color:var(--blue);outline:3px solid var(--theme-accent, #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:var(--theme-green, #368069)}.practice-project-category{color:var(--theme-muted, #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:var(--theme-subtle, #f0f2f5);color:var(--theme-muted, #5a687c);font-size:11px;font-weight:550;white-space:nowrap}.practice-project-top>.practice-state{margin-left:auto}.practice-state.is-open{color:var(--theme-green, #286a54);background:var(--theme-subtle, #e9f4ed)}.practice-state.is-upcoming{color:var(--theme-orange, #885e25);background:var(--theme-orange-soft, #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:var(--theme-muted, #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:var(--theme-muted, #415573);font-size:13px;line-height:1.65}.practice-requirement-preview svg{flex-shrink:0;align-self:flex-start;margin-top:3px;color:var(--theme-muted, #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:var(--theme-line, #dce5f2);background:var(--theme-surface, #f6f9fe);color:var(--blue-dark)}.practice-empty{display:grid;justify-items:center;text-align:center;padding:48px 24px;border:1px dashed var(--theme-line, #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:var(--theme-subtle, #e8edf3)}.practice-progress progress::-webkit-progress-bar{background:var(--theme-subtle, #e8edf3);border-radius:6px}.practice-progress progress::-webkit-progress-value{background:var(--theme-action, var(--blue));border-radius:6px}.practice-progress progress::-moz-progress-bar{background:var(--theme-action, 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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-accent, #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:var(--theme-muted, #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:var(--theme-surface, #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:var(--theme-muted, #40536e);text-align:right}.practice-brief-aside ul{margin:0;padding-left:17px;color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #69788d);background:var(--theme-subtle, #e9edf2);opacity:1;cursor:not-allowed;transform:none}.practice-enroll-feedback.is-error{color:var(--theme-red, #a04132)}.practice-enroll-feedback.is-success{color:var(--theme-green, #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:var(--theme-line, #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(--theme-action, 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:var(--theme-red, #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 var(--theme-line, #e6ebf2);margin-bottom:20px}.question-navigation label{display:flex;align-items:center;gap:10px;margin-right:auto;color:var(--theme-muted, #596b83)}.question-navigation select{max-width:min(330px,60vw);min-height:44px;border:1px solid var(--theme-line, #dce4ef);border-radius:12px;padding:8px 12px;color:var(--theme-text, #22334d);background:var(--theme-surface, #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 var(--theme-line, #e6ebf2)}.question-problem h3{font-size:15px;margin:0 0 12px}.question-coding-meta{font-size:12px;color:var(--theme-accent, #526f99);margin:0 0 8px}.question-problem .question-sample{grid-template-columns:1fr;gap:8px}.question-code-help{margin-top:24px;color:var(--theme-muted, #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 var(--theme-line, #d7e0ec);border-radius:16px;overflow:hidden;background:var(--theme-surface, #fbfcfe)}.question-editor-shell .wb-code-host{height:100%;min-width:0}.question-editor-shell .cm-editor{border:0}.question-editor-shortcuts{color:var(--theme-muted, #65748a);font-size:12px;margin:8px 0 16px}.question-input-controls label{display:flex;align-items:center;gap:12px;color:var(--theme-muted, #43536c);font-size:13px}.question-input-controls select{min-height:44px;padding:8px 12px;color:var(--theme-muted, #34445d);border:1px solid var(--theme-line, #dce4ef);background:var(--theme-surface, #fff);border-radius:12px}.question-stdin{width:100%;min-height:90px;margin-top:10px;padding:12px;border:1px solid var(--theme-line, #dce4ef);border-radius:12px;resize:vertical;font:14px/1.7 ui-monospace,monospace}.question-result-tabs{display:flex;gap:20px;border-bottom:1px solid var(--theme-line, #e1e7f0)}.question-result-tabs button{min-height:44px;padding:8px 0;color:var(--theme-muted, #64748b);background:none;border:0;border-bottom:2px solid transparent;font-size:14px;cursor:pointer}.question-result-tabs button[aria-pressed=true]{color:var(--theme-accent, #3462dd);border-bottom-color:var(--theme-accent, #3462dd);font-weight:650}.question-result-tabs button:focus-visible,.question-result-body:focus-visible{outline:2px solid var(--theme-accent, #598bdd);outline-offset:2px}.question-result-body{min-height:170px;max-height:340px;overflow:auto;scrollbar-gutter:stable;padding:18px 2px 4px;color:var(--theme-muted, #40536c)}.question-result-body>p{font-size:13px}.question-code-result.is-correct .question-result-body>div>strong{color:var(--theme-green, #237752)}.question-code-result.is-wrong .question-result-body>div>strong{color:var(--theme-orange, #a44e27)}.question-code-result.is-stale .question-result-body>div>strong{color:var(--theme-muted, #67748a)}.question-result-empty{color:var(--theme-muted, #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:var(--theme-surface, #f5f7fb)}.question-error-output{background:var(--theme-red-soft, #fff2ef);color:var(--theme-red, #9c3e29)}.question-output-label{display:block;font-size:13px;margin-top:16px}.question-run-pending{color:var(--theme-accent, #3462dd)}.coding-prompt{white-space:pre-wrap;line-height:1.85;color:var(--theme-muted, #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:var(--theme-muted, #62738a)}.question-sample pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px 16px;background:var(--theme-surface, #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:var(--theme-muted, #6e7b8e);font-size:12px}.question-code-editor{display:block;width:100%;min-height:280px;resize:vertical;padding:18px;border:1px solid var(--theme-line, #d7e0ec);border-radius:16px;color:var(--theme-text, #203149);background:var(--theme-surface, #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 var(--theme-accent, #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:var(--theme-orange, #8a602d);margin-top:12px;font-size:14px}.question-code-result{border-top:1px solid var(--theme-line, #e1e7f0);padding-top:20px;margin-top:24px}.question-code-result>p{color:var(--theme-muted, #64748b);font-size:14px}.question-code-result.is-correct>strong{color:var(--theme-green, #237752)}.question-code-result.is-wrong>strong{color:var(--theme-orange, #a44e27)}.question-code-result.is-stale>strong{color:var(--theme-muted, #67748a)}.question-test-result{padding:12px 0;border-bottom:1px solid var(--theme-line, #edf0f5)}.question-test-result summary{cursor:pointer;min-height:32px;line-height:32px;font-size:14px}.question-test-result p{font-size:14px;color:var(--theme-muted, #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 var(--theme-line, #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: var(--theme-muted, #555f70);--honor-soft: var(--theme-subtle, #f0f1f3);--honor-border: var(--theme-line, #e1e3e7);--honor-success: var(--theme-green, #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:var(--theme-overlay-soft, #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:var(--theme-surface, #fcfcfb)}.honor-card:hover{border-color:var(--theme-line, #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:var(--theme-muted, #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:var(--theme-muted, #555f70);background:var(--theme-subtle, #f0f1f3);font-size:12px;line-height:1.5}.honor-state.is-earned{color:var(--theme-green, #247346);background:var(--theme-subtle, #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:var(--theme-subtle, #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:var(--theme-muted, #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:var(--theme-subtle, #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:var(--theme-muted, #66718a);font-size:12px}.honor-recent-strip .honor-art{max-width:108px}.honor-recent-strip time,.honor-recent-strip small{color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-blue-soft, #dceaf4);border-radius:20px;height:7px;width:100%;overflow:hidden}.home-project-challenge progress::-webkit-progress-bar,.challenge-participation progress::-webkit-progress-bar{background:var(--theme-blue-soft, #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:var(--theme-red, #a43d32);font-size:12px;line-height:1.65}.challenge-inline-error button,.challenge-notice button{color:var(--theme-accent, #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:var(--theme-text, #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 var(--theme-line, #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:var(--theme-muted, #48617c);font-weight:600;font-size:13px}.challenge-back:hover{color:var(--theme-accent, #076cdc)}.challenge-surface{background:var(--theme-surface, #fff);border:1px solid var(--theme-line, #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:var(--theme-orange, #c3801c);background:var(--theme-orange-soft, #fff3dc)}.challenge-header>div:nth-child(2){flex:1;min-width:0}.challenge-eyebrow{margin:0 0 8px;color:var(--theme-muted, #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:var(--theme-muted, #546b83)}.challenge-deadline{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.challenge-deadline>span:not(.challenge-status){color:var(--theme-muted, #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:var(--theme-subtle, #edf3f9);color:var(--theme-muted, #4e657c);font-size:12px;line-height:1.3;white-space:nowrap}.challenge-status.is-open{background:var(--theme-green-soft, #e7f6ed);color:var(--theme-green, #27724a)}.challenge-notice{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:13px;line-height:1.8;color:var(--theme-muted, #596c7f);margin:14px 4px}.challenge-notice.is-error{color:var(--theme-red, #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 var(--theme-line, #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:var(--theme-accent, #3984cc);flex-shrink:0}.challenge-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.challenge-section-heading>span{color:var(--theme-muted, #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:var(--theme-muted, #65788d);background:var(--theme-subtle, #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:var(--theme-subtle, #edf7f1);color:var(--theme-green, #368d5d)}.challenge-stages h3{font-size:15px;line-height:1.6;margin:5px 0 7px}.challenge-stages p:not(.challenge-stage-label){color:var(--theme-muted, #546b80);line-height:1.9;font-size:13px;margin:0 0 10px}.challenge-stage-label{display:flex;align-items:center;gap:10px;color:var(--theme-muted, #64788c);font-size:12px;margin:0;line-height:1.6}.challenge-stage-label span{color:var(--theme-accent, #2375c2);font-size:11px}.challenge-stages small{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #667b8f)}.challenge-progress-heading>strong{font-size:25px;font-weight:700;color:var(--theme-accent, #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:var(--theme-muted, #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:var(--theme-red, #a43d32)}.challenge-feedback.is-success,.challenge-form-feedback.is-success{color:var(--theme-green, #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 var(--theme-line, #dce5ef);color:var(--theme-text, #263951);background:var(--theme-surface, #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:var(--theme-surface, #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:var(--theme-surface, #f7fafe);border-radius:18px;border:1px solid var(--theme-line, #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:var(--theme-muted, #526a80);white-space:pre-wrap;overflow-wrap:anywhere}.challenge-submission-list footer{color:var(--theme-muted, #63798c);font-size:12px;flex-wrap:wrap}.challenge-submission-list a{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--theme-accent, #146fcb);text-decoration:none}.challenge-submission-list a:hover{text-decoration:underline}.challenge-review-feedback{border-top:1px solid var(--theme-line, #e2eaf4);padding-top:12px}.challenge-no-submission{font-size:13px;color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-orange, #795416);font-size:12px}.study-streak .streak-trigger svg{color:var(--theme-orange, #d9850d)}.study-streak .streak-trigger:hover,.study-streak[open] .streak-trigger{background:var(--theme-orange-soft, #fff0d3)}.study-streak .streak-trigger:active{background:var(--theme-orange-soft, #ffe6b6)}.study-streak :is(summary,button):focus-visible{outline:3px solid var(--theme-accent, #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 var(--theme-line, #e3eaf1);border-radius:22px;background:var(--theme-surface, #fff);box-shadow:0 16px 40px #19365220;box-sizing:border-box;color:var(--theme-text, #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:var(--theme-muted, #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:var(--theme-surface, #f0f5fa)}.streak-count{display:flex;gap:12px;align-items:center;margin-top:6px}.streak-count>svg{color:var(--theme-orange, #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:var(--theme-muted, #536981)}.streak-count small{font-size:12px;margin-left:auto;color:var(--theme-muted, #68798c)}.streak-today{font-size:13px;line-height:1.7;color:var(--theme-muted, #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:var(--theme-muted, #697a8c);font-size:12px}.streak-week i{font-style:normal;display:grid;place-items:center;width:29px;height:29px;background:var(--theme-subtle, #f0f3f7);border-radius:50%;color:var(--theme-muted, #728094)}.streak-week small{font-size:10px}.streak-week .is-qualified i{background:var(--theme-orange-soft, #fae7c4);color:var(--theme-orange, #99631b)}.streak-rules{border-top:1px solid var(--theme-line, #edf1f6);font-size:12px}.streak-rules>summary{padding:13px 0;cursor:pointer;color:var(--theme-muted, #516a83);min-height:44px;box-sizing:border-box}.streak-rules p{color:var(--theme-muted, #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:var(--theme-surface, #f0f6fd);border:0;color:var(--theme-accent, #2868b1);font-size:12px;font-weight:600;cursor:pointer;transition:background-color .16s ease}.streak-profile-link:hover{background:var(--theme-blue-soft, #e6f0fc)}.streak-error{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--theme-red, #a14732)}.streak-error button{background:none;border:none;color:var(--theme-accent, #2868b1);text-decoration:underline;cursor:pointer;min-height:44px;padding:0 8px}.streak-demo{color:var(--theme-orange, #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 var(--theme-line, #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(--theme-action, 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(--theme-blue-dark-action, 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: var(--theme-surface, #f5f7fb);--code-border: var(--theme-line, #d9e2ee);--code-success: var(--theme-green, #247346);--code-error: var(--theme-red, #ab3838);font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:var(--theme-text, #10203f);background:var(--theme-subtle, #f7f4ec);font-synthesis:none;text-rendering:optimizeLegibility;--ink: var(--theme-text, #10203f);--muted: var(--theme-muted, #66718a);--line: var(--theme-line, #e7e2d7);--surface: var(--theme-surface, #fffefb);--blue: var(--theme-accent, #2369f5);--blue-dark: var(--theme-accent, #1552db);--blue-soft: var(--theme-blue-soft, #eaf2ff);--cyan: var(--theme-accent, #4dc7ed);--orange: var(--theme-orange, #f4a415);--orange-soft: var(--theme-orange-soft, #fff3d9);--green: var(--theme-green, #59ad26);--green-soft: var(--theme-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:var(--theme-subtle, #f7f4ec);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--theme-accent, 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:var(--theme-surface, #faf8f2)}.sidebar{position:sticky;top:0;height:100vh;z-index:20;display:flex;flex-direction:column;gap:48px;padding:28px 18px 22px;background:var(--theme-surface, #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:var(--theme-text, #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:var(--theme-surface, #f3f7ff)}.nav-item.is-active{color:#fff;background:var(--theme-action, 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:var(--theme-text, #263757);cursor:pointer}.mission-capsule .capsule-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;color:var(--theme-orange, #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:var(--theme-muted, #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:var(--theme-text, #0d1e3d)}.page-header>div>p:last-child{margin:0;color:var(--theme-muted, #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:var(--theme-orange, #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:var(--theme-surface, #fffefb);color:var(--theme-muted, #40516e);box-shadow:0 5px 14px #203c6e0d}.streak-chip{padding:0 13px;color:var(--theme-orange, #a66806);border-color:var(--theme-line, #f1dfb9);background:var(--theme-orange-soft, #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:var(--theme-text, #1b2c4d);font-size:11px}.profile-chip small{margin-top:1px;color:var(--theme-muted, #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:var(--theme-muted, #40516e);background:var(--theme-surface, #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 var(--theme-line, #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 var(--theme-line, 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:var(--theme-orange-soft, #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:var(--theme-overlay-soft, rgba(255, 252, 244, .08));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 var(--theme-line, rgba(255, 255, 255, .8));border-radius:99px;color:var(--theme-text, #243555);background:var(--theme-glass, rgba(255, 254, 251, .94));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(--theme-action, 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(--theme-orange-action, var(--orange))}.marker-done svg{background:var(--theme-green-action, 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 var(--theme-line, #fff);border-radius:50%;color:#fff;background:var(--theme-action, 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 var(--theme-line, rgba(255, 255, 255, .9));border-radius:16px;color:var(--theme-muted, #34415a);background:var(--theme-glass, rgba(255, 254, 251, .93));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:var(--theme-text, #173662);font-size:12px;font-weight:850}.mission-objective span svg{color:var(--blue)}.mission-objective p{margin:8px 0 0;color:var(--theme-muted, #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(--theme-action, var(--blue));font-size:10px;font-weight:800}.lesson-heading{margin-top:16px;display:flex;justify-content:space-between;color:var(--theme-muted, #6a7890);font-size:11px;font-weight:750}.lesson-heading strong{color:var(--blue)}.lesson-card h2{margin:9px 0 8px;color:var(--theme-text, #142341);font-size:clamp(20px,1.6vw,27px);line-height:1.3;letter-spacing:-.035em}.lesson-card>p{margin:0;color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-subtle, #e8edf6)}.progress-track>span{width:var(--progress);height:100%;display:block;border-radius:inherit;background:var(--theme-action, var(--blue))}.code-preview{margin-top:17px;padding:13px 14px;border:1px solid var(--theme-line, #e2e7f0);border-radius:14px;background:var(--theme-surface, #fbfcff)}.code-preview>div{display:flex;align-items:center;gap:6px;color:var(--theme-accent, #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:var(--theme-accent, #46618e);font-family:SFMono-Regular,Consolas,monospace;font-size:9px;line-height:1.62}.code-preview code span{color:var(--theme-accent, #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(--theme-action, var(--blue));box-shadow:0 10px 20px #2369f540}.primary-button:hover{background:var(--theme-blue-dark-action, 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:var(--theme-surface, #f3f8ff);border-color:var(--theme-line, #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:var(--theme-accent, #6380ae);font-size:9px;font-weight:750}.ai-heading h2{margin:0;color:var(--theme-text, #152747);font-size:22px;letter-spacing:-.035em}.online-dot{margin-top:4px;padding:5px 8px;border:0;border-radius:99px;color:var(--theme-green, #3a8c1e);background:var(--theme-green-soft, #eaf7e5);font-size:8px;font-weight:850;cursor:pointer}.online-dot.is-checking{color:var(--theme-muted, #5f7090);background:var(--theme-subtle, #edf1f7)}.online-dot.is-configured{color:var(--theme-accent, #3f6fae);background:var(--theme-blue-soft, #e9f1ff)}.online-dot.is-unconfigured{color:var(--theme-orange, #9b6206);background:var(--theme-orange-soft, #fff2d7)}.online-dot.is-degraded{color:var(--theme-red, #a44c47);background:var(--theme-red-soft, #fff0ee)}.online-dot.is-demo{color:var(--theme-orange, #8b651f);background:var(--theme-orange-soft, #fff5da)}.online-dot.is-live{color:var(--theme-green, #3a8c1e);background:var(--theme-green-soft, #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 var(--theme-line, #d9e7fb);border-radius:16px 16px 6px;color:var(--theme-muted, #40516f);background:var(--theme-glass, rgba(255, 255, 255, .92));box-shadow:0 8px 20px #294f9114;font-size:11px;line-height:1.65;white-space:pre-wrap}.ai-bubble.is-error{color:var(--theme-red, #884d49);border-color:var(--theme-line, #f1c8c4);background:var(--theme-surface, #fff4f2)}.ai-answer-meta{display:block;margin-top:8px;color:var(--theme-muted, #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 var(--theme-line, #deebfb);border-radius:14px;text-align:left;background:var(--theme-glass, rgba(255, 255, 255, .9));box-shadow:0 7px 16px #264e8f12;cursor:pointer}.ai-action.is-selected{border-color:var(--theme-line, #a8c8ff);background:var(--theme-surface, #fff)}.ai-action-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;color:#fff;background:var(--theme-action, var(--blue))}.tone-green .ai-action-icon{background:var(--theme-green-action, var(--green))}.tone-orange .ai-action-icon{background:var(--theme-orange-action, var(--orange))}.ai-action.tone-green.is-selected{border-color:var(--theme-line, #afd9bc);background:var(--theme-surface, #f4fbf6)}.ai-action.tone-orange.is-selected{border-color:var(--theme-line, #efcca8);background:var(--theme-orange-soft, #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:var(--theme-text, #223350);font-size:12px}.ai-action small{margin-top:3px;color:var(--theme-muted, #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 var(--theme-line, #d6e4f7);border-radius:12px;background:var(--theme-surface, #fff)}.chat-form input{min-width:0;border:0;outline:0;color:var(--theme-text, #283a59);background:transparent;font-size:10px}.chat-form input::placeholder{color:var(--theme-muted, #9ba8bb)}.chat-form .icon-button{width:34px;height:34px;border-radius:9px;color:#fff;background:var(--theme-action, 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:var(--theme-text, #142341);font-size:24px;letter-spacing:-.035em}.challenge-copy>p:not(.eyebrow){margin:0;color:var(--theme-muted, #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:var(--theme-accent, #4f6fa6);background:var(--theme-blue-soft, #edf3fc);font-size:8px;font-weight:750}.tag-row span:first-child{color:var(--theme-orange, #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:var(--theme-subtle, #e3e7ef)}.step-line:after{content:"";position:absolute;left:11%;top:14px;width:30%;height:3px;border-radius:99px;background:var(--theme-green-action, 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 var(--theme-line, #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(--theme-green-action, var(--green))}.progress-step.is-active>span{color:var(--theme-orange, #d78100);background:var(--theme-surface, #fff);box-shadow:0 0 0 3px var(--orange)}.progress-step strong{margin-top:9px;color:var(--theme-muted, #34435d);font-size:9px}.progress-step small{margin-top:3px;color:var(--theme-muted, #8a95a7);font-size:7px}.secondary-button{min-height:34px;align-self:flex-end;margin-top:12px;padding:0 12px;border:1px solid var(--theme-line, #8eb5ff);color:var(--blue);background:var(--theme-surface, #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(--theme-action, 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 var(--theme-line, #dbe7d4);border-radius:13px;color:var(--theme-text, #315024);background:var(--theme-surface, #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 var(--theme-line, rgba(255, 255, 255, .84));border-radius:22px;background:var(--theme-surface, #fffefb);box-shadow:0 28px 75px #0a224e47}.dialog-close{position:absolute;right:16px;top:16px;width:36px;height:36px;border-radius:10px;color:var(--theme-muted, #5d6a7f);background:var(--theme-subtle, #f1f4f8)}.dialog-icon{width:52px;height:52px;margin-bottom:18px;display:grid;place-items:center;border-radius:16px}.dialog-icon.blue{color:var(--theme-accent, #1f63ed);background:var(--blue-soft)}.dialog-icon.orange{color:var(--theme-orange, #d48100);background:var(--orange-soft)}.dialog-icon.green{color:var(--theme-green, #4a9a23);background:var(--green-soft)}.dialog h2{margin:8px 0 10px;color:var(--theme-text, #132342);font-size:28px;letter-spacing:-.04em}.dialog>p:not(.eyebrow){margin:0;color:var(--theme-muted, #69758a);font-size:13px;line-height:1.72}.dialog-callout{margin-top:20px;display:flex;gap:11px;padding:14px;border-radius:14px;color:var(--theme-muted, #4f6385);background:var(--theme-surface, #f3f7fd);font-size:11px;line-height:1.5}.dialog-callout svg{flex:0 0 auto;color:var(--orange)}.dialog-callout strong{display:block;color:var(--theme-text, #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:var(--theme-accent, #2c3e5e);background:var(--theme-surface, #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 var(--theme-accent, 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 var(--theme-line, #d9e3f3);border-radius:12px;color:var(--theme-accent, #34517e);background:var(--theme-surface, #f5f8fd)}.soft-button:hover{color:var(--blue);border-color:var(--theme-line, #a9c5fa);background:var(--theme-blue-soft, #edf4ff)}.favorite-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:1px solid var(--theme-line, #d9e3f3);border-radius:12px;color:var(--theme-accent, #456080);background:var(--theme-surface, #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:var(--theme-line, #a9c5fa);background:var(--theme-surface, #f2f7ff);transform:translateY(-1px)}.favorite-button.is-saved{color:var(--theme-orange, #9b680e);border-color:var(--theme-line, #e9cb87);background:var(--theme-orange-soft, #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:var(--theme-muted, #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:var(--theme-orange, #d48400);background:var(--orange-soft)}.surface-icon.green{color:var(--theme-green, #438f21);background:var(--green-soft)}.surface-icon.purple{color:var(--theme-accent, #7954d9);background:var(--theme-blue-soft, #f0ebff)}.status-pill{min-height:26px;display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;color:var(--theme-muted, #5f6f88);background:var(--theme-subtle, #f0f3f8);font-size:11px;font-weight:760}.status-pill.blue{color:var(--blue);background:var(--blue-soft)}.status-pill.green{color:var(--theme-green, #478b27);background:var(--green-soft)}.status-pill.orange{color:var(--theme-orange, #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:var(--theme-muted, #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 var(--theme-line, #ead8aa);border-radius:13px;color:var(--theme-orange, #735621);background:var(--theme-orange-soft, #fff9e9);box-shadow:0 6px 16px #70521a0f;font-size:11px;font-weight:720}.partial-sync-banner>svg{flex:0 0 auto;color:var(--theme-orange, #bf8520)}.partial-sync-banner>span{min-width:0}.partial-sync-banner>button{min-height:30px;margin-left:auto;padding:0 10px;border:1px solid var(--theme-accent, #e5c77f);border-radius:9px;color:var(--theme-orange, #8a651e);background:var(--theme-glass, rgba(255, 255, 255, .76));cursor:pointer;font-size:10px;font-weight:800}.partial-sync-banner>button:hover{border-color:var(--theme-accent, #d7ac4e);background:var(--theme-surface, #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:var(--theme-text, #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:var(--theme-muted, #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 var(--theme-line, #dfe5ef);border-radius:13px;color:var(--theme-muted, #7c879a);background:var(--theme-surface, #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:var(--theme-surface, #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:var(--theme-line, #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:var(--theme-orange, #cf7900);background:var(--orange-soft)}.home-module-card.tone-green>span{color:var(--theme-green, #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:var(--theme-accent, #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:var(--theme-subtle, #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 var(--theme-line, #e0e5ed);border-radius:13px;background:var(--theme-surface, #f3f5f8)}.segmented-tabs button{min-height:36px;padding:0 13px;border:0;border-radius:9px;color:var(--theme-muted, #66748d);background:transparent;cursor:pointer;font-size:11px;font-weight:760}.segmented-tabs button.is-active{color:var(--blue);background:var(--theme-surface, #fff);box-shadow:0 5px 12px #1f4b911a}.course-catalog>.segmented-tabs{margin-top:16px}.course-track-tabs{position:relative;isolation:isolate;max-width:100%;overflow-x:auto}.course-track-selection{position:absolute;top:0;left:0;z-index:0;border-radius:9px;background:var(--theme-surface, #fff);box-shadow:0 5px 12px #1f4b911a;opacity:0;pointer-events:none}.course-track-tabs button{position:relative;z-index:1;flex:0 0 auto;transition:color .18s ease,background-color .18s ease}.course-track-tabs[data-motion-ready=true] button.is-active{background:transparent;box-shadow:none}.course-track-tabs button:not(.is-active):hover{color:var(--blue);background:var(--theme-subtle, #edf3fa)}.course-track-tabs button>span{display:inline-block;transition:transform .14s ease}.course-track-tabs button:active>span{transform:scale(.96)}@media(prefers-reduced-motion:reduce){.course-track-tabs button,.course-track-tabs button>span{transition:none}.course-track-tabs button:active>span{transform:none}}.curriculum-filter-row{display:flex;align-items:end;gap:12px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:15px;background:var(--theme-surface, #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 var(--theme-line, #dce4ef);border-radius:11px;background:var(--theme-surface, #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{height:118px;min-height:118px;position:relative;overflow:hidden;isolation:isolate;color:#fff;background:transparent}.course-cover-art{--cover-fade: linear-gradient( to bottom, #000 0%, #000 44%, rgba(0, 0, 0, .99) 54%, rgba(0, 0, 0, .94) 63%, rgba(0, 0, 0, .8) 72%, rgba(0, 0, 0, .55) 81%, rgba(0, 0, 0, .26) 89%, rgba(0, 0, 0, .07) 95%, transparent 100% );position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;overflow:hidden;pointer-events:none;-webkit-mask-image:var(--cover-fade);mask-image:var(--cover-fade)}.course-cover-backdrop{position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;width:calc(100% + 32px);height:calc(100% + 32px);object-fit:cover;filter:blur(16px);opacity:.82}.course-cover-image{position:relative;display:block;width:auto;max-width:100%;height:100%;object-fit:contain;object-position:center;-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}.course-cover .favorite-button.on-course-cover{min-height:32px;position:absolute;z-index:2;top:13px;left:13px;padding:0 10px;border-color:#ffffff52;color:#fff;background:#0e1828c2;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:#0e1828e6}.course-cover-grade{position:absolute;z-index:1;top:14px;right:14px;padding:5px 9px;border-radius:999px;color:#fff;background:#0e1828c2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:10px;font-weight:760}.course-cover-theme{position:absolute;z-index:1;left:13px;bottom:13px;display:flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;color:#fff;background:#0e1828c2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);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:var(--theme-muted, #46617e);background:var(--theme-subtle, #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 var(--theme-line, #dfe5ed);border-radius:11px;color:var(--theme-muted, #5d6980);background:var(--theme-surface, #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:var(--theme-line, #a9c4f7);background:var(--theme-surface, #f6f9ff);transform:translateY(-1px)}.course-pagination button:focus-visible{outline:3px solid var(--theme-accent, rgba(50, 116, 244, .2));outline-offset:2px}.course-pagination-pages button.is-active{color:#fff;border-color:var(--blue);background:var(--theme-action, 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:var(--theme-muted, #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:var(--theme-subtle, #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 var(--theme-line, #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(--theme-green-action, var(--green))}.path-node.is-active>span{color:var(--blue);background:var(--theme-surface, #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:var(--theme-line, #d8e4f8);background:var(--theme-surface, #f3f7ff)}.course-hero.tone-purple{background:var(--theme-surface, #f5f2ff)}.course-hero.tone-green{background:var(--theme-subtle, #f1f8f3)}.course-hero-icon{width:84px;height:84px;display:grid;place-items:center;border-radius:24px;color:#fff;background:var(--theme-action, 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:var(--theme-muted, #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:var(--theme-muted, #687890);background:var(--theme-subtle, #edf1f6);font-size:11px;font-weight:800}.lesson-index.is-done{color:#fff;background:var(--theme-green-action, var(--green))}.lesson-index.is-current{color:#fff;background:var(--theme-action, 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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #6f7b8f);font-size:11px}.mission-checks>div>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--theme-subtle, #eef1f5);font-weight:780}.mission-checks>div.is-done{color:var(--theme-text, #315d27)}.mission-checks>div.is-done>span{color:#fff;background:var(--theme-green-action, var(--green))}.concept-card{display:flex;gap:10px;margin:18px 0;padding:13px;border-radius:13px;color:var(--theme-muted, #5b6d87);background:var(--orange-soft)}.concept-card svg{flex:0 0 auto;color:var(--orange)}.concept-card strong{color:var(--theme-text, #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:var(--theme-accent, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-accent, #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:var(--theme-accent, #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:var(--theme-green, #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:var(--theme-blue-soft, #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 var(--theme-line, #fff);border-radius:13px;color:#fff;background:var(--theme-action, 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:var(--theme-muted, #5f6f86);background:var(--theme-subtle, #f1f4f8)}.run-result svg{flex:0 0 auto;color:var(--theme-muted, #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:var(--theme-muted, #4c6c3c);background:var(--green-soft)}.run-result.is-success svg{color:var(--green)}.run-result.is-error{color:var(--theme-muted, #8b4f4f);background:var(--theme-red-soft, #fff0ee)}.run-result.is-error svg{color:var(--theme-red, #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:var(--theme-muted, #73819a);background:var(--theme-surface, #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:var(--theme-muted, #8f554f);background:var(--theme-red-soft, #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:var(--theme-line, #bfd0e8) transparent}.history-list::-webkit-scrollbar{width:7px}.history-list::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:var(--theme-blue-soft, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-red, #bd534e);background:var(--theme-red-soft, #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:var(--theme-muted, #8994a7);font-size:8px}.history-mode-dot{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--theme-action, var(--blue))}.history-mode-dot.tone-green{background:var(--theme-green-action, var(--green))}.history-mode-dot.tone-orange{background:var(--theme-orange-action, var(--orange))}.history-empty{margin:8px 4px 2px;color:var(--theme-muted, #929caf);font-size:9px;text-align:center}.history-delete-confirm{display:grid;gap:10px;margin-top:9px;padding:11px;border:1px solid var(--theme-line, #f0d1cd);border-radius:12px;color:var(--theme-muted, #744945);background:var(--theme-surface, #fff7f5);box-shadow:0 8px 20px #6d2f2814}.history-delete-confirm strong{display:block;color:var(--theme-muted, #673d39);font-size:10px}.history-delete-confirm p{overflow:hidden;margin:3px 0 0;color:var(--theme-muted, #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 var(--theme-line, #e1c2be);border-radius:8px;color:var(--theme-muted, #7d5550);background:var(--theme-surface, #fff);cursor:pointer;font-size:8px;font-weight:800}.history-delete-confirm button.is-danger{border-color:var(--theme-accent, #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:var(--theme-muted, #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:var(--theme-green, #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 var(--theme-line, #f2f5f9);border-radius:50%;background:var(--theme-orange-action, var(--orange))}.ai-guide-trigger.is-open>span{border-color:var(--blue-soft)}.ai-connection-detail.is-live{color:var(--theme-green, #4d852f)}.ai-connection-detail.is-unconfigured{color:var(--theme-orange, #9b6206)}.ai-connection-detail.is-degraded{color:var(--theme-red, #a44c47)}.ai-connection-detail.is-demo{color:var(--theme-orange, #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 var(--theme-line, #e2e7ef);border-radius:15px;background:var(--theme-surface, #f3f5f8)}.ai-mode-selection{--mode-color: var(--theme-accent, #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%,var(--theme-line, #dfe6f1));border-radius:12px;background:var(--theme-surface, #fff);box-shadow:0 2px 7px #2b416217;will-change:transform,width;transition:border-color .16s ease}.ai-mode-selection.tone-green{--mode-color: var(--theme-green, #2f8a56)}.ai-mode-selection.tone-orange{--mode-color: var(--theme-orange, #c66e18)}.ai-mode-tabs button{--mode-color: var(--theme-accent, #2f6fe8);--mode-soft: var(--theme-blue-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:var(--theme-muted, #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: var(--theme-green, #2f8a56);--mode-soft: var(--theme-subtle, #edf9f1)}.ai-mode-tabs button.tone-orange{--mode-color: var(--theme-orange, #c66e18);--mode-soft: var(--theme-orange-soft, #fff4e8)}.ai-mode-tabs button:hover:not(:disabled):not(.is-active){color:var(--mode-color);border-color:transparent;background:var(--theme-glass, rgba(255, 255, 255, .6))}.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:var(--theme-muted, #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:var(--theme-accent, #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: var(--theme-accent, #2f6fe8);--mode-soft: var(--theme-blue-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%,var(--theme-line, #e4e9f1));border-radius:15px;background:linear-gradient(135deg,var(--mode-soft),var(--theme-surface, #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%,var(--theme-line, #e4e9f1));border-left:1px solid color-mix(in srgb,var(--mode-color) 20%,var(--theme-line, #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:var(--theme-muted, #718097);background:var(--theme-glass, rgba(255, 255, 255, .8));cursor:pointer}.ai-mode-guide-close:hover{color:var(--theme-accent, #3f5f8a);background:var(--theme-surface, #fff)}.ai-mode-guide.tone-green,.composer-mode-context.tone-green,.message-mode-badge.tone-green{--mode-color: var(--theme-green, #2f8a56);--mode-soft: var(--theme-subtle, #edf9f1)}.ai-mode-guide.tone-orange,.composer-mode-context.tone-orange,.message-mode-badge.tone-orange{--mode-color: var(--theme-orange, #c66e18);--mode-soft: var(--theme-orange-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:var(--theme-text, #263955);font-size:15px;letter-spacing:-.015em}.ai-mode-guide-copy>span{display:block;margin-top:4px;color:var(--theme-muted, #68778e);font-size:10px;line-height:1.5}.ai-mode-guide-copy small{display:flex;align-items:center;gap:5px;margin-top:6px;color:var(--theme-muted, #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%,var(--theme-line, #e7ebf2));border-radius:10px;color:var(--theme-muted, #4c5e78);background:var(--theme-glass, rgba(255, 255, 255, .78));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:var(--theme-line, #aebfda) var(--theme-line, #eef3f9);padding:22px clamp(18px,6vw,90px);background:var(--theme-surface, #fbfcfe)}.chat-stream::-webkit-scrollbar{width:9px}.chat-stream::-webkit-scrollbar-track{background:var(--theme-subtle, #eef3f9)}.chat-stream::-webkit-scrollbar-thumb{border:2px solid var(--theme-line, #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,var(--theme-surface, #fff) 44%,var(--theme-blue-soft, #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 var(--theme-line, #fbfcfe);border-radius:11px;color:#fff;background:var(--theme-action, var(--blue));box-shadow:0 6px 13px #275bb333}.chat-welcome.tone-green .chat-welcome-orbit i{background:var(--theme-green-action, var(--green))}.chat-welcome.tone-orange .chat-welcome-orbit i{background:var(--theme-orange-action, 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 var(--theme-line, #dfe6f2);border-radius:14px;text-align:left;color:var(--theme-muted, #3f5271);background:var(--theme-surface, #fff);cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.quick-prompts button:hover:not(:disabled){border-color:var(--theme-line, #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:var(--theme-orange, #b96716)}.quick-prompts button strong{display:-webkit-box;overflow:hidden;color:var(--theme-muted, #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:var(--theme-muted, #8ca0be)}.quick-prompts button:disabled{color:var(--theme-muted, #929cad);background:var(--theme-surface, #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:var(--theme-muted, #41516c);background:var(--theme-blue-soft, #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(--theme-action, var(--blue));border-radius:15px 5px 15px 15px}.chat-message p{margin:0;white-space:pre-wrap}.message-mode-badge{--mode-color: var(--theme-accent, #2f6fe8);--mode-soft: var(--theme-blue-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%,var(--theme-line, #dfe6f1));border-radius:999px;color:var(--mode-color);background:var(--theme-glass, rgba(255, 255, 255, .78));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 var(--theme-line, #bfe2cf);border-radius:10px;color:var(--theme-green, #24734b);background:var(--theme-surface, #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:var(--theme-green, #1f6744);font-size:9px}.message-agent-trace small{margin-top:2px;color:var(--theme-muted, #4f7f68);font-size:8px;line-height:1.4}.message-agent-trace.is-knowledge{align-items:flex-start;border-color:var(--theme-line, #c9d9f4);color:var(--theme-accent, #2f6bbf);background:var(--theme-surface, #f3f7fe)}.message-agent-trace.is-knowledge>span{min-width:0;flex:1}.message-agent-trace.is-knowledge strong{color:var(--theme-accent, #2d5fa8)}.message-agent-trace.is-knowledge small{color:var(--theme-muted, #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 var(--theme-line, #bdd0ef);border-radius:7px;color:var(--theme-accent, #2f6bbf);background:var(--theme-surface, #fff);cursor:pointer;font-size:8px;font-weight:800}.message-agent-trace.is-knowledge button:hover{border-color:var(--theme-line, #8eb0e6);background:var(--theme-blue-soft, #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:var(--theme-text, #263a5d);font-weight:850}.ai-message-content code{padding:1px 4px;border:1px solid var(--theme-accent, rgba(67, 105, 178, .14));border-radius:5px;color:var(--theme-accent, #244fba);background:var(--theme-glass, rgba(255, 255, 255, .7));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 var(--theme-accent, 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:var(--theme-text, #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:var(--theme-muted, #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 var(--theme-line, #c8d8f2);border-radius:999px;color:var(--blue);background:var(--theme-surface, #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 var(--theme-line, #f0c9c4);border-radius:13px;color:var(--theme-red, #8a504b);background:var(--theme-surface, #fff4f2);font-size:9px}.chat-error>svg,.ai-availability-note>svg{color:var(--theme-red, #cf6860)}.chat-error strong,.ai-availability-note strong{display:block;color:var(--theme-red, #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:var(--theme-muted, #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 var(--theme-line, #ddb4af);border-radius:8px;color:var(--theme-red, #8b4d47);background:var(--theme-surface, #fff);cursor:pointer;font-size:8px;font-weight:800}.chat-error button:disabled{opacity:.56;cursor:not-allowed}.ai-availability-note{border-color:var(--theme-line, #d8e1ee);color:var(--theme-muted, #63718a);background:var(--theme-surface, #f4f7fb)}.ai-availability-note>svg{color:var(--theme-muted, #7889a5)}.ai-availability-note strong{color:var(--theme-muted, #45546e)}.ai-availability-note.is-unconfigured{border-color:var(--theme-line, #ecd9aa);color:var(--theme-orange, #806028);background:var(--theme-orange-soft, #fff9ea)}.ai-availability-note.is-unconfigured>svg{color:var(--theme-orange, #bc8426)}.ai-composer{margin:0 18px 16px;padding:11px 12px;border:1px solid var(--theme-line, #dbe3ef);border-radius:15px;background:var(--theme-surface, #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:var(--theme-muted, #9aa4b5);font-size:8px}.ai-composer kbd{padding:2px 5px;border:1px solid var(--theme-line, #d7e0ec);border-bottom-width:2px;border-radius:5px;color:var(--theme-muted, #5f6f86);background:var(--theme-surface, #f7f9fc);font-family:inherit;font-size:8px;font-weight:750;line-height:1.2}.composer-mode-context{--mode-color: var(--theme-accent, #2f6fe8);--mode-soft: var(--theme-blue-soft, #edf4ff);padding-bottom:9px;border-bottom:1px solid var(--theme-line, #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:var(--theme-accent, #334760);font-size:10px}.composer-mode-context small{overflow:hidden;margin-top:3px;color:var(--theme-muted, #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 var(--theme-line, #d9e5f7);border-radius:11px;text-align:left;color:var(--theme-accent, #3563a5);background:var(--theme-surface, #f6f9ff);cursor:pointer;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.composer-learning-profile-link:hover{border-color:var(--theme-line, #aac6ef);background:var(--theme-blue-soft, #eef5ff);transform:translateY(-1px)}.composer-learning-profile-link>svg{color:var(--theme-accent, #4b76bb)}.composer-learning-profile-link>span{min-width:0}.composer-learning-profile-link strong{color:var(--theme-accent, #315b97);font-size:9px}.composer-learning-profile-link small{color:var(--theme-muted, #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:var(--theme-accent, #46678e);background:var(--theme-subtle, #eef4fb);font-size:8px;font-weight:740}.conversation-context-chips>span:first-child{color:var(--theme-muted, #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:var(--theme-muted, #7c899b);background:var(--theme-subtle, #f2f4f7);cursor:pointer;font-size:8px}.composer-tool{width:32px;height:32px;position:relative;display:grid;place-items:center;border-radius:9px;color:var(--theme-muted, #65758f);background:var(--theme-subtle, #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 var(--theme-accent, rgba(35, 105, 245, .28));outline-offset:2px}.composer-tool.is-disabled{color:var(--theme-muted, #aab3c1);background:var(--theme-surface, #f4f5f7);cursor:not-allowed;opacity:.72}.ai-capability-note{display:flex;align-items:center;gap:5px;margin:0 0 7px;color:var(--theme-orange, #876628);font-size:9px;font-weight:700;line-height:1.45}.ai-capability-note svg{flex:0 0 auto;color:var(--theme-orange, #bc8426)}.send-button{width:36px;height:36px;margin-left:auto;display:grid;place-items:center;border:0;border-radius:11px;color:#fff;background:var(--theme-action, 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:var(--theme-muted, #4b6286);background:var(--theme-subtle, #eef3fa);font-size:9px}.attachment-chip button{width:18px;height:18px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--theme-surface, #fff);cursor:pointer}.ai-tutor-page button:focus-visible,.ai-tutor-page textarea:focus-visible,.ai-tutor-page input:focus-visible{outline:3px solid var(--theme-accent, 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 var(--theme-line, rgba(255,255,255,.8));border-radius:50%;color:#fff;background:var(--theme-action, 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:var(--theme-muted, #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:var(--theme-accent, rgba(35, 105, 245, .18))}.lecture-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;color:#fff;background:var(--theme-action, 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:var(--theme-muted, #718098);background:var(--theme-surface, #f3f5f8);cursor:pointer;font-size:9px}.lecture-actions button.is-active{color:var(--theme-red, #d84d57);background:var(--theme-red-soft, #fff0f1)}.lecture-actions .favorite-button{min-height:30px;margin-left:auto;color:var(--theme-muted, #5d6f8b)}.lecture-actions .favorite-button.is-saved{color:var(--theme-orange, #9b680e);background:var(--theme-orange-soft, #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 var(--theme-line, #dfe5ee);border-radius:12px;color:var(--theme-muted, #738098);background:var(--theme-surface, #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:var(--theme-muted, #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(--theme-action, 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 var(--theme-line, #dce6f4);border-radius:16px;background:var(--theme-surface, #f7f9fd)}.comment-panel .section-heading-row{align-items:center}.comment-panel .section-heading-row h3{margin:0;color:var(--theme-text, #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 var(--theme-line, #e5eaf2);border-radius:11px;background:var(--theme-surface, #fff)}.comment-list strong{color:var(--theme-accent, #2b4266);font-size:10px}.comment-list p{margin:4px 0 0;color:var(--theme-muted, #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 var(--theme-line, #d9e2ef);border-radius:11px;outline:0;background:var(--theme-surface, #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:var(--theme-orange, #9b680e);border-color:var(--theme-line, #e9cb87);background:var(--theme-orange-soft, #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:var(--theme-blue-soft, #edf3fc);color:var(--theme-accent, #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:var(--theme-muted, #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:var(--theme-surface, #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 var(--theme-line, #dfe5ee);border-radius:10px;background:var(--theme-surface, #f8f9fb)}.toggle-filter{min-height:38px;margin-left:auto;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--theme-line, #e4e7ed);border-radius:10px;color:var(--theme-muted, #68778f);background:var(--theme-surface, #fff);cursor:pointer;font-size:10px;font-weight:760}.toggle-filter.is-active{color:var(--theme-orange, #bb7300);border-color:var(--theme-accent, #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(--theme-action, var(--blue))}.competition-badge.tone-orange{background:var(--theme-orange-action, 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:var(--theme-muted, #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 var(--theme-line, #e2e7ef);border-radius:12px;text-align:left;color:var(--theme-muted, #42536d);background:var(--theme-surface, #fafbfd);cursor:pointer}.prep-plan-list>button:hover{border-color:var(--theme-line, #bcd1f6);background:var(--theme-surface, #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:var(--theme-text, #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 var(--theme-line, #e4e8ef);border-radius:14px;background:var(--theme-surface, #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:var(--theme-muted, #566980);font-size:9px;font-weight:760}.registration-fields input{width:100%;min-height:40px;box-sizing:border-box;border:1px solid var(--theme-line, #dbe2ec);border-radius:10px;padding:0 11px;color:var(--ink);background:var(--theme-surface, #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:var(--theme-muted, #60708a);background:var(--theme-surface, #f3f6fa)}.detail-list strong,.detail-list span{display:block}.detail-list strong{color:var(--theme-accent, #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,var(--theme-surface, #fff) 0%,var(--theme-surface, #fbfdff) 56%,var(--theme-surface, #f4f8ff) 100%)}.profile-hero:before{content:"";width:280px;height:280px;position:absolute;right:-110px;top:-150px;border-radius:50%;background:var(--theme-overlay-soft, rgba(71, 132, 241, .08));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(--theme-action, 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 var(--theme-line, #fff);border-radius:50%;color:#fff;background:var(--theme-orange-action, 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 var(--theme-line, #d8e5fb);border-radius:999px;color:var(--theme-accent, #2f65bd);background:var(--theme-surface, #f2f7ff);font-size:11px;font-weight:850;box-shadow:0 6px 16px #2d65bd14}.profile-level-badge svg{color:var(--theme-orange, #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:var(--theme-text, #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:var(--theme-muted, #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 var(--theme-line, #e4eaf3);border-radius:13px;background:var(--theme-glass, rgba(255, 255, 255, .78))}.profile-numbers strong{color:var(--theme-text, #233b5c);font-size:17px;line-height:1.25}.profile-numbers small{color:var(--theme-muted, #7a899e);font-size:10px}.level-card{position:relative;z-index:1;padding:18px;border:1px solid var(--theme-line, #d8e6fb);border-radius:20px;background:linear-gradient(145deg,var(--theme-surface, #f5f9ff) 0%,var(--theme-blue-soft, #edf5ff) 100%);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:var(--theme-muted, #72829a);font-size:10px;font-weight:760}.level-card-heading strong{display:flex;align-items:center;gap:5px;margin-top:3px;color:var(--theme-text, #203858);font-size:15px}.level-card-heading b{color:var(--theme-accent, #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:var(--theme-muted, #718198);font-size:10px}.level-progress-copy strong{color:var(--theme-accent, #315d9d);font-size:10px}.level-progress-track{height:10px;margin-top:8px;overflow:hidden;border-radius:999px;background:var(--theme-blue-soft, #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 var(--theme-line, rgba(204, 220, 242, .85));border-radius:14px;background:var(--theme-glass, rgba(255, 255, 255, .75))}.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:var(--theme-muted, #75849a);font-size:9px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.level-points-grid strong{margin-top:2px;color:var(--theme-text, #233b5d);font-size:17px;line-height:1.15;font-variant-numeric:tabular-nums}.level-points-grid em{margin-left:2px;color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-line, #dce6f4);background:radial-gradient(circle at 94% 5%,var(--theme-overlay-soft, rgba(80, 131, 222, .09)),transparent 28%),linear-gradient(145deg,var(--theme-surface, #ffffff) 0%,var(--theme-surface, #fbfdff) 100%)}.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:var(--theme-text, #172f50);font-size:21px;letter-spacing:-.015em}.learning-profile-title>div>p:last-child{max-width:72ch;margin:0;color:var(--theme-muted, #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 var(--theme-line, #e0e7f0);border-radius:18px;background:var(--theme-glass, rgba(255, 255, 255, .92))}.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:var(--theme-text, #213a5b);font-size:16px}.learning-profile-section-heading>small{color:var(--theme-muted, #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:var(--theme-line, #aab9cf) transparent;border-radius:12px}.learning-profile-topic-scroll:focus-visible{outline:2px solid var(--theme-accent, #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 var(--theme-line, #e2e8f0);border-radius:15px;background:var(--theme-surface, #fbfcfe)}.learning-profile-topic.is-steady{--profile-accent: var(--theme-green, #31875a);--profile-soft: var(--theme-subtle, #eaf7ef)}.learning-profile-topic.is-developing{--profile-accent: var(--theme-accent, #3472ce);--profile-soft: var(--theme-blue-soft, #edf4ff)}.learning-profile-topic.is-needs-practice{--profile-accent: var(--theme-orange, #bd6b1c);--profile-soft: var(--theme-orange-soft, #fff3e5)}.learning-profile-topic.is-observed{--profile-accent: var(--theme-muted, #718097);--profile-soft: var(--theme-subtle, #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:var(--theme-text, #263d5d);font-size:12px}.learning-profile-topic-row p{margin:3px 0 0;color:var(--theme-muted, #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:var(--theme-muted, #8a96a8);font-size:8px}.learning-profile-evidence{margin-inline:-14px;border-top:1px solid var(--theme-line, #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:var(--theme-muted, #60738e);background:var(--theme-surface, #f8fafc);cursor:pointer;font:inherit;font-size:9px;font-weight:780}.learning-profile-evidence-toggle:hover{color:var(--theme-accent, #3c5f8f);background:var(--theme-surface, #f3f7fc)}.learning-profile-evidence-toggle:focus-visible{position:relative;z-index:1;outline:3px solid var(--theme-accent, 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:var(--theme-subtle, #e5eaf1)}.learning-profile-evidence li>span i{width:5px;height:5px;border-radius:50%;background:#8b97a9}.learning-profile-evidence li>span.is-supports{background:var(--theme-green-soft, #ddf2e6)}.learning-profile-evidence li>span.is-supports i{background:#379563}.learning-profile-evidence li>span.is-needs-review{background:var(--theme-orange-soft, #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:var(--theme-muted, #4d5f78);font-size:9px;font-weight:680;line-height:1.5}.learning-profile-evidence small{margin-top:2px;color:var(--theme-muted, #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,var(--theme-surface, #fffaf2),var(--theme-orange-soft, #fff6e7))!important;border-color:var(--theme-line, #f1dfc6)!important}.learning-profile-next>span{width:38px;height:38px;display:grid;place-items:center;margin-bottom:12px;border-radius:12px;color:var(--theme-orange, #ad641c);background:var(--theme-orange-soft, #ffe9c8)}.learning-profile-next h3{margin:4px 0 7px;color:var(--theme-text, #5a4124);font-size:15px}.learning-profile-next>p:last-of-type{margin:0;color:var(--theme-muted, #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:var(--theme-accent, #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:var(--theme-muted, #526985);background:var(--theme-surface, #f1f5fa);font-size:8px;font-weight:760}.learning-profile-sources li svg{color:var(--theme-green, #3e9365)}.learning-profile-boundary{display:grid;grid-template-columns:24px minmax(0,1fr);gap:9px;color:var(--theme-green, #356b53);background:var(--theme-surface, #f4faf7)!important;border-color:var(--theme-line, #d9e9e0)!important}.learning-profile-boundary>svg{margin-top:1px}.learning-profile-boundary strong{display:block;color:var(--theme-green, #315d49);font-size:10px}.learning-profile-boundary p{margin:4px 0 0;color:var(--theme-muted, #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:var(--theme-muted, #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 var(--theme-line, #f1d8d6);border-radius:16px;color:var(--theme-red, #ad514b);background:var(--theme-surface, #fff7f6)}.learning-profile-error strong{font-size:11px}.learning-profile-error p{margin:4px 0 0;color:var(--theme-muted, #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 var(--theme-line, #ccd9eb);border-radius:15px;text-align:center;color:var(--theme-muted, #6d82a0);background:var(--theme-surface, #f8fbff)}.learning-profile-empty h3{margin:10px 0 5px;color:var(--theme-accent, #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:var(--theme-orange, #a76600);background:var(--theme-orange-soft, #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:var(--theme-muted, #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 var(--theme-line, #dce3ed);border-radius:12px;color:var(--theme-muted, #53647b);background:var(--theme-surface, #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:var(--theme-muted, #8591a2);font-size:8px;font-weight:700}.daily-goal-presets button:hover{border-color:var(--theme-line, #aebfe1)}.daily-goal-presets button.is-selected{border-color:var(--theme-accent, #6f98f2);color:var(--blue);background:var(--theme-surface, #f1f6ff);box-shadow:0 0 0 3px #3068e217}.daily-goal-presets button.is-selected small{color:var(--theme-accent, #5f7fbf)}.daily-goal-custom>div{height:46px;display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid var(--theme-line, #dce3ed);border-radius:12px;background:var(--theme-surface, #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(--theme-action, var(--blue))}.bar-chart small{color:var(--muted);font-size:8px}.chart-note{display:flex;gap:8px;margin-top:14px;color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #40516c);background:var(--theme-surface, #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:var(--theme-muted, #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 var(--theme-line, #dce3ee);border-radius:11px;outline:0;color:var(--ink);background:var(--theme-surface, #fff);font-size:11px}.profile-edit-fields input:focus,.profile-edit-fields select:focus{border-color:var(--theme-line, #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 var(--theme-line, #e1e6ee);border-radius:14px;color:var(--theme-muted, #6f7d92);background:var(--theme-surface, #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:var(--theme-blue-soft, #cdd4df);cursor:pointer;transition:background .18s ease}.switch span{width:19px;height:19px;display:block;border-radius:50%;background:var(--theme-surface, #fff);box-shadow:0 2px 5px #20314d33;transition:transform .18s ease}.switch.is-on{background:var(--theme-action, 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:var(--theme-muted, #7f8ba0);background:var(--theme-surface, #f2f4f8);cursor:pointer}.logout-button{min-height:50px;border:1px solid var(--theme-line, #f0d1cf);border-radius:14px;color:var(--theme-red, #bd514d);background:var(--theme-surface, #fff5f4)}.settings-dialog{width:min(540px,100%)}.settings-modal-shell{width:min(540px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow-y:auto;overscroll-behavior:contain;border:0;border-radius:22px;background:var(--surface);color:var(--ink)}.settings-modal-shell::backdrop{background:#0d1e3d75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.settings-modal-shell .settings-dialog{width:100%;box-shadow:none}.settings-modal-shell .dialog-close{width:44px;height:44px}.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:var(--theme-muted, #52647d);font-size:10px;font-weight:760}.password-fields input{width:100%;min-height:43px;box-sizing:border-box;border:1px solid var(--theme-line, #dbe2ec);border-radius:11px;padding:0 12px;color:var(--ink);background:var(--theme-surface, #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 var(--theme-line, #e1e6ee);border-radius:12px;background:var(--theme-surface, #fafbfd)}.settings-faq-list summary{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;color:var(--theme-accent, #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 var(--theme-accent, 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 var(--theme-line, #dbe7f7);border-radius:24px;background:radial-gradient(circle at 88% 18%,var(--theme-overlay-soft, rgba(99, 166, 255, .18)),transparent 26%),linear-gradient(145deg,var(--theme-surface, #f8fbff),var(--theme-surface, #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:var(--theme-muted, #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:var(--theme-accent, #355271);background:var(--theme-surface, #f6f9fd);transform:translate(2px)}.lesson-outline nav button.is-active{color:var(--blue);border-color:var(--theme-line, #d7e6ff);background:linear-gradient(135deg,var(--theme-blue-soft, #eff5ff),var(--theme-blue-soft, #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:var(--theme-subtle, #edf1f6);font-size:10px;font-weight:800}.lesson-outline nav button.is-active>span:first-child{color:#fff;background:var(--theme-action, 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:var(--theme-muted, #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:var(--theme-muted, #526985);background:var(--theme-surface, #f1f5fa);font-size:10px;font-weight:760;white-space:nowrap}.lesson-lead{max-width:72ch;margin:20px 0;color:var(--theme-muted, #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 var(--theme-line, #d8e5f8);border-radius:18px;background:linear-gradient(145deg,var(--theme-surface, #f7faff),var(--theme-blue-soft, #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:var(--theme-muted, #5a6c84);font-size:12px;line-height:1.7}.mission-brief-card h3{margin:0;color:var(--theme-text, #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 var(--theme-line, #e1e7f0);border-radius:16px;background:var(--theme-surface, #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:var(--theme-muted, #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:var(--theme-line, #d6eadf);background:var(--theme-surface, #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:var(--theme-blue-soft, #edf4ff)}.sensor-demo>div{min-height:112px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:12px;border:1px solid var(--theme-line, #d6e4fa);border-radius:15px;text-align:center;background:var(--theme-surface, #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 var(--theme-line, #fff);border-radius:24px;color:#fff;background:var(--theme-action, var(--blue));box-shadow:0 14px 28px #2369f538}.lesson-track-demo.tone-purple{background:var(--theme-blue-soft, #f4f0ff)}.lesson-track-demo.tone-purple>div{border-color:var(--theme-line, #ddd3fa)}.lesson-track-demo.tone-purple small{color:var(--theme-accent, #7654cf)}.lesson-track-demo.tone-purple .robot-core{background:#7654cf;box-shadow:0 14px 28px #7654cf33}.lesson-track-demo.tone-green{background:var(--theme-subtle, #eef9f2)}.lesson-track-demo.tone-green>div{border-color:var(--theme-line, #cfe8d7)}.lesson-track-demo.tone-green small{color:var(--green)}.lesson-track-demo.tone-green .robot-core{background:var(--theme-green-action, var(--green));box-shadow:0 14px 28px #30905733}.lesson-track-demo.tone-orange{background:var(--theme-orange-soft, #fff6e9)}.lesson-track-demo.tone-orange>div{border-color:var(--theme-line, #f0ddbd)}.lesson-track-demo.tone-orange small{color:var(--theme-orange, #bd6a12)}.lesson-track-demo.tone-orange .robot-core{background:#d68125;box-shadow:0 14px 28px #d6812533}.lesson-track-demo.tone-cyan{background:var(--theme-blue-soft, #eaf8fa)}.lesson-track-demo.tone-cyan>div{border-color:var(--theme-line, #c7e7eb)}.lesson-track-demo.tone-cyan small{color:var(--theme-accent, #137e90)}.lesson-track-demo.tone-cyan .robot-core{background:#168a9d;box-shadow:0 14px 28px #168a9d33}.lesson-track-demo.tone-pink{background:var(--theme-purple-soft, #fff0f7)}.lesson-track-demo.tone-pink>div{border-color:var(--theme-line, #efd2e1)}.lesson-track-demo.tone-pink small{color:var(--theme-purple, #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 var(--theme-line, #f0ddbb);border-radius:16px;background:var(--theme-orange-soft, #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:var(--theme-muted, #736344);font-size:11px;line-height:1.55}.lesson-warmup>div strong{display:block;color:var(--theme-text, #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:var(--theme-muted, #655b49);background:var(--theme-surface, #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(--theme-orange-action, var(--orange));font-size:10px;font-weight:800}.knowledge-card-list{display:grid;gap:10px}.knowledge-card{overflow:hidden;border:1px solid var(--theme-line, #dfe7f2);border-radius:16px;background:var(--theme-surface, #fff);transition:border-color .16s ease,box-shadow .16s ease}.knowledge-card.is-open{border-color:var(--theme-line, #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:var(--theme-muted, #74849b);font-size:9px;font-weight:760}.knowledge-card>button strong{font-size:15px}.knowledge-card>button>svg{color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-surface, #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:var(--theme-muted, #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:var(--theme-orange, #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:var(--theme-accent, #65a0ff)}.knowledge-example>div{display:flex;align-items:flex-start;gap:9px;padding:16px;border-radius:15px;color:var(--theme-orange, #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 var(--theme-line, #d7e4f8);border-radius:17px;background:linear-gradient(145deg,var(--theme-surface, #f6f9ff),var(--theme-blue-soft, #edf4ff))}.practice-brief-card h3{margin:5px 0 7px;font-size:18px}.practice-brief-card p{margin:0;color:var(--theme-muted, #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:var(--theme-accent, #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 var(--theme-line, #e1e7ef);border-radius:15px;background:var(--theme-surface, #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:var(--theme-muted, #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:var(--theme-muted, #46627f);background:var(--theme-subtle, #eef3f8);font-size:9px}.practice-check-panel{display:grid;gap:11px;padding:17px;border:1px solid var(--theme-line, #dbe9e1);border-radius:17px;background:var(--theme-surface, #f7fcf9)}.practice-check-panel>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--theme-muted, #53705e);font-size:10px}.practice-check-panel>div:first-child>span:first-child{display:flex;align-items:center;gap:7px;color:var(--theme-text, #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:var(--theme-subtle, #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 var(--theme-line, #dfe9e2);border-radius:12px;text-align:left;color:var(--theme-muted, #586d60);background:var(--theme-surface, #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:var(--theme-muted, #718279);background:var(--theme-subtle, #edf2ef);font-size:9px;font-weight:800}.practice-check-list button.is-checked{border-color:var(--theme-line, #8ecba7);color:var(--theme-text, #28533a);background:var(--theme-subtle, #eef9f2)}.practice-check-list button.is-checked>span{color:#fff;background:var(--theme-green-action, var(--green))}.practice-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.practice-review-grid>section{padding:15px;border:1px solid var(--theme-line, #e2e7ee);border-radius:15px;background:var(--theme-surface, #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:var(--theme-muted, #617186);font-size:10px;line-height:1.5}.practice-review-grid>section:last-child{display:flex;align-items:flex-start;gap:9px;color:var(--theme-orange, #685126);border-color:var(--theme-line, #f0dfbb);background:var(--theme-orange-soft, #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 var(--theme-line, #eedcaf);border-radius:17px;background:var(--theme-orange-soft, #fff9ec)}.reflection-guide>div:first-child{display:flex;align-items:flex-start;gap:9px;color:var(--theme-orange, #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:var(--theme-text, #5d4315);font-size:13px}.reflection-guide ol{display:grid;gap:7px;padding-left:21px;margin:0;color:var(--theme-muted, #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 var(--theme-line, #ead9b7);border-radius:999px;color:var(--theme-orange, #705a32);background:var(--theme-surface, #fff);cursor:pointer;font-size:9px}.reflection-box{display:grid;gap:11px;padding:20px;border-radius:17px;background:var(--theme-orange-soft, #fff8e9)}.reflection-box label{color:var(--theme-text, #443819);font-size:14px;font-weight:760;line-height:1.55}.reflection-box textarea{min-height:190px;padding:14px;border:1px solid var(--theme-line, #eadab8);border-radius:12px;background:var(--theme-surface, #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:var(--theme-muted, #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 var(--theme-accent, rgba(35, 105, 245, .23));outline-offset:2px}.lesson-page>.inner-page-heading{min-height:0;padding:24px 26px;border:1px solid var(--theme-line, #d6dde7);border-top:4px solid var(--theme-accent, #214f7b);border-radius:22px;background:var(--theme-surface, #fff);box-shadow:none}.lesson-page>.inner-page-heading .status-pill{border-radius:999px;color:var(--theme-accent, #29465f);background:var(--theme-subtle, #eef2f5)}.lesson-page>.inner-page-heading .eyebrow svg{display:none}.lesson-outline,.lesson-content,.lesson-assistant{border-color:var(--theme-line, #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:var(--theme-text, #183e62);border-color:var(--theme-line, #cbd6e2);border-left:3px solid var(--theme-accent, #214f7b);background:var(--theme-subtle, #f2f5f7);box-shadow:none}.lesson-outline nav button>span:first-child,.lesson-outline nav button.is-active>span:first-child{border-radius:10px;color:var(--theme-accent, #334e68);background:var(--theme-subtle, #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 var(--theme-line, #d5dce4);border-radius:999px;color:var(--theme-muted, #516170);background:var(--theme-surface, #fff);font-size:11px}.lesson-lead{color:var(--theme-muted, #435466);font-size:15px}.content-label{color:var(--theme-muted, #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 var(--theme-line, #cfd7e0);border-radius:18px;background:var(--theme-surface, #fff)}.lesson-case-file>header{padding:24px 26px;border-bottom:1px solid var(--theme-line, #d8dee6)}.case-file-meta{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px;color:var(--theme-muted, #5c6b78);font-size:11px;font-weight:750;letter-spacing:.06em}.lesson-case-file h3{margin:0 0 12px;color:var(--theme-text, #182b3b);font-family:inherit;font-size:24px;letter-spacing:-.025em}.lesson-case-file header>p{max-width:76ch;margin:0;color:var(--theme-muted, #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 var(--theme-line, #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 var(--theme-line, #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:var(--theme-muted, #52616e);background:var(--theme-subtle, #f2f4f6);font-weight:750}.lesson-case-file dd{color:var(--theme-text, #1f3446);font-weight:650}.case-evidence-table{display:grid;overflow:hidden;margin:0 26px;border:1px solid var(--theme-line, #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 var(--theme-line, #d8dee6)}.case-evidence-table [role=row]:first-child{color:var(--theme-muted, #435462);background:var(--theme-subtle, #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 var(--theme-line, #d8dee6)}.case-evidence-table p{color:var(--theme-muted, #314658)}.case-evidence-table small{color:var(--theme-muted, #687783)}.case-knowledge-links{padding:22px 26px 24px}.case-knowledge-links h4{margin:0 0 10px;color:var(--theme-text, #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 var(--theme-line, #e2e6eb)}.case-knowledge-links strong{color:var(--theme-accent, #214f7b);font-size:12px}.case-knowledge-links p{margin:0;color:var(--theme-muted, #4c5e6d);font-size:12px;line-height:1.6}.scenario-detail-grid{gap:0;overflow:hidden;border:1px solid var(--theme-line, #d8dee6);border-radius:16px}.scenario-detail-grid>section,.scenario-detail-grid .success-panel{padding:20px 22px;border:0;border-radius:0;background:var(--theme-surface, #fff)}.scenario-detail-grid>section+section{border-left:1px solid var(--theme-line, #d8dee6)}.scenario-detail-grid h3{color:var(--theme-text, #233b4e);font-size:15px}.scenario-detail-grid h3 svg,.scenario-detail-grid .success-panel h3 svg,.scenario-detail-grid .success-panel li svg{color:var(--theme-accent, #315f87)}.scenario-detail-grid li{color:var(--theme-muted, #465a6b);font-size:12px}.lesson-warmup{padding:18px 20px;border:1px solid var(--theme-line, #ddd8c9);border-radius:16px;background:var(--theme-surface, #faf9f5)}.lesson-warmup>div svg{color:var(--theme-muted, #766744)}.lesson-warmup li{border:1px solid var(--theme-line, #e1ded4);border-radius:12px;color:var(--theme-muted, #4e514e);font-size:12px}.lesson-warmup li:before{border-radius:8px;color:#fff;background:#5d6870}.knowledge-card{border-color:var(--theme-line, #d6dde5);border-radius:16px}.knowledge-card.is-open{border-color:var(--theme-line, #9fb2c2);box-shadow:none}.knowledge-card>button{min-height:66px}.knowledge-card>button>span:first-child{border-radius:11px;color:var(--theme-accent, #315a7e);background:var(--theme-subtle, #e9eef2)}.knowledge-card>button small{font-size:11px}.knowledge-card-body>p{font-size:13px}.knowledge-card-body>div>span{border:1px solid var(--theme-line, #e0e5ea);border-radius:12px;background:var(--theme-surface, #f7f8f9)}.knowledge-card-body>div p,.knowledge-card-body>aside p{font-size:12px}.knowledge-card-body>aside{border:1px solid var(--theme-line, #ddd6c4);border-radius:12px;color:var(--theme-muted, #5b523f);background:var(--theme-surface, #faf8f2)}.knowledge-example{overflow:hidden;border:1px solid var(--theme-line, #d6dde5);border-radius:16px}.knowledge-example pre{border-radius:0}.knowledge-example>div{border-radius:0;color:var(--theme-muted, #4d5360);background:var(--theme-subtle, #f2f4f6)}.practice-brief-card{grid-template-columns:42px minmax(0,1fr);padding:20px 22px;border:1px solid var(--theme-line, #d4dce4);border-left:4px solid var(--theme-accent, #214f7b);border-radius:16px;background:var(--theme-surface, #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 var(--theme-line, #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 var(--theme-line, #d8dee6)}.practice-step-grid article>span{width:32px;height:32px;border-radius:10px;color:var(--theme-accent, #28465e);background:var(--theme-subtle, #e8edf1)}.practice-step-grid small{color:var(--theme-muted, #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:var(--theme-muted, #485a68);background:var(--theme-subtle, #eef1f3);font-size:11px}.lesson-quiz{overflow:hidden;border:1px solid var(--theme-line, #cfd7df);border-radius:18px;background:var(--theme-surface, #fff)}.lesson-quiz>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:2px solid var(--theme-line, #294e6b)}.lesson-quiz>header span{color:var(--theme-muted, #5e6d79);font-size:11px;font-weight:800;letter-spacing:.08em}.lesson-quiz>header h3{margin:5px 0;color:var(--theme-text, #192f40);font-size:20px}.lesson-quiz>header p{margin:0;color:var(--theme-muted, #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 var(--theme-line, #cbd4dc);border-radius:999px;color:var(--theme-accent, #29475e);background:var(--theme-surface, #f4f6f7);font-size:12px}.lesson-quiz-sync>small{display:inline-flex;align-items:center;gap:5px;color:var(--theme-muted, #4f715d);font-size:12px}.lesson-quiz-sync svg{color:var(--theme-muted, #4c8660)}.lesson-practice-mastery{display:flex;flex-wrap:wrap;gap:8px;padding:12px 24px;border-bottom:1px solid var(--theme-line, #d8dee5);background:var(--theme-surface, #f8fafb)}.lesson-practice-mastery>span{min-width:132px;display:grid;gap:2px;padding:8px 10px;border:1px solid var(--theme-line, #e0e5ea);border-left:3px solid var(--theme-line, #9aa9b5);border-radius:12px;background:var(--theme-surface, #fff)}.lesson-practice-mastery strong{color:var(--theme-text, #2b4051);font-size:12px}.lesson-practice-mastery small{color:var(--theme-muted, #667783);font-size:12px}.lesson-practice-mastery>span.is-mastered{border-left-color:var(--theme-line, #5b936c)}.lesson-practice-mastery>span.is-developing{border-left-color:var(--theme-line, #4f7da3)}.lesson-practice-mastery>span.is-needs-practice{border-left-color:var(--theme-line, #b06b65)}.lesson-quiz-list{display:grid}.lesson-quiz-question{padding:24px}.lesson-quiz-question+.lesson-quiz-question{border-top:1px solid var(--theme-line, #d8dee5)}.quiz-question-meta{display:flex;align-items:center;gap:8px;margin-bottom:9px}.quiz-question-meta span{color:var(--theme-muted, #60717e);font-size:11px;font-weight:750}.quiz-question-meta span+span{padding-left:8px;border-left:1px solid var(--theme-line, #cdd5dc);color:var(--theme-accent, #315b7d)}.lesson-quiz-question h4{margin:0 0 15px;color:var(--theme-text, #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 var(--theme-line, #d8dee5);border-radius:12px;color:var(--theme-muted, #3f5261);background:var(--theme-surface, #fff);cursor:pointer;font-size:13px;line-height:1.5}.lesson-quiz-question label:hover{border-color:var(--theme-line, #9eafbd);background:var(--theme-surface, #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 var(--theme-line, #b9c3cc);border-radius:50%;color:var(--theme-muted, #536572);font-size:11px;font-weight:800}.lesson-quiz-question label.is-selected{border-color:var(--theme-line, #557b9a);background:var(--theme-subtle, #f1f5f8)}.lesson-quiz-question label.is-selected>span:first-of-type{color:#fff;border-color:var(--theme-accent, #315f83);background:#315f83}.lesson-quiz-question label.is-correct{border-color:var(--theme-line, #5e8f6d);background:var(--theme-subtle, #f1f7f2)}.lesson-quiz-question label.is-wrong{border-color:var(--theme-line, #b56b67);background:var(--theme-surface, #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 var(--theme-accent, #244d6e);border-radius:12px;color:#fff;background:#244d6e;cursor:pointer;font-size:12px;font-weight:750}.quiz-submit:disabled{color:var(--theme-muted, #8b979f);border-color:var(--theme-line, #d6dce1);background:var(--theme-subtle, #edf0f2);cursor:default}.quiz-save-error{max-width:210px;display:flex;align-items:flex-start;gap:6px;margin:0;color:var(--theme-red, #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 var(--theme-line, #63836d);border-radius:12px;background:var(--theme-surface, #f3f7f4)}.quiz-feedback.is-wrong{border-left-color:var(--theme-line, #9c625e);background:var(--theme-surface, #faf4f3)}.quiz-feedback strong{color:var(--theme-text, #294837);font-size:12px}.quiz-feedback.is-wrong strong{color:var(--theme-red, #77413e)}.quiz-feedback p{margin:3px 0 0;color:var(--theme-muted, #4b5a52);font-size:12px;line-height:1.6}.quiz-feedback small{display:block;margin-top:4px;color:var(--theme-muted, #6f5b59);font-size:11px}.lesson-quiz-question label:focus-within,.quiz-submit:focus-visible{outline:3px solid var(--theme-accent, rgba(33, 79, 123, .22));outline-offset:2px}.lesson-review-queue{margin:0 24px 24px;overflow:hidden;border:1px solid var(--theme-line, #d6dde5);border-radius:16px;background:var(--theme-surface, #f8fafc)}.lesson-review-queue>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--theme-line, #dce3e9);background:var(--theme-surface, #fff)}.lesson-review-queue h4{margin:4px 0 0;color:var(--theme-text, #233b4d);font-size:15px}.lesson-review-queue>header>strong{flex:0 0 auto;padding:6px 10px;border-radius:999px;color:var(--theme-orange, #8a4e27);background:var(--theme-orange-soft, #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 var(--theme-line, #e0e6eb)}.lesson-review-queue article>span{color:var(--theme-orange, #b66a34)}.lesson-review-queue article.is-resolved>span{color:var(--theme-muted, #4c8a61)}.lesson-review-queue article small{color:var(--theme-muted, #6b7a87);font-size:10px;font-weight:750}.lesson-review-queue article p{margin:3px 0 0;color:var(--theme-muted, #354b5c);font-size:12px;line-height:1.55}.lesson-review-queue article button{min-height:40px;padding:7px 11px;border:1px solid var(--theme-line, #b9c7d2);border-radius:10px;color:var(--theme-accent, #315c7e);background:var(--theme-surface, #fff);cursor:pointer;font-size:11px;font-weight:750}.lesson-review-queue article button:hover{border-color:var(--theme-line, #7896ad);background:var(--theme-surface, #f1f6fa)}.practice-check-panel{border:1px solid var(--theme-line, #d5ddd8);border-radius:16px;background:var(--theme-surface, #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:var(--theme-surface, #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 var(--theme-line, #d9dfe6);border-radius:18px;background:var(--theme-surface, #f8fafb)}.lesson-completion-gate.is-ready{border-color:var(--theme-line, #bfddca);background:var(--theme-surface, #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:var(--theme-muted, #657786);background:var(--theme-subtle, #e9edf1)}.lesson-completion-gate.is-ready>header>span{color:#fff;background:#58a36f}.lesson-completion-gate h3{margin:3px 0 0;color:var(--theme-text, #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 var(--theme-line, #dce2e8);border-radius:12px;color:var(--theme-muted, #87929d);background:var(--theme-surface, #fff)}.lesson-completion-gate li.is-done{color:var(--theme-green, #4d8d63);border-color:var(--theme-line, #cfe3d6);background:var(--theme-surface, #f9fcfa)}.lesson-completion-gate li strong,.lesson-completion-gate li small{display:block}.lesson-completion-gate li strong{color:var(--theme-muted, #3c5060);font-size:12px}.lesson-completion-gate li small{margin-top:4px;color:var(--theme-muted, #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 var(--theme-line, #ddb9b5);border-radius:12px;color:var(--theme-red, #77413e);background:var(--theme-surface, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-text, #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 var(--theme-line, #dfe5ee);border-radius:12px;text-align:left;color:var(--theme-muted, #4c5d77);background:var(--theme-surface, #fff);cursor:pointer}.answer-options button>span{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:var(--theme-subtle, #f0f3f8);font-weight:800}.answer-options button.is-selected{color:var(--blue);border-color:var(--theme-line, #8eb5ff);background:var(--theme-surface, #f4f8ff)}.answer-options button.is-correct{color:var(--theme-green, #41702e);border-color:var(--theme-line, #a9d79a);background:var(--green-soft)}.answer-options button.is-wrong{color:var(--theme-red, #a64b48);border-color:var(--theme-line, #edb7b4);background:var(--theme-surface, #fff2f1)}.answer-analysis{display:flex;gap:10px;margin-top:14px;padding:14px;border-radius:13px;background:var(--green-soft)}.answer-analysis.is-wrong{background:var(--theme-orange-soft, #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 var(--theme-line, #e4b8b5);border-radius:8px;color:var(--theme-red, #a64c48);background:var(--theme-surface, #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:var(--theme-line, #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:var(--theme-muted, #8fa0b7)}.toolkit-resource>.icon-button{width:100%;height:100%;border-left:1px solid var(--line);border-radius:0;color:var(--theme-muted, #a1aaba);background:var(--theme-surface, #fafbfd)}.toolkit-resource>.icon-button:hover:not(:disabled){color:var(--theme-red, #bd514d);background:var(--theme-surface, #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 var(--theme-line, #dfe5ee);border-radius:11px;background:var(--theme-surface, #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:var(--theme-muted, #9aa4b4);font-size:8px}.saved-note-row .icon-button{width:34px;height:34px;border-radius:9px;color:var(--theme-muted, #9ba5b5);background:var(--theme-surface, #f3f5f8)}.saved-note-row .icon-button:hover:not(:disabled){color:var(--theme-red, #ba4f4b);background:var(--theme-red-soft, #fff1ef)}.muted-empty{margin:14px 0 0;color:var(--theme-muted, #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:var(--theme-red, #a14f4b);background:var(--theme-red-soft, #fff0ef);font-weight:800}.mistake-list article.is-reviewed>span{color:#fff;background:var(--theme-green-action, 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:var(--theme-muted, #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 var(--theme-line, #e0e5ed);border-radius:13px;color:var(--theme-muted, #758298);background:var(--theme-surface, #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:var(--theme-muted, #66748d);background:transparent;cursor:pointer;font-size:10px;font-weight:760}.toolkit-filter-row>button.is-active{color:var(--blue);background:var(--theme-surface, #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:var(--theme-surface, #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 var(--theme-line, #d5e6fb);border-radius:24px;background:linear-gradient(112deg,var(--theme-blue-soft, #edf7ff) 0%,var(--theme-surface, #f5f9ff) 56%,var(--theme-blue-soft, #e2efff) 100%);box-shadow:0 14px 34px #3e6faa14}.friend-add-hero:after{width:200px;height:58px;position:absolute;right:-72px;bottom:19px;border-radius:999px;background:var(--theme-overlay-soft, rgba(166, 207, 255, .28));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:var(--theme-text, #142d54);font-size:28px;line-height:1.2;letter-spacing:-.025em}.friend-add-copy>p:not(.eyebrow){margin:11px 0 18px;color:var(--theme-muted, #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 var(--theme-line, #cedbed);border-radius:13px;outline:0;color:var(--theme-text, #243b5a);background:var(--theme-glass, rgba(255,255,255,.94));font-size:14px;font-weight:720;letter-spacing:.08em;transition:border-color .18s ease,box-shadow .18s ease}.friend-code-form input::placeholder{color:var(--theme-muted, #9aa8ba);font-weight:560;letter-spacing:0}.friend-code-form input:focus{border-color:var(--theme-line, #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 var(--theme-accent, #5f8cff);border-radius:12px;color:var(--theme-accent, #2a64ee);background:var(--theme-glass, rgba(255,255,255,.67));cursor:pointer;font-size:12px;font-weight:800}.friend-code-toggle:hover{background:var(--theme-surface, #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:var(--theme-blue-soft, #d4e2f4);content:""}.friend-qr{width:140px;height:140px;display:grid;place-items:center;padding:12px;border:0;border-radius:16px;color:var(--theme-text, #182b4c);background:var(--theme-surface, #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:var(--theme-accent, #2563eb);transform:translateY(-2px)}.my-friend-code>div{min-width:0}.my-friend-code>div>span{display:block;color:var(--theme-text, #273b59);font-size:12px;font-weight:820}.my-friend-code strong{display:block;margin-top:5px;color:var(--theme-text, #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:var(--theme-muted, #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:var(--theme-accent, #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 var(--theme-line, #e7ecf3)}.friends-board h2{margin:0;color:var(--theme-text, #183052);font-size:21px}.friend-directory{display:flex;flex-direction:column}.friend-directory>header>span{color:var(--theme-muted, #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 var(--theme-line, #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:var(--theme-blue-soft, #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:var(--theme-text, #253a59);font-size:13px}.friend-identity .friend-presence{display:inline-flex;align-items:center;gap:5px;min-inline-size:7em;white-space:nowrap;color:var(--theme-green, #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:var(--theme-muted, #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:var(--theme-muted, #8b98ab);font-size:11px;line-height:1.35}.friend-pk-button{min-height:38px;padding:0 18px;border:1px solid var(--theme-line, #adc9ff);border-radius:11px;color:var(--theme-accent, #2f6beb);background:var(--theme-surface, #fff);cursor:pointer;font-size:11px;font-weight:800}.friend-pk-button:hover{border-color:var(--theme-accent, #6395f7);background:var(--theme-surface, #f4f8ff)}.friend-nudge-button{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:12px;color:var(--theme-muted, #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:var(--theme-blue-soft, #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:var(--theme-muted, #8ba0b9);text-align:center}.friend-empty strong{margin-top:10px;color:var(--theme-muted, #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 var(--theme-line, #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:var(--theme-text, #233955);font-size:12px}.friend-request-heading span{min-width:22px;height:22px;display:inline-grid;place-items:center;border-radius:999px;color:var(--theme-accent, #396ee9);background:var(--theme-blue-soft, #e9f0ff);font-size:9px;font-weight:820}.friend-request-heading>svg{margin-left:auto;color:var(--theme-muted, #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 var(--theme-line, #dbe2ec);color:var(--theme-muted, #5f6f85);background:var(--theme-surface, #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:var(--theme-muted, #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 var(--theme-line, #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 var(--theme-line, #dce3ee);border-radius:12px;background:var(--theme-surface, white);color:var(--ink);font:inherit;font-size:13px}.pk-history-description,.pk-review-note{color:var(--theme-muted, #586b85);font-size:13px;line-height:1.8}.pk-history-description{margin:6px 0 18px}.pk-history-empty{padding:24px 0;color:var(--theme-muted, #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 var(--theme-line, #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:var(--theme-muted, #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:var(--theme-subtle, #f0f3f8);color:var(--theme-muted, #53637b);font-size:13px;font-weight:700;white-space:nowrap}.pk-outcome.is-won{background:var(--theme-subtle, #edf8f1);color:var(--theme-green, #237341)}.pk-outcome.is-lost{background:var(--theme-orange-soft, #fff4e5);color:var(--theme-orange, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-surface, #f6f9ff)}.pk-review-task h3{margin-top:0}.pk-review-task p{margin-bottom:0;color:var(--theme-muted, #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 var(--theme-line, #e7edf5)}.pk-review-checks li>span{display:flex;gap:7px;align-items:center;flex-shrink:0;color:var(--theme-orange, #875309);font-size:13px}.pk-review-checks li>span.is-passed{color:var(--theme-green, #237341)}.pk-review-checks strong{color:var(--ink);font-size:14px}.pk-review-checks p{margin:5px 0 0;color:var(--theme-muted, #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 var(--theme-line, #dce3ee);border-radius:16px;background:var(--theme-surface, #f8faff);color:var(--theme-text, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-orange-soft, #fff5df);color:var(--theme-orange, #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:var(--theme-orange, #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:var(--theme-text, #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:var(--theme-muted, #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 var(--theme-line, #dce3ee);border-radius:12px;outline:0;color:var(--theme-accent, #334760);background:var(--theme-surface, #fff)}.pk-friend-select select:focus{border-color:var(--theme-line, #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 var(--theme-line, #dce3ee);border-radius:16px;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.pk-challenge-option:hover{background:var(--theme-surface, #f6f9ff);border-color:var(--theme-line, #93b7f6)}.pk-challenge-option.is-selected{border-color:var(--theme-accent, #4785e5);background:var(--theme-blue-soft, #eef5ff)}.pk-challenge-option:focus-within{outline:2px solid var(--theme-accent, #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:var(--theme-muted, #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:var(--theme-accent, #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:var(--theme-muted, #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:var(--theme-accent, #2464b4);font-weight:650}.pk-challenge-preview small{font-size:12px}.pk-room>.pk-challenge-preview{padding:18px;background:var(--theme-surface, #f6f9ff);border-radius:16px}.pk-mode-summary{display:flex;align-items:center;gap:10px;margin:14px 0 18px;padding:12px;border-radius:13px;color:var(--theme-orange, #d27a00);background:var(--theme-orange-soft, #fff5e5)}.pk-mode-summary>svg{flex:0 0 auto}.pk-mode-summary strong,.pk-mode-summary small{display:block}.pk-mode-summary strong{color:var(--theme-muted, #3a4659);font-size:13px}.pk-mode-summary small{margin-top:4px;color:var(--theme-muted, #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:var(--theme-text, #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:var(--theme-muted, #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 var(--theme-line, #dce3ee);border-radius:12px;outline:0;color:var(--theme-text, #213a5a);background:var(--theme-surface, #fff);font-size:17px;font-weight:820;letter-spacing:.16em;font-variant-numeric:tabular-nums}.pk-join-card input:focus{border-color:var(--theme-accent, #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:var(--theme-text, #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 var(--theme-line, #dce6f2);border-radius:12px;color:var(--theme-muted, #6b7c94);background:var(--theme-surface, #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:var(--theme-line, #cdebd9);color:var(--theme-green, #278a52);background:var(--theme-subtle, #effaf4)}.pk-connection.is-error{border-color:var(--theme-line, #f1cecc);color:var(--theme-red, #ba534e);background:var(--theme-surface, #fff4f3)}.pk-room-code{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:13px 16px;border:1px solid var(--theme-line, #cfe3fa);border-radius:15px;background:var(--theme-blue-soft, #f0f7ff)}.pk-room-code small,.pk-room-code strong{display:block}.pk-room-code small{color:var(--theme-muted, #6380a3);font-size:9px;font-weight:760}.pk-room-code strong{margin-top:3px;color:var(--theme-accent, #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 var(--theme-line, #bdd8f7);border-radius:11px;color:var(--theme-accent, #1969c4);background:var(--theme-surface, #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 var(--theme-line, #e3e9f1);border-radius:17px;background:var(--theme-surface, #fbfcfe)}.pk-players.is-networked>div.is-me{border-color:var(--theme-line, #bcd9fa);background:var(--theme-surface, #f4f9ff);box-shadow:inset 0 0 0 1px #2369f50a}.pk-players strong{margin-top:9px;color:var(--theme-text, #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:var(--theme-muted, #748399);background:var(--theme-subtle, #edf1f5);font-size:9px;font-weight:800}.pk-ready-badge.is-ready{color:var(--theme-green, #25884f);background:var(--theme-green-soft, #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:var(--theme-accent, #216ec2);background:var(--theme-blue-soft, #edf6ff)}.pk-phase>span{min-width:46px;display:grid;place-items:center;color:var(--theme-accent, #0f73df);font-size:27px;font-weight:900;font-variant-numeric:tabular-nums}.pk-phase strong,.pk-phase small{display:block}.pk-phase strong{color:var(--theme-text, #263b59);font-size:12px}.pk-phase small{margin-top:4px;color:var(--theme-muted, #687b94);font-size:9px;line-height:1.45}.pk-phase.is-countdown{color:var(--theme-orange, #d37a00);background:var(--theme-orange-soft, #fff5e5)}.pk-phase.is-countdown>span{color:var(--theme-orange, #e18808)}.pk-phase.is-running{color:var(--theme-green, #25884f);background:var(--theme-subtle, #ecf9f2)}.pk-phase.is-running>span{color:var(--theme-green, #25884f);font-size:20px}.pk-phase.is-finished,.pk-phase.is-cancelled{color:var(--theme-muted, #66768d);background:var(--theme-surface, #f2f5f8)}.pk-challenge-placeholder{display:flex;align-items:flex-start;gap:11px;margin-top:12px;padding:13px 14px;border:1px dashed var(--theme-line, #bed5ef);border-radius:14px;color:var(--theme-accent, #1a6bc2);background:var(--theme-surface, #f8fbff)}.pk-challenge-placeholder>svg{flex:0 0 auto}.pk-challenge-placeholder strong{color:var(--theme-accent, #2c405b);font-size:11px}.pk-challenge-placeholder p{margin:4px 0 0;color:var(--theme-muted, #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 var(--theme-line, #dfe7f1);border-radius:16px;background:var(--theme-surface, #fff)}.pk-task-panel,.pk-judge-panel{padding:16px}.pk-task-panel h3{margin:6px 0 7px;color:var(--theme-text, #263b58);font-size:14px}.pk-task-panel>p:not(.eyebrow){margin:0;color:var(--theme-muted, #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:var(--theme-surface, #f4f6f9)}.pk-test-list>div>span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:var(--theme-muted, #728197);background:var(--theme-subtle, #e5eaf0);font-size:9px;font-weight:850}.pk-test-list>div.is-passed{background:var(--theme-subtle, #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:var(--theme-accent, #344861);font-size:9px}.pk-test-list small{margin-top:3px;color:var(--theme-muted, #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:var(--theme-orange, #bc7507);background:var(--theme-orange-soft, #fff5df);font-size:8px;line-height:1.5}.pk-hint>svg{flex:0 0 auto}.pk-hint strong{display:block;color:var(--theme-orange, #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 var(--theme-line, #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:var(--theme-muted, #91a7c1);font-size:8px}.pk-editor-toolbar small.is-saved{color:var(--theme-green, #82d9a6)}.pk-editor-toolbar small.is-error{color:var(--theme-red, #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:var(--theme-muted, #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:var(--theme-accent, #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:var(--theme-muted, #aebdd0);background:#172235}.pk-editor-actions{display:grid;grid-template-columns:auto auto minmax(126px,1fr);gap:8px;padding:10px;border-top:1px solid var(--theme-line, #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:var(--theme-line, #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:var(--theme-accent, #50749e);background:var(--theme-subtle, #edf3f9)}.pk-judge-heading p{margin:0;color:var(--theme-muted, #718198);font-size:8px;font-weight:780}.pk-judge-heading strong{display:block;margin-top:3px;color:var(--theme-accent, #2f425d);font-size:11px}.pk-judge-panel.is-success .pk-judge-heading>span{color:var(--theme-green, #29945a);background:var(--theme-green-soft, #e9f8f0)}.pk-judge-panel.is-error .pk-judge-heading>span{color:var(--theme-red, #c75b56);background:var(--theme-red-soft, #fff0ef)}.pk-score{min-height:90px;display:grid;place-items:center;align-content:center;margin-top:13px;border-radius:14px;color:var(--theme-accent, #176fce);background:var(--theme-blue-soft, #edf6ff)}.pk-score strong{font-size:30px;line-height:1;font-variant-numeric:tabular-nums}.pk-score small{margin-top:5px;color:var(--theme-muted, #6d7f96);font-size:8px}.pk-judge-panel>p{margin:11px 0 0;color:var(--theme-muted, #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:var(--theme-orange, #9b690e);background:var(--theme-orange-soft, #fff5df)}.pk-submit-readiness.is-ready,.pk-result-summary.is-winner{color:var(--theme-green, #278a52);background:var(--theme-subtle, #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:var(--theme-muted, #6f7f92);font-size:8px;line-height:1.4}.pk-judge-note{display:block;margin-top:12px;color:var(--theme-muted, #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:var(--theme-red, #a34d49);border-color:var(--theme-line, #edd2d0);background:var(--theme-surface, #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:var(--theme-red, #a64d49);background:var(--theme-red-soft, #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:var(--theme-text, #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:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-muted, #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: var(--theme-text, #071d50);--auth-muted: var(--theme-muted, #526a91);--auth-stroke: var(--theme-accent, 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:var(--theme-blue-soft, #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:normal}.auth-motion-toggle{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;padding:0;border:1px solid var(--theme-line, rgba(132,161,204,.24));border-radius:50%;color:var(--theme-accent, #365a88);background:var(--theme-glass, rgba(244,249,255,.6));cursor:pointer;transition:background-color .2s ease,transform .2s ease}.auth-motion-toggle:hover{background:var(--theme-glass, rgba(255,255,255,.88))}.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:var(--theme-accent, #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 var(--theme-line, rgba(255,255,255,.48));border-radius:28px;background:var(--theme-blue-soft, #eaf2fd);box-shadow:0 18px 48px -28px #3d61942e}@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.auth-card{background:var(--theme-glass, rgba(233,242,255,.88));-webkit-backdrop-filter:blur(40px) saturate(105%);backdrop-filter:blur(40px) saturate(105%)}}.auth-card-heading{margin-bottom:28px}.auth-card-heading h2{margin:0;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 var(--theme-line, #dce7f8);border-radius:10px;color:var(--theme-muted, #58708f);background:var(--theme-surface, #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:var(--theme-line, #f1ded5);color:var(--theme-orange, #8c5842);background:var(--theme-surface, #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 var(--theme-line, #dfe5ee);border-radius:12px;color:var(--theme-muted, #8390a3);background:var(--theme-surface, #fff)}.field-control:focus-within{border-color:var(--theme-line, #8ab5ff);box-shadow:0 0 0 3px #297cff1f}.field-control.is-invalid{border-color:var(--theme-accent, #d96d68);background:var(--theme-surface, #fffafa);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:var(--theme-muted, #718099);background:var(--theme-surface, #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 var(--theme-line, #f0dfb8);border-radius:12px;color:var(--theme-orange, #775d26);background:var(--theme-orange-soft, #fffaf0);font-size:10px;line-height:1.55}.direct-registration-notice svg{flex:0 0 auto;margin-top:1px;color:var(--theme-orange, #cf8a19)}.direct-registration-notice span{display:grid;gap:2px}.direct-registration-notice strong{color:var(--theme-orange, #765416);font-size:10px}.field-helper,.field-error{display:block;font-size:11px;font-weight:620;line-height:1.45}.field-helper{color:var(--theme-muted, #66758a)}.field-error{color:var(--theme-red, #a33f3a)}.auth-card .field-control{min-height:52px;padding-inline:14px 6px;border-color:var(--auth-stroke);border-radius:13px;color:var(--theme-accent, #7389b5);background:var(--theme-glass, rgba(255,255,255,.48));transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.auth-card .field-control:focus-within{border-color:var(--blue);background:var(--theme-glass, rgba(255,255,255,.93));box-shadow:0 0 0 3px #2369f526}.auth-card .field-control.is-invalid{border-color:var(--theme-accent, #b74d45);background:var(--theme-surface, #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:var(--theme-accent, #3e6083)}.auth-card .field-control>button svg{width:20px;height:20px}.auth-card .field-control>button:hover{background:var(--theme-glass, rgba(225,236,250,.85))}.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:var(--theme-accent, #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:var(--theme-accent, #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 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:var(--theme-surface, #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:var(--theme-red, #aa4844);background:var(--theme-red-soft, #fff0ef);font-size:9px}.form-notice{color:var(--theme-green, #3f782a);background:var(--green-soft)}.onboarding-page{min-height:100vh;position:relative;display:grid;place-items:center;overflow:hidden;padding:80px 25px 35px;background:var(--theme-surface, #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:var(--theme-subtle, #e0e5ee)}.onboarding-progress span.is-active{background:var(--theme-action, 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 var(--theme-line, #dfe5ee);border-radius:14px;color:var(--theme-muted, #52627b);background:var(--theme-surface, #fff);cursor:pointer;font-weight:760}.choice-grid button.is-selected,.choice-list button.is-selected{color:var(--blue);border-color:var(--theme-line, #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 var(--theme-line, #dfe5ee);border-radius:13px;text-align:left;color:var(--theme-muted, #52627b);background:var(--theme-surface, #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 var(--theme-line, #dce4ef);border-radius:999px;color:var(--theme-muted, #51637f);background:var(--theme-surface, #f7f9fc);cursor:pointer;font-size:10px;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.search-suggestions button:hover{border-color:var(--theme-line, #b8cff2);color:var(--blue);background:var(--theme-surface, #f2f7ff)}.search-suggestions small{display:block;margin-top:18px;color:var(--theme-muted, #99a3b3);font-size:8px}.search-suggestions .search-suggestion-heading>button{min-height:28px;padding:0 8px;border:0;border-radius:8px;color:var(--theme-muted, #7d899c);background:transparent;font-size:9px;font-weight:760}.search-suggestions .search-suggestion-heading>button:hover{color:var(--theme-red, #b4534f);background:var(--theme-red-soft, #fff1ef)}.search-history-chip{min-width:0;display:inline-flex;align-items:stretch;overflow:hidden;border:1px solid var(--theme-line, #d8e2f0);border-radius:999px;background:var(--theme-surface, #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:var(--theme-muted, #98a4b6)}.search-suggestions .search-history-chip>button:last-child:hover{color:var(--theme-red, #b4534f)}.search-empty-state{min-height:132px;display:grid;place-items:center;align-content:center;gap:9px;padding:22px;color:var(--theme-muted, #8190a8);text-align:center}.search-empty-state.is-loading{grid-template-columns:auto auto}.search-empty-state p{margin:0;color:var(--theme-muted, #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:var(--theme-glass, rgba(255, 255, 255, .97));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:10px}.search-result-list>div:first-child small{color:var(--theme-muted, #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:var(--theme-text, #233654);background:var(--theme-surface, #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:var(--theme-surface, #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:var(--theme-surface, #f3f6fc);font-family:inherit;cursor:pointer}.notification-list>button.is-read{background:var(--theme-surface, #fafaf8)}.notification-list>button:hover{background:var(--theme-blue-soft, #edf3fd)}.notification-list>button:active{background:var(--theme-blue-soft, #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:var(--theme-surface, #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 var(--theme-line, #d8dee6);border-left:0}.case-evidence-table{margin-inline:16px;border-top:1px solid var(--theme-line, #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:var(--theme-accent, #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:var(--theme-text, #193969);background:var(--theme-blue-soft, #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:var(--theme-muted, #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(--theme-action, 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:var(--theme-surface, #fff);transition:background-color .16s ease}.sidebar-profile-card:hover{background:var(--theme-surface, #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:var(--theme-text, #173052);font-size:12px}.sidebar-profile-card small{margin-top:3px;color:var(--theme-muted, #7a8aa1);font-size:10px}.sidebar-profile-card>svg{color:var(--theme-muted, #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:var(--theme-muted, #74839a);text-align:left;background:transparent;will-change:transform}.dashboard-search input{min-width:0;flex:1;border:0;outline:0;color:var(--theme-text, #203453);background:transparent;font:inherit;font-size:13px}.dashboard-search input::placeholder{color:var(--theme-muted, #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 var(--theme-line, #dce8f6);border-radius:inherit;background:var(--theme-surface, #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:var(--theme-line, #a9c7f6);background:var(--theme-surface, #fbfdff)}.dashboard-search-wrap.is-open .dashboard-search-surface,.dashboard-search:focus-within .dashboard-search-surface{outline:2px solid var(--theme-accent, rgba(47, 126, 236, .18));outline-offset:2px}.dashboard-search-icon{position:relative;z-index:1;flex:0 0 auto;color:var(--theme-muted, #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:var(--theme-muted, #74839a);background:var(--theme-subtle, #edf3fa);cursor:pointer;will-change:transform;transition:color .15s ease,background-color .15s ease}.dashboard-search-clear:hover{color:var(--theme-accent, #275fbd);background:var(--theme-blue-soft, #e2edfb)}.dashboard-search-clear:disabled{pointer-events:none}.dashboard-search-clear:focus-visible{outline:2px solid var(--theme-accent, #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 var(--theme-line, #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 var(--theme-line, #dbe6f3);border-radius:20px;background:var(--theme-glass, rgba(255, 255, 255, .98));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:var(--theme-orange, #925d08);background:var(--theme-orange-soft, #fff8e8);cursor:pointer}.dashboard-stat svg{color:var(--theme-orange, #ffad1f)}.dashboard-stat strong{color:var(--theme-text, #173052);font-size:13px}.dashboard-stat span{color:var(--theme-muted, #718097);font-size:11px}.dashboard-stat.is-points{color:var(--theme-accent, #256fe8);background:var(--theme-blue-soft, #ecf5ff)}.dashboard-stat.is-points svg{color:var(--theme-accent, #2a8df4)}.dashboard-notification{background:var(--theme-surface, #fff);border-color:var(--theme-line, #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,var(--theme-glass, rgba(232, 247, 255, .97)) 0%,var(--theme-glass, rgba(232, 247, 255, .9)) 24%,var(--theme-glass, rgba(232, 247, 255, .5)) 43%,var(--theme-overlay-soft, rgba(232, 247, 255, .06)) 59%,rgba(232,247,255,0) 70%)}.dashboard-hero-copy{width:52%;position:relative;z-index:2;padding:38px 0 34px 38px;color:var(--theme-text, #10224c)}.dashboard-kicker{display:flex;align-items:center;gap:6px;margin:0 0 8px;color:var(--theme-accent, #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:var(--theme-accent, #0874e9)}.dashboard-hero-copy>p:not(.dashboard-kicker){margin:14px 0 20px;color:var(--theme-accent, #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 var(--theme-line, rgba(255,255,255,.8));border-radius:999px;color:var(--theme-text, #17345d);background:var(--theme-glass, rgba(255,255,255,.82));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:var(--theme-text, #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:var(--theme-accent, #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 var(--theme-line, #d9e9fa);border-radius:21px;background:var(--theme-blue-soft, #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:var(--theme-accent, #2271d2);font-size:10px;font-weight:780}.continue-cover-placeholder{display:grid;place-items:center;width:100%;height:94px;border-radius:15px;color:var(--theme-accent, #5684b4);background:var(--theme-blue-soft, #dcebf8)}.continue-learning-copy h3{margin:0;color:var(--theme-text, #132846);font-size:16px;overflow-wrap:anywhere}.continue-learning-copy>span{display:block;margin-top:5px;color:var(--theme-muted, #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:var(--theme-blue-soft, #d8e5f4)}.dashboard-progress i{width:var(--progress);height:100%;display:block;border-radius:inherit;background:#1680ee}.dashboard-progress strong{color:var(--theme-text, #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:var(--theme-text, #172845);font-size:12px}.skill-card small{margin-top:4px;color:var(--theme-muted, #687993);font-size:10px}.skill-card>svg{color:var(--theme-muted, #4b607f)}.skill-card.is-violet{background:var(--theme-purple-soft, #f1ebff)}.skill-card.is-violet>span:first-child{background:#8066e8}.skill-card.is-rose{background:var(--theme-red-soft, #ffecef)}.skill-card.is-rose>span:first-child{background:#ef6673}.skill-card.is-green{background:var(--theme-green-soft, #e6f8ef)}.skill-card.is-green>span:first-child{background:#30b96d}.skill-card.is-orange{background:var(--theme-orange-soft, #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 var(--theme-line, #dee8f4);border-radius:17px;color:var(--theme-text, #173052);text-align:left;background:var(--theme-surface, #fff);cursor:pointer}.dashboard-recommendation-grid>button>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:var(--theme-accent, #146edc);background:var(--theme-blue-soft, #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:var(--theme-accent, #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:var(--theme-muted, #718198);font-size:9px}.dashboard-recommendation-grid>button>svg{color:var(--theme-muted, #8b9ab0)}.dashboard-recommendation-empty{grid-column:1 / -1;min-height:82px;display:flex;align-items:center;gap:11px;padding:14px;border:1px dashed var(--theme-line, #bad3f2);border-radius:17px;color:var(--theme-accent, #2873d4);background:var(--theme-surface, #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:var(--theme-muted, #718198);font-size:10px}.dashboard-rail{min-width:0;display:grid;gap:14px}.rail-card{border:1px solid var(--theme-line, #dee8f3);border-radius:21px;background:var(--theme-surface, #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:var(--theme-text, #142642);font-size:15px}.rail-heading>span{color:var(--theme-muted, #687993);font-size:10px;font-weight:760}.rail-heading>button{min-height:28px;padding:0 9px;border:0;border-radius:9px;color:var(--theme-muted, #63738d);background:var(--theme-surface, #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:var(--theme-orange, #ee8e00);background:var(--theme-orange-soft, #fff2d8)}.daily-goal-value strong{display:block;color:var(--theme-text, #152945);font-size:24px;line-height:1;font-variant-numeric:tabular-nums}.daily-goal-value small{display:block;margin-top:4px;color:var(--theme-muted, #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:var(--theme-muted, #c4cfdd)}.week-checks>span.is-done{color:var(--theme-accent, #1680ee)}.week-checks small{color:var(--theme-muted, #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:var(--theme-muted, #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:var(--theme-subtle, #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 var(--theme-line, #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:var(--theme-text, #2a3b55);font-size:11px}.growth-row small{color:var(--theme-muted, #63738b);font-size:10px;font-weight:760;font-variant-numeric:tabular-nums}.growth-row.is-blue>span{color:var(--theme-accent, #1f76dd);background:var(--theme-blue-soft, #eaf3ff)}.growth-row.is-green>span{color:var(--theme-green, #2a9d5b);background:var(--theme-green-soft, #e8f8ef)}.growth-row.is-orange>span{color:var(--theme-orange, #d98200);background:var(--theme-orange-soft, #fff1d9)}.growth-row.is-violet>span{color:var(--theme-accent, #7560d8);background:var(--theme-blue-soft, #f0ebff)}.reward-card{position:relative;overflow:hidden;padding:17px 18px;background:var(--theme-blue-soft, #ecf7ff)}.reward-icon{width:50px;height:50px;position:absolute;right:16px;top:17px;display:grid;place-items:center;border-radius:16px;color:var(--theme-orange, #f19a12);background:var(--theme-orange-soft, #fff3d6)}.reward-card>div:first-of-type{padding-right:58px}.reward-card p,.ai-quick-card p{margin:0;color:var(--theme-accent, #3274bd);font-size:9px;font-weight:800}.reward-card h2,.ai-quick-card h2{margin:5px 0;color:var(--theme-text, #173052);font-size:13px;line-height:1.35}.reward-card small,.ai-quick-card small{color:var(--theme-muted, #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:var(--theme-surface, #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,var(--theme-glass, rgba(232, 247, 255, .97)) 0%,var(--theme-glass, rgba(232, 247, 255, .92)) 26%,var(--theme-glass, rgba(232, 247, 255, .65)) 43%,rgba(232,247,255,0) 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:var(--theme-line, #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 var(--theme-line, #9eb7cc);border-radius:12px;color:var(--theme-accent, #204f75);background:var(--theme-surface, #f2f7fb);cursor:pointer;font-size:12px;font-weight:760}.quiz-ai-help:hover{border-color:var(--theme-line, #5f83a0);background:var(--theme-subtle, #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 var(--theme-accent, 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 var(--theme-line, #d8e0e8);background:var(--theme-surface, #f7f9fb)}.lesson-ai-avatar{width:42px;height:42px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--theme-line, #d5e0ea);border-radius:10px;background:var(--theme-surface, #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:var(--theme-muted, #617488);font-size:11px}.lesson-ai-header strong{margin-top:3px;color:var(--theme-text, #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:var(--theme-muted, #52697d);background:transparent;cursor:pointer}.lesson-ai-header button:hover{background:var(--theme-subtle, #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 var(--theme-line, #cddbe8);border-radius:12px;color:var(--theme-accent, #315f83);background:var(--theme-surface, #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:var(--theme-muted, #62798d);font-size:10px;line-height:1.45}.lesson-ai-context strong{margin-top:3px;color:var(--theme-accent, #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 var(--theme-line, #d8e0e8);border-radius:12px;background:var(--theme-surface, #fff);color:var(--theme-accent, #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:var(--theme-surface, #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:var(--theme-muted, #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 var(--theme-accent, #237be0);outline-offset:3px}.lesson-ai-code-snapshot{margin-top:8px;color:var(--theme-accent, #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 var(--theme-line, #cbd6df);border-radius:14px;color:var(--theme-muted, #4f6578);background:var(--theme-surface, #fbfcfd);text-align:center}.lesson-ai-empty svg{color:var(--theme-orange, #b57922)}.lesson-ai-empty strong{display:block;margin-top:7px;color:var(--theme-text, #263f53);font-size:13px}.lesson-ai-empty p{margin:5px 0 0;color:var(--theme-muted, #627384);font-size:12px;line-height:1.55}.lesson-ai-message{padding:11px 12px;border:1px solid var(--theme-line, #d7dfe7);border-radius:14px;background:var(--theme-surface, #fff)}.lesson-ai-message.is-user{margin-left:22px;border-color:var(--theme-line, #c5d8e9);background:var(--theme-surface, #f1f6fa)}.lesson-ai-message>small{display:block;margin-bottom:5px;color:var(--theme-muted, #526f86);font-size:10px;font-weight:800}.lesson-ai-message>p,.lesson-ai-message .ai-message-content p{margin:0;color:var(--theme-muted, #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:var(--theme-muted, #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 var(--theme-line, #ddb9b5);border-radius:12px;color:var(--theme-red, #6d3e3a);background:var(--theme-surface, #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 var(--theme-line, #a56d68);border-radius:10px;color:var(--theme-red, #6d3e3a);background:var(--theme-surface, #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 var(--theme-line, #b8c7d3);border-radius:12px;color:var(--theme-accent, #284e6b);background:var(--theme-surface, #fff);cursor:pointer;font-size:12px;font-weight:750}.lesson-ai-return:hover{background:var(--theme-surface, #f5f8fa)}.lesson-ai-form{display:grid;gap:8px;padding:12px;border-top:1px solid var(--theme-line, #d8e0e8);background:var(--theme-surface, #fff)}.lesson-ai-form label{color:var(--theme-accent, #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 var(--theme-line, #bfcbd6);border-radius:12px;color:var(--theme-text, #20394d);background:var(--theme-surface, #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:var(--theme-muted, #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 var(--theme-accent, #244d6e);border-radius:12px;color:#fff;background:#244d6e;cursor:pointer;font-size:12px;font-weight:800}.lesson-ai-form button:disabled{color:var(--theme-muted, #8a969f);border-color:var(--theme-line, #d5dbe0);background:var(--theme-subtle, #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}}.auth-methods button{min-width:0;min-height:44px}.auth-recovery-channel{display:grid;gap:8px;margin-bottom:16px}.email-binding{margin-top:22px;padding-top:20px;border-top:1px solid var(--theme-line, #e2eaf3)}.email-binding-heading{display:flex;align-items:center;gap:12px}.email-binding-heading>div{flex:1;min-width:0}.email-binding-heading h3{margin:0;font-size:16px}.email-binding-heading p{margin:4px 0 0;font-size:14px;overflow-wrap:anywhere}.email-binding-heading button{min-height:44px}.email-binding-form{display:grid;gap:14px;margin-top:18px}.email-binding-form label{display:grid;gap:7px;font-size:14px}.email-binding-form input{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid var(--theme-line, #d4e1ef);border-radius:12px;background:var(--theme-surface, #f8fbff);color:var(--theme-text, #172d49);font:inherit;font-size:16px}.email-binding-form input:focus-visible{outline:2px solid var(--theme-accent, #147cec);outline-offset:2px}.email-binding-code{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.email-binding-code button{min-width:108px;min-height:46px;font-size:14px}:root{--display-page: #faf8f2;--display-accent: #2369f5;--display-action: #2369f5;--display-focus: #2369f5;--display-on-action: #fff;--editor-keyword: #7055ad;--editor-string: #236b42;--editor-number: #986117;--editor-comment: #697487}:root[data-theme=dark]{--display-page: #121b29;--theme-surface: #1b2737;--theme-subtle: #202e41;--theme-text: #edf2fa;--theme-muted: #b5c3d7;--theme-accent: #9cc4ff;--theme-green: #9bd5b0;--theme-orange: #f3c986;--theme-red: #ffa99f;--theme-purple: #c9b6ff;--theme-blue-soft: #223a54;--theme-green-soft: #233b33;--theme-orange-soft: #423526;--theme-red-soft: #422b35;--theme-purple-soft: #342d4c;--theme-line: #40516a;--theme-glass: rgba(27, 39, 55, .94);--theme-overlay-soft: rgba(139, 172, 217, .1);--theme-action: #2466df;--theme-blue-dark-action: #1f58c3;--theme-green-action: #287249;--theme-orange-action: #966017;--display-accent: #9cc4ff;--display-action: #2466df;--display-focus: #9cc4ff;--editor-keyword: #d2b5ff;--editor-string: #a2dbb4;--editor-number: #f3c986;--editor-comment: #a8b9ce;--shadow-sm: 0 8px 20px rgba(0, 0, 0, .12);--shadow-md: 0 16px 38px rgba(0, 0, 0, .2)}:root[data-eye-comfort=true]{--display-page: #f4efdf;--theme-surface: #faf5e9;--theme-subtle: #eee8d8;--theme-text: #302e28;--theme-muted: #665e50;--theme-accent: #315c8a;--theme-green: #356544;--theme-orange: #83551c;--theme-red: #a3483d;--theme-purple: #695381;--theme-blue-soft: #e5e9e4;--theme-green-soft: #e4ead8;--theme-orange-soft: #f3e7c9;--theme-red-soft: #f4e3d9;--theme-purple-soft: #eae3ec;--theme-line: #d2c8b4;--theme-glass: rgba(250, 245, 233, .94);--theme-overlay-soft: rgba(119, 102, 67, .08);--theme-action: #345f91;--theme-blue-dark-action: #284e7b;--theme-green-action: #426a3c;--theme-orange-action: #8d612c;--display-accent: #315c8a;--display-action: #345f91;--display-focus: #315c8a;--editor-keyword: #70528a;--editor-string: #376241;--editor-number: #885916;--editor-comment: #6e685d}:root[data-theme=dark][data-eye-comfort=true]{--display-page: #211f1b;--theme-surface: #2c2923;--theme-subtle: #353129;--theme-text: #f2eadb;--theme-muted: #c9beac;--theme-accent: #b0c8e5;--theme-green: #b4cf9d;--theme-orange: #e7c894;--theme-red: #eeb1a3;--theme-purple: #cdbbd7;--theme-blue-soft: #303b43;--theme-green-soft: #303c2e;--theme-orange-soft: #443929;--theme-red-soft: #44312b;--theme-purple-soft: #3e3443;--theme-line: #595144;--theme-glass: rgba(44, 41, 35, .94);--theme-overlay-soft: rgba(211, 196, 169, .08);--theme-action: #406796;--display-accent: #b0c8e5;--display-action: #406796;--display-focus: #b0c8e5;--editor-keyword: #d1bfdc;--editor-string: #bad6a7;--editor-number: #e7c894;--editor-comment: #c0b5a5}html,body,.app-shell{background:var(--display-page)}.sidebar{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.sidebar>*{flex-shrink:0}input,textarea,select{color:inherit;caret-color:var(--display-accent)}textarea{background-color:var(--theme-surface, #fff)}:root:is([data-theme=dark],[data-eye-comfort=true]){accent-color:var(--display-action);scrollbar-color:var(--theme-line) var(--display-page)}:root:is([data-theme=dark],[data-eye-comfort=true]) :is(input,textarea)::placeholder{color:var(--theme-muted);opacity:1}:root:is([data-theme=dark],[data-eye-comfort=true]) :is(button,a,input,textarea,select,summary):focus-visible{outline:2px solid var(--display-focus);outline-offset:3px}.display-trigger,.display-close{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:var(--surface);cursor:pointer;transition:background-color .15s ease,color .15s ease}.display-trigger{padding:8px 14px;font-size:13px;font-weight:550}.display-trigger.is-compact,.display-close{width:44px;height:44px;flex:0 0 44px;padding:0}.display-trigger:hover,.display-close:hover{color:var(--display-accent);background:var(--blue-soft)}.display-trigger:active,.display-close:active{background:var(--theme-subtle, #e8eff9)}.display-trigger:focus-visible,.display-close:focus-visible,.display-switch:focus-visible{outline:2px solid var(--display-focus);outline-offset:3px}.sidebar-footer>.display-trigger{justify-content:flex-start;min-height:44px;background:transparent;border-color:transparent;padding-inline:10px}.sidebar-footer>.display-trigger:hover{background:var(--blue-soft)}.display-dialog{width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:22px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:24px;color:var(--ink);background:var(--surface);box-shadow:var(--shadow-md);text-align:left}.display-dialog::backdrop{background:#08112080}.display-dialog[open]{animation:display-settings-enter .16s ease-out}.display-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.display-dialog h2{margin:0;font-size:20px;font-weight:700}.display-close{border:0;background:transparent}.display-theme-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;border:0;min-width:0}.display-theme-choice{position:relative;display:grid;gap:13px;padding:10px 10px 12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);cursor:pointer}.display-theme-choice:hover{border-color:var(--display-accent)}.display-theme-choice.is-selected{border-color:var(--display-accent);box-shadow:0 0 0 1px var(--display-accent)}.display-theme-choice:has(input:focus-visible){outline:2px solid var(--display-focus);outline-offset:4px}.display-theme-choice input{position:absolute;width:1px;height:1px;opacity:0}.display-preview{display:flex;gap:7px;height:78px;padding:9px;border-radius:9px;background:#eef2f7;border:1px solid #d8e0eb}.display-preview>i{width:20%;border-radius:4px;background:#fff}.display-preview>span{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:5px}.display-preview b{display:block;border-radius:4px;background:#fff}.display-preview b:first-child{grid-column:1 / -1;background:#b2d3ff}.display-preview--dark{background:#121b29;border-color:#40516a}.display-preview--dark>i,.display-preview--dark b{background:#2c3a4f}.display-preview--dark b:first-child{background:#406598}.display-choice-label{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:600}.display-choice-check{margin-left:auto;color:var(--display-accent);visibility:hidden}.is-selected .display-choice-check{visibility:visible}.display-comfort-row{display:flex;align-items:center;gap:10px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.display-comfort-row>svg{flex:0 0 auto;color:var(--theme-green, #4b7759)}.display-comfort-row>div{min-width:0;flex:1}.display-comfort-row strong{display:block;font-size:15px;font-weight:600}.display-comfort-row div>span{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.5}.display-switch{position:relative;flex:0 0 48px;width:48px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;cursor:pointer}.display-switch:before{content:"";position:absolute;top:9px;right:0;bottom:9px;left:0;border-radius:99px;background:var(--theme-line, #8190a4);transition:background-color .15s ease}.display-switch>span{position:absolute;top:12px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .15s ease}.display-switch[aria-checked=true]:before{background:var(--display-action)}.display-switch[aria-checked=true]>span{transform:translate(22px)}.display-save-error{margin:16px 0 0;color:var(--theme-red, #a3483d);font-size:13px;line-height:1.5}.display-trigger{font-size:.8125rem}.display-dialog h2{font-size:1.25rem}.display-choice-label{font-size:.875rem;flex-wrap:wrap}.display-comfort-row strong{font-size:.9375rem}.display-comfort-row div>span{font-size:.8125rem}.display-save-error{font-size:.8125rem}.display-settings-section .display-options{max-width:430px;margin-top:20px}.auth-display-actions{display:flex;align-items:center;gap:10px}.auth-display-actions .display-trigger{border-radius:50%}:root[data-theme=dark] .dashboard-hero:after{background:linear-gradient(90deg,#121b29fa,#121b29e0 28%,#121b2924 72%)}:root[data-eye-comfort=true]:not([data-theme=dark]) .dashboard-hero:after{background:linear-gradient(90deg,#f4efdffa,#f4efdfd9 28%,#f4efdf00 72%)}:root[data-theme=dark][data-eye-comfort=true] .dashboard-hero:after{background:linear-gradient(90deg,#211f1bfa,#211f1be0 28%,#211f1b24 72%)}:root[data-theme=dark] .auth-backdrop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#0c1420b3}.brand img,.auth-brand{background:transparent;padding:0;border-radius:0;mix-blend-mode:normal}:root[data-theme=dark] .auth-story>p{color:var(--theme-muted)}:root[data-theme=dark] .auth-card{border-color:var(--theme-line);background:var(--theme-glass)}:root[data-theme=dark] :is(.ai-message-content pre,.code-block,.python-output){color:var(--theme-text)}.wb-code-host .cm-editor{color:var(--ink);background:var(--theme-surface, #fff)}.wb-code-host .cm-cursor{border-left-color:var(--ink)}.wb-code-host .cm-tooltip{color:var(--ink);background:var(--theme-surface, #fff);border-color:var(--line)}.wb-code-host .cm-tooltip-autocomplete>ul>li[aria-selected]{background:var(--blue-soft);color:var(--ink)}:root:is([data-theme=dark],[data-eye-comfort=true]) .ai-mode-guide-icon{color:var(--theme-surface)}:root:is([data-theme=dark],[data-eye-comfort=true]) :is(.primary-button:hover,.welcome-guide-next:hover){background:var(--display-action)}@keyframes display-settings-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-height:800px)and (min-width:881px){.sidebar{gap:16px}.sidebar .nav-list{gap:6px}.sidebar .nav-item{min-height:44px}.sidebar-feature-card{display:none}.sidebar-footer{gap:6px}}@media(max-width:760px){.dashboard-topbar{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding-bottom:12px}.dashboard-topbar-actions{justify-self:end;margin-left:auto;gap:6px}.dashboard-search-wrap{width:100%}.display-dialog{padding:18px}.display-comfort-row div>span{font-size:.8125rem}}@media(prefers-reduced-motion:reduce){.display-dialog[open]{animation:none}.display-trigger,.display-close,.display-switch:before,.display-switch>span{transition:none}}@media(prefers-reduced-transparency:reduce){:root:is([data-theme=dark],[data-eye-comfort=true]) .auth-card{background:var(--theme-surface)}}
