@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-wght-normal-cHuGMAiY.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-wght-normal-DwHjdM4S.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-wght-normal-ece1310W.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-wght-normal-D-yuW59g.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-wght-normal-CxNHBx-q.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-normal-D9elroTD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-ui:"Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-notebook:"Source Serif 4 Variable", Georgia, "Times New Roman", serif;--font-mono:"JetBrains Mono Variable", ui-monospace, "Cascadia Code", Consolas, monospace;--shell-bg:#eef0f4;--surface:#fff;--surface-muted:#f4f6f9;--surface-hover:#e9edf3;--border:#d8dde6;--border-strong:#b6bfcc;--text:#1c2230;--text-muted:#57606f;--text-faint:#79828f;--accent:#3350d3;--accent-strong:#2740b3;--accent-soft:#e6eafc;--accent-text:#2b45c4;--focus:#1f6feb;--danger:#b42318;--danger-soft:#fde8e6;--success:#1f7a4d;--warning-text:#7a4300;--warning-soft:#fff1d6;--paper:#fffdf7;--paper-rule:#d9e2f3;--paper-margin:#e4a0a0;--paper-text:#21262f;--paper-muted:#5f6672;--highlight:#ffe98a;--kind-card:#1f7466;--kind-card-soft:#ddf2ec;--kind-question:#a85400;--kind-question-soft:#fff0dc;--kind-idea:#6544c4;--kind-idea-soft:#ebe5fb;--line:2rem;--radius-sm:6px;--radius:10px;--radius-lg:14px;--shadow-sm:0 1px 2px #141c2d0f, 0 1px 1px #141c2d0a;--shadow:0 8px 24px #141c2d1a, 0 2px 6px #141c2d0f;--shadow-lg:0 24px 64px #141c2d33;--sidebar-width:264px;--rail-width:328px;--rail-strip-width:56px;--topbar-height:56px;--utility-bar-height:66px}[data-kind=card]{--kind:var(--kind-card);--kind-soft:var(--kind-card-soft)}[data-kind=question]{--kind:var(--kind-question);--kind-soft:var(--kind-question-soft)}[data-kind=idea]{--kind:var(--kind-idea);--kind-soft:var(--kind-idea-soft)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:8rem}body{font-family:var(--font-ui);color:var(--text);background:var(--shell-bg);-webkit-font-smoothing:antialiased;margin:0;font-size:.9375rem;line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:var(--accent-text)}svg{flex-shrink:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.5rem .75rem;position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.button{border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.375rem;min-height:40px;padding:0 .875rem;font-weight:500;transition:background-color .12s,border-color .12s;display:inline-flex}.button svg{width:16px;height:16px}.button--sm{min-height:32px;padding:0 .625rem;font-size:.8125rem}.button--primary{background:var(--accent);color:#fff}.button--primary:hover:not(:disabled){background:var(--accent-strong)}.button--secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}.button--secondary:hover:not(:disabled){background:var(--surface-muted)}.button--ghost{color:var(--text-muted);background:0 0}.button--ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.button--danger{background:var(--danger);color:#fff}.button:disabled{opacity:.55}.icon-button{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--text-muted);background:0 0;border:0;place-items:center;display:inline-grid}.icon-button svg{width:20px;height:20px}.icon-button:hover{background:var(--surface-hover);color:var(--text)}.icon-button--sm{width:32px;height:32px}.icon-button--sm svg{width:16px;height:16px}@media (pointer:coarse){.button--sm,.icon-button--sm{min-width:44px;min-height:44px}}.field{flex-direction:column;gap:.375rem;display:flex}.field__label-row{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.field__label{color:var(--text);font-size:.8125rem;font-weight:600}.field__optional{color:var(--text-faint);font-weight:400}.field__counter{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.75rem}.field__hint{color:var(--text-muted);margin:0;font-size:.8125rem}.field__control{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);resize:vertical;width:100%;padding:.5rem .625rem;line-height:1.45}.field__control:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-color:var(--focus)}.field--invalid .field__control{border-color:var(--danger)}.field__error{color:var(--danger);margin:0;font-size:.8125rem}.segmented{border:0;min-width:0;margin:0;padding:0}.segmented legend{margin-bottom:.375rem;padding:0}.segmented__options{border:1px solid var(--border-strong);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.segmented__option{position:relative}.segmented__option+.segmented__option{border-left:1px solid var(--border-strong)}.segmented__option input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.segmented__option span{color:var(--text-muted);padding:.45rem .875rem;font-size:.8125rem;font-weight:500;display:block}.segmented__option input:checked+span{background:var(--accent-soft);color:var(--accent-text)}.segmented__option input:focus-visible+span{outline:2px solid var(--focus);outline-offset:-2px}.status-badge{color:var(--text-muted);align-items:center;gap:.25rem;margin-top:.375rem;font-size:.75rem;font-weight:500;display:inline-flex}.status-badge svg{width:14px;height:14px}.status-badge[data-status=answered]{color:var(--success)}.category-tag{letter-spacing:.05em;text-transform:uppercase;color:var(--kind-idea);background:var(--kind-idea-soft);border-radius:999px;margin-top:.375rem;padding:.1rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.overlay{z-index:50;overscroll-behavior:contain;background:#141c2d73;display:flex;position:fixed;inset:0}.overlay--dialog{justify-content:center;align-items:center;padding:1rem}.overlay--dialog[data-variant=sheet]{align-items:stretch;padding:0}.overlay--drawer[data-side=left]{justify-content:flex-start}.overlay--drawer[data-side=right]{justify-content:flex-end}.overlay--drawer[data-side=bottom]{align-items:flex-end}.dialog{background:var(--surface);border-radius:var(--radius-lg);width:min(100%,36rem);max-height:min(90dvh,44rem);box-shadow:var(--shadow-lg);outline:none;flex-direction:column;display:flex}.dialog--sheet{border-radius:0;width:100%;height:100dvh;max-height:none}.dialog__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.875rem 1rem .75rem 1.25rem;display:flex}.dialog--sheet .dialog__header{background:var(--surface);padding:.5rem .75rem .5rem 1rem;padding-top:max(.5rem, env(safe-area-inset-top));position:sticky;top:0}.dialog__title{align-items:center;gap:.5rem;margin:0;font-size:1.0625rem;font-weight:600;display:flex}.dialog__title-icon{width:20px;height:20px;color:var(--kind,var(--accent))}.dialog__header-actions{flex-shrink:0;gap:.375rem;display:flex}.dialog__body{overscroll-behavior:contain;padding:1.25rem;overflow-y:auto}.dialog--sheet .dialog__body{padding:1rem;padding-bottom:max(1rem, env(safe-area-inset-bottom));flex:1}.dialog__footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem 1rem;display:flex}.drawer{background:var(--surface);box-shadow:var(--shadow-lg);outline:none;flex-direction:column;display:flex}.drawer--left,.drawer--right{width:min(88vw,360px);height:100%}.drawer--left{border-right:1px solid var(--border)}.drawer--right{border-left:1px solid var(--border)}.drawer--bottom{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:86dvh}.drawer__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .5rem .5rem 1rem;display:flex}.drawer--bottom .drawer__header:before{content:"";background:var(--border-strong);border-radius:999px;width:2.5rem;height:4px;position:absolute;top:.4rem;left:50%;transform:translate(-50%)}.drawer--bottom{position:relative}.drawer__title{margin:0;font-size:.9375rem;font-weight:600}.drawer__body{overscroll-behavior:contain;min-height:0;padding-bottom:env(safe-area-inset-bottom);flex:1;overflow-y:auto}.app-shell{min-height:100dvh}.app-shell[data-layout=inline]{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);display:grid}.app-main{outline:none;min-width:0}.brand{letter-spacing:-.01em;align-items:center;gap:.5rem;font-weight:600;display:flex}.brand__icon{width:22px;height:22px;color:var(--accent)}.app-sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;height:100dvh;padding:1.125rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto}.app-sidebar .brand{padding:0 .5rem 1rem;font-size:1rem}.app-sidebar__note{color:var(--text-faint);margin:auto 0 0;padding:1rem .5rem 0;font-size:.75rem}.app-topbar{z-index:20;height:var(--topbar-height);background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:.375rem;padding:0 .625rem;display:flex;position:sticky;top:0}.course-nav__course-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin:.5rem 0 .375rem;padding:0 .5rem;font-size:.6875rem;font-weight:600}.course-nav ul{margin:0;padding:0;list-style:none}.course-nav__modules[data-depth="1"]{padding-left:.5rem}.course-nav__module{color:var(--text);margin:.25rem 0 .125rem;padding:.25rem .5rem;font-size:.875rem;font-weight:600}.course-nav__topics{padding-left:.5rem}.course-nav__topic{border-radius:var(--radius-sm);min-height:36px;color:var(--text-muted);align-items:center;padding:.25rem .625rem;font-size:.875rem;text-decoration:none;display:flex}.course-nav__topic:hover{background:var(--surface-muted);color:var(--text)}.course-nav__topic[aria-current=page]{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.drawer .course-nav{padding:.75rem .75rem 1.25rem}@media (pointer:coarse){.course-nav__topic{min-height:44px}}.editor-toolbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);align-items:center;gap:.5rem;padding:.375rem .5rem;display:flex;position:relative}.editor-toolbar__controls{scrollbar-width:none;flex:auto;align-items:center;gap:.25rem;min-width:0;display:flex;overflow-x:auto}.editor-toolbar__controls::-webkit-scrollbar{display:none}.editor-toolbar__group{border-right:1px solid var(--border);gap:.125rem;padding-right:.375rem;display:flex}.editor-toolbar__group:last-child{border-right:0;padding-right:0}.editor-toolbar__trailing{flex:none;margin-left:auto}.toolbar-button{width:34px;height:34px;color:var(--text-muted);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.toolbar-button svg{width:18px;height:18px}.toolbar-button:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.toolbar-button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-text)}.toolbar-button:disabled{opacity:.4}@media (pointer:coarse){.toolbar-button{width:40px;height:40px}}.link-editor{z-index:15;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(28rem,100vw - 2rem);box-shadow:var(--shadow);padding:.75rem;position:absolute;top:calc(100% + 6px);left:.5rem}.link-editor__label{margin-bottom:.375rem;font-size:.8125rem;font-weight:600;display:block}.link-editor__row{flex-wrap:wrap;gap:.375rem;display:flex}.link-editor__input{flex:12rem}.link-editor .field__error{margin-top:.375rem}.notebook-editor{position:relative}.notebook-editor__content{min-height:calc(var(--line) * 3);font-family:var(--font-notebook);font-size:1.0625rem;line-height:var(--line);color:var(--paper-text);overflow-wrap:anywhere;outline:none}.notebook-editor__content>*{margin:0}.notebook-editor__content h2{margin-top:var(--line);font-size:1.375rem;font-weight:600;line-height:var(--line)}.notebook-editor__content h3{margin-top:var(--line);font-size:1.125rem;font-weight:600;line-height:var(--line)}.notebook-editor__content h2:first-child,.notebook-editor__content h3:first-child{margin-top:0}.notebook-editor__content ul,.notebook-editor__content ol{padding-left:1.5rem}.notebook-editor__content li>p{margin:0}.notebook-editor__content blockquote{border-left:3px solid var(--border-strong);color:var(--paper-muted);padding-left:1rem}.notebook-editor__content pre{border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.9375rem;line-height:var(--line);white-space:pre;background:#1c22300e;padding:0 .75rem;overflow-x:auto}.notebook-editor__content pre code{font-size:inherit;background:0 0;padding:0}.notebook-editor__content code{font-family:var(--font-mono);background:#1c223012;border-radius:4px;padding:.1em .35em;font-size:.88em}.notebook-editor__content mark{background:var(--highlight);color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:.06em 0}.notebook-editor__content u{text-underline-offset:3px;text-decoration-thickness:1.5px}.notebook-editor__content a{color:var(--accent-text);text-underline-offset:3px}.notebook-editor__content hr{height:var(--line);background:linear-gradient(var(--border-strong), var(--border-strong)) center / 100% 1px no-repeat;border:0}.notebook-editor__content .is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--text-faint);pointer-events:none;font-style:italic}.notebook-editor__content ::selection{background:#3350d338}.selection-menu{z-index:30}.selection-menu__toolbar{color:#fff;box-shadow:var(--shadow);background:#1c2230;border-radius:10px;align-items:center;gap:.125rem;padding:.25rem;display:flex}.selection-menu__button{color:#e6e9ef;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:.35rem;height:36px;padding:0 .55rem;font-size:.8125rem;font-weight:500;display:inline-flex}.selection-menu__button svg{width:17px;height:17px}.selection-menu__button:hover:not(:disabled){color:#fff;background:#ffffff24}.selection-menu__button[aria-pressed=true]{color:#fff;background:#ffffff3d}.selection-menu__button:disabled{opacity:.4}.selection-menu__button:focus-visible{outline-offset:-2px;outline:2px solid #fff}.selection-menu__button--create[data-kind=card] svg{color:#7fd9c6}.selection-menu__button--create[data-kind=question] svg{color:#ffc47e}.selection-menu__button--create[data-kind=idea] svg{color:#cdb8ff}.selection-menu__divider{background:#ffffff38;align-self:stretch;width:1px;margin:.25rem .2rem}@media (pointer:coarse){.selection-menu__button{height:42px}}.journal-layout{grid-template-columns:minmax(0,1fr);min-height:100dvh;display:grid}.journal-layout[data-rail=open]{grid-template-columns:minmax(0, 1fr) var(--rail-width)}.journal-layout[data-rail=collapsed]{grid-template-columns:minmax(0, 1fr) var(--rail-strip-width)}.journal-main{min-width:0;padding:1.75rem clamp(1rem,3vw,2.5rem) 4rem}.journal-page{max-width:54rem;margin-inline:auto}.journal-message{max-width:36rem;color:var(--text-muted);margin:4rem auto;padding:0 1.5rem}.journal-message__title{color:var(--text);font-size:1.375rem}.journal-header{margin-bottom:1.25rem}.journal-header__top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.journal-header__titles{min-width:0}.breadcrumb{color:var(--text-muted);flex-wrap:wrap;gap:.35rem;margin:0 0 .375rem;padding:0;font-size:.8125rem;list-style:none;display:flex}.breadcrumb li+li:before{content:"›";color:var(--text-faint);margin-right:.35rem}.journal-title{font-family:var(--font-notebook);letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.625rem,2.4vw,2.125rem);font-weight:600;line-height:1.2}.journal-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.35rem 1rem;margin-top:.625rem;font-size:.8125rem;display:flex}.journal-meta__source{align-items:center;gap:.25rem;font-weight:500;display:inline-flex}.journal-meta__source svg{width:14px;height:14px}.recovery-notice{border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning-text);margin:0 0 1rem;padding:.5rem .75rem;font-size:.8125rem}.save-status{color:var(--text-muted);white-space:nowrap;align-items:center;gap:.5rem;padding:0 .375rem;font-size:.75rem;display:inline-flex}.save-status__label{align-items:center;gap:.3rem;display:inline-flex}.save-status svg{width:14px;height:14px}.save-status[data-status=saved]{color:var(--success)}.save-status[data-status=error]{color:var(--danger)}.save-status__spinner{animation:.9s linear infinite save-status-spin}@keyframes save-status-spin{to{transform:rotate(360deg)}}.notebook__toolbar{z-index:10;margin-bottom:1rem;position:sticky;top:.75rem}.notebook__paper{padding:var(--line) 2.5rem var(--line) 4.75rem;cursor:text;border:1px solid var(--border);border-radius:var(--radius-lg);background-color:var(--paper);background-image:repeating-linear-gradient(to bottom, transparent 0 calc(var(--line) - 1px), var(--paper-rule) calc(var(--line) - 1px) var(--line));box-shadow:var(--shadow-sm);position:relative}.notebook__paper:before{content:"";background:var(--paper-margin);opacity:.55;width:2px;position:absolute;top:0;bottom:0;left:3.75rem}.section+.section{margin-top:var(--line)}.section__header{height:var(--line);align-items:center;display:flex}.section__title{font-family:var(--font-ui);font-size:.75rem;font-weight:700;line-height:var(--line);letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);outline:none;align-items:baseline;gap:.5rem;margin:0;display:flex}.section--active .section__title{color:var(--accent-text)}.section__kicker{letter-spacing:.02em;text-transform:none;color:var(--text-faint);font-weight:500}.section__toggle{height:var(--line);border-radius:var(--radius-sm);font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:.35rem;margin-left:-.25rem;padding:0 .25rem;display:inline-flex}.section__toggle:hover{color:var(--text)}.section__chevron{width:16px;height:16px;transition:transform .15s}.section__toggle[aria-expanded=true] .section__chevron{transform:rotate(90deg)}.section__badge{background:var(--accent-soft);letter-spacing:.04em;color:var(--accent-text);border-radius:999px;padding:0 .4rem;font-size:.625rem}.journal-rail-slot{min-width:0}.study-rail{background:var(--surface);flex-direction:column;display:flex}.study-rail--inline{border-left:1px solid var(--border);height:100dvh;position:sticky;top:0}.study-rail__tabs{border-bottom:1px solid var(--border);gap:.25rem;padding:.625rem .625rem 0;display:flex}.study-tab{color:var(--text-muted);background:0 0;border:0;border-bottom:2px solid #0000;flex-direction:column;flex:1;align-items:center;gap:.2rem;margin-bottom:-1px;padding:.5rem .25rem .625rem;font-size:.75rem;font-weight:600;display:flex}.study-tab__icon{width:18px;height:18px}.study-tab[aria-selected=true]{color:var(--kind);border-bottom-color:var(--kind)}.study-tab__count{background:var(--surface-muted);font-variant-numeric:tabular-nums;border-radius:999px;min-width:1.25rem;padding:0 .4rem;font-size:.6875rem}.study-tab[aria-selected=true] .study-tab__count{background:var(--kind-soft)}.study-rail__panel{flex:1;min-height:0;padding:.75rem;overflow-y:auto}.study-rail-strip{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;align-items:center;gap:.375rem;height:100dvh;padding:.75rem .25rem;display:flex;position:sticky;top:0}.study-rail-strip__button{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--kind);background:0 0;border:0;place-items:center;display:grid;position:relative}.study-rail-strip__button svg{width:20px;height:20px}.study-rail-strip__button:hover{background:var(--kind-soft)}.study-rail-strip__count{background:var(--kind);color:#fff;text-align:center;border-radius:999px;min-width:1rem;padding:0 .25rem;font-size:.625rem;font-weight:700;line-height:1rem;position:absolute;top:4px;right:4px}.study-list__header{justify-content:flex-end;margin-bottom:.75rem;display:flex}.study-list__new[data-kind]{border-color:var(--kind);color:var(--kind)}.study-list__new[data-kind]:hover:not(:disabled){background:var(--kind-soft)}.study-list__items{flex-direction:column;gap:.625rem;margin:0;padding:0;list-style:none;display:flex}.study-list__empty{border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;color:var(--text-muted);padding:1.5rem .875rem;font-size:.875rem}.study-list__empty p{margin:.5rem 0 0}.study-list__empty-icon{width:24px;height:24px;color:var(--kind)}.study-list__error,.study-item__error{color:var(--danger);margin:.5rem 0 0;font-size:.8125rem}.study-item__card{border:1px solid var(--border);border-left:3px solid var(--kind);border-radius:var(--radius);background:var(--surface);padding:.75rem .75rem .5rem}.study-item__heading{overflow-wrap:anywhere;margin:0;font-size:.9375rem;font-weight:600;line-height:1.35}.study-item__detail{-webkit-line-clamp:4;color:var(--text-muted);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:.375rem 0 0;font-size:.875rem;display:-webkit-box;overflow:hidden}.study-item__source{border-radius:var(--radius-sm);background:var(--surface-muted);text-align:left;width:100%;color:var(--text-muted);border:1px solid #0000;align-items:flex-start;gap:.4rem;margin-top:.5rem;padding:.4rem .5rem;font-size:.8125rem;display:flex}.study-item__source:hover{border-color:var(--border-strong);color:var(--text)}.study-item__source-icon{width:14px;height:14px;margin-top:.15rem}.study-item__source-text{overflow-wrap:anywhere;flex:1;font-style:italic}.study-item__source-section{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--text-faint);font-size:.6875rem}.study-item__actions{justify-content:flex-end;gap:.125rem;margin-top:.25rem;display:flex}.study-item__confirm{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.8125rem;display:flex}.study-item__confirm-text{margin-right:auto}.utility-bar{z-index:20;padding:.375rem .5rem calc(.375rem + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:.25rem;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #141c2d0f}.utility-bar__button{border-radius:var(--radius-sm);min-height:52px;color:var(--text-muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:.125rem;font-size:.75rem;font-weight:600;display:flex;position:relative}.utility-bar__button svg{width:20px;height:20px;color:var(--kind)}.utility-bar__count{background:var(--kind);color:#fff;text-align:center;border-radius:999px;min-width:1rem;padding:0 .25rem;font-size:.625rem;line-height:1rem;position:absolute;top:2px;right:calc(50% - 22px)}@media (width<=1099.98px){.journal-main{padding-bottom:calc(var(--utility-bar-height) + 2rem)}.notebook__toolbar{top:calc(var(--topbar-height) + .5rem)}}@media (width<=767.98px){.journal-main{padding:1rem .75rem calc(var(--utility-bar-height) + 2rem)}.journal-header{margin-bottom:1rem}.notebook__paper{padding:var(--line) 1rem var(--line) 2.5rem;border-radius:var(--radius)}.notebook__paper:before{left:1.75rem}.notebook__toolbar{top:var(--topbar-height);margin-inline:-.25rem}.editor-toolbar{border-radius:var(--radius-sm)}.editor-toolbar__controls{padding-right:1.25rem;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 1.5rem),#0000)}}.composer__form{flex-direction:column;gap:1rem;display:flex}.composer__source{border-left:3px solid var(--kind,var(--border-strong));border-radius:var(--radius-sm);background:var(--surface-muted);margin:0;padding:.625rem .75rem}.composer__source-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);margin-bottom:.25rem;font-size:.6875rem;font-weight:600}.composer__source-text{max-height:9rem;font-family:var(--font-notebook);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.9375rem;line-height:1.5;overflow:auto}.composer__notice{border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning-text);margin:-.5rem 0 0;padding:.375rem .625rem;font-size:.8125rem}.composer__error{border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);margin:0;padding:.5rem .75rem;font-size:.875rem}.composer--card{--kind:var(--kind-card)}.composer--question{--kind:var(--kind-question)}.composer--idea{--kind:var(--kind-idea)}
