:root{--bg:#000;--bg-1:#050608;--panel:#0a0c10;--panel-2:#0f1116;--panel-3:#14171e;--line:#ffffff0d;--line-2:#ffffff14;--line-3:#ffffff24;--ink:#f5f7fa;--ink-1:#f5f7faeb;--ink-2:#f5f7fa9e;--ink-3:#f5f7fa66;--ink-4:#f5f7fa3d;--acc:#22d3ee;--acc-2:#67e8f9;--acc-ink:#001318;--acc-soft:#22d3ee1a;--acc-soft-2:#22d3ee33;--ok:#5eead4;--warn:#fbbf24;--danger:#f87171;--info:#93c5fd;--paper:#f8f7f4;--paper-2:#efece5;--paper-line:#00000014;--paper-ink:#16181d;--paper-ink-2:#16181dad;--paper-ink-3:#16181d6b;--paper-acc:#0a8a9a;--code-bg:#07090d;--code-ink:#e2e8f0;--code-comment:#6b7280;--code-key:#c4b5fd;--code-str:#86efac;--code-fn:#67e8f9;--code-num:#fbbf24;--r-1:4px;--r-2:8px;--r-3:12px;--r-4:16px;--font-sans:"Inter", "Inter Display", ui-sans-serif, system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--sidebar-w:220px;--sidebar-w-collapsed:72px;--topbar-h:56px}*{box-sizing:border-box}html,body,#root{height:100%}html{background:var(--bg)}body{font-family:var(--font-sans);font-feature-settings:"ss01", "cv11";background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.005em;margin:0;font-size:14px;line-height:1.5}button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}input,textarea,select{font:inherit;color:inherit}hr{border:0;border-top:1px solid var(--line-2);margin:0}::selection{color:#111827;background:#22d3ee4d}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:1.5px solid var(--acc);outline-offset:2px;border-radius:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff14 padding-box content-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e padding-box content-box;border:2px solid #0000}.mono{font-family:var(--font-mono);font-feature-settings:"zero", "ss01";letter-spacing:0}.tnum{font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:10px}.label-xs{color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-family:var(--font-mono)}.divider{background:var(--line-2);height:1px}.cluster{align-items:center;gap:8px;display:flex}.app{grid-template-columns:var(--sidebar-w) 1fr;background:var(--bg);height:100vh;transition:grid-template-columns .24s cubic-bezier(.4,0,.2,1);display:grid}.app[data-sidebar=collapsed]{grid-template-columns:var(--sidebar-w-collapsed) 1fr}.sidebar{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;display:flex;position:relative;overflow:hidden}.sidebar-brand{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:center;align-items:center;min-height:88px;padding:18px 16px;display:flex}.sidebar-brand .brand-mark{filter:drop-shadow(0 0 18px #22d3ee29);flex-shrink:0;justify-content:center;align-items:center;width:135px;max-width:100%;display:flex}.sidebar-brand .brand-mark img{object-fit:contain;width:100%;height:auto;display:block}.sidebar-brand .brand-mark .brand-imago{display:none}.app[data-sidebar=collapsed] .sidebar-brand .brand-mark{width:38px}.app[data-sidebar=collapsed] .sidebar-brand .brand-mark .brand-full{display:none}.app[data-sidebar=collapsed] .sidebar-brand .brand-mark .brand-imago{display:block}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:16px 10px;display:flex;overflow-y:auto}.sidebar-group{flex-direction:column;gap:1px;display:flex}.crumb-seg{align-items:center;gap:8px;display:inline-flex}.crumb-link{color:var(--ink-2);border-radius:4px;margin:0 -4px;padding:2px 4px;font-size:13px;transition:color .12s,background .12s}.crumb-link:hover{color:var(--acc);background:var(--acc-soft)}.sidebar-section{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-family:var(--font-mono);padding:14px 12px 6px}.app[data-sidebar=collapsed] .sidebar-section{text-align:center;padding:14px 0 6px;font-size:8px}.app[data-sidebar=collapsed] .sidebar-section span{display:none}.app[data-sidebar=collapsed] .sidebar-section:before{content:"·";color:var(--ink-4)}.nav-item{border-radius:var(--r-2);color:var(--ink-2);text-align:left;white-space:nowrap;align-items:center;gap:12px;width:100%;padding:9px 12px;font-size:13.5px;font-weight:450;transition:background .12s,color .12s;display:flex;position:relative}.nav-item:hover{background:var(--panel-2);color:var(--ink)}.nav-item.active{color:var(--ink);background:var(--panel-2)}.nav-item.active:before{content:"";background:var(--acc);border-radius:2px;width:2px;position:absolute;top:14px;bottom:14px;left:-10px}.nav-item svg{opacity:.85;flex-shrink:0}.nav-item .pill{font-family:var(--font-mono);background:var(--panel-3);color:var(--ink-3);letter-spacing:.04em;border-radius:999px;margin-left:auto;padding:2px 6px;font-size:10px}.app[data-sidebar=collapsed] .nav-item{justify-content:center;padding:11px 0;position:relative}.app[data-sidebar=collapsed] .nav-item .nav-label,.app[data-sidebar=collapsed] .nav-item .pill{display:none}.app[data-sidebar=collapsed] .nav-item.active:before{top:16px;bottom:16px;left:0}.app[data-sidebar=collapsed] .nav-item:after{content:attr(data-tooltip);background:var(--panel-3);color:var(--ink);border:1px solid var(--line-3);white-space:nowrap;pointer-events:none;opacity:0;z-index:50;letter-spacing:-.005em;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:500;transition:opacity .12s,transform .16s;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)translate(-4px);box-shadow:0 10px 24px #0006}.app[data-sidebar=collapsed] .nav-item:hover:after{opacity:1;transform:translateY(-50%)translate(0)}.sidebar-foot{border-top:1px solid var(--line);flex-shrink:0;align-items:center;gap:6px;padding:12px 10px;display:flex}.user-chip{border-radius:var(--r-2);text-align:left;flex:1;align-items:center;gap:10px;min-width:0;padding:8px 10px;transition:background .12s;display:flex}.user-chip:hover{background:var(--panel-2)}.user-signout{border-radius:var(--r-2);width:32px;height:32px;color:var(--ink-3);flex-shrink:0;justify-content:center;align-items:center;transition:all .12s;display:flex;position:relative}.user-signout:hover{color:var(--danger);background:#f8717114}.app[data-sidebar=collapsed] .user-signout{display:none}.app[data-sidebar=collapsed] .sidebar-foot{justify-content:center}.user-avatar{width:28px;height:28px;font-family:var(--font-mono);color:var(--acc);border:1px solid var(--line-2);background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:600;display:flex}.user-meta{flex:1;min-width:0}.user-name{color:var(--ink);font-size:12.5px;font-weight:500;line-height:1.2}.user-plan{color:var(--ink-3);font-size:10.5px;font-family:var(--font-mono);letter-spacing:.04em;margin-top:2px}.app[data-sidebar=collapsed] .user-meta{display:none}.main{flex-direction:column;display:flex;overflow:hidden}.topbar{height:var(--topbar-h);border-bottom:1px solid var(--line);background:var(--bg);flex-shrink:0;align-items:center;gap:16px;padding:0 24px;display:flex}.topbar-crumb{color:var(--ink-2);align-items:center;gap:8px;font-size:13px;display:flex}.topbar-crumb .crumb-cur{color:var(--ink)}.topbar-crumb .sep{color:var(--ink-4)}.topbar-search{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-2);width:320px;color:var(--ink-3);align-items:center;gap:8px;margin-left:auto;padding:6px 10px;font-size:13px;transition:border-color .12s;display:flex}.topbar-search:hover,.topbar-search:focus-within{border-color:var(--line-3)}.topbar-search input{color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:13px}.topbar-search .kbd{font-family:var(--font-mono);color:var(--ink-3);background:var(--panel-3);border:1px solid var(--line-2);border-radius:3px;padding:2px 5px;font-size:10px}.topbar-actions{align-items:center;gap:6px;display:flex}.icon-btn{border-radius:var(--r-2);width:32px;height:32px;color:var(--ink-2);justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.icon-btn:hover{background:var(--panel-2);color:var(--ink)}.icon-btn .dot{background:var(--acc);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;right:8px}.scroll{flex:1;overflow:hidden auto}.btn{border-radius:var(--r-2);white-space:nowrap;border:1px solid #0000;flex-shrink:0;align-items:center;gap:8px;height:34px;padding:0 14px;font-size:13px;font-weight:500;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.btn-primary{background:var(--acc);color:var(--acc-ink);font-weight:600}.btn-primary:hover{background:var(--acc-2)}.btn-ghost{color:var(--ink-1);border-color:var(--line-2)}.btn-ghost:hover{background:var(--panel-2);border-color:var(--line-3)}.btn-link{color:var(--acc);height:auto;padding:0;font-size:12.5px}.btn-link:hover{color:var(--acc-2)}.btn-sm{height:28px;padding:0 10px;font-size:12px}.btn-lg{height:40px;padding:0 18px;font-size:14px}.chip{height:22px;font-size:11px;font-family:var(--font-mono);letter-spacing:.04em;border:1px solid var(--line-2);color:var(--ink-2);white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.chip-acc{color:var(--acc);background:var(--acc-soft);border-color:#22d3ee52}.chip-ok{color:var(--ok);border-color:#5eead44d}.chip-warn{color:var(--warn);border-color:#fbbf244d}.chip-mute{color:var(--ink-3)}.chip-dot:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-3)}.panel-flush{border:1px solid var(--line);border-radius:var(--r-3);background:0 0}.panel-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:16px 18px;display:flex}.panel-head h3{color:var(--ink);letter-spacing:-.005em;margin:0;font-size:13px;font-weight:600}.panel-head .panel-sub{color:var(--ink-3);font-size:11px;font-family:var(--font-mono);letter-spacing:.04em;margin-left:auto}.panel-body{padding:16px 18px}.annotation-tabs{border-bottom:1px solid var(--line);gap:4px;margin-top:20px;display:flex;overflow-x:auto}.annotation-tab{min-height:42px;color:var(--ink-3);white-space:nowrap;align-items:center;gap:8px;padding:0 14px;font-size:12.5px;font-weight:500;transition:color .12s,background .12s;display:inline-flex;position:relative}.annotation-tab:hover{color:var(--ink);background:#ffffff06}.annotation-tab.active{color:var(--ink)}.annotation-tab.active:after{content:"";background:var(--acc);height:1.5px;position:absolute;bottom:-1px;left:12px;right:12px}.annotation-tab span{border:1px solid var(--line-2);min-width:20px;color:var(--ink-3);font-family:var(--font-mono);text-align:center;border-radius:999px;padding:1px 6px;font-size:10.5px}.annotation-tab.active span{color:var(--acc);border-color:#22d3ee47}.annotation-tab-panel{margin-top:18px}.practice-host{flex:1;min-height:0;overflow:hidden}.practice-shell{grid-template-columns:minmax(0, 1fr) var(--practice-rail-width,320px);height:calc(100vh - var(--topbar-h));background:var(--bg);min-height:0;transition:grid-template-columns .24s cubic-bezier(.4,0,.2,1);display:grid}.practice-shell.tools-collapsed{grid-template-columns:minmax(0,1fr) 52px}.practice-main{min-width:0;min-height:0;overflow-y:auto}.screen.practice-screen{max-width:1320px;margin:0 auto;padding:44px 40px 80px}.practice-layout{grid-template-columns:minmax(0, 1fr) var(--practice-rail-width,380px);align-items:start;gap:18px;display:grid}.practice-exercise-list{border-top:1px solid var(--line)}.practice-exercise{border-bottom:1px solid var(--line)}.practice-exercise:last-child{border-bottom:0}.practice-exercise-toggle{text-align:left;justify-content:space-between;align-items:center;gap:14px;width:100%;transition:background .12s;display:flex;padding:15px 20px!important}.practice-exercise-toggle:hover{background:#ffffff08}.practice-exercise-title-row{flex-wrap:wrap;align-items:baseline;gap:6px 12px;min-width:0;display:flex}.practice-exercise-title{color:var(--ink);letter-spacing:-.005em;font-size:13px;font-weight:650}.practice-exercise-meta{color:var(--ink-4);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:8px;font-size:10px;display:inline-flex}.practice-exercise-saved{color:var(--acc);align-items:center;gap:4px;display:inline-flex}.practice-exercise-chevron{color:var(--ink-4);flex-shrink:0;transition:transform .16s,color .12s}.practice-exercise-toggle:hover .practice-exercise-chevron{color:var(--ink-2)}.practice-exercise-chevron.is-open{transform:rotate(180deg)}.practice-exercise-body{padding:0 20px 22px!important}.practice-answer-box{resize:vertical;border:1px solid var(--line-2);border-radius:var(--r-2);width:100%;min-height:180px;color:var(--ink);background:#0000006b;outline:0;margin-top:16px;padding:14px 16px;font-size:13px;line-height:1.6;transition:border-color .12s,background .12s}.practice-answer-box::placeholder{color:var(--ink-4)}.practice-answer-box:focus{background:#0000008c;border-color:#22d3ee6b}.practice-action-btn{color:#064b55;background:#d2faffeb;border-color:#0a8a9a47}.practice-action-btn:hover{color:#032f36;background:#f0fdff;border-color:#0a8a9a73}.practice-tools{border-left:1px solid var(--line);min-height:0;height:calc(100vh - var(--topbar-h));max-height:calc(100vh - var(--topbar-h));background:var(--bg);flex-direction:column;padding:0;display:flex;position:sticky;top:0;overflow:hidden}.practice-tools.is-collapsed{align-items:center;gap:4px;padding:14px 6px;overflow:hidden}.practice-tools>.tools-section{flex-direction:column;flex:1;min-height:0;display:flex}.practice-tools-books{flex:1;min-height:0;margin:0 -18px -18px;overflow-y:auto}.practice-rail{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-3);align-self:start;min-height:calc(100vh - 128px);max-height:calc(100vh - 112px);position:sticky;top:96px;overflow:hidden}.practice-rail.is-collapsed{min-height:calc(100vh - 128px)}.practice-rail-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:16px 18px;display:flex}.practice-rail-head h3{color:var(--ink);margin:0;font-size:13px;font-weight:650}.practice-rail-head span{color:var(--ink-3);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-top:5px;font-size:10px;display:block}.practice-rail-toggle{border:1px solid var(--line-2);width:30px;height:30px;color:var(--ink-3);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.practice-rail-toggle:hover,.practice-rail-expand:hover{color:var(--acc);background:var(--acc-soft);border-color:#22d3ee42}.practice-rail-expand{width:100%;min-height:calc(100vh - 160px);color:var(--ink-3);border:0;flex-direction:column;align-items:center;gap:14px;display:flex;padding:14px 0!important}.practice-rail-expand span{writing-mode:vertical-rl;margin:0}.practice-rail-empty{color:var(--ink-3);padding:16px 18px;font-size:13px;line-height:1.6}.practice-rail-scroll{max-height:calc(100vh - 186px);overflow:auto}.practice-book-group{border-bottom:1px solid var(--line)}.practice-book-group:last-child{border-bottom:0}.practice-book-toggle{text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;transition:background .12s;display:flex;padding:14px 18px!important}.practice-book-toggle:hover,.practice-book-toggle.is-active{background:#22d3ee14}.practice-book-text{min-width:0}.practice-book-text span:first-child{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;display:block;overflow:hidden}.practice-book-text span:last-child{color:var(--ink-4);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;font-size:10px;display:block}.practice-book-arrow{color:var(--ink-4);flex-shrink:0}.practice-book-arrow.is-active{color:var(--acc)}.practice-lesson-list{padding:14px}.practice-lesson-toggle{width:100%;color:var(--ink-3);text-align:left;border-radius:8px;align-items:flex-start;gap:8px;margin-bottom:4px;transition:background .12s,color .12s;display:flex;padding:8px 10px!important}.practice-lesson-toggle:hover{color:var(--ink-1);background:#ffffff08}.practice-lesson-toggle.is-active{color:var(--acc);background:#22d3ee1a}.practice-lesson-toggle span{min-width:0;font-size:12.5px;line-height:1.45}.bar{background:var(--line-2);border-radius:999px;height:4px;position:relative;overflow:hidden}.bar>i{background:var(--acc);border-radius:999px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1);display:block}.bar-lg{height:6px}.bar-xs{height:2px}.stat{flex-direction:column;gap:6px;display:flex}.stat-num{font-family:var(--font-mono);color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:32px;font-weight:300;line-height:1}.stat-num .unit{color:var(--ink-3);margin-left:4px;font-size:14px}.stat-label{color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-family:var(--font-mono)}.stat-trend{color:var(--ok);font-size:11px;font-family:var(--font-mono)}.book-cover{background:var(--panel-2);border-radius:var(--r-2);aspect-ratio:.72;position:relative;overflow:hidden;box-shadow:0 8px 24px #0006,inset 0 1px #ffffff0a}.book-cover img{object-fit:cover;width:100%;height:100%;display:block}.book-cover.locked img{filter:grayscale(.8)brightness(.55)}.book-cover.locked:after{content:"";background:linear-gradient(#0000 50%,#00000080 100%);position:absolute;inset:0}.app[data-density=compact]{font-size:13px}.app[data-density=compact] .panel-body,.app[data-density=compact] .panel-head{padding:12px 14px}.app[data-density=compact] .nav-item{padding:7px 12px;font-size:13px}.app[data-density=compact] .stat-num{font-size:26px}.app[data-accent=teal]{--acc:#2dd4bf;--acc-2:#5eead4;--acc-ink:#001a17;--acc-soft:#2dd4bf1a;--acc-soft-2:#2dd4bf33}.app[data-accent=mint]{--acc:#5eead4;--acc-2:#99f6e4;--acc-ink:#002b25;--acc-soft:#5eead41a;--acc-soft-2:#5eead433}.app[data-accent=mono]{--acc:#fff;--acc-2:#e2e8f0;--acc-ink:#000;--acc-soft:#ffffff0f;--acc-soft-2:#ffffff24}.screen{flex-direction:column;gap:28px;max-width:1480px;margin:0 auto;padding:32px 40px 80px;display:flex}.screen.dashboard{padding-top:32px}.app[data-density=compact] .screen{gap:20px;padding:24px 32px 60px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.page-head .eyebrow{margin-bottom:8px}.page-title{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:32px;font-weight:300;line-height:1.1}.page-title b,.page-title strong{font-weight:500}.page-sub{color:var(--ink-2);max-width:540px;margin:10px 0 0;font-size:14px;line-height:1.55}.page-head-actions{gap:8px;display:flex}.grid-12{grid-template-columns:repeat(12,1fr);gap:24px;display:grid}.col-7{grid-column:span 7;min-width:0}.col-5{grid-column:span 5;min-width:0}.col-6{grid-column:span 6;min-width:0}.col-8{grid-column:span 8;min-width:0}.col-4{grid-column:span 4;min-width:0}.col-12{grid-column:span 12;min-width:0}.stack{flex-direction:column;gap:24px;display:flex}.app[data-density=compact] .grid-12,.app[data-density=compact] .stack{gap:18px}.resume-hero{border:1px solid var(--line);border-radius:var(--r-4);background:radial-gradient(circle at 0% 0%, #22d3ee0a 0%, transparent 50%), var(--bg-1);grid-template-columns:220px 1fr;gap:36px;padding:36px;display:grid;position:relative;overflow:hidden}.resume-cover{flex-direction:column;align-items:center;gap:18px;display:flex}.resume-cover .book-cover{width:160px}.resume-progress-stack{flex-direction:column;align-items:center;gap:2px;display:flex}.resume-body{flex-direction:column;gap:14px;min-width:0;display:flex}.resume-title{letter-spacing:-.015em;color:var(--ink);margin:4px 0 0;font-size:26px;font-weight:400;line-height:1.2}.resume-where{font-size:15px;font-family:var(--font-sans);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.resume-meta{color:var(--ink-3);font-size:12px;font-family:var(--font-mono);letter-spacing:.02em;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.resume-meta span{align-items:center;gap:5px;display:flex}.resume-bar{max-width:460px;margin-top:8px}.resume-cta{gap:10px;margin-top:12px;display:flex}.stat-strip{background:var(--line);border:1px solid var(--line);border-radius:var(--r-3);grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.stat-cell{background:var(--bg);flex-direction:column;gap:8px;padding:22px 24px;display:flex}.continue-list{flex-direction:column;display:flex}.continue-row{border-top:1px solid var(--line);text-align:left;width:100%;color:inherit;align-items:center;gap:16px;padding:14px 18px;transition:background .12s;display:flex}.continue-row:first-child{border-top:0}.continue-row:hover{background:var(--panel-2)}.continue-meta{flex:1;min-width:0}.continue-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px;font-size:13.5px;font-weight:500;overflow:hidden}.continue-sub{color:var(--ink-3);letter-spacing:.02em;align-items:center;gap:6px;font-size:11px;display:flex}.continue-row svg{color:var(--ink-4)}.continue-row:hover svg{color:var(--ink-2)}.activity-list{flex-direction:column;display:flex}.activity-row{border-top:1px solid var(--line);gap:14px;padding:12px 18px;display:flex}.activity-row:first-child{border-top:0}.activity-icon{background:var(--panel-2);width:26px;height:26px;color:var(--ink-2);border:1px solid var(--line-2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-meta{min-width:0}.activity-title{color:var(--ink);font-size:13px;line-height:1.4}.activity-sub{color:var(--ink-3);letter-spacing:.02em;margin-top:3px;font-size:11px}.notes-list{flex-direction:column;display:flex}.note-row{border-top:1px solid var(--line);padding:16px 18px;position:relative}.note-row:first-child{border-top:0}.note-where{letter-spacing:.02em;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;display:flex}.note-text{color:var(--ink-1);border-left:1.5px solid var(--acc-soft-2);padding-left:12px;font-size:13px;line-height:1.6}.note-foot{color:var(--ink-4);letter-spacing:.06em;align-items:center;gap:6px;margin-top:8px;font-size:10.5px;display:flex}.annotation-delete{color:var(--ink-4);align-items:center;gap:5px;margin-left:auto;transition:color .12s;display:inline-flex}.annotation-delete:hover{color:#fca5a5}.shelf-row{grid-template-columns:repeat(8,1fr);gap:22px;display:grid}@media (max-width:1280px){.shelf-row{grid-template-columns:repeat(6,1fr)}}@media (max-width:1024px){.shelf-row{grid-template-columns:repeat(4,1fr)}}.shelf-card{border-radius:var(--r-2);text-align:left;color:inherit;flex-direction:column;gap:10px;width:100%;margin:-10px;padding:10px;transition:background .12s;display:flex}.shelf-card:hover{background:var(--panel-2)}.shelf-card .book-cover{width:100%}.shelf-card .lock-overlay{color:var(--ink-2);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.shelf-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:500;line-height:1.3;overflow:hidden}.shelf-meta{letter-spacing:.06em;align-items:center;gap:6px;font-size:10px;display:flex}.practice-pie{align-items:center;gap:18px;display:flex}.lib-filters{flex-wrap:wrap;align-items:center;gap:18px;padding:6px 0;display:flex}.lib-search{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-2);color:var(--ink-3);flex:1;align-items:center;gap:8px;min-width:320px;max-width:460px;padding:8px 14px;display:flex}.lib-search input{color:var(--ink);background:0;border:0;outline:0;flex:1;font-size:13.5px}.lib-filter-group{align-items:center;gap:6px;display:flex}.lib-chip{border:1px solid var(--line-2);height:26px;color:var(--ink-2);border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:12px;transition:all .12s;display:inline-flex}.lib-chip:hover{color:var(--ink);border-color:var(--line-3)}.lib-chip.active{color:var(--acc);background:var(--acc-soft);border-color:#22d3ee5c}.lib-chip.coming{color:var(--ink-4);cursor:not-allowed}.lib-chip.coming:hover{color:var(--ink-4);border-color:var(--line-2)}.lib-chip.mono{letter-spacing:.04em;font-size:11px}.lib-dropdown{position:relative}.lib-dropdown-trigger{background:var(--panel-2);border:1px solid var(--line-2);border-radius:var(--r-2);height:40px;color:var(--ink-1);text-align:left;align-items:center;gap:10px;min-width:200px;padding:0 12px 0 14px;font-size:12.5px;transition:all .12s;display:flex}.lib-dropdown-trigger:hover{border-color:var(--line-3)}.lib-dropdown-trigger.is-active{background:var(--acc-soft);border-color:#22d3ee5c}.lib-dropdown-trigger.is-active>svg:first-child{color:var(--acc)}.lib-dropdown-trigger>svg:last-child{color:var(--ink-3);margin-left:auto;transition:transform .12s}.lib-dropdown-trigger[aria-expanded=true]>svg:last-child{color:var(--ink);transform:rotate(180deg)}.lib-dropdown-label{flex-direction:column;gap:1px;min-width:0;line-height:1.1;display:flex}.lib-dropdown-label .label-xs{letter-spacing:.1em;font-size:9.5px}.lib-dropdown-value{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.lib-dropdown-trigger.is-active .lib-dropdown-value{color:var(--acc)}.lib-menu-scrim{z-index:30;position:fixed;inset:0}.lib-menu{background:var(--panel);border:1px solid var(--line-3);border-radius:var(--r-3);z-index:40;min-width:280px;max-width:360px;padding:6px;animation:.14s cubic-bezier(.4,0,.2,1) libMenuIn;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 24px 48px -16px #0009,0 0 0 1px #ffffff05}@keyframes libMenuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lib-menu-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:9.5px;font-family:var(--font-mono);padding:10px 12px 6px}.lib-menu-item{border-radius:var(--r-2);text-align:left;width:100%;color:var(--ink-1);align-items:center;gap:12px;padding:10px 12px;transition:background .12s;display:flex}.lib-menu-item:hover{background:var(--panel-3)}.lib-menu-item.active{background:var(--acc-soft)}.lib-menu-item.active .lib-menu-title{color:var(--acc)}.lib-menu-item-compact{padding:8px 12px}.lib-menu-dot{background:var(--ink-3);border-radius:50%;flex-shrink:0;width:9px;height:9px;box-shadow:0 0 0 3px #ffffff0a}.lib-menu-dot.tone-ok{background:var(--ok);box-shadow:0 0 0 3px #5eead41a}.lib-menu-dot.tone-warn{background:var(--warn);box-shadow:0 0 0 3px #fbbf241a}.lib-menu-dot.tone-info{background:var(--info);box-shadow:0 0 0 3px #93c5fd1a}.lib-menu-dot.tone-mute{background:var(--ink-3);box-shadow:0 0 0 3px #ffffff08}.lib-menu-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.lib-menu-title{color:var(--ink);letter-spacing:-.005em;font-size:13px;font-weight:500}.lib-menu-desc{color:var(--ink-3);font-size:11.5px;line-height:1.45}.lib-menu-count{color:var(--ink-3);background:var(--panel-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 7px;font-size:11px}.lib-menu-item.active .lib-menu-count{color:var(--acc);background:#22d3ee24}.lib-active-filter{background:var(--acc-soft);height:22px;color:var(--acc);letter-spacing:.04em;cursor:pointer;border:1px solid #22d3ee52;border-radius:999px;align-items:center;gap:6px;margin-left:12px;padding:0 8px 0 6px;font-size:10.5px;transition:all .12s;display:inline-flex}.lib-active-filter:hover{background:var(--acc-soft-2)}.lib-active-filter .lib-menu-dot{width:6px;height:6px;box-shadow:none}.lib-count{color:var(--ink-3);letter-spacing:.06em;border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:4px 0 14px;font-size:11px;display:flex}.lib-grid{grid-template-columns:repeat(5,1fr);gap:28px 24px;margin-top:8px;display:grid}.app[data-density=compact] .lib-grid{grid-template-columns:repeat(6,1fr);gap:22px 18px}.lib-card{text-align:left;color:inherit;background:0 0;flex-direction:column;gap:10px;transition:transform .2s;display:flex;position:relative}.lib-card:hover{transform:translateY(-2px)}.lib-card .book-cover{box-shadow:none;background:0 0;position:relative}.lib-card .lock-overlay{color:var(--ink-2);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lib-card-meta{flex-direction:column;gap:5px;display:flex}.lib-card-title{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.lib-card-row{letter-spacing:.04em;align-items:center;gap:6px;font-size:10px;display:flex}.card-progress-overlay{z-index:1;position:absolute;bottom:8px;left:8px;right:8px}.chip-tag{letter-spacing:.08em;font-size:9.5px;font-family:var(--font-mono);border-radius:3px;padding:2px 6px;display:inline-flex}.chip-ok{color:var(--ok);background:#5eead414}.chip-warn{color:var(--warn);background:#fbbf2414}.chip-info{color:var(--info);background:#93c5fd14}.chip-mute{color:var(--ink-3);background:#ffffff0a}.lib-tableX{border:1px solid var(--line);border-radius:var(--r-3);background:var(--bg);flex-direction:column;display:flex;overflow:hidden}.lib-tableX-head,.lib-tableX-row{grid-template-columns:2.5fr .9fr .9fr .9fr 1.1fr .6fr .3fr;align-items:center;gap:12px;padding:12px 18px;display:grid}.lib-tableX-head{letter-spacing:.08em;color:var(--ink-4);background:var(--panel-2);border-bottom:1px solid var(--line);font-size:10.5px}.lib-tableX-row{border-top:1px solid var(--line);text-align:left;color:var(--ink-1);width:100%;font-size:13px;transition:background .12s}.lib-tableX-row:hover{background:var(--panel-2)}.lib-tableX-row .t-title{color:var(--ink);font-weight:500}.lib-tableX-row .t-mute{color:var(--ink-3);font-size:12.5px}.lib-tableX-row .t-prog{color:var(--ink-2);align-items:center;gap:10px;font-size:12px;display:flex}.bd-hero{grid-template-columns:220px 1fr;gap:48px;padding:8px 0 16px;display:grid}.bd-cover .book-cover{width:200px}.bd-meta{min-width:0}.bd-title{letter-spacing:-.02em;color:var(--ink);margin:16px 0 12px;font-size:36px;font-weight:400;line-height:1.15}.bd-sub{color:var(--ink-2);max-width:580px;margin:0 0 24px;font-size:14.5px;line-height:1.6}.bd-meta-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:16px 32px;margin-bottom:22px;padding:18px 0;display:grid}.bd-meta-grid .label-xs{margin-bottom:6px}.bd-meta-grid>div>div:last-child{color:var(--ink);font-size:13px;font-weight:450}.bd-progress{max-width:480px;margin-bottom:22px}.bd-cta{gap:10px;display:flex}.bd-chapters{flex-direction:column;display:flex}.bd-chap{border-top:1px solid var(--line)}.bd-chap:first-child{border-top:0}.bd-chap-head{align-items:baseline;gap:14px;padding:18px 22px 4px;display:flex}.bd-chap-title{color:var(--ink);flex:1;font-size:15px;font-weight:500}.bd-chap-prog{letter-spacing:.04em;color:var(--ink);font-size:11.5px}.bd-sections{padding:4px 16px 14px}.bd-sec{border-radius:var(--r-2);text-align:left;width:100%;color:inherit;align-items:center;gap:14px;padding:8px 12px;transition:background .12s;display:flex}.bd-sec:hover{background:var(--panel-2)}.bd-sec.current{background:var(--acc-soft)}.bd-sec-mark{color:var(--ink-3);justify-content:center;align-items:center;width:16px;display:flex}.bd-sec.current .bd-sec-mark{color:var(--acc)}.bd-sec.done .bd-sec-mark{color:var(--ok)}.bd-sec-num{color:var(--ink-3);letter-spacing:.04em;min-width:28px;font-size:11.5px}.bd-sec-title{color:var(--ink-1);letter-spacing:-.005em;flex:1;font-size:13.5px}.bd-sec-min{color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:11px}.bd-sec.done .bd-sec-num{color:var(--ink-2)}.bd-sec.done .bd-sec-title{color:var(--ink)}.bd-sec.done .bd-sec-min{color:var(--ok)}.bd-sec.current .bd-sec-num{color:var(--acc)}.bd-sec.current .bd-sec-title{color:var(--ink);font-weight:500}.account-layout{grid-template-columns:220px 1fr;gap:36px;display:grid}.account-layout-simple{grid-template-columns:minmax(0,760px);max-width:860px}.account-nav{flex-direction:column;gap:1px;display:flex}.account-nav-item{border-radius:var(--r-2);color:var(--ink-2);text-align:left;align-items:center;gap:10px;padding:10px 12px;font-size:13px;transition:all .12s;display:flex}.account-nav-item:hover{color:var(--ink);background:var(--panel-2)}.account-nav-item.active{color:var(--acc);background:var(--acc-soft)}.account-card{border:1px solid var(--line);border-radius:var(--r-3);background:var(--bg)}.account-card-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.account-card-head h3{margin:0;font-size:14px;font-weight:600}.account-card-body{padding:24px 22px}.profile-row{border-bottom:1px solid var(--line);align-items:center;gap:16px;margin-bottom:24px;padding-bottom:24px;display:flex}.profile-avatar{width:64px;height:64px;font-family:var(--font-mono);color:var(--acc);border:1px solid var(--line-2);background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:500;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:16px 18px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field-wide{grid-column:span 2}.field input,.field textarea{background:var(--bg);border:1px solid var(--line-2);border-radius:var(--r-2);color:var(--ink);outline:0;padding:9px 12px;font-size:13.5px;transition:border-color .12s}.field textarea{resize:vertical;min-height:150px;line-height:1.55}.field input:focus,.field textarea:focus{border-color:#22d3ee66}.field input:disabled{color:var(--ink-2);cursor:not-allowed;opacity:.72}.field-hint{color:var(--ink-3);margin-top:2px;font-size:11px}.field-select{position:relative}.field-select-trigger{background:var(--bg);border:1px solid var(--line-2);border-radius:var(--r-2);width:100%;color:var(--ink);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-size:13.5px;transition:border-color .12s;display:flex}.field-select-trigger:hover{border-color:var(--line-3)}.field-select-trigger[aria-expanded=true]{border-color:#22d3ee66}.field-select-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.field-select-trigger>svg{color:var(--ink-3);transition:transform .12s}.field-select-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.field-select-menu{min-width:100%;max-width:none}.lib-menu-item.disabled{opacity:.45;cursor:not-allowed}.lib-menu-item.disabled:hover{background:0 0}.lang-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.lang-card{border:1px solid var(--line);border-radius:var(--r-2);background:var(--bg);color:inherit;text-align:left;align-items:center;gap:12px;padding:14px 16px;transition:all .12s;display:flex}.lang-card:hover{border-color:var(--line-3)}.lang-card.active{background:var(--acc-soft);color:var(--acc);border-color:#22d3ee73}.lang-card.dis{opacity:.5;cursor:not-allowed}.lang-code{color:var(--ink-3);letter-spacing:.08em;min-width:22px;font-size:12px}.lang-card.active .lang-code{color:var(--acc)}.lang-name{color:var(--ink);flex:1;font-size:13.5px}.lang-card.active .lang-name{color:var(--ink)}.lang-status{letter-spacing:.06em;color:var(--ok);font-size:10.5px}.lang-status.dis{color:var(--ink-4)}.danger-zone{border:1px solid var(--line);border-radius:var(--r-3);justify-content:space-between;align-items:center;gap:24px;margin-top:16px;padding:18px 22px;display:flex}.notifications-wrap{display:flex;position:relative}.top-icon-button{border-radius:var(--r-2);width:32px;height:32px;color:var(--ink-2);justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex;position:relative}.top-icon-button:hover,.top-icon-button[aria-expanded=true]{background:var(--panel-2);color:var(--ink)}.top-icon-dot{background:var(--acc);width:6px;height:6px;box-shadow:0 0 0 2px var(--bg);border-radius:999px;position:absolute;top:8px;right:8px}.notifications-panel{z-index:49;border:1px solid var(--line-2);border-radius:var(--r-3);background:var(--bg-1);width:min(390px,100vw - 32px);position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 20px 60px #00000080}.notifications-head{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:16px 18px;display:flex}.notifications-head h3{color:var(--ink);margin:0;font-size:14px;font-weight:600}.notifications-head p{color:var(--ink-3);margin:4px 0 0;font-size:12px;line-height:1.45}.notifications-view-all{color:var(--acc);flex-shrink:0;font-size:12px;font-weight:500}.notifications-list{max-height:390px;display:grid;overflow-y:auto}.notification-row{border-top:1px solid var(--line);color:inherit;grid-template-columns:8px minmax(0,1fr);gap:12px;padding:13px 18px;transition:background .12s;display:grid}.notification-row:first-child{border-top:0}.notification-row:hover{background:var(--panel-2)}.notification-dot{background:var(--acc);border-radius:999px;width:7px;height:7px;margin-top:6px}.notification-dot-spacer{width:7px;height:7px;margin-top:6px}.notification-copy{gap:3px;min-width:0;display:grid}.notification-title{color:var(--ink);font-size:13px;font-weight:500}.notification-section{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.notification-meta{color:var(--ink-4);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.notification-empty{color:var(--ink-3);padding:18px;font-size:13px;line-height:1.6}.support-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px;display:grid}.support-main{min-width:0}.support-side{gap:18px;display:grid}.support-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.support-topic{border:1px solid var(--line);border-radius:var(--r-3);background:var(--bg);min-height:150px;padding:18px}.support-topic h3{color:var(--ink);margin:14px 0 8px;font-size:14px;font-weight:600}.support-topic p{color:var(--ink-3);margin:0;font-size:13px;line-height:1.6}.support-steps{color:var(--ink-3);margin:0;padding:10px 18px 18px 38px;font-size:13px;line-height:1.7}.support-steps li{padding:5px 0}.support-contact-panel{border:1px solid var(--line);border-radius:var(--r-3);background:var(--bg);margin-top:18px;overflow:hidden}.support-contact-panel>summary{cursor:pointer;padding:18px 22px;list-style:none;display:flex}.support-contact-panel>summary::-webkit-details-marker{display:none}.support-contact-title{color:var(--ink);font-size:14px;font-weight:600;display:block}.support-contact-text{color:var(--ink-3);margin-top:5px;font-size:12.5px;line-height:1.5;display:block}.support-contact-panel .support-form{border:0;border-top:1px solid var(--line);border-radius:0}.support-form{border:1px solid var(--line);border-radius:var(--r-3);background:var(--bg)}.support-links,.support-faqs{display:grid}.support-link{border-top:1px solid var(--line);color:inherit;grid-template-columns:18px minmax(0,1fr);gap:12px;padding:14px 18px;transition:background .12s;display:grid}.support-link:first-child{border-top:0}.support-link:hover{background:var(--panel-2)}.support-link-title{color:var(--ink);font-size:13px;font-weight:500;display:block}.support-link-text{color:var(--ink-3);margin-top:4px;font-size:12px;line-height:1.5;display:block}.support-faq{border-top:1px solid var(--line);padding:14px 18px}.support-faq:first-child{border-top:0}.support-faq summary{cursor:pointer;color:var(--ink);font-size:13px;font-weight:500}.support-faq p{color:var(--ink-3);margin:10px 0 0;font-size:12.5px;line-height:1.6}.current-plan{border:1px solid var(--line);border-radius:var(--r-4);background:radial-gradient(circle at 0% 0%, #22d3ee0a 0%, transparent 50%), var(--bg-1);grid-template-columns:1fr 280px;gap:32px;padding:36px;display:grid}.current-plan-name{letter-spacing:-.02em;color:var(--ink);margin:12px 0 8px;font-size:36px;font-weight:300}.current-plan-desc{color:var(--ink-2);max-width:460px;margin:0 0 24px;font-size:14px;line-height:1.6}.current-plan-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.current-plan-grid .label-xs{margin-bottom:6px}.current-plan-right{border-left:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:14px;padding-left:32px;display:flex}.price{align-items:baseline;gap:4px;display:flex}.price-num{color:var(--ink);letter-spacing:-.02em;font-size:48px;font-weight:300}.price-unit{color:var(--ink-3);font-size:13px}.access-grid{background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.access-card{background:var(--bg);flex-direction:column;min-height:132px;padding:18px 20px;display:flex}.access-card.active{background:linear-gradient(180deg, #22d3ee0a 0%, var(--bg) 100%)}.coming-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.coming-card{border:1px solid var(--line);border-radius:var(--r-2);padding:22px 22px 20px}.invoice-list{flex-direction:column;display:flex}.invoice-row{color:var(--ink-2);border-top:1px solid var(--line);letter-spacing:.02em;grid-template-columns:1fr 1fr 2fr 1fr 1fr .6fr;align-items:center;gap:12px;padding:12px 22px;font-size:12px;display:grid}.invoice-row:first-child{border-top:0}.invoice-row:hover{background:var(--panel-2)}.invoice-row .btn-link{justify-self:end}.auth-mode{display:contents}.auth-shell{background:var(--bg);grid-template-columns:1.2fr 1fr;height:100vh;display:grid}.auth-side{border-right:1px solid var(--line);background:radial-gradient(circle at 0% 30%, #22d3ee0d 0%, transparent 60%), var(--bg);flex-direction:column;padding:56px;display:flex;position:relative;overflow:hidden}.auth-side:after{content:"";background-image:linear-gradient(to right, var(--line) 1px, transparent 1px), linear-gradient(to bottom, var(--line) 1px, transparent 1px);opacity:.4;pointer-events:none;background-size:80px 80px;position:absolute;inset:-200px;-webkit-mask-image:radial-gradient(circle at 30%,#000 30%,#0000 70%);mask-image:radial-gradient(circle at 30%,#000 30%,#0000 70%)}.auth-side-inner{z-index:1;flex-direction:column;flex:1;gap:80px;display:flex;position:relative}.auth-brand{align-items:center;gap:10px;display:flex}.auth-logo{object-fit:contain;filter:drop-shadow(0 0 24px #22d3ee33);width:56px;height:56px}.auth-quote{max-width:440px;margin:auto 0}.auth-side-foot{align-items:center;gap:32px;display:flex}.auth-main{justify-content:center;align-items:center;padding:56px;display:flex}.auth-form{width:100%;max-width:380px}.auth-title{letter-spacing:-.015em;color:var(--ink);margin:0;font-size:28px;font-weight:400}.auth-sub{color:var(--ink-2);margin:10px 0 28px;font-size:14px;line-height:1.55}.auth-fields{flex-direction:column;gap:16px;display:flex}.auth-row{justify-content:space-between;align-items:center;font-size:12px;display:flex}.checkbox-inline{color:var(--ink-2);align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.checkbox-inline input{accent-color:var(--acc)}.auth-help{border-top:1px solid var(--line);color:var(--ink-3);justify-content:space-between;align-items:center;gap:20px;margin-top:36px;padding-top:24px;font-size:12.5px;line-height:1.5;display:flex}.auth-migration{border:1px solid var(--line);border-radius:var(--r-2);background:var(--panel-2);margin-top:20px;padding:14px 16px}.recover-sent-icon{background:var(--acc-soft);width:56px;height:56px;color:var(--acc);border:1px solid #22d3ee52;border-radius:50%;justify-content:center;align-items:center;display:flex}.paths-grid{flex-direction:column;gap:16px;display:flex}.paths-grid .path-card{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) 260px;align-items:stretch;gap:0;padding:32px;display:grid}.path-card-main{flex-direction:column;min-width:0;padding-right:48px;display:flex}.path-card-name{letter-spacing:-.015em;color:var(--ink);margin:14px 0 8px;font-size:26px;font-weight:400}.path-card-blurb{color:var(--ink-2);max-width:560px;margin:0;font-size:14.5px;line-height:1.55}.path-card-actions{border-left:1px solid var(--line);flex-direction:column;justify-content:space-between;gap:18px;padding-left:48px;display:flex}.path-card-progress{flex-direction:column;display:flex}.path-card-books{border-top:1px solid var(--line);grid-column:1/-1;margin-top:32px;padding-top:24px}.path-card-books-label{margin-bottom:14px}.path-card-books-row{flex-wrap:wrap;gap:18px;display:flex}.path-card{border:1px solid var(--line);border-radius:var(--r-4);background:var(--bg-1);flex-direction:column;padding:28px;display:flex}.path-card-dim{opacity:.45}.path-book{text-align:left;width:100px;color:inherit;background:0;flex-direction:column;gap:10px;padding:0;transition:transform .2s;display:flex}.path-book .book-cover{width:100%;box-shadow:none;background:0 0}.path-book-title{color:var(--ink-2);letter-spacing:-.005em;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.35;display:-webkit-box;overflow:hidden}.path-book:hover{transform:translateY(-2px)}.path-book:hover .path-book-title{color:var(--ink)}.lesson-screen{background:var(--bg);grid-template-columns:280px 1fr 320px;height:100%;min-height:0;transition:grid-template-columns .24s cubic-bezier(.4,0,.2,1);display:grid}.lesson-screen.tutor-open{grid-template-columns:280px 1fr 380px}.lesson-screen.tools-collapsed{grid-template-columns:280px 1fr 52px}.reader-tools.is-collapsed{flex-direction:column;align-items:center;gap:4px;padding:14px 6px;display:flex;overflow:visible}.tools-strip-btn{width:36px;height:36px;color:var(--ink-2);border-radius:var(--r-2);justify-content:center;align-items:center;transition:all .12s;display:flex}.tools-strip-btn:hover{background:var(--panel-2);color:var(--ink)}.tools-strip-btn.on{color:var(--acc);background:var(--acc-soft)}.tools-strip-btn.tools-expand{color:var(--ink);background:var(--panel-2);border:1px solid var(--line-2)}.tools-strip-btn.tools-expand:hover{border-color:var(--line-3)}.tools-strip-btn.tools-strip-tutor{color:var(--acc);background:var(--acc-soft);border:1px solid #22d3ee38}.tools-strip-btn.tools-strip-tutor:hover{background:var(--acc-soft-2)}.tools-strip-divider{background:var(--line-2);width:24px;height:1px;margin:4px 0}.tools-strip-spacer{flex:1}.tools-topbar{justify-content:space-between;align-items:center;padding:10px 16px 0;display:flex}.lesson-outline{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;min-height:0;display:flex}.outline-book{border-bottom:1px solid var(--line);gap:12px;padding:18px 18px 16px;display:flex}.outline-book-title{color:var(--ink);margin-top:4px;font-size:13.5px;font-weight:500;line-height:1.3}.outline-progress{letter-spacing:.02em;gap:6px;margin-top:4px;font-size:11px;display:flex}.outline-search{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-2);color:var(--ink-3);align-items:center;gap:8px;margin:12px 14px 4px;padding:9px 14px;font-size:12px;display:flex}.outline-search input{color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:12px}.outline-scroll{flex:1;padding:14px 8px 24px;overflow-y:auto}.outline-chap{margin-bottom:2px}.outline-chap-head{border-radius:var(--r-2);text-align:left;width:100%;color:var(--ink-2);align-items:center;gap:10px;padding:10px 12px;transition:background .12s;display:flex}.outline-chap-head:hover{background:var(--panel-2)}.outline-num{color:var(--ink-4);letter-spacing:.08em;font-size:10px}.outline-chap-title{color:var(--ink-1);letter-spacing:-.005em;flex:1;font-size:12.5px;font-weight:500}.outline-chap-prog{color:var(--ink-3);letter-spacing:.04em;font-size:10.5px}.outline-chev{color:var(--ink-4);transition:transform .2s;display:flex}.outline-chev.open{transform:rotate(90deg)}.outline-chap.has-current .outline-chap-title{color:var(--ink)}.outline-sections{border-left:1px solid var(--line);margin-left:14px;padding:2px 0 6px 6px}.outline-sec{border-radius:var(--r-2);text-align:left;width:100%;color:var(--ink-2);align-items:center;gap:10px;padding:6px 12px;font-size:12px;transition:background .12s,color .12s;display:flex;position:relative}.outline-sec:hover{background:var(--panel-2);color:var(--ink)}.outline-sec.current{background:var(--acc-soft);color:var(--ink)}.outline-sec.current:before{content:"";background:var(--acc);border-radius:2px;width:2px;position:absolute;top:7px;bottom:7px;left:-7px}.outline-sec.done .outline-sec-title{color:var(--ink-3)}.outline-sec-mark{width:14px;height:14px;color:var(--ink-3);justify-content:center;align-items:center;display:flex}.outline-sec.done .outline-sec-mark{color:var(--acc)}.outline-sec-empty-dot{border:1px solid var(--ink-4);border-radius:50%;width:5px;height:5px}.outline-sec-current-dot{background:var(--acc);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #22d3ee2e}.outline-sec-num{color:var(--ink-2);letter-spacing:.04em;font-size:10.5px;font-weight:500}.outline-sec.current .outline-sec-num{color:var(--acc)}.outline-sec-title{flex:1;line-height:1.4}.outline-sec-tag{background:var(--panel-3);color:var(--ink-3);letter-spacing:.08em;border-radius:3px;padding:1px 5px;font-size:9px}.lesson-main{background:var(--paper);color:var(--paper-ink);justify-content:center;padding:0 0 50px;display:flex;overflow-y:auto}.lesson-reader{background:var(--paper);color:var(--paper-ink);box-shadow:none;width:100%;max-width:760px;font-family:var(--font-sans);border-radius:0;padding:56px 64px 50px;font-size:15.5px;line-height:1.7}.lesson-screen[data-reader-bg=cream] .lesson-main,.lesson-screen[data-reader-bg=cream] .lesson-reader{background:#faf8f2}.lesson-screen[data-reader-bg=dark] .lesson-main,.lesson-screen[data-reader-bg=dark] .lesson-reader{background:var(--bg);color:var(--ink-1)}.lesson-screen[data-reader-bg=dark] .reader-title{color:var(--ink)}.lesson-screen[data-reader-bg=dark] h2,.lesson-screen[data-reader-bg=dark] .lesson-reader p,.lesson-screen[data-reader-bg=dark] .lesson-reader li,.lesson-screen[data-reader-bg=dark] .lead{color:var(--ink-1)}.lesson-screen[data-reader-bg=dark] code:not(.codeblock-body code){background:var(--panel-2);color:var(--acc-2)}.lesson-screen[data-reader-bg=dark] .callout-info{color:var(--ink-1);background:#22d3ee0f;border-color:#22d3ee2e}.lesson-screen[data-reader-bg=dark] .practice{background:var(--panel-2);border-color:var(--line-2);color:var(--ink)}.lesson-screen[data-reader-bg=dark] .practice-q{color:var(--ink-1)}.lesson-screen[data-reader-bg=dark] .practice-opt{background:var(--panel);border-color:var(--line-2);color:var(--ink-1)}.lesson-screen[data-reader-bg=dark] .reader-trail span:not(.cur),.lesson-screen[data-reader-bg=dark] .reader-sub{color:var(--ink-3)}.lesson-screen[data-reader-bg=dark] .reader-foot{border-color:var(--line-2)}.reader-head{border-bottom:1px solid var(--paper-line);margin-bottom:28px;padding-bottom:28px}.reader-trail{color:var(--paper-ink-3);letter-spacing:.04em;align-items:center;gap:6px;margin-bottom:14px;font-size:11px;display:flex}.reader-trail .cur{color:var(--paper-acc)}.reader-title{font-family:var(--font-sans);letter-spacing:-.025em;color:var(--paper-ink);text-wrap:pretty;margin:0;font-size:36px;font-weight:600;line-height:1.15}.reader-sub{color:var(--paper-ink-3);font-size:12px;font-family:var(--font-mono);letter-spacing:.02em;align-items:center;gap:8px;margin-top:16px;display:flex}.reader-sep{color:var(--paper-line)}.reader-body{font-family:var(--font-sans)}.reader-body p{color:var(--paper-ink);text-wrap:pretty;margin:0 0 20px}.reader-body p.lead{color:var(--paper-ink);font-size:17px;font-weight:400;line-height:1.65}.reader-body h2{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--paper-ink);margin:40px 0 16px;font-size:20px;font-weight:600;position:relative}.reader-body h2:before{content:"";background:var(--paper-acc);width:12px;height:1px;position:absolute;top:12px;left:-24px}.reader-body em{color:var(--paper-ink);font-style:italic}.reader-body strong{color:var(--paper-ink);font-weight:600}.reader-body code{font-family:var(--font-mono);color:var(--paper-ink);letter-spacing:0;background:#0000000a;border-radius:4px;padding:1px 6px;font-size:13.5px}.reader-body ul{margin:16px 0 24px;padding-left:20px}.reader-body ul li{margin-bottom:8px;line-height:1.6}.reader-body ul li::marker{color:var(--paper-acc)}.callout{border-radius:var(--r-2);gap:14px;margin:24px 0;padding:16px 18px;font-size:14.5px;line-height:1.55;display:flex}.callout-info{background:#0a8a9a0f;border:1px solid #0a8a9a26}.callout-icon{color:var(--paper-acc);flex-shrink:0;margin-top:2px}.callout strong{color:var(--paper-ink)}.practice{border:1px solid var(--paper-line);border-radius:var(--r-3);background:#efece5;margin:36px 0 8px;padding:22px 24px}.practice-head{color:var(--paper-ink);justify-content:space-between;align-items:center;margin-bottom:14px;font-size:12px;display:flex}.practice-head strong{font-weight:600}.practice-q{color:var(--paper-ink);margin:0 0 16px;font-size:15px;font-weight:500}.practice-opts{flex-direction:column;gap:6px;display:flex}.practice-opt{text-align:left;border:1px solid var(--paper-line);border-radius:var(--r-2);color:var(--paper-ink);font-size:13.5px;font-family:var(--font-sans);background:#fff;padding:10px 14px;transition:border-color .12s,background .12s}.practice-opt:hover{background:#0a8a9a08;border-color:#0a8a9a73}.practice-opt.is-correct{color:var(--paper-acc);background:#0a8a9a0f;border-color:#0a8a9a8c;font-weight:500}.reader-foot{border-top:1px solid var(--paper-line);justify-content:space-between;align-items:center;gap:12px;margin-top:40px;padding-top:24px;display:flex}.reader-foot .btn-ghost{color:var(--paper-ink-2);border-color:var(--paper-line)}.reader-foot .btn-ghost:hover{color:var(--paper-ink);background:#fff}.codeblock{background:var(--code-bg);border-radius:var(--r-2);border:1px solid #0f1116;margin:22px 0;overflow:hidden;box-shadow:0 6px 16px #0006}.codeblock-head{background:#ffffff06;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.codeblock-lang{color:var(--ink-3);letter-spacing:.12em;text-transform:uppercase;font-size:10.5px}.codeblock-tools{gap:4px;display:flex}.codeblock-btn{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-3);border-radius:4px;align-items:center;gap:5px;padding:4px 9px;font-size:10.5px;transition:color .12s,background .12s;display:flex}.codeblock-btn:hover{color:var(--ink);background:#ffffff0a}.codeblock-body{color:var(--code-ink);font-size:13px;line-height:1.7;font-family:var(--font-mono);margin:0;padding:16px 0;overflow-x:auto}.code-line{white-space:pre;padding:0 18px 0 0;display:flex}.code-line.hi{box-shadow:inset 3px 0 0 var(--acc);background:#22d3ee0f}.code-gutter{text-align:right;width:36px;color:var(--ink-4);-webkit-user-select:none;user-select:none;flex-shrink:0;padding-right:16px;font-size:11.5px;display:inline-block}.code-content{flex:1}.t-key{color:var(--code-key)}.t-str{color:var(--code-str)}.t-com{color:var(--code-comment);font-style:italic}.t-num{color:var(--code-num)}.t-fn{color:var(--code-fn)}.lesson-screen[data-code-theme=contrast] .codeblock{background:#000}.lesson-screen[data-code-theme=contrast] .codeblock-body{color:#fff;font-size:14px}.lesson-screen[data-code-theme=contrast] .t-key{color:#ff79c6}.lesson-screen[data-code-theme=contrast] .t-str{color:#50fa7b}.lesson-screen[data-code-theme=contrast] .t-fn{color:#8be9fd}.lesson-screen[data-code-theme=contrast] .t-num{color:#ffb86c}.lesson-screen[data-code-theme=contrast] .t-com{color:#6272a4}.reader-tools{border-left:1px solid var(--line);background:var(--bg);flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.lesson-screen.tutor-open .reader-tools{display:none}.tools-section{border-bottom:1px solid var(--line);flex-shrink:0;padding:20px 18px 18px}.tools-header{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.tools-row{gap:8px;display:flex}.tools-toggle{border:1px solid var(--line-2);border-radius:var(--r-2);color:var(--ink-2);flex:1;align-items:center;gap:8px;padding:9px 12px;font-size:12px;transition:all .12s;display:flex}.tools-toggle:hover{background:var(--panel-2);color:var(--ink)}.tools-toggle.on{background:var(--acc-soft);color:var(--acc);border-color:#22d3ee52}.tools-tabs{border-bottom:1px solid var(--line);flex-shrink:0;padding:0 8px;display:flex}.tools-tab{color:var(--ink-3);align-items:center;gap:6px;padding:12px;font-size:12px;transition:color .12s;display:flex;position:relative}.tools-tab:hover{color:var(--ink-1)}.tools-tab.active{color:var(--ink)}.tools-tab.active:after{content:"";background:var(--acc);height:1.5px;position:absolute;bottom:-1px;left:8px;right:8px}.tools-pane{flex:1;min-height:0;padding:16px 16px 18px;overflow-y:auto}.note-editor{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-2);margin-bottom:14px;padding:12px}.note-editor-where{letter-spacing:.04em;gap:6px;margin-bottom:8px;font-size:10.5px;display:flex}.note-editor textarea{width:100%;color:var(--ink);resize:vertical;min-height:84px;font-size:13px;line-height:1.55;font-family:var(--font-sans);background:0 0;border:0;outline:0}.note-editor-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding-top:8px;display:flex}.tools-save-note{white-space:nowrap;background:var(--acc-soft);min-height:28px;color:var(--acc);border:1px solid #22d3ee52;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:5px 9px;font-size:11px;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.tools-save-note:hover:not(:disabled){color:var(--acc-2);background:#22d3ee29;border-color:#22d3ee7a}.tools-save-note:disabled{cursor:not-allowed;opacity:.45}.tools-icon-delete{border:1px solid var(--line-2);border-radius:var(--r-2);width:30px;height:30px;color:var(--ink-4);flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.tools-icon-delete:hover{color:#fca5a5;background:#f8717114;border-color:#f871713d}.tools-icon-delete:disabled{cursor:not-allowed;opacity:.45}.tools-delete-text{color:var(--ink-4);align-items:center;gap:5px;font-size:11px;transition:color .12s;display:inline-flex}.tools-delete-text:hover{color:#fca5a5}.other-notes{flex-direction:column;gap:10px;display:flex}.other-note{border-left:1.5px solid var(--line-3);padding:4px 0 4px 10px}.other-note-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.heading-bookmark-list{flex-direction:column;gap:4px;display:flex}.heading-bookmark-row{border-radius:var(--r-2);border:1px solid #0000;align-items:center;gap:8px;min-width:0;padding:7px 8px;transition:background .12s,border-color .12s,color .12s;display:flex}.heading-bookmark-row.level-3{margin-left:14px}.heading-bookmark-row:hover{background:var(--acc-soft);border-color:#22d3ee2e}.heading-bookmark-link{min-width:0;color:var(--ink-2);flex:1;align-items:center;gap:8px;display:flex}.heading-bookmark-link:hover{color:var(--acc)}.heading-bookmark-link span{flex:1;min-width:0;font-size:12px;line-height:1.35}.heading-bookmark-empty,.heading-bookmark-note{color:var(--ink-3);font-size:11.5px;line-height:1.5}.heading-bookmark-note{margin-top:10px}.page-outline{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.page-outline li{color:var(--ink-2);border-radius:4px;padding:6px 10px;font-size:12.5px}.page-outline li.cur{color:var(--acc);background:var(--acc-soft)}.page-outline a{color:inherit}.tutor-launch{border-top:1px solid var(--line);flex-shrink:0;margin-top:auto;padding:14px 16px}.tutor-launch-btn{border:1px solid var(--line-2);border-radius:var(--r-2);background:linear-gradient(180deg, var(--panel-2) 0%, var(--bg) 100%);text-align:left;align-items:center;gap:12px;width:100%;padding:12px 14px;transition:border-color .12s;display:flex}.tutor-launch-btn:hover{border-color:#22d3ee4d}.tutor-spark{background:var(--acc-soft);width:28px;height:28px;color:var(--acc);border:1px solid #22d3ee38;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.tutor-panel{border-left:1px solid var(--line);background:var(--bg);flex-direction:column;min-height:0;display:flex}.tutor-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.tutor-thread{flex-direction:column;flex:1;gap:14px;padding:18px 18px 6px;display:flex;overflow-y:auto}.tutor-msg{gap:10px;display:flex}.tutor-msg.user{justify-content:flex-end}.tutor-msg-avatar{background:var(--acc-soft);width:22px;height:22px;color:var(--acc);border:1px solid #22d3ee38;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.tutor-msg-body{color:var(--ink-1);white-space:pre-wrap;max-width:92%;font-size:13.5px;line-height:1.6}.tutor-msg-body p{margin:0 0 10px}.tutor-msg-body p:last-child,.tutor-msg-body .tutor-md-list:last-child,.tutor-msg-body .tutor-md-code:last-child{margin-bottom:0}.tutor-md-heading{color:var(--ink);margin:0 0 8px;font-size:13.5px;font-weight:700;line-height:1.45;display:block}.tutor-md-list{margin:0 0 10px 18px;padding:0}.tutor-md-list li{margin:4px 0;padding-left:2px}.tutor-md-code{border:1px solid var(--line-2);border-radius:var(--r-2);color:var(--acc);font-family:var(--font-mono);white-space:pre;background:#0000006b;margin:8px 0 10px;padding:10px 12px;font-size:12px;line-height:1.55;overflow-x:auto}.tutor-msg-body code:not(.tutor-md-code code){background:var(--panel-2);color:var(--acc);font-family:var(--font-mono);border-radius:5px;padding:1px 5px;font-size:.92em}.tutor-msg.user .tutor-msg-body{background:var(--panel-2);border:1px solid var(--line-2);border-radius:14px 14px 4px;padding:10px 14px;font-size:13px}.tutor-suggestions{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding:10px 14px 4px;display:flex}.suggestion{text-align:left;border:1px solid var(--line-2);border-radius:var(--r-2);color:var(--ink-1);background:var(--panel-2);padding:9px 12px;font-size:12px;transition:all .12s}.suggestion:hover{color:var(--ink);border-color:#22d3ee4d}.tutor-input{border-top:1px solid var(--line);align-items:center;gap:8px;padding:12px 14px 14px;display:flex}.tutor-input input{background:var(--panel-2);border:1px solid var(--line-2);border-radius:var(--r-2);color:var(--ink);outline:0;flex:1;padding:9px 12px;font-size:13px;transition:border-color .12s}.tutor-input input:focus{border-color:#22d3ee66}.tutor-input .icon-btn{color:var(--acc);background:var(--acc-soft)}.tutor-input .icon-btn:disabled{color:var(--ink-4);background:var(--panel-2);cursor:not-allowed}.tutor-screen{flex-direction:column;min-height:100%;display:flex}.tutor-workspace .ai-tutor-chat{min-height:620px}.ai-tutor-chat{border:1px solid var(--line);border-radius:var(--r-3);background:var(--panel);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.ai-tutor-chat.is-compact{background:0 0;border:0;border-radius:0;height:100%;min-height:0}.ai-tutor-context{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.ai-tutor-context h3{color:var(--ink);letter-spacing:0;margin:7px 0 0;font-size:14px;font-weight:650}.ai-tutor-context p{color:var(--ink-3);margin:5px 0 0;font-size:12.5px;line-height:1.5}.ai-tutor-status{color:var(--acc);margin:0;padding:8px 14px 0;font-size:12.5px;line-height:1.5}.ai-tutor-empty{min-height:360px;color:var(--ink-3);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:32px;display:flex}.ai-tutor-empty h3{color:var(--ink);margin:0;font-size:15px}.ai-tutor-empty p{max-width:360px;margin:0;font-size:13px;line-height:1.6}.ai-tutor-ready{max-width:520px;color:var(--ink-3);align-items:flex-start;gap:12px;display:flex}.ai-tutor-ready h3{color:var(--ink);margin:0;font-size:13.5px;font-weight:650}.ai-tutor-ready p{margin:4px 0 0;font-size:13px;line-height:1.55}@media (max-width:1280px){.lib-grid{grid-template-columns:repeat(4,1fr)}.access-grid{grid-template-columns:repeat(2,1fr)}.topbar-search{width:240px}.resume-hero{gap:28px;padding:28px}.screen{padding:28px 32px 80px}.practice-layout{grid-template-columns:minmax(0,1fr)}.practice-rail{min-height:0;max-height:none;position:static}.practice-rail.is-collapsed{min-height:58px}.practice-rail-expand{flex-direction:row;justify-content:center;min-height:0;padding:14px!important}.practice-rail-expand span{writing-mode:horizontal-tb}.practice-rail-scroll{max-height:none}}@media (max-width:1024px){.app{grid-template-columns:var(--sidebar-w-collapsed) 1fr!important}.app .sidebar-brand{min-height:76px!important;padding:18px 8px!important}.app .sidebar-brand .brand-mark{width:36px!important}.app .sidebar-brand .brand-mark .brand-full{display:none!important}.app .sidebar-brand .brand-mark .brand-imago{display:block!important}.app .sidebar-section{text-align:center;padding:14px 0 6px!important;font-size:8px!important}.app .sidebar-section span{display:none}.app .sidebar-section:before{content:"·";color:var(--ink-4)}.app .nav-item{justify-content:center;padding:11px 0;position:relative}.app .nav-item .nav-label,.app .nav-item .pill{display:none}.app .nav-item.active:before{top:16px;bottom:16px;left:0}.app .nav-item:after{content:attr(data-tooltip);background:var(--panel-3);color:var(--ink);border:1px solid var(--line-3);white-space:nowrap;pointer-events:none;opacity:0;z-index:50;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:500;transition:opacity .12s,transform .16s;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)translate(-4px);box-shadow:0 10px 24px #0006}.app .nav-item:hover:after{opacity:1;transform:translateY(-50%)translate(0)}.app .user-meta{display:none}.app .user-chip{justify-content:center;padding:8px 0}.topbar{gap:12px;padding:0 16px}.topbar-search{width:200px}.topbar-crumb{font-size:12.5px}.screen{gap:22px;padding:24px 24px 64px}.page-title{font-size:28px}.grid-12{gap:18px}.grid-12 .col-7,.grid-12 .col-5,.grid-12 .col-6,.grid-12 .col-8,.grid-12 .col-4{grid-column:span 12}.stat-strip{grid-template-columns:repeat(4,1fr)}.stat-cell{padding:16px 18px}.resume-hero{grid-template-columns:160px 1fr;gap:24px;padding:24px}.resume-cover .book-cover{width:140px}.resume-title{font-size:22px}.shelf-row{grid-template-columns:repeat(6,1fr);gap:18px}.lib-grid{grid-template-columns:repeat(4,1fr);gap:20px}.bd-hero{grid-template-columns:180px 1fr;gap:32px}.bd-cover .book-cover{width:170px}.bd-title{font-size:28px}.bd-meta-grid{grid-template-columns:repeat(2,1fr)}.account-layout{grid-template-columns:200px 1fr;gap:24px}.current-plan{grid-template-columns:1fr;gap:24px;padding:28px}.current-plan-right{border-left:0;border-top:1px solid var(--line);flex-direction:row;align-items:center;gap:16px;padding-top:24px;padding-left:0}.current-plan-right .btn-link{margin-left:auto}.access-grid{grid-template-columns:repeat(2,1fr)}.coming-grid{grid-template-columns:1fr 1fr;gap:14px}.invoice-row{grid-template-rows:auto auto;grid-template-columns:1fr 1fr 1.4fr .8fr}.invoice-row>:nth-child(5){display:none}.invoice-row>:nth-child(6){grid-column:4}.lib-tableX-head,.lib-tableX-row{grid-template-columns:2.5fr .8fr 1fr .6fr .3fr;gap:10px}.lib-tableX-head>:nth-child(2),.lib-tableX-head>:nth-child(3),.lib-tableX-row>:nth-child(2),.lib-tableX-row>:nth-child(3){display:none}.lesson-screen{grid-template-columns:240px 1fr 52px}.lesson-screen.tutor-open{grid-template-columns:240px 1fr 360px}.lesson-reader{padding:40px;font-size:15px}.reader-title{font-size:30px}.reader-body h2{font-size:19px}.paths-grid .path-card{gap:0;padding:24px}.path-card-actions{padding-left:24px}.path-card-main{padding-right:24px}.auth-shell{grid-template-columns:1fr 1fr}.auth-side,.auth-main{padding:36px}}@media (max-width:720px){.app{grid-template-rows:1fr;grid-template-columns:1fr!important}.sidebar{z-index:100;background:var(--bg);width:280px;transition:transform .24s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:8px 0 24px #00000080}.app[data-mobile-menu=open] .sidebar{transform:translate(0)}.app .sidebar-brand{min-height:var(--topbar-h)!important;justify-content:flex-start!important;padding:16px 18px!important}.app .sidebar-brand .brand-mark{width:120px!important}.app .sidebar-brand .brand-mark .brand-full{display:block!important}.app .sidebar-brand .brand-mark .brand-imago{display:none!important}.app .sidebar-section{text-align:left;padding:14px 12px 6px!important;font-size:10px!important}.app .sidebar-section span{display:inline}.app .sidebar-section:before{content:none}.app .nav-item{justify-content:flex-start;padding:11px 12px}.app .nav-item .nav-label,.app .nav-item .pill{display:inline}.app .nav-item:after{display:none}.app .user-meta{display:block}.app .user-chip{justify-content:flex-start;padding:8px 10px}.mobile-scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99;opacity:0;pointer-events:none;background:#0009;transition:opacity .2s;position:fixed;inset:0}.app[data-mobile-menu=open] .mobile-scrim{opacity:1;pointer-events:auto}.topbar{gap:8px;height:52px;padding:0 12px}.topbar-search{display:none}.topbar-crumb{flex:1;gap:4px;min-width:0;font-size:12px;overflow:hidden}.topbar-crumb .crumb-seg:not(:last-child),.topbar-crumb .sep{display:none}.topbar-crumb .crumb-cur{color:var(--ink);font-weight:500}.topbar-actions{gap:2px}.screen{gap:18px;padding:18px 16px 56px}.page-head{gap:16px}.page-title{font-size:24px}.page-sub{font-size:13.5px}.page-head-actions{width:100%}.page-head-actions .btn{flex:1;justify-content:center}.resume-hero{text-align:left;grid-template-columns:1fr;gap:18px;padding:18px}.resume-cover{flex-direction:row;align-items:center;gap:16px}.resume-cover .book-cover{width:92px}.resume-progress-stack{align-items:flex-start}.resume-title{font-size:19px}.resume-where{gap:6px;font-size:13.5px}.resume-meta{font-size:11px}.resume-cta{flex-direction:column;gap:8px}.resume-cta .btn{justify-content:center;width:100%}.stat-strip{grid-template-columns:repeat(2,1fr)}.stat-cell{padding:14px 16px}.stat-num{font-size:22px}.grid-12{gap:14px}.shelf-row{grid-template-columns:repeat(3,1fr);gap:14px}.lib-filters{gap:12px}.lib-search{width:100%;min-width:0}.lib-filter-group{flex-wrap:wrap;width:100%}.lib-grid{grid-template-columns:repeat(2,1fr);gap:18px}.lib-card-title{-webkit-line-clamp:3}.lib-tableX-head,.lib-tableX-row{grid-template-columns:1fr .5fr .3fr;padding:12px 14px}.lib-tableX-head>:nth-child(2),.lib-tableX-head>:nth-child(3),.lib-tableX-head>:nth-child(4),.lib-tableX-head>:nth-child(6),.lib-tableX-row>:nth-child(2),.lib-tableX-row>:nth-child(3),.lib-tableX-row>:nth-child(4),.lib-tableX-row>:nth-child(6){display:none}.bd-hero{grid-template-columns:1fr;gap:18px}.bd-cover .book-cover{width:140px}.bd-title{font-size:24px}.bd-meta-grid{grid-template-columns:1fr 1fr;gap:12px 16px;padding:14px 0}.bd-cta{flex-direction:column;gap:8px}.bd-cta .btn{justify-content:center;width:100%}.bd-chap-head{flex-wrap:wrap;padding:14px 16px 4px}.bd-sec{flex-wrap:wrap;gap:10px;padding:8px}.bd-sec-title{min-width:0}.bd-sec-min{margin-left:auto}.account-layout{grid-template-columns:1fr;gap:16px}.account-nav{border-bottom:1px solid var(--line);flex-flow:wrap;gap:4px;padding-bottom:8px}.account-nav-item{padding:8px 10px;font-size:12.5px}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:1}.lang-grid{grid-template-columns:1fr}.danger-zone{flex-direction:column;align-items:stretch;gap:14px}.danger-zone .btn{justify-content:center;width:100%}.support-grid,.support-topic-grid{grid-template-columns:1fr}.current-plan{padding:22px}.current-plan-name{font-size:28px}.current-plan-grid{grid-template-columns:1fr 1fr}.current-plan-right{flex-direction:column;align-items:stretch;gap:10px}.current-plan-right .btn-link{margin-left:0}.price-num{font-size:36px}.access-grid,.coming-grid{grid-template-columns:1fr}.invoice-row{grid-template-rows:auto auto auto;grid-template-columns:1fr auto;gap:4px 12px;padding:14px 16px}.invoice-row>:first-child{grid-column:1}.invoice-row>:nth-child(2){display:none}.invoice-row>:nth-child(3){grid-area:2/1/auto/-1;font-size:13px}.invoice-row>:nth-child(4){grid-area:1/2}.invoice-row>:nth-child(5){grid-area:2/2;justify-self:end}.invoice-row>:nth-child(6){grid-area:3/1/auto/-1;justify-self:start}.paths-grid .path-card{grid-template-rows:auto auto auto;grid-template-columns:1fr;gap:0;padding:20px}.path-card-main{padding-right:0}.path-card-actions{border-left:0;border-top:1px solid var(--line);flex-direction:column-reverse;margin-top:18px;padding-top:18px;padding-left:0}.path-card-actions .btn{justify-content:center;width:100%}.path-card-name{font-size:22px}.path-card-books{margin-top:18px;padding-top:18px}.path-book{width:80px}.path-book-title{font-size:11px}.auth-shell{grid-template-rows:auto 1fr;grid-template-columns:1fr;height:auto;min-height:100vh}.auth-side{border-right:0;border-bottom:1px solid var(--line);padding:24px 24px 16px}.auth-side-inner{gap:24px}.auth-quote{display:none}.auth-side-foot{flex-wrap:wrap;gap:20px}.auth-main{padding:32px 24px 48px}.auth-form{max-width:100%}.auth-title{font-size:24px}.lesson-screen{grid-template-rows:auto 1fr;position:relative;grid-template-columns:1fr!important}.lesson-outline{z-index:60;background:var(--bg);border-right:1px solid var(--line-2);width:88vw;max-width:340px;transition:transform .24s cubic-bezier(.4,0,.2,1);position:fixed;top:52px;bottom:0;left:0;transform:translate(-100%);box-shadow:8px 0 24px #00000080}.lesson-screen[data-outline=open] .lesson-outline{transform:translate(0)}.reader-tools{z-index:60;background:var(--bg);border-left:1px solid var(--line-2);width:88vw;max-width:360px;transition:transform .24s cubic-bezier(.4,0,.2,1);position:fixed;top:52px;bottom:0;right:0;transform:translate(100%);box-shadow:-8px 0 24px #00000080}.reader-tools.is-collapsed{display:none}.lesson-screen[data-tools=open] .reader-tools{transform:translate(0)}.tutor-panel{z-index:70;border-left:0;position:fixed;inset:52px 0 0}.lesson-main{padding:0 0 32px}.lesson-reader{padding:28px 20px 40px;font-size:15px}.reader-title{font-size:24px}.reader-body p{font-size:15px}.reader-body p.lead{font-size:15.5px}.reader-body h2{margin:30px 0 12px;font-size:17px}.reader-body h2:before{display:none}.reader-foot{flex-direction:column;align-items:stretch;gap:10px}.reader-foot .btn{justify-content:center;width:100%}.codeblock-body{font-size:12px}.code-gutter{width:28px;padding-right:10px;font-size:10.5px}.lesson-mobile-bar{background:var(--bg);border-top:1px solid var(--line);z-index:50;gap:10px;height:56px;padding:8px 12px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0000004d;display:flex!important}.lesson-mobile-bar-btn{border-radius:var(--r-2);color:var(--ink-2);font-size:10px;font-family:var(--font-mono);letter-spacing:.04em;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;display:flex}.lesson-mobile-bar-btn:hover,.lesson-mobile-bar-btn.active{background:var(--panel-2);color:var(--ink)}.lesson-mobile-bar-btn.tutor{color:var(--acc);background:var(--acc-soft)}.lesson-main{padding-bottom:90px}.reader-tools,.lesson-outline{padding-bottom:60px}}.mobile-scrim,.lesson-mobile-bar{display:none}@media (max-width:720px){.mobile-scrim{display:block}}
