.v2-shell{background:var(--background);flex-direction:column;min-height:100vh;display:flex}.v2-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;flex-wrap:wrap;align-items:center;gap:8px 24px;padding:14px 32px;display:flex;position:sticky;top:0}.v2-brand{letter-spacing:-.01em;align-items:center;gap:10px;min-height:44px;font-size:18px;font-weight:700;display:flex}.v2-nav{flex-wrap:wrap;flex-grow:1;gap:4px;display:flex}.v2-nav a{min-height:40px;color:var(--text-2);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-weight:500;display:flex}.v2-nav a:hover{background:var(--panel);color:var(--foreground)}.v2-nav a[aria-current=page]{background:var(--soft);color:var(--foreground)}.v2-account{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.v2-avatar{border:1px solid var(--border);background:var(--indigo-light);width:36px;height:36px;color:var(--indigo);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.v2-main{flex-grow:1}.v2-page{flex-direction:column;gap:32px;max-width:1120px;margin:0 auto;padding:48px 40px 72px;display:flex}.v2-page-narrow{max-width:820px}.v2-eyebrow{color:var(--indigo);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:600}.v2-title{letter-spacing:-.02em;margin:0;font-size:40px;font-weight:700;line-height:1.15}.v2-subtitle{color:var(--text-2);max-width:640px;margin:0}.v2-h2{letter-spacing:0;margin:0;font-size:18px;font-weight:600}.v2-muted{color:var(--muted);font-size:13px}.v2-stack{flex-direction:column;gap:10px;display:flex}.v2-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:22px;padding:28px;display:flex}.v2-dark{background:var(--foreground);color:var(--background);border-radius:16px;flex-direction:column;gap:12px;padding:24px;display:flex}.v2-dark .v2-muted{color:var(--accent-on-dark)}.v2-columns{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.v2-columns>.v2-col-main{flex:999 560px;min-width:0}.v2-columns>.v2-col-side{flex-direction:column;flex:320px;gap:16px;min-width:0;display:flex}.v2-btn{white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.v2-btn-primary{background:var(--indigo);color:#fff}.v2-btn-primary:hover:not(:disabled){background:var(--indigo-dark)}.v2-btn-light{background:var(--surface);color:var(--foreground)}.v2-btn-outline{background:var(--surface);border-color:var(--border-strong);color:var(--foreground)}.v2-btn-outline:hover:not(:disabled){background:var(--background)}.v2-btn-dashed{background:var(--surface);border:1px dashed var(--border);color:var(--foreground);font-weight:500}.v2-btn-ghost{color:var(--muted);background:0 0;font-weight:500}.v2-btn-ghost:hover:not(:disabled){background:var(--soft);color:var(--foreground)}.v2-btn-block{border-radius:12px;width:100%;min-height:48px}.v2-goal-input{background:var(--surface);border:1.5px solid var(--indigo);border-radius:14px;align-items:center;gap:12px;padding:8px 8px 8px 20px;display:flex}.v2-goal-input input{min-width:0;color:var(--foreground);background:0 0;border:0;outline:none;flex-grow:1;font-size:18px}.v2-chips{flex-wrap:wrap;gap:8px;display:flex}.v2-chip{border:1px solid var(--border-strong);background:var(--surface);min-height:40px;color:var(--foreground);border-radius:999px;padding:0 14px}.v2-chip[aria-pressed=true]{border:1.5px solid var(--indigo);background:var(--indigo-light);color:var(--indigo-dark);font-weight:500}.v2-field{font:inherit;color:var(--foreground);border:1px solid var(--border-strong);background:var(--panel);border-radius:10px;width:100%;padding:12px 14px}textarea.v2-field{resize:vertical;min-height:88px}.v2-label{font-weight:500}.v2-optional{color:var(--muted);font-weight:400}.v2-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.v2-option{text-align:left;border:1px solid var(--border-strong);background:var(--surface);color:var(--foreground);border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.v2-option[aria-pressed=true]{border:1.5px solid var(--indigo);background:var(--indigo-light)}.v2-option strong{font-weight:600}.v2-option span{color:var(--text-2);font-size:13px}.v2-option em{color:var(--indigo-dark);font-size:12px;font-style:normal;font-weight:600}.v2-error{border:1px solid var(--accent);background:var(--lvl-weak-bg);color:#7a3608;border-radius:12px;padding:12px 16px}.v2-note{background:var(--soft);color:var(--text);border-radius:12px;padding:12px 16px;font-size:14px}.v2-source{background:var(--background);border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.v2-source-icon{background:var(--indigo-light);width:36px;height:36px;color:var(--indigo);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.v2-source-body{flex-direction:column;flex-grow:1;min-width:0;display:flex}.v2-source-body strong{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.v2-toggle{align-items:flex-start;gap:12px;display:flex}.v2-toggle input{width:20px;height:20px;accent-color:var(--indigo);margin:12px 0}.v2-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.v2-goal-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.v2-goal-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:10px;min-height:170px;padding:22px;transition:border-color .12s;display:flex}.v2-goal-card:hover{border-color:var(--border)}.v2-goal-card h2{margin:0;font-size:18px;font-weight:600;line-height:1.3}.v2-pill{background:var(--soft);color:var(--text-2);border-radius:999px;align-self:flex-start;padding:4px 10px;font-size:12px;font-weight:600}.v2-pill-indigo{background:var(--indigo-light);color:var(--indigo-dark)}.v2-empty{background:var(--surface);border:1px dashed var(--border);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:48px 32px;display:flex}.v2-dialog-overlay{z-index:50;background:#16181d66;position:fixed;inset:0}.v2-dialog{background:var(--surface);z-index:51;border-radius:16px;flex-direction:column;gap:16px;width:min(520px,100vw - 32px);max-height:calc(100vh - 32px);padding:24px;display:flex;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.v2-sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:720px){.v2-header{flex-wrap:nowrap;gap:8px;padding:10px 16px}.v2-brand{gap:0;font-size:0}.v2-nav a{padding:0 10px}.v2-page{gap:24px;padding:28px 16px 56px}.v2-title{font-size:30px}.v2-card{padding:20px}.v2-options{grid-template-columns:minmax(0,1fr)}.v2-goal-input{flex-wrap:wrap;padding:12px}.v2-goal-input .v2-btn{width:100%}.v2-account span:not(.v2-avatar){display:none}}.v2-placement-bar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px 24px;padding:12px 32px;display:flex}.v2-placement-progress{flex-direction:column;flex:240px;gap:6px;display:flex}.v2-track{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.v2-track span{background:var(--indigo);border-radius:999px;height:100%;transition:width .2s;display:block}.v2-placement-main{max-width:760px;margin:0 auto;padding:56px 32px 72px}.v2-placement-prompt{margin:0;font-size:26px;line-height:1.45}.v2-answer{border:1px solid var(--border-strong);background:var(--surface);min-height:56px;color:var(--foreground);text-align:left;border-radius:12px;align-items:center;gap:14px;padding:10px 16px;font-size:17px;display:flex}.v2-answer:hover:not(:disabled){border-color:var(--indigo)}.v2-answer:disabled{opacity:1;cursor:default}.v2-answer.right{border:2px solid var(--strong);background:var(--lvl-strong-bg)}.v2-answer.key{border:1.5px dashed var(--strong)}.v2-answer.wrong{border:2px solid var(--weak);background:var(--lvl-weak-bg)}.v2-answer-key{border:1px solid var(--border-strong);width:28px;height:28px;color:var(--text-2);background:var(--surface);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.v2-feedback{border-radius:12px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.v2-feedback.right{background:var(--lvl-strong-bg);border:1px solid #b7d0f5}.v2-feedback.wrong{background:var(--lvl-weak-bg);border:1px solid var(--accent)}.v2-placement-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding-top:12px;display:flex}.v2-btn-dark-outline{color:var(--background);background:0 0;border:1px solid #ffffff47}.v2-btn-dark-outline:hover:not(:disabled){background:#ffffff14}.v2-level{border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:600}.v2-level.strong{background:var(--lvl-strong-bg);color:var(--lvl-strong-fg)}.v2-level.shaky{background:var(--lvl-shaky-bg);color:var(--lvl-shaky-fg)}.v2-level.weak{background:var(--lvl-weak-bg);color:var(--lvl-weak-fg)}.v2-level.untested{background:var(--soft);color:var(--text-2)}@media (max-width:720px){.v2-placement-main{padding:32px 16px 56px}.v2-placement-prompt{font-size:21px}.v2-placement-bar{padding:10px 16px}}.v2-level-banner{background:var(--indigo-light);border-radius:14px;flex-direction:column;gap:6px;padding:18px 20px;display:flex}.v2-level-banner strong{color:var(--indigo-dark);font-size:24px;font-weight:700}.v2-scale{flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.v2-scale li{background:var(--surface);color:var(--muted);border:1px solid #d8daf5;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.v2-scale li.below{color:var(--indigo-dark);background:#dfe2fb}.v2-scale li.current{background:var(--indigo);border-color:var(--indigo);color:#fff}.v2-unit-number{background:var(--indigo-light);width:32px;height:32px;color:var(--indigo-dark);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.v2-lesson-row{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:12px 24px;display:flex}.v2-lesson-row.skipped .v2-lesson-title{color:var(--muted);text-decoration:line-through}.v2-lesson-title{font-weight:500}.v2-lesson-title:hover{color:var(--indigo)}.v2-dot{border:2px solid var(--border);background:var(--surface);border-radius:50%;flex-shrink:0;width:12px;height:12px}.v2-dot.done{background:var(--strong);border-color:var(--strong)}.v2-dot.next{border:3px solid var(--indigo)}.v2-dot.skipped{border-style:dashed}.v2-lesson-main{max-width:720px;margin:0 auto;padding:48px 32px 80px}.v2-reading{color:var(--text);margin:0;font-size:18px;line-height:1.7}.v2-idea{background:var(--foreground);color:var(--background);border-radius:16px;flex-direction:column;gap:12px;padding:24px 26px;display:flex}.v2-idea p{margin:0;font-size:20px;line-height:1.5}.v2-idea .v2-example .before,.v2-idea .v2-example .after{color:var(--foreground)}.v2-examples{flex-direction:column;gap:10px;display:flex}.v2-example{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.v2-example .before,.v2-example .after{border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;font-size:15px;display:flex}.v2-example .before{background:var(--lvl-weak-bg)}.v2-example .after{background:var(--lvl-strong-bg)}.v2-example span{letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:700}.v2-example .before span{color:var(--lvl-weak-fg)}.v2-example .after span{color:var(--lvl-strong-fg)}.v2-example p{color:var(--muted);grid-column:1/-1;margin:0;font-size:14px}.v2-source-chip{background:var(--soft);color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 10px;font-size:12px;display:inline-flex;overflow:hidden}.v2-source-chip.book{background:var(--indigo-light);color:var(--indigo-dark)}.v2-practice{background:var(--surface);border:1.5px solid var(--indigo);border-radius:16px;flex-direction:column;gap:20px;padding:24px;display:flex}.v2-exercise{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding-top:16px;display:flex}@media (max-width:720px){.v2-lesson-main{padding:28px 16px 64px}.v2-example{grid-template-columns:minmax(0,1fr)}.v2-lesson-row{flex-wrap:wrap;padding:12px 16px}}.v2-text-link{color:#a9acb4;text-underline-offset:3px;background:0 0;border:0;min-height:36px;padding:0;font-size:13px;text-decoration:underline}.v2-text-link:hover:not(:disabled){color:var(--background)}.v2-outcomes{background:var(--indigo-light);border-radius:16px;flex-direction:column;gap:10px;padding:20px 22px;display:flex}.v2-outcomes ul{flex-direction:column;gap:10px;margin:0;padding-left:20px;display:flex}.v2-outcomes li{flex-direction:column;gap:2px;font-weight:500;display:flex}.v2-outcomes li .v2-muted{font-weight:400}.v2-meter{background:var(--soft);border-radius:99px;height:8px;position:relative;overflow:hidden}.v2-meter span{border-radius:99px;position:absolute;top:0;bottom:0;left:0}.v2-meter .now{background:var(--indigo)}.v2-meter .now.strong{background:var(--strong)}.v2-meter .now.weak{background:var(--weak)}.v2-meter .now.shaky{background:var(--shaky)}.v2-meter .start{z-index:1;background:#0000002e}.v2-tutor{gap:16px;padding:24px;scroll-margin-top:80px}.v2-tabs{border:1px solid var(--border-strong);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.v2-tabs button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0;border-radius:999px;padding:7px 14px;font-size:14px}.v2-tabs button.active{background:var(--indigo);color:var(--on-accent)}.v2-tutor-turns{flex-direction:column;gap:12px;max-height:480px;display:flex;overflow-y:auto}.v2-tutor-turn{border-radius:14px;flex-direction:column;gap:8px;max-width:92%;padding:12px 16px;line-height:1.55;display:flex}.v2-tutor-turn.learner{background:var(--panel);align-self:flex-end}.v2-tutor-turn.tutor{background:var(--panel);align-self:flex-start}.v2-tutor-issues{flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.v2-tutor-issues li span{font-size:13px;display:block}.v2-tutor-improved{border-left:3px solid var(--strong);background:var(--surface);white-space:pre-wrap;margin:0;padding:10px 12px}.v2-btn-small{min-height:32px;padding:4px 12px;font-size:13px}.v2-study-row{color:inherit;flex-direction:row;align-items:center;gap:12px;padding:14px 18px;text-decoration:none}.v2-study-row:hover{border-color:var(--border-strong)}.v2-timestamp{color:var(--indigo);white-space:nowrap;font-size:13px;font-weight:600;text-decoration:none}.v2-timestamp:hover{text-decoration:underline}.v2-steps{flex-direction:column;gap:10px;margin:0;padding-left:22px;line-height:1.55;display:flex}.v2-terms{gap:10px;margin:0;display:grid}.v2-terms div{gap:2px;display:grid}.v2-terms dt{font-weight:600}.v2-terms dd{color:var(--muted,var(--muted));margin:0}.nb-start{background:var(--surface);border:1.5px solid var(--indigo);border-radius:16px;flex-direction:column;gap:12px;padding:16px 16px 14px 20px;display:flex}.nb-start textarea{resize:vertical;font:inherit;color:inherit;background:0 0;border:0;outline:none;font-size:17px}.nb-chip-hint{color:var(--indigo-dark);background:var(--indigo-light);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500}.nb-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.nb-tile{background:var(--surface);border:1px solid var(--border);color:inherit;border-radius:16px;flex-direction:column;gap:10px;padding:20px;text-decoration:none;display:flex}.nb-tile:hover{border-color:var(--border-strong)}.nb-dot{background:var(--indigo);border-radius:4px;flex-shrink:0;width:12px;height:12px}.nb-dot.big{border-radius:9px;width:28px;height:28px}.nb-dot.pink{background:#d14c7a}.nb-dot.green{background:#2f9e6e}.nb-dot.orange{background:#d9792b}.nb-dot.blue{background:#1f5fbf}.nb-dot.teal{background:#138a8a}.nb-shell{flex-direction:column;min-height:calc(100vh - 64px);display:flex}.nb-header{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 20px;display:flex}.nb-title{font:inherit;color:inherit;cursor:text;background:0 0;border:0;border-radius:8px;padding:4px 6px;font-size:18px;font-weight:700}.nb-title:hover{background:var(--soft)}.nb-grid{flex-grow:1;grid-template-columns:270px minmax(0,1fr) 320px;min-height:0;display:grid}.nb-side{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;gap:10px;padding:18px;display:flex;overflow-y:auto}.nb-side.right{border-right:0;border-left:1px solid var(--border)}.nb-side-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.nb-source{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:flex-start;gap:10px;padding:10px;display:flex}.nb-source-title{color:inherit;overflow-wrap:anywhere;font-size:14px;font-weight:500;text-decoration:none}a.nb-source-title:hover{text-decoration:underline}.nb-icon{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.nb-icon:hover:not(:disabled){background:var(--soft);color:var(--foreground)}.nb-icon:disabled{opacity:.35;cursor:default}.nb-icon[aria-pressed=true]{color:var(--indigo)}.nb-add{flex-wrap:wrap;gap:6px;display:flex}.nb-center{background:var(--surface);flex-direction:column;min-width:0;display:flex}.nb-thread{flex-direction:column;flex-grow:1;gap:18px;padding:28px max(24px,50% - 380px);display:flex;overflow-y:auto}.nb-empty{flex-direction:column;gap:10px;margin:auto 0;display:flex}.nb-bubble.learner{background:var(--indigo-light);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:16px 16px 4px;align-self:flex-end;max-width:80%;padding:12px 16px}.nb-luma{flex-direction:column;gap:10px;max-width:92%;line-height:1.6;display:flex}.nb-who{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.nb-who b{color:var(--foreground);font-weight:600}.nb-avatar{background:var(--indigo);border-radius:50%;width:20px;height:20px}.nb-made{border:1px solid var(--border);background:var(--panel);font:inherit;color:inherit;cursor:pointer;border-radius:14px;align-items:center;gap:14px;padding:12px 16px;display:flex}.nb-made:hover:not(:disabled){border-color:var(--indigo)}.nb-made:disabled{cursor:default}.nb-composer{border:1.5px solid var(--indigo);background:var(--surface);border-radius:14px;align-items:flex-end;gap:8px;margin:0 max(24px,50% - 380px);padding:8px 8px 8px 14px;display:flex}.nb-composer textarea{resize:none;min-width:0;font:inherit;color:inherit;background:0 0;border:0;outline:none;flex-grow:1}.nb-hint{margin:6px max(24px,50% - 380px) 16px;font-size:12px}.nb-reader{flex-direction:column;gap:20px;padding:24px max(24px,50% - 390px) 48px;display:flex;overflow-y:auto}.nb-stale{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:flex}.nb-type{background:var(--indigo-light);color:var(--indigo);white-space:nowrap;border-radius:999px;align-self:flex-start;padding:2px 9px;font-size:11px;font-weight:600}.nb-type.cheatsheet,.nb-type.steps{color:#8f4a10;background:#fdf1e4}.nb-type.note{color:#9a430c;background:#fbefe6}.nb-group{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-top:6px;font-size:11px;font-weight:600}.nb-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;align-items:flex-start;gap:4px;padding:6px;display:flex}.nb-card.open{border-color:var(--indigo);box-shadow:0 0 0 1px var(--indigo)}.nb-card-main{text-align:left;min-width:0;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;flex-grow:1;gap:4px;padding:6px 8px;display:flex}.nb-card-main:hover{background:var(--background)}.nb-card-tools{flex-direction:column;display:flex}.nb-make{grid-template-columns:1fr 1fr;gap:6px;display:grid}.nb-make button{border:1px solid var(--border);background:var(--surface);min-height:38px;font:inherit;cursor:pointer;color:inherit;border-radius:9px;font-size:13px}.nb-make button:hover:not(:disabled){border-color:var(--indigo);color:var(--indigo)}.nb-make button:disabled{opacity:.45;cursor:default}.v2-points{flex-direction:column;gap:8px;margin:0;padding-left:20px;line-height:1.6;display:flex}.v2-cheatsheet{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.v2-cheatsheet section{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:16px}.v2-cheatsheet h3{margin:0 0 10px;font-size:15px}.v2-cheatsheet dl{flex-direction:column;gap:8px;margin:0;display:flex}.v2-cheatsheet dt{font-size:13px;font-weight:600}.v2-cheatsheet dd{color:var(--text-2);margin:0;font-size:14px}.v2-steps-big li{margin-bottom:6px}.v2-table-wrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto}.v2-table{border-collapse:collapse;width:100%;font-size:14px}.v2-table th,.v2-table td{border-bottom:1px solid var(--soft);text-align:left;vertical-align:top;padding:10px 12px}.v2-table thead th{background:var(--background);font-weight:600}.v2-table tbody th{color:var(--text-2);font-weight:600}.v2-flashcard{border:1px solid var(--border);background:var(--surface);width:min(520px,100%);min-height:220px;font:inherit;color:inherit;cursor:pointer;text-align:center;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:28px;display:flex;box-shadow:0 4px 16px #1414280f}.v2-flashcard.flipped{background:var(--indigo-light);border-color:var(--accent)}@media (max-width:1100px){.nb-grid{grid-template-columns:1fr}.nb-side,.nb-side.right{border:0;border-bottom:1px solid var(--border)}.nb-center{min-height:70vh}}.v2-md{flex-direction:column;gap:10px;line-height:1.65;display:flex}.v2-md>*{margin:0}.v2-md h3{margin-top:6px;font-size:17px;font-weight:650}.v2-md h4{margin-top:4px;font-size:15px;font-weight:650}.v2-md ul,.v2-md ol{flex-direction:column;gap:5px;padding-left:22px;display:flex}.v2-md code{background:var(--soft);border-radius:5px;padding:1px 5px;font-size:.9em}.v2-md strong{font-weight:650}.v2-report{font-family:var(--font-serif,Georgia, serif);font-size:17px}.v2-report h3,.v2-report h4{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif}.nb-research{border:1px solid var(--border);background:var(--panel);border-radius:14px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.nb-results{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.nb-results label{cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:8px;display:flex}.nb-results label:hover{background:var(--soft)}.nb-results input{width:18px;height:18px;accent-color:var(--indigo);flex-shrink:0;margin-top:2px}.nb-result-n{color:var(--muted);min-width:16px;margin-top:2px;font-size:12px;font-weight:600}.nb-result-title{color:inherit;overflow-wrap:anywhere;font-weight:500;text-decoration:none}.nb-result-title:hover{color:var(--indigo);text-decoration:underline}.nb-source.open{border-color:var(--indigo);box-shadow:0 0 0 1px var(--indigo)}button.nb-source-title{text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:14px;font-weight:500}button.nb-source-title:hover:not(:disabled){color:var(--indigo);text-decoration:underline}button.nb-source-title:disabled{cursor:default;color:var(--muted)}.nb-guide{background:var(--indigo-light);border:1px solid var(--accent);border-radius:16px;flex-direction:column;gap:12px;padding:18px 20px;display:flex}.nb-guide-head{color:var(--indigo-dark);align-items:center;gap:8px;font-weight:600;display:flex}.nb-topic{background:var(--surface);border:1px solid var(--accent);border-radius:999px;padding:4px 12px;font-size:13px}.nb-fulltext{white-space:pre-wrap;color:var(--text-2);background:var(--panel);border:1px solid var(--border);overflow-wrap:anywhere;border-radius:12px;max-height:70vh;padding:16px 18px;font-size:14px;line-height:1.65;overflow-y:auto}.nb-make button{text-align:left;align-items:center;gap:8px;padding:0 10px;display:flex}.nb-make button svg{color:var(--indigo);flex-shrink:0}.nb-type{align-items:center;gap:4px;display:inline-flex}.nb-type.report{background:var(--indigo-light);color:var(--indigo)}.v2-mindmap{padding:8px 2px 16px;overflow-x:auto}.v2-map-branch{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.v2-map-kids{border-left:2px solid var(--accent);flex-direction:column;gap:8px;margin-left:22px;padding-left:16px;display:flex}.v2-map-node{border:1px solid var(--accent);background:var(--surface);font:inherit;color:inherit;cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:8px;padding:7px 12px;font-size:14px;display:inline-flex}.v2-map-node.d0{background:var(--indigo);color:var(--on-accent);border-color:var(--indigo);padding:10px 16px;font-size:16px;font-weight:600}.v2-map-node.d1{background:var(--indigo-light);font-weight:600}.v2-map-node:hover{border-color:var(--indigo)}.v2-map-count{opacity:.75;font-size:12px}.v2-map-note{color:var(--muted);max-width:460px;margin-left:4px;font-size:12px}.v2-doc{flex-direction:column;gap:18px;display:flex}.v2-doc-h{margin:8px 0 0;font-size:19px;font-weight:650}.v2-doc-p{font-family:var(--font-serif,Georgia, serif);font-size:17px}.v2-callout{border:1px solid var(--accent);background:var(--indigo-light);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.v2-callout>b{font-weight:650}.v2-callout .v2-md{font-family:var(--font-serif,Georgia, serif);font-size:16px}.v2-callout.tip{background:var(--panel);border-color:#bfe3cf}.v2-callout.warning{border-color:var(--warn-border);background:#fff4e5}.v2-callout.info{background:var(--panel);border-color:var(--border)}.v2-quote{border-left:3px solid var(--indigo);flex-direction:column;gap:4px;margin:0;padding:4px 0 4px 16px;display:flex}.v2-quote>span{font-family:var(--font-serif,Georgia, serif);font-size:17px;font-style:italic}.v2-term-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.v2-term-cards>div{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:4px;padding:12px;font-size:14px;display:flex}.v2-timeline{border-left:2px solid var(--accent);flex-direction:column;gap:12px;margin:0;padding:0 0 0 16px;list-style:none;display:flex}.v2-timeline li{flex-direction:column;gap:2px;display:flex;position:relative}.v2-timeline li:before{content:"";background:var(--indigo);border-radius:50%;width:10px;height:10px;position:absolute;top:6px;left:-22px}.v2-check{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.v2-check input{width:18px;height:18px;accent-color:var(--indigo);flex-shrink:0;margin-top:2px}.v2-check.done span{color:var(--muted);text-decoration:line-through}.nb-composer{position:relative}.nb-mention-list{background:var(--surface);border:1px solid var(--border);z-index:5;border-radius:12px;flex-direction:column;gap:2px;max-height:280px;margin:0;padding:6px;list-style:none;display:flex;position:absolute;bottom:calc(100% + 6px);left:8px;right:8px;overflow-y:auto;box-shadow:0 8px 24px #1414281f}.nb-mention-list button{width:100%;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.nb-mention-list button.active,.nb-mention-list button:hover{background:var(--indigo-light)}.nb-mention-kind{color:var(--indigo);background:var(--indigo-light);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:600}.nb-mention{background:var(--accent);color:var(--indigo-dark);border-radius:6px;padding:0 4px;font-weight:500}.nb-cite{cursor:pointer;font:inherit;border:0}.nb-grid{grid-template-columns:240px minmax(0,1fr) 360px;min-height:calc(100vh - 64px)}.nb-list-side{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;gap:2px;padding:14px 10px;display:flex;overflow-y:auto}.nb-new{height:40px;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:0 10px;font-weight:500;display:flex}.nb-new span{background:var(--clay);width:22px;height:22px;color:var(--on-accent);border-radius:50%;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.nb-new:hover{background:var(--hover)}.nb-list-label{color:var(--muted);padding:16px 10px 6px;font-size:12px}.nb-list-link{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;border-radius:9px;padding:8px 10px;font-size:14px;display:block;overflow:hidden}.nb-list-link:hover{background:var(--hover)}.nb-list-link.active{background:var(--hover-strong);color:var(--foreground);font-weight:500}.nb-middle{background:var(--background);flex-direction:column;min-width:0;display:flex}.nb-middle .nb-header{background:0 0;border-bottom:0;padding:12px 24px 0}.nb-middle .nb-center{background:0 0;flex-grow:1}.nb-panel{border-left:1px solid var(--border);background:var(--surface);flex-direction:column;min-width:0;display:flex}.nb-panel .nb-side{background:0 0;border:0}.nb-tabs{border-bottom:1px solid var(--soft);gap:4px;padding:10px 12px;display:flex}.nb-tabs button{height:34px;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.nb-tabs button.active{background:var(--soft);color:var(--foreground);font-weight:500}.nb-count{color:var(--faint);font-size:12px}.nb-luma .v2-md{font-family:var(--font-serif);font-size:16.5px;line-height:1.7}.nb-bubble.learner{background:var(--soft);border-radius:16px}.nb-avatar{background:var(--clay)}.nb-composer{border:1px solid var(--border-strong);border-radius:18px;padding:10px 10px 10px 16px;box-shadow:0 2px 10px #1414130d}.nb-composer .v2-btn-primary{border-radius:10px}.nb-start{border:1px solid var(--border-strong);border-radius:18px;box-shadow:0 2px 10px #1414130d}.nb-research,.nb-made,.nb-card,.nb-source{background:var(--surface)}.v2-title,.nb-title{font-family:var(--font-serif);font-weight:500}@media (max-width:1100px){.nb-grid{grid-template-columns:1fr}.nb-list-side{display:none}.nb-panel{border-left:0;border-top:1px solid var(--border)}}.nb-grid{height:calc(100vh - 64px);min-height:0}.nb-middle{min-height:0;overflow:hidden}.nb-middle .nb-center{flex-direction:column;min-height:0;display:flex;overflow:hidden}.nb-reader{min-height:0}.nb-panel{min-height:0;overflow-y:auto}@media (max-width:1100px){.nb-grid{height:auto}.nb-middle,.nb-middle .nb-center{overflow:visible}}@media (min-width:900px){.v2-shell:has(.nb-grid){height:100dvh;min-height:0;overflow:hidden}.v2-main:has(.nb-grid){min-height:0;display:flex;overflow:hidden}.v2-main>.nb-grid{flex:1;width:100%;height:auto}}@media (min-width:900px) and (max-width:1100px){.nb-grid{grid-template-columns:minmax(0,1fr) 320px}.nb-list-side{display:none}.nb-panel{border-left:1px solid var(--border);border-top:0}.nb-middle,.nb-middle .nb-center{overflow:hidden}}.nb-panes{flex-grow:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.nb-panes.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.nb-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.nb-panes.split .nb-pane+.nb-pane{border-left:1px solid var(--border)}.nb-tabbar{border-bottom:1px solid var(--border);background:var(--panel);flex-shrink:0;align-items:flex-end;gap:2px;padding:6px 10px 0;display:flex;overflow-x:auto}.nb-tab{border:1px solid #0000;border-bottom:0;border-radius:9px 9px 0 0;align-items:center;max-width:220px;margin-bottom:-1px;display:flex}.nb-tab.active{background:var(--background);border-color:var(--border)}.nb-pane.focused .nb-tab.active{background:var(--surface)}.nb-tab-main{min-width:0;height:34px;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 6px 0 12px;font-size:13px;display:flex}.nb-tab.active .nb-tab-main{color:var(--foreground);font-weight:500}.nb-tab-main span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nb-tab-close{width:24px;height:24px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;margin-right:4px;display:inline-flex}.nb-tab-close:hover{background:var(--hover);color:var(--foreground)}.nb-tab-tool{width:32px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex}.nb-tab-tool:hover{background:var(--hover);color:var(--foreground)}.nb-pane-body{flex-direction:column;flex-grow:1;min-height:0;display:flex;overflow:hidden}.nb-pane-body>.nb-reader{flex-grow:1;overflow-y:auto}.nb-pane-body>.nb-selectable{flex-grow:1;min-height:0;overflow-y:auto}.nb-panes.split .nb-thread,.nb-panes.split .nb-reader{padding-left:24px;padding-right:24px}.nb-panes.split .nb-composer{margin:0 16px}.nb-panes.split .nb-hint{margin-left:16px;margin-right:16px}.nb-panel-hint{flex-wrap:wrap;align-items:center;gap:4px;margin:auto 16px 14px;font-size:12px;display:flex}.nb-selectable{position:relative}.nb-seltools{background:var(--foreground);z-index:50;border-radius:10px;gap:2px;padding:4px;display:flex;position:fixed;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 6px 18px #14141340}.nb-seltools button{height:30px;color:var(--background);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:13px}.nb-seltools button:hover{background:#2c2c2a}.nb-seltools button.primary{background:var(--clay);color:var(--on-accent)}.nb-toast{background:var(--foreground);color:var(--background);z-index:50;border-radius:10px;padding:10px 16px;font-size:14px;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #14141340}.nb-note{flex-direction:column;gap:14px;display:flex}.nb-note-bar{background:var(--background);z-index:2;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;display:flex;position:sticky;top:-24px}.nb-seg{border:1px solid var(--border-strong);background:var(--surface);border-radius:9px;padding:2px;display:inline-flex}.nb-seg button{height:28px;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 12px;font-size:13px}.nb-seg button.active{background:var(--soft);color:var(--foreground);font-weight:500}.nb-format{flex-wrap:wrap;gap:2px;display:flex}.nb-format button{min-width:30px;height:30px;font:inherit;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 8px;font-size:13px}.nb-format button:hover{background:var(--soft)}.nb-note-text{resize:vertical;border:1px solid var(--border);background:var(--surface);width:100%;min-height:60vh;color:var(--foreground);border-radius:12px;padding:16px 18px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.7}.nb-note-text:focus{outline:2px solid var(--indigo);outline-offset:1px}.nb-note-view{flex-direction:column;gap:14px;min-height:40vh;display:flex}.nb-note-view .v2-md{font-family:var(--font-serif);font-size:16.5px;line-height:1.7}.nb-note-view .v2-md h3,.nb-note-view .v2-md h4{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif}.nb-note-hint{color:var(--ok);background:var(--ok-bg);border:1px solid var(--ok-border);border-radius:10px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.nb-pending{border:1.5px solid var(--ok-line);background:var(--ok-bg);border-radius:12px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.nb-pending-head{color:var(--ok);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.nb-keep{background:var(--ok);color:#fff;height:32px;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:0 14px;font-size:13px;font-weight:500}.nb-undo{border:1px solid var(--ok-line);background:var(--surface);height:32px;font:inherit;cursor:pointer;border-radius:8px;padding:0 14px;font-size:13px}.v2-md-code{background:var(--surface-2,#7f7f7f1a);border:1px solid var(--line,#7f7f7f33);font:13px/1.55 var(--font-mono,ui-monospace, Consolas, monospace);white-space:pre;tab-size:4;border-radius:8px;margin:0;padding:12px 14px;overflow-x:auto}.v2-md-code code{font:inherit;white-space:inherit;background:0 0;padding:0}.v2-md-quote{border-left:3px solid var(--clay);color:var(--text-2);margin:0;padding:2px 0 2px 14px}.v2-md-quote .v2-md{font-style:italic}.v2-md-task{align-items:flex-start;gap:8px;margin-left:-20px;list-style:none;display:flex}.v2-md-task input{accent-color:var(--indigo);margin-top:6px}.nb-dialog-backdrop{z-index:60;background:#14141359;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.nb-dialog{background:var(--background);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:12px;width:min(560px,100%);max-height:calc(100vh - 32px);padding:20px 22px;display:flex;overflow-y:auto;box-shadow:0 18px 50px #14141340}.nb-dialog-label{color:var(--text-2);font-size:13px;font-weight:600}.nb-dialog-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nb-suggest{border:1px solid var(--border);background:var(--surface);height:30px;font:inherit;color:var(--text-2);cursor:pointer;border-radius:999px;padding:0 12px;font-size:13px}.nb-suggest:hover{border-color:var(--clay);color:var(--indigo-dark)}.nb-dialog-pick{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;gap:6px;max-height:200px;margin:0;padding:10px 12px;display:flex;overflow-y:auto}.nb-dialog-pick legend{padding:0 4px}.nb-dialog-pick label{cursor:pointer;align-items:flex-start;gap:8px;font-size:14px;display:flex}.nb-dialog-pick input{width:16px;height:16px;accent-color:var(--indigo);flex-shrink:0;margin-top:3px}.nb-change{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:8px;padding:14px 16px;display:flex}.nb-updating{background:var(--indigo-light);border:1px solid var(--accent);border-radius:12px;align-items:center;gap:8px;margin:0;padding:10px 14px;font-size:14px;display:flex}.nb-composer{align-items:center;padding:8px 8px 8px 16px}.nb-composer textarea{field-sizing:content;align-self:center;min-height:24px;max-height:200px;padding:4px 0;line-height:1.5;overflow-y:auto}.nb-composer .v2-btn{flex-shrink:0;align-self:flex-end}.nb-composer:has(textarea:placeholder-shown) .v2-btn{align-self:center}.lesson-prose{font-family:var(--font-serif);color:var(--text);font-size:18px;line-height:1.75}.lesson-prose.light{color:var(--background)}.lesson-prose.light strong{color:#fff}.lesson-label{letter-spacing:.04em;text-transform:uppercase;color:var(--indigo-dark);font-size:12px;font-weight:600}.lesson-scene{background:var(--panel);border:1px solid var(--border);border-radius:16px;flex-direction:column;gap:10px;padding:20px 22px;display:flex}.lesson-steps{counter-reset:step;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.lesson-steps>li{counter-increment:step;align-items:flex-start;gap:12px;display:flex}.lesson-steps>li:before{content:counter(step);background:var(--indigo-light);width:26px;height:26px;color:var(--indigo-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:3px;font-size:13px;font-weight:600;display:inline-flex}.lesson-steps .v2-md{font-family:var(--font-serif);font-size:17px;line-height:1.7}.lesson-dialogue{flex-direction:column;gap:8px;display:flex}.lesson-line{border-radius:14px;flex-direction:column;gap:2px;max-width:85%;padding:10px 14px;font-size:16px;line-height:1.55;display:flex}.lesson-line b{color:var(--muted);font-size:12px;font-weight:600}.lesson-line.a{background:var(--soft);align-self:flex-start}.lesson-line.b{background:var(--indigo-light);align-self:flex-end}.lesson-tryit{background:var(--surface);border:1.5px dashed #e3b9a5;border-radius:16px;flex-direction:column;gap:10px;padding:18px 20px;display:flex}.lesson-answer{background:var(--ok-bg);border:1px solid var(--ok-border);border-radius:12px;padding:12px 14px}.lesson-recap{background:var(--indigo-light);border:1px solid var(--accent);border-radius:16px;flex-direction:column;gap:8px;padding:18px 20px;display:flex}.lesson-recap ul{flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.lesson-basedon{margin:0;font-size:13px}.lesson-basedon a{text-decoration:underline}.v2-chip.picked{background:var(--indigo-light);border-color:var(--clay);color:var(--indigo-dark);font-weight:500}.display-menu{position:relative}.display-trigger{border:1px solid var(--border-strong);background:var(--surface);height:34px;color:var(--foreground);font-family:var(--font-serif);cursor:pointer;border-radius:9px;align-items:baseline;gap:1px;padding:0 10px;display:inline-flex}.display-trigger:hover,.display-trigger[aria-expanded=true]{border-color:var(--clay)}.display-panel{z-index:70;background:var(--surface);width:290px;color:var(--foreground);border:1px solid var(--border);box-shadow:0 12px 34px var(--shadow), 0 2px 6px var(--shadow);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.display-label{color:var(--text-2);margin-top:4px;font-size:12px;font-weight:600}.display-themes{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.display-themes button{border:1px solid var(--border);background:var(--background);height:38px;color:var(--foreground);font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:0 10px;font-size:13px;display:flex}.display-themes button.active{border-color:var(--clay);box-shadow:0 0 0 1px var(--clay)}.display-swatch{border:1px solid var(--border-strong);border-radius:50%;flex-shrink:0;width:18px;height:18px}.display-seg{border:1px solid var(--border);background:var(--background);border-radius:9px;gap:3px;padding:3px;display:flex}.display-seg button{height:32px;color:var(--foreground);font-family:var(--font-serif);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;font-size:13px}.display-seg button.active{background:var(--soft);font-weight:600}.display-tip{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.5}.lesson-prose,.nb-reader .v2-md,.nb-note-view .v2-md,.nb-luma .v2-md,.v2-reading,.nb-fulltext,.v2-doc-p,.v2-report{font-family:var(--read-font)!important;line-height:var(--read-leading)!important}.lesson-prose{font-size:calc(18px * var(--read-scale))}.lesson-prose.big{font-size:calc(19px * var(--read-scale))}.nb-reader .v2-md,.nb-note-view .v2-md,.v2-doc-p,.v2-report{font-size:calc(17px * var(--read-scale))}.nb-luma .v2-md{font-size:calc(16.5px * var(--read-scale))}.nb-fulltext{font-size:calc(14px * var(--read-scale))}.v2-reading{font-size:calc(18px * var(--read-scale))}:root[data-theme=dark] .v2-btn-primary{color:var(--text)}:root[data-theme=dark] img{opacity:.92}:root[data-theme=dark] .nb-seltools,:root[data-theme=dark] .nb-toast{background:var(--panel);color:var(--text)}:root[data-theme=dark] .nb-seltools button{color:var(--text)}:root[data-theme=dark] .nb-seltools button:hover{background:var(--panel)}.book-page{background:var(--page);min-height:100dvh}@media (max-width:819px){.book-page{min-height:calc(100dvh - 49px)}}.book-bar{z-index:20;background:var(--background);border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:10px 24px;display:flex;position:sticky;top:0}.book-back{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.book-back:hover{color:var(--foreground)}.book-bar-unit{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.book-bar-meta{white-space:nowrap;font-size:12px}.book-progress{background:var(--clay);height:2px;transition:width .15s linear;position:absolute;bottom:-1px;left:0}.book-grid{grid-template-columns:240px minmax(0, calc(760px * var(--read-scale))) 240px;justify-content:center;gap:32px;padding:36px 24px 72px;display:grid}.book-toc{flex-direction:column;align-self:start;gap:2px;display:flex;position:sticky;top:76px}.book-toc-label{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:0 10px 10px;font-size:11px;font-weight:600;line-height:1.5}.book-toc-item{color:var(--text-2);border-radius:9px;align-items:baseline;gap:10px;padding:8px 10px;font-size:14px;line-height:1.4;display:flex}.book-toc-item:hover{background:var(--hover)}.book-toc-item.current{background:var(--hover-strong);color:var(--foreground);font-weight:500}.book-toc-item.skipped{opacity:.55;text-decoration:line-through}.book-toc-item.check{border:1px dashed var(--accent);color:var(--indigo-dark);margin-top:8px}.book-toc-mark{width:16px;color:var(--indigo);flex-shrink:0;font-size:12px}.book-main{flex-direction:column;gap:24px;min-width:0;display:flex}.book-paper{background:var(--paper);border:1px solid var(--paper-edge);box-shadow:0 1px 0 var(--paper-edge), 0 10px 30px var(--shadow);color:var(--text);border-radius:6px;flex-direction:column;gap:26px;padding:60px 68px 48px;display:flex}.book-head{text-align:center;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px;display:flex}.book-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);font-size:12px;font-weight:600}.book-head h1{font-family:var(--font-serif);font-weight:500;font-size:calc(38px * var(--read-scale));color:var(--foreground);margin:0;line-height:1.15}.book-rule{background:var(--accent);width:48px;height:1px;margin-top:6px}.book-block.first .lesson-prose>p:first-child:first-letter{float:left;color:var(--indigo);padding:6px 10px 0 0;font-size:3.4em;font-weight:500;line-height:.85}.book-paper .v2-h2{font-family:var(--font-serif);font-size:calc(23px * var(--read-scale));color:var(--foreground);font-weight:600}.book-paper .lesson-scene{background:0 0;border:0;padding:0}.book-paper .lesson-scene .lesson-label{display:none}.book-paper .lesson-tryit{border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:0 0;border-radius:0;padding:18px 0}.book-paper .lesson-recap{background:var(--indigo-light);border:0;border-radius:6px}.book-paper .v2-table-wrap{border:0;border-radius:0}.book-paper .v2-table thead th{border-bottom:1.5px solid var(--foreground);background:0 0}.book-paper .v2-table th,.book-paper .v2-table td{border-bottom-color:var(--rule)}.book-paper .v2-idea{background:var(--indigo-light);color:var(--text);border-radius:6px}.book-paper .v2-idea .lesson-prose.light{color:var(--text)}.book-paper .v2-idea .v2-eyebrow{color:var(--indigo)!important}.book-practice{border-top:1px solid var(--rule);padding-top:24px}.lesson-basedon{border-top:1px solid var(--rule);color:var(--faint);padding-top:14px}.book-pager{justify-content:space-between;gap:16px;margin-top:4px;display:flex}.book-pager a,.book-pager button{max-width:48%;font:inherit;color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;gap:2px;padding:0;font-size:14px;display:flex}.book-pager span{color:var(--faint);font-size:12px}.book-pager .next{text-align:right;color:var(--foreground);align-items:flex-end;font-weight:500}.book-pager .next span{font-weight:400}.book-pager a:hover{color:var(--indigo)}.book-margin{flex-direction:column;align-self:start;gap:18px;padding-top:220px;display:flex;position:sticky;top:76px}.book-note{border-left:2px solid var(--clay);color:var(--text-2);flex-direction:column;gap:4px;padding:2px 0 2px 14px;font-size:14px;display:flex}.book-note>span{letter-spacing:.08em;text-transform:uppercase;color:var(--indigo);font-size:11px;font-weight:600}.book-note .v2-md{font-family:var(--read-font);font-size:calc(15.5px * var(--read-scale));line-height:1.55}@media (min-width:1300px){.book-block.in-margin{display:none}}@media (max-width:1299px){.book-grid{grid-template-columns:220px minmax(0, calc(760px * var(--read-scale)))}.book-margin{display:none}}@media (max-width:960px){.book-grid{grid-template-columns:minmax(0,1fr);padding:16px 12px 48px}.book-toc{position:static}.book-paper{padding:32px 22px}.book-bar-unit{display:none}}.unit-check-row{background:var(--panel)}.unit-check-mark{color:var(--indigo);text-align:center;width:12px}.check-grid{grid-template-columns:minmax(0,720px) 300px;justify-content:center;gap:32px;padding:36px 24px 72px;display:grid}.check-paper{gap:20px}.check-intro{font-family:var(--font-serif);color:var(--muted);margin:0;font-size:17px}.check-from{color:var(--indigo-dark);background:var(--indigo-light);border-radius:999px;align-self:flex-start;padding:3px 10px;font-size:12px;font-weight:500}.check-prompt{font-family:var(--read-font);font-size:calc(21px * var(--read-scale));color:var(--foreground);margin:0;line-height:1.55}.check-side{flex-direction:column;align-self:start;gap:14px;display:flex;position:sticky;top:76px}.check-card{background:var(--background);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex}.check-row{flex-direction:column;gap:4px;font-size:13px;display:flex}.check-row-head{justify-content:space-between;gap:8px;display:flex}.check-bar{background:var(--soft);border-radius:99px;height:6px;overflow:hidden}.check-bar span{background:var(--ok);height:100%;display:block}.check-score{font-family:var(--font-serif);color:var(--foreground);margin:0;font-size:34px;font-weight:500}.check-missed{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.check-missed button{font:inherit;color:var(--text-2);text-align:left;cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);background:0 0;border:0;padding:0}@media (max-width:960px){.check-grid{grid-template-columns:minmax(0,1fr);padding:16px 12px 48px}.check-side{position:static}}.tutor-drawer{z-index:40;background:var(--background);border-left:1px solid var(--border);width:min(420px,100vw);box-shadow:-10px 0 30px var(--shadow);flex-direction:column;display:flex;position:fixed;top:64px;bottom:0;right:0;overflow-y:auto}.tutor-drawer-head{border-bottom:1px solid var(--border);background:var(--background);z-index:1;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.tutor-drawer .v2-tutor{box-shadow:none;background:0 0;border:0;border-radius:0}.tutor-drawer .v2-tutor-turns{max-height:none}.tutor-drawer>*,.tutor-drawer .v2-tutor-turns>*,.tutor-drawer .v2-tutor-turn>*{flex:none}.tutor-drawer .v2-chips{align-items:flex-start}.tutor-drawer{overflow-x:hidden}.tutor-drawer .v2-chips{flex-wrap:wrap}.tutor-drawer .v2-source-chip,.tutor-drawer .v2-btn-small{white-space:normal;text-align:left;max-width:100%;height:auto;min-height:30px}:root{--lvl-strong-bg:#eaf2ff;--lvl-strong-fg:#1a4f9e;--lvl-shaky-bg:#fdf5e2;--lvl-shaky-fg:#7a560c;--lvl-weak-bg:#fff3ea;--lvl-weak-fg:#9a4309;--inverse-bg:#141413;--inverse-fg:#faf9f5;--inverse-edge:transparent}:root[data-theme=dark]{--lvl-strong-bg:#1d2b40;--lvl-strong-fg:#9cc3ff;--lvl-shaky-bg:#3a3020;--lvl-shaky-fg:#f0c674;--lvl-weak-bg:#3d2a20;--lvl-weak-fg:#f6a77d;--inverse-bg:#1b1a19;--inverse-edge:#3a3936}.v2-level.strong,.v2-pill-strong{background:var(--lvl-strong-bg)!important;color:var(--lvl-strong-fg)!important}.v2-level.shaky,.v2-pill-shaky{background:var(--lvl-shaky-bg)!important;color:var(--lvl-shaky-fg)!important}.v2-level.weak,.v2-pill-weak{background:var(--lvl-weak-bg)!important;color:var(--lvl-weak-fg)!important}:root[data-theme=dark] .v2-example .after{background:var(--lvl-strong-bg)}:root[data-theme=dark] .v2-example .before{background:var(--lvl-weak-bg)}.v2-dark{background:var(--inverse-bg);color:var(--inverse-fg);border:1px solid var(--inverse-edge)}:root[data-theme=dark] .v2-dark{--background:#faf9f5;--foreground:#141413;--muted:#b9b6ac;--faint:#a3a097;--text-2:#dcd9cf}:root[data-theme=dark] .v2-idea:not(.book-paper .v2-idea){background:var(--inverse-bg);border:1px solid var(--inverse-edge);--background:#faf9f5;--foreground:#141413}:root[data-theme=dark] .library-intro{background:var(--surface);border-color:var(--border)}:root[data-theme=dark] .intro-copy h2,:root[data-theme=dark] .intro-copy p{color:var(--foreground)}.v2-dark .v2-btn-light{color:#141413;background:#faf9f5}.v2-dark .v2-btn-light:hover:not(:disabled){background:#fff}:root{--tag-green-bg:#e7f6ee;--tag-green-fg:#1d6e4a;--tag-teal-bg:#e3f4f2;--tag-teal-fg:#0b5c51;--tag-blue-bg:#e8f0fb;--tag-blue-fg:#1f5fbf;--tag-purple-bg:#f3e9fb;--tag-purple-fg:#6b2fa0;--tag-amber-bg:#fdf1e4;--tag-amber-fg:#8f4a10}:root[data-theme=dark]{--tag-green-bg:#1e3328;--tag-green-fg:#8fd9b0;--tag-teal-bg:#1b3431;--tag-teal-fg:#84d6c9;--tag-blue-bg:#1d2b40;--tag-blue-fg:#9cc3ff;--tag-purple-bg:#2f2340;--tag-purple-fg:#d1b3f5;--tag-amber-bg:#3a2c1c;--tag-amber-fg:#f3bf85}:root[data-theme=sepia]{--tag-green-bg:#e1e8cf;--tag-teal-bg:#dbe6dc;--tag-blue-bg:#e2e3e0;--tag-purple-bg:#e8dde6;--tag-amber-bg:#f1e0c4}.v2-source-chip.web,.v2-source-chip.link{background:var(--tag-teal-bg);color:var(--tag-teal-fg)}.v2-source-chip.note{background:var(--tag-amber-bg);color:var(--tag-amber-fg)}.v2-source-chip.luma,.nb-cite{background:var(--soft);color:var(--text-2);border:0}.nb-type.course{background:var(--tag-blue-bg);color:var(--tag-blue-fg)}.nb-type.cheatsheet,.nb-type.steps,.nb-type.note{background:var(--tag-amber-bg);color:var(--tag-amber-fg)}.nb-type.quiz,.nb-type.flashcards{background:var(--tag-green-bg);color:var(--tag-green-fg)}.nb-type.comparison{background:var(--tag-teal-bg);color:var(--tag-teal-fg)}.nb-type.mindmap{background:var(--tag-purple-bg);color:var(--tag-purple-fg)}.nb-type.doc{background:var(--tag-blue-bg);color:var(--tag-blue-fg)}:root[data-theme=dark] .book-paper .v2-table thead th{border-bottom-color:var(--border-strong)}.nb-cite{cursor:pointer;padding:4px 10px;font-size:12px;line-height:1.5}.nb-cite:hover{background:var(--hover);color:var(--foreground)}:root{--code-kw:#b85a3c;--code-type:#3d6a9e;--code-str:#4f7a45;--code-num:#9a6a1f;--code-fn:#7a4f9a;--code-com:#8a8880}:root[data-theme=sepia]{--code-kw:#a4502f;--code-type:#3f6688;--code-str:#56743d;--code-num:#8f5f1a;--code-fn:#74507f;--code-com:#8c7c64}:root[data-theme=dark]{--code-kw:#e8916f;--code-type:#8fb3e0;--code-str:#a3c98f;--code-num:#e0b36b;--code-fn:#c6a3e0;--code-com:#87857d}.v2-md-code .hljs-keyword,.v2-md-code .hljs-built_in,.v2-md-code .hljs-literal,.v2-md-code .hljs-meta-keyword,.v2-md-code .hljs-selector-tag{color:var(--code-kw)}.v2-md-code .hljs-type,.v2-md-code .hljs-title.class_,.v2-md-code .hljs-title.class_.inherited__,.v2-md-code .hljs-name,.v2-md-code .hljs-attr{color:var(--code-type)}.v2-md-code .hljs-string,.v2-md-code .hljs-regexp,.v2-md-code .hljs-template-string,.v2-md-code .hljs-attribute,.v2-md-code .hljs-symbol{color:var(--code-str)}.v2-md-code .hljs-number,.v2-md-code .hljs-variable.constant_{color:var(--code-num)}.v2-md-code .hljs-title.function_,.v2-md-code .hljs-meta,.v2-md-code .hljs-decorator{color:var(--code-fn)}.v2-md-code .hljs-comment,.v2-md-code .hljs-quote{color:var(--code-com);font-style:italic}.book-block.key-note .v2-idea{border:0;border-left:2px solid var(--clay);box-shadow:none;border-radius:0;padding:2px 0 2px 18px;background:0 0!important}.book-block.key-note .v2-idea .v2-eyebrow{font-size:11px;color:var(--clay)!important}.book-block.key-note .lesson-prose{color:var(--text-2);font-style:italic}.lm-ask{background:var(--foreground);height:32px;color:var(--background);font:inherit;cursor:pointer;border:0;border-radius:99px;align-items:center;gap:7px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex}.lm-ask.on{background:color-mix(in srgb, var(--clay) 14%, transparent);color:var(--clay);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--clay) 40%, transparent)}.lm-switch{font:inherit;color:var(--text-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.lm-switch i{background:var(--border-strong);border-radius:99px;width:28px;height:16px;transition:background .15s;position:relative}.lm-switch i:after{content:"";background:#fff;border-radius:99px;width:12px;height:12px;transition:left .15s;position:absolute;top:2px;left:2px}.lm-switch.on i{background:var(--clay)}.lm-switch.on i:after{left:14px}.book-grid.with-luma,.pad-docked .book-grid{grid-template-columns:220px minmax(0, calc(760px * var(--read-scale)));justify-content:center;gap:28px;padding-right:424px}@media (max-width:1640px){.book-grid.with-luma,.pad-docked .book-grid{grid-template-columns:minmax(0, calc(760px * var(--read-scale)))}.book-grid.with-luma .book-toc,.pad-docked .book-grid .book-toc{display:none}}.lm-mark.thread{-webkit-text-decoration:underline dotted var(--clay);text-decoration:underline dotted var(--clay);text-underline-offset:5px;cursor:pointer;text-decoration-thickness:2px}.lm-mark.thread.hover,.lm-mark.thread.active{background:color-mix(in srgb, var(--clay) 12%, transparent)}:root[data-theme=dark] .lm-mark.thread.hover,:root[data-theme=dark] .lm-mark.thread.active{background:color-mix(in srgb, var(--clay) 18%, transparent)}.lm-mark{--lm-hl:#f0cf5a57;-webkit-box-decoration-break:clone;box-decoration-break:clone}.lm-mark.highlight{background:var(--lm-hl);cursor:pointer}:root[data-theme=sepia] .lm-mark{--lm-hl:#e9c04a4d}:root[data-theme=dark] .lm-mark{--lm-hl:#f2d27a29}:root[data-theme=dark] .lm-mark.highlight{box-shadow:inset 0 -2px #f2d27a73}.lm-badge{background:var(--clay);height:18px;color:var(--on-accent);line-height:1;font:600 10.5px var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;vertical-align:3px;cursor:pointer;text-indent:0;border-radius:99px;align-items:center;gap:3px;margin-left:4px;padding:0 7px 0 5px;display:inline-flex}.katex.lm-math{--lm-tint:color-mix(in srgb, var(--clay) 14%, transparent);background:var(--lm-tint);box-shadow:0 0 0 2px var(--lm-tint);cursor:pointer;border-radius:4px}.katex.lm-math.highlight{--lm-tint:#f0cf5a57}.katex.lm-math.thread.hover,.katex.lm-math.thread.active{--lm-tint:color-mix(in srgb, var(--clay) 24%, transparent)}.lm-hidden .katex.lm-math{box-shadow:none;background:0 0}.lm-hidden .lm-mark{cursor:auto;text-decoration:none;background:0 0!important}.lm-hidden .lm-badge{display:none}.lm-card{z-index:60;background:var(--background);width:380px;box-shadow:0 0 0 1px var(--border), 0 14px 34px var(--shadow);font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px 10px;display:flex}.lm-card-k{letter-spacing:.06em;text-transform:uppercase;color:var(--clay);align-items:center;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.lm-card-t{color:var(--text);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0;font-size:13.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.lm-card-f{color:var(--faint);align-items:center;gap:8px;font-size:12px;display:flex}.lm-card-f button{font:inherit;color:var(--clay);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:4px;margin-left:auto;padding:4px 6px;font-weight:600;display:inline-flex}.lm-card-f button+button{color:var(--text-2);margin-left:0}.lm-panel{z-index:30;background:var(--background);border-left:1px solid var(--border);flex-direction:column;width:min(400px,100vw);display:flex;position:fixed;top:53px;bottom:0;right:0}.lm-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px 12px 18px;display:flex}.lm-title{align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.lm-back{font:inherit;color:var(--text-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:4px 6px 4px 0;font-size:13px;display:inline-flex}.lm-back b{background:var(--hover-strong);border-radius:99px;place-items:center;min-width:18px;height:18px;margin-left:4px;font-size:11px;display:inline-grid}.lm-body{scrollbar-width:thin;flex-direction:column;flex-grow:1;gap:16px;min-height:0;padding:18px;display:flex;overflow-y:auto}.lm-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;max-width:280px;margin:auto;display:flex}.lm-empty b{font-size:15px}.lm-empty span{color:var(--muted);font-size:13px;line-height:1.5}.lm-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lm-list button{text-align:left;background:var(--panel);width:100%;font:inherit;cursor:pointer;color:var(--text);border:0;border-radius:12px;flex-direction:column;gap:5px;padding:12px 14px;display:flex}.lm-list button:hover{background:var(--hover-strong)}.lm-q{font-family:var(--font-serif);color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;font-style:italic;display:-webkit-box;overflow:hidden}.lm-s{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.lm-m{color:var(--faint);font-size:11.5px}.lm-anchor{background:var(--panel);font-family:var(--font-serif);color:var(--text-2);border-radius:12px;gap:8px;padding:10px 12px;font-size:13.5px;font-style:italic;line-height:1.5;display:flex}.lm-anchor svg{color:var(--clay);flex-shrink:0;margin-top:3px}.lm-summary{border-left:2px solid var(--clay);padding:10px 12px;font-size:13.5px}.lm-summary>span{letter-spacing:.06em;text-transform:uppercase;color:var(--clay);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.lm-me{justify-content:flex-end;display:flex}.lm-bub{background:var(--hover-strong);white-space:pre-wrap;border-radius:16px;max-width:85%;padding:9px 13px;font-size:14px;line-height:1.5}.lm-who{align-items:center;gap:7px;margin-bottom:4px;font-size:13px;font-weight:600;display:flex}.lm-luma .v2-md{font-size:14.5px;line-height:1.65}.lm-acts{flex-wrap:wrap;gap:6px;display:flex}.lm-acts button{height:30px;box-shadow:inset 0 0 0 1px var(--border);font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:99px;align-items:center;gap:6px;padding:0 11px;font-size:12.5px;display:inline-flex}.lm-acts button svg{color:var(--clay)}.lm-acts button:hover{background:var(--hover)}.lm-acts button:disabled{opacity:.6;cursor:default}.lm-acts .lm-del{padding:0 9px}.lm-acts .lm-del svg{color:var(--faint)}.lm-cmp{margin:0 14px 14px}.nb-seltools button{align-items:center;gap:6px;display:inline-flex}@media (max-width:1100px){.book-grid.with-luma,.pad-docked .book-grid{grid-template-columns:minmax(0,1fr);padding-right:24px}.book-grid.with-luma .book-toc,.pad-docked .book-grid .book-toc{display:none}}.lm-sumline{text-align:left;border:0;border-left:2px solid var(--clay);width:100%;font:inherit;color:var(--text);cursor:pointer;background:0 0;border-radius:0 8px 8px 0;flex-direction:column;gap:4px;padding:8px 12px;display:flex}.lm-sumline:hover{background:var(--hover)}.lm-sumline .k{letter-spacing:.06em;text-transform:uppercase;color:var(--clay);align-items:center;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.lm-sumline .t{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.lm-sumline .v2-md{font-size:13.5px}.nb-seltools.placed{transform:none}.book-toc{gap:0}.book-toc .book-toc-label{padding:0 12px 2px}.book-toc-unit{font-family:var(--font-serif);color:var(--foreground);padding:0 12px;font-size:16px;font-style:italic;line-height:1.35}.book-toc-prog{background:var(--hover-strong);border-radius:99px;height:3px;margin:12px 12px 14px;display:block;position:relative}.book-toc-prog i{background:var(--clay);border-radius:99px;position:absolute;inset:0 auto 0 0}.book-toc-prog em{color:var(--faint);font-size:11.5px;font-style:normal;position:absolute;top:8px;left:0}.book-toc-list{margin:18px 0 0;padding:0;list-style:none;position:relative}.book-toc .book-toc-item{color:var(--text-2);background:0 0;border-radius:8px;align-items:flex-start;gap:12px;padding:7px 12px;font-size:14px;position:relative}.book-toc .book-toc-item:hover{background:var(--hover)}.book-toc .book-toc-item.current{background:var(--hover);color:var(--foreground);font-weight:600}.book-toc .book-toc-mark{z-index:1;font-variant-numeric:tabular-nums;width:20px;height:20px;color:var(--faint);box-shadow:inset 0 0 0 1px var(--border-strong);background:0 0;border-radius:99px;flex-shrink:0;place-items:center;margin-top:0;font-size:11px;font-weight:600;line-height:1;display:grid;position:relative}.book-toc .book-toc-item.done .book-toc-mark{background:var(--clay);color:var(--on-accent);box-shadow:none}.book-toc .book-toc-item.current .book-toc-mark{background:var(--foreground);color:var(--background);box-shadow:none}.book-toc .book-toc-t{flex:1;min-width:0;padding:0;line-height:20px}.book-toc .book-toc-min{height:20px;color:var(--faint);font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;gap:3px;font-size:11.5px;font-weight:400;display:inline-flex}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.book-toc .book-toc-item.check{color:var(--clay);border:0;margin-top:10px}.book-toc .book-toc-item.check .book-toc-mark{box-shadow:none;background:color-mix(in srgb, var(--clay) 14%, transparent);color:var(--clay);font-size:9px}.book-toc .book-toc-item.check em{color:var(--faint);font-size:11.5px;font-style:normal;font-weight:400;display:block}.lesson-visual{flex-direction:column;gap:10px;display:flex}.lv-fig{flex-direction:column;align-items:center;gap:8px;margin:4px 0;display:flex}.lv-diagram{justify-content:center;width:100%;display:flex;overflow-x:auto}.lv-diagram svg{max-width:100%;height:auto}.lv-diagram .node rect,.lv-diagram .node path.basic{rx:10px;ry:10px;stroke-width:1px!important;filter:none!important}.lv-diagram .node polygon{fill:var(--indigo-light)!important;stroke:var(--clay)!important;stroke-width:1px!important;filter:none!important}.lv-diagram .node circle,.lv-diagram .node ellipse{stroke-width:1px!important}.lv-diagram .flowchart-link,.lv-diagram .messageLine0,.lv-diagram .messageLine1{stroke-width:1.4px!important}.lv-diagram .marker,.lv-diagram marker path{fill:var(--faint)!important;stroke:var(--faint)!important}.lv-diagram .edgeLabel,.lv-diagram .edgeLabel p,.lv-diagram .edgeLabel rect,.lv-diagram .labelBkg{font-size:12.5px;background:var(--paper)!important;fill:var(--paper)!important;color:var(--muted)!important}.lv-diagram .nodeLabel,.lv-diagram .label{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif}.lv-diagram foreignObject div{line-height:1.35}.lv-loading{background:var(--hover);border-radius:10px;width:100%;height:160px}.lv-svg{width:100%;max-width:620px;height:auto;font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif}.lv-t{fill:var(--text-2);font-size:13px}.lv-t.small{fill:var(--faint);font-size:11px}.lv-grid{stroke:var(--border);stroke-width:1px}.lv-axis{stroke:var(--text-2);stroke-width:1.2px}.lv-title{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;color:var(--foreground);font-size:14px;font-weight:600}.lv-legend{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;color:var(--text-2);flex-wrap:wrap;justify-content:center;gap:14px;font-size:12.5px;display:flex}.lv-legend span{align-items:center;gap:6px;display:inline-flex}.lv-legend i{border-radius:99px;width:12px;height:4px}.lv-cap{text-align:center;font-family:var(--font-serif);color:var(--text-2);margin:0;font-size:14.5px;font-style:italic}.lv-math.display{text-align:center;margin:6px 0;display:block;overflow-x:auto}.lv-math.src{color:var(--text-2);font-family:ui-monospace,monospace;font-size:.9em}.lv-math .katex{font-size:1.08em}.lesson-rewrite{font:inherit;font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;color:var(--faint);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-self:center;font-size:12px;text-decoration:underline}.lesson-rewrite:hover{color:var(--text-2)}.lesson-steps>li>.v2-md{flex:1;min-width:0}:root[data-theme=dark] .v2-error{color:#f2b9a0}:root[data-theme=sepia] .v2-error{color:#6e300a}.book-block.first .lesson-tryit .lesson-prose>p:first-child:first-letter{float:none;font-size:inherit;line-height:inherit;color:inherit;font-weight:inherit;padding:0}.book-paper .lesson-answer{border:0;border-left:2px solid var(--clay);background:0 0;border-radius:0;padding:2px 0 2px 16px}.book-paper .lesson-answer .v2-md{font-family:var(--read-font);font-size:calc(17px * var(--read-scale));color:var(--text);line-height:1.7}.lesson-answer-k{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--clay);margin-bottom:4px;font-size:11px;font-weight:600;display:block}html{scrollbar-gutter:stable}.lv-svg.lv-square{max-width:420px}.lv-t.strong{fill:var(--foreground);font-weight:600}.lv-t.accent{fill:var(--indigo);font-weight:600}.fg-fill{fill:var(--text-2)}.fg-accent{stroke:var(--clay)}.fg-accent-fill{fill:var(--clay)}.fg-dot{fill:var(--foreground)}.fg-solid{fill:var(--clay);stroke:var(--clay);stroke-width:2px}.fg-hollow{fill:var(--paper);stroke:var(--clay);stroke-width:2.5px}.fg-circle{fill:none;stroke:var(--clay);stroke-width:2px}.fg-circle.filled{fill:color-mix(in srgb, var(--clay) 14%, transparent)}.fg-circle.open{stroke-dasharray:6 5}.fg-universe{fill:none;stroke:var(--border-strong);stroke-width:1.2px}.fg-set{fill:none;stroke:var(--text-2);stroke-width:1.8px}.fg-shade{fill:color-mix(in srgb, var(--clay) 32%, transparent)}.fg-leader{fill:none;stroke:var(--border-strong);stroke-width:1px}.fg-hit{fill:#0000}.fg-pt{cursor:default;outline:none}.fg-pt:hover text,.fg-pt:focus-visible text{fill:var(--clay);font-weight:700}.fg-pt:hover .fg-leader,.fg-pt:focus-visible .fg-leader{stroke:var(--clay);stroke-width:1.5px}.fg-pt:hover circle,.fg-pt:focus-visible circle{stroke:var(--clay);stroke-width:3px}.lv-cap p{margin:0}.mf{flex-direction:column;gap:6px;width:100%;max-width:620px;display:flex}.mf .MafsView{--mafs-bg:transparent;--mafs-fg:var(--foreground);--mafs-origin-color:var(--text-2);--mafs-line-color:var(--border);--grid-line-subdivision-color:var(--border);font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;border-radius:12px}.mf .MafsView text{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif}.mf-hint{color:var(--muted);text-align:center;margin:0;font-size:12.5px}.mf-frame{width:100%}.v2-md-visual{justify-content:center;margin:10px 0;display:flex}.v2-md-visual>*{width:100%;max-width:620px}.rx-ref{background:color-mix(in srgb, var(--clay) 13%, transparent);color:var(--indigo);font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;white-space:nowrap;vertical-align:.08em;cursor:default;border-radius:7px;outline:none;align-items:center;padding:0 7px;font-size:.78em;font-weight:600;line-height:1.75;display:inline-flex;position:relative}.rx-ref a{color:inherit;text-decoration:none}.rx-ref.rx-def{color:#1f6f68;background:#2ba39a24}:root[data-theme=dark] .rx-ref.rx-def{color:#8ed8d0}.rx-ref.rx-missing{opacity:.6}.rx-ref:hover,.rx-ref:focus-visible{box-shadow:0 0 0 1.5px}.rx-pop{visibility:hidden;opacity:0;transition-behavior:allow-discrete;cursor:auto;-webkit-user-select:text;user-select:text;z-index:70;background:var(--paper);width:min(380px,80vw);box-shadow:0 0 0 1px var(--border), 0 20px 40px -16px var(--shadow), 0 8px 18px -10px #00000040;white-space:normal;text-align:left;color:var(--text);border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px;font-size:13.5px;font-weight:400;line-height:1.55;transition:opacity .12s,visibility 0s linear .2s,display 0s linear .2s;display:none;position:absolute;top:calc(100% + 8px);left:0}.rx-ref:hover .rx-pop,.rx-ref:focus-within .rx-pop{visibility:visible;opacity:1;transition-delay:0s;display:flex}@starting-style{.rx-ref:hover .rx-pop,.rx-ref:focus-within .rx-pop{opacity:0}}.rx-pop:before{content:"";height:10px;position:absolute;top:-10px;left:0;right:0}.rx-pop-h,.rx-card-h{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--clay);align-items:baseline;gap:8px;font-size:11px;font-weight:700;display:flex}.rx-pop-h em,.rx-card-h em{letter-spacing:.04em;text-transform:none;color:var(--muted);font-size:12.5px;font-style:normal;font-weight:600}.rx-pop-st{font-family:var(--read-font);color:var(--foreground);font-size:15.5px;font-style:italic;line-height:1.6}.rx-pop-why{color:var(--muted);border-top:1px solid var(--border);padding-top:6px;font-size:13px}.rx-pop-ft{color:var(--faint);font-size:12px}.rx-card{background:var(--paper);box-shadow:0 0 0 1px var(--border-strong);border-radius:14px;margin:6px 0;padding:14px 18px 12px}.rx-card.rx-def .rx-card-h{color:#2ba39a}.rx-card-tag{background:var(--soft);color:var(--muted);letter-spacing:.06em;border-radius:99px;margin-left:auto;padding:1px 8px;font-size:10.5px}.rx-card-st{color:var(--foreground);margin-top:6px;font-size:1.05em;font-style:italic}.rx-card-st p,.rx-card-why p{margin:0}.rx-card-why{border-top:1px solid var(--border);font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;color:var(--muted);margin-top:10px;padding-top:10px;font-size:13.5px;line-height:1.6}.rx-list{flex-direction:column;gap:16px;display:flex}.rx-flt{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rx-q{background:var(--paper);height:38px;box-shadow:inset 0 0 0 1px var(--border-strong);border-radius:11px;flex:220px;padding:0 12px;display:flex}.rx-q input{font:inherit;color:var(--foreground);background:0 0;border:0;outline:0;flex-grow:1;font-size:13.5px}.rx-chip{box-shadow:inset 0 0 0 1px var(--border-strong);font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:99px;padding:6px 12px;font-size:13px}.rx-chip.on{background:var(--foreground);color:var(--background);box-shadow:none}.rx-unit{background:var(--paper);box-shadow:0 0 0 1px var(--border);border-radius:18px;overflow:hidden}.rx-unit-h{letter-spacing:.1em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--border);margin:0;padding:12px 20px;font-size:11.5px;font-weight:700}.rx-it{border-top:1px solid var(--border);grid-template-columns:150px minmax(0,1fr) 140px;align-items:baseline;gap:16px;padding:14px 20px;display:grid}.rx-unit-h+.rx-it{border-top:0}.rx-it-n{color:var(--clay);font-size:12.5px;font-weight:700}.rx-it-n.rx-def{color:#2ba39a}.rx-it-n small{color:var(--faint);margin-top:2px;font-size:11.5px;font-weight:500;display:block}.rx-it-t{color:var(--foreground);font-size:14px;font-weight:600;display:block}.rx-it-st{font-family:var(--read-font);color:var(--text);margin-top:3px;font-size:15px;font-style:italic;line-height:1.55}.rx-it-w{color:var(--faint);flex-direction:column;align-items:flex-end;gap:3px;font-size:12px;display:flex}.rx-it-w a{color:var(--text);text-underline-offset:3px;text-decoration:underline}@media (max-width:720px){.rx-it{grid-template-columns:1fr;gap:4px}.rx-it-w{align-items:flex-start}}.pad-panel{z-index:31;background:var(--paper);border-left:1px solid var(--border);width:min(400px,100vw);box-shadow:-18px 0 40px -30px var(--shadow);flex-direction:column;display:flex;position:fixed;top:53px;bottom:0;right:0}.pad-hd{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 14px;font-size:14px;display:flex}.pad-hd b{color:var(--foreground);font-weight:600}.pad-hd em{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-style:normal;overflow:hidden}.pad-x{width:28px;height:28px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;margin-left:auto;display:grid}.pad-x:hover{background:var(--hover);color:var(--foreground)}.pad-body{flex-direction:column;flex-grow:1;display:flex;overflow-y:auto}.pad-page{cursor:text;--pad-lh:34px;background-image:linear-gradient(var(--border) 1px, transparent 1px);background-size:100% var(--pad-lh);background-position:0 calc(var(--pad-lh) - 1px + 8px);background-repeat:repeat;flex-grow:1;padding:8px 20px 24px}.pad-line{min-height:var(--pad-lh);font-family:var(--read-font);font-size:16.5px;line-height:var(--pad-lh);color:var(--text);overflow-wrap:anywhere;align-items:baseline;gap:12px;display:flex}.pad-line>span:first-child,.pad-line>i,.pad-line>b{min-width:0}.pad-line i{color:var(--foreground);font-style:italic}.pad-line.heading b,.pad-line.heading input{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;color:var(--muted);font-size:13.5px;font-weight:600}.pad-line.editing{background:color-mix(in srgb, var(--clay) 7%, transparent);border-radius:6px;margin:0 -8px;padding:0 8px}.pad-line input{min-width:0;font:inherit;line-height:var(--pad-lh);color:var(--foreground);caret-color:var(--clay);background:0 0;border:0;outline:0;flex-grow:1;padding:0}.pad-ph,.pad-line input::placeholder{color:var(--faint)}.pad-res{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap;color:#2b9a91;margin-left:auto;padding-left:8px;font-size:14.5px;font-weight:600}.pad-res.no{color:#d0584f}.pad-res.date{color:#2b9a91;font-weight:500}.pad-label{color:var(--clay);font-weight:600}.pad-kw{color:#4f7cc4}.pad-var{color:#8a5cc2;font-weight:600}:root[data-theme=dark] .pad-kw{color:#7fa7e6}:root[data-theme=dark] .pad-var{color:#b693e6}.pad-line.editing .pad-res{color:var(--faint);font-weight:500}.pad-line.pad-tip{font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;color:var(--faint);pointer-events:none;font-size:12.5px}.pad-skb{background:var(--paper);box-shadow:inset 0 0 0 1px var(--border-strong);cursor:default;border-radius:12px;flex-direction:column;gap:6px;margin:6px 0 4px;padding:8px;display:flex}.pad-skb .pad-tools{opacity:.55;transition:opacity .15s}.pad-skb:hover .pad-tools,.pad-skb:focus-within .pad-tools{opacity:1}.pad-tools .pad-skx{margin-left:auto}.pad-add{gap:8px;padding:8px 20px 12px;display:flex}.pad-add button,.pad-ft button{box-shadow:inset 0 0 0 1px var(--border-strong);font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;display:inline-flex}.pad-add button:hover,.pad-ft button:hover:not(:disabled){background:var(--hover);color:var(--foreground)}.pad-ft{border-top:1px solid var(--border);color:var(--faint);align-items:center;gap:8px;padding:9px 14px;font-size:12px;display:flex}.pad-ft span{margin-right:auto}.pad-ft button{color:var(--text);border-radius:9px;font-weight:500}.pad-ft button:disabled{opacity:.5;cursor:default}.pad-hint{color:var(--faint);margin:0;font-size:12px;line-height:1.5}.pad-tools{align-items:center;gap:6px;display:flex}.pad-tools>button{width:28px;height:28px;box-shadow:inset 0 0 0 1px var(--border-strong);color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.pad-tools>button.on{background:var(--foreground);color:var(--background);box-shadow:none}.pad-tools>button:disabled{opacity:.45;cursor:default}.pad-tools .pad-dot i{border-radius:99px;width:14px;height:14px;display:block}.pad-tools .pad-dot.on{background:var(--soft);box-shadow:inset 0 0 0 2px var(--foreground)}.pad-sk{box-shadow:inset 0 0 0 1px var(--border-strong);background:var(--background);background-image:radial-gradient(var(--border) 1px, transparent 1px);background-size:18px 18px;border-radius:12px;overflow:hidden}.pad-sk canvas{display:block}.book-pad-btn{box-shadow:inset 0 0 0 1px var(--border-strong);font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:6px;padding:6px 11px;font-size:12.5px;font-weight:500;display:inline-flex}.book-pad-btn.on{background:var(--foreground);color:var(--background);box-shadow:none}.book-pad-btn kbd{font:500 10.5px var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;background:var(--soft);color:var(--muted);border-radius:4px;padding:0 5px}.book-pad-btn.on kbd{background:color-mix(in srgb, var(--background) 20%, transparent);color:inherit}.pad-hd-acts{gap:2px;margin-left:auto;display:flex}.pad-hd-acts .pad-x{margin-left:0}.pad-panel.float{z-index:45;box-shadow:0 0 0 1px var(--border-strong), 0 28px 60px -24px #140f0a73, 0 8px 18px -10px #140f0a40;border:0;border-radius:16px;bottom:auto;right:auto;overflow:hidden}.pad-panel.float .pad-hd{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.pad-dragging,.pad-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}.pad-panel.float.min{height:auto}.pad-panel.float.min .pad-body,.pad-panel.float.min .pad-add,.pad-panel.float.min .pad-ft{display:none}.pad-panel.float.min .pad-hd{border-bottom:0}.pad-resize{cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg, transparent 50%, var(--border-strong) 50%, var(--border-strong) 58%, transparent 58%, transparent 70%, var(--border-strong) 70%, var(--border-strong) 78%, transparent 78%);width:18px;height:18px;position:absolute;bottom:0;right:0}.lm-body .katex-display{overflow:auto hidden}body:has(.lm-panel) .pad-panel:not(.float){border-right:1px solid var(--border);right:min(400px,100vw)}.pad-docked .book-grid.with-luma{grid-template-columns:minmax(0, calc(760px * var(--read-scale)));padding-right:824px}.pad-docked .book-grid.with-luma .book-toc{display:none}@media (max-width:1500px){body:has(.lm-panel) .pad-panel:not(.float){width:340px}.pad-docked .book-grid.with-luma{padding-right:764px}}@media (max-width:1100px){.pad-docked .book-grid.with-luma{padding-right:24px}}.qz{flex-direction:column;gap:34px;display:flex}.qz-bar{z-index:1;background:var(--paper);color:var(--muted);align-items:center;gap:14px;padding:10px 0;font-size:13px;display:flex;position:sticky;top:0}.qz-track{background:var(--soft);border-radius:99px;flex-grow:1;height:5px;overflow:hidden}.qz-track i{border-radius:inherit;background:var(--sage,#8fbf8f);height:100%;transition:width .25s;display:block}.qz-q{flex-direction:column;gap:14px;display:flex}.qz-num{letter-spacing:.02em;color:var(--faint);font-size:12px;font-weight:500}.qz-prompt{font-family:var(--read-font), var(--font-ka-serif), serif;font-size:calc(19px * var(--read-scale,1));color:var(--foreground);margin:0;line-height:1.55}.qz .v2-answer{min-height:50px;font-size:15.5px}.qz-end{border-top:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:8px;padding-top:18px;display:flex}.qz-score{font-family:var(--font-serif), var(--font-ka-serif), serif;color:var(--foreground);margin:0;font-size:28px;font-weight:500}
.v2-shell.sb-shell{flex-direction:row;align-items:stretch}.sb-main{flex:auto;min-width:0}.sb-topbar,.sb-scrim{display:none}.sb-side{box-sizing:border-box;background:var(--panel);border-right:1px solid var(--border);width:256px;height:100dvh;color:var(--text);flex-direction:column;flex-shrink:0;padding:14px 12px;font-size:14px;display:flex;position:sticky;top:0;overflow-y:auto}.sb-side button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.sb-ws{text-align:left;border-radius:10px;align-items:center;gap:10px;margin-bottom:10px;padding:6px;transition:background .15s;display:flex}.sb-side .sb-ws:hover{background:var(--soft)}.sb-ws>svg{color:var(--faint);flex-shrink:0}.sb-mark{background:var(--sb-mark);border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.sb-mark-sm{border-radius:8px;width:28px;height:28px}.sb-mark:has(>img){background:0 0;overflow:hidden}.sb-mark>img{width:100%;height:100%;display:block}.sb-mark-lg{border-radius:11px;width:38px;height:38px}.sb-ws-name{font-family:var(--font-brand), var(--font-sans), sans-serif;letter-spacing:-.01em;color:var(--foreground);font-size:21px;font-weight:600}.sb-ws{text-decoration:none}.sb-ws-text .sb-ws-name{color:var(--foreground);font-size:20px;line-height:1.1;display:block}.sb-ws-text .sb-ws-tag{color:var(--muted);margin-top:2px;font-size:12px;display:block}.sb-ws-text{flex-grow:1;min-width:0;line-height:1.25}.sb-ws-text b{color:var(--foreground);font-weight:600;display:block}.sb-ws-text span{color:var(--muted);font-size:12px}.sb-side .sb-search{background:var(--soft);color:var(--faint);border-radius:9px;align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;font-size:13px;transition:background .15s,color .15s;display:flex}.sb-side .sb-search:hover{background:var(--hover);color:var(--muted)}.sb-search kbd{border:1px solid var(--border-strong);background:var(--background);color:var(--muted);border-radius:5px;margin-left:auto;padding:0 6px;font-family:ui-monospace,monospace;font-size:11px}.sb-nav{flex-direction:column;gap:3px;display:flex}.sb-link{color:var(--text);border-radius:9px;align-items:center;gap:10px;min-width:0;padding:7px 10px;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:flex}.sb-link>svg{color:var(--muted);stroke-width:1.7px;flex-shrink:0}.sb-link:not(.on):hover{background:var(--soft);color:var(--foreground)}.sb-link:not(.on):hover>svg{color:var(--foreground)}.sb-link:active{transform:translateY(.5px)}.sb-link:focus-visible,.sb-side button:focus-visible,.sb-sec-add:focus-visible{outline:2px solid var(--clay);outline-offset:1px}.sb-link.on{background:var(--surface);color:var(--foreground);box-shadow:0 1px 2px var(--shadow), 0 0 0 1px var(--border);font-weight:500}.sb-link.on>svg{color:var(--clay)}.sb-ell{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sb-count{box-sizing:border-box;font-variant-numeric:tabular-nums;background:var(--surface);min-width:20px;height:20px;color:var(--muted);box-shadow:inset 0 0 0 1px var(--border-strong);border-radius:99px;place-items:center;margin-left:auto;padding:0 7px;font-size:11.5px;font-weight:600;line-height:1;display:inline-grid}.sb-link.on .sb-count{background:var(--soft);box-shadow:none}.sb-count.hot{background:var(--clay);color:var(--on-accent);box-shadow:0 1px 2px #d9775759}.sb-sec{align-items:center;margin:18px 4px 6px 10px;display:flex}.sb-side .sb-sec-toggle{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);align-items:center;gap:5px;padding:0;font-size:11px;font-weight:600;transition:color .15s;display:flex}.sb-side .sb-sec-toggle:hover{color:var(--muted)}.sb-sec-toggle svg{transition:transform .15s}.sb-sec-toggle svg.closed{transform:rotate(-90deg)}.sb-sec-add{width:22px;height:22px;color:var(--faint);border-radius:6px;place-items:center;margin-left:auto;display:grid}.sb-sec-add:hover{background:var(--soft);color:var(--foreground)}.sb-courses{flex-direction:column;gap:3px;display:flex}.sb-tile{color:#fff;border-radius:5px;flex-shrink:0;place-items:center;width:18px;height:18px;font-size:10px;font-weight:600;display:grid}.sb-none{color:var(--faint);margin:2px 10px;font-size:13px}.sb-foot{flex-direction:column;gap:6px;margin-top:auto;padding-top:16px;display:flex}.sb-foot-row{align-items:center;gap:6px;display:flex}.sb-theme{background:var(--soft);border-radius:10px;flex:1;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.sb-side .sb-theme button{height:28px;color:var(--faint);border-radius:8px;place-items:center;transition:background .15s,color .15s;display:grid}.sb-side .sb-theme button:hover{color:var(--foreground)}.sb-side .sb-theme button.on{background:var(--surface);color:var(--clay);box-shadow:0 1px 2px var(--shadow)}.sb-foot .display-menu{position:relative}.sb-side .sb-foot .display-trigger{background:var(--soft);border:1px solid #0000;height:34px}.sb-side .sb-foot .display-trigger:hover{border-color:var(--clay)}.sb-foot .display-panel{inset:auto 0 calc(100% + 8px) auto}.sb-me{border-radius:10px;align-items:center;gap:11px;padding:8px 10px;transition:background .15s;display:flex;position:relative}.sb-me:hover{background:var(--soft)}.sb-av{background:var(--indigo-light);width:34px;height:34px;color:var(--indigo);box-shadow:inset 0 0 0 1px var(--border);border-radius:99px;flex-shrink:0;place-items:center;font-size:13px;font-weight:600;display:grid}.sb-me-text{flex-grow:1;min-width:0;line-height:1.25}.sb-me-text b{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;font-weight:500;display:block;overflow:hidden}.sb-me-text span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.sb-shell .sb-icon{width:30px;height:30px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.sb-shell .sb-icon:hover{background:var(--hover);color:var(--foreground)}.sb-pop{z-index:70;background:var(--surface);border:1px solid var(--border);min-width:150px;box-shadow:0 12px 34px var(--shadow);border-radius:10px;padding:4px;position:absolute;bottom:calc(100% + 6px);right:6px}.sb-pop a{color:var(--text);border-radius:7px;align-items:center;gap:8px;padding:8px 10px;font-size:13.5px;display:flex}.sb-pop a:hover{background:var(--soft)}@media (max-width:819px){.v2-shell.sb-shell{flex-direction:column}.sb-topbar{z-index:40;background:var(--panel);border-bottom:1px solid var(--border);color:var(--foreground);align-items:center;gap:10px;padding:8px 12px;display:flex;position:sticky;top:0}.sb-shell .sb-topbar .sb-icon{color:var(--text)}.sb-side{z-index:60;visibility:hidden;box-shadow:0 0 40px var(--shadow);max-width:85vw;transition:transform .2s,visibility .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.sb-side.open{visibility:visible;transform:none}.sb-scrim{z-index:55;background:#14141359;display:block;position:fixed;inset:0}.sb-main{width:100%}}:root[data-theme=dark] .sb-theme{background:color-mix(in srgb, var(--background) 70%, black);box-shadow:inset 0 0 0 1px var(--border)}:root[data-theme=dark] .sb-side .sb-theme button{color:var(--muted)}:root[data-theme=dark] .sb-side .sb-theme button:hover{color:var(--foreground);background:color-mix(in srgb, var(--surface) 50%, transparent)}:root[data-theme=dark] .sb-side .sb-theme button.on{background:var(--surface);color:var(--clay);box-shadow:inset 0 0 0 1px var(--border-strong), 0 1px 3px #0006}:root[data-theme=dark] .sb-side .sb-foot .display-trigger{background:color-mix(in srgb, var(--background) 70%, black);border-color:var(--border);color:var(--muted)}:root[data-theme=dark] .sb-side .sb-foot .display-trigger:hover{color:var(--foreground);border-color:var(--clay)}.sb-side .sb-foot .display-trigger{width:34px;color:var(--muted);border-radius:10px;place-items:center;padding:0;display:grid}.sb-side .sb-foot .display-trigger:hover{color:var(--foreground)}.sb-foot .display-panel{z-index:80;position:fixed;inset:auto auto 16px 268px}@media (max-width:819px){.sb-foot .display-panel{bottom:80px;left:16px;right:16px}}.display-panel.display-panel-pop{z-index:200;max-width:calc(100vw - 24px);position:relative;inset:auto}.sx-overlay{z-index:200;background:#1e1c1861;justify-content:center;align-items:flex-start;padding:70px 16px 16px;display:flex;position:fixed;inset:0}.sx-box{background:var(--paper);width:640px;max-width:100%;max-height:calc(100vh - 90px);color:var(--text);box-shadow:0 0 0 1px var(--paper-edge), 0 30px 60px -20px #281e0f73;font-family:var(--font-sans), var(--font-ka-sans), system-ui, sans-serif;border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.sx-in{border-bottom:1px solid var(--border);color:var(--faint);align-items:center;gap:12px;padding:16px 20px;display:flex}.sx-in input{min-width:0;font:inherit;color:var(--foreground);background:0 0;border:0;outline:0;flex:1;font-size:17px}.sx-in input::placeholder{color:var(--faint)}.sx-in kbd,.sx-ft kbd{font:inherit;color:var(--muted);box-shadow:inset 0 0 0 1px var(--border-strong);border-radius:6px;padding:2px 7px;font-size:11.5px}.sx-body{min-height:0;padding:8px 10px 10px;overflow-y:auto}.sx-h{letter-spacing:.05em;text-transform:uppercase;color:var(--faint);padding:12px 12px 6px;font-size:11.5px;font-weight:600}.sx-r{cursor:pointer;border-radius:10px;align-items:flex-start;gap:12px;padding:9px 12px;display:flex}.sx-r.on{background:var(--hover)}.sx-ic{background:var(--soft);width:30px;height:30px;color:var(--muted);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.sx-r.on .sx-ic{background:var(--surface);color:var(--clay)}.sx-t{flex:1;min-width:0}.sx-t b{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:500;display:block;overflow:hidden}.sx-t em{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12.5px;font-style:normal;display:block;overflow:hidden}.sx-t p{font-family:var(--font-serif), var(--font-ka-serif), Georgia, serif;color:var(--text-2);overflow-wrap:anywhere;margin:3px 0 0;font-size:14px;line-height:1.5}.sx-t mark{background:color-mix(in srgb, var(--clay) 28%, transparent);color:inherit;border-radius:3px;padding:0 2px}.sx-tag{color:var(--faint);box-shadow:inset 0 0 0 1px var(--border-strong);white-space:nowrap;border-radius:99px;align-self:center;padding:2px 8px;font-size:11.5px}.sx-ft{border-top:1px solid var(--border);color:var(--faint);background:var(--soft);gap:16px;padding:10px 20px;font-size:12px;display:flex}.sx-ft kbd{margin-right:4px;padding:1px 6px;font-size:11px}.sx-empty{text-align:center;color:var(--faint);padding:26px 20px 30px;font-size:14px}.sx-empty b{color:var(--text);margin-bottom:4px;font-weight:600;display:block}@media (max-width:640px){.sx-overlay{padding-top:56px}.sx-ft,.sx-tag{display:none}}
