:root{--bg:#f5f6f8;--text:#1d2433;--muted:#5f6b7d;--line:#dfe3e9;--accent:#3759d7;--accent-ink:#3759d7;--accent-dark:#2946b8;--danger:#a73030;--shadow:0 12px 35px rgba(28,39,60,.08);--skeleton-a:#e9edf3;--skeleton-b:#f5f7fa;--progress-fill:#2f9e5b;--progress-track:#d9dee7;--streak-bg:#fff6df;--starter-bg:#f5f7ff;--starter-line:#ccd7ff}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}.mixed-math-editor,input,select,textarea{font-weight:400}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--accent-ink)}.center-page{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.auth-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px;position:relative}.auth-card{width:min(440px,100%);background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:36px;box-shadow:var(--shadow)}.brand{font-weight:800;font-size:20px;margin-bottom:28px}.alpha-pill,.brand span{font-weight:600;font-size:12px;color:var(--accent-ink);background:var(--bg-eef1ff);padding:4px 8px;border-radius:999px;margin-left:8px}h1{margin:0 0 8px;font-size:30px;letter-spacing:-.02em}h2{margin:0}.muted{color:var(--muted)}.fineprint{margin-top:26px;line-height:1.5}.fineprint,.subtle-link{color:var(--muted);font-size:12px}.subtle-link{position:absolute;bottom:18px;text-decoration:none}.stack{display:grid;grid-gap:16px;gap:16px;margin-top:28px}.field-group,label{display:grid;grid-gap:7px;gap:7px;font-size:13px;font-weight:650}input,textarea{width:100%;border:1px solid var(--ln-cfd5df);background:var(--surface);border-radius:10px;padding:11px 12px;color:var(--text);outline:none}input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(55,89,215,.1)}textarea{resize:vertical;line-height:1.45}.add-card,.ghost,.icon-button,.primary,.secondary{border-radius:10px;border:1px solid transparent;padding:10px 14px}.primary{background:var(--accent);color:white;font-weight:700}.primary:hover{background:var(--accent-dark)}.secondary{background:var(--surface);border-color:var(--line);color:var(--text)}.ghost{background:transparent;color:var(--muted);padding:7px 9px}.ghost:hover{background:var(--bg-eef0f4);color:var(--text)}.switch{margin:20px 0 0;font-size:14px}.error-box{background:var(--bg-fff0f0);color:var(--danger);border:1px solid var(--ln-f0caca);border-radius:10px;padding:11px 13px;font-size:14px}.app-shell{min-height:100vh}.topbar{height:64px;background:color-mix(in srgb,var(--surface) 96%,transparent);border-bottom:1px solid var(--line);justify-content:space-between;padding:0 28px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.actions,.topbar,.user-area{display:flex;align-items:center}.actions,.user-area{gap:12px;color:var(--muted);font-size:13px}.content{margin:0 auto;padding:44px 24px 80px}.wide{max-width:1100px}.editor-width{max-width:900px}.page-heading{display:flex;justify-content:space-between;margin-bottom:28px}.page-heading p{margin:6px 0 0}.create-row{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;margin-bottom:28px}.deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:16px;gap:16px}.deck-card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;min-height:170px;box-shadow:0 3px 15px rgba(35,44,63,.04)}.deck-card:hover{border-color:var(--ln-b9c3dd);transform:translateY(-1px)}.deck-card h2{margin:16px 0 7px;font-size:18px}.deck-card p,.deck-card span{color:var(--muted);font-size:13px}.deck-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--bg-eef1ff);color:var(--accent-ink);font-weight:800}.empty{background:var(--surface);border:1px dashed var(--ln-cdd3dd);border-radius:16px;padding:48px 24px;text-align:center;color:var(--muted)}.empty h2{color:var(--text);margin-bottom:8px}.compact{padding:22px;margin-top:12px}.title-input{border:0;background:transparent;padding:0;font-size:32px;font-weight:800;letter-spacing:-.025em;border-radius:0}.title-input:focus{box-shadow:none;border:0}.cards-list{display:grid;grid-gap:14px;gap:14px;margin-top:28px}.edit-card{display:grid;grid-template-columns:32px 1fr 34px;grid-gap:14px;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px}.card-number{width:28px;height:28px;display:grid;place-items:center;background:var(--bg-f0f2f6);color:var(--muted);border-radius:8px;font-size:12px;font-weight:700}.card-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.icon-button{padding:4px;height:30px;background:transparent;color:#8d96a5;font-size:22px}.icon-button:hover{background:var(--bg-fff0f0);color:var(--danger)}.add-card{width:100%;margin-top:14px;border:1px dashed var(--ln-bcc5d4);background:transparent;color:var(--accent-ink);font-weight:700}@media (max-width:700px){.topbar{padding:0 14px}.user-area span{display:none}.content{padding:28px 14px 60px}.card-fields{grid-template-columns:1fr}.edit-card{grid-template-columns:28px 1fr 30px}.create-row{grid-template-columns:1fr}.auth-card{padding:26px 22px}}.learn-width{max-width:820px}.complete-card,.learn-setup{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:36px;box-shadow:var(--shadow)}.learn-setup h1{margin-top:16px}.mode-switch{display:flex;gap:10px;margin:26px 0 18px}.check-row{display:flex;align-items:center;grid-template-columns:auto 1fr;gap:10px;font-weight:600}.check-row input{width:auto}.info-panel{margin:22px 0;background:var(--bg-f2f5fb);border-radius:12px;padding:15px 16px;color:var(--tx-515d71);line-height:1.5}.big-action{width:100%;padding:13px 18px;margin-top:6px}.learn-shell{min-height:100vh;background:linear-gradient(180deg,var(--bg-f8f9fc) 0,var(--bg-f3f5f8) 100%)}.learn-topbar{min-height:68px;background:var(--surface);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:16px;gap:16px;padding:10px 24px}.learn-title{display:grid;text-align:center;grid-gap:3px;gap:3px}.learn-title span{font-size:12px;color:var(--muted)}.learn-topbar>.difficult{justify-self:end}.difficult{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:9px 12px;color:var(--tx-657085);font-weight:650}.difficult.active{background:var(--bg-fff7dc);border-color:var(--ln-efd782);color:var(--tx-825f00)}.progress-track{height:7px;background:var(--bg-e5e8ef)}.progress-track>div{height:100%;background:var(--accent);transition:width .25s ease}.learn-stage{width:min(780px,calc(100% - 28px));margin:0 auto;padding:34px 0 70px}.learn-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin:0 4px 12px}.study-card{min-height:330px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:0 8px 28px rgba(35,44,63,.06)}.answer-box>span,.hint-box>span,.study-label,.your-answer>span{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:#8992a2;font-weight:800;margin-bottom:9px}.study-question{font-size:28px;line-height:1.32;font-weight:750;white-space:pre-wrap}.answer-box,.hint-box,.your-answer{margin-top:26px;border-radius:12px;padding:16px 18px}.hint-box{background:var(--bg-fff9dd);border:1px solid var(--ln-f0dfa0)}.hint-box pre{margin:0;white-space:pre-wrap;font:600 16px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.answer-box{background:var(--bg-f0f7f2);border:1px solid var(--ln-cfe4d3);line-height:1.55;white-space:pre-wrap}.your-answer{background:var(--bg);border:1px solid var(--line);line-height:1.5}.learn-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin-top:16px}.learn-actions button{min-height:48px;border-radius:11px;font-weight:750;border:1px solid transparent}.wrong-button{background:var(--surface);color:var(--tx-a53b3b);border-color:var(--ln-e7bebe)!important}.wrong-button:hover{background:var(--bg-fff3f3)}.right-button{background:var(--bg-eaf7ed);color:var(--tx-246b35);border-color:var(--ln-bcdcc4)!important}.right-button:hover{background:var(--bg-dff2e4)}.hint-right-button{background:var(--bg-fff7e6);color:var(--tx-8a6100);border-color:var(--ln-edd497)!important}.written-area{margin-top:16px}.written-area textarea{min-height:100px;font-size:16px}.learn-footnote{color:#929baa;font-size:11px;margin-top:16px}.complete-card,.learn-footnote{text-align:center}.complete-icon{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 16px;border-radius:50%;background:var(--bg-e8f6eb);color:var(--tx-27703a);font-size:28px;font-weight:900}.difficulty-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin:28px 0}.difficulty-grid>div{background:var(--bg-f7f8fa);border:1px solid var(--line);border-radius:12px;padding:18px 8px;display:grid;grid-gap:4px;gap:4px}.difficulty-grid strong{font-size:26px}.difficulty-grid span{font-size:11px;color:var(--muted)}.difficult-list{text-align:left;border-top:1px solid var(--line);padding-top:24px;margin-top:12px}.difficult-list h2{font-size:17px;margin-bottom:10px}.difficult-row{padding:12px 0;border-bottom:1px solid var(--ln-edf0f4)}.difficult-row b,.difficult-row small{display:block}.difficult-row small{color:var(--muted);margin-top:4px}.complete-actions{display:flex;justify-content:center;gap:10px;margin-top:28px}@media (max-width:700px){.learn-topbar{grid-template-columns:auto 1fr}.learn-title{display:none}.learn-topbar>.difficult{font-size:12px}.study-card{padding:24px 20px;min-height:300px}.study-question{font-size:23px}.difficulty-grid{gap:6px}.complete-actions{flex-direction:column}.learn-actions{grid-template-columns:1fr}.complete-card,.learn-setup{padding:26px 20px}}.material-list{display:grid;grid-gap:10px;gap:10px;margin-top:20px}.material-row{display:grid;grid-template-columns:42px 1fr auto;grid-gap:14px;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:15px 16px}.material-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--bg-eef1ff);color:var(--accent-ink);font-weight:800}.material-info{min-width:0;display:grid;grid-gap:4px;gap:4px}.material-info b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-info span{color:var(--muted);font-size:12px}.danger-text{color:var(--danger)}.busy-line{gap:10px;margin-top:18px;color:var(--muted);font-size:13px}.busy-line,.learn-top-actions{display:flex;align-items:center}.learn-top-actions{justify-self:end;gap:9px}.ai-tutor-button{border:0;border-radius:10px;padding:10px 14px;background:var(--accent);color:#fff;font-weight:750}.ai-tutor-button:hover{background:var(--accent-dark)}.tutor-panel{position:fixed;top:0;right:0;width:min(440px,100vw);height:100vh;z-index:40;background:var(--surface);border-left:1px solid var(--line);box-shadow:-14px 0 36px rgba(24,33,52,.13);display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto auto auto}.tutor-head{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 14px;border-bottom:1px solid var(--line)}.tutor-head>div{display:grid;grid-gap:3px;gap:3px}.tutor-head b{font-size:19px}.tutor-head span{color:var(--muted);font-size:12px}.tutor-material-toggle{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:12px 20px;font-weight:600;font-size:12px;color:var(--tx-566174);border-bottom:1px solid var(--ln-edf0f4)}.tutor-material-toggle input{width:auto}.tutor-quick-actions{display:flex;gap:7px;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid var(--ln-edf0f4)}.tutor-quick-actions button{padding:7px 10px;font-size:12px}.tutor-chat{overflow:auto;padding:18px 20px;display:flex;flex-direction:column;gap:12px;background:var(--bg-fafbfc)}.tutor-empty{color:var(--muted);font-size:13px;line-height:1.55;padding:18px 8px;text-align:center}.chat-message{max-width:92%;border-radius:13px;padding:11px 13px;line-height:1.5;white-space:pre-wrap;font-size:14px}.chat-message b{display:block;font-size:11px;margin-bottom:5px}.chat-message.user{align-self:flex-end;background:var(--bg-e9edff)}.chat-message.assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--line)}.chat-message small{display:block;color:var(--muted);border-top:1px solid var(--ln-edf0f4);margin-top:9px;padding-top:7px;font-size:10px}.tutor-error{margin:0 20px 10px}.tutor-input{padding:14px 20px 8px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;grid-gap:9px;gap:9px;align-items:end}.tutor-input textarea{min-height:54px;max-height:130px}.tutor-input button{height:44px}.tutor-usage{padding:0 20px 14px;text-align:center;color:var(--muted);font-size:10px}.targeted-actions{margin-top:22px;padding:16px;background:var(--bg-f4f6fb);border:1px solid var(--ln-dbe1ee);border-radius:13px;display:flex;justify-content:space-between;align-items:center;gap:12px}.compact-check{margin:0;font-size:12px;color:var(--tx-586376)}.modal-backdrop{position:fixed;inset:0;z-index:60;background:rgba(17,24,39,.42);display:grid;place-items:center;padding:24px}.study-material-modal{width:min(860px,100%);max-height:min(84vh,900px);background:var(--surface);border-radius:18px;box-shadow:0 25px 70px rgba(17,24,39,.25);display:flex;flex-direction:column;overflow:hidden}.study-material-head{display:flex;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid var(--line)}.study-material-head h2{margin-top:10px}.study-material-loading{min-height:300px;display:flex;justify-content:center;align-items:center;gap:10px;color:var(--muted)}.source-strip{margin:18px 24px 0;background:var(--bg-eef4ff);color:var(--tx-43516a);border-radius:10px;padding:10px 12px;font-size:12px}.generated-material{overflow:auto;padding:22px 28px;white-space:pre-wrap;line-height:1.7;font-size:15px;flex:1 1}.study-material-footer{border-top:1px solid var(--line);padding:14px 20px;display:flex;justify-content:space-between;align-items:center;gap:12px}@media (max-width:700px){.learn-top-actions{gap:5px}.learn-top-actions .difficult{display:none}.ai-tutor-button{font-size:12px;padding:9px 10px}.tutor-panel{width:100vw}.targeted-actions{align-items:stretch;flex-direction:column}.study-material-modal{max-height:92vh}.study-material-footer{align-items:stretch;flex-direction:column}.study-material-footer .actions{display:grid}.material-row{grid-template-columns:36px 1fr auto}}.success-box{background:var(--bg-eef9f1);color:var(--tx-28673a);border:1px solid var(--ln-c8e7d0);border-radius:10px;padding:11px 13px;font-size:14px;margin:10px 0}.danger-button{border-radius:10px;padding:10px 14px;border:1px solid var(--ln-e6bcbc);background:var(--surface);color:var(--danger);font-weight:650}.danger-button:hover{background:var(--bg-fff2f2)}.deck-actions-wrap{flex-wrap:wrap;justify-content:flex-end}.deck-study-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 8px}.file-button{display:inline-flex;align-items:center;justify-content:center;width:max-content;cursor:pointer;font-size:13px;font-weight:650}.image-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px;color:var(--muted);font-size:11px}.image-answer-editor{display:grid;grid-gap:10px;gap:10px}.image-answer-editor img{max-height:260px;border:1px solid var(--line);background:var(--bg-fafafa)}.image-answer-editor img,.study-answer-image{max-width:100%;object-fit:contain;border-radius:10px}.study-answer-image{display:block;max-height:430px;margin:0 auto}.mode-switch-wrap{flex-wrap:wrap}.merge-options{display:grid;grid-gap:10px;gap:10px;padding:18px 0}.merge-decks{display:grid;grid-gap:9px;gap:9px;margin:10px 0 22px;max-height:420px;overflow:auto}.merge-deck{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:12px;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:13px 14px}.merge-deck input{width:auto}.merge-deck span{display:grid;grid-gap:3px;gap:3px}.merge-deck small{color:var(--muted)}.session-list{display:grid;grid-gap:10px;gap:10px}.session-row{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:16px}.session-row>div:first-child{display:grid;grid-gap:5px;gap:5px}.session-row span{color:var(--muted);font-size:12px}.help-content{line-height:1.65}.help-content h2{margin-top:30px;margin-bottom:6px;font-size:19px}.help-content p{color:var(--tx-4f5a6d)}.scratchpad{margin-top:14px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.scratchpad label{color:var(--muted);font-size:11px}.scratchpad textarea{margin-top:5px;min-height:58px}.shortcut-strip{text-align:center;color:#8a94a5;font-size:11px;margin-top:14px}.hint-lines{display:grid;grid-gap:4px;gap:4px}.hint-line{display:grid;grid-template-columns:24px 1fr;grid-gap:7px;gap:7px;align-items:start;text-align:left;border:0;background:transparent;border-radius:7px;padding:5px 6px;color:var(--tx-5b512d)}.hint-line:hover{background:color-mix(in srgb,var(--surface) 55%,transparent)}.hint-line.starred{background:var(--bg-ffeaa5)}.hint-line b{color:var(--tx-b68b00)}.hint-line code{white-space:pre-wrap;font:600 15px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.edit-card-modal{width:min(720px,100%);max-height:90vh;overflow:auto;background:var(--surface);border-radius:18px;box-shadow:0 25px 70px rgba(17,24,39,.25)}.modal-form{display:grid;grid-gap:16px;gap:16px;padding:22px 24px}@media (max-width:700px){.deck-actions-wrap{gap:5px}.deck-actions-wrap button{font-size:11px;padding:8px}.deck-study-actions{display:grid;grid-template-columns:1fr 1fr}.session-row{align-items:flex-start;flex-direction:column}.session-row .actions{width:100%;justify-content:flex-end}.learn-top-actions .ghost,.shortcut-strip{display:none}}.feedback-launcher{position:fixed;right:20px;bottom:20px;z-index:35;background:#1f2a44;color:#fff;text-decoration:none;border-radius:999px;padding:11px 15px;font-size:13px;font-weight:750;box-shadow:0 8px 28px rgba(24,33,52,.2)}.feedback-launcher:hover{background:#111a2d}.onboarding-card{display:grid;grid-template-columns:48px 1fr;grid-gap:16px;gap:16px;align-items:start;border:1px solid var(--ln-ccd7ff);background:var(--bg-f5f7ff);border-radius:16px;padding:20px;margin-bottom:24px}.onboarding-card h2{font-size:17px;margin:0 0 6px}.onboarding-card p{margin:0;color:var(--muted);line-height:1.55}.onboarding-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:900}.feedback-layout{max-width:1180px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.7fr);grid-gap:24px;gap:24px}.feedback-ai-box,.feedback-chat-card,.feedback-group,.feedback-history,.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 3px 15px rgba(35,44,63,.04)}.feedback-chat-card{padding:24px}.feedback-chat{min-height:280px;max-height:480px;overflow:auto;padding:14px;background:var(--bg-fafbfc);border:1px solid var(--ln-edf0f4);border-radius:12px;display:flex;flex-direction:column;gap:10px}.feedback-input{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;margin-top:14px;align-items:end}.feedback-input textarea{min-height:72px}.feedback-input button{min-height:44px}.feedback-history{padding:20px;align-self:start}.feedback-history h2{font-size:17px;margin-bottom:14px}.feedback-history-item{padding:12px 0;border-bottom:1px solid var(--ln-edf0f4);display:grid;grid-gap:6px;gap:6px}.feedback-history-item>div{display:flex;gap:7px;align-items:center}.feedback-history-item small{color:var(--muted)}.feedback-badge,.feedback-status,.severity{display:inline-flex;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.feedback-badge.bug{background:var(--bg-fff0f0);color:var(--tx-9a3434)}.feedback-badge.feature{background:var(--bg-eef1ff);color:var(--tx-3759d7)}.feedback-badge.other{background:var(--bg-f0f2f5);color:var(--tx-657085)}.feedback-status{background:var(--bg-f1f3f6);color:var(--tx-667084)}.settings-grid{display:grid;grid-gap:16px;gap:16px}.settings-card{padding:22px}.settings-card h2{font-size:18px;margin-bottom:14px}.compact-stack{margin-top:12px;max-width:520px}.danger-zone{border-color:var(--ln-edcccc)}.danger-zone .danger-button{margin-top:14px}.usage-number{font-size:26px;font-weight:850}.usage-bar{height:8px;background:var(--bg-e7eaf0);border-radius:999px;overflow:hidden;margin:10px 0}.usage-bar>div{height:100%;background:var(--accent)}.feedback-ai-box{padding:20px;margin-bottom:22px}.feedback-ai-box h2{font-size:18px}.feedback-ai-answer{margin-top:14px;padding:16px;border-radius:12px;background:var(--bg-f5f7ff);white-space:pre-wrap;line-height:1.6}.feedback-groups{display:grid;grid-gap:14px;gap:14px}.feedback-group{padding:20px}.feedback-group-head h2{margin:10px 0 5px;font-size:18px}.feedback-group-head p{margin:0;color:var(--muted);font-size:12px}.severity{margin-left:7px;background:var(--bg-f1f3f6);color:var(--tx-667084)}.severity.critical,.severity.high{background:var(--bg-fff0f0);color:var(--tx-a23434)}.severity.medium{background:var(--bg-fff7df);color:var(--tx-8b6500)}.severity.low{background:var(--bg-eef7f0);color:var(--tx-377047)}.feedback-group details{margin-top:14px}.feedback-group summary{cursor:pointer;color:var(--accent-ink);font-weight:650;font-size:13px}.raw-feedback-list{display:grid;grid-gap:8px;gap:8px;margin-top:10px}.raw-feedback{border:1px solid var(--ln-edf0f4);border-radius:10px;padding:12px}.raw-feedback p{margin:0 0 10px;white-space:pre-wrap}.raw-meta{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:11px}.raw-meta select{margin-left:auto;border:1px solid var(--line);border-radius:7px;padding:5px}@media (max-width:800px){.feedback-input,.feedback-layout{grid-template-columns:1fr}.feedback-launcher{right:12px;bottom:12px}.user-area{gap:4px}.user-area .ghost{font-size:11px;padding:6px}.feedback-history{order:-1}.raw-meta{flex-wrap:wrap}.raw-meta select{margin-left:0}}.tutor-panel-hidden{display:none!important}.editor-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.editor-meta p{margin:0}.autosave-state{font-size:11px;color:var(--muted);white-space:nowrap}.autosave-state.cloud{color:var(--tx-2f7443)}.autosave-state.saving{color:var(--tx-6b5e22)}.autosave-state.draft{color:var(--tx-5d6680)}.concept-map-backdrop{position:fixed;inset:0;z-index:80;background:rgba(12,18,30,.58);padding:22px;display:grid;place-items:center}.concept-map-modal{width:min(1540px,98vw);height:min(930px,94vh);background:var(--bg-f8fafc);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 90px rgba(10,18,35,.35)}.concept-map-head{background:#21364a;color:#fff;padding:18px 22px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.concept-map-head h2{margin:7px 0 2px;font-size:22px}.concept-map-head p{margin:0;color:#dbe5ef;font-size:12px}.concept-map-head .alpha-pill{background:var(--surface);color:var(--tx-21364a)}.concept-map-head .icon-button{color:#fff;border-color:var(--ln-rgba-255-255-255-25)}.concept-map-head-actions{display:flex;align-items:center;gap:12px}.map-status{background:var(--bg-eaf7ee);color:var(--tx-26683b);border-radius:999px;padding:6px 9px;font-size:10px;font-weight:750}.map-status.stale{background:var(--bg-fff1d8);color:var(--tx-805c00)}.concept-map-toolbar{min-height:58px;background:var(--surface);border-bottom:1px solid var(--line);padding:9px 14px;display:flex;gap:10px;align-items:center}.map-search-wrap{position:relative;min-width:260px;flex:1 1}.map-search-wrap input{height:38px}.map-search-results{position:absolute;z-index:20;left:0;right:0;top:43px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 35px rgba(23,33,49,.14);max-height:320px;overflow:auto}.map-search-results button{display:block;width:100%;text-align:left;border:0;background:var(--surface);padding:9px 11px;font-size:12px}.map-search-results button:hover{background:var(--bg-f3f6fa)}.map-zoom{display:flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:10px}.map-zoom button{padding:7px 9px}.map-zoom span{min-width:42px;text-align:center;font-size:10px;color:var(--muted)}.concept-map-empty{flex:1 1;display:grid;place-content:center;justify-items:center;text-align:center;grid-gap:10px;gap:10px;padding:36px}.concept-map-empty h3{margin:0}.concept-map-empty p{max-width:580px;color:var(--muted);line-height:1.55}.map-empty-icon{font-size:42px}.concept-map-body{min-height:0;flex:1 1;display:grid;grid-template-columns:minmax(0,1fr) 300px}.concept-map-viewport{overflow:auto;background:var(--bg-f3f6f9);position:relative}.concept-map-scale{position:relative}.concept-map-canvas{position:absolute;left:0;top:0;transform-origin:top left}.concept-map-edges{position:absolute;inset:0;overflow:visible}.map-edge path{fill:none;stroke:var(--tx-32485e);stroke-width:1.7}.map-edge #map-arrow{fill:var(--tx-32485e)}.map-edge.dimmed{opacity:.12}.map-edge.active{opacity:.92}.map-edge-label{font:600 10px/1.15 system-ui,sans-serif;color:var(--tx-435268);background:var(--bg-rgba-245-247-250-94);border:1px solid var(--ln-dce3eb);border-radius:5px;padding:3px 5px;text-align:center;overflow:hidden;height:26px;display:grid;place-items:center}.concept-node{position:absolute;z-index:3;border:2px solid #58738b;background:var(--bg-edf5fb);color:var(--tx-1f2d3d);border-radius:13px;padding:11px 12px;text-align:left;box-shadow:0 4px 14px rgba(32,50,70,.08);transition:opacity .15s,transform .15s,box-shadow .15s;display:flex;flex-direction:column;gap:4px;justify-content:center}.concept-node:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(32,50,70,.15)}.concept-node small{text-transform:uppercase;font-size:8px;letter-spacing:.06em;opacity:.65}.concept-node b{font-size:12px;line-height:1.25}.concept-node.deck{background:var(--bg-d8ebdc);border-color:#4c8d58}.concept-node.concept{background:var(--bg-ede1fb);border-color:#7c4ab3}.concept-node.card{background:var(--bg-e5f0ff);border-color:#4a78bd}.concept-node.dimmed{opacity:.18}.concept-node.focus{background:var(--bg-fff0b8);border-color:#ca8c00;box-shadow:0 0 0 4px rgba(242,180,0,.17),0 8px 22px rgba(45,52,68,.15)}.concept-node.selected{outline:3px solid rgba(42,79,128,.18)}.focus-tag{font-size:9px;font-weight:800;color:var(--tx-805900);margin-top:2px}.concept-map-side{border-left:1px solid var(--line);background:var(--surface);padding:20px;overflow:auto}.concept-map-side h3{font-size:17px;margin:0 0 15px;line-height:1.3}.side-label{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800;margin-bottom:5px}.side-answer{white-space:pre-wrap;line-height:1.55;font-size:13px}.map-sources{margin-top:22px;background:var(--bg-eef4ff);border-radius:9px;padding:10px;font-size:10px;color:var(--tx-4a5870);display:grid;grid-gap:3px;gap:3px}.admin-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:18px}.admin-metrics>div,.admin-user-detail>div{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:15px;display:grid;grid-gap:4px;gap:4px}.admin-metrics b,.admin-user-detail b{font-size:21px}.admin-metrics span,.admin-user-detail span{font-size:10px;color:var(--muted)}.admin-users-table{border:1px solid var(--line);border-radius:14px;overflow:hidden}.admin-user-row,.admin-users-table{display:grid;background:var(--surface)}.admin-user-row{grid-template-columns:2.2fr 1fr .7fr 1fr 1fr;grid-gap:12px;gap:12px;align-items:center;border:0;border-bottom:1px solid var(--ln-edf0f4);padding:12px 15px;text-align:left}.admin-user-row:not(.header):hover{background:var(--bg-f8faff)}.admin-user-row.header{font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase}.admin-user-row span{display:grid;grid-gap:3px;gap:3px;font-size:12px}.admin-user-row small{color:var(--muted);font-size:9px}.admin-user-modal{width:min(820px,96vw);max-height:88vh;overflow:auto;background:var(--surface);border-radius:18px}.admin-user-detail{padding:20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.admin-feature-usage{padding:0 20px 24px}.admin-feature-usage h3{font-size:15px}.admin-feature-usage>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--ln-edf0f4);padding:9px 0;font-size:12px}.admin-feature-usage span{color:var(--muted)}@media(max-width:900px){.concept-map-backdrop{padding:0}.concept-map-modal{width:100vw;height:100vh;border-radius:0}.concept-map-body{grid-template-columns:1fr}.concept-map-side{display:none}.concept-map-toolbar{flex-wrap:wrap}.map-search-wrap{min-width:100%}.admin-metrics{grid-template-columns:1fr 1fr}.admin-user-row{grid-template-columns:1.8fr 1fr 1fr}.admin-user-row span:nth-child(4),.admin-user-row span:nth-child(5){display:none}.admin-user-detail{grid-template-columns:1fr 1fr}.editor-meta{align-items:flex-start;flex-direction:column}}.draft-conflict-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.draft-conflict-actions .ghost,.draft-conflict-actions .secondary{font-size:12px;padding:7px 10px}.study-text{line-height:1.58;min-width:0;white-space:normal}.study-text.compact{line-height:1.38}.study-text .study-text-line{white-space:pre-wrap;overflow-wrap:anywhere}.study-text h2,.study-text h3,.study-text h4,.study-text h5{margin:14px 0 7px;line-height:1.25}.study-text ul{margin:7px 0;padding:0 0 0 1.3em}.study-text li{margin:4px 0}.study-text .study-list-item{display:flex;gap:.4em;margin:4px 0 4px calc(var(--list-depth, 0) * 1.4em + .35em)}.study-text .study-list-marker{flex:none;min-width:.8em}.study-text .study-list-content{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.study-spacer{height:8px}.study-math.inline{vertical-align:middle;margin:0 2px}.study-math-block{padding:6px 0}.study-math.display{display:inline-block}.builder-inline-preview,.builder-rendered,.latex-preview{border:1px solid var(--ln-e5e9ef);background:var(--bg-f8fafc);border-radius:9px;padding:9px 11px;margin-top:7px}.builder-rendered>span,.latex-preview>span{display:block;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:5px}.builder-inline-preview{margin:0}.context-help-launcher{position:fixed;z-index:71;right:18px;bottom:76px;width:42px;height:42px;border-radius:50%;border:1px solid var(--ln-cbd3df);background:var(--surface);color:var(--tx-34465c);box-shadow:0 7px 22px rgba(20,30,45,.15);font-size:19px;font-weight:800}.context-help-launcher:hover{background:var(--bg-f3f6fb)}.context-help-backdrop{z-index:95}.context-help-modal{width:min(560px,94vw);background:var(--surface);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.context-help-modal>p{margin:20px 24px 10px;color:var(--muted);line-height:1.55}.context-help-modal>ul{margin:0 24px 22px;padding-left:20px;line-height:1.55}.context-help-modal li{margin:8px 0}.nudge-anchor{position:relative;display:inline-flex}.feature-nudge{position:absolute;z-index:55;width:280px;background:var(--bg-fff8d9);border:1px solid var(--ln-e6c45a);color:var(--tx-493d14);box-shadow:0 10px 28px rgba(42,35,10,.18);border-radius:12px;padding:12px 28px 12px 13px;display:grid;grid-gap:4px;gap:4px;font-size:11px;line-height:1.35}.feature-nudge.below{top:calc(100% + 12px);left:50%;transform:translateX(-50%)}.feature-nudge.below:before{content:"";position:absolute;top:-7px;left:50%;margin-left:-7px;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid var(--ln-e6c45a)}.feature-nudge.below:after{content:"";position:absolute;top:-6px;left:50%;margin-left:-6px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid var(--ln-fff8d9)}.feature-nudge b{font-size:12px}.nudge-close{position:absolute;right:5px;top:4px;border:0;background:transparent;color:var(--tx-76631f);font-size:16px;padding:2px 5px}.study-nudge{width:260px}.builder-modal{width:min(1180px,96vw);max-height:92vh;background:var(--surface);border-radius:20px;box-shadow:0 28px 80px rgba(10,18,35,.3);overflow:hidden;display:flex;flex-direction:column}.image-builder-grid{min-height:0;overflow:auto;display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);grid-gap:20px;gap:20px;padding:20px}.image-builder-source{display:grid;align-content:start;grid-gap:14px;gap:14px}.image-dropzone{min-height:230px;border:2px dashed var(--ln-cbd3df);border-radius:15px;background:var(--bg-f8fafc);color:var(--tx-405069);display:grid;place-content:center;grid-gap:7px;gap:7px;text-align:center}.image-dropzone b{font-size:18px}.image-dropzone span{color:var(--muted);font-size:12px}.image-builder-preview{display:grid;grid-gap:8px;gap:8px}.image-builder-preview img{max-width:100%;max-height:420px;object-fit:contain;background:var(--bg-f4f5f7);border:1px solid var(--line);border-radius:12px}.image-builder-results{min-width:0;display:grid;grid-gap:12px;gap:12px;align-content:start}.image-builder-results h3{margin:0}.builder-card{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;grid-gap:10px;gap:10px;background:var(--bg-fafbfc)}.builder-card.selected{border-color:var(--ln-9baae8);background:var(--bg-fafbff);box-shadow:0 0 0 2px rgba(55,89,215,.06)}.builder-select{display:flex;grid-template-columns:none;flex-direction:row;align-items:center;gap:7px;color:var(--tx-465269)}.builder-select input{width:auto;margin:0}.builder-page{max-width:1500px}.study-builder-layout{display:grid;grid-template-columns:minmax(320px,.7fr) minmax(560px,1.3fr);grid-gap:18px;gap:18px;align-items:start}.study-builder-chat-panel,.study-builder-output>div{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 18px rgba(27,38,56,.04)}.study-builder-chat-panel{position:-webkit-sticky;position:sticky;top:14px;padding:16px}.builder-chat{min-height:300px;max-height:58vh;overflow:auto;background:var(--bg-f8fafc);border:1px solid var(--ln-edf0f4);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px}.builder-chat-input{display:grid;grid-gap:9px;gap:9px;margin-top:12px}.study-builder-output{display:grid;grid-gap:16px;gap:16px;min-width:0}.builder-cards-panel,.builder-create-set,.builder-material-card{padding:20px}.builder-material-card>.study-text{margin-top:15px}.builder-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.builder-section-head h2{font-size:19px}.builder-section-head p{margin:4px 0 0;font-size:12px}.builder-cards-panel{display:grid;grid-gap:12px;gap:12px}.builder-create-set{display:grid;grid-template-columns:1fr auto;grid-gap:14px;gap:14px;align-items:end}.builder-create-set label{min-width:0}.feedback-input-v2{grid-template-columns:1fr}.feedback-input-actions{display:flex;justify-content:flex-end;gap:8px}.feedback-save-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:8px}.feedback-save-row .fineprint{margin:0;max-width:70%}.feedback-draft{margin-top:12px;padding:12px;border:1px solid var(--ln-e2e7ef);background:var(--bg-f8fafc);border-radius:11px;display:flex;gap:10px;align-items:center}.feedback-draft>div{display:grid;grid-gap:2px;gap:2px;min-width:0}.feedback-draft small{color:var(--muted)}.ready-badge{margin-left:auto;background:var(--bg-eaf7ee);color:var(--tx-2f7443);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800;white-space:nowrap}.feedback-attachments{margin-top:12px;display:grid;grid-gap:8px;gap:8px}.feedback-attachments>b{font-size:12px}.feedback-attachments>div{display:flex;gap:9px;flex-wrap:wrap}.feedback-attachments figure{position:relative;margin:0;width:150px}.feedback-attachments img{width:150px;height:100px;object-fit:cover;border-radius:9px;border:1px solid var(--line);background:var(--bg-f3f4f6)}.feedback-attachments figcaption{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feedback-attachments .icon-button{position:absolute;right:4px;top:4px;background:var(--surface)}.admin-feedback-images{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}.admin-feedback-images a{display:grid;grid-gap:3px;gap:3px;text-decoration:none;font-size:9px;color:var(--muted)}.admin-feedback-images img{width:170px;height:105px;object-fit:cover;border:1px solid var(--line);border-radius:8px;background:var(--bg-f5f6f7)}@media(max-width:1000px){.study-builder-layout{grid-template-columns:1fr}.study-builder-chat-panel{position:static}.builder-create-set,.image-builder-grid{grid-template-columns:1fr}.feature-nudge{left:auto;right:0;transform:none}.feature-nudge.below:after,.feature-nudge.below:before{left:auto;right:24px}.feedback-save-row{align-items:stretch;flex-direction:column}.feedback-save-row .fineprint{max-width:none}.context-help-launcher{right:12px;bottom:66px}}.concept-node-label{font-size:12px;line-height:1.25;font-weight:750}.study-text h2{font-size:1.35em;font-weight:820}.study-text h3{font-size:1.2em;font-weight:800}.study-text h4,.study-text h5{font-size:1.06em;font-weight:780}.study-text ol{margin:7px 0;padding:0 0 0 calc(var(--ol-digits, 1) * .62em + .9em)}.study-inline-code{background:var(--bg-eef1f5);border:1px solid var(--ln-dde3ea);border-radius:5px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.study-math.inline{display:inline-block;max-width:100%;vertical-align:baseline;margin:0 3px;line-height:normal;white-space:nowrap}.study-math.inline .katex{font-size:1.03em;white-space:nowrap}.study-math-block{overflow-x:auto;max-width:100%;padding:10px 4px;text-align:center}.study-math.display{display:block;min-width:max-content;white-space:nowrap}.study-math.display .katex-display{margin:.35em 0;white-space:nowrap}.math-textarea{display:grid;grid-gap:5px;gap:5px;width:100%}.math-textarea textarea{width:100%}.math-textarea-tools{display:flex;align-items:center;gap:10px;min-height:28px}.math-textarea-tools span{color:var(--muted);font-size:10px}.formula-button{display:inline-flex;align-items:center;padding:5px 8px!important;font-size:11px!important;border:1px solid var(--line)!important;border-radius:7px!important;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.formula-button.disabled{opacity:.55;cursor:not-allowed}.format-button{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:5px 7px!important;font-size:12px!important;line-height:1;border:1px solid var(--line)!important;border-radius:7px!important;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.format-button.disabled{opacity:.55;cursor:not-allowed}.formula-backdrop{z-index:130}.formula-editor{width:min(820px,95vw);max-height:92vh;background:var(--surface);border-radius:18px;box-shadow:0 28px 80px rgba(10,20,40,.28);display:flex;flex-direction:column;overflow:hidden}.formula-editor-body{padding:18px 22px;overflow:auto;display:grid;grid-gap:14px;gap:14px}.formula-palette{display:grid;grid-gap:12px;gap:12px}.formula-group{display:grid;grid-gap:6px;gap:6px}.formula-group>b{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.formula-group>div{display:flex;flex-wrap:wrap;gap:5px}.formula-symbol{min-width:43px;min-height:36px;border:1px solid var(--ln-d9e0e9);background:var(--bg-f9fbfd);border-radius:8px;font:600 15px/1.1 Georgia,serif;color:var(--tx-26384d)}.formula-symbol:hover{background:var(--bg-edf4ff);border-color:var(--ln-aac3e4)}.formula-source{display:grid;grid-gap:6px;gap:6px;font-weight:700;font-size:12px}.formula-source textarea{min-height:76px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.formula-preview{min-height:90px;border:1px solid var(--ln-dfe5ed);border-radius:10px;background:var(--bg-fbfcfe);padding:10px 12px;display:grid;align-content:center}.formula-preview>span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.formula-editor-local-preview{overflow:hidden;min-width:0}.formula-preview-math{min-width:0;max-width:100%;overflow:visible;text-align:center;line-height:1.35}.formula-preview-math .katex-display{margin:.35em 0}.context-help-anchor{position:fixed;z-index:71;right:18px;bottom:76px}.context-help-anchor .context-help-launcher{position:static;right:auto;bottom:auto}.help-nudge{position:absolute;right:0;bottom:calc(100% + 12px);left:auto;transform:none;width:260px}.help-nudge:before{content:"";position:absolute;bottom:-7px;right:14px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid var(--ln-e6c45a)}.help-nudge:after{content:"";position:absolute;bottom:-6px;right:15px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid var(--ln-fff8d9)}.public-active{border-color:#58a46d!important;background:var(--bg-edf9f0)!important;color:var(--tx-266a39)!important}.public-library{display:grid;grid-gap:18px;gap:18px}.public-search{display:flex;gap:8px;max-width:760px}.public-search input{flex:1 1}.public-deck-grid{display:grid;grid-gap:10px;gap:10px}.public-deck-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:14px 16px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;grid-gap:14px;gap:14px}.public-deck-card h2{margin:0 0 3px;font-size:16px}.public-deck-card p,.public-deck-card small{margin:0;color:var(--muted);font-size:11px}.public-deck-card p.public-deck-description{margin:0 0 4px;color:var(--text);font-size:13px;line-height:1.4;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.public-preview-description{margin:0;padding:12px 22px 0;line-height:1.5;white-space:pre-line}.public-deck-icon{width:42px;height:42px;border-radius:12px;background:var(--bg-eaf6ed);display:grid;place-items:center;font-size:20px}.public-preview-backdrop{z-index:110}.public-preview-modal{width:min(900px,95vw);max-height:92vh;background:var(--surface);border-radius:18px;box-shadow:0 28px 80px rgba(10,20,40,.28);display:flex;flex-direction:column;overflow:hidden}.public-preview-cards{padding:16px 22px;overflow:auto;display:grid;grid-gap:9px;gap:9px}.public-preview-cards article{border:1px solid var(--ln-e4e8ee);border-radius:10px;padding:10px 12px;background:var(--bg-fbfcfe);display:grid;grid-gap:7px;gap:7px}.public-preview-question{display:flex;align-items:flex-start;gap:7px}.feedback-group-badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.trend{padding:3px 7px;border-radius:999px;font-size:9px;font-weight:800;background:var(--bg-eef1f5);color:var(--tx-59677a)}.trend.rising{background:var(--bg-fff1df);color:var(--tx-8b5900)}.trend.falling{background:var(--bg-eef7ef);color:var(--tx-3a7047)}.feedback-group-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.priority-score{min-width:72px;border:1px solid var(--ln-d9e1eb);border-radius:11px;padding:8px 10px;display:grid;justify-items:center;background:var(--bg-f8fafc)}.priority-score strong{font-size:22px;line-height:1}.priority-score span{font-size:8px;text-transform:uppercase;color:var(--muted);font-weight:800;margin-top:4px}.priority-reasons{margin:10px 0 13px;padding:9px 11px;border-radius:9px;background:var(--bg-f7f9fc);display:flex;flex-wrap:wrap;gap:6px 10px;font-size:10px;color:var(--tx-536176)}.priority-reasons b{width:100%;color:var(--tx-29384c)}@media(max-width:700px){.public-deck-card{grid-template-columns:40px 1fr}.public-deck-card>.actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.public-search{flex-wrap:wrap}.public-search input{min-width:100%}.context-help-anchor{right:12px;bottom:66px}.formula-group>div{max-height:148px;overflow:auto}}.tutor-input .tutor-math-input{min-width:0}.tutor-input .tutor-math-input textarea{min-height:54px;max-height:130px;resize:vertical}.tutor-input .tutor-math-input .math-textarea-tools{margin-top:2px}.tutor-input .tutor-send{align-self:end;margin-bottom:31px}@media (max-width:700px){.tutor-input{grid-template-columns:1fr}.tutor-input .tutor-send{margin-bottom:0;width:100%}}.formula-editor .study-material-head p{max-width:620px}.builder-card .math-textarea-tools,.image-builder-results .math-textarea-tools{margin-top:2px}.learn-topbar .hx-logo,.topbar .hx-logo{margin-right:.45rem}.deck-card-shell{position:relative;z-index:0;padding:0!important;overflow:visible!important;display:block!important;text-align:left}.deck-card-shell.menu-open,.deck-card-shell.menu-open:hover{z-index:100}.deck-card-main{display:block;width:100%;height:100%;padding:34px 38px;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer;border-radius:inherit}.deck-card-main h2{margin:22px 0 10px}.deck-card-main p{margin:0 0 16px}.deck-card-main>span{color:var(--muted,#667085)}.deck-menu-wrap{position:absolute;right:18px;top:16px;z-index:101}.deck-menu-button{width:38px;height:38px;border:0;border-radius:12px;background:transparent;font-size:1.7rem;line-height:1;cursor:pointer;color:var(--tx-667085)}.deck-menu-button:hover{background:var(--bg-f0f3ff);color:var(--tx-294ed8)}.deck-action-menu{position:absolute;right:0;top:42px;width:235px;background:var(--surface);border:1px solid var(--ln-d9dfeb);border-radius:16px;box-shadow:0 16px 42px rgba(32,42,68,.17);padding:8px;z-index:102}.deck-action-menu button{display:block;width:100%;border:0;background:transparent;border-radius:10px;padding:9px 11px;text-align:left;font-weight:650;cursor:pointer;color:var(--tx-202737)}.deck-action-menu button:hover{background:var(--bg-f3f5fa)}.deck-action-menu button.danger-text{color:var(--tx-c93636)}.deck-menu-label{padding:9px 11px 5px;color:#8891a4;text-transform:uppercase;font-size:.68rem;font-weight:850;letter-spacing:.08em}.deck-menu-divider{height:1px;background:var(--bg-e7eaf0);margin:6px 4px}.edit-card{grid-template-columns:34px 32px 1fr 34px}.card-drag-handle{align-self:flex-start;margin-top:10px;border:0;background:var(--bg-f4f6fb);color:#7d879b;border-radius:10px;width:34px;height:38px;cursor:-webkit-grab;cursor:grab;font-size:1.1rem}.card-drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.card-drag-handle{touch-action:none}.card-drag-handle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sortable-card.is-dragging{border:2px dashed var(--accent);border-radius:14px;background:color-mix(in srgb,var(--accent) 7%,transparent)}.sortable-card.is-dragging>*{visibility:hidden}.sortable-card.is-overlay>.edit-card{border-color:var(--accent);box-shadow:0 18px 40px rgba(17,24,39,.22);transform:scale(1.015) rotate(-.4deg)}.sortable-card.is-overlay .card-drag-handle,.sortable-card.is-overlay>.edit-card{cursor:-webkit-grabbing;cursor:grabbing}.cards-list.is-sorting{-webkit-user-select:none;-moz-user-select:none;user-select:none}.cards-list.is-sorting .sortable-card:not(.is-dragging)>.edit-card{opacity:.9}.ai-edit-modal{width:min(1100px,94vw);overflow:auto}.ai-edit-prompt{display:grid;grid-gap:12px;gap:12px}.ai-edit-summary{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:18px 0 10px;padding:12px 14px;background:var(--bg-f4f7ff);border-radius:12px}.ai-edit-list{max-height:55vh;overflow:auto;padding-right:4px}.ai-edit-change{border:1px solid var(--ln-dfe4ee);border-radius:14px;padding:14px;background:var(--surface)}.ai-edit-change.selected{border-color:var(--ln-7e9ff7);box-shadow:0 0 0 2px rgba(79,116,226,.08)}.ai-edit-select{display:flex;gap:8px;align-items:center;font-weight:700;margin-bottom:10px}.ai-edit-columns{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.ai-edit-columns>div{padding:12px;border-radius:12px;background:var(--bg-f7f8fb);min-width:0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.map-ai-editor{border-top:1px solid var(--ln-e4e8ef);margin-top:16px;padding-top:16px;display:grid;grid-gap:10px;gap:10px}.map-ai-editor h3{margin:0}.map-ai-chat{display:grid;grid-gap:6px;gap:6px;max-height:180px;overflow:auto}.map-refine-proposal{padding:12px;border:1px solid var(--ln-b7c7f6);background:var(--bg-f5f8ff);border-radius:12px;display:grid;grid-gap:8px;gap:8px}.map-refine-proposal .actions{justify-content:flex-end}.concept-node.dimmed,.map-edge.dimmed{opacity:.14}.concept-node.focus{box-shadow:0 0 0 4px rgba(62,103,219,.2),0 12px 28px rgba(34,57,110,.12);z-index:4}.map-edge.active{opacity:1}.map-edge.active path{stroke-width:2.8px}.task-mode-page{padding-bottom:72px}.task-progress{display:grid;grid-gap:7px;gap:7px;margin-bottom:18px;font-weight:750}.task-progress>div{height:8px;border-radius:99px;background:var(--bg-e6eaf2);overflow:hidden}.task-progress>div>span{display:block;height:100%;background:#5577e3;border-radius:inherit;transition:width .25s ease}.task-card{background:var(--surface);border:1px solid var(--ln-dce2ec);border-radius:24px;padding:26px;box-shadow:0 10px 30px rgba(34,43,70,.05);display:grid;grid-gap:20px;gap:20px}.task-card-head{display:flex;align-items:center;gap:12px}.task-prompt{font-size:1.25rem;font-weight:650;line-height:1.55}.task-feedback{padding:16px 18px;border-radius:14px;border:1px solid}.task-feedback h3{margin:0 0 8px}.task-feedback.correct{background:var(--bg-effaf2);border-color:var(--ln-b9e3c5)}.task-feedback.partial{background:var(--bg-fff8e7);border-color:var(--ln-f0d99e)}.task-feedback.incorrect{background:var(--bg-fff1f1);border-color:var(--ln-edc2c2)}.task-feedback details{margin-top:12px}.task-feedback summary{cursor:pointer;font-weight:750}.task-actions{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.task-summary{background:var(--surface);border:1px solid var(--ln-dfe4ee);border-radius:24px;padding:28px;display:grid;grid-gap:18px;gap:18px}.task-summary h1,.task-summary h2{margin:0}.task-summary-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.task-summary-stats>div{padding:18px;border-radius:16px;background:var(--bg-f5f7fb);display:grid;grid-gap:3px;gap:3px}.task-summary-stats b{font-size:1.7rem}.task-summary-stats span{color:var(--tx-667085)}.topic-chips{display:flex;flex-wrap:wrap;gap:8px}.topic-chips span{padding:7px 11px;border-radius:99px;background:var(--bg-eef2ff);color:var(--tx-3452b8);font-weight:700}@media(max-width:760px){.edit-card{grid-template-columns:32px 28px 1fr 30px}.ai-edit-columns{grid-template-columns:1fr}.task-summary-stats{grid-template-columns:1fr 1fr}.deck-action-menu{right:-4px}.task-actions{flex-direction:column}}.map-edge-label-layer{position:absolute;inset:0;z-index:6;pointer-events:none}.map-edge-label-html{position:absolute;transform:translate(-50%,-50%);max-width:190px;min-width:72px;padding:4px 7px;border:1px solid var(--ln-d4dde8);border-radius:6px;background:color-mix(in srgb,var(--surface) 97%,transparent);box-shadow:0 2px 7px rgba(25,40,60,.12);font:700 10px/1.15 system-ui,sans-serif;color:var(--tx-3b4b61);text-align:center;white-space:normal;pointer-events:none}.map-edge-label-html.dimmed{opacity:.12}.map-edge-label-html.active{opacity:1}.preview-badge{display:block;padding:8px 10px;border-radius:9px;background:var(--bg-fff7d6);color:var(--tx-795d00);font-size:12px;font-weight:700}.ai-edit-steps{display:flex;gap:8px;flex-wrap:wrap;padding:0 2px 12px}.ai-edit-steps span{padding:7px 10px;border-radius:999px;background:var(--bg-eef1f6);color:#778296;font-size:12px;font-weight:750}.ai-edit-steps span.active{background:var(--bg-e7edff);color:var(--tx-3454b4)}.ai-edit-panel{border:1px solid var(--ln-dfe5ef);background:var(--bg-f8faff);border-radius:14px;padding:14px}.ai-edit-summary>div:first-child{display:grid;grid-gap:4px;gap:4px;min-width:0}.ai-edit-selection-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.ghost.small{padding:6px 9px;font-size:12px}.ai-edit-help{margin:0 0 10px}.ai-edit-sticky-actions{position:-webkit-sticky;position:sticky;bottom:0;background:color-mix(in srgb,var(--surface) 97%,transparent);border-top:1px solid var(--ln-e2e7ef);z-index:10}.ai-edit-modal>.ai-edit-list{flex:1 1;min-height:180px}.ai-edit-change{overflow:hidden}.ai-edit-columns>div{border:1px solid var(--ln-e7eaf0)}.ai-edit-columns>div:last-child{background:var(--bg-f5f8ff);border-color:var(--ln-d8e2ff)}.ai-edit-modal{height:min(860px,92vh);max-height:92vh;overflow:hidden;display:flex;flex-direction:column;padding-bottom:0}.ai-edit-review{min-height:0;flex:1 1;overflow:auto;padding:0 4px 8px 0}.ai-edit-list{display:grid;grid-gap:12px;gap:12px;max-height:none;overflow:visible;padding-right:0}.ai-edit-prompt-collapsed{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;margin-bottom:8px;border:1px solid var(--ln-dfe5ef);background:var(--bg-f8faff);border-radius:12px}.ai-edit-prompt-collapsed>div{min-width:0;display:grid;grid-gap:3px;gap:3px}.ai-edit-change-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.ai-edit-change-head .ai-edit-select{margin-bottom:0}.ai-edit-sticky-actions{flex:none;margin-top:0;padding:12px 0 2px}@media(max-width:760px){.ai-edit-modal{height:100vh;max-height:100vh;width:100vw}.ai-edit-change-head,.ai-edit-prompt-collapsed{align-items:flex-start;flex-direction:column}}.task-remediation-panel,.task-setup-card{display:grid;grid-gap:14px;gap:14px;margin-top:18px;padding:18px;border:1px solid var(--ln-dce4f3);border-radius:16px;background:var(--bg-f8faff)}.task-remediation-panel h2,.task-setup-card h1{margin:4px 0}.task-count-picker{display:grid;grid-gap:8px;gap:8px}.task-count-picker.compact{margin-top:12px}.task-custom-count{display:flex;align-items:center;gap:8px;padding:0 4px}.task-count-picker input[type=number],.task-custom-count input{width:76px;padding:8px 9px;border:1px solid var(--ln-cfd6e2);border-radius:9px;background:var(--surface)}.task-setup-card .big-action{justify-self:start}.sorting-progress{display:flex!important;height:10px!important;background:var(--bg-e7eaf0)!important;overflow:hidden;border-radius:999px;margin:0}.sorting-progress button{height:100%;border:0;padding:0;cursor:pointer;min-width:0;transition:filter .15s ease}.sorting-progress button:hover{filter:brightness(.94)}.sorting-progress .sorting-known{background:#55a873}.sorting-progress .sorting-learning{background:#e6b44e}.sorting-status-counts{display:flex;gap:10px;justify-content:center;padding:8px 14px 2px}.sorting-status-counts button{border:0;background:transparent;padding:4px 8px;border-radius:999px;color:var(--tx-5b6678);cursor:pointer}.sorting-status-counts button:hover{background:var(--bg-f0f2f6)}.sorting-status-counts button:first-child b{color:var(--tx-3f8d5d)}.sorting-status-counts button:nth-child(2) b{color:var(--tx-b27613)}.sorting-status-popover{position:absolute;z-index:12;top:78px;right:22px;width:min(440px,calc(100vw - 44px));max-height:56vh;overflow:auto;border:1px solid var(--ln-dce2ec);background:var(--surface);border-radius:16px;box-shadow:0 18px 48px rgba(32,42,68,.18);padding:14px}.sorting-status-list{display:grid;grid-gap:8px;gap:8px}.sorting-status-list>div{padding:9px 10px;border:1px solid var(--ln-edf0f4);border-radius:10px;background:var(--bg-fafbfc)}.task-plan-card{display:grid;grid-gap:16px;gap:16px;padding:22px;border:1px solid var(--ln-dce4f3);border-radius:18px;background:var(--surface)}.task-plan-card h1{margin:0}.task-plan-list{display:grid;grid-gap:10px;gap:10px;max-height:46vh;overflow:auto}.task-plan-list article{display:grid;grid-template-columns:1fr auto;grid-gap:5px 10px;gap:5px 10px;border:1px solid var(--ln-e1e6ef);border-radius:13px;padding:13px;background:var(--bg-f8faff)}.task-plan-list article p{grid-column:1/-1;margin:2px 0;color:var(--tx-596579);line-height:1.45}.task-difficulty{display:grid;grid-gap:8px;gap:8px}.task-sources{padding:10px 12px;border:1px solid var(--ln-e5e9ef);border-radius:10px;background:var(--bg-f9fafc)}.task-sources summary{cursor:pointer;font-weight:750}.task-sources ul{margin:8px 0 0;padding-left:20px}.task-feedback h4{margin:14px 0 6px}.task-feedback ul{margin:6px 0;padding-left:22px}.task-grade-override{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(90,105,130,.18)}.warning-box{padding:10px 12px;border-radius:10px;background:var(--bg-fff5d8);border:1px solid var(--ln-efd687);color:var(--tx-73590d);margin:8px 0}.task-review-list{display:grid;grid-gap:8px;gap:8px}.task-review-list details{border:1px solid var(--ln-e2e6ed);border-radius:11px;padding:9px 11px;background:var(--bg-fafbfc)}.task-review-list summary{cursor:pointer;font-weight:750}.settings-card select{width:100%;margin-top:6px;padding:10px 11px;border:1px solid var(--ln-ccd4df);border-radius:10px;background:var(--surface);color:inherit}@media(max-width:760px){.sorting-status-counts{gap:2px;font-size:.82rem}.sorting-status-popover{top:112px;right:10px}.task-plan-list article{grid-template-columns:1fr}.task-plan-list article .alpha-pill{justify-self:start}.task-grade-override{align-items:flex-start;flex-direction:column}}.learn-stage{position:relative}.rich-math-editor{position:relative;width:100%;min-height:78px;border:1px solid var(--ln-d9dee7);border-radius:8px;background:var(--surface);padding:10px 40px 10px 11px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;cursor:text}.rich-math-editor:focus,.rich-math-editor:focus-within{outline:2px solid rgba(43,112,246,.18);border-color:var(--ln-7da5f7)}.rich-math-editor.disabled{background:var(--bg-f4f6f8);cursor:default}.rich-math-text{white-space:pre-wrap;cursor:text}.rich-math-token{display:inline-flex;align-items:center;vertical-align:middle;border:1px solid transparent;background:var(--bg-eef4ff);border-radius:6px;padding:1px 5px;margin:0 2px;cursor:pointer;max-width:100%;min-width:0;overflow:visible}.rich-math-token:hover{border-color:var(--ln-8fb2fa);background:var(--bg-e4eeff)}.rich-math-token.display{display:flex;width:max-content;max-width:100%;margin:7px auto;padding:5px 9px}.rich-math-token .katex-display{margin:0}.rich-math-edit-text{position:absolute;right:8px;top:8px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:16px}.rich-math-placeholder{color:#8b94a4}.math-textarea.mixed-mode{display:grid;grid-gap:6px;gap:6px;width:100%}.mixed-math-editor-shell{position:relative;width:100%}.mixed-math-editor{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:10px 12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;outline:none;overflow-y:auto;overflow-x:hidden}.mixed-math-editor:focus{border-color:var(--ln-5f7ef0);box-shadow:0 0 0 2px rgba(79,116,226,.12)}.mixed-math-editor.disabled{background:var(--bg);color:#7a8495;cursor:not-allowed}.mixed-math-editor :not(.mixed-math-token):not(.mixed-math-token *){color:inherit!important;background-color:transparent!important;font-family:inherit!important;font-size:inherit!important}.mixed-math-placeholder-overlay{position:absolute;left:13px;top:11px;color:#98a1b2;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:1.5}.mixed-math-placeholder-overlay.hidden{display:none}.mixed-math-token{display:inline-flex;align-items:center;max-width:100%;min-width:0;padding:1px 5px;margin:0 2px;border:1px solid transparent;border-radius:7px;background:var(--bg-f6f8fd);cursor:pointer;vertical-align:middle;white-space:nowrap;overflow:visible}.mixed-math-token:hover{border-color:var(--ln-9db3ef);background:var(--bg-eef3ff)}.mixed-math-token.display{display:flex;width:max-content;max-width:100%;margin:6px auto;padding:5px 8px}.mixed-math-token .katex{font-size:var(--math-fit-font-size,103%)}.formula-dock-layer{position:fixed;inset:0;z-index:130;pointer-events:none}.formula-editor-docked{position:absolute;right:18px;top:82px;bottom:18px;width:clamp(340px,30vw,430px);max-height:none;border:1px solid var(--ln-dce3ee);border-radius:18px;pointer-events:auto;box-shadow:0 18px 54px rgba(10,20,40,.2)}.formula-editor-docked .formula-editor-body{padding:14px 16px}.formula-editor-docked .formula-group>div{gap:4px}.formula-editor-docked .formula-symbol{min-width:38px;min-height:34px}.formula-editor-docked .study-material-head{padding:16px}.formula-editor-docked .study-material-footer{padding:12px 16px}@media(min-width:901px){body.formula-dock-open .content{margin-right:calc(clamp(340px,30vw,430px) + 36px);margin-left:auto;transition:margin-right .16s ease,max-width .16s ease}body.formula-dock-open .editor-width{max-width:min(900px,calc(100vw - clamp(340px,30vw,430px) - 72px))}body.formula-dock-open .learn-width{max-width:min(820px,calc(100vw - clamp(340px,30vw,430px) - 72px))}body.formula-dock-open .learn-stage{width:min(780px,calc(100vw - clamp(340px,30vw,430px) - 72px));margin-left:24px;margin-right:auto}}@media(max-width:900px){.formula-editor-docked{left:8px;right:8px;top:auto;bottom:8px;width:auto;max-height:46vh;border-radius:16px}.formula-editor-docked .study-material-head p{display:none}.formula-editor-docked .study-material-head{padding:10px 14px}.formula-editor-docked .study-material-head h2{font-size:16px;margin:2px 0 0}.formula-editor-docked .formula-editor-body{padding:8px 12px;gap:10px}.formula-editor-docked .formula-group>div{flex-wrap:nowrap;overflow-x:auto;max-height:none;padding-bottom:2px}.formula-editor-docked .formula-symbol{flex:0 0 auto}.formula-editor-docked .study-material-footer{padding:8px 12px}.formula-editor-docked .formula-source textarea{min-height:0;height:42px}.formula-editor-docked .study-material-footer{display:flex;flex-direction:row;gap:8px}.formula-editor-docked .study-material-footer>button{flex:1 1;width:auto}body.formula-dock-open .content{padding-bottom:48vh}}.mixed-math-token.editing{cursor:text;border-color:var(--accent);background:var(--bg-eef3ff);white-space:normal;padding:0 2px}.mixed-math-token.editing math-field{display:inline-block;min-width:2.2em;max-width:100%;font-size:1.08em;padding:0 2px;border:0;outline:none;background:transparent;color:var(--text);--caret-color:var(--accent-ink);--selection-background-color:rgba(74,102,224,.28);--contains-highlight-background-color:rgba(74,102,224,.12);--placeholder-color:var(--muted);--smart-fence-color:var(--muted)}.mixed-math-token.editing math-field::part(menu-toggle),.mixed-math-token.editing math-field::part(virtual-keyboard-toggle){display:none}.mixed-math-token.editing math-field::part(content){padding:2px 0}.formula-symbol .katex{font-size:1em;pointer-events:none}.formula-editor-docked .formula-symbol{display:inline-flex;align-items:center;justify-content:center;padding:3px 6px}.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}.skeleton{display:block;background:linear-gradient(90deg,var(--skeleton-a) 25%,var(--skeleton-b) 37%,var(--skeleton-a) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}.spinner{animation-duration:2.4s}}.skeleton-card{padding:34px 38px;min-height:206px;box-shadow:none}.skeleton-stack{display:grid;grid-gap:14px;gap:14px}.skeleton-panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px}.starter-card{border:1px solid var(--starter-line);background:var(--starter-bg);border-radius:20px;padding:28px;margin-bottom:28px}.starter-card h2{font-size:22px;margin:12px 0 8px;letter-spacing:-.01em}.starter-card>p{margin:0 0 18px;color:var(--muted);line-height:1.55;max-width:60ch}.starter-actions{display:flex;flex-wrap:wrap;gap:12px}.starter-actions .big-action{padding:13px 20px;font-size:15px}.starter-steps{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;padding:0;margin:22px 0 0;color:var(--muted);font-size:14px}.starter-steps li{display:flex;align-items:center;gap:8px}.starter-steps b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px}.starter-card .fineprint{margin:18px 0 0}.first-run-tips{border:1px solid var(--starter-line);background:var(--starter-bg);border-radius:14px;padding:16px 18px}.first-run-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.first-run-tips ol{margin:6px 0 10px;padding-left:20px;line-height:1.7;font-size:14px}.first-run-tips p{margin:0;font-size:14px;color:var(--muted)}.first-run-tips kbd{display:inline-block;min-width:22px;text-align:center;padding:1px 6px;border:solid var(--line);border-width:1px 1px 2px;border-radius:6px;background:var(--surface);font:600 12px ui-monospace,SFMono-Regular,Menlo,monospace}@media (max-width:700px){.progress{padding:0 22px 22px}.skeleton-card{padding:24px 22px}.starter-card{padding:22px}.starter-actions .big-action{width:100%}}:root{--bg-d8ebdc:#d8ebdc;--bg-dff2e4:#dff2e4;--bg-e4eeff:#e4eeff;--bg-e5e8ef:#e5e8ef;--bg-e5f0ff:#e5f0ff;--bg-e6eaf2:#e6eaf2;--bg-e7eaf0:#e7eaf0;--bg-e7edff:#e7edff;--bg-e8f6eb:#e8f6eb;--bg-e9edff:#e9edff;--bg-eaf6ed:#eaf6ed;--bg-eaf7ed:#eaf7ed;--bg-eaf7ee:#eaf7ee;--bg-ede1fb:#ede1fb;--bg-edf4ff:#edf4ff;--bg-edf5fb:#edf5fb;--bg-edf9f0:#edf9f0;--bg-eef0f4:#eef0f4;--bg-eef1f5:#eef1f5;--bg-eef1f6:#eef1f6;--bg-eef1ff:#eef1ff;--bg-eef2ff:#eef2ff;--bg-eef3ff:#eef3ff;--bg-eef4ff:#eef4ff;--bg-eef7ef:#eef7ef;--bg-eef7f0:#eef7f0;--bg-eef9f1:#eef9f1;--bg-effaf2:#effaf2;--bg-f0f2f5:#f0f2f5;--bg-f0f2f6:#f0f2f6;--bg-f0f3ff:#f0f3ff;--bg-f0f7f2:#f0f7f2;--bg-f1f3f6:#f1f3f6;--bg-f2f5fb:#f2f5fb;--bg-f3f4f6:#f3f4f6;--bg-f3f5f8:#f3f5f8;--bg-f3f5fa:#f3f5fa;--bg-f3f6f9:#f3f6f9;--bg-f3f6fa:#f3f6fa;--bg-f3f6fb:#f3f6fb;--bg-f3f8ff:#f3f8ff;--bg-f4f5f7:#f4f5f7;--bg-f4f6f8:#f4f6f8;--bg-f4f6fb:#f4f6fb;--bg-f4f7ff:#f4f7ff;--bg-f5f6f7:#f5f6f7;--bg-f5f7fb:#f5f7fb;--bg-f5f7ff:#f5f7ff;--bg-f5f8ff:#f5f8ff;--bg-f6f8fd:#f6f8fd;--bg-f7f8fa:#f7f8fa;--bg-f7f8fb:#f7f8fb;--bg-f7f9fc:#f7f9fc;--bg-f8f9fc:#f8f9fc;--bg-f8fafc:#f8fafc;--bg-f8faff:#f8faff;--bg-f9fafc:#f9fafc;--bg-f9fbfd:#f9fbfd;--bg-fafafa:#fafafa;--bg-fafbfc:#fafbfc;--bg-fafbff:#fafbff;--bg-fbfcfe:#fbfcfe;--bg-ffeaa5:#ffeaa5;--bg-fff0b8:#fff0b8;--bg-fff0f0:#fff0f0;--bg-fff1d8:#fff1d8;--bg-fff1df:#fff1df;--bg-fff1f1:#fff1f1;--bg-fff2f2:#fff2f2;--bg-fff3f3:#fff3f3;--bg-fff5d8:#fff5d8;--bg-fff7d6:#fff7d6;--bg-fff7dc:#fff7dc;--bg-fff7df:#fff7df;--bg-fff7e6:#fff7e6;--bg-fff8d9:#fff8d9;--bg-fff8e7:#fff8e7;--bg-fff9dd:#fff9dd;--bg-rgba-245-247-250-94:rgba(245,247,250,.94);--ln-5f7ef0:#5f7ef0;--ln-7da5f7:#7da5f7;--ln-7e9ff7:#7e9ff7;--ln-8fb2fa:#8fb2fa;--ln-9baae8:#9baae8;--ln-9db3ef:#9db3ef;--ln-aac3e4:#aac3e4;--ln-b7c7f6:#b7c7f6;--ln-b9c3dd:#b9c3dd;--ln-b9d1f0:#b9d1f0;--ln-b9e3c5:#b9e3c5;--ln-bcc5d4:#bcc5d4;--ln-bcdcc4:#bcdcc4;--ln-c8e7d0:#c8e7d0;--ln-cbd3df:#cbd3df;--ln-ccd4df:#ccd4df;--ln-ccd7ff:#ccd7ff;--ln-cdd3dd:#cdd3dd;--ln-cfd5df:#cfd5df;--ln-cfd6e2:#cfd6e2;--ln-cfe4d3:#cfe4d3;--ln-d4dde8:#d4dde8;--ln-d8e2ff:#d8e2ff;--ln-d9dee7:#d9dee7;--ln-d9dfeb:#d9dfeb;--ln-d9e0e9:#d9e0e9;--ln-d9e1eb:#d9e1eb;--ln-dbe1ee:#dbe1ee;--ln-dce2ec:#dce2ec;--ln-dce3eb:#dce3eb;--ln-dce3ee:#dce3ee;--ln-dce4f3:#dce4f3;--ln-dde3ea:#dde3ea;--ln-dfe4ee:#dfe4ee;--ln-dfe5ed:#dfe5ed;--ln-dfe5ef:#dfe5ef;--ln-e1e6ef:#e1e6ef;--ln-e2e6ed:#e2e6ed;--ln-e2e7ef:#e2e7ef;--ln-e4e8ee:#e4e8ee;--ln-e4e8ef:#e4e8ef;--ln-e5e9ef:#e5e9ef;--ln-e6bcbc:#e6bcbc;--ln-e6c45a:#e6c45a;--ln-e7bebe:#e7bebe;--ln-e7eaf0:#e7eaf0;--ln-edc2c2:#edc2c2;--ln-edcccc:#edcccc;--ln-edd497:#edd497;--ln-edf0f4:#edf0f4;--ln-efd687:#efd687;--ln-efd782:#efd782;--ln-f0caca:#f0caca;--ln-f0d99e:#f0d99e;--ln-f0dfa0:#f0dfa0;--ln-fff8d9:#fff8d9;--ln-rgba-255-255-255-25:rgba(255,255,255,.25);--tx-1f2d3d:#1f2d3d;--tx-202737:#202737;--tx-21364a:#21364a;--tx-246b35:#246b35;--tx-26384d:#26384d;--tx-26683b:#26683b;--tx-266a39:#266a39;--tx-27703a:#27703a;--tx-28673a:#28673a;--tx-29384c:#29384c;--tx-294ed8:#294ed8;--tx-2f7443:#2f7443;--tx-32485e:#32485e;--tx-34465c:#34465c;--tx-3452b8:#3452b8;--tx-3454b4:#3454b4;--tx-3759d7:#3759d7;--tx-377047:#377047;--tx-3a7047:#3a7047;--tx-3b4b61:#3b4b61;--tx-3f8d5d:#3f8d5d;--tx-405069:#405069;--tx-43516a:#43516a;--tx-435268:#435268;--tx-465269:#465269;--tx-493d14:#493d14;--tx-4a5870:#4a5870;--tx-4f5a6d:#4f5a6d;--tx-515d71:#515d71;--tx-536176:#536176;--tx-566174:#566174;--tx-586376:#586376;--tx-596579:#596579;--tx-59677a:#59677a;--tx-5b512d:#5b512d;--tx-5b6678:#5b6678;--tx-5d6680:#5d6680;--tx-657085:#657085;--tx-667084:#667084;--tx-667085:#667085;--tx-6b5e22:#6b5e22;--tx-73590d:#73590d;--tx-76631f:#76631f;--tx-795d00:#795d00;--tx-805900:#805900;--tx-805c00:#805c00;--tx-825f00:#825f00;--tx-8a6100:#8a6100;--tx-8b5900:#8b5900;--tx-8b6500:#8b6500;--tx-9a3434:#9a3434;--tx-a23434:#a23434;--tx-a53b3b:#a53b3b;--tx-b27613:#b27613;--tx-b68b00:#b68b00;--tx-c93636:#c93636;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1420;--surface:#171d2b;--text:#e6eaf2;--muted:#9aa5b8;--line:#2a3345;--accent:#4a66e0;--accent-dark:#3f5bd6;--accent-ink:#8ea3ff;--danger:#ff8f8f;--shadow:0 12px 35px rgba(0,0,0,.45);--skeleton-a:#202839;--skeleton-b:#2b3548;--progress-fill:#3fb97a;--streak-bg:#2b2616;--progress-track:#2f384b;--starter-bg:#1a2238;--starter-line:#2e3a5e;color-scheme:dark;--bg-d8ebdc:#2c5133;--bg-dff2e4:#274930;--bg-e4eeff:#212c3e;--bg-e5e8ef:#2a3144;--bg-e5f0ff:#212d3e;--bg-e6eaf2:#253045;--bg-e7eaf0:#293142;--bg-e7edff:#21283c;--bg-e8f6eb:#23412a;--bg-e9edff:#20253b;--bg-eaf6ed:#22402a;--bg-eaf7ed:#223f29;--bg-eaf7ee:#223f2b;--bg-ede1fb:#322442;--bg-edf4ff:#1f2939;--bg-edf5fb:#20303b;--bg-edf9f0:#213c28;--bg-eef0f4:#262d3b;--bg-eef1f5:#232e3c;--bg-eef1f6:#212c3e;--bg-eef1ff:#1e2338;--bg-eef2ff:#1e2438;--bg-eef3ff:#1e2638;--bg-eef4ff:#1e2838;--bg-eef7ef:#213d24;--bg-eef7f0:#213d27;--bg-eef9f1:#203c28;--bg-effaf2:#203b27;--bg-f0f2f5:#262d38;--bg-f0f2f6:#232b3a;--bg-f0f3ff:#1e2337;--bg-f0f7f2:#203c28;--bg-f1f3f6:#242c38;--bg-f2f5fb:#1e2738;--bg-f3f4f6:#272b34;--bg-f3f5f8:#212a38;--bg-f3f5fa:#1e2638;--bg-f3f6f9:#1f2c39;--bg-f3f6fa:#1e2938;--bg-f3f6fb:#1e2838;--bg-f3f8ff:#1d2735;--bg-f4f5f7:#252a33;--bg-f4f6f8:#222c36;--bg-f4f6fb:#1e2537;--bg-f4f7ff:#1c2335;--bg-f5f6f7:#272c31;--bg-f5f7fb:#1d2637;--bg-f5f7ff:#1c2134;--bg-f5f8ff:#1c2334;--bg-f6f8fd:#1c2335;--bg-f7f8fa:#202633;--bg-f7f8fb:#1d2335;--bg-f7f9fc:#1c2635;--bg-f8f9fc:#1c2234;--bg-f8fafc:#1c2834;--bg-f8faff:#1b2233;--bg-f9fafc:#1c2434;--bg-f9fbfd:#1c2733;--bg-fafafa:#282828;--bg-fafbfc:#1d2731;--bg-fafbff:#1b1f31;--bg-fbfcfe:#1b2231;--bg-ffeaa5:#635835;--bg-fff0b8:#584f2f;--bg-fff0f0:#371e1e;--bg-fff1d8:#453a25;--bg-fff1df:#413423;--bg-fff1f1:#371d1d;--bg-fff2f2:#361d1d;--bg-fff3f3:#351d1d;--bg-fff5d8:#453d25;--bg-fff7d6:#464026;--bg-fff7dc:#433c24;--bg-fff7df:#413a23;--bg-fff7e6:#3d3421;--bg-fff8d9:#453f25;--bg-fff8e7:#3c3421;--bg-fff9dd:#423d24;--bg-rgba-245-247-250-94:#1e2837f0;--ln-5f7ef0:#232634;--ln-7da5f7:#232834;--ln-7e9ff7:#232734;--ln-8fb2fa:#262c39;--ln-9baae8:#252837;--ln-9db3ef:#262c3a;--ln-aac3e4:#272f3a;--ln-b7c7f6:#2d3344;--ln-b9c3dd:#282e3d;--ln-b9d1f0:#2c3642;--ln-b9e3c5:#2a3e30;--ln-bcc5d4:#272f3b;--ln-bcdcc4:#293d2e;--ln-c8e7d0:#2d4433;--ln-cbd3df:#2c3543;--ln-ccd4df:#2d3643;--ln-ccd7ff:#33384c;--ln-cdd3dd:#2d3542;--ln-cfd5df:#2d3644;--ln-cfd6e2:#2e3645;--ln-cfe4d3:#2e4533;--ln-d4dde8:#303b48;--ln-d8e2ff:#353c50;--ln-d9dee7:#313a49;--ln-d9dfeb:#323a4a;--ln-d9e0e9:#313c4a;--ln-d9e1eb:#323d4a;--ln-dbe1ee:#333b4c;--ln-dce2ec:#323c4c;--ln-dce3eb:#323e4b;--ln-dce3ee:#333d4c;--ln-dce4f3:#343d4e;--ln-dde3ea:#323e4b;--ln-dfe4ee:#333c4d;--ln-dfe5ed:#333e4d;--ln-dfe5ef:#343d4d;--ln-e1e6ef:#343d4e;--ln-e2e6ed:#343d4e;--ln-e2e7ef:#343e4e;--ln-e4e8ee:#343f4f;--ln-e4e8ef:#353e4f;--ln-e5e9ef:#353f4f;--ln-e6bcbc:#402b2b;--ln-e6c45a:#343023;--ln-e7bebe:#412b2b;--ln-e7eaf0:#353e50;--ln-edc2c2:#442d2d;--ln-edcccc:#472f2f;--ln-edd497:#373225;--ln-edf0f4:#374353;--ln-efd687:#343023;--ln-efd782:#343023;--ln-f0caca:#473030;--ln-f0d99e:#3a3527;--ln-f0dfa0:#3b3727;--ln-fff8d9:#504b36;--ln-rgba-255-255-255-25:#4c4c4c40;--tx-1f2d3d:#bdccde;--tx-202737:#c3cbdc;--tx-21364a:#b2c8dd;--tx-246b35:#96dca7;--tx-26384d:#b0c3d8;--tx-26683b:#99daae;--tx-266a39:#97daaa;--tx-27703a:#92d9a5;--tx-28673a:#9ad8ac;--tx-29384c:#b2c1d5;--tx-294ed8:#889ce9;--tx-2f7443:#90d2a3;--tx-32485e:#a3b9ce;--tx-34465c:#a5b7cc;--tx-3452b8:#8195db;--tx-3454b4:#7e95da;--tx-3759d7:#94a7ea;--tx-377047:#94cba4;--tx-3a7047:#95c8a1;--tx-3b4b61:#a2b1c6;--tx-3f8d5d:#7dc598;--tx-405069:#9baac2;--tx-43516a:#9ba8c0;--tx-435268:#9cabbf;--tx-465269:#9ca7bd;--tx-493d14:#eaddb1;--tx-4a5870:#96a3ba;--tx-4f5a6d:#99a3b5;--tx-515d71:#96a1b4;--tx-536176:#929fb2;--tx-566174:#949eaf;--tx-586376:#929cae;--tx-596579:#909bad;--tx-59677a:#8f9cad;--tx-5b512d:#d3c9a5;--tx-5b6678:#909bab;--tx-5d6680:#8a92aa;--tx-657085:#8690a3;--tx-667084:#8790a2;--tx-667085:#868fa2;--tx-6b5e22:#ded196;--tx-73590d:#e5d299;--tx-76631f:#e1ce8c;--tx-795d00:#e7d69d;--tx-805900:#e5ce99;--tx-805c00:#e5d099;--tx-825f00:#e5d097;--tx-8a6100:#e4cc92;--tx-8b5900:#e4c692;--tx-8b6500:#e4cd92;--tx-9a3434:#cf7171;--tx-a23434:#d27474;--tx-a53b3b:#c96868;--tx-b27613:#ecae4a;--tx-b68b00:#ffcc27;--tx-c93636:#e18e8e}}:root[data-theme=dark]{--bg:#0f1420;--surface:#171d2b;--text:#e6eaf2;--muted:#9aa5b8;--line:#2a3345;--accent:#4a66e0;--accent-dark:#3f5bd6;--accent-ink:#8ea3ff;--danger:#ff8f8f;--skeleton-a:#202839;--skeleton-b:#2b3548;--progress-fill:#3fb97a;--streak-bg:#2b2616;--progress-track:#2f384b;--starter-bg:#1a2238;--starter-line:#2e3a5e;color-scheme:dark;--bg-d8ebdc:#2c5133;--bg-dff2e4:#274930;--bg-e4eeff:#212c3e;--bg-e5e8ef:#2a3144;--bg-e5f0ff:#212d3e;--bg-e6eaf2:#253045;--bg-e7eaf0:#293142;--bg-e7edff:#21283c;--bg-e8f6eb:#23412a;--bg-e9edff:#20253b;--bg-eaf6ed:#22402a;--bg-eaf7ed:#223f29;--bg-eaf7ee:#223f2b;--bg-ede1fb:#322442;--bg-edf4ff:#1f2939;--bg-edf5fb:#20303b;--bg-edf9f0:#213c28;--bg-eef0f4:#262d3b;--bg-eef1f5:#232e3c;--bg-eef1f6:#212c3e;--bg-eef1ff:#1e2338;--bg-eef2ff:#1e2438;--bg-eef3ff:#1e2638;--bg-eef4ff:#1e2838;--bg-eef7ef:#213d24;--bg-eef7f0:#213d27;--bg-eef9f1:#203c28;--bg-effaf2:#203b27;--bg-f0f2f5:#262d38;--bg-f0f2f6:#232b3a;--bg-f0f3ff:#1e2337;--bg-f0f7f2:#203c28;--bg-f1f3f6:#242c38;--bg-f2f5fb:#1e2738;--bg-f3f4f6:#272b34;--bg-f3f5f8:#212a38;--bg-f3f5fa:#1e2638;--bg-f3f6f9:#1f2c39;--bg-f3f6fa:#1e2938;--bg-f3f6fb:#1e2838;--bg-f3f8ff:#1d2735;--bg-f4f5f7:#252a33;--bg-f4f6f8:#222c36;--bg-f4f6fb:#1e2537;--bg-f4f7ff:#1c2335;--bg-f5f6f7:#272c31;--bg-f5f7fb:#1d2637;--bg-f5f7ff:#1c2134;--bg-f5f8ff:#1c2334;--bg-f6f8fd:#1c2335;--bg-f7f8fa:#202633;--bg-f7f8fb:#1d2335;--bg-f7f9fc:#1c2635;--bg-f8f9fc:#1c2234;--bg-f8fafc:#1c2834;--bg-f8faff:#1b2233;--bg-f9fafc:#1c2434;--bg-f9fbfd:#1c2733;--bg-fafafa:#282828;--bg-fafbfc:#1d2731;--bg-fafbff:#1b1f31;--bg-fbfcfe:#1b2231;--bg-ffeaa5:#635835;--bg-fff0b8:#584f2f;--bg-fff0f0:#371e1e;--bg-fff1d8:#453a25;--bg-fff1df:#413423;--bg-fff1f1:#371d1d;--bg-fff2f2:#361d1d;--bg-fff3f3:#351d1d;--bg-fff5d8:#453d25;--bg-fff7d6:#464026;--bg-fff7dc:#433c24;--bg-fff7df:#413a23;--bg-fff7e6:#3d3421;--bg-fff8d9:#453f25;--bg-fff8e7:#3c3421;--bg-fff9dd:#423d24;--bg-rgba-245-247-250-94:#1e2837f0;--ln-5f7ef0:#232634;--ln-7da5f7:#232834;--ln-7e9ff7:#232734;--ln-8fb2fa:#262c39;--ln-9baae8:#252837;--ln-9db3ef:#262c3a;--ln-aac3e4:#272f3a;--ln-b7c7f6:#2d3344;--ln-b9c3dd:#282e3d;--ln-b9d1f0:#2c3642;--ln-b9e3c5:#2a3e30;--ln-bcc5d4:#272f3b;--ln-bcdcc4:#293d2e;--ln-c8e7d0:#2d4433;--ln-cbd3df:#2c3543;--ln-ccd4df:#2d3643;--ln-ccd7ff:#33384c;--ln-cdd3dd:#2d3542;--ln-cfd5df:#2d3644;--ln-cfd6e2:#2e3645;--ln-cfe4d3:#2e4533;--ln-d4dde8:#303b48;--ln-d8e2ff:#353c50;--ln-d9dee7:#313a49;--ln-d9dfeb:#323a4a;--ln-d9e0e9:#313c4a;--ln-d9e1eb:#323d4a;--ln-dbe1ee:#333b4c;--ln-dce2ec:#323c4c;--ln-dce3eb:#323e4b;--ln-dce3ee:#333d4c;--ln-dce4f3:#343d4e;--ln-dde3ea:#323e4b;--ln-dfe4ee:#333c4d;--ln-dfe5ed:#333e4d;--ln-dfe5ef:#343d4d;--ln-e1e6ef:#343d4e;--ln-e2e6ed:#343d4e;--ln-e2e7ef:#343e4e;--ln-e4e8ee:#343f4f;--ln-e4e8ef:#353e4f;--ln-e5e9ef:#353f4f;--ln-e6bcbc:#402b2b;--ln-e6c45a:#343023;--ln-e7bebe:#412b2b;--ln-e7eaf0:#353e50;--ln-edc2c2:#442d2d;--ln-edcccc:#472f2f;--ln-edd497:#373225;--ln-edf0f4:#374353;--ln-efd687:#343023;--ln-efd782:#343023;--ln-f0caca:#473030;--ln-f0d99e:#3a3527;--ln-f0dfa0:#3b3727;--ln-fff8d9:#504b36;--ln-rgba-255-255-255-25:#4c4c4c40;--tx-1f2d3d:#bdccde;--tx-202737:#c3cbdc;--tx-21364a:#b2c8dd;--tx-246b35:#96dca7;--tx-26384d:#b0c3d8;--tx-26683b:#99daae;--tx-266a39:#97daaa;--tx-27703a:#92d9a5;--tx-28673a:#9ad8ac;--tx-29384c:#b2c1d5;--tx-294ed8:#889ce9;--tx-2f7443:#90d2a3;--tx-32485e:#a3b9ce;--tx-34465c:#a5b7cc;--tx-3452b8:#8195db;--tx-3454b4:#7e95da;--tx-3759d7:#94a7ea;--tx-377047:#94cba4;--tx-3a7047:#95c8a1;--tx-3b4b61:#a2b1c6;--tx-3f8d5d:#7dc598;--tx-405069:#9baac2;--tx-43516a:#9ba8c0;--tx-435268:#9cabbf;--tx-465269:#9ca7bd;--tx-493d14:#eaddb1;--tx-4a5870:#96a3ba;--tx-4f5a6d:#99a3b5;--tx-515d71:#96a1b4;--tx-536176:#929fb2;--tx-566174:#949eaf;--tx-586376:#929cae;--tx-596579:#909bad;--tx-59677a:#8f9cad;--tx-5b512d:#d3c9a5;--tx-5b6678:#909bab;--tx-5d6680:#8a92aa;--tx-657085:#8690a3;--tx-667084:#8790a2;--tx-667085:#868fa2;--tx-6b5e22:#ded196;--tx-73590d:#e5d299;--tx-76631f:#e1ce8c;--tx-795d00:#e7d69d;--tx-805900:#e5ce99;--tx-805c00:#e5d099;--tx-825f00:#e5d097;--tx-8a6100:#e4cc92;--tx-8b5900:#e4c692;--tx-8b6500:#e4cd92;--tx-9a3434:#cf7171;--tx-a23434:#d27474;--tx-a53b3b:#c96868;--tx-b27613:#ecae4a;--tx-b68b00:#ffcc27;--tx-c93636:#e18e8e}:root[data-theme=light]{color-scheme:light}.theme-toggle{position:fixed;left:16px;bottom:16px;z-index:60;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:17px;line-height:1;display:grid;place-items:center;box-shadow:0 4px 14px rgba(0,0,0,.12);opacity:.85}.theme-toggle:hover{opacity:1}.theme-toggle:focus-visible,[role=button]:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.deck-card.deck-card-shell{display:flex!important;flex-direction:column}.deck-card-shell .deck-card-main{height:auto;flex:1 1 auto;padding-bottom:20px}.deck-card-shell .progress{flex:0 0 auto;margin-top:0}.deck-card-shell .deck-card-main{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}.deck-card-shell .deck-card-main h2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere;line-height:1.2;min-height:2.4em}.deck-card-shell .progress-legend{flex-wrap:nowrap;white-space:nowrap;gap:2px 8px}.deck-card-shell .progress-rank{min-width:0;overflow:hidden;text-overflow:ellipsis}.starter-actions .big-action{width:auto;flex:0 1 auto}.first-run-tips{margin:0 0 6px}@media (max-width:700px){.starter-actions .big-action{width:100%}}.progress{padding:0 38px 26px;margin-top:-6px}.progress-track{height:8px;border-radius:99px;overflow:hidden;background:var(--progress-track)}.progress-fill{display:block;height:100%;border-radius:99px;background:var(--progress-fill);transition:width .4s ease}.progress-legend{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin-top:9px;font-size:12px;color:var(--muted)}.progress-rank{color:var(--text);font-size:13px}.task-points{gap:10px;flex-wrap:wrap;margin:12px 0 4px}.deck-course,.task-points{display:flex;align-items:center}.deck-course{gap:8px;margin:2px 0 10px;font-size:13px;color:var(--muted)}.deck-course input{width:auto;min-width:180px;padding:6px 10px;font-size:13px}@media (max-width:700px){.progress{padding:0 22px 22px}}.study-calendar-modal{width:min(440px,100%);max-height:92vh;overflow:auto;background:var(--surface);color:var(--text);border-radius:18px;box-shadow:0 25px 70px rgba(17,24,39,.25);padding:20px 22px 18px}.study-calendar-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.study-calendar-head h2{margin:0 0 4px;font-size:20px}.study-calendar-head p{margin:0;font-size:13px}.study-calendar-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin:16px 0}.study-calendar-stats>div{display:grid;grid-gap:2px;gap:2px;padding:10px;border:1px solid var(--line);border-radius:12px;text-align:center}.study-calendar-stats b{font-size:22px}.study-calendar-stats span{font-size:11px;color:var(--muted);line-height:1.25}.study-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.study-calendar-nav h3{margin:0;font-size:16px;text-transform:capitalize}.study-calendar-nav button{font-size:20px;line-height:1;padding:6px 14px;background:transparent;color:var(--text);border-color:var(--line)}.study-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.study-calendar-grid.loading{opacity:.5}.study-calendar-weekday{text-align:center;font-size:11px;font-weight:700;color:var(--muted);text-transform:capitalize;padding:4px 0}.study-calendar-day{aspect-ratio:1;display:grid;place-items:center;border-radius:10px;font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text)}.study-calendar-day.future{color:var(--muted);opacity:.55}.study-calendar-day.studied{background:var(--progress-fill);color:#fff;font-weight:750}.study-calendar-day.today{box-shadow:inset 0 0 0 2px var(--accent-ink);font-weight:750}.study-calendar-day.studied.today{box-shadow:inset 0 0 0 2px var(--surface),0 0 0 2px var(--accent-ink)}.study-calendar-foot{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:14px 0 0;font-size:12px}.study-calendar-legend{display:inline-block;width:12px;height:12px;border-radius:4px}.study-calendar-legend.studied{background:var(--progress-fill)}.study-calendar-legend.today{box-shadow:inset 0 0 0 2px var(--accent-ink);margin-left:8px}.study-calendar-month-count{margin-left:auto}.study-calendar-modal .error-box{margin-top:8px}@media (max-width:520px){.study-calendar-modal{padding:16px 14px}.study-calendar-day{font-size:13px;border-radius:8px}.study-calendar-month-count{margin-left:0;flex-basis:100%}}.round-summary .difficulty-grid.round-grid{grid-template-columns:repeat(2,1fr)}.round-known{margin-top:14px}.round-known summary{cursor:pointer;font-weight:700;font-size:15px;margin-bottom:6px}.round-next-title{font-size:17px;margin:28px 0 12px;text-align:left}.round-options{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:12px;gap:12px;text-align:left}.round-option{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--bg-f7f8fa)}.round-option p{margin:0;font-size:13px;flex:1 1}.round-option>button{align-self:stretch}.round-option .targeted-actions{margin-top:0;padding:0;background:none;border:0;flex-direction:column;align-items:stretch;gap:8px}@media (max-width:700px){.round-options{grid-template-columns:1fr}}.round-summary .difficult-row{padding:9px 0}.round-summary .difficult-row .study-text{margin:0;padding:0}.global-search{margin:0 0 18px;position:relative}.global-search-field{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:0 14px}.global-search-field:focus-within{border-color:var(--accent)}.global-search-field input{flex:1 1;min-width:0;border:0;background:transparent;color:var(--text);padding:12px 0;font-size:16px;outline:none;box-shadow:none}.global-search-field kbd{border:1px solid var(--line);border-radius:6px;padding:1px 7px;color:var(--muted);font-size:12px}.global-search-results{margin-top:8px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px;max-height:min(60vh,520px);overflow:auto;box-shadow:var(--shadow)}.search-group h3{margin:6px 6px 4px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.search-hit{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;background:transparent;border:0;border-radius:10px;padding:8px 10px;color:var(--text);cursor:pointer}.search-hit:focus-visible,.search-hit:hover{background:var(--bg-eef3ff)}.search-hit span{color:var(--text);opacity:.85;font-size:14px}.search-hit b,.search-hit span{overflow-wrap:anywhere}.search-hit small{color:var(--muted);font-size:12px}.search-hit mark{background:var(--bg-fff0b8);color:inherit;border-radius:3px;padding:0 1px}.edit-card.search-target{outline:3px solid var(--accent);outline-offset:3px}.pomodoro{position:relative;display:inline-flex}.pomodoro-island-wrap{justify-content:center;z-index:50}.pomodoro-island{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 16px 6px 11px;border:0;border-radius:999px;background:var(--hx-island);color:var(--hx-island-ink);font-size:14px;line-height:1;cursor:pointer;white-space:nowrap;box-shadow:0 6px 18px var(--hx-shadow);transition:transform .2s ease,box-shadow .2s ease,opacity .15s}.pomodoro-island:hover{transform:scale(1.04);box-shadow:0 10px 24px var(--hx-shadow)}.pomodoro-island:active{transform:scale(.97)}.pomodoro-island-panel button:focus-visible,.pomodoro-island-panel select:focus-visible,.pomodoro-island:focus-visible{outline:3px solid var(--hx-island-accent);outline-offset:2px}.pomodoro-time{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:15px}.pomodoro-phase{font-size:13px}.pomodoro-island:not(.started) .pomodoro-time,.pomodoro-phase{color:var(--hx-island-muted)}.pomodoro-ring{width:20px;height:20px;flex:none;transform:rotate(-90deg)}.pomodoro-ring circle{fill:none;stroke:var(--hx-island-line);stroke-width:3}.pomodoro-ring .pomodoro-ring-fill{stroke:var(--hx-island-accent);stroke-linecap:round;transition:stroke-dasharray .9s linear}.break .pomodoro-ring .pomodoro-ring-fill{stroke:var(--hx-island-warn)}.pomodoro-island.running .pomodoro-ring{animation:pomodoro-breathe 2.4s ease-in-out infinite}@keyframes pomodoro-breathe{50%{opacity:.6}}.pomodoro-island-wrap.open .pomodoro-island{opacity:0;pointer-events:none}.pomodoro-popover.pomodoro-island-panel{position:absolute;top:0;left:50%;right:auto;translate:-50% 0;transform-origin:top center;z-index:60;width:320px;max-width:calc(100vw - 32px);padding:16px 18px 18px;border:0;border-radius:28px;background:var(--hx-island);color:var(--hx-island-ink);box-shadow:0 18px 40px var(--hx-shadow);display:grid;grid-gap:14px;gap:14px;text-align:left;animation:pomodoro-grow .26s cubic-bezier(.2,.9,.3,1.15)}@keyframes pomodoro-grow{0%{transform:scale(.35,.18);opacity:.2;border-radius:999px}to{transform:none;opacity:1}}.pomodoro-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.pomodoro-collapse{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:2px 0;color:inherit;font-size:16px;cursor:pointer}.pomodoro-island-panel .pomodoro-shelf-link{border:0;background:none;padding:4px 0;color:var(--hx-island-accent);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.pomodoro-done{padding:9px 12px;border-radius:14px;background:color-mix(in srgb,var(--hx-island-accent) 18%,transparent);color:var(--hx-island-ink);font-size:13px;font-weight:600}.pomodoro-clock{font-family:var(--hx-display);font-size:46px;font-weight:700;letter-spacing:-.02em;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-bottom:10px;background:linear-gradient(var(--hx-island-accent),var(--hx-island-accent)) 0 100%/var(--pomodoro-progress,0) 4px no-repeat,linear-gradient(var(--hx-island-line),var(--hx-island-line)) 0 100%/100% 4px no-repeat}.pomodoro-island-panel.break .pomodoro-clock{background:linear-gradient(var(--hx-island-warn),var(--hx-island-warn)) 0 100%/var(--pomodoro-progress,0) 4px no-repeat,linear-gradient(var(--hx-island-line),var(--hx-island-line)) 0 100%/100% 4px no-repeat}.pomodoro-actions{display:flex;flex-wrap:wrap;gap:6px}.pomodoro-actions button{flex:1 1 auto;min-height:40px;padding:8px 12px;border:1px solid var(--hx-island-line);border-radius:999px;background:transparent;color:var(--hx-island-ink);font-weight:600;font-size:14px;cursor:pointer}.pomodoro-actions button:hover{background:color-mix(in srgb,var(--hx-island-ink) 10%,transparent)}.pomodoro-actions .pomodoro-main{flex-basis:100%;border:0;background:var(--hx-island-accent);color:#0e2a1f}.pomodoro-actions .pomodoro-main:hover{background:color-mix(in srgb,var(--hx-island-accent) 85%,#fff)}.pomodoro-island-panel.break .pomodoro-main{background:var(--hx-island-warn);color:#2a2108}.pomodoro-settings{display:flex;gap:10px}.pomodoro-settings label{flex:1 1;display:grid;grid-gap:4px;gap:4px;font-size:12px;color:var(--hx-island-muted)}.pomodoro-island-panel select{min-height:36px;padding:6px 10px;border:1px solid var(--hx-island-line);border-radius:12px;background:color-mix(in srgb,var(--hx-island-ink) 8%,var(--hx-island));color:var(--hx-island-ink);font:inherit;font-size:14px}@media (prefers-reduced-motion:reduce){.pomodoro-island,.pomodoro-popover.pomodoro-island-panel,.pomodoro-ring{animation:none;transition:none}}@media (max-width:700px){.pomodoro-phase{display:none}.pomodoro-island{padding:6px 12px 6px 9px;gap:6px}.pomodoro-popover.pomodoro-island-panel{position:fixed;top:10px;left:50%;width:min(340px,calc(100vw - 24px));max-width:none}}.csv-import-modal{width:min(980px,96vw)}.csv-import-options{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:14px 20px 0}.csv-import-options label{display:grid;grid-gap:4px;gap:4px;font-size:13px;color:var(--muted)}.csv-import-options .csv-header-toggle{display:flex;align-items:center;gap:6px;color:var(--text);white-space:nowrap}.csv-import-options .csv-header-toggle input{width:auto;margin:0}.csv-import-summary{padding:10px 20px 0;margin:0;display:flex;flex-wrap:wrap;gap:6px 16px}.csv-import-modal .error-box{margin:10px 20px 0}.csv-preview-table-wrap{padding:12px 20px;overflow:auto;flex:1 1;min-height:120px}.csv-preview-table{width:100%;border-collapse:collapse;font-size:14px}.csv-preview-table td,.csv-preview-table th{border-bottom:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.csv-preview-table th{position:-webkit-sticky;position:sticky;top:0;background:var(--surface);color:var(--muted);font-weight:600}.csv-preview-table td:first-child{color:var(--muted);width:48px}.csv-preview-table td:last-child{white-space:nowrap}.csv-preview-table td:nth-child(2),.csv-preview-table td:nth-child(3){max-width:360px}.csv-row-missing td{background:var(--bg-fff1f1)}.csv-row-duplicate td{background:var(--bg-fff7dc)}.deck-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px;align-items:center}.deck-toolbar .secondary{padding:8px 12px;font-size:13px}.deck-more-wrap{position:relative}.deck-more-menu{top:calc(100% + 6px);right:auto;left:0;z-index:40}.deck-more-menu button:disabled{opacity:.5}.topbar-save-state{font-size:12px;white-space:nowrap}.study-mode-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin:16px 0 8px}.study-mode-tile{display:grid;grid-gap:4px;gap:4px;align-content:start;text-align:left;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--text)}.study-mode-tile b{font-size:14px}.study-mode-tile small{color:var(--muted);font-size:12px;line-height:1.35}.study-mode-tile:hover{border-color:var(--accent)}.study-mode-tile.recommended{background:var(--accent);border-color:var(--accent);color:#fff}.study-mode-tile.recommended small{color:rgba(255,255,255,.88)}.study-mode-tile.recommended:hover{background:var(--accent-dark)}.deck-empty{padding:32px 20px}.deck-empty p{margin:6px 0 16px}.empty-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.card-fields>.field-group,.card-fields>label{align-content:start}.edit-card:not(:focus-within) .image-tools>span,.edit-card:not(:focus-within) .math-shortcut-hint{display:none}@media (max-width:900px){.study-mode-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.study-mode-tile.recommended,.study-mode-tile:last-child:nth-child(2n){grid-column:1/-1}}@media (max-width:700px){.title-input{font-size:24px;text-overflow:ellipsis}.topbar-save-state{display:none}.deck-toolbar .secondary{font-size:12px;padding:7px 10px}}.main-nav{display:flex;align-items:center;gap:6px;font-size:13px}.main-nav .ghost{white-space:nowrap}.user-menu{position:relative;margin-left:6px}.user-menu-button{display:flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:3px 9px 3px 3px;color:var(--muted)}.user-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--bg-eef1ff);color:var(--accent-ink);font-weight:800;font-size:13px}.user-menu-caret{font-size:11px}.user-menu-panel{position:absolute;right:0;top:calc(100% + 8px);width:240px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;z-index:50;display:grid}.user-menu-panel button{border:0;background:transparent;text-align:left;padding:9px 11px;border-radius:10px;color:var(--text);font-weight:600}.user-menu-panel button:hover{background:var(--bg-f3f5fa)}.user-menu-email{padding:6px 11px 8px;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid var(--line);margin-bottom:4px}.nav-mobile-only{display:none}@media (max-width:700px){.nav-primary{display:none}.user-menu-panel .nav-mobile-only,.user-menu-panel div.nav-mobile-only{display:block}}body:has(.concept-map-backdrop) .context-help-anchor,body:has(.concept-map-backdrop) .feedback-launcher,body:has(.concept-map-backdrop) .theme-toggle,body:has(.modal-backdrop) .context-help-anchor,body:has(.modal-backdrop) .feedback-launcher,body:has(.modal-backdrop) .theme-toggle,body:has(.tutor-panel:not(.tutor-panel-hidden)) .context-help-anchor,body:has(.tutor-panel:not(.tutor-panel-hidden)) .feedback-launcher,body:has(.tutor-panel:not(.tutor-panel-hidden)) .theme-toggle{display:none}@media (max-width:700px){.feedback-launcher{width:42px;height:42px;padding:0;display:grid;place-items:center;font-size:17px;right:12px;bottom:12px}.feedback-launcher-text{display:none}.context-help-anchor{right:12px;bottom:62px}.theme-toggle{left:12px;bottom:12px;width:36px;height:36px}.app-shell,.learn-shell{padding-bottom:72px}}.check-group{display:grid;grid-gap:8px;gap:8px;margin-top:14px}.learn-more-wrap{position:relative;display:none}.learn-more-button{font-size:20px;line-height:1;padding:6px 10px}.learn-more-menu{top:calc(100% + 6px)}.learn-more-menu button:disabled{opacity:.5}.study-text.compact{padding:0}@media (max-width:700px){.learn-more-wrap{display:block}}@media (pointer:coarse){.kbd-hint{display:none}}.chat-message .study-text{margin-top:0;text-align:left}.chat-message.chat-error{border-color:var(--ln-f0caca);background:var(--bg-fff0f0);color:var(--danger);white-space:normal}.chat-message.chat-error button{margin-top:8px}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:flex;align-items:center;gap:8px}input[type=checkbox],input[type=radio]{width:auto;flex:none;margin:0}.pill-start{justify-self:start;align-self:start;width:max-content;margin-left:0}.task-count-picker .actions,.task-difficulty .actions{flex-wrap:wrap}.task-setup-card textarea{max-width:100%}.task-setup-card>*{min-width:0}.deck-card-shell .deck-card-main{padding:28px 26px 16px}.deck-card-shell .deck-card-main h2{margin:16px 0 8px;overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}.deck-card-shell .progress-legend{flex-wrap:wrap}.deck-card-shell .progress-rank{overflow:visible}.deck-card-shell .progress{padding:0 26px}@media (max-width:700px){.page-heading{flex-direction:column;gap:14px}}.study-mode-tile.recommended small{color:#fff}.mixed-math-placeholder-overlay{color:var(--muted)!important}.inline-tip{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin:6px 0 2px;padding:9px 36px 9px 12px;border:1px solid var(--ln-e6c45a);background:var(--bg-fff8d9);color:var(--tx-493d14);border-radius:12px;font-size:13px}.inline-tip .ghost{color:var(--tx-493d14);text-decoration:underline;padding:2px 4px}@media (max-width:700px){.learn-top-actions .learn-more-button{display:inline-block}}.math-shortcut-hint,.mixed-math-placeholder-overlay{font-weight:400}.exam-set-button{justify-self:start;margin-top:8px;padding:6px 12px;font-size:13px;border-radius:999px;border:1px dashed var(--line);background:transparent;color:var(--accent-ink,var(--accent));cursor:pointer}.exam-set-button:hover{border-style:solid}.exam-panel{display:grid;grid-gap:8px;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.exam-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.exam-countdown{font-size:13px;font-weight:600}.exam-status{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;background:var(--bg-eef2ff);color:var(--tx-3452b8)}.exam-status-ahead,.exam-status-done,.exam-status-on_track{background:var(--bg-e8f6eb);color:var(--tx-246b35)}.exam-status-exam_today,.exam-status-slightly_behind{background:var(--bg-fff1d8);color:var(--tx-8b5900)}.exam-status-behind{background:var(--bg-fff0f0);color:var(--tx-a23434)}.exam-status-empty,.exam-status-past{background:var(--bg-f0f2f5);color:var(--muted)}.exam-chip{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.exam-forecast{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.exam-forecast>span{display:grid;grid-gap:2px;gap:2px;padding:8px 10px;border-radius:10px;background:var(--bg-f5f7fb)}.exam-forecast small{font-size:12px;color:var(--muted)}.exam-forecast b{font-size:17px}.exam-today{display:grid;grid-gap:4px;gap:4px}.exam-today-label{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--muted)}.exam-today-label b{color:var(--text);font-weight:600}.exam-today-track{height:6px;border-radius:999px;background:var(--progress-track);overflow:hidden}.exam-today-track span{display:block;height:100%;background:var(--progress-fill);border-radius:inherit}.exam-warning{margin:0;padding:8px 10px;border-radius:10px;font-size:13px;background:var(--bg-fff1d8);color:var(--tx-8b5900)}.exam-note{margin:0;font-size:13px;color:var(--muted)}.exam-study{justify-self:stretch;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;padding:8px 12px}.exam-details{font-size:13px;color:var(--muted)}.exam-details summary{cursor:pointer;color:var(--accent-ink,var(--accent));width:max-content;max-width:100%}.exam-details ul{margin:8px 0;padding-left:18px;display:grid;grid-gap:3px;gap:3px;color:var(--text)}.exam-details p{margin:6px 0;line-height:1.45}.exam-details .exam-decks{list-style:none;border-top:1px solid var(--line);padding:8px 0 0}.exam-decks li{display:flex;flex-wrap:wrap;justify-content:space-between;column-gap:10px}.exam-decks li span:first-child{min-width:0;overflow-wrap:anywhere}.exam-decks li span:last-child{color:var(--muted)}.exam-edit{justify-self:start;padding:4px 0;font-size:13px}.exam-form{display:grid;grid-gap:8px;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.exam-form label{display:grid;grid-gap:4px;gap:4px;font-size:13px;color:var(--muted)}.exam-form input,.exam-form select{width:100%;padding:8px 10px;font-size:14px}.exam-form-note{margin:0;font-size:12px;color:var(--muted)}.exam-error{margin:0;font-size:13px;color:var(--danger)}.exam-form-actions{display:flex;flex-wrap:wrap;gap:8px}.exam-form-actions .danger-text{color:var(--danger)}.mc-area{margin-top:16px}.mc-notice{margin-bottom:12px;font-size:13px}.mc-options{display:grid;grid-gap:10px;gap:10px;position:relative}.mc-option{display:grid;grid-template-columns:30px 1fr auto;align-items:center;grid-gap:12px;gap:12px;width:100%;min-height:56px;text-align:left;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:16px;line-height:1.45;font-weight:500}.mc-option:not(:disabled):hover{border-color:var(--accent);background:var(--bg-f5f7ff)}.mc-option:disabled{cursor:default;opacity:1}.mc-key{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:var(--bg-f0f2f6);color:var(--muted);font-size:13px;font-weight:800}.mc-text{min-width:0;overflow-wrap:anywhere}.mc-text .study-text,.mc-text .study-text.compact,.mc-text p{margin:0;padding:0}.mc-mark{font-size:18px;font-weight:800}.mc-option.correct{background:var(--bg-eaf7ed);border-color:var(--ln-bcdcc4);color:var(--tx-246b35)}.mc-option.correct .mc-key{background:var(--tx-246b35);color:var(--surface)}.mc-option.wrong{background:var(--bg-fff3f3);border-color:var(--ln-e7bebe);color:var(--tx-a53b3b)}.mc-option.wrong .mc-key{background:var(--tx-a53b3b);color:var(--surface)}.mc-option.dim{opacity:.55}.mc-option.removed{opacity:.35;text-decoration:line-through}.mc-option-skeleton{min-height:56px;background:linear-gradient(90deg,var(--skeleton-a),var(--skeleton-b),var(--skeleton-a));background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.mc-loading{font-size:13px;text-align:center}.mc-result{margin-top:14px;border-radius:12px;padding:12px 14px;font-weight:700;font-size:14px}.mc-result.right{background:var(--bg-eaf7ed);color:var(--tx-246b35);border:1px solid var(--ln-bcdcc4)}.mc-result.wrong{background:var(--bg-fff3f3);color:var(--tx-a53b3b);border:1px solid var(--ln-e7bebe)}.learn-actions.single{grid-template-columns:1fr}@media (max-width:700px){.mc-option{font-size:15px;min-height:50px;padding:9px 12px;gap:10px}}.ai-edit-modal{padding:22px 24px 0}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.modal-head h2{margin:10px 0 6px}.modal-head p{margin:0;color:var(--muted)}@media(max-width:760px){.ai-edit-modal{width:100%;max-width:100%;padding:16px 16px 0}}.ai-edit-modal:not(:has(.ai-edit-review)){height:auto;padding-bottom:24px}.formula-button{white-space:nowrap}.today-topics{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.today-topic{font-size:11px;font-weight:650;padding:2px 8px;border-radius:999px;background:var(--bg-fff7d6);color:var(--tx-795d00)}.deck-due-pill{margin:10px 26px 0;align-self:flex-start;border:0;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:750;background:var(--bg-eef1ff);color:var(--accent-ink);cursor:pointer}.deck-due-pill:hover{outline:1px solid var(--accent)}.review-focus{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.review-focus.empty{background:var(--bg-f3f5f8)}.exam-results,.exam-setup{display:grid;grid-gap:16px;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.exam-results h1,.exam-results>p,.exam-setup h1,.exam-setup>p{margin:0}.exam-decks-pick{border:1px solid var(--line);border-radius:12px;padding:10px 14px;display:grid;grid-gap:6px;gap:6px}.exam-decks-pick legend{font-weight:700;font-size:13px;padding:0 4px}.exam-decks-pick small{margin-left:auto}.exam-presets{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.exam-presets button{display:grid;grid-gap:2px;gap:2px;text-align:left;padding:12px 14px}.exam-presets small{font-weight:500;opacity:.85}.exam-types{border:1px solid var(--line);border-radius:14px;overflow:hidden}.exam-types-head{gap:10px;background:var(--bg-f5f7fb);font-size:13px}.exam-type-row,.exam-types-head{display:flex;justify-content:space-between;padding:10px 14px}.exam-type-row{align-items:center;gap:12px;border-top:1px solid var(--line)}.exam-type-row .check-row{font-weight:500;align-items:flex-start}.exam-type-row .check-row>span{display:grid;grid-gap:2px;gap:2px}.exam-type-row .check-row small{color:var(--muted);font-size:12px;font-weight:400}.exam-type-row.disabled{opacity:.6}.exam-count{display:flex;align-items:center;gap:6px;font-weight:500}.exam-count input{width:64px;padding:7px 8px}.exam-count small{color:var(--muted);white-space:nowrap}.exam-setup-row{display:grid;grid-template-columns:160px minmax(0,240px);grid-gap:14px;gap:14px}.exam-setup-row select{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--surface);color:var(--text)}.exam-scale-note{margin-top:-8px!important}.exam-quota{font-size:13px;color:var(--muted);background:var(--bg-f5f7fb);border-radius:10px;padding:9px 12px}.exam-quota.warn{background:var(--bg-fff5d8);color:var(--tx-73590d)}.exam-history{display:grid;grid-gap:6px;gap:6px;border-top:1px solid var(--line);padding-top:14px}.exam-history h2{font-size:16px}.exam-history-row{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);text-align:left}.exam-history-row:hover{border-color:var(--accent)}.exam-topbar-title{font-weight:700;color:var(--text)}.exam-taking{display:grid;grid-gap:14px;gap:14px}.exam-bar{position:-webkit-sticky;position:sticky;top:64px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 14px}.exam-clock{display:grid;grid-gap:1px;gap:1px}.exam-clock span{font-size:11px}.exam-clock b{font-size:22px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.exam-clock.low b{color:var(--danger)}.exam-save{font-size:12px}.exam-layout{display:grid;grid-template-columns:200px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.exam-nav{position:-webkit-sticky;position:sticky;top:150px;display:grid;grid-gap:10px;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;font-size:12px}.exam-nav-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:5px;gap:5px}.exam-nav-grid button{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-weight:700;font-size:12px;padding:0;position:relative}.exam-nav-grid button.answered{background:var(--bg-eef1ff);border-color:var(--ln-b7c7f6)}.exam-nav-grid button.flagged:after{content:"";position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:#e0a100}.exam-nav-grid button.current{outline:2px solid var(--accent);outline-offset:1px}.exam-nav-legend{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.exam-nav-legend .dot{width:9px;height:9px;border-radius:3px;display:inline-block;border:1px solid var(--line)}.exam-nav-legend .dot.answered{background:var(--bg-eef1ff)}.exam-nav-legend .dot.flagged{background:#e0a100;border-color:#e0a100;border-radius:50%}.exam-question{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;display:grid;grid-gap:14px;gap:14px;min-height:360px;align-content:start}.exam-question-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.exam-question-head .alpha-pill{margin-left:0}.exam-flag{margin-left:auto}.exam-flag.on{color:#b27613}.exam-instruction{margin:0;color:var(--muted);font-size:13px}.exam-prompt{font-size:1.15rem;font-weight:600;line-height:1.55}.exam-cloze-context{margin:0;color:var(--muted)}.exam-cloze-input{max-width:320px;font-size:16px}.exam-options{display:grid;grid-gap:8px;gap:8px}.exam-option{display:grid;grid-template-columns:auto auto 1fr;align-items:center;grid-gap:10px;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-weight:500;cursor:pointer}.exam-option input{width:auto}.exam-option.selected{border-color:var(--accent);background:var(--bg-eef1ff)}.exam-option-letter{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:var(--bg-f0f2f6);font-weight:800;font-size:12px}.exam-written{display:grid;grid-gap:4px;gap:4px}.exam-written small{justify-self:end}.exam-step{display:flex;justify-content:space-between;gap:10px;margin-top:4px}.exam-paused{display:grid;grid-gap:12px;gap:12px;justify-items:center;text-align:center;padding:60px 10px}.exam-paused p{margin:0}.exam-score{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));grid-gap:10px;gap:10px}.exam-score>div{display:grid;grid-gap:2px;gap:2px;padding:16px;border-radius:14px;background:var(--bg-f5f7fb)}.exam-score b{font-size:1.6rem}.exam-score span{color:var(--muted);font-size:13px}.exam-pending{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:var(--bg-fff5d8)}.exam-pending p{margin:0}.exam-breakdown{display:grid;grid-gap:8px;gap:8px}.exam-breakdown h2,.exam-next h2,.exam-review-list h2{font-size:17px;margin:6px 0 2px}.exam-bar-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(80px,1fr) auto;align-items:center;grid-gap:12px;gap:12px;font-size:14px}.exam-bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-bar-row b{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:13px}.exam-meter{height:8px;border-radius:99px;background:var(--progress-track);overflow:hidden}.exam-meter span{display:block;height:100%;background:var(--progress-fill);border-radius:inherit}.exam-bar-row.weak .exam-meter span{background:#d98b2b}.exam-bar-row.weak>span{font-weight:700}.exam-next{display:grid;grid-gap:10px;gap:10px}.exam-next p{margin:0}.exam-next-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1px solid var(--line);border-radius:12px}.exam-next-row .topic-chips{margin-top:6px}.exam-review-list{display:grid;grid-gap:8px;gap:8px}.exam-review{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.exam-review>summary{display:flex;justify-content:space-between;gap:10px;padding:12px 14px;cursor:pointer;font-weight:650;border-left:4px solid var(--line);border-radius:12px}.exam-review-correct>summary{border-left-color:#2f9e5b}.exam-review-partial>summary{border-left-color:#d9a21b}.exam-review-incorrect>summary{border-left-color:#c94b4b}.exam-review-pending>summary{border-left-color:var(--muted)}.exam-review-body{display:grid;grid-gap:8px;gap:8px;padding:4px 16px 16px}.exam-review-body h4{margin:6px 0 0;font-size:13px}.exam-review-body ul{margin:0;padding-left:20px}.exam-given{padding:10px 12px;border-radius:10px;background:var(--bg-f5f7fb)}.exam-criteria{list-style:none;padding:0!important;display:grid;grid-gap:6px;gap:6px}.exam-criteria li{display:grid;grid-template-columns:1fr auto;grid-gap:2px 10px;gap:2px 10px;padding:8px 10px;border-radius:10px;background:var(--bg-f5f7fb)}.exam-criteria small{grid-column:1/-1;color:var(--muted)}.exam-model summary{cursor:pointer;font-weight:700}.exam-correct-points{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.exam-correct-points input{width:90px;padding:7px 8px}@media (max-width:760px){.exam-results,.exam-setup{padding:20px 16px}.exam-presets{grid-template-columns:1fr}.exam-setup-row{grid-template-columns:1fr 1fr}.exam-layout{grid-template-columns:1fr}.exam-nav{position:static}.exam-nav-grid{grid-template-columns:repeat(auto-fill,minmax(34px,1fr))}.exam-question{padding:18px 16px}.exam-flag{margin-left:0}.exam-bar-row{grid-template-columns:minmax(0,1fr) 70px auto}}.finished-courses{margin-top:22px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:12px 16px}.finished-courses summary{cursor:pointer;font-weight:700;font-size:14px;color:var(--muted)}.finished-course-list{display:grid;grid-gap:10px;gap:10px;margin-top:12px}.finished-course{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:10px;border-top:1px solid var(--line)}.finished-course>div:first-child{display:grid;grid-gap:2px;gap:2px;min-width:140px}.finished-course small{color:var(--muted);font-size:12px}.finished-course-decks{display:flex;flex-wrap:wrap;gap:6px;flex:1 1;min-width:0}.finished-course>button{margin-left:auto;padding:6px 12px;font-size:13px;border-radius:999px}.today-focus{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--accent-ink);margin-right:auto}.today-others{margin-top:10px;border:0;background:none;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;padding:2px 0}.today-others:hover{color:var(--accent-ink);text-decoration:underline}.focus-mark{font-size:.85em}:root{--fs-wood:#b7814f;--fs-wood-dark:#8d5e35;--fs-back:#f1e6d8;--fs-b0:#3759d7;--fs-b1:#b0413e;--fs-b2:#2f8a57;--fs-b3:#d39a26;--fs-b4:#1f8a8a;--fs-b5:#7b4fa8;--fs-b6:#c4632f;--fs-b7:#4f6178;--fs-bx:#b9b2a6;--fs-band:rgba(255,255,255,.38);--fs-ribbon:#e0473f;--fs-green:#4aa66b;--fs-pot:#c46a3e;--fs-metal:#55606f;--fs-gold:#e0b03a;--fs-sea:#5aa6d8;--fs-light:rgba(255,214,102,.45)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--fs-wood:#7a5232;--fs-wood-dark:#5c3c22;--fs-back:#221b16;--fs-b0:#5a78e8;--fs-b1:#c4605c;--fs-b2:#43a46d;--fs-b3:#d8a83e;--fs-b4:#36a3a3;--fs-b5:#9670c2;--fs-b6:#d27a48;--fs-b7:#7487a0;--fs-bx:#7d776d;--fs-band:rgba(255,255,255,.28);--fs-metal:#9aa5b8}}:root[data-theme=dark]{--fs-wood:#7a5232;--fs-wood-dark:#5c3c22;--fs-back:#221b16;--fs-b0:#5a78e8;--fs-b1:#c4605c;--fs-b2:#43a46d;--fs-b3:#d8a83e;--fs-b4:#36a3a3;--fs-b5:#9670c2;--fs-b6:#d27a48;--fs-b7:#7487a0;--fs-bx:#7d776d;--fs-band:rgba(255,255,255,.28);--fs-metal:#9aa5b8}.focus-shelf-modal{width:min(480px,100%)}.focus-shelf{margin:14px 0 0;max-height:min(420px,52vh);overflow:auto;border-radius:12px}.focus-shelf.loading{opacity:.45}.focus-shelf svg{display:block;width:100%;height:auto}.fs-case{fill:var(--fs-wood)}.fs-back{fill:var(--fs-back)}.fs-board,.fs-foot{fill:var(--fs-wood-dark)}.fs-book .fs-band{fill:var(--fs-band)}.fs-book.c0 .fs-cover,.fs-swatch.c0{fill:var(--fs-b0);background:var(--fs-b0)}.fs-book.c1 .fs-cover,.fs-swatch.c1{fill:var(--fs-b1);background:var(--fs-b1)}.fs-book.c2 .fs-cover,.fs-swatch.c2{fill:var(--fs-b2);background:var(--fs-b2)}.fs-book.c3 .fs-cover,.fs-swatch.c3{fill:var(--fs-b3);background:var(--fs-b3)}.fs-book.c4 .fs-cover,.fs-swatch.c4{fill:var(--fs-b4);background:var(--fs-b4)}.fs-book.c5 .fs-cover,.fs-swatch.c5{fill:var(--fs-b5);background:var(--fs-b5)}.fs-book.c6 .fs-cover,.fs-swatch.c6{fill:var(--fs-b6);background:var(--fs-b6)}.fs-book.c7 .fs-cover,.fs-swatch.c7{fill:var(--fs-b7);background:var(--fs-b7)}.fs-book.cx .fs-cover,.fs-swatch.cx{fill:var(--fs-bx);background:var(--fs-bx)}.fs-ribbon{fill:var(--fs-ribbon)}.fs-book{transition:transform .15s}.fs-book:hover .fs-cover{filter:brightness(1.12)}.fs-o-leaf{fill:var(--fs-green)}.fs-o-pot{fill:var(--fs-pot)}.fs-o-cup{fill:var(--fs-metal)}.fs-o-pencil{stroke-width:3;stroke-linecap:round}.fs-o-pencil.a{stroke:var(--fs-b3)}.fs-o-pencil.b{stroke:var(--fs-b1)}.fs-o-pencil.c{stroke:var(--fs-b0)}.fs-o-arm{fill:none;stroke:var(--fs-metal);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.fs-o-base,.fs-o-shade{fill:var(--fs-metal)}.fs-o-light{fill:var(--fs-light)}.fs-o-sea{fill:var(--fs-sea)}.fs-o-land{fill:var(--fs-green)}.fs-o-stand{fill:none;stroke:var(--fs-wood-dark);stroke-width:2.4;stroke-linecap:round}.fs-o-cupgold{fill:var(--fs-gold)}.fs-o-handles{fill:none;stroke:var(--fs-gold);stroke-width:2.2}.focus-shelf-caption{margin:8px 0 0;text-align:center;font-size:13px}.focus-shelf-stats{grid-template-columns:repeat(4,1fr)}.focus-shelf-stats b{font-size:19px;white-space:nowrap}.focus-shelf-subjects{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px;font-size:13px}.focus-shelf-subjects li{display:flex;align-items:center;gap:8px}.fs-subject-name{font-weight:650;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.focus-shelf-subjects .muted{margin-left:auto;white-space:nowrap}.fs-swatch{flex:0 0 auto;width:8px;height:18px;border-radius:2px}@media (max-width:520px){.focus-shelf-stats{grid-template-columns:repeat(2,1fr)}}:root{--learn-set:#b7c9f6}:root[data-theme=dark]{--learn-set:#3b5596}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--learn-set:#3b5596}}.learn-set-progress{display:flex!important;height:10px!important;background:var(--bg-e7eaf0)!important;overflow:hidden;border-radius:999px;margin:0}.learn-set-progress>span{display:block;height:100%;min-width:0;transition:width .25s ease}.learn-set-progress .learn-bar-known{background:#55a873}.learn-set-progress .learn-bar-set{background:var(--learn-set)}.learn-set-progress .learn-bar-seen{display:block;height:100%;background:#e6b44e;transition:width .25s ease}.learn-bar-legend{display:flex;flex-wrap:wrap;gap:2px 6px;justify-content:center;padding:6px 14px 0;font-size:13px;color:var(--tx-5b6678)}.learn-bar-legend button,.learn-bar-legend span{display:inline-flex;align-items:center;gap:6px}.learn-bar-legend button{border:0;background:transparent;padding:3px 9px;border-radius:999px;color:inherit;font:inherit;cursor:pointer}.learn-bar-legend button:hover,.learn-bar-legend button[aria-pressed=true]{background:var(--bg-f0f2f6)}.learn-bar-legend button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.learn-set-progress{transform:translateZ(0);isolation:isolate}.learn-set-progress button{display:block;height:100%;min-width:0;border:0;border-radius:0;padding:0;margin:0;box-shadow:none;cursor:pointer;transition:width .25s ease,filter .15s ease}.learn-set-progress button:hover{filter:brightness(.92)}.learn-set-progress .learn-bar-set{display:flex}.learn-set-progress .learn-bar-later,.learn-set-progress .learn-bar-unseen{flex:1 1 auto;background:transparent}.learn-group-popover{top:120px}.learn-bar-legend i{display:inline-block;width:10px;height:10px;border-radius:3px}:root{--home-soft:#f3f5f8;--home-shadow:0 1px 2px rgba(28,39,60,.04),0 6px 20px rgba(28,39,60,.05);--tone-due-bg:#eef1ff;--tone-due:#3759d7;--tone-exam-bg:#fff4dc;--tone-exam:#a86a00;--tone-hard-bg:#fdecec;--tone-hard:#c24141;--tone-task-bg:#eaf7ee;--tone-task:#2f8a57;--tone-goal-bg:#f1ebfb;--tone-goal:#7b4fa8;--soon-bg:#fff4dc;--soon:#9a6300}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--home-soft:#1c2333;--home-shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.22);--tone-due-bg:#1e2540;--tone-due:#8ea3ff;--tone-exam-bg:#2e2716;--tone-exam:#ecae4a;--tone-hard-bg:#3a2020;--tone-hard:#e18e8e;--tone-task-bg:#1f3a29;--tone-task:#7dc598;--tone-goal-bg:#2a2140;--tone-goal:#b897e0;--soon-bg:#2e2716;--soon:#ecae4a}}:root[data-theme=dark]{--home-soft:#1c2333;--home-shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.22);--tone-due-bg:#1e2540;--tone-due:#8ea3ff;--tone-exam-bg:#2e2716;--tone-exam:#ecae4a;--tone-hard-bg:#3a2020;--tone-hard:#e18e8e;--tone-task-bg:#1f3a29;--tone-task:#7dc598;--tone-goal-bg:#2a2140;--tone-goal:#b897e0;--soon-bg:#2e2716;--soon:#ecae4a}.icon{flex:none;vertical-align:-3px}.card-panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--home-shadow)}.link-button{border:0;background:none;padding:2px 0;color:var(--accent-ink);font-weight:650;font-size:12px;cursor:pointer}.link-button:hover{text-decoration:underline}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.topbar-search{flex:1 1;max-width:440px;margin:0 24px}.topbar .global-search{margin:0}.topbar .global-search-field{border-radius:10px;background:var(--home-soft);padding:0 12px;gap:8px}.topbar .global-search-field input{padding:8px 0;font-size:14px}.topbar .global-search-results{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;margin:0;box-shadow:0 16px 42px rgba(17,24,39,.18)}.home{max-width:1120px;padding-top:32px}.home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.home-head h1{margin:0 0 10px;font-size:26px;letter-spacing:-.02em}.home-chips{display:flex;flex-wrap:wrap;gap:8px}.home-chip{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:13px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:5px 12px;white-space:nowrap;cursor:pointer}.home-chip b{color:var(--text);font-weight:650}.home-chip small{font-size:13px}.home-chip:hover{border-color:var(--accent)}.home-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-chip.streak-chip.done small{color:var(--progress-fill)}.home-chip.exam-chip .icon{color:var(--accent-ink)}.new-deck-menu{position:relative;flex:none}.new-deck-button{display:inline-flex;align-items:center;gap:6px;padding:10px 16px}.home-grid{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);align-items:start}.home-grid,.home-side{display:grid;grid-gap:20px;gap:20px}.today-card{padding:24px}.today-loading{min-height:260px}.today-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.today-top .today-date{text-transform:none;letter-spacing:0;font-weight:600}.today-top .today-focus{margin-left:auto;margin-right:0}.today-hero{display:flex;align-items:center;gap:22px;margin:12px 0 18px}.today-ring{width:76px;height:76px;flex:none;position:relative}.today-ring svg{width:100%;height:100%}.today-ring circle{fill:none;stroke-width:3.2}.today-ring-track{stroke:var(--progress-track)}.today-ring-fill{stroke:var(--accent);stroke-linecap:round}.today-ring.done .today-ring-fill{stroke:var(--progress-fill)}.today-ring>span{position:absolute;inset:0;display:grid;place-items:center;font-weight:750;font-size:14px;white-space:nowrap}.today-ring.done>span{color:var(--progress-fill)}.today-hero-text h2{margin:0 0 6px;font-size:22px;letter-spacing:-.015em}.today-hero-text p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.today-extras{display:flex;flex-wrap:wrap;gap:2px 14px}.today-extras span:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.45;margin-right:7px;vertical-align:2px}.today-cta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--line)}.is-empty .today-cta{border-bottom:0;padding-bottom:0}.today-start{align-items:center;padding:12px 20px;font-size:15px}.today-resume,.today-start{display:inline-flex;gap:8px}.today-resume{align-items:baseline;padding:11px 14px;max-width:100%}.today-resume span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.today-resume small{color:var(--muted);font-size:12px;white-space:nowrap}.today-list{list-style:none;margin:4px 0 0;padding:0}.today-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:11px 2px;border-bottom:1px solid var(--line)}.today-item:last-child{border-bottom:0}.today-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center}.tone-due{background:var(--tone-due-bg);color:var(--tone-due)}.tone-exam{background:var(--tone-exam-bg);color:var(--tone-exam)}.tone-hard{background:var(--tone-hard-bg);color:var(--tone-hard)}.tone-task,.tone-weak{background:var(--tone-task-bg);color:var(--tone-task)}.tone-goal{background:var(--tone-goal-bg);color:var(--tone-goal)}.today-item-text{display:grid;grid-gap:2px;gap:2px;min-width:0}.today-item-text b{font-size:14px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-item-text small{color:var(--muted);font-size:12px}.today-go{border:0;background:none;color:var(--accent-ink);font-weight:650;font-size:14px;padding:6px 8px;border-radius:8px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;cursor:pointer}.today-go:hover{background:var(--tone-due-bg)}.today-foot{display:flex;flex-wrap:wrap;gap:4px 16px}.today-more{border:0;background:none;color:var(--accent-ink);font-weight:650;font-size:13px;padding:8px 2px 0;cursor:pointer}.today-foot .today-others{margin-top:0;padding-top:8px}.side-card{padding:20px}.side-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px}.side-card-head h3{margin:0;font-size:15px}.side-empty{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.exam-item,.exam-list{display:grid}.exam-item{grid-gap:0;gap:0;text-align:left;width:100%;border:0;border-top:1px solid var(--line);background:none;padding:12px 0;color:inherit;font:inherit;cursor:pointer}.exam-item:first-child{border-top:0;padding-top:0}.exam-item:last-child{padding-bottom:0}.exam-item:hover b{color:var(--accent-ink)}.exam-item-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.exam-item-top b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-days{font-size:12px;font-weight:700;color:var(--muted);background:var(--home-soft);border-radius:999px;padding:2px 8px;white-space:nowrap}.exam-days.soon{color:var(--soon);background:var(--soon-bg)}.exam-goal-bar{position:relative;display:block;height:6px;background:var(--progress-track);border-radius:99px;margin:9px 0 6px}.exam-goal-bar i{position:absolute;inset:0 auto 0 0;border-radius:99px;background:var(--progress-fill)}.exam-goal-bar em{position:absolute;top:-3px;width:2px;height:12px;margin-left:-1px;background:var(--text);opacity:.45;border-radius:2px}.exam-item-foot{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--muted)}.exam-state{color:var(--tx-246b35);font-weight:650}.exam-state.behind{color:var(--soon)}.exam-modal{width:min(460px,100%);max-height:92vh;overflow:auto;background:var(--surface);color:var(--text);border-radius:18px;box-shadow:0 25px 70px rgba(17,24,39,.25);padding:20px 22px 18px}.exam-modal .exam-panel{margin-top:6px}.exam-modal-choices{display:grid;grid-gap:8px;gap:8px;margin-top:8px}.exam-modal-choices button{text-align:left}.exam-modal-group{margin:6px 0 0;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.week-days{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;text-align:center}.week-day{display:grid;grid-gap:5px;gap:5px;justify-items:center}.week-day i{box-sizing:border-box;width:28px;height:28px;border-radius:8px;background:var(--home-soft);border:1px solid var(--line);display:grid;place-items:center;color:#fff}.week-day i.on{background:var(--progress-fill);border-color:var(--progress-fill)}.week-day i.now:not(.on){border:2px dashed var(--progress-fill);background:transparent}.week-day i.future{opacity:.6}.week-day small{font-size:11px;color:var(--muted)}.week-streak{display:flex;justify-content:space-between;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.week-streak b{color:var(--text)}.mini-shelf-wrap{display:flex;align-items:flex-end;gap:14px;width:100%;margin-top:14px;padding:12px 14px 10px;background:var(--home-soft);border:0;border-radius:12px;text-align:left;color:inherit;font:inherit;cursor:pointer}.mini-shelf{flex:none}.mini-shelf-board{fill:var(--fs-wood)}.mini-shelf-empty{font-size:20px;opacity:.6}.mini-shelf-text{display:grid;grid-gap:2px;gap:2px;padding-bottom:6px;min-width:0}.mini-shelf-text b{font-size:14px}.mini-shelf-text small{color:var(--muted);font-size:12px}.shelf-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:10px;padding:11px 14px;font-size:14px}.library-section{margin-top:36px}.progress-compact{display:flex;align-items:center;gap:8px}.progress-compact-track{flex:1 1;height:5px;border-radius:99px;background:var(--progress-track);overflow:hidden}.progress-compact-track>span{display:block;height:100%;background:var(--progress-fill);border-radius:inherit}.progress-compact-percent{font-size:12px;color:var(--muted);min-width:32px;text-align:right}.home .finished-courses{margin-top:22px}@media (max-width:1000px){.home-grid{grid-template-columns:1fr}.home-side{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (max-width:700px){.home{padding-top:20px}.home-head{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:16px}.home-head h1{font-size:22px}.home-chips{flex-wrap:nowrap;overflow-x:auto;margin-right:-14px;padding-right:14px;scrollbar-width:none}.new-deck-button{width:100%;justify-content:center}.home-side{grid-template-columns:1fr}.today-card{padding:18px}.today-hero{gap:14px;margin:10px 0 14px}.today-ring{width:62px;height:62px}.today-ring>span{font-size:12px}.today-hero-text h2{font-size:18px}.today-hero-text p{font-size:13px}.today-cta{display:grid}.today-start{width:100%}.today-resume,.today-start{justify-content:center}.today-item{grid-template-columns:30px minmax(0,1fr) auto;gap:10px}.today-icon{width:30px;height:30px}.library-section{margin-top:26px}.home-chip{flex:none}.topbar-search{flex:0 0 auto;margin:0 6px 0 auto;max-width:none}.topbar .global-search{position:static}.topbar .global-search-field{position:relative;width:38px;height:38px;padding:0;justify-content:center;background:transparent;border-color:transparent}.topbar .global-search-field input{position:absolute;inset:0;opacity:0;padding:0;cursor:pointer}.topbar .global-search-field kbd{display:none}.topbar .global-search-field:focus-within{position:absolute;left:12px;right:12px;top:10px;width:auto;height:44px;padding:0 12px;justify-content:flex-start;background:var(--surface);border-color:var(--accent);z-index:30}.topbar .global-search-field:focus-within input{position:static;opacity:1;cursor:text}.topbar .global-search-results{position:absolute;left:12px;right:12px;top:60px}}.learn-dot-known{background:#55a873}.learn-dot-seen{background:#e6b44e}.learn-dot-set{background:var(--learn-set)}.learn-dot-later{background:var(--bg-e7eaf0);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--muted) 55%,transparent)}:root{--bg:#f4f6f1;--surface:#fff;--text:#1b1f1d;--muted:#4c554f;--line:#d9ded5;--accent:#1f6f54;--accent-dark:#17573f;--accent-ink:#17573f;--on-accent:#fff;--progress-fill:#1f6f54;--progress-track:#e3e7df;--streak-bg:#f6e7b8;--starter-bg:#e6efe9;--starter-line:#c5d9cc;--shadow:0 12px 35px rgba(27,31,29,.08);--skeleton-a:#e6eae2;--skeleton-b:#f2f4ef;--home-soft:#eef1ea;--home-shadow:none;--tone-due-bg:#e6efe9;--tone-due:#17573f;--bg-eef1ff:#e6efe9;--bg-f3f5fa:#eef1ea;--bg-f5f7ff:#eef3ef;--bg-eef2ff:#e6efe9;--bg-e7edff:#e1ebe4;--bg-f0f3ff:#e9f0eb;--bg-f4f7ff:#eef3ef;--bg-e9edff:#e1ebe4;--bg-eef3ff:#e6efe9;--bg-eef4ff:#e6efe9;--tx-3759d7:#17573f;--tx-294ed8:#17573f;--tx-3452b8:#17573f;--tx-3454b4:#17573f;--learn-set:#9cc9b2;--hx-track:#e3e7df;--hx-accent-soft:#e6efe9;--hx-warn-soft:#f6e7b8;--hx-warn-ink:#1b1f1d;--hx-island:#1b1f1d;--hx-island-ink:#fff;--hx-island-muted:#c5ccc6;--hx-island-line:#5a625d;--hx-island-accent:#6fd3a8;--hx-island-warn:#f2c14e;--hx-scrim:rgba(27,31,29,.45);--hx-shadow:rgba(27,31,29,.22);--hx-display:"Bricolage Grotesque","Trebuchet MS",sans-serif;--hx-body:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;--hx-mono-font:"IBM Plex Mono",ui-monospace,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121614;--surface:#1b211e;--text:#e9ede8;--muted:#a3ada6;--line:#2e3632;--accent:#46b38a;--accent-dark:#5cc49c;--accent-ink:#7fd3b0;--on-accent:#0b1a14;--progress-fill:#46b38a;--progress-track:#2e3632;--streak-bg:#4a3f1c;--starter-bg:#1f3029;--starter-line:#2e4a3e;--shadow:0 12px 35px rgba(0,0,0,.45);--skeleton-a:#222a26;--skeleton-b:#2a332e;--home-soft:#232a26;--tone-due-bg:#1f3029;--tone-due:#7fd3b0;--bg-eef1ff:#1f3029;--bg-f3f5fa:#232a26;--bg-f5f7ff:#1d2622;--bg-eef2ff:#1f3029;--bg-e7edff:#22352d;--bg-f0f3ff:#1d2924;--bg-f4f7ff:#1d2622;--bg-e9edff:#22352d;--bg-eef3ff:#1f3029;--bg-eef4ff:#1f3029;--tx-3759d7:#7fd3b0;--tx-294ed8:#7fd3b0;--tx-3452b8:#7fd3b0;--tx-3454b4:#7fd3b0;--learn-set:#2f6b52;--hx-track:#2e3632;--hx-accent-soft:#1f3029;--hx-warn-soft:#4a3f1c;--hx-warn-ink:#f3e3b0;--hx-island:#2b3430;--hx-scrim:rgba(0,0,0,.6);--hx-shadow:rgba(0,0,0,.5)}}:root[data-theme=dark]{--bg:#121614;--surface:#1b211e;--text:#e9ede8;--muted:#a3ada6;--line:#2e3632;--accent:#46b38a;--accent-dark:#5cc49c;--accent-ink:#7fd3b0;--on-accent:#0b1a14;--progress-fill:#46b38a;--progress-track:#2e3632;--streak-bg:#4a3f1c;--starter-bg:#1f3029;--starter-line:#2e4a3e;--shadow:0 12px 35px rgba(0,0,0,.45);--skeleton-a:#222a26;--skeleton-b:#2a332e;--home-soft:#232a26;--tone-due-bg:#1f3029;--tone-due:#7fd3b0;--bg-eef1ff:#1f3029;--bg-f3f5fa:#232a26;--bg-f5f7ff:#1d2622;--bg-eef2ff:#1f3029;--bg-e7edff:#22352d;--bg-f0f3ff:#1d2924;--bg-f4f7ff:#1d2622;--bg-e9edff:#22352d;--bg-eef3ff:#1f3029;--bg-eef4ff:#1f3029;--tx-3759d7:#7fd3b0;--tx-294ed8:#7fd3b0;--tx-3452b8:#7fd3b0;--tx-3454b4:#7fd3b0;--learn-set:#2f6b52;--hx-track:#2e3632;--hx-accent-soft:#1f3029;--hx-warn-soft:#4a3f1c;--hx-warn-ink:#f3e3b0;--hx-island:#2b3430;--hx-scrim:rgba(0,0,0,.6);--hx-shadow:rgba(0,0,0,.5)}body,html{font-family:var(--hx-body)}.title-input,h1,h2,h3{font-family:var(--hx-display)}.primary{color:var(--on-accent)}.add-card,.ghost,.primary,.secondary{border-radius:999px}.card-panel{border-radius:20px}.hx-mono{font-family:var(--hx-mono-font);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.hx-muted{color:var(--muted);font-size:14px}.hx-small{font-size:13px}.hx-app{max-width:1100px;margin:0 auto;padding:14px 20px 150px}.hx-app,.hx-main{display:flex;flex-direction:column;gap:18px}.hx-main{min-width:0}.hx-main.home{max-width:none;padding:0}.hx-top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.hx-brand{margin:0;font-size:inherit;flex:none}.hx-logo{display:flex;align-items:center;border:0;background:none;padding:2px 0;color:var(--text);--hx-logo-h:48px}a.hx-logo{text-decoration:none;border-radius:10px;flex:none;line-height:1}.hx-logo .hx-logo-art{display:block;margin:0;padding:0;background:none;border-radius:0;transition:transform .18s ease}.hx-logo img{display:block;height:var(--hx-logo-h);width:auto}.hx-logo .hx-logo-on-dark,:root[data-theme=dark] .hx-logo .hx-logo-on-light{display:none}:root[data-theme=dark] .hx-logo .hx-logo-on-dark{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .hx-logo .hx-logo-on-light{display:none}:root:not([data-theme=light]) .hx-logo .hx-logo-on-dark{display:block}}a.hx-logo:focus-visible .hx-logo-art,a.hx-logo:hover .hx-logo-art{transform:translateY(-3px)}@media (prefers-reduced-motion:reduce){.hx-logo .hx-logo-art{transition:none}}.brand .hx-logo{--hx-logo-h:64px;margin:0;padding:0;background:none;border-radius:0}.hx-top-right{display:flex;align-items:center;gap:10px;flex:none}.hx-top-right .user-menu{margin-left:0}.hx-top-right .user-menu-button{min-height:46px;padding:4px 10px 4px 4px}.hx-top-right .user-avatar{width:36px;height:36px;background:var(--hx-accent-soft)}.hx-island-wrap{position:relative;flex:1 1 320px}.hx-island,.hx-island-wrap{display:flex;justify-content:center}.hx-island{align-items:center;gap:12px;min-height:48px;padding:6px 20px;border-radius:24px;border:0;background:var(--hx-island);color:var(--hx-island-ink);font-size:14px;flex-wrap:wrap;transition:transform .2s}.hx-island:hover{transform:scale(1.03)}.hx-island-loading{width:min(420px,100%);opacity:.35}.hx-dot{width:10px;height:10px;border-radius:50%;background:var(--hx-island-accent)}.hx-sep{width:1px;height:18px;background:var(--hx-island-line)}.hx-ok{color:var(--hx-island-accent)}.hx-warn{color:var(--hx-island-warn);font-weight:600}.hx-island-panel{position:absolute;top:calc(100% + 8px);left:50%;translate:-50% 0;width:min(440px,calc(100vw - 32px));padding:18px 20px;border-radius:26px;background:var(--hx-island);color:var(--hx-island-ink);box-shadow:0 14px 34px var(--hx-shadow);z-index:45;display:flex;flex-direction:column;gap:12px;animation:hx-pop .22s ease-out}.hx-panel-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.hx-sub{color:var(--hx-island-muted);font-size:13px}.hx-days{display:flex;gap:5px;flex:none}.hx-days i{width:18px;height:18px;border-radius:50%;border:1px dashed var(--hx-island-line)}.hx-days i.on{background:var(--hx-island-accent);border:0}.hx-days i.now:not(.on){border:2px solid var(--hx-island-accent)}.hx-panel-link{align-self:flex-start;margin-top:-8px;border:0;background:none;padding:0;color:var(--hx-island-accent);font-weight:600;font-size:13px}.hx-panel-link:hover{text-decoration:underline}.hx-panel-days{flex:none;border:0;background:none;padding:0;color:var(--hx-island-warn);font-weight:600}button.hx-panel-days:hover{text-decoration:underline}.hx-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 20px;border-radius:23px;border:0;background:var(--accent);color:var(--on-accent);font-weight:600;text-align:center;line-height:1.25}.hx-pill:hover{background:var(--accent-dark)}.hx-pill.ghost{background:transparent;color:var(--text);border:1px solid var(--text)}.hx-pill.ghost:hover{background:var(--home-soft)}.hx-pill.small{min-height:44px;font-size:14px}.hx-pill-island{background:var(--hx-island-accent);color:#0e2a1f;min-height:40px}.hx-pill-island:hover{background:#8be0bb}.hx-pill.on{background:transparent;color:var(--text);border:1px solid var(--text)}.hx-linkbtn{background:none;border:0;padding:0 8px;min-height:44px;color:var(--accent-ink);font-weight:600;text-align:left;max-width:100%}.hx-linkbtn:hover{text-decoration:underline}.new-deck-button{white-space:nowrap}.hx-band{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);grid-gap:20px;gap:20px}.hx-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:22px 24px;min-width:0}.hx-today{display:flex;flex-direction:column;gap:6px}.hx-today-head{display:flex;align-items:center;gap:10px;min-height:30px}.hx-focuschip{display:inline-flex;align-items:center;gap:4px;max-width:60%;min-height:28px;padding:0 4px 0 10px;border:0;border-radius:999px;background:var(--hx-accent-soft);color:var(--accent-ink);font:inherit;font-size:13px;font-weight:600}.hx-focuschip>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hx-focuschip button{width:24px;height:24px;border:0;border-radius:50%;background:none;color:var(--muted);font-size:16px;line-height:1;padding:0}.hx-focuschip button:hover{background:var(--surface);color:var(--text)}button.hx-focuschip{padding-right:10px}.hx-today-next{flex:1 1;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:8px 0 4px;min-width:0}.hx-today-next h2{font-family:var(--hx-display);font-size:28px;line-height:1.2;margin:0 0 6px;overflow-wrap:anywhere}.hx-today-next p{margin:0;overflow-wrap:anywhere}.hx-today-next .hx-today-start{margin-top:16px}.hx-today-done{display:flex;align-items:center;gap:14px;padding:6px 0}.hx-today-done>div{display:flex;flex-direction:column;min-width:0}.hx-today-done b{font-family:var(--hx-display);font-size:20px}.hx-today-check{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:var(--hx-accent-soft);color:var(--accent-ink)}.hx-today-more{align-self:flex-start;padding:0;min-height:32px;font-size:14px}.hx-inline-link{border:0;background:none;padding:0;color:var(--accent-ink);font:inherit;font-weight:600;cursor:pointer}.hx-inline-link:hover{text-decoration:underline}.hx-today-start{width:100%;min-height:50px;font-size:16px;font-weight:700}.hx-today-list{display:flex;flex-direction:column;border-top:1px solid var(--hx-track);margin-top:14px}.hx-today-list .hx-today-after{margin:0;padding:12px 0 2px}.hx-today.today-loading{min-height:260px}.hx-col{flex-direction:column;min-width:0}.hx-col,.hx-rowitem{display:flex;gap:12px}.hx-rowitem{align-items:center;padding:8px 0;border-bottom:1px solid var(--hx-track)}.hx-rowitem:last-of-type{border-bottom:0}.hx-rowitem .hx-t{flex:1 1;min-width:0}.hx-rowitem b{display:block;font-weight:600;overflow-wrap:anywhere}.hx-rowitem .hx-muted{display:block}.hx-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.hx-chip{padding:3px 10px;border-radius:999px;background:var(--hx-warn-soft);color:var(--hx-warn-ink);font-size:12px;font-weight:500}.hx-chip.more{background:transparent;border:1px solid var(--muted);color:var(--text);font:inherit;font-size:12px}.hx-chip.calm{background:var(--home-soft);color:var(--text)}.hx-more{align-self:flex-start;padding:0;min-height:36px}.hx-side{display:flex;flex-direction:column;gap:10px}.hx-sec h2,.hx-side h2{font-family:var(--hx-display);font-size:18px;margin:0}.hx-side p{margin:0}.hx-between{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.hx-exam{display:flex;flex-direction:column;gap:10px;border:0;background:none;padding:2px 0;text-align:left;color:inherit;width:100%}.hx-exam:hover b{color:var(--accent-ink)}.hx-date{font-family:var(--hx-mono-font)}.hx-exam-state{color:var(--accent-ink)}.hx-exam-state.behind{color:var(--tx-b27613,#9a6300)}.hx-bar{position:relative;display:block;height:8px;border-radius:4px;background:var(--hx-track)}.hx-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:4px;background:var(--accent)}.hx-bar u{position:absolute;top:-3px;width:2px;height:14px;background:var(--text)}.hx-side hr{border:0;height:1px;background:var(--hx-track);margin:2px 0;width:100%}.hx-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px;text-align:center;font-family:var(--hx-mono-font);font-size:11px;color:var(--muted)}.hx-week i{display:block;height:26px;border-radius:13px;border:1px dashed var(--muted);margin-bottom:4px}.hx-week i.on{background:var(--accent);border:0}.hx-week i.now:not(.on){border:2px solid var(--accent)}.hx-shelf{display:flex;align-items:flex-end;gap:14px;width:100%;padding:10px 12px 8px;border:1px solid var(--line);border-radius:16px;background:var(--fs-back,var(--home-soft));color:var(--text);text-align:left}.hx-shelf:hover{border-color:var(--accent)}.hx-shelf .mini-shelf{flex:none;max-width:60%}.hx-shelf-text{display:grid;grid-gap:2px;gap:2px;padding-bottom:6px}.hx-shelf-text b{font-size:14px}.hx-shelf-text small{color:var(--muted);font-size:12px}.hx-grow{flex:1 1}.home-shell .library-section{margin-top:18px;scroll-margin-top:16px}.folder-tabs-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.folder-tabs{flex:0 1 auto;min-width:0;max-width:100%;display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--surface);border:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.folder-tabs::-webkit-scrollbar{display:none}.folder-tabs button{flex:none;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:0;padding:8px 14px;border-radius:10px;background:none;color:var(--muted);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.folder-tabs button:hover{color:var(--text)}.folder-tabs button.on{background:var(--hx-accent-soft);color:var(--accent-ink)}.folder-add{flex:none;margin-left:auto;min-height:40px;font-size:14px}.folder-head{display:flex;align-items:center;gap:10px;min-height:32px;margin:0 2px 12px;color:var(--muted);font-size:14px;position:relative}.folder-head b{color:var(--text);font-size:16px;font-family:var(--hx-display);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-head.menu-open{z-index:20}.folder-exam-chip{flex:none;border:0;padding:3px 9px;border-radius:999px;background:var(--hx-warn-soft);color:var(--hx-warn-ink);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.deck-tile .deck-menu-wrap,.folder-head .deck-menu-wrap{position:relative;right:auto;top:auto;z-index:auto;flex:none}.deck-tile .deck-menu-button,.folder-head .deck-menu-button{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:1rem}.deck-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.deck-tile{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;min-height:118px;padding:16px 12px 16px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}.deck-tile:hover{border-color:var(--muted);box-shadow:0 6px 16px var(--hx-shadow)}.deck-tile.menu-open{z-index:20;border-color:var(--muted)}.deck-tile-top{display:flex;align-items:flex-start;gap:6px}.deck-tile-top .deck-menu-button{margin:-6px -4px 0 0}.deck-tile-name{flex:1 1;min-width:0;border:0;background:none;padding:0;color:inherit;font:inherit;font-weight:600;line-height:1.3;text-align:left;cursor:pointer;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.deck-tile:hover .deck-tile-name{color:var(--accent-ink)}.deck-tile-progress{margin-top:auto;display:flex;flex-direction:column;gap:6px}.deck-tile-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 8px;font-size:12px;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.deck-tile-meta b{font-weight:600;color:var(--text)}.deck-tile-bar{display:block;height:6px;border-radius:9px;background:var(--hx-track);overflow:hidden}.deck-tile-bar i{display:block;height:100%;border-radius:9px;background:var(--accent)}.deck-tile-empty{margin-top:auto;font-size:13px;color:var(--muted)}.deck-tile-new{flex-direction:row;align-items:center;justify-content:center;gap:6px;border-style:dashed;background:transparent;color:var(--muted);font:inherit;font-weight:600}.deck-tile-new:hover{color:var(--accent-ink);border-color:var(--accent);box-shadow:none}.am-panel .am-more{color:var(--muted)}.folder-dialog-name{display:grid;grid-gap:6px;gap:6px;margin-top:14px;font-size:13px;font-weight:600}.folder-dialog-name input{width:100%}.folder-dialog-note{margin:8px 0 0;font-size:13px}.folder-dialog-decks{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:2px;gap:2px;margin-top:14px;max-height:280px;overflow:auto}.folder-dialog-deck{display:flex;align-items:center;gap:10px;min-width:0;padding:7px 4px;border-radius:8px;font-size:14px;cursor:pointer}.folder-dialog-deck:hover{background:var(--home-soft)}.folder-dialog-deck span{flex:1 1;min-width:0}.folder-dialog-deck small,.folder-dialog-deck span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-dialog-deck small{flex:none;max-width:40%;color:var(--muted);font-size:12px}.folder-dialog .modal-actions{margin-top:16px}.hx-dock{position:fixed;left:0;right:0;bottom:0;padding:0 12px calc(14px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;pointer-events:none;z-index:30}.hx-dock-in{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:12px 16px 8px;background:var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:0 10px 28px var(--hx-shadow);max-width:100%}.hx-dbtn{width:78px;padding:0;border:0;background:none;flex-direction:column;gap:4px;font-size:12px;text-align:center;min-width:0;color:var(--text)}.hx-dbtn,.hx-ic{display:flex;align-items:center}.hx-ic{position:relative;width:60px;height:60px;border-radius:18px;justify-content:center;font-family:var(--hx-display);font-size:21px;font-weight:700;background:var(--bg);border:1px solid var(--line);transition:transform .16s cubic-bezier(.3,1.6,.6,1);transform-origin:bottom center}.hx-dbtn:focus-visible .hx-ic,.hx-dbtn:hover .hx-ic{transform:translateY(-8px) scale(1.18)}.hx-dbtn:focus-visible{outline:0}.hx-dbtn:focus-visible .hx-ic{outline:3px solid var(--accent);outline-offset:2px}.hx-lbl{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hx-dbtn.search .hx-ic{background:var(--hx-island);color:var(--hx-island-ink);border:0}.hx-dbtn.add .hx-ic{background:transparent;border:1px dashed var(--muted)}.hx-dbtn.rec .hx-ic{background:var(--hx-accent-soft);border:0}.hx-dbtn.rec .hx-ic:after{content:"";position:absolute;right:-4px;top:-4px;width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid var(--surface)}.hx-dsep{width:1px;height:60px;background:var(--line);flex:none}.hx-toast{position:fixed;left:50%;translate:-50% 0;bottom:calc(140px + env(safe-area-inset-bottom,0px));background:var(--hx-island);color:var(--hx-island-ink);padding:12px 20px;border-radius:22px;z-index:90;max-width:calc(100% - 32px);animation:hx-pop .2s ease-out}.hx-spot{position:fixed;inset:0;background:var(--hx-scrim);z-index:85;display:flex;justify-content:center;align-items:flex-start;padding:14vh 16px 16px}.hx-spot-box{width:min(660px,100%);background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 60px var(--hx-shadow);overflow:hidden;animation:hx-pop .2s ease-out;display:flex;flex-direction:column;max-height:70vh}.hx-spot-in{display:flex;align-items:center;gap:14px;padding:6px 22px;border-bottom:1px solid var(--line)}.hx-spot-in input{flex:1 1;min-width:0;height:60px;border:0;outline:0;background:transparent;font-size:22px;color:var(--text);padding:0}.hx-spot-in input::placeholder{color:var(--muted)}.hx-spot-list{overflow-y:auto;padding:8px}.hx-grp{padding:10px 14px 4px}.hx-sres{width:100%;gap:12px;padding:8px 14px;border:0;background:none;border-radius:12px;text-align:left;min-height:52px}.hx-m,.hx-sres{display:flex;align-items:center;color:var(--text)}.hx-m{width:36px;height:36px;border-radius:11px;background:var(--bg);border:1px solid var(--line);justify-content:center;font-family:var(--hx-display);font-weight:700;font-size:14px;flex:none}.hx-sres .hx-t{flex:1 1;min-width:0}.hx-sres b{display:block;font-weight:600;overflow-wrap:anywhere}.hx-sres.sel{background:var(--accent)}.hx-sres.sel,.hx-sres.sel .hx-mono,.hx-sres.sel .hx-muted{color:var(--on-accent)}.hx-spot-foot{padding:10px 22px;border-top:1px solid var(--line);display:flex;gap:16px;flex-wrap:wrap}.hx-empty{padding:28px 22px;text-align:center}.hx-more{padding:6px 14px}:root{--hx-pub-soft:#e4edf7;--hx-pub-ink:#1d5687;--hx-pub-line:#bcd2ea}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--hx-pub-soft:#1b2834;--hx-pub-ink:#93c3ec;--hx-pub-line:#2c4256}}:root[data-theme=dark]{--hx-pub-soft:#1b2834;--hx-pub-ink:#93c3ec;--hx-pub-line:#2c4256}.hx-grp-pub{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:10px;padding-top:14px;border-top:1px dashed var(--hx-pub-line)}.hx-grp-pub .hx-mono{display:inline-flex;align-items:center;gap:6px;color:var(--hx-pub-ink)}.hx-grp-pub .hx-muted{font-size:13px}.hx-sres.pub .hx-m{border-color:var(--hx-pub-line)}.hx-sres.pub .hx-m,.hx-sres.pub>.hx-mono{background:var(--hx-pub-soft);color:var(--hx-pub-ink)}.hx-sres.pub>.hx-mono{border:1px solid var(--hx-pub-line);border-radius:999px;padding:2px 9px}.hx-sres.pub.sel>.hx-mono{background:transparent;color:var(--on-accent);border-color:currentColor}@keyframes hx-pop{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}@keyframes hx-rise{0%{transform:translateY(10px);opacity:.4}to{transform:none;opacity:1}}@media (prefers-reduced-motion:reduce){.hx-app *,.hx-dock *,.hx-spot *{animation:none!important;transition:none!important}}body:has(.hx-spot) .context-help-anchor,body:has(.hx-spot) .feedback-launcher,body:has(.hx-spot) .theme-toggle{display:none}@media (max-width:760px){body:has(.hx-dock) .feedback-launcher,body:has(.hx-dock) .theme-toggle{display:none}body:has(.hx-dock) .context-help-anchor,body:has(.hx-dock) .context-help-launcher{bottom:calc(96px + env(safe-area-inset-bottom,0px));right:12px}}@media (max-width:900px){.hx-band{grid-template-columns:minmax(0,1fr)}.deck-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:560px){.hx-today-next h2{font-size:23px}.hx-focuschip{max-width:70%}.deck-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.deck-tile{min-height:104px;padding:14px 10px 14px 14px}.deck-tile-name{font-size:14px}.folder-tabs-row{margin-right:-16px}.folder-tabs{border-radius:14px 0 0 14px;border-right:0}.folder-add{display:none}.hx-app{padding-inline:16px;gap:14px}.hx-logo{--hx-logo-h:42px}.hx-island-wrap{order:3;flex-basis:100%}.hx-island .hx-sep{display:none}.hx-island{gap:4px 10px;padding:6px 16px}.hx-top-right{gap:6px}.hx-card{padding:18px}.hx-dock-in{gap:6px;padding:10px 10px 6px;border-radius:22px}.hx-dbtn{width:48px}.hx-ic{width:46px;height:46px;border-radius:14px;font-size:16px}.hx-lbl{display:none}.hx-dsep{height:46px}.hx-spot{padding-top:8vh}.hx-spot-in input{font-size:18px}}.deck-main{animation:hx-rise .3s ease-out}.hx-back{align-self:flex-start;padding:0;min-height:36px}.hx-deck-head{display:flex;flex-direction:column;gap:8px}.hx-title.title-input{font-size:36px;font-weight:700;line-height:1.15;letter-spacing:-.01em;color:var(--text);width:100%}.deck-page .deck-course{margin:0;flex-wrap:wrap}.deck-page .deck-course input{border-radius:999px}.deck-desc-add{min-height:28px;padding:0 4px;font-size:13px}.deck-description{width:100%;max-width:720px;min-height:0;padding:8px 12px;font-size:14px;line-height:1.45;color:var(--text);resize:vertical;border-radius:10px}.hx-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}.hx-section-label{margin-top:10px}.hx-modes{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px}.hx-mode{--mode:var(--accent);position:relative;overflow:hidden;isolation:isolate;text-align:left;padding:16px 40px 16px 16px;border-radius:18px;background:var(--surface);border:1px solid var(--line);display:grid;grid-template-columns:auto minmax(0,1fr);grid-column-gap:14px;column-gap:14px;grid-row-gap:3px;row-gap:3px;align-content:start;color:var(--text);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease;animation:hx-mode-in .35s ease-out backwards;animation-delay:calc(var(--i,0) * 45ms)}.hx-mode.m0{--mode:var(--fs-b0)}.hx-mode.m1{--mode:var(--fs-b1)}.hx-mode.m2{--mode:var(--fs-b2)}.hx-mode.m3{--mode:var(--fs-b3)}.hx-mode.m4{--mode:var(--fs-b4)}.hx-mode.m5{--mode:var(--fs-b5)}.hx-mode.m6{--mode:var(--fs-b6)}.hx-mode.m7{--mode:var(--fs-b7)}.hx-mode:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--mode) 14%,transparent),transparent 62%);opacity:.7;transition:opacity .2s ease}.hx-mode-ic{grid-row:1/span 2;width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--mode) 16%,var(--surface));color:var(--mode);transition:transform .25s cubic-bezier(.34,1.56,.64,1),background-color .18s ease,color .18s ease}.hx-mode-ic svg{display:block}.hx-mode b{font-weight:600;font-size:16px;align-self:end}.hx-mode small{color:var(--muted);font-size:14px;line-height:1.35}.hx-mode-tag{position:absolute;top:12px;right:14px;font-family:var(--hx-mono-font);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:99px;background:rgba(255,255,255,.2)}.hx-mode-go{position:absolute;right:16px;bottom:14px;font-size:18px;line-height:1;color:var(--mode);opacity:0;transform:translateX(-8px);transition:opacity .18s ease,transform .18s ease}.hx-mode.recommended{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.hx-mode.recommended:before{background:radial-gradient(circle at 100% 0,rgba(255,255,255,.22),transparent 60%);opacity:1}.hx-mode.recommended small{color:var(--on-accent);opacity:.9}.hx-mode.recommended .hx-mode-ic{background:rgba(255,255,255,.2);color:var(--on-accent)}.hx-mode.recommended .hx-mode-go{color:var(--on-accent)}.hx-mode.recommended:has(.hx-mode-tag){padding-top:30px}@keyframes hx-mode-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (hover:hover){.hx-mode:hover{transform:translateY(-3px);border-color:var(--mode);box-shadow:0 12px 26px color-mix(in srgb,var(--mode) 22%,transparent)}.hx-mode:hover:before{opacity:1}.hx-mode:hover .hx-mode-ic{transform:rotate(-8deg) scale(1.12)}.hx-mode:hover .hx-mode-go{opacity:1;transform:none}.hx-mode.recommended:hover{background:var(--accent-dark);border-color:var(--accent-dark)}}.hx-mode:focus-visible{outline:3px solid var(--mode);outline-offset:2px;border-color:var(--mode)}.hx-mode:focus-visible .hx-mode-go{opacity:1;transform:none}.hx-mode.recommended:focus-visible{outline-color:var(--accent)}.hx-mode:active{transform:translateY(0) scale(.97);box-shadow:none;border-color:var(--mode);background:color-mix(in srgb,var(--mode) 12%,var(--surface));transition-duration:.06s}.hx-mode:active .hx-mode-ic{transform:scale(.92)}.hx-mode.recommended:active{background:var(--accent-dark);border-color:var(--accent-dark)}@media (prefers-reduced-motion:reduce){.hx-mode{animation:none}.hx-mode:active,.hx-mode:active .hx-mode-ic,.hx-mode:hover,.hx-mode:hover .hx-mode-ic{transform:none}}.hx-cards-head{margin-top:6px}.hx-cards-head .hx-section-label{margin-top:0}.deck-page .deck-toolbar{margin:0}.deck-page .add-card,.deck-page .edit-card{border-radius:20px}@media (max-width:560px){.hx-title.title-input{font-size:28px}.hx-top-right .topbar-save-state{display:none}}.feedback-launcher{background:var(--hx-island)}.feedback-launcher:hover{background:#000}.hx-shelf .mini-shelf{flex:1 1;min-width:64px;max-width:168px;height:auto}.hx-shelf-text{flex:0 1 auto;min-width:0}.hx-shelf-text b,.hx-shelf-text small{white-space:normal;overflow-wrap:break-word}.hx-spot-in input,.hx-spot-in input:focus{border:0;box-shadow:none;outline:0;border-radius:0}@media (max-width:560px){.new-deck-button.hx-pill{min-height:44px;padding:0 14px}.hx-title.title-input{font-size:24px}}.am-panel{position:fixed;z-index:55;display:flex;flex-direction:column;gap:1px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:6px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 44px var(--hx-shadow,rgba(20,28,24,.18)),0 2px 6px rgba(0,0,0,.06);transform-origin:top right;animation:am-in .14s ease-out}.am-panel.above{transform-origin:bottom right}@keyframes am-in{0%{opacity:0;transform:scale(.97) translateY(-4px)}to{opacity:1;transform:none}}.am-panel.above{animation-name:am-in-up}@keyframes am-in-up{0%{opacity:0;transform:scale(.97) translateY(4px)}to{opacity:1;transform:none}}.am-title{padding:6px 10px 4px;font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.am-item{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--text);font-size:14px;font-weight:600;line-height:1.25;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background-color .12s,transform .08s}.am-item:focus{outline:0}.am-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--home-soft)}@media (hover:hover){.am-item:hover{background:var(--home-soft)}}.am-item:active{background:var(--hx-accent-soft,var(--home-soft));transform:scale(.98)}.am-item:disabled{opacity:.5;cursor:not-allowed;transform:none}.am-item.danger{color:var(--danger)}.am-item.danger:focus-visible{outline-color:var(--danger)}@media (hover:hover){.am-item.danger:hover{background:color-mix(in srgb,var(--danger) 10%,transparent)}}.am-item.danger:active{background:color-mix(in srgb,var(--danger) 16%,transparent)}.am-label{padding:8px 10px 4px;color:var(--muted);font-family:var(--hx-mono-font);text-transform:uppercase;font-size:11px;font-weight:500;letter-spacing:.06em}.am-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px;gap:4px;padding:2px 0 4px}.am-grid .am-item{min-height:38px;padding:7px 10px;background:var(--home-soft);font-size:13.5px}@media (hover:hover){.am-grid .am-item:hover{background:var(--hx-accent-soft,var(--line));color:var(--accent-ink)}}.am-grid .am-item:active{background:var(--accent);color:var(--on-accent)}.am-divider{height:1px;background:var(--line);margin:4px 6px;flex:none}.am-panel .create-row{margin:2px 4px 6px;gap:6px}.am-panel .create-row input{padding:8px 10px;min-width:0}.new-deck-sheet .new-deck-ai{display:grid;grid-gap:2px;gap:2px}.new-deck-sheet .new-deck-ai small{color:var(--muted);font-weight:500;font-size:12.5px}@media (pointer:coarse){.am-grid .am-item,.am-item{min-height:44px}}@media (prefers-reduced-motion:reduce){.am-panel{animation:none}.am-item{transition:none}.am-item:active{transform:none}}.hx-weekcard{position:relative;display:flex;flex-direction:column;gap:10px;margin:-8px -12px;padding:8px 12px 12px;border-radius:16px;transition:background-color .15s,transform .1s;-webkit-tap-highlight-color:transparent}.hx-weekcard.clickable{cursor:pointer}.hx-weekcal{position:static;display:inline-flex;align-items:center;gap:4px;touch-action:manipulation}.hx-weekcal:after{content:"";position:absolute;inset:0;z-index:1;border-radius:16px}.hx-weekcal:focus-visible{outline:0}.hx-weekcal:focus-visible:after{outline:2px solid var(--accent);outline-offset:2px}@media (hover:hover){.hx-weekcard.clickable:hover{background:var(--home-soft)}.hx-weekcard.clickable:hover .hx-weekcal{text-decoration:underline}}.hx-weekcard.clickable:active{background:var(--hx-accent-soft);transform:scale(.99)}@media (prefers-reduced-motion:reduce){.hx-weekcard.clickable:active{transform:none}}.hx-toolbar .secondary{display:inline-flex;align-items:center;gap:6px;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease,color .16s ease}.hx-toolbar .tb-ic{display:inline-block;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}@media (hover:hover){.hx-toolbar .secondary:hover:not(:disabled){transform:translateY(-2px);border-color:var(--accent);background:var(--hx-accent-soft);color:var(--accent-ink);box-shadow:0 6px 16px var(--hx-shadow)}.hx-toolbar .secondary:hover:not(:disabled) .tb-ic{transform:rotate(-10deg) scale(1.2)}}.hx-toolbar .secondary:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.hx-toolbar .secondary:active:not(:disabled){transform:scale(.96);box-shadow:none;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface));transition-duration:.06s}.hx-toolbar .secondary[aria-expanded=true]{border-color:var(--accent);background:var(--hx-accent-soft);color:var(--accent-ink)}@media (prefers-reduced-motion:reduce){.hx-toolbar .secondary:active,.hx-toolbar .secondary:hover,.hx-toolbar .secondary:hover .tb-ic{transform:none}}.learn-island{display:flex;justify-content:center}.learn-topbar>.actions{min-width:0;flex-wrap:nowrap}.learn-topbar .learn-title{text-align:left;min-width:0;padding-left:6px;border-left:1px solid var(--line)}.learn-topbar .learn-title b,.learn-topbar .learn-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar.study-topbar{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:12px;gap:12px}.study-topbar>:last-child{justify-self:end}.topbar-island{display:flex;justify-content:center}@media (max-width:1100px){.learn-topbar .learn-title{display:none}}@media (max-width:700px){.learn-topbar{grid-template-columns:auto auto 1fr;gap:8px;padding:10px 12px}.learn-topbar .hx-logo,.study-topbar .hx-logo{--hx-logo-h:34px}.learn-top-actions{min-width:0}.topbar.study-topbar{padding:0 12px;gap:8px}.learn-topbar .ai-tutor-button{white-space:nowrap}}:root{--map-c0:#7b4fc0;--map-c1:#b46d0c;--map-c2:#1d855a;--map-c3:#2c6acb;--map-c4:#bf3a78;--map-c5:#0f8a8a;--map-c6:#a8452c;--map-c7:#5a6b8c;--map-canvas:#eef1f5;--map-halo:#eef1f5}:root[data-theme=dark]{--map-c0:#a983ea;--map-c1:#e3a53f;--map-c2:#43c08a;--map-c3:#629ff3;--map-c4:#ea6fa8;--map-c5:#3fc4c4;--map-c6:#e5835f;--map-c7:#93a3c2;--map-canvas:#121927;--map-halo:#121927}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--map-c0:#a983ea;--map-c1:#e3a53f;--map-c2:#43c08a;--map-c3:#629ff3;--map-c4:#ea6fa8;--map-c5:#3fc4c4;--map-c6:#e5835f;--map-c7:#93a3c2;--map-canvas:#121927;--map-halo:#121927}}.concept-map-viewport.map-network{overflow:hidden;background:var(--map-canvas);cursor:-webkit-grab;cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.concept-map-viewport.map-network:active{cursor:-webkit-grabbing;cursor:grabbing}.map-world{transform-origin:0 0}.map-world,.map-world-svg{position:absolute;left:0;top:0}.map-world-svg{width:1px;height:1px;overflow:visible;pointer-events:none}.map-world-svg marker path{fill:var(--muted)}.map-hull{fill-opacity:.07;stroke-opacity:.5;stroke-width:1.5}.map-course-link line{stroke:currentColor;stroke-width:3;stroke-opacity:.7}.map-course-link text,.map-link text{font:700 12px/1 system-ui,sans-serif;text-anchor:middle;fill:var(--text);paint-order:stroke;stroke:var(--map-halo);stroke-width:4px;stroke-linejoin:round}.map-link line{stroke:var(--muted);stroke-opacity:.45;stroke-width:1.3}.map-link text{font-size:10.5px;font-weight:650;fill:var(--muted)}.map-link.card_link line{stroke:var(--text);stroke-opacity:.7;stroke-width:1.8}.map-link.card_link text,.map-link.term_relation text{fill:var(--text)}.map-link.ext line{stroke:currentColor;stroke-dasharray:7 5;stroke-opacity:.75;stroke-width:1.6}.map-link.mentions line{stroke-opacity:.28;stroke-width:1.1}.map-link.term_relation line{stroke:currentColor;stroke-width:2.2;stroke-opacity:.85}.map-link.hierarchy line{stroke-opacity:.35}.map-course-link.dimmed,.map-link.dimmed{opacity:.15}.map-network .concept-node.map-node{position:absolute;transform:translate(-50%,-50%);z-index:3;margin:0;cursor:pointer;transition:opacity .15s,box-shadow .15s;box-shadow:none}.map-network .concept-node.map-node:hover{transform:translate(-50%,-50%);box-shadow:0 6px 18px rgba(20,30,50,.16)}.map-network .concept-node.map-node:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.map-network .concept-node.map-node.dimmed{opacity:.18}.map-network .map-node.card{background:var(--surface);color:var(--text);border:1px solid var(--line);border-left:5px solid var(--node-color);border-radius:10px;padding:7px 10px 8px;display:flex;flex-direction:column;gap:2px;text-align:left}.map-network .map-node.card small{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);opacity:1}.map-network .map-node.card .concept-node-label{font-size:12px;line-height:1.25;font-weight:650;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.map-network .map-node.card.selected{border-color:var(--accent);border-left-color:var(--node-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.map-network .map-node.card.focus{background:var(--bg-fff0b8);border-color:#ca8c00;border-left-color:var(--node-color)}.map-network .map-node.concept{background:color-mix(in srgb,var(--node-color) 12%,var(--surface));color:var(--text);border:1.5px solid var(--node-color);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;text-align:center}.map-network .map-node.theme{border-radius:50%;background:color-mix(in srgb,var(--node-color) 18%,var(--surface));border:2px solid var(--node-color);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:10px;font-size:13px;font-weight:750;line-height:1.2;text-align:center}.map-network .map-node.theme small{font-size:10.5px;font-weight:500;color:var(--muted);text-transform:none;letter-spacing:0;opacity:1}.map-network .map-node.term .map-term-label *{white-space:nowrap}.map-network .map-node.theme.selected{box-shadow:0 0 0 4px color-mix(in srgb,var(--node-color) 30%,transparent)}.map-network .map-node.term{border-radius:50%;padding:0;border:0;background:var(--node-color);color:#fff;display:grid;place-items:center;overflow:visible}.map-network .map-node.term .map-term-count{font-size:10px;font-weight:800}.map-network .map-node.term .map-term-label{position:absolute;top:calc(100% + 3px);left:50%;transform:translateX(-50%);white-space:nowrap;width:max-content;font-size:11px;font-weight:700;color:var(--text);text-shadow:0 0 3px var(--map-halo),0 0 3px var(--map-halo),0 0 3px var(--map-halo);pointer-events:none}.map-network .map-node.term.selected{box-shadow:0 0 0 3px color-mix(in srgb,var(--node-color) 35%,transparent)}.map-network .map-course{position:absolute;left:0;top:0;transform:translate(-50%,-50%);z-index:4;border-radius:50%;background:var(--surface);border:3px solid var(--text);color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center;padding:12px;cursor:default}.map-network .map-course small{font-size:9.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.map-network .map-course strong{font-size:14px;line-height:1.2}.map-network .map-course span{font-size:10.5px;color:var(--muted)}.map-hull-title{position:absolute;transform:translate(-50%,-100%);z-index:5;border:0;background:none;font-size:14px;font-weight:800;white-space:nowrap;padding:2px 6px;cursor:pointer;text-shadow:0 0 4px var(--map-halo),0 0 4px var(--map-halo)}.map-hull-title span{opacity:.7;margin-left:3px}.map-legend{position:absolute;left:10px;bottom:10px;display:flex;gap:4px 12px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:6px 9px;font-size:11px;color:var(--muted);pointer-events:none;max-width:calc(100% - 20px)}.map-legend i{display:inline-block;width:20px;margin-right:5px;vertical-align:middle;border-top:2px solid var(--text);opacity:.7}.map-legend i.dashed{border-top-style:dashed;border-color:var(--map-c1)}.map-legend i.dot{width:9px;height:9px;border:0;border-radius:50%;background:var(--map-c1);opacity:1}.map-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}.map-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:650}.map-chip:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--node-color)}.map-rel-list{padding-left:18px;font-size:13px;grid-gap:3px;gap:3px}.map-rel-list,.map-side-links{margin:4px 0 12px;display:grid}.map-side-links{grid-gap:2px;gap:2px}.map-side-link{display:block;width:100%;text-align:left;border:0;background:none;padding:5px 6px;border-radius:7px;color:var(--accent-ink);font-size:13px;font-weight:600}.map-side-link:hover{background:var(--bg-f3f6fa)}.map-side-link .muted{font-weight:500}.map-upgrade-hint{background:var(--bg-fff1d8);color:var(--tx-805c00);border-radius:9px;padding:9px 10px;font-size:12.5px;margin:10px 0}.map-side-close{display:none}@media(max-width:900px){.concept-map-body.has-selection .concept-map-side{display:block;position:absolute;left:0;right:0;bottom:0;max-height:48%;z-index:10;border-left:0;border-top:1px solid var(--line);border-radius:16px 16px 0 0;box-shadow:0 -10px 30px rgba(10,18,35,.2)}.concept-map-body{position:relative}.concept-map-body.has-selection .map-side-close{display:block;position:absolute;right:12px;top:10px;font-size:20px;padding:2px 10px}.concept-map-body.has-selection .map-ai-editor,.concept-map-toolbar .compact-check,.concept-map-toolbar .map-wide-only,.map-legend{display:none}}@media (prefers-reduced-motion:reduce){.map-network .concept-node.map-node{transition:none}}.hx-shelf{cursor:pointer;transition:border-color .15s ease,transform .15s ease}.hx-shelf:active{transform:scale(.99)}.hx-shelf:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.hx-shelf:active{transform:none}}.info-box{background:var(--surface);color:var(--text);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;padding:11px 13px;font-size:14px;margin-bottom:14px}.task-offline-actions{gap:4px;flex-wrap:nowrap}.task-offline-actions .ghost{padding:8px 10px;font-size:13px;white-space:nowrap}@media (max-width:760px){.task-offline-actions{flex-direction:column;align-items:flex-end;gap:0}.task-offline-actions .ghost{padding:2px 4px;font-size:12px}}.getting-started{background:var(--starter-bg);border:1px solid var(--starter-line);border-radius:24px;padding:24px 26px;margin-bottom:22px}.gs-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.getting-started h2{font-size:24px;margin:10px 0 6px;letter-spacing:-.01em}.gs-lead{margin:0;color:var(--muted);line-height:1.55;max-width:68ch}.gs-hide{flex:none}.gs-steps{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.gs-step{display:grid;grid-template-columns:32px 1fr;grid-gap:14px;gap:14px;align-items:start;padding:14px 16px;border-radius:16px;background:var(--surface);border:1px solid var(--line);opacity:.72}.gs-step.current{opacity:1;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.gs-step.done{opacity:1;background:transparent;border-style:dashed}.gs-step.done .gs-body p{display:none}.gs-step.done .gs-body b{color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px}.gs-num{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--line);color:var(--text);font-weight:700;font-size:14px}.gs-step.current .gs-num,.gs-step.done .gs-num{background:var(--accent);color:var(--on-accent,#fff)}.gs-body{min-width:0}.gs-body>b{display:block;font-size:16px;margin-top:5px}.gs-body p{margin:4px 0 0;color:var(--muted);line-height:1.5;font-size:14px}.gs-actions{display:flex;flex-wrap:wrap}.gs-actions,.gs-options{gap:10px;margin-top:12px}.gs-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px}.gs-step:not(.current):not(.replay) .gs-options{display:none}.gs-step.replay{opacity:1}.gs-step.replay.was-done .gs-num{background:var(--accent);color:var(--on-accent,#fff)}.gs-option{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;cursor:pointer;min-width:0}button.gs-option:hover{border-color:var(--accent)}button.gs-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gs-option b{font-size:15px}.gs-option small{color:var(--muted);line-height:1.45;font-size:13px}.gs-option-form{cursor:default}.gs-option-form .create-row{display:flex;gap:8px;width:100%;margin-top:6px}.gs-option-form input{flex:1 1;min-width:0}.gs-foot{margin:14px 0 0;font-size:13px;color:var(--muted)}.gs-foot a{color:var(--accent-ink);font-weight:600}@media (max-width:860px){.gs-options{grid-template-columns:1fr}}@media (max-width:700px){.getting-started{padding:18px}.getting-started h2{font-size:21px}.gs-step{grid-template-columns:28px 1fr;gap:10px;padding:12px}.gs-num{width:28px;height:28px}.gs-actions>button{width:100%}}.first-run-tips .first-run-keys{margin-top:8px;font-size:13px}@media (pointer:coarse){.first-run-tips .first-run-keys{display:none}}.learn-setup .first-run-more{margin-top:6px;border-top:1px solid var(--line);padding-top:12px}.first-run-more>summary{cursor:pointer;color:var(--muted);font-weight:600;font-size:14px;padding:4px 0}.first-run-more>:not(summary),.first-run-more[open]>summary{margin-bottom:12px}.learn-coach{margin:2px 0 10px;text-align:center;font-size:14px;color:var(--accent-ink);font-weight:600}.first-run-next{margin:22px 0 4px;padding:18px 20px;border-radius:16px;background:var(--starter-bg);border:1px solid var(--starter-line);text-align:left}.first-run-next h2{margin:0 0 6px;font-size:18px}.first-run-next p{margin:0 0 8px;color:var(--muted);line-height:1.55}.first-run-next .actions{margin-top:12px}.help-content .help-lead{font-size:17px;color:var(--text);max-width:68ch}.help-steps{list-style:none;counter-reset:step;padding:0;margin:22px 0 8px;display:grid;grid-gap:10px;gap:10px}.help-steps li{counter-increment:step;position:relative;padding:14px 16px 14px 56px;border:1px solid var(--line);border-radius:16px;background:var(--surface);line-height:1.55}.help-steps li:before{content:counter(step);position:absolute;left:16px;top:14px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--on-accent,#fff);font-weight:700;font-size:14px}.help-steps li>b{display:block;margin-bottom:2px}.help-steps li>span{color:var(--muted)}.help-terms{display:grid;grid-template-columns:190px 1fr;grid-gap:10px 18px;gap:10px 18px;margin:12px 0}.help-terms dt{font-weight:700}.help-terms dd{margin:0;color:var(--muted)}@media (max-width:700px){.help-terms{grid-template-columns:1fr;gap:2px}.help-terms dd{margin-bottom:10px}}.context-help-guide{font-weight:600;text-decoration:none;color:var(--accent-ink)}body:has([data-onboarding]) .help-nudge{display:none}@media (max-width:700px){.getting-started.gs-started .gs-lead{display:none}body:has(.learn-shell) .context-help-anchor{display:none}}.help-content .help-replay{margin:-4px 0 0;font-size:14px}.help-replay a{color:var(--accent-ink);font-weight:600}.context-help-modal{max-height:90vh;overflow-y:auto}.context-help-modal .study-material-footer{position:-webkit-sticky;position:sticky;bottom:0;background:var(--surface)}:root{--pg-learn:#2a78d6;--pg-sorting:#eb6834;--pg-mc:#1baf7a;--pg-tasks:#eda100;--pg-exam:#e87ba4;--pg-heat:#2f9e5b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--pg-learn:#3987e5;--pg-sorting:#d95926;--pg-mc:#199e70;--pg-tasks:#c98500;--pg-exam:#d55181;--pg-heat:#3fb97a}}:root[data-theme=dark]{--pg-learn:#3987e5;--pg-sorting:#d95926;--pg-mc:#199e70;--pg-tasks:#c98500;--pg-exam:#d55181;--pg-heat:#3fb97a}.progress-page{display:grid;grid-gap:16px;gap:16px;max-width:880px}.pg-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:0}.pg-scope select{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;padding:8px 10px;font-size:14px;max-width:260px}.pg-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.pg-stats>div{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:grid;grid-gap:2px;gap:2px}.pg-stats b{font-size:24px;font-weight:800;letter-spacing:-.01em}.pg-stats span{color:var(--muted);font-size:13px}.pg-card{padding:20px 22px;display:grid;grid-gap:8px;gap:8px;min-width:0}.pg-card h2{margin:0;font-size:17px}.pg-empty,.pg-note,.pg-sub{margin:0;font-size:13px}.pg-empty{padding:18px 0}.pg-subhead{margin:14px 0 0;font-size:14px}.pg-chart{position:relative;width:100%;overflow:hidden}.pg-chart svg{display:block;overflow:visible}.pg-grid line{stroke:var(--line);stroke-width:1}.pg-axis,.pg-grid text{fill:var(--muted);font-size:11px}.pg-line{fill:none;stroke:var(--accent-ink);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.pg-forecast{fill:none;stroke:var(--accent-ink);stroke-width:2;stroke-dasharray:5 5;opacity:.75}.pg-dot{fill:var(--accent-ink);stroke:var(--surface);stroke-width:2}.pg-value{fill:var(--text);font-size:13px;font-weight:750}.pg-value.muted{fill:var(--muted)}.pg-target line{stroke:var(--muted);stroke-dasharray:2 4}.pg-target text{fill:var(--muted);font-size:11px}.pg-exam line{stroke:var(--muted);stroke-width:1}.pg-exam text{fill:var(--muted);font-size:11px;font-weight:650}.pg-hover line,line.pg-hover{stroke:var(--muted);stroke-width:1;opacity:.6}.pg-hover circle{fill:var(--surface);stroke:var(--accent-ink);stroke-width:2}.pg-hit{fill:transparent;cursor:crosshair}.pg-tooltip{position:absolute;top:4px;width:180px;pointer-events:none;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:8px 10px;display:grid;grid-gap:2px;gap:2px;font-size:12px}.pg-tooltip span{color:var(--muted)}.pg-tooltip b{font-size:15px}.pg-tooltip small{gap:6px;color:var(--text)}.pg-legend,.pg-tooltip small{display:flex;align-items:center}.pg-legend{margin:0;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--muted)}.pg-legend span{display:inline-flex;align-items:center;gap:6px}.pg-swatch{display:inline-block;width:10px;height:10px;border-radius:3px}.pg-line-swatch{display:inline-block;width:18px;border-top:2.5px solid var(--accent-ink);vertical-align:middle}.pg-line-swatch.dashed{border-top-style:dashed;margin-left:8px}.pg-kind-learn{fill:var(--pg-learn);background:var(--pg-learn)}.pg-kind-sorting{fill:var(--pg-sorting);background:var(--pg-sorting)}.pg-kind-multiple_choice{fill:var(--pg-mc);background:var(--pg-mc)}.pg-kind-tasks{fill:var(--pg-tasks);background:var(--pg-tasks)}.pg-kind-exam{fill:var(--pg-exam);background:var(--pg-exam)}.pg-topics{list-style:none;margin:4px 0 0;padding:0;display:grid;grid-gap:2px;gap:2px}.pg-topics li{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(60px,1fr) 46px 44px 150px;align-items:center;grid-gap:12px;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.pg-topics li:first-child{border-top:0}.pg-topic-name{display:grid;min-width:0}.pg-topic-name b{font-size:14px}.pg-topic-name b,.pg-topic-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pg-topic-name small{color:var(--muted);font-size:12px}.pg-topic-bar{height:8px;border-radius:999px;background:var(--progress-track);overflow:hidden}.pg-topic-bar i{display:block;height:100%;background:var(--progress-fill);border-radius:999px}.pg-topic-pct{text-align:right;font-size:14px}.pg-change{font-size:12px;font-weight:700;text-align:right}.pg-change.up{color:var(--tx-27703a)}.pg-change.down{color:var(--tx-a23434)}.pg-change.same{color:var(--muted);font-weight:500}.pg-topics button.small{padding:6px 10px;font-size:13px;justify-self:end}.pg-heatmap-wrap{display:grid;grid-gap:6px;gap:6px;min-width:0}.pg-heatmap-scroll{overflow-x:auto;padding:2px}.pg-heatmap{display:flex;gap:3px;width:max-content}.pg-heat-col{display:grid;grid-template-rows:14px repeat(7,12px);grid-gap:3px;gap:3px}.pg-heat-month{font-size:10px;color:var(--muted);white-space:nowrap;width:12px;overflow:visible}.pg-heat-cell{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--progress-track)}.pg-heat-cell.l1{background:color-mix(in srgb,var(--pg-heat) 35%,var(--surface))}.pg-heat-cell.l2{background:color-mix(in srgb,var(--pg-heat) 60%,var(--surface))}.pg-heat-cell.l3{background:color-mix(in srgb,var(--pg-heat) 82%,var(--surface))}.pg-heat-cell.l4{background:var(--pg-heat)}.pg-heat-cell.future{opacity:.35}.pg-heat-cell.today{box-shadow:0 0 0 1.5px var(--accent-ink)}.pg-heat-legend{margin:0;display:flex;align-items:center;gap:3px;font-size:11px}.pg-heat-legend .pg-heat-cell{width:10px;height:10px}.study-calendar-day.studied.l1{background:color-mix(in srgb,var(--progress-fill) 45%,var(--surface));color:var(--text)}.study-calendar-day.studied.l2{background:color-mix(in srgb,var(--progress-fill) 68%,var(--surface))}.study-calendar-progress{display:block;margin-top:10px;font-size:13px;font-weight:650;color:var(--accent-ink);text-decoration:none}.study-calendar-progress:hover{text-decoration:underline}@media (max-width:640px){.pg-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pg-stats>div{padding:10px}.pg-stats b{font-size:18px}.pg-stats span{font-size:11px}.pg-card{padding:16px 14px}.pg-topics li{grid-template-columns:minmax(0,1fr) 44px 40px;row-gap:6px}.pg-topic-bar{grid-column:1/-1;grid-row:2}.pg-topic-gap,.pg-topics li>button{grid-column:1/-1;grid-row:3;justify-self:start}.pg-topic-gap{display:none}.pg-scope select{max-width:100%}}.explain-subhead{font-size:15px;margin:22px 0 10px}.explain-topics{display:grid;grid-gap:8px;gap:8px}.explain-topic{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:4px 12px;gap:4px 12px;align-items:center;text-align:left;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font-weight:600;cursor:pointer}.explain-topic span{color:var(--muted);font-weight:500;font-size:12px}.explain-topic.on,.explain-topic:hover{border-color:var(--accent)}.explain-topic.on{box-shadow:inset 0 0 0 1px var(--accent);background:var(--starter-bg)}.explain-note{font-size:13px;margin:12px 0 0}.explain-setup .big-action{margin-top:20px}.explain-page{display:grid;grid-gap:14px;gap:14px}.explain-head h1{margin:4px 0 2px}.explain-head p{margin:0}.explain-kicker{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-ink)}.explain-round{display:grid;grid-gap:10px;gap:10px}.explain-bubble{border-radius:16px;padding:14px 16px;line-height:1.5;border:1px solid var(--line)}.explain-bubble.learner{background:var(--starter-bg);border-color:var(--starter-line);margin-left:clamp(0px,8vw,64px)}.explain-bubble.coach{background:var(--surface);margin-right:clamp(0px,8vw,64px)}.explain-bubble.pending{display:flex;align-items:center;gap:10px;color:var(--muted)}.explain-bubble p{margin:6px 0}.explain-coverage{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;font-size:13px;color:var(--muted);margin-bottom:6px}.explain-covered,.explain-hints,.explain-list,.explain-newcards{list-style:none;margin:8px 0;padding:0;display:grid;grid-gap:6px;gap:6px}.explain-covered li{color:var(--tx-27703a)}.explain-hints li{padding-left:12px;border-left:3px solid var(--fs-b3)}.explain-hints li.wrong{border-left-color:var(--danger)}.explain-question{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--line)}.explain-input{display:grid;grid-gap:10px;gap:10px}.explain-input-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.explain-summary{padding:22px}.explain-summary h2{font-size:15px;margin:18px 0 6px}.explain-summary-top{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.explain-summary-top b{font-size:34px}.explain-summary-top span{color:var(--muted)}.explain-list li{padding-left:14px;position:relative}.explain-list li:before{content:"•";position:absolute;left:0;color:var(--muted)}.explain-list.wrong li{display:grid;grid-gap:2px;gap:2px}.explain-list.wrong b{font-weight:600;color:var(--tx-27703a)}.explain-newcards label{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.explain-newcards input{width:auto;margin-top:3px}.explain-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.pg-topic-acts{display:flex;align-items:center;justify-content:flex-end;gap:10px}.pg-explain{font-size:13px;color:var(--accent-ink);text-decoration:none;font-weight:600}.pg-explain:hover{text-decoration:underline}@media (max-width:640px){.pg-topics li>.pg-topic-acts{grid-column:1/-1;grid-row:3;justify-content:flex-start}.explain-bubble.learner{margin-left:0}.explain-bubble.coach{margin-right:0}.explain-input-actions>button{flex:1 1}.explain-actions>button{width:100%}}.explain-newcards span{display:grid;grid-gap:2px;gap:2px}.explain-newcards small{color:var(--muted)}.explain-bubble .study-text{margin:0}.explain-newcards small{font-weight:400;font-size:13px;line-height:1.4}.auth-aside-link{justify-self:end;font-size:13px;margin-top:-6px}.auth-link-button{display:block;text-align:center;text-decoration:none}.auth-card .stack>p{margin:0;line-height:1.5}.public-site{min-height:100vh;display:flex;flex-direction:column}.public-site-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line);background:var(--surface)}.public-site-top .hx-logo img{height:34px;width:auto}.public-site-top nav{display:flex;align-items:center;gap:18px;font-weight:600;font-size:14px}.public-site-top nav a{color:var(--text);text-decoration:none}.public-site-top nav a:hover{color:var(--accent-ink)}.public-site-top nav .public-cta{background:var(--accent);color:#fff;padding:8px 14px;border-radius:10px}.public-site-top nav .public-cta:hover{background:var(--accent-dark);color:#fff}.public-main{width:min(900px,100%);margin:0 auto;padding:40px 24px 64px;flex:1 1}.public-heading{margin-bottom:28px}.public-heading h1{font-size:38px;line-height:1.15;overflow-wrap:anywhere}.public-heading p{line-height:1.55}.public-set-description{font-size:17px;margin:10px 0 4px}.public-breadcrumb{font-size:13px;margin-bottom:14px}.public-deck-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.public-deck-cta a.primary,.public-deck-cta a.secondary{text-decoration:none;display:inline-flex;align-items:center}.public-deck-cta .error-box{flex-basis:100%}.public-set-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.public-set-list a{display:grid;grid-gap:6px;gap:6px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);text-decoration:none}.public-set-list a:hover{border-color:var(--accent)}.public-set-list h2{font-size:18px;overflow-wrap:anywhere}.public-set-list p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.public-set-list small{color:var(--muted);font-size:12px}.public-cards{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px;counter-reset:pc}.public-cards li{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);counter-increment:pc;position:relative}.public-card-q{font-weight:600;min-width:0}.public-cards .study-text,.public-cards .study-text.compact{margin:0;padding:0}.public-card-a{min-width:0;color:var(--text);border-left:1px solid var(--line);padding-left:18px}.public-set-pitch{margin-top:36px;padding:24px;border-radius:16px;background:var(--surface);border:1px solid var(--line)}.public-set-pitch p{line-height:1.6;color:var(--muted)}.public-report{margin-top:28px;font-size:13px}.public-report-form{margin-top:28px;display:grid;grid-gap:10px;gap:10px;max-width:520px}.public-report-form textarea{min-height:90px}.public-report-form .actions{display:flex;gap:8px;justify-content:flex-end}.public-site-footer{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;padding:22px 24px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.public-site-footer a{color:var(--muted)}.landing-hero{padding:32px 0 20px}.landing-hero h1{font-size:46px;line-height:1.1;max-width:760px}.landing-lead{font-size:18px;line-height:1.6;color:var(--muted);max-width:680px;margin:16px 0 0}.landing-features{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:14px;gap:14px;margin-top:40px}.landing-features article{padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.landing-features h2{font-size:18px;margin-bottom:8px}.landing-features p{margin:0;color:var(--muted);line-height:1.55;font-size:14px}@media (max-width:700px){.public-site-top{padding:12px 14px}.public-site-top nav{gap:12px;font-size:13px}.public-site-top nav>a:first-child{display:none}.public-main{padding:28px 14px 48px}.public-heading h1{font-size:30px}.landing-hero h1{font-size:34px}.public-cards li{grid-template-columns:1fr;gap:10px}.public-card-a{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:10px}}.notes-page .note-row{width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color .15s,transform .15s}.notes-page .note-row:hover{border-color:var(--accent);transform:translateY(-1px)}.notes-page .note-open{color:var(--muted);font-weight:700}.note-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.note-title{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);font-size:26px;font-weight:750;padding:6px 2px 10px;margin-bottom:14px}.note-title:focus{outline:none;border-bottom-color:var(--accent)}.note-body .mixed-math-placeholder-overlay{white-space:pre-line;line-height:1.9}.note-body [role=textbox]{min-height:320px;font-size:16px;line-height:1.6}.note-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.note-actions .danger-text{margin-left:auto}.note-hint{font-size:12px}.note-added{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:14px}.note-suggestions{display:grid;grid-gap:12px;gap:12px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}.note-suggestions .builder-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.note-suggestions h2{margin:0 0 4px;font-size:19px}.note-suggestions .builder-section-head p{margin:0}.note-decision{display:flex;gap:8px}.note-decision button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 12px;font-weight:700;cursor:pointer}.note-decision .accept.active{background:var(--bg-eaf7ed);color:var(--tx-246b35);border-color:var(--ln-bcdcc4)}.note-decision .reject.active{background:var(--bg-fff3f3);color:var(--tx-a53b3b);border-color:var(--ln-e7bebe)}.note-suggestion.accepted{border-color:var(--ln-bcdcc4)}.note-suggestion.rejected{opacity:.55}.note-suggestions-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;position:-webkit-sticky;position:sticky;bottom:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:10px 12px;box-shadow:var(--shadow)}.note-suggestions-footer .muted{font-size:12px}@media (max-width:700px){.note-title{font-size:21px}.note-body [role=textbox]{min-height:240px}.note-suggestions-footer{position:static;box-shadow:none}.note-suggestions-footer .primary{width:100%}}