@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-2xl:42rem;--leading-relaxed:1.625;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.mx-auto{margin-inline:auto}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-10{margin-top:calc(var(--spacing) * 10)}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-full{height:100%}.min-h-dvh{min-height:100dvh}.max-w-2xl{max-width:var(--container-2xl)}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.border{border-style:var(--tw-border-style);border-width:1px}.py-10{padding-block:calc(var(--spacing) * 10)}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[clamp\(1\.75rem\,3vw\,2\.25rem\)\]{font-size:clamp(1.75rem,3vw,2.25rem)}.text-\[clamp\(1\.75rem\,4vw\,2\.5rem\)\]{font-size:clamp(1.75rem,4vw,2.5rem)}.leading-\[1\.7\]{--tw-leading:1.7;line-height:1.7}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-\[360\]{--tw-font-weight:360;font-weight:360}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.text-\[var\(--fg\)\]{color:var(--fg)}.text-\[var\(--fg-1\)\]{color:var(--fg-1)}.text-\[var\(--fg-2\)\]{color:var(--fg-2)}.text-\[var\(--fg-3\)\]{color:var(--fg-3)}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}@media (hover:hover){.hover\:text-\[var\(--fg\)\]:hover{color:var(--fg)}}}:root{--bg:#fcfaf6;--bg-elev:#fefdfb;--bg-sunk:#f6f3ef;--fg:#15110d;--fg-1:#3e3a35;--fg-2:#6d6863;--fg-3:#9c9792;--line:#e6e4e1;--line-2:#d9d7d3;--line-3:#c7c4be;--accent:#c8664e;--accent-2:#42789c;--accent-3:#6cb26f;--warn:#dca331;--mm-root:#362512;--mm-mechanism:#c8664e;--mm-disease:#b55386;--mm-method:#478ebc;--mm-rescue:#4d9351;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif:"Fraunces", ui-serif, Georgia, serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--r:6px;--r-md:10px;--r-lg:14px;--topbar-h:48px;--sidebar-w:232px;--rail-w:232px;--outline-w:220px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 4px 16px -4px #00000014, 0 1px 2px #0000000a;--shadow-lg:0 24px 64px -16px #0000002e, 0 8px 24px -8px #00000014;--btn-quiet-h:32px;--btn-quiet-px:10px;--toolbar-row-h:36px}@supports (color:lab(0% 0 0)){:root{--bg:lab(98.2748% .282407 1.88136);--bg-elev:lab(99.429% .167608 1.12767);--bg-sunk:lab(95.9576% .340849 2.25893);--fg:lab(5.26703% .977032 2.52232);--fg-1:lab(24.6026% 1.20087 3.64025);--fg-2:lab(44.324% 1.1752 3.62188);--fg-3:lab(62.8846% 1.16265 3.61336);--line:lab(90.7347% .282913 1.88171);--line-2:lab(86.0975% .341952 2.25961);--line-3:lab(79.143% .46283 3.01729);--accent:lab(54.8339% 38.1763 32.1879);--accent-2:lab(47.7791% -10.0307 -25.2846);--accent-3:lab(66.6863% -33.5986 27.2525);--warn:lab(71.031% 14.5808 63.4449);--mm-root:lab(16.4269% 5.9462 15.9613);--mm-mechanism:lab(54.8339% 38.1763 32.1879);--mm-disease:lab(49.3961% 44.8849 -8.6739);--mm-method:lab(55.8711% -12.048 -31.4988);--mm-rescue:lab(55.0689% -33.6318 27.5919);--shadow-sm:0 1px 2px lab(0% 0 0/.04);--shadow-md:0 4px 16px -4px lab(0% 0 0/.08), 0 1px 2px lab(0% 0 0/.04);--shadow-lg:0 24px 64px -16px lab(0% 0 0/.18), 0 8px 24px -8px lab(0% 0 0/.08)}}html[data-theme=dark]{--bg:#07090c;--bg-elev:#0d1012;--bg-sunk:#040506;--fg:#f2eee7;--fg-1:#c7c3bd;--fg-2:#928f88;--fg-3:#615d57;--line:#1c2023;--line-2:#2a2e33;--line-3:#3e4349;--accent:#f37e61;--accent-2:#3ca2e0;--accent-3:#73c076;--mm-root:#cdc2b7;--mm-mechanism:#f37e61;--mm-disease:#e670ac;--mm-method:#55aee8;--mm-rescue:#6dba70;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 16px -4px #00000080, 0 1px 2px #0000004d;--shadow-lg:0 24px 64px -16px #000000b3, 0 8px 24px -8px #00000080}@supports (color:lab(0% 0 0)){html[data-theme=dark]{--bg:lab(2.47498% -.271142 -1.0418);--bg-elev:lab(4.43171% -.46894 -1.78828);--bg-sunk:lab(1.20034% -.138327 -.537747);--fg:lab(94.2286% .580758 3.77309);--fg-1:lab(79.1483% .585675 3.77634);--fg-2:lab(59.4278% .595003 3.78263);--fg-3:lab(39.7069% .610814 3.79365);--line:lab(11.8305% -.819832 -2.82878);--line-2:lab(18.7881% -1.02484 -3.53596);--line-3:lab(28.0661% -1.23599 -4.24612);--accent:lab(66.2678% 44.0351 37.0974);--accent-2:lab(62.7598% -14.4271 -40.714);--accent-3:lab(71.4473% -36.4033 29.5753);--mm-root:lab(79.1264% 2.37885 7.26377);--mm-mechanism:lab(66.2678% 44.0351 37.0974);--mm-disease:lab(63.0484% 51.3914 -9.92001);--mm-method:lab(67.452% -14.2553 -37.7572);--mm-rescue:lab(69.124% -36.4091 29.6359);--shadow-sm:0 1px 2px lab(0% 0 0/.4);--shadow-md:0 4px 16px -4px lab(0% 0 0/.5), 0 1px 2px lab(0% 0 0/.3);--shadow-lg:0 24px 64px -16px lab(0% 0 0/.7), 0 8px 24px -8px lab(0% 0 0/.5)}}*{box-sizing:border-box;margin:0;padding:0}::selection{background:oklch(from var(--accent) l c h / .25)}html{background:var(--bg);height:100%;min-height:100dvh;min-height:-webkit-fill-available;font-family:var(--font-sans);font-feature-settings:"cv11", "ss01", "ss03";font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{background:var(--bg);height:100%;min-height:100dvh;min-height:-webkit-fill-available;color:var(--fg);overscroll-behavior:none;font-size:14px;font-weight:400;line-height:1.5;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit;background:0 0;border:0;padding:0}button{cursor:pointer}kbd{font-family:var(--font-mono);border:1px solid var(--line-2);background:var(--bg-elev);color:var(--fg-2);vertical-align:1px;border-radius:4px;padding:1px 5px;font-size:10.5px;font-weight:500;line-height:1.4}em{font-style:italic}strong{color:var(--fg);font-weight:500}.door{z-index:100;background:var(--bg);isolation:isolate;transition:opacity .45s var(--ease-out), visibility .45s;place-items:center;display:grid;position:fixed;inset:0}.app[aria-hidden=false]~.door,body.unlocked .door{opacity:0;visibility:hidden;pointer-events:none}body:not(.unlocked) .door,body:not(.unlocked) .door-passkey{pointer-events:auto}.door-grain{z-index:-1;pointer-events:none;opacity:.6;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:absolute;inset:0}html[data-theme=dark] .door-grain{mix-blend-mode:screen;opacity:.4}.door-orbs{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.door-orbs span{filter:blur(80px);opacity:.5;animation:orb 22s var(--ease-in-out) infinite alternate;border-radius:50%;position:absolute}.door-orbs span:first-child{background:oklch(from var(--accent) l .2 h);width:50vmax;height:50vmax;top:-20vmax;left:-20vmax}.door-orbs span:nth-child(2){background:oklch(from var(--accent-2) l .15 h);width:40vmax;height:40vmax;animation-delay:-8s;bottom:-20vmax;right:-20vmax}.door-orbs span:nth-child(3){background:oklch(from var(--accent-3) l .12 h);width:30vmax;height:30vmax;animation-delay:-14s;top:30%;right:20%}@keyframes orb{to{transform:translate(8%,6%)scale(1.1)}}.door-stage{text-align:center;width:100%;max-width:440px;padding:2rem;position:relative}.door-mark{font-family:var(--font-sans);color:var(--fg-1);letter-spacing:-.01em;align-items:center;gap:.5rem;margin-bottom:2.5rem;font-size:13px;font-weight:500;display:inline-flex}.door-title{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.035em;margin-bottom:.75rem;font-size:clamp(2.25rem,5.5vw,3.5rem);font-weight:380;line-height:1.02}.door-sub{color:var(--fg-2);letter-spacing:-.005em;margin-bottom:2.5rem;font-size:13.5px}.door-form{flex-direction:column;align-items:center;gap:1rem;display:flex}.btn-primary{background:var(--fg);height:36px;color:var(--bg);letter-spacing:-.005em;transition:transform .16s var(--ease-out), background .16s ease, box-shadow .16s ease;box-shadow:var(--shadow-sm);border-radius:8px;align-items:center;gap:.5rem;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.btn-primary:hover{box-shadow:var(--shadow-md)}.btn-primary:active{transform:scale(.97)}.door-foot{color:var(--fg-3);font-size:11.5px}.door-footer{text-align:center;color:var(--fg-3);letter-spacing:.06em;font-size:10.5px;position:absolute;bottom:1.5rem;left:0;right:0}.app{grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:var(--topbar-h) 1fr;background:var(--bg);opacity:0;height:100%;min-height:100dvh;min-height:-webkit-fill-available;transition:opacity .4s var(--ease-out) 80ms;grid-template-areas:"topbar topbar""sidebar main";display:grid}.app.sidebar-collapsed{grid-template-columns:0 1fr}.app.sidebar-collapsed .sidebar{visibility:hidden;pointer-events:none;overflow:hidden;transform:translate(-100%)}@media (max-width:880px){.app{grid-template-columns:0 1fr}}.topbar{border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .7);-webkit-backdrop-filter:saturate(180%)blur(14px);z-index:20;grid-area:topbar;grid-template-columns:1fr minmax(280px,480px) 1fr;align-items:center;gap:1rem;padding:0 12px;display:grid;position:relative}.topbar-left,.topbar-right{align-items:center;gap:6px;display:flex}.topbar-right{justify-content:flex-end}.brand{color:var(--fg);border-radius:var(--r);letter-spacing:-.01em;align-items:center;gap:7px;height:28px;padding:0 6px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.brand-sep,.brand-room{color:var(--fg-3);font-weight:400}.brand-room{color:var(--fg-1);text-transform:capitalize}iconify-icon.ash-icon,.ash-icon{vertical-align:-.12em;color:currentColor;flex-shrink:0;display:inline-block}.side-ic iconify-icon.ash-icon,.side-ic .ash-icon,.dock-btn iconify-icon.ash-icon{vertical-align:middle}#theme-toggle .i-moon,.sidebar-foot-ic .i-moon,html[data-theme=dark] #theme-toggle .i-sun,html[data-theme=dark] .sidebar-foot-ic .i-sun{display:none}html[data-theme=dark] #theme-toggle .i-moon,html[data-theme=dark] .sidebar-foot-ic .i-moon{display:inline-block}.icon-btn{border-radius:var(--r);width:28px;height:28px;color:var(--fg-1);transition:background .15s, color .15s, transform .16s var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--bg-sunk);color:var(--fg)}.icon-btn.xs{width:22px;height:22px}.search-trigger{border-radius:var(--r);height:28px;color:var(--fg-2);width:100%;transition:color .15s, background .15s, transform .16s var(--ease-out);background:0 0;border:0;align-items:center;gap:8px;padding:0 8px 0 10px;font-size:12.5px;display:inline-flex}.search-trigger:hover{color:var(--fg);background:var(--bg-sunk)}.search-trigger:active{transform:scale(.97)}.search-trigger span{text-align:left;flex:1}.search-trigger kbd{margin-left:auto}.presence-stack{align-items:center;display:inline-flex}.presence-stack .avatar+.avatar{margin-left:-6px}.avatar{border:1.5px solid var(--bg);outline:1.5px solid var(--bg);color:#fff;background:var(--bg);background-color:var(--bg);background:var(--bg,transparent);background:var(--bg-elev);background-color:var(--bg);background:linear-gradient(135deg, var(--bg,var(--accent)) 0%, oklch(from var(--bg,var(--accent)) calc(l + .1) c h) 100%);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:10px;font-weight:500;display:inline-flex}.avatar.lg{width:36px;height:36px;font-size:13px}.sidebar{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;grid-area:sidebar;gap:18px;padding:12px 0 16px;font-size:13px;display:flex;overflow-y:auto}.side-group{padding:0 8px}.side-foot{margin-top:auto}.side-label{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);padding:4px 8px;font-size:10.5px;font-weight:500}.side-nav{flex-direction:column;gap:1px;display:flex}.side-item{border-radius:var(--r);height:28px;color:var(--fg-1);letter-spacing:-.005em;text-align:left;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 8px;font-size:13px;font-weight:400;transition:background .12s,color .12s;display:grid;position:relative}@media (hover:hover) and (pointer:fine){.side-item:hover{background:var(--bg-sunk);color:var(--fg)}}.side-item.is-active{background:oklch(from var(--accent) l c h / .1);color:var(--fg)}.side-item.is-active:before{content:"";background:var(--accent);border-radius:2px;width:2px;position:absolute;top:6px;bottom:6px;left:0}.side-item:disabled{opacity:.4;cursor:default}.side-item svg{color:var(--fg-2)}.side-item kbd{font-size:9.5px}.side-sub .side-item{grid-template-columns:10px 1fr auto;padding-left:14px}.side-dot{background:var(--c,var(--accent));border-radius:50%;width:8px;height:8px;display:inline-block}.side-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.side-sub-meta{color:var(--fg-3);font-variant-numeric:tabular-nums;font-size:11px}.badge{background:var(--accent);color:#fff;letter-spacing:0;border-radius:100px;padding:1px 6px;font-size:10px;font-weight:500}.status-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);color:var(--fg-1);flex-direction:column;gap:6px;padding:8px 10px;font-size:11.5px;display:flex}.status-row{align-items:center;gap:8px;display:flex}.status-row .status-meta{color:var(--fg-3);font-variant-numeric:tabular-nums;margin-left:auto}.status-dot{background:var(--line-3);border-radius:50%;width:6px;height:6px}.status-dot.is-live{background:var(--accent-3);box-shadow:0 0 0 3px oklch(from var(--accent-3) l c h / .18)}.main{background:var(--bg);grid-area:main;min-height:0;position:relative;overflow:hidden}.view{scroll-behavior:smooth;padding:36px clamp(20px,4vw,56px) 80px;position:absolute;inset:0;overflow-y:auto}.view[hidden]{visibility:hidden!important;pointer-events:none!important;display:none!important}::view-transition-old(view){animation-duration:.22s;animation-timing-function:var(--ease-out)}::view-transition-new(view){animation-duration:.22s;animation-timing-function:var(--ease-out)}.view-header{max-width:720px;margin-bottom:28px}.view-header-row{box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;width:100%;min-width:0;max-width:1080px;display:flex}.view-bucket .view-header-row,.view-watch .view-header-row{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:14px;max-width:100%}.view-header-row>.header-actions,.view-header-row>.toolbar-actions,.view-header-row>.seg{flex-shrink:1;align-self:flex-start;min-width:0;max-width:100%}.view-bucket .header-actions,.view-watch .header-actions{flex-wrap:wrap;justify-content:flex-start;align-self:stretch;width:100%}.view-bucket .header-actions .seg,.view-watch .header-actions .seg{min-width:0;max-width:100%}.kicker{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);align-items:center;gap:6px;margin-bottom:14px;font-size:11px;font-weight:500;display:inline-flex}.kicker-sep{opacity:.5}.display{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.03em;max-width:16ch;margin-bottom:28px;font-size:clamp(2.25rem,4.5vw,3.25rem);font-weight:360;line-height:1.04}.display.sm{max-width:none;margin-bottom:0;font-size:clamp(1.75rem,3vw,2.25rem)}.hall-hero{width:100%;min-width:0;max-width:720px;margin-bottom:48px;padding-top:0}.hall-greeting{text-align:left;min-width:0;margin-bottom:0}.hall-greeting-kicker{font:500 10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);font-variant-numeric:tabular-nums;margin:0 0 24px}.hall-greeting-title{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.03em;color:var(--fg);max-width:18ch;margin:0 0 16px;font-size:clamp(2.5rem,8vw,4rem);font-style:normal;font-weight:360;line-height:1}.hall-greeting-subline{max-width:28ch;font:400 15px/1.5 var(--font-sans);letter-spacing:-.006em;color:var(--fg-2);margin:0}.hall-greeting-rule{border:0;border-top:1px solid var(--line);width:100%;margin:20px 0 0}.hall-meta{margin-top:14px;margin-bottom:0}.mood{background:var(--bg-sunk);border:1px solid var(--line);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.mood button{color:var(--fg-2);letter-spacing:-.005em;transition:background .18s, color .18s, transform .16s var(--ease-out);border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:400}.mood button:hover{color:var(--fg)}.mood button.is-active{background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow-sm)}.mood button:active{transform:scale(.96)}.hall-grid{box-sizing:border-box;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;width:100%;min-width:0;max-width:1180px;display:grid}.view[data-view=hall]{min-width:0;padding-top:28px;overflow-x:clip}.view[data-view=hall]>.hall-hero,.view[data-view=hall]>.hall-grid,.view[data-view=hall]>.hall-changelog{min-width:0;max-width:100%}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);transition:border-color .18s, transform .18s var(--ease-out), background .18s;flex-direction:column;gap:12px;padding:18px;display:flex}.card[data-route]:hover{border-color:var(--line-3)}.card[data-route]:active{transform:scale(.996)}.card[data-route]{cursor:pointer}.hall-grid .card{min-width:0;max-width:100%}.card-letter,.card-paper,.card-stats,.card-presence{grid-column:span 6}@media (max-width:880px){.card-letter,.card-paper,.card-stats,.card-presence{grid-column:span 12}}.card-head{letter-spacing:.03em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:11px;display:flex}.card-label{color:var(--fg-2);font-weight:500}.card-meta{color:var(--fg-3);font-variant-numeric:tabular-nums}.card-body{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 32;letter-spacing:-.015em;color:var(--fg);font-size:18px;font-weight:380;line-height:1.45}.card-title{font-family:var(--font-serif);font-variation-settings:"opsz" 22;letter-spacing:-.015em;font-size:17px;font-weight:400;line-height:1.35}.card-author{color:var(--fg-2);font-size:12px}.progress{background:var(--bg-sunk);border-radius:100px;height:3px;overflow:hidden}.progress span{background:var(--accent);height:100%;width:var(--p,0%);transition:width .5s var(--ease-out);border-radius:100px;display:block}.card-foot{color:var(--fg-2);justify-content:space-between;align-items:center;margin-top:auto;font-size:12px;display:flex}.card-cta{color:var(--fg);font-weight:500}.stat-row{gap:18px;display:flex}.stat-n{font-family:var(--font-serif);font-variation-settings:"opsz" 72;letter-spacing:-.03em;font-size:30px;font-weight:380;line-height:1}.stat-l{color:var(--fg-2);text-transform:lowercase;letter-spacing:.02em;font-size:11px}.sparkline{height:36px;margin-top:auto}.sparkline svg{width:100%;height:100%;display:block}.presence-row{align-items:center;gap:12px;padding:4px 0;display:flex}.presence-info{flex-direction:column;display:flex}.presence-name{font-size:13px;font-weight:500}.presence-line{color:var(--fg-2);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.dot{background:var(--line-3);border-radius:50%;width:6px;height:6px;display:inline-block}.dot.is-live{background:var(--accent-3);box-shadow:0 0 0 3px oklch(from var(--accent-3) l c h / .18)}.masonry{column-count:3;column-gap:14px;max-width:1180px}@media (max-width:880px){.masonry{column-count:2}}@media (max-width:560px){.masonry{column-count:1}}.memory{break-inside:avoid;border-radius:var(--r-lg);background:var(--bg-elev);border:1px solid var(--line);cursor:pointer;transition:transform .22s var(--ease-out), border-color .18s;opacity:0;animation:rise .4s var(--ease-out) forwards;margin-bottom:14px;display:block;position:relative;overflow:hidden;transform:translateY(8px)}.memory:hover{border-color:var(--line-3)}.memory:active{transform:scale(.992)}.memory-img{background:var(--bg-sunk);width:100%;aspect-ratio:var(--ar,4 / 5);background-image:var(--img,none);filter:saturate(.92);transition:filter .3s ease, transform .4s var(--ease-out);background-position:50%;background-size:cover;display:block}.memory:hover .memory-img{filter:saturate();transform:scale(1.015)}.memory-meta{flex-direction:column;gap:4px;padding:12px 14px 14px;display:flex}.memory-date{color:var(--fg-3);letter-spacing:.03em;text-transform:uppercase;font-size:11px}.memory-title{font-family:var(--font-serif);font-variation-settings:"opsz" 18;letter-spacing:-.012em;font-size:15px;font-weight:400;line-height:1.3}.memory-place{color:var(--fg-2);font-size:11.5px}@keyframes rise{to{opacity:1;transform:translateY(0)}}.seg{background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--r-md);flex-shrink:0;align-items:center;padding:3px;display:inline-flex}.seg.sm{border-radius:8px;padding:2px}.seg-btn{height:calc(var(--btn-quiet-h) - 6px);min-height:calc(var(--btn-quiet-h) - 6px);border-radius:calc(var(--r-md) - 3px);font:500 12px/1 var(--font-sans);letter-spacing:-.01em;color:var(--fg-2);transition:color .16s var(--ease-out), background-color .16s var(--ease-out), transform .16s var(--ease-out);justify-content:center;align-items:center;gap:4px;padding:0 10px;display:inline-flex}.seg.sm .seg-btn{height:calc(var(--btn-quiet-h) - 4px);min-height:calc(var(--btn-quiet-h) - 4px);border-radius:6px;padding:0 8px;font-size:11px}@media (hover:hover) and (pointer:fine){.seg-btn:hover{color:var(--fg)}}.seg-btn:active{transform:scale(.97)}.seg-btn.is-active{background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow-sm)}.view-letters{grid-template-columns:340px 1fr;padding:0;display:grid;position:relative;overflow:hidden}.letters-list-wrap .letters-list{border-right:0;overflow-y:auto}.letter-reader{background:var(--bg);min-height:0;padding:0;position:relative;overflow-y:auto}.reader-progress{background:var(--line);z-index:2;height:2px;position:sticky;top:0}.reader-progress span{background:var(--fg);width:0%;height:100%;transition:width 80ms linear;display:block}.reader-inner{max-width:640px;margin:0 auto;padding:48px 18px 96px}.reader-kicker{color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:18px;font-size:11px;display:inline-flex}.reader-title{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.03em;margin-bottom:12px;font-size:clamp(2rem,3.6vw,2.75rem);font-weight:360;line-height:1.06}.reader-byline{color:var(--fg-2);margin-bottom:28px;font-size:13px}.reader-body{font-family:var(--font-serif);font-variation-settings:"opsz" 16;letter-spacing:-.008em;color:var(--fg-1);font-size:18px;font-weight:380;line-height:1.65}.reader-body p+p{margin-top:18px}.reader-body p{color:oklch(from var(--fg) l c h / .92)}.view-papers{grid-template-columns:var(--rail-w) 1fr var(--outline-w);height:100%;padding:0;display:grid}@media (max-width:1100px){.view-papers{grid-template-columns:var(--rail-w) 1fr}.paper-outline{display:none}}@media (max-width:720px){.view-papers{grid-template-columns:1fr}.papers-rail{display:none}}.papers-rail{border-right:1px solid var(--line);padding:18px 8px 80px;overflow-y:auto}.rail-head{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);justify-content:space-between;align-items:center;gap:8px;padding:4px 10px 10px;font-size:11px;font-weight:500;display:flex}.paper-list{list-style:none}.paper-list-item{border-radius:var(--r-md);cursor:pointer;flex-direction:column;gap:4px;padding:10px 12px;transition:background .15s;display:flex}.paper-list-item:hover{background:var(--bg-sunk)}.paper-list-item.is-active{background:oklch(from var(--accent) l c h / .08)}.paper-list-item .year{color:var(--fg-3);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:11px}.paper-list-item .t{font-family:var(--font-serif);font-variation-settings:"opsz" 18;letter-spacing:-.01em;font-size:13.5px;font-weight:400;line-height:1.3}.paper-list-item .a{color:var(--fg-2);font-size:11.5px}.paper-pane{padding:32px clamp(20px,3.5vw,48px) 80px;overflow-y:auto}.paper-meta{max-width:720px}.paper-meta-top{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.tag{color:var(--fg-1);background:var(--bg-sunk);border:1px solid var(--line);letter-spacing:-.005em;border-radius:100px;padding:2px 8px;font-size:11px;font-weight:400}.paper-doi{font-family:var(--font-mono);color:var(--fg-3);margin-left:auto;font-size:11px}.paper-title{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.025em;margin-bottom:12px;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:380;line-height:1.08}.paper-authors{color:var(--fg-1);margin-bottom:4px;font-size:13px;line-height:1.5}.paper-journal{color:var(--fg-2);margin-bottom:28px;font-size:12.5px}.paper-tabs{background:var(--bg-sunk);border:1px solid var(--line);border-radius:10px;gap:2px;width:fit-content;margin-bottom:28px;padding:4px;display:flex}.tab{color:var(--fg-2);letter-spacing:-.005em;transition:background .15s, color .15s, transform .16s var(--ease-out);border-radius:7px;padding:6px 12px;font-size:12.5px}.tab:hover{color:var(--fg)}.tab.is-active{background:var(--bg-elev);color:var(--fg);box-shadow:var(--shadow-sm)}.tab:active{transform:scale(.97)}.paper-body{max-width:720px}.tab-pane[hidden]{display:none}.tab-pane{animation:rise .3s var(--ease-out)}.tldr{border-radius:var(--r-lg);background:linear-gradient(135deg, oklch(from var(--accent) l c h / .06), oklch(from var(--accent) l c h / .02));border:1px solid oklch(from var(--accent) l c h / .15);margin-bottom:28px;padding:18px 20px}.tldr-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;font-size:10.5px;font-weight:500}.tldr-body{font-family:var(--font-serif);font-variation-settings:"opsz" 18;letter-spacing:-.01em;color:var(--fg);font-size:16px;font-weight:400;line-height:1.55}.kvs{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);grid-template-columns:1fr;gap:0;margin-bottom:28px;display:grid;overflow:hidden}.kv{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr;padding:10px 14px;font-size:12.5px;display:grid}.kv:last-child{border-bottom:0}.kv .k{color:var(--fg-2)}.kv .v{color:var(--fg)}.h3{font-family:var(--font-serif);font-variation-settings:"opsz" 24;letter-spacing:-.015em;margin:28px 0 10px;font-size:17px;font-weight:400}.prose{font-family:var(--font-serif);font-variation-settings:"opsz" 16;color:oklch(from var(--fg) l c h / .9);letter-spacing:-.005em;font-size:15.5px;font-weight:380;line-height:1.65}.prose+.prose{margin-top:14px}.method-list{border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:1px;list-style:none;display:flex;overflow:hidden}.method-item{background:var(--bg-elev);border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;gap:16px;padding:12px 16px;display:grid}.method-item:last-child{border-bottom:0}.method-name{font-family:var(--font-mono);color:var(--fg-1);font-size:12px}.method-desc{color:var(--fg-1);font-size:13px;line-height:1.5}.figure-list{counter-reset:f;grid-template-columns:repeat(2,1fr);gap:14px;list-style:none;display:grid}@media (max-width:720px){.figure-list{grid-template-columns:1fr}}.figure-item{counter-increment:f;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);padding:16px}.figure-item:before{content:"Fig. " counter(f);font-family:var(--font-mono);color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.figure-title{font-family:var(--font-serif);font-variation-settings:"opsz" 18;letter-spacing:-.01em;margin:6px 0 8px;font-size:14px;line-height:1.3}.figure-desc{color:var(--fg-2);font-size:12.5px;line-height:1.55}.exam-list{flex-direction:column;gap:4px;display:flex}.exam-item{border:1px solid var(--line);background:var(--bg-elev);border-radius:var(--r-md);padding:14px 16px;transition:border-color .15s}.exam-item:hover{border-color:var(--line-3)}.exam-q{color:var(--fg);cursor:pointer;gap:8px;margin-bottom:6px;font-size:13.5px;font-weight:500;display:flex}.exam-q:before{content:"Q";font-family:var(--font-mono);color:var(--fg-3);font-weight:400}.exam-a{color:var(--fg-1);padding-left:16px;font-size:13px;line-height:1.55;display:none}.exam-item.is-open .exam-a{animation:rise .25s var(--ease-out);display:block}.paper-outline{border-left:1px solid var(--line);padding:32px 18px 80px;font-size:12px;position:sticky;top:0;overflow-y:auto}.outline-head{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-3);margin-bottom:10px;font-size:10.5px}#outline-list{flex-direction:column;gap:2px;list-style:none;display:flex}#outline-list a{color:var(--fg-2);border-left:1.5px solid #0000;border-radius:5px;padding:4px 8px;text-decoration:none;transition:background .15s,color .15s;display:block}#outline-list a:hover{background:var(--bg-sunk);color:var(--fg)}#outline-list a.is-active{border-left-color:var(--accent);color:var(--fg)}.tab-mindmap{gap:12px;max-width:none;display:grid}.mindmap-toolbar{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:10px 12px;padding:8px 10px;display:flex}.mindmap-toolbar .seg.sm{scrollbar-width:none;flex:auto;min-width:0;overflow-x:auto}.mindmap-toolbar .seg.sm::-webkit-scrollbar{display:none}.mindmap-meta{font-variant-numeric:tabular-nums;gap:4px;padding-right:4px;font-size:12px;display:inline-flex}.mindmap-meta .dim{color:var(--fg-3)}.mindmap-actions{gap:2px;margin-left:auto;display:inline-flex}.mindmap-canvas{isolation:isolate;border:1px solid var(--line);border-radius:var(--r-lg);background:radial-gradient(ellipse at top, oklch(from var(--accent) l c h / .04), transparent 60%), var(--bg-sunk);cursor:grab;height:clamp(420px,65vh,720px);position:relative;overflow:hidden}.mindmap-canvas:active{cursor:grabbing}#mindmap-svg{width:100%;height:100%;display:block}.mm-node{cursor:pointer;transition:filter .18s}.mm-node .mm-node-bg{transition:stroke-width .18s,filter .18s}.mm-node:hover .mm-node-bg{filter:drop-shadow(0 4px 14px #0000002e);filter:drop-shadow(0 4px 14px lab(0% 0 0/.18))}.mm-node.is-focused .mm-node-bg{stroke-width:2.5px}.mm-link{stroke:var(--line-3);stroke-opacity:.7}.mm-link.is-dim{stroke-opacity:.15}.mm-node.is-dim{opacity:.2}.mm-node-label{font-family:var(--font-sans);fill:var(--fg);pointer-events:none;letter-spacing:-.005em;font-size:11.5px;font-weight:500}.mindmap-tip{pointer-events:none;background:var(--bg-elev);border:1px solid var(--line-2);border-radius:var(--r-md);max-width:min(280px,100vw - 24px);color:var(--fg-1);box-shadow:var(--shadow-md);z-index:200;visibility:hidden;opacity:0;padding:10px 12px;font-size:12px;line-height:1.5;transition:opacity .12s;position:fixed;top:0;left:0}.mindmap-tip:not([hidden]){visibility:visible;opacity:1}.mindmap-tip strong{font-family:var(--font-serif);font-variation-settings:"opsz" 18;color:var(--fg);margin-bottom:4px;font-size:13.5px;font-weight:450;display:block}.mindmap-tip .tip-cat{letter-spacing:.05em;text-transform:uppercase;color:var(--fg-3);margin-bottom:2px;font-size:10px;display:block}.mindmap-tip span:not(.tip-cat){color:var(--fg-2);margin-top:4px;display:block}.mindmap-legend{color:var(--fg-2);background:oklch(from var(--bg) l c h / .85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:var(--r-md);z-index:4;gap:14px;padding:6px 10px;font-size:11px;display:flex;position:absolute;bottom:10px;left:10px}.mindmap-legend i{vertical-align:0;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.cmd-backdrop{z-index:80;background:oklch(from var(--bg) l c h / .5);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .18s var(--ease-out);position:fixed;inset:0}.cmd-backdrop.is-open{opacity:1}.cmd{background:var(--bg-elev);border:1px solid var(--line-2);width:min(620px,100% - 24px);box-shadow:var(--shadow-lg);z-index:81;opacity:0;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out);border-radius:14px;position:fixed;top:18%;left:50%;overflow:hidden;transform:translate(-50%,-8px)scale(.98)}.cmd.is-open{opacity:1;transform:translate(-50%)scale(1)}.cmd-head{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:10px;padding:12px 14px;display:flex}.cmd-head>svg{color:var(--fg-2);flex:none}#cmd-input{width:100%;min-width:0;font:400 14px/1.2 var(--font-sans);letter-spacing:-.005em;color:var(--fg);background:0 0;border:0;outline:none;flex:auto}#cmd-input::placeholder{color:var(--fg-3)}.cmd-list{max-height:380px;padding:6px;overflow-y:auto}.cmd-group{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);padding:8px 10px 4px;font-size:10.5px;font-weight:500}.cmd-item{color:var(--fg);text-align:left;letter-spacing:-.005em;border-radius:7px;grid-template-columns:16px 1fr auto;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:13px;display:grid}.cmd-item .cmd-meta{color:var(--fg-3);font-size:11.5px}.cmd-item.is-active,.cmd-item:hover{background:var(--bg-sunk)}.cmd-item svg{color:var(--fg-2)}.cmd-foot{border-top:1px solid var(--line);background:var(--bg);color:var(--fg-2);gap:12px;padding:8px 14px;font-size:11px;display:flex}.cmd-foot kbd{margin-right:3px}.cmd[hidden],.cmd-backdrop[hidden]{opacity:0;pointer-events:none;visibility:hidden;display:none!important}.cmd:not(.is-open),.cmd-backdrop:not(.is-open){pointer-events:none;visibility:hidden;-webkit-backdrop-filter:none}.cmd.is-open,.cmd-backdrop.is-open{pointer-events:auto}.whisper{z-index:60;background:oklch(from var(--bg-elev) l c h / .85);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-md);opacity:0;width:min(360px,100% - 36px);transition:opacity .3s var(--ease-out), transform .3s var(--ease-out);border-radius:100px;align-items:center;gap:8px;padding:6px 8px 6px 12px;display:flex;position:fixed;bottom:14px;right:18px;transform:translateY(8px)}body.unlocked .whisper{opacity:1;transform:translateY(0)}.whisper-dot{background:var(--accent-3);width:6px;height:6px;box-shadow:0 0 0 3px oklch(from var(--accent-3) l c h / .18);border-radius:50%;flex:0 0 6px}.whisper input{min-width:0;color:var(--fg);outline:0;flex:1;font-size:12.5px}.whisper input::placeholder{color:var(--fg-3)}.heart-btn{width:28px;height:28px;color:var(--accent);background:oklch(from var(--accent) l c h / .1);transition:background .18s, transform .16s var(--ease-out);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.heart-btn:hover{background:oklch(from var(--accent) l c h / .16)}.heart-btn:active{transform:scale(.92)}.heart-float{pointer-events:none;color:var(--accent);z-index:9000;animation:heart-rise 1.6s var(--ease-out) forwards;position:fixed}@keyframes heart-rise{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-80px)scale(1.3)}}.whisper-echo{font-family:var(--font-serif);font-variation-settings:"opsz" 14;color:var(--fg-1);background:oklch(from var(--bg-elev) l c h / .85);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-md);opacity:0;max-width:280px;transition:opacity .28s var(--ease-out), transform .28s var(--ease-out);z-index:59;pointer-events:none;border-radius:10px;padding:8px 12px;font-size:13px;font-style:italic;position:fixed;bottom:60px;right:24px;transform:translateY(8px)}.whisper-echo.is-show{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.door-orbs span{animation:none}}*{scrollbar-width:thin;scrollbar-color:var(--line-3) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:padding-box padding-box;border:3px solid #0000;border-radius:10px}:hover::-webkit-scrollbar-thumb{background:var(--line-3);background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--fg-3);background-clip:padding-box}.welcome{z-index:1000;background:var(--bg);isolation:isolate;animation:welcomeIn .6s var(--ease-out) both;grid-template-rows:1fr auto;place-items:center;display:grid;position:fixed;inset:0}.welcome.is-leaving{animation:welcomeOut .48s var(--ease-out) both}@keyframes welcomeIn{0%{opacity:0}to{opacity:1}}@keyframes welcomeOut{0%{opacity:1}to{opacity:0;transform:scale(1.01)}}.welcome-grain{pointer-events:none;z-index:-2;opacity:.5;mix-blend-mode:multiply;background-image:radial-gradient(circle at 20% 30%,#e697832e,#0000 55%),radial-gradient(circle at 80% 70%,#60a7d629,#0000 55%),radial-gradient(circle,#b6d9b61a,#0000 60%);background-image:radial-gradient(circle at 20% 30%,lab(70.2036% 28.7759 23.4621/.18),#0000 55%),radial-gradient(circle at 80% 70%,lab(65.1775% -12.6179 -31.6242/.16),#0000 55%),radial-gradient(circle,lab(83.3754% -16.7679 13.1672/.1),#0000 60%);position:absolute;inset:0}.welcome-orbs{pointer-events:none;z-index:-1;position:absolute;inset:0;overflow:hidden}.welcome-orbs span{filter:blur(60px);opacity:.4;width:520px;height:520px;animation:orbDrift 22s var(--ease-in-out) infinite;border-radius:50%;position:absolute}.welcome-orbs span:first-child{background:var(--accent);top:-15%;left:-10%}.welcome-orbs span:nth-child(2){background:var(--accent-2);animation-duration:28s;animation-direction:reverse;bottom:-20%;right:-10%}.welcome-orbs span:nth-child(3){background:var(--accent-3);opacity:.25;animation-duration:36s;top:30%;left:40%}.welcome-skip{color:var(--fg-2);font:500 12px/1 var(--font-sans);letter-spacing:.02em;cursor:pointer;border-radius:var(--r);transition:color .15s var(--ease-out), background .15s var(--ease-out);background:0 0;border:0;padding:8px 12px;position:absolute;top:24px;right:24px}.welcome-stage{text-align:center;justify-items:center;gap:16px;max-width:640px;padding:24px;display:grid}.welcome-kicker{font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.welcome-title{font-family:var(--font-serif);font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.02em;color:var(--fg);max-width:18ch;margin:0;font-size:clamp(40px,6.4vw,76px);font-weight:380;line-height:1.04}.welcome-sub{font:400 17px/1.6 var(--font-sans);color:var(--fg-1);max-width:52ch;margin:0}@keyframes welcomeFlip{0%{opacity:0;filter:blur(4px);transform:translateY(10px)}to{opacity:1;filter:blur();transform:translateY(0)}}.welcome-foot{grid-template-columns:1fr auto;align-items:center;gap:16px;width:100%;max-width:640px;padding:28px 24px 40px;display:grid}.whats-new-pulse{background:var(--accent);width:6px;height:6px;animation:pulse 2.2s var(--ease-in-out) infinite;border-radius:50%;position:absolute;top:4px;right:4px;box-shadow:0 0 #c8664e99;box-shadow:0 0 lab(54.8339% 38.1763 32.1879/.6)}@keyframes pulse{50%{opacity:.5}}.whats-new-btn[data-unseen=true] svg{color:var(--accent)}.side-glyph{width:18px;height:18px;font:500 12px/1 var(--font-serif);color:var(--fg-2);border:1px solid var(--line);background:var(--bg-elev);border-radius:5px;place-items:center;display:inline-grid}.side-item.is-active .side-glyph{color:var(--fg);border-color:var(--line-2)}.hall-changelog{box-sizing:border-box;width:100%;min-width:0;max-width:min(520px,100%);margin-top:48px;padding:0 0 12px}.hall-changelog-header{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.hall-changelog-label{margin:0;padding:0}.hall-changelog-link{font:500 12px/1 var(--font-sans);color:var(--fg-2);letter-spacing:-.01em;cursor:pointer;transition:color .15s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;flex:none;padding:6px 0}.hall-changelog-link:hover{color:var(--fg)}.hall-changelog-link:active{transform:scale(.97)}.hall-whats-new{min-width:0;max-width:100%}.hall-whats-new-card{text-align:left;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);cursor:pointer;box-sizing:border-box;width:100%;min-width:0;max-width:100%;transition:border-color .18s var(--ease-out), transform .16s var(--ease-out);gap:10px;margin:0;padding:20px 22px;display:grid}.hall-whats-new-card:hover{border-color:var(--line-3)}.hall-whats-new-card:active{transform:scale(.997)}.hall-whats-new-meta{flex-wrap:wrap;align-items:baseline;gap:6px;min-width:0;display:flex}.hall-whats-new-version{font:500 11.5px/1 var(--font-mono);letter-spacing:.06em;color:var(--accent);font-variant-numeric:tabular-nums}.hall-whats-new-dot{color:var(--fg-3);font-size:11px;line-height:1}.hall-whats-new-date{font:400 11.5px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;font-variant-numeric:tabular-nums}.hall-whats-new-title{min-width:0;font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 72, "SOFT" 50;letter-spacing:-.02em;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:clamp(1.05rem,2.4vw,1.2rem);font-weight:380;line-height:1.28;overflow:hidden}.hall-whats-new-excerpt{min-width:0;font:400 13.5px/1.55 var(--font-sans);color:var(--fg-2);letter-spacing:-.008em;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}#hall-changelog.is-entering .hall-whats-new-card{opacity:0;animation:rise .32s var(--ease-out) forwards;transform:translateY(6px)}@media (prefers-reduced-motion:reduce){#hall-changelog.is-entering .hall-whats-new-card{opacity:1;animation:none;transform:none}}.view-bucket{max-width:880px}.bucket-body{gap:28px;margin-top:4px;display:grid}.bucket-group{gap:0;display:grid}.bucket-group-head{border-top:1px solid var(--line);font:500 10.5px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);align-items:baseline;gap:10px;margin:0 0 6px;padding:16px 0 10px;display:flex}.bucket-body>.bucket-group:first-child .bucket-group-head{border-top:0;padding-top:0}.bucket-group-count{font:500 10.5px/1 var(--font-mono);color:var(--line-3);font-variant-numeric:tabular-nums}.bucket-list{background:0 0;border:0;border-radius:0;gap:0;margin:0;padding:0;list-style:none;display:grid;overflow:visible}.bucket-item{border-top:1px solid var(--line);cursor:pointer;transition:background .14s var(--ease-out);opacity:0;animation:rise .34s var(--ease-out) forwards;background:0 0;border-radius:0;grid-template-columns:24px 24px 1fr auto;grid-template-areas:"thumb dot main pill";align-items:center;column-gap:14px;padding:14px 4px;display:grid;transform:translateY(4px)}.bucket-item:first-child{border-top:0}.bucket-item:hover{background:var(--bg-sunk)}.bucket-item:active{transform:scale(.998)}.bucket-item.is-done{opacity:.6}.bucket-thumb{background:var(--bg-sunk);border:1px solid var(--line);border-radius:50%;grid-area:thumb;width:24px;height:24px;display:block;overflow:hidden}.bucket-thumb img{object-fit:cover;width:100%;height:100%;display:block}.bucket-thumb.is-empty{visibility:hidden}.bucket-dot{background:var(--fg-3);width:8px;height:8px;transition:background .18s var(--ease-out), transform .18s var(--ease-out);border-radius:50%;grid-area:dot;place-self:center;position:relative}.bucket-item[data-s=someday] .bucket-dot{background:var(--line-3)}.bucket-item[data-s=planning] .bucket-dot{background:var(--accent-2)}.bucket-item[data-s=doing] .bucket-dot{background:var(--accent);box-shadow:0 0 0 3px oklch(from var(--accent) l c h / .16)}.bucket-item[data-s=done] .bucket-dot{background:var(--accent-3)}.bucket-row-main{grid-area:main;gap:2px;min-width:0;display:grid}.bucket-title{font-family:var(--font-serif);font-variation-settings:"opsz" 22;letter-spacing:-.012em;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:16px;font-weight:380;line-height:1.3;overflow:hidden}.bucket-item.is-done .bucket-title{color:var(--fg-2);text-decoration:line-through;-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2)}.bucket-meta{font:400 11px/1.4 var(--font-mono);letter-spacing:.02em;color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bucket-meta .bucket-meta-cat{color:var(--fg-2);text-transform:lowercase}.bucket-status{appearance:none;cursor:pointer;font:500 10.5px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);background:var(--bg-elev);color:var(--fg-2);transition:border-color .14s var(--ease-out), background .14s var(--ease-out), color .14s var(--ease-out), transform .14s var(--ease-out);border-radius:999px;grid-area:pill;padding:6px 10px}.bucket-status:hover{border-color:var(--line-3);background:var(--bg)}.bucket-status:active{transform:scale(.94)}.bucket-status[data-s=someday]{color:var(--fg-3)}.bucket-status[data-s=planning]{color:var(--accent-2);border-color:oklch(from var(--accent-2) l c h / .28);background:oklch(from var(--accent-2) l c h / .06)}.bucket-status[data-s=doing]{color:var(--accent);border-color:oklch(from var(--accent) l c h / .32);background:oklch(from var(--accent) l c h / .07)}.bucket-status[data-s=done]{color:var(--accent-3);border-color:oklch(from var(--accent-3) l c h / .32);background:oklch(from var(--accent-3) l c h / .06)}.bucket-check{display:none}.countdown-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.countdown-tile{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);transition:transform .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);cursor:default;gap:8px;padding:28px 24px 22px;display:grid;position:relative;overflow:hidden}.countdown-tile:before{content:"";background:var(--c,var(--accent));opacity:.7;height:2px;position:absolute;top:0;left:0;right:0}.countdown-tile:hover{border-color:var(--line-2);box-shadow:var(--shadow-md);transform:translateY(-2px)}.countdown-num{font-family:var(--font-serif);font-variation-settings:"opsz" 96;letter-spacing:-.04em;color:var(--fg);font-size:64px;font-weight:360;line-height:1}.countdown-unit{font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.countdown-title{font:450 15px/1.3 var(--font-sans);color:var(--fg);margin-top:6px}.countdown-date{font:400 12px/1.4 var(--font-mono);color:var(--fg-3)}.watch-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.watch-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);transition:transform .2s var(--ease-out), border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);cursor:pointer;grid-template-rows:180px auto;display:grid;overflow:hidden}.watch-card:hover{border-color:var(--line-2);box-shadow:var(--shadow-md);transform:translateY(-2px)}.watch-poster{background:linear-gradient(135deg, var(--p1,var(--accent)) 0%, var(--p2,var(--accent-2)) 100%);text-align:center;place-items:center;padding:18px;display:grid;position:relative}.watch-poster:after{content:"";background:radial-gradient(circle at 30% 20%,#ffffff26,#0000 50%),radial-gradient(circle at 70% 80%,#0000002e,#0000 55%);background:radial-gradient(circle at 30% 20%,lab(100% 0 0/.15),#0000 50%),radial-gradient(circle at 70% 80%,lab(0% 0 0/.18),#0000 55%);position:absolute;inset:0}.watch-poster-title{font-family:var(--font-serif);font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.02em;color:#f8f8f8;color:lab(97.68% -.0000298023 .0000119209);text-shadow:0 2px 14px #00000040;text-shadow:0 2px 14px lab(0% 0 0/.25);max-width:14ch;font-size:22px;font-weight:380;line-height:1.1;position:relative}.watch-info{gap:6px;padding:14px 16px 16px;display:grid}.watch-meta{font:400 12px/1.4 var(--font-mono);color:var(--fg-3);letter-spacing:.01em;gap:8px;display:flex}.watch-title{font:450 14px/1.35 var(--font-sans);color:var(--fg);letter-spacing:-.005em}.watch-status{font:500 10px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--fg-3)}.watch-status[data-s=watching]{color:var(--accent)}.watch-status[data-s=watched]{color:var(--accent-3)}.watch-rating{font:500 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.1em}.watch-note{font:400 12px/1.5 var(--font-sans);color:var(--fg-2);font-style:italic}.view-lessons{--rail-gutter:16px;height:100%;min-height:0;padding:0;overflow:hidden}.lessons-shell{grid-template-columns:min(320px,32vw) minmax(0,1fr);width:100%;max-width:100%;height:100%;min-height:0;display:grid}.lessons-rail{border-right:1px solid var(--line);background:var(--bg);grid-template-rows:auto 1fr;padding:0;display:grid;overflow:hidden}.lessons-rail-head{padding:18px var(--rail-gutter,16px) 14px}.lessons-rail-lang{font-family:var(--font-serif);font-variation-settings:"opsz" 96;letter-spacing:-.02em;color:var(--fg);font-size:28px;font-weight:380;line-height:1.05}.lessons-rail-native{font:400 13px/1.4 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.lessons-rail-prog{background:var(--line);border-radius:2px;height:3px;margin-top:12px;overflow:hidden}.lessons-rail-prog span{background:var(--fg);height:100%;width:var(--p,0%);transition:width .4s var(--ease-out);display:block}.lessons-rail-meta{font:500 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.1em;text-transform:uppercase;margin-top:8px}.unit-label{font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);padding:22px 12px 8px}.lesson-item{border-radius:var(--r);cursor:pointer;width:100%;font:400 13px/1.3 var(--font-sans);color:var(--fg-1);text-align:left;transition:background .15s var(--ease-out), color .15s var(--ease-out);background:0 0;border:0;grid-template-columns:16px 1fr auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.lesson-item:hover{background:var(--bg-sunk);color:var(--fg)}.lesson-item.is-active{background:var(--bg);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line-2)}.lesson-status{border:1.4px solid var(--line-3);border-radius:50%;width:12px;height:12px}.lesson-status[data-s=doing]{border-color:var(--accent);background:#ffe4dc;background:lab(92.7407% 11.1791 8.9798)}.lesson-status[data-s=done]{background:var(--fg);border-color:var(--fg)}.lesson-mins{font:400 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.lesson-content{min-width:0;min-height:0;overflow:hidden}.lesson-content h2{font-family:var(--font-serif);font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.02em;color:var(--fg);margin:0 0 24px;font-size:clamp(28px,3.4vw,44px);font-weight:380;line-height:1.08}.lesson-intro{font-family:var(--font-serif);font-variation-settings:"opsz" 36;color:var(--fg-1);margin:0 0 32px;font-size:18px;line-height:1.6}.vocab-table{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);overflow:hidden}.vocab-row{border-top:1px solid var(--line);transition:background .15s var(--ease-out);grid-template-columns:1.2fr 1fr 1.8fr;align-items:center;padding:14px 20px;display:grid}.vocab-row:first-child{background:var(--bg-sunk);border-top:0}.vocab-row:not(.is-head):hover{background:var(--bg-sunk)}.vocab-a{font-family:var(--font-serif);font-variation-settings:"opsz" 60;color:var(--fg);letter-spacing:-.005em;font-size:19px}.vocab-b{font:400 13px/1.4 var(--font-mono);color:var(--fg-2);letter-spacing:.01em}.vocab-c{font:400 14px/1.5 var(--font-sans);color:var(--fg-1)}.vocab-row.is-head .vocab-a,.vocab-row.is-head .vocab-b,.vocab-row.is-head .vocab-c{font:500 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.12em;text-transform:uppercase}.lesson-empty{text-align:center;color:var(--fg-3);font:400 14px/1.4 var(--font-sans);padding:80px 0}.training-grid{gap:20px;display:grid}.training-section{gap:12px;display:grid}.training-section-head{justify-content:space-between;align-items:baseline;display:flex}.training-section-head h3{font-family:var(--font-serif);font-variation-settings:"opsz" 60;letter-spacing:-.01em;color:var(--fg);margin:0;font-size:22px;font-weight:380}.training-section-head .meta{font:400 12px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.04em}.week-row{grid-template-columns:repeat(7,1fr);gap:10px;display:grid}.day-card{border:1px solid var(--line);border-radius:var(--r);background:var(--bg-elev);transition:transform .2s var(--ease-out), border-color .2s var(--ease-out);gap:6px;padding:14px;display:grid}.day-card:hover{border-color:var(--line-2);transform:translateY(-2px)}.day-card.is-today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.day-card.is-rest{background:var(--bg-sunk)}.day-label{font:500 11px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3)}.day-card.is-today .day-label{color:var(--accent)}.day-session{font:500 13px/1.3 var(--font-sans);color:var(--fg)}.day-focus{font:400 12px/1.4 var(--font-sans);color:var(--fg-2)}.day-foot{font:400 11px/1 var(--font-mono);color:var(--fg-3);justify-content:space-between;align-items:center;margin-top:4px;display:flex}.day-foot .check{border:1.4px solid var(--line-3);border-radius:50%;place-items:center;width:14px;height:14px;display:grid}.day-card.is-done .check{background:var(--fg);border-color:var(--fg);color:var(--bg)}.day-card.is-done .check svg{opacity:1}.day-card .check svg{opacity:0}.macro-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;display:grid}.macro-card{border:1px solid var(--line);background:var(--bg-elev);border-radius:var(--r-lg);grid-template-columns:56px 1fr;align-items:center;gap:10px;padding:18px;display:grid}.macro-ring{width:56px;height:56px;position:relative}.macro-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.macro-ring .track{fill:none;stroke:var(--line);stroke-width:5px}.macro-ring .fill{fill:none;stroke:var(--fg);stroke-width:5px;stroke-linecap:round;transition:stroke-dashoffset .6s var(--ease-out)}.macro-pct{font:500 12px/1 var(--font-mono);color:var(--fg);place-items:center;display:grid;position:absolute;inset:0}.macro-info{gap:2px;display:grid}.macro-num{font:450 16px/1.1 var(--font-sans);color:var(--fg);letter-spacing:-.01em}.macro-num em{color:var(--fg-3);margin-left:2px;font-size:12px;font-style:normal;font-weight:400}.macro-label{font:500 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.08em;text-transform:uppercase}.trend-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.trend-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);gap:6px;padding:18px 20px;display:grid}.trend-head{justify-content:space-between;align-items:baseline;display:flex}.trend-name{font:500 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.1em;text-transform:uppercase}.trend-val{font-family:var(--font-serif);font-variation-settings:"opsz" 60;letter-spacing:-.02em;color:var(--fg);font-size:24px;font-weight:380;line-height:1}.trend-spark{width:100%;height:44px}.trend-spark path{fill:none;stroke:var(--fg);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.trend-spark path.area{fill:#847f7a14;fill:lab(53.6043% 1.1681 3.61701/.08);stroke:none}.changelog-timeline{--tl-spine-x:3px;--tl-node:8px;flex-direction:column;gap:0;margin:0;padding:0 0 0 22px;list-style:none;display:flex;position:relative}.changelog-timeline:before{content:"";left:var(--tl-spine-x);background:var(--line-2);pointer-events:none;width:1px;position:absolute;top:7px;bottom:0}.changelog-timeline--page{max-width:560px;margin-top:8px}.changelog-major{margin:0 0 6px -22px;padding:0 0 0 18px}.changelog-major-label{font:500 10.5px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.changelog-release{grid-template-columns:0 1fr;gap:0;margin-left:-22px;padding:0 0 40px;display:grid;position:relative}.changelog-release:last-child{padding-bottom:0}.changelog-node{left:calc(var(--tl-spine-x) - var(--tl-node) / 2 + .5px);width:var(--tl-node);height:var(--tl-node);background:var(--bg);border:1.5px solid var(--line-2);box-sizing:border-box;z-index:1;transition:transform .16s var(--ease-out), box-shadow .16s var(--ease-out), border-color .16s var(--ease-out), background-color .16s var(--ease-out);border-radius:50%;position:absolute;top:7px}.changelog-release.is-latest .changelog-node{background:var(--accent);border-color:oklch(from var(--accent) l c h / .55)}@media (hover:hover) and (pointer:fine){.changelog-release:hover .changelog-node{box-shadow:0 0 0 3px oklch(from var(--accent) l c h / .1)}}.changelog-release-inner{grid-column:2;min-width:0;padding-left:18px}.changelog-release-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.changelog-version{font:500 12px/1 var(--font-mono);letter-spacing:.04em;color:var(--fg);font-variant-numeric:tabular-nums}.changelog-date{font:400 11.5px/1 var(--font-mono);color:var(--fg-2);letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap}.changelog-release-rule{background:var(--line);height:1px;margin:12px 0 14px}.changelog-release-title{font-family:var(--font-serif);font-variation-settings:"opsz" 48, "SOFT" 50;letter-spacing:-.02em;color:var(--fg-1);margin:0 0 12px;font-size:15px;font-weight:380;line-height:1.35}.changelog-changes{gap:9px;margin:0;padding:0;list-style:none;display:grid}.changelog-changes li{font:400 13px/1.62 var(--font-sans);color:var(--fg-2);letter-spacing:-.008em;padding-left:14px;position:relative}.changelog-changes li:before{content:"·";color:var(--fg-3);font-weight:500;position:absolute;top:0;left:0}.changelog-changes-more{color:var(--fg-3);font-size:12px}.changelog-changes-more:before{content:"—"}.changelog-timeline.is-entering .changelog-release{opacity:0;animation:rise .38s var(--ease-out) forwards;animation-delay:calc(var(--stagger,0) * 40ms);transform:translateY(8px)}@media (prefers-reduced-motion:reduce){.changelog-timeline.is-entering .changelog-release{opacity:1;animation:none;transform:none}}@media (max-width:720px){.week-row{grid-template-columns:repeat(2,1fr)}.trend-row{grid-template-columns:1fr}.hall-changelog{max-width:100%;margin-top:36px}.changelog-timeline--page{--tl-spine-x:3px;padding-left:20px}.changelog-timeline--page .changelog-release,.changelog-timeline--page .changelog-major{margin-left:-20px}}@media (max-width:880px){.hall-changelog-header{flex-wrap:wrap;gap:8px 16px}}.door-passkeys{grid-template-columns:1fr 1fr;gap:12px;margin-top:8px;display:grid}.door-passkey{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);cursor:pointer;color:var(--fg);text-align:center;transition:transform .18s var(--ease-out), border-color .18s var(--ease-out), box-shadow .18s var(--ease-out), background .18s var(--ease-out);grid-template-rows:auto auto auto;gap:4px;padding:18px 16px 14px;display:grid}.door-passkey:hover{border-color:var(--line-2);box-shadow:var(--shadow-md);transform:translateY(-2px)}.door-passkey:active{transform:scale(.97)}.door-avatar{width:32px;height:32px;font:500 13px/1 var(--font-sans);color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209);background:var(--bg);background:var(--bg,#fcfcfc);border-radius:50%;justify-self:center;place-items:center;margin-bottom:2px;display:grid}@supports (color:lab(0% 0 0)){.door-avatar{background:var(--bg,lab(98.84% .0000298023 -.0000119209))}}.door-passkey .door-avatar{background:var(--bg);color:#161616;color:lab(7.22637% -.0000149012 0);background:oklch(98.5% .005 80)}html[data-theme=dark] .door-passkey .door-avatar{color:#f2eee7;color:lab(94.2286% .580758 3.77309);background:#191511;background:lab(7.22589% 1.19062 3.13728)}.door-passkey .door-avatar[style*=--bg]{background:var(--bg);color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209)}.door-passkey-name{font-family:var(--font-serif);font-variation-settings:"opsz" 60;color:var(--fg);font-size:17px;font-weight:380}.door-passkey-meta{font:400 11px/1.3 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.new-btn{color:var(--fg)}.new-btn iconify-icon,.new-btn svg{color:currentColor;opacity:1;transition:transform .18s var(--ease-out);flex-shrink:0;display:block}@media (hover:hover) and (pointer:fine){.new-btn:hover iconify-icon,.new-btn:hover svg{transform:rotate(90deg)}}.new-btn:active{transform:scale(.97)}.profile-chip{background:var(--bg);border:1px solid var(--line);cursor:pointer;height:28px;font:500 12px/1 var(--font-sans);color:var(--fg);transition:background .15s var(--ease-out), border-color .15s var(--ease-out), transform .15s var(--ease-out);border-radius:999px;align-items:center;gap:8px;padding:0 10px 0 4px;display:inline-flex}.profile-chip:hover{background:var(--bg-elev);border-color:var(--line-2)}.profile-chip:active{transform:scale(.97)}.profile-avatar{background:var(--accent-2);width:20px;height:20px;font:500 11px/1 var(--font-sans);color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209);border-radius:50%;place-items:center;display:grid}.profile-chip[data-profile=ashley] .profile-avatar{background:var(--accent)}.profile-chip[data-profile=bogdan] .profile-avatar{background:var(--accent-2)}.profile-chip svg{color:var(--fg-3)}.popover{z-index:800;background:var(--bg-elev);border:1px solid var(--line-2);border-radius:var(--r-lg);min-width:220px;box-shadow:var(--shadow-lg);transform-origin:100% 0;animation:popIn .14s var(--ease-out) both;padding:6px;position:fixed}.popover[hidden]{display:none}@keyframes popIn{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.popover-item{border-radius:var(--r);width:100%;font:400 13px/1 var(--font-sans);color:var(--fg);text-align:left;cursor:pointer;transition:background .12s var(--ease-out);background:0 0;border:0;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.popover-item:hover{background:var(--bg-sunk)}.popover-item:active{transform:scale(.99)}.popover-avatar{width:22px;height:22px;font:500 11px/1 var(--font-sans);color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209);border-radius:50%;place-items:center;display:grid}.popover-glyph{color:var(--fg-2);place-items:center;display:grid}.popover-meta{font:400 11px/1 var(--font-mono);color:var(--fg-3)}.popover-sep{background:var(--line);height:1px;margin:6px -6px}.popover-item kbd{border:1px solid var(--line);font:500 10px/1 var(--font-mono);color:var(--fg-3);background:var(--bg);border-radius:4px;padding:2px 5px}.sidebar{overflow:hidden auto}.tree{gap:2px;padding:16px 8px 8px;display:grid}.tree-section{gap:1px;display:grid}.tree-header{border-radius:var(--r);width:100%;font:500 11px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);cursor:pointer;text-align:left;transition:background .14s var(--ease-out), color .14s var(--ease-out);background:0 0;border:0;grid-template-columns:14px 1fr auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.tree-header:hover{color:var(--fg-2);background:var(--bg-sunk)}.tree-header:active{transform:scale(.99)}.tree-caret{width:14px;height:14px;color:var(--fg-3);transition:transform .2s var(--ease-out);place-items:center;display:grid}.tree-section.is-open>.tree-header .tree-caret{transform:rotate(90deg)}.tree-meta{font:400 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.tree-children{border-left:1px solid var(--line);opacity:0;max-height:0;transition:max-height .25s var(--ease-out), opacity .2s var(--ease-out), padding .2s var(--ease-out);gap:1px;margin-left:16px;padding:2px 0 8px 6px;display:grid;overflow:hidden}.tree-section.is-open>.tree-children{opacity:1;max-height:600px}.tree-item{border-radius:var(--r);cursor:pointer;text-align:left;width:100%;font:400 13px/1 var(--font-sans);color:var(--fg-1);transition:background .14s var(--ease-out), color .14s var(--ease-out);background:0 0;border:0;grid-template-columns:14px 1fr auto;align-items:center;gap:10px;padding:7px 10px;display:grid}.tree-item:hover{background:var(--bg-sunk);color:var(--fg)}.tree-item.is-active{background:var(--bg-sunk);color:var(--fg);box-shadow:inset 2px 0 0 var(--fg)}.tree-item:active{transform:scale(.99)}.tree-item .tree-icon{color:var(--fg-3);width:14px;height:14px}.tree-item.is-active .tree-icon{color:var(--fg)}.tree-item .tree-count{font:400 11px/1 var(--font-mono);color:var(--fg-3)}.tree-item .tree-badge{font:500 10px/1 var(--font-mono);background:var(--accent);color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209);border-radius:999px;padding:3px 6px}.tree-glyph{width:14px;height:14px;font:500 11px/1 var(--font-serif);color:var(--fg-2);place-items:center;display:inline-grid}.side-foot{border-top:1px solid var(--line);margin-top:auto;padding:12px 14px 20px}.card-tasks{grid-row:span 1}.hall-tasks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.hall-tasks li{font:400 13px/1.35 var(--font-sans);color:var(--fg-1);grid-template-columns:14px 1fr auto;align-items:center;gap:10px;display:grid}.hall-tasks .check{border:1.4px solid var(--line-3);border-radius:50%;width:12px;height:12px}.hall-tasks .from{font:400 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.card-programme .card-title{font-family:var(--font-serif);font-variation-settings:"opsz" 60;color:var(--fg);font-size:18px;line-height:1.3}.view-course{grid-template-columns:var(--rail-w) minmax(0, 1fr) var(--outline-w);--course-inset:clamp(24px, 3.5vw, 48px);--course-prose-measure:min(68ch, 100%);gap:0;height:100%;min-height:0;padding:0;display:grid}.view-travel{--rail-gutter:16px;grid-template-rows:minmax(0,1fr);grid-template-columns:min(340px,36vw) minmax(0,1fr);gap:0;height:100%;min-height:0;padding:0;display:grid;overflow:hidden}@media (max-width:1180px){.view-course{grid-template-columns:var(--rail-w) minmax(0, 1fr)}.course-outline{display:none}}@media (max-width:880px){.view-course{grid-template-columns:1fr}}.course-rail{border-right:1px solid var(--line);background:var(--bg-elev);align-content:start;gap:14px;padding:22px 12px 16px;display:grid;overflow-y:auto}.rail-head{grid-template-columns:1fr auto;align-items:center;gap:8px;padding:0 6px 8px;display:grid}.rail-title{font-family:var(--font-serif);font-variation-settings:"opsz" 60;letter-spacing:-.01em;color:var(--fg);font-size:18px;font-weight:380;line-height:1.2}.rail-sub{font:400 12px/1.4 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.seg-vertical{background:0 0;border:0;border-radius:0;gap:1px;padding:0;display:grid}.seg-vertical .seg-btn{text-align:left;font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);border-radius:var(--r);cursor:pointer;transition:background .14s var(--ease-out), color .14s var(--ease-out);background:0 0;border:0;justify-content:space-between;align-items:center;padding:6px 10px;display:flex}.seg-vertical .seg-btn .seg-count{font:400 11px/1 var(--font-mono);color:var(--fg-3)}.seg-vertical .seg-btn:hover{background:var(--bg-sunk);color:var(--fg-2)}.seg-vertical .seg-btn.is-active{background:var(--bg);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line-2)}.course-list,.travel-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.course-list-item,.travel-list-item{border-radius:var(--r);cursor:pointer;text-align:left;width:100%;transition:background .14s var(--ease-out);background:0 0;border:0;grid-template-columns:16px 1fr;align-items:start;gap:10px;padding:9px 10px;display:grid}.course-list-item:hover,.travel-list-item:hover{background:var(--bg-sunk)}.course-list-item.is-active,.travel-list-item.is-active{background:oklch(from var(--accent) l c h / .08);box-shadow:inset 0 0 0 1px var(--line-2)}.course-list-item.is-active:before,.travel-list-item.is-active:before{content:"";background:var(--accent);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:2px}.course-list-item,.travel-list-item{position:relative}.course-list-item:active,.travel-list-item:active{transform:scale(.97)}.course-list-glyph,.travel-list-glyph{width:16px;height:16px;font:500 9px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--bg-sunk);color:var(--fg-2);border:1px solid var(--line);border-radius:4px;place-items:center;margin-top:2px;display:grid}.travel-list-glyph[data-s=booked]{color:oklch(from var(--accent) l c h / .95);border-color:oklch(from var(--accent) l c h / .22);background:oklch(from var(--accent) l c h / .08)}.travel-list-glyph[data-s=planning]{color:oklch(from var(--accent-2) l c h / .95);border-color:oklch(from var(--accent-2) l c h / .22);background:oklch(from var(--accent-2) l c h / .08)}.travel-list-glyph[data-s=current]{color:oklch(from var(--accent-3) l c h / .95);border-color:oklch(from var(--accent-3) l c h / .22);background:oklch(from var(--accent-3) l c h / .08)}.travel-list-glyph[data-s=dreaming]{color:#7579bb;color:lab(52.5557% 10.7737 -35.6234);background:#7579bb14;background:lab(52.5557% 10.7737 -35.6234/.08);border-color:#7579bb47;border-color:lab(52.5557% 10.7737 -35.6234/.28)}.travel-list-glyph[data-s=past]{color:var(--fg-3);border-color:var(--line);background:var(--bg-sunk)}.course-list-glyph[data-t=paper]{color:#74301f;color:lab(29.5444% 29.6443 25.7408);background:#ffe4dc;background:lab(92.7407% 11.1791 8.9798);border-color:#e1b1a4;border-color:lab(76.3406% 16.9565 13.659)}.course-list-glyph[data-t=module]{color:#004d75;color:lab(30.2185% -9.13744 -31.0345);background:#d7efff;background:lab(93.0858% -6.19635 -13.0213);border-color:#9bc4e1;border-color:lab(76.8428% -8.76257 -19.3197)}.course-list-glyph[data-t=exam]{color:#7c2524;color:lab(29.1992% 37.8517 22.6944);background:#ffe3df;background:lab(92.6692% 12.2811 6.63735);border-color:#e2afaa;border-color:lab(76.238% 18.5013 10.0665)}.course-list-glyph[data-t=lecture]{color:#404272;color:lab(29.5102% 9.37648 -28.3451);background:#e7e9ff;background:lab(92.7151% 2.94831 -14.7138);border-color:#b5bae4;border-color:lab(76.2781% 4.94367 -21.8379)}.course-list-glyph[data-t=reading]{color:#29532b;color:lab(31.3792% -22.4212 18.3946);background:#dbf3db;background:lab(93.5632% -11.1774 8.71228);border-color:#a6c9a6;border-color:lab(77.5739% -16.7683 13.1837)}.course-list-glyph[data-t=note]{color:#564527;color:lab(30.4546% 4.46476 20.585);background:#fae9ce;background:lab(93.1338% 2.69142 15.3676);border-color:#cbbba1;border-color:lab(76.8892% 2.77492 15.4407)}html[data-theme=dark] .course-list-glyph[data-t=paper]{color:#ffbaa7;color:lab(81.8118% 28.6432 23.2553);background:#421d13;background:lab(15.9773% 17.6396 14.883);border-color:#603e35;border-color:lab(30.004% 14.353 11.6751)}html[data-theme=dark] .course-list-glyph[data-t=module]{color:#99d6ff;color:lab(82.613% -13.3766 -31.8155);background:#0e2c3f;background:lab(16.443% -5.75122 -15.6956);border-color:#2e4b60;border-color:lab(30.4013% -6.57888 -15.8786)}html[data-theme=dark] .course-list-glyph[data-t=exam]{color:#ffb7b0;color:lab(81.4531% 37.2948 20.6652);background:#421c19;background:lab(15.894% 18.7869 10.7134);border-color:#603d3a;border-color:lab(29.9245% 15.5113 8.55144)}html[data-theme=dark] .course-list-glyph[data-t=lecture]{color:#c3c9ff;color:lab(81.8762% 7.00685 -28.9598);background:#242641;background:lab(15.9459% 5.55524 -17.7751);border-color:#424562;border-color:lab(29.9186% 4.80408 -17.9622)}html[data-theme=dark] .course-list-glyph[data-t=reading]{color:#aedcae;color:lab(83.6235% -22.3621 17.6779);background:#182f19;background:lab(17.0974% -14.0026 11.3889);border-color:#364f37;border-color:lab(31.0314% -13.9831 11.1597)}html[data-theme=dark] .course-list-glyph[data-t=note]{color:#dfcbaa;color:lab(82.7045% 3.59109 19.4155);background:#312718;background:lab(16.5207% 2.54209 12.1213);border-color:#504635;border-color:lab(30.4552% 2.28718 11.7877)}.course-list-body,.travel-list-body{gap:2px;min-width:0;display:grid}.course-list-title,.travel-list-title{font:450 13px/1.35 var(--font-sans);color:var(--fg);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.course-list-item.is-active .course-list-title,.travel-list-item.is-active .travel-list-title{color:var(--fg)}.course-list-meta,.travel-list-meta{font:400 11px/1.3 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.course-pane,.travel-pane{min-width:0;padding:0;overflow-y:auto}.course-pane>.paper-detail,.course-pane>.item-detail,.travel-pane>.item-detail{box-sizing:border-box;width:100%;max-width:none;padding:48px var(--course-inset) 120px;margin-inline:0}.course-pane .paper-meta{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:28px}.item-detail .item-kicker{font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);align-items:center;gap:10px;margin-bottom:16px;display:flex}.item-detail .item-kicker .dot{background:var(--line-3);border-radius:50%;width:4px;height:4px}.item-detail h1{font-family:var(--font-serif);font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.02em;color:var(--fg);margin:0 0 14px;font-size:clamp(32px,4vw,48px);font-weight:380;line-height:1.05}.item-detail .item-byline{font:400 13px/1.5 var(--font-sans);color:var(--fg-2);margin:0 0 28px}.item-detail .kvs{margin-bottom:32px}.item-detail h3{scroll-margin-top:80px}.item-detail .prose{margin-bottom:18px}.view-travel .travel-detail-inner>.item-detail.travel-page{max-width:none;margin:0;padding:0 0 48px}.travel-page-cover{aspect-ratio:21/9;border-radius:var(--r-md);background:var(--bg-sunk) center/cover no-repeat;border:1px solid var(--line);width:100%;max-height:180px;margin:0 0 24px;overflow:hidden}.travel-page-head{border-bottom:1px solid var(--line);gap:10px;margin-bottom:28px;padding-bottom:20px;display:grid}.travel-page-kicker{font:500 10.5px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin:0}.travel-page-title{font-family:var(--font-serif);font-variation-settings:"opsz" 72, "SOFT" 50;letter-spacing:-.03em;color:var(--fg);margin:0;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:380;line-height:1.06}.travel-page-summary{font:380 16px/1.55 var(--font-serif);font-variation-settings:"opsz" 18;color:var(--fg-1);max-width:58ch;margin:0}.travel-page-summary[data-empty=true]:before{content:attr(data-placeholder);color:var(--fg-3);opacity:.75}.travel-page-summary[data-empty=true]{color:#0000}.travel-page-actions{flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:4px;display:flex}.travel-page-action{min-height:44px;font:500 13px/1 var(--font-sans);color:var(--fg-2);cursor:pointer;transition:color .15s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;padding:0 4px;display:inline-flex}.travel-page-action:active{transform:scale(.97)}.travel-page-link{font:inherit;color:var(--fg);text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2);cursor:pointer;transition:color .15s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;padding:0}.travel-page-link:active{transform:scale(.97)}.travel-page-props{border-top:1px solid var(--line);gap:0;margin:0 0 32px;padding:0;display:grid}.travel-prop{border-bottom:1px solid var(--line);grid-template-columns:112px minmax(0,1fr);align-items:baseline;gap:12px;margin:0;padding:11px 0;display:grid}.travel-prop dt{font:500 10.5px/1.35 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin:0}.travel-prop dd{font:400 14px/1.45 var(--font-sans);color:var(--fg);font-variant-numeric:tabular-nums;margin:0}.travel-page-status[data-s=booked]{color:var(--accent)}.travel-page-status[data-s=planning]{color:var(--accent-2)}.travel-page-status[data-s=current]{color:var(--accent-3)}.travel-page-status[data-s=dreaming]{color:#7579bb;color:lab(52.5557% 10.7737 -35.6234)}.travel-itinerary{margin:0 0 36px}.travel-itinerary-label{font:500 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin:0 0 16px}.travel-day{border-bottom:1px solid var(--line);margin:0 0 20px;padding:0 0 20px}.travel-day:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.travel-day-date{font:500 10.5px/1.35 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);font-variant-numeric:tabular-nums;margin:0 0 8px}.travel-day-heading{font:500 15px/1.35 var(--font-sans);letter-spacing:-.01em;color:var(--fg);margin:0 0 6px}.travel-day-notes{font:380 15px/1.6 var(--font-serif);font-variation-settings:"opsz" 16;color:var(--fg-1);margin:0 0 10px}.travel-day-stops{gap:0;margin:0;padding:0;list-style:none;display:grid}.travel-stop{border-top:1px solid var(--line);min-height:44px;font:400 14px/1.4 var(--font-sans);color:var(--fg);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:10px 0;display:grid}.travel-stop:first-child{border-top:0;padding-top:4px}.travel-stop-name{letter-spacing:-.005em}.travel-stop-note{font:400 12px/1.35 var(--font-sans);color:var(--fg-3);text-align:right}.travel-gallery-section{border-top:1px solid var(--line);margin:0 0 32px;padding-top:8px}.travel-gallery{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.travel-gallery-thumb{aspect-ratio:1;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg-sunk) center/cover no-repeat;cursor:pointer;transition:transform .16s var(--ease-out), border-color .16s var(--ease-out);padding:0}.travel-gallery-thumb:hover{border-color:var(--line-3)}.travel-gallery-thumb:active{transform:scale(.97)}.travel-empty-inline{font:380 15px/1.5 var(--font-serif);color:var(--fg-3);margin:0 0 24px}.item-byline[data-empty=true]:before{content:attr(data-placeholder);color:var(--fg-3);opacity:.75}.item-byline[data-empty=true]{color:#0000}.item-checklist{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);gap:2px;margin:18px 0 28px;display:grid;overflow:hidden}.item-checklist-row{cursor:pointer;border-top:1px solid var(--line);transition:background .15s var(--ease-out);grid-template-columns:28px 1fr;align-items:center;gap:10px;padding:12px 16px;display:grid}.item-checklist-row:first-child{border-top:0}.item-checklist-row:hover{background:var(--bg-sunk)}.item-checklist-row:active{transform:scale(.997)}.item-checklist-row .check{border:1.4px solid var(--line-3);width:18px;height:18px;transition:all .18s var(--ease-out);border-radius:50%;place-items:center;display:grid}.item-checklist-row .check svg{opacity:0;transition:all .18s var(--ease-out);color:var(--bg);transform:scale(.6)}.item-checklist-row.is-done .check{background:var(--fg);border-color:var(--fg)}.item-checklist-row.is-done .check svg{opacity:1;transform:scale(1)}.item-checklist-row .label{font:400 14px/1.4 var(--font-sans);color:var(--fg)}.item-checklist-row.is-done .label{color:var(--fg-2);text-decoration:line-through;-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2)}.course-outline,.travel-outline{border-left:1px solid var(--line);top:var(--topbar-h);align-self:start;padding:48px 24px 24px;position:sticky;overflow-y:auto}.outline-head{font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);margin-bottom:14px}#outline-list,#travel-outline-list,#prog-outline-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}#outline-list li,#travel-outline-list li,#prog-outline-list li{margin:0}#outline-list a,#travel-outline-list a,#prog-outline-list a{border-radius:var(--r);font:400 13px/1.35 var(--font-sans);color:var(--fg-2);cursor:pointer;transition:color .15s var(--ease-out), border-color .15s var(--ease-out), background .15s var(--ease-out);border-left:1px solid #0000;padding:6px 10px;text-decoration:none;display:block}#outline-list a:hover,#travel-outline-list a:hover,#prog-outline-list a:hover{color:var(--fg);background:var(--bg-sunk)}#outline-list a.is-active,#travel-outline-list a.is-active,#prog-outline-list a.is-active{color:var(--fg);border-left-color:var(--fg);padding-left:9px}.view-programmes{--prog-inset:clamp(20px, 3vw, 40px);min-height:0;padding:0;display:block;overflow-x:hidden}.prog-shell{--prog-gutter:var(--prog-inset);min-height:calc(100dvh - var(--topbar-h));padding:clamp(20px, 3vw, 36px) var(--prog-gutter) 48px;grid-template-rows:auto 1fr;gap:24px;max-width:1280px;margin:0 auto;display:grid}.prog-ledger{border-bottom:1px solid var(--line);gap:18px;padding-bottom:22px;display:grid}.prog-ledger-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.prog-ledger-title{font-family:var(--font-serif);font-variation-settings:"opsz" 96;letter-spacing:-.02em;color:var(--fg);margin:6px 0 4px;font-size:clamp(28px,3.6vw,38px);font-weight:380;line-height:1.05}.prog-ledger-sub{font:400 13px/1.5 var(--font-sans);color:var(--fg-2);max-width:60ch;margin:0}.prog-filter-row{align-self:start}.prog-filter-row .seg-btn{align-items:center;gap:6px;display:inline-flex}.prog-filter-row .seg-count{background:var(--bg-sunk);min-width:16px;color:var(--fg-3);font:500 10px/16px var(--font-mono);font-variant-numeric:tabular-nums;border-radius:999px;padding:0 5px;display:inline-block}.prog-filter-row .seg-btn.is-active .seg-count{background:var(--bg);color:var(--fg-2)}.prog-deck-wrap{margin-inline:calc(-1 * var(--prog-gutter));padding-inline:var(--prog-gutter);overflow:hidden}.prog-deck{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.prog-deck-empty{font:400 13px/1.55 var(--font-sans);color:var(--fg-3);grid-column:1/-1;margin:0;padding:18px 4px;font-style:italic}.prog-card{text-align:left;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);cursor:pointer;transition:border-color .18s var(--ease-out), background .18s var(--ease-out), transform .14s var(--ease-out), box-shadow .18s var(--ease-out);grid-template-columns:1fr auto;grid-template-areas:"kind day""title title""rel rel""track track";align-items:center;gap:6px 12px;padding:14px 16px;display:grid;position:relative}.prog-card:hover{border-color:var(--line-2);background:var(--bg)}.prog-card:active{transform:scale(.992)}.prog-card.is-active{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}.prog-card-kind{font:500 10.5px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);grid-area:kind}.prog-card-day{font:500 10.5px/1 var(--font-mono);color:var(--fg-2);font-variant-numeric:tabular-nums;grid-area:day}.prog-card-day .dim{color:var(--fg-3)}.prog-card-title{font-family:var(--font-serif);font-variation-settings:"opsz" 28;letter-spacing:-.012em;color:var(--fg);grid-area:title;font-size:17px;font-weight:380;line-height:1.25}.prog-card-rel{font:400 11.5px/1.3 var(--font-mono);color:var(--fg-3);grid-area:rel}.prog-card-track{background:var(--bg-sunk);border-radius:2px;grid-area:track;height:2px;margin-top:6px;position:relative;overflow:hidden}.prog-card-track>i{height:100%;width:var(--p,0%);background:var(--fg);transition:width .35s var(--ease-out);border-radius:2px;display:block}.prog-card.is-active .prog-card-track>i{background:var(--accent)}.prog-stage{align-content:start;gap:0;min-width:0;display:grid}.prog-detail-grid{grid-template-columns:240px minmax(0,1fr) 260px;align-items:start;gap:32px 40px;min-width:0;display:grid}.prog-rail{top:calc(var(--topbar-h) + 12px);background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);align-content:start;gap:14px;padding:18px 16px 20px;display:grid;position:sticky}.prog-rail-label{font:400 12px/1.45 var(--font-sans);color:var(--fg-2);margin:-6px 0 0}.prog-rail-kind{font:500 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3)}.prog-rail-edit{justify-self:start;margin-top:4px}.prog-doc{align-content:start;gap:20px;min-width:0;display:grid}.prog-doc-head{gap:8px;max-width:64ch;display:grid}.prog-doc-title{font-family:var(--font-serif);font-variation-settings:"opsz" 96;letter-spacing:-.02em;color:var(--fg);border-radius:var(--r);transition:background .15s var(--ease-out);margin:0 0 0 -4px;padding:2px 4px;font-size:clamp(26px,3.2vw,34px);font-weight:380;line-height:1.1}.prog-doc-title.is-editable:hover,.prog-doc-title:hover{background:var(--bg-sunk);cursor:text}.prog-doc-summary{font:400 14.5px/1.55 var(--font-sans);color:var(--fg-1);border-radius:var(--r);max-width:60ch;transition:background .15s var(--ease-out);margin:0 0 0 -4px;padding:2px 4px}.prog-doc-summary:hover{background:var(--bg-sunk);cursor:text}.prog-doc .prog-view-nav{margin-bottom:-4px}.prog-doc .prog-chapters{max-width:64ch}.prog-empty{gap:8px;max-width:56ch;padding:80px 4px;display:grid}.prog-empty-lead{font-family:var(--font-serif);font-variation-settings:"opsz" 48;letter-spacing:-.012em;color:var(--fg);margin:0;font-size:22px;font-weight:380}.prog-brief{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);padding:0;position:relative;overflow:hidden}.prog-brief-glow{background:radial-gradient(120% 80% at 0% 0%, oklch(from var(--accent) l c h / .1), transparent 55%), radial-gradient(120% 80% at 100% 100%, oklch(from var(--accent-2) l c h / .08), transparent 60%);pointer-events:none;opacity:.9;position:absolute;inset:0}.prog-brief[data-kind=nutrition] .prog-brief-glow{background:radial-gradient(120% 80% at 0% 0%, oklch(from var(--accent) l c h / .14), transparent 55%), radial-gradient(120% 80% at 100% 100%, oklch(from var(--warn) l c h / .1), transparent 60%)}.prog-brief[data-kind=reading] .prog-brief-glow{background:radial-gradient(120% 80% at 0% 0%, oklch(from var(--accent-2) l c h / .14), transparent 55%), radial-gradient(120% 80% at 100% 100%, oklch(from var(--fg-1) l 0 0 / .05), transparent 60%)}.prog-brief[data-kind=fitness] .prog-brief-glow{background:radial-gradient(120% 80% at 0% 0%, oklch(from var(--accent-3) l c h / .14), transparent 55%), radial-gradient(120% 80% at 100% 100%, oklch(from var(--accent) l c h / .08), transparent 60%)}.prog-brief-inner{gap:18px;padding:26px 28px;display:grid;position:relative}.prog-handoff{font:400 12px/1 var(--font-mono);color:var(--fg-2);flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.prog-handoff-arrow{color:var(--fg-3);margin:0 -2px;font-size:13px}.prog-handoff-label{color:var(--fg-2)}.prog-avatar{width:28px;height:28px;font:500 12px/1 var(--font-sans);color:#f8f8f8;color:lab(97.68% -.0000298023 .0000119209);background:var(--fg-2);letter-spacing:0;border-radius:50%;place-items:center;display:inline-grid}.prog-avatar[data-who=a]{background:var(--accent)}.prog-avatar[data-who=b]{background:var(--accent-2)}.prog-brief-main{gap:6px;max-width:64ch;display:grid}.prog-brief-kind{font:500 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin-bottom:2px}.prog-brief-title{font-family:var(--font-serif);font-variation-settings:"opsz" 96;letter-spacing:-.02em;color:var(--fg);border-radius:var(--r);transition:background .15s var(--ease-out);margin:0 0 0 -4px;padding:2px 4px;font-size:clamp(26px,3.2vw,34px);font-weight:380;line-height:1.1}.prog-brief-title.is-editable:hover{background:var(--bg-sunk);cursor:text}.prog-brief-summary{font:400 14.5px/1.55 var(--font-sans);color:var(--fg-1);border-radius:var(--r);max-width:60ch;transition:background .15s var(--ease-out);margin:2px 0 0 -4px;padding:2px 4px}.prog-brief-summary:hover{background:var(--bg-sunk);cursor:text}.prog-brief-actions{gap:10px;margin-top:4px;display:flex}.prog-arc{gap:10px;margin-top:6px;display:grid}.prog-arc-dots{flex-wrap:wrap;gap:4px;max-width:100%;display:flex}.prog-arc-dot{background:var(--line-2);width:6px;height:6px;transition:background .2s var(--ease-out), transform .2s var(--ease-out);border-radius:50%;display:inline-block}.prog-arc-dot.is-filled{background:var(--fg-1)}.prog-arc-dot.is-today{background:var(--accent);box-shadow:0 0 0 2px oklch(from var(--accent) l c h / .18);transform:scale(1.4)}.prog-arc-meta{font:400 11.5px/1 var(--font-mono);color:var(--fg-3);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;display:flex}.prog-view-nav{border-bottom:1px solid var(--line);gap:0;margin-bottom:-8px;display:inline-flex}.prog-view-tab{appearance:none;cursor:pointer;font:500 12px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);transition:color .15s var(--ease-out), border-color .15s var(--ease-out);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px}.prog-view-tab:hover{color:var(--fg-1)}.prog-view-tab.is-active{color:var(--fg);border-bottom-color:var(--fg)}.prog-layout{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:40px;display:grid}@media (max-width:1180px){.prog-detail-grid{grid-template-columns:220px minmax(0,1fr)}}@media (max-width:880px){.prog-detail-grid{grid-template-columns:1fr;gap:24px}.prog-rail{position:static}}.prog-main{min-width:0}.prog-view-pane{gap:18px;display:grid}.prog-view-pane[hidden]{display:none}.prog-chapters{gap:32px;max-width:64ch;display:grid}.prog-chapter{gap:10px;scroll-margin-top:80px;display:grid}.prog-chapter h3{font-family:var(--font-serif);font-variation-settings:"opsz" 48;letter-spacing:-.014em;color:var(--fg);border-radius:var(--r);transition:background .15s var(--ease-out);margin:0 0 0 -4px;padding:2px 4px;font-size:20px;font-weight:380;line-height:1.25}.prog-chapter h3:hover{background:var(--bg-sunk);cursor:text}.prog-chapter p.prose{font:400 15px/1.7 var(--font-sans);color:var(--fg-1);border-radius:var(--r);transition:background .15s var(--ease-out);margin:0 0 0 -4px;padding:2px 4px}.prog-chapter p.prose:hover{background:var(--bg-sunk);cursor:text}.prog-checkins-title{font-family:var(--font-serif);font-variation-settings:"opsz" 48;letter-spacing:-.012em;color:var(--fg);margin:0 0 6px;font-size:22px;font-weight:380}.prog-muted{color:var(--fg-3);font-style:italic}.prog-trend-compact{margin:4px 0 12px}.prog-companion{top:calc(var(--topbar-h) + 16px);background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);gap:10px;padding:18px 18px 20px;display:grid;position:sticky}.prog-companion-head{font:500 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin:0}.prog-companion-sub{font:400 12.5px/1.4 var(--font-sans);color:var(--fg-2);margin:-2px 0 4px}.prog-companion-note{font:400 12px/1.5 var(--font-sans);color:var(--fg-3);margin:0;font-style:italic}.prog-habits{gap:4px;margin-top:4px;display:grid}.prog-habit{text-align:left;cursor:pointer;border-radius:var(--r);transition:background .14s var(--ease-out);background:0 0;border:0;grid-template-columns:16px 1fr;align-items:center;gap:10px;margin:0 -8px;padding:8px;display:grid}.prog-habit:hover{background:var(--bg-sunk)}.prog-habit:active{transform:scale(.997)}.prog-habit-check{border:1.4px solid var(--line-3);border-radius:4px;place-items:center;width:14px;height:14px;transition:background .15s,border-color .15s;display:grid}.prog-habit.is-done .prog-habit-check{background:var(--accent-3);border-color:var(--accent-3)}.prog-habit.is-done .prog-habit-check:after{content:"";background:#f8f8f8;background:lab(97.68% -.0000298023 .0000119209);border-radius:1px;width:6px;height:6px;transform:rotate(45deg)scale(.7)}.prog-habit-label{font:400 13px/1.35 var(--font-sans);color:var(--fg-1)}.prog-habit.is-done .prog-habit-label{color:var(--fg-3);text-decoration:line-through;-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2)}@media (max-width:880px){.prog-shell{--prog-gutter:16px;padding:18px var(--prog-gutter) 80px;gap:18px}.prog-brief-inner{padding:22px 20px}.prog-deck-wrap{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-inline:var(--prog-gutter);padding-bottom:4px;overflow-x:auto}.prog-deck{flex-direction:row;gap:12px;width:max-content;min-width:100%;padding-bottom:4px;display:flex}.prog-deck>.prog-card,.prog-deck>.prog-deck-empty{scroll-snap-align:start;flex:0 0 min(82vw,300px)}.prog-deck-empty{flex-basis:100%}}.programmes-rail{border-right:1px solid var(--line);background:var(--bg-elev);align-content:start;gap:14px;padding:22px 12px 16px;display:grid;overflow-y:auto}.programmes-list{gap:2px;margin:0;padding:4px 0;list-style:none;display:grid}.programmes-empty{font:400 13px/1.45 var(--font-sans);color:var(--fg-3);padding:12px 10px}.programme-list-item{border-radius:var(--r);cursor:pointer;text-align:left;width:100%;transition:background .14s var(--ease-out);background:0 0;border:0;grid-template-columns:16px 1fr;align-items:start;gap:10px;padding:9px 10px;display:grid}.programme-list-item:hover{background:var(--bg-sunk)}.programme-list-item.is-active{background:var(--bg);box-shadow:inset 0 0 0 1px var(--line-2)}.programme-list-item:active{transform:scale(.995)}.programme-list-glyph{width:16px;height:16px;font:500 9px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--bg-sunk);color:var(--fg-2);border:1px solid var(--line);border-radius:4px;place-items:center;margin-top:2px;display:grid}.programme-list-glyph[data-kind=nutrition]{color:#17501d;color:lab(29.2731% -28.1099 23.7754);background:#dbf3db;background:lab(93.5632% -11.1774 8.71228);border-color:#a6c9a6;border-color:lab(77.5739% -16.7683 13.1837)}.programme-list-glyph[data-kind=reading]{color:#74301f;color:lab(29.5444% 29.6443 25.7408);background:#ffe4dc;background:lab(92.7407% 11.1791 8.9798);border-color:#e1b1a4;border-color:lab(76.3406% 16.9565 13.659)}.programme-list-glyph[data-kind=fitness]{color:#004d75;color:lab(30.2185% -9.13744 -31.0345);background:#d7efff;background:lab(93.0858% -6.19635 -13.0213);border-color:#9bc4e1;border-color:lab(76.8428% -8.76257 -19.3197)}.programme-list-body{gap:2px;min-width:0;display:grid}.programme-list-title{font:450 13px/1.35 var(--font-sans);color:var(--fg);letter-spacing:-.005em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.programme-list-meta{font:400 11px/1.3 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.programme-pane{min-width:0;padding:0;overflow-y:auto}.course-pane>.programme-detail,.programme-pane>.programme-detail,.programme-pane>.programme-empty{box-sizing:border-box;width:100%;max-width:none;padding:48px var(--prog-inset) 120px;margin-inline:0}.programme-meta{border-bottom:1px solid var(--line);max-width:720px;margin-bottom:28px;padding-bottom:28px}.programme-meta-top{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.programme-meta-top .tag[data-s=active]{color:var(--accent-3);border-color:#85b286;border-color:lab(68.5362% -22.3674 17.773)}.programme-range{font-family:var(--font-mono);color:var(--fg-3);margin-left:auto;font-size:11px}.programme-title{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.025em;margin-bottom:12px;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:380;line-height:1.08}.programme-authors{color:var(--fg-1);margin-bottom:16px;font-size:13px;line-height:1.5}.programme-progress-wrap{max-width:28rem;margin-bottom:20px}.programme-progress-label{font:400 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.04em;justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.programme-progress{background:var(--bg-sunk);border:1px solid var(--line);border-radius:100px;height:4px;overflow:hidden}.programme-progress>span{height:100%;width:var(--p,0%);background:var(--fg);transition:width .35s var(--ease-out);border-radius:100px;display:block}.programme-summary{font-family:var(--font-serif);font-variation-settings:"opsz" 18;letter-spacing:-.01em;color:var(--fg);max-width:60ch;margin-bottom:28px;font-size:16px;font-weight:400;line-height:1.55}.programme-tabs{background:var(--bg-sunk);border:1px solid var(--line);border-radius:10px;gap:2px;width:fit-content;margin-bottom:0;padding:4px;display:inline-flex}.programme-body{max-width:720px}.programme-tldr{margin-bottom:28px}.programme-empty-log{color:var(--fg-2);margin-bottom:24px}.programme-log-meta{font:400 12px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.04em}.programme-sections{gap:32px;margin-bottom:40px;display:grid}.programme-section h3{font-family:var(--font-serif);font-variation-settings:"opsz" 60;letter-spacing:-.01em;color:var(--fg);margin:0 0 14px;scroll-margin-top:80px;font-size:22px;font-weight:380;line-height:1.15}.programme-section p{font:400 15px/1.65 var(--font-sans);color:var(--fg-1);margin:0 0 10px}.programme-checklist{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);gap:0;margin:8px 0 32px;display:grid;overflow:hidden}.programme-checklist .item-checklist-row{padding:12px 16px}.programme-log-head{justify-content:space-between;align-items:baseline;margin:8px 0 14px;display:flex}.programme-log{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);overflow:hidden}.log-row{border-top:1px solid var(--line);font:400 13px/1.4 var(--font-sans);color:var(--fg-1);grid-template-columns:100px 80px 1fr 90px 1fr 80px;align-items:center;gap:0;padding:11px 16px;display:grid}.log-row:first-child{background:var(--bg-sunk);border-top:0}.log-row.is-head{font:500 10px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.12em;text-transform:uppercase}.log-row .col-date{font-family:var(--font-mono);color:var(--fg-2)}.log-row .col-weight{font-family:var(--font-mono);color:var(--fg)}.log-row .col-adh-bar{background:var(--line);border-radius:2px;height:4px;position:relative;overflow:hidden}.log-row .col-adh-bar span{background:var(--fg);height:100%;width:var(--p,0%);display:block}.log-row .col-mood{font:500 10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.log-row .col-note{color:var(--fg-2);font-style:italic}.log-row .col-adh-n{font-family:var(--font-mono);color:var(--fg-2);text-align:right;font-size:11px}@media (max-width:880px){.log-row{grid-template-columns:90px 70px 1fr 70px}.log-row .col-mood,.log-row .col-note{display:none}}.programme-trend{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);gap:8px;margin-top:28px;padding:20px 22px;display:grid}.programme-trend-head{justify-content:space-between;align-items:baseline;display:flex}.programme-trend-head .name{font:500 11px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.12em;text-transform:uppercase}.programme-trend-head .val{font-family:var(--font-serif);font-variation-settings:"opsz" 60;letter-spacing:-.02em;color:var(--fg);font-size:24px;font-weight:380;line-height:1}.programme-trend-head .delta{font:500 11px/1 var(--font-mono);color:var(--accent-3);letter-spacing:.02em}.programme-trend svg{width:100%;height:64px}.programme-trend svg path.line{fill:none;stroke:var(--fg);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.programme-trend svg path.area{fill:#847f7a14;fill:lab(53.6043% 1.1681 3.61701/.08);stroke:none}.tasks-list{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);margin:0;padding:0;list-style:none;overflow:hidden}.task-row{border-top:1px solid var(--line);cursor:pointer;transition:background .15s var(--ease-out);grid-template-columns:28px 1fr auto;align-items:center;gap:16px;padding:16px 20px;display:grid}.task-row:first-child{border-top:0}.task-row:hover{background:var(--bg-sunk)}.task-row:active{transform:scale(.997)}.task-row.is-done{opacity:.7}.task-row.is-done .task-title{text-decoration:line-through;-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2);color:var(--fg-2)}.task-check{border:1.4px solid var(--line-3);width:18px;height:18px;transition:all .18s var(--ease-out);border-radius:50%;place-items:center;display:grid}.task-check svg{opacity:0;transition:all .18s var(--ease-out);color:var(--bg);transform:scale(.6)}.task-row.is-done .task-check{background:var(--fg);border-color:var(--fg)}.task-row.is-done .task-check svg{opacity:1;transform:scale(1)}.task-body{gap:3px;min-width:0;display:grid}.task-title{font:450 14px/1.4 var(--font-sans);color:var(--fg)}.task-meta{font:400 12px/1.3 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-meta .from-to{color:var(--accent-2)}.task-row[data-to=ashley] .task-meta .from-to{color:var(--accent)}.task-note{color:var(--fg-2);margin-top:2px;font-size:13px;font-style:italic}.task-chip{font:500 10px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--fg-2);background:var(--bg);border-radius:999px;padding:4px 8px}.task-chip[data-s=done]{color:var(--accent-3);border-color:#85b286;border-color:lab(68.5362% -22.3674 17.773)}.empty-state{text-align:center;max-width:360px;margin:0 auto;padding:56px 24px;list-style:none}.tasks-list>.empty-state{width:100%;max-width:none}.empty-state-glyph{opacity:.5;color:var(--accent-3);margin-bottom:12px;font-size:28px;line-height:1}.empty-state-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--fg);margin-bottom:6px;font-size:18px;font-weight:400}.empty-state-sub{color:var(--fg-3);margin:0;font-size:13px;line-height:1.5}.btn-quiet,.btn-compact.btn-quiet{height:var(--btn-quiet-h);min-height:var(--btn-quiet-h);min-width:0;padding:0 var(--btn-quiet-px);border-radius:var(--r);color:var(--fg-2);font:500 12px/1 var(--font-sans);letter-spacing:-.01em;cursor:pointer;white-space:nowrap;transition:color .16s var(--ease-out), background-color .16s var(--ease-out), border-color .16s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;gap:4px;margin:0;line-height:1;display:inline-flex}.btn-quiet svg,.btn-quiet .ash-icon,.btn-quiet iconify-icon{color:var(--fg-3);transition:color .16s var(--ease-out);flex-shrink:0}@media (hover:hover) and (pointer:fine){.btn-quiet:hover{color:var(--fg);background:var(--bg-sunk)}.btn-quiet:hover svg,.btn-quiet:hover .ash-icon,.btn-quiet:hover iconify-icon{color:var(--fg-2)}}.btn-quiet:active{transform:scale(.97)}.btn-quiet.is-bordered,.rail-head>.btn-quiet.rail-action,.prog-ledger-top>.btn-quiet.rail-action,.travel-rail-head>.btn-quiet.rail-action,.letters-rail-head>.btn-quiet.rail-action,.lessons-rail-head>.btn-quiet.rail-action{border:1px solid var(--line);background:var(--bg)}@media (hover:hover) and (pointer:fine){.btn-quiet.is-bordered:hover,.rail-head>.btn-quiet.rail-action:hover,.prog-ledger-top>.btn-quiet.rail-action:hover,.travel-rail-head>.btn-quiet.rail-action:hover,.letters-rail-head>.btn-quiet.rail-action:hover,.lessons-rail-head>.btn-quiet.rail-action:hover{border-color:var(--line-2);background:var(--bg-elev)}}.header-actions .btn-quiet.rail-action,.toolbar-actions .btn-quiet.rail-action,.rail-toolbar .btn-quiet.rail-action{background:var(--bg-sunk);border:none}@media (hover:hover) and (pointer:fine){.header-actions .btn-quiet.rail-action:hover,.toolbar-actions .btn-quiet.rail-action:hover,.rail-toolbar .btn-quiet.rail-action:hover{background:var(--bg-elev);color:var(--fg)}}.btn-quiet.btn-icon-only{width:var(--btn-quiet-h);min-width:var(--btn-quiet-h);gap:0;padding:0}.btn-quiet.btn-icon-only.is-bordered,.rail-head>.btn-quiet.btn-icon-only.rail-action,.topbar .icon-btn.new-btn{color:var(--fg);background:0 0;border:0}.topbar .icon-btn.new-btn iconify-icon,.topbar .icon-btn.new-btn svg{opacity:1;color:currentColor}@media (hover:hover) and (pointer:fine){.topbar .icon-btn.new-btn:hover,.topbar .search-trigger.icon-btn:hover{background:var(--bg-sunk)}}.rail-action{flex-shrink:0;align-self:center}.btn-compact{height:var(--btn-quiet-h);min-height:var(--btn-quiet-h);font-size:12px}.btn-quiet.btn-mono{font:500 11.5px/1 var(--font-mono);letter-spacing:.04em;text-transform:lowercase}.header-actions,.toolbar-actions,.rail-toolbar{min-height:var(--toolbar-row-h);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.btn-ghost{height:var(--btn-quiet-h);min-height:var(--btn-quiet-h);min-width:0;padding:0 var(--btn-quiet-px);background:var(--bg);border:1px solid var(--line);border-radius:var(--r);cursor:pointer;font:500 12px/1 var(--font-sans);color:var(--fg-1);letter-spacing:-.01em;transition:background-color .16s var(--ease-out), border-color .16s var(--ease-out), color .16s var(--ease-out), transform .16s var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;gap:5px;line-height:1;display:inline-flex}@media (hover:hover) and (pointer:fine){.btn-ghost:hover{background:var(--bg-elev);border-color:var(--line-2);color:var(--fg)}}.btn-ghost:active{transform:scale(.97)}.btn-ghost svg,.btn-ghost .ash-icon,.btn-ghost iconify-icon{color:var(--fg-3)}.sidebar{max-height:calc(100dvh - var(--topbar-h));flex-direction:column;display:flex}.sidebar>.tree{flex:auto}.lessons-shell{height:100%;min-height:100%}.view-lessons{height:100%;min-height:0;padding:0;overflow:hidden}.view-letters{height:100%;min-height:0}.welcome{z-index:1100}.door{z-index:1000}.whats-new-pulse{pointer-events:none}.course-pane,.programme-pane{position:relative}.lessons-banner{font:400 12px/1.5 var(--font-sans);color:var(--fg-2);border-top:1px solid var(--line);margin-top:6px;padding-top:6px}.course-pane,.travel-pane{height:calc(100dvh - var(--topbar-h))}@media (max-width:880px){.view-course .course-pane{height:auto}}.programme-pane{height:calc(100dvh - var(--topbar-h))}.course-rail,.travel-rail,.programmes-rail{max-height:calc(100dvh - var(--topbar-h))}.tab-mindmap[hidden]{display:none}.mindmap-canvas{min-height:520px}.course-outline{height:calc(100dvh - var(--topbar-h));max-height:calc(100dvh - var(--topbar-h))}.profile-avatar,.popover-avatar{color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209)}.tree-caret svg{color:var(--fg-3)}.tree-section.is-open .tree-header,.tree-section.is-open .tree-caret svg{color:var(--fg)}.tree-leaf{font:500 13px/1 var(--font-sans);text-transform:none;letter-spacing:0;color:var(--fg)}.tree-leaf.is-active{background:var(--bg-sunk);box-shadow:inset 2px 0 0 var(--fg)}.tree-leaf .tree-icon{color:var(--fg-2)}.course-list-glyph{font-size:9px}.tasks-list:empty{display:none}.programmes-list{padding:4px 0}@media (max-width:720px){.view-header-row{align-items:flex-start}.header-actions{flex-wrap:wrap}}.sidebar{max-height:calc(100dvh - var(--topbar-h));flex-direction:column;gap:0;padding:8px 0 10px;display:flex}.sidebar-mobile-body{flex-direction:column;flex:auto;min-height:0;display:flex}.sidebar-nav{flex-direction:column;flex:auto;gap:0;min-height:0;padding:4px 6px 8px;display:flex;overflow:hidden auto}@media (max-width:880px){.app .sidebar .sidebar-inner .sidebar-nav{padding:0;overflow:hidden}}.sidebar .side-group{margin-bottom:12px;padding:0 2px}.sidebar .side-group:last-child{margin-bottom:4px}.side-ic{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.side-ic svg{color:var(--fg-2);display:block}.side-item.is-active .side-ic svg{color:var(--accent)}.side-glyph{font-family:var(--font-serif);color:var(--fg-2);letter-spacing:-.02em;font-size:11px;font-weight:500;line-height:1}.side-item.is-active .side-glyph{color:var(--accent)}.side-pill{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--fg-1);background:var(--bg-sunk);border:1px solid var(--line);text-align:center;border-radius:100px;min-width:1.25rem;padding:2px 7px;font-size:10px;font-weight:500}.side-item.is-active .side-pill{border-color:oklch(from var(--accent) l c h / .35);background:oklch(from var(--accent) l c h / .08);color:var(--fg)}.sidebar .side-foot{border-top:1px solid var(--line);flex-shrink:0;margin-top:auto;padding:10px 10px 14px}.welcome{z-index:1100;background:oklch(from var(--bg) l c h / .92);-webkit-backdrop-filter:saturate(140%)blur(12px);isolation:isolate;grid-template-rows:1fr auto;place-items:center;padding:32px 24px 28px;display:grid;position:fixed;inset:0}.welcome[hidden]{display:none!important}.welcome-grain{z-index:-1;pointer-events:none;opacity:.45;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.045 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:absolute;inset:0}html[data-theme=dark] .welcome-grain{mix-blend-mode:screen;opacity:.35}.welcome-orbs{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.welcome-orbs span{filter:blur(72px);opacity:.45;animation:welcomeOrb 20s var(--ease-in-out) infinite alternate;border-radius:50%;position:absolute}.welcome-orbs span:first-child{background:oklch(from var(--accent) l .14 h);width:42vmax;height:42vmax;top:-15vmax;left:-10vmax}.welcome-orbs span:nth-child(2){background:oklch(from var(--accent-2) l .12 h);width:36vmax;height:36vmax;animation-delay:-7s;bottom:-18vmax;right:-12vmax}.welcome-orbs span:nth-child(3){background:oklch(from var(--accent-3) l .1 h);width:28vmax;height:28vmax;animation-delay:-12s;top:35%;left:35%}@keyframes welcomeOrb{to{transform:translate(4%,3%)scale(1.06)}}.welcome-skip{color:var(--fg-3);border-radius:var(--r);transition:color .16s var(--ease-out), background .16s var(--ease-out), transform .16s var(--ease-out);padding:6px 10px;font-size:12px;position:absolute;top:18px;right:20px}.welcome-skip:hover{color:var(--fg);background:var(--bg-sunk)}.welcome-skip:active{transform:scale(.97)}.welcome-stage{text-align:center;width:100%;max-width:420px;transition:opacity .22s var(--ease-out), transform .22s var(--ease-out)}.welcome-stage.is-flip{animation:welcomeStageFlip .38s var(--ease-out) both}@keyframes welcomeStageFlip{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.welcome-kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);margin-bottom:22px;font-size:11px}.welcome-title{font-family:var(--font-serif);font-optical-sizing:auto;font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.035em;color:var(--fg);margin-bottom:16px;font-size:clamp(2rem,5vw,3rem);font-weight:380;line-height:1.05}.welcome-sub{font-family:var(--font-serif);font-variation-settings:"opsz" 28;color:var(--fg-1);letter-spacing:-.01em;font-size:17px;line-height:1.55}.welcome-foot{justify-content:space-between;align-items:center;gap:20px;width:min(420px,100%);margin-top:auto;display:flex}.welcome-dots{gap:7px;display:flex}.welcome-dot{background:var(--line-3);width:6px;height:6px;transition:background .2s var(--ease-out), transform .2s var(--ease-out), width .2s var(--ease-out);border-radius:50%}.welcome-dot.is-active{background:var(--accent);transform:scale(1.15)}.welcome-dot.is-done{background:oklch(from var(--accent) l c h / .45)}.welcome.is-leaving{opacity:0;pointer-events:none;transition:opacity .4s var(--ease-out)}@media (prefers-reduced-motion:reduce){.welcome-orbs span,.welcome-stage.is-flip{animation:none}}.lessons-shell{background:var(--bg);grid-template-columns:min(320px,32vw) minmax(0,1fr);width:100%;max-width:100%;height:100%;min-height:0;display:grid}.lessons-rail{border-right:1px solid var(--line);background:var(--bg);grid-template-rows:auto 1fr;gap:0;min-width:0;padding:0;display:grid;overflow:hidden}.lessons-rail-head{z-index:3;min-height:var(--toolbar-row-h);padding:18px var(--rail-gutter,16px) 14px;border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .88);-webkit-backdrop-filter:saturate(180%)blur(14px);grid-template-columns:1fr auto;align-items:center;gap:8px;margin:0;display:grid;position:sticky;top:0}.lessons-rail-head-text{gap:0;min-width:0;display:grid}.lessons-rail-kicker{color:var(--fg-3);margin-bottom:8px}.lessons-rail-title{font-family:var(--font-serif);font-variation-settings:"opsz" 48, "SOFT" 50;font-optical-sizing:auto;letter-spacing:-.02em;color:var(--fg);margin:0;font-size:clamp(18px,2vw,20px);font-weight:380;line-height:1.1;display:none}.lessons-rail-sub,.lessons-rail-teach{margin:0;display:none}.lessons-rail-sub{font:400 12px/1.35 var(--font-sans);color:var(--fg-2);font-variant-numeric:tabular-nums;letter-spacing:-.005em;margin-top:4px}.lessons-rail-teach{font:500 11px/1.35 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;margin-top:6px}.lessons-rail-head>.btn-quiet.rail-action,.lessons-add-btn{flex-shrink:0;align-self:center;margin-top:0}.lessons-rail-lang{font-family:var(--font-serif);font-variation-settings:"opsz" 60;letter-spacing:-.02em;color:var(--fg);font-size:20px;font-weight:380}.lessons-rail-native{font:400 13px/1.4 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;margin-top:2px}.lessons-banner{color:var(--fg-2);border-top:1px solid var(--line);margin-top:10px;padding-top:10px;font-size:12.5px;line-height:1.55}.lessons-banner strong{color:var(--fg);font-weight:500}.unit-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);padding:8px 8px 6px;font-size:10px;font-weight:500}.lessons-list{-webkit-overflow-scrolling:touch;align-content:start;gap:0;min-height:0;padding:0 0 80px;display:grid;overflow-y:auto}.view-lessons .travel-row,.view-lessons .travel-row.lesson-row{border-bottom:1px solid var(--line);border-radius:0}.view-lessons .lessons-unit .unit-label,.view-lessons .travel-unit-label{font:500 10.5px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);padding:14px var(--rail-gutter,16px) 5px;background:var(--bg);margin:0}.view-lessons .lessons-unit:first-child .travel-unit-label{padding-top:10px}.lesson-item{text-align:left;border-radius:var(--r-md);width:100%;min-height:44px;color:var(--fg-1);cursor:pointer;transition:background-color .15s var(--ease-out), color .15s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:12px;padding:8px 10px;display:grid;position:relative}.lesson-item.is-active{background:oklch(from var(--accent) l c h / .09);color:var(--fg)}.lesson-item.is-active:before{content:"";background:var(--accent);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:2px}.lesson-item:active{transform:scale(.98)}.lesson-glyph{width:16px;height:16px;font:500 9px/1 var(--font-mono);letter-spacing:.04em;background:var(--bg-sunk);color:var(--fg-2);border:1px solid var(--line);border-radius:4px;flex-shrink:0;place-items:center;display:grid}.lesson-glyph[data-s=learning]{color:oklch(from var(--accent) l c h / .95);border-color:oklch(from var(--accent) l c h / .22);background:oklch(from var(--accent) l c h / .08)}.lesson-glyph[data-s=learned]{color:oklch(from var(--accent-3) l c h / .95);border-color:oklch(from var(--accent-3) l c h / .22);background:oklch(from var(--accent-3) l c h / .08)}.lesson-glyph[data-s=new]{color:oklch(from var(--accent-2) l c h / .95);border-color:oklch(from var(--accent-2) l c h / .22);background:oklch(from var(--accent-2) l c h / .08)}.lesson-body{gap:2px;min-width:0;display:grid}.lesson-item-title{font:500 13px/1.35 var(--font-sans);letter-spacing:-.005em;color:inherit;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lesson-meta{font:400 11px/1.3 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lesson-status{background:var(--line-3);border-radius:50%;width:8px;height:8px}.lesson-status[data-s=learning]{background:var(--accent)}.lesson-status[data-s=learned]{background:var(--accent-3)}.lesson-status[data-s=new]{background:var(--accent-2)}.lesson-mins{font-family:var(--font-mono);color:var(--fg-3);font-variant-numeric:tabular-nums;font-size:10.5px}.lesson-content{background:var(--bg);flex-direction:column;width:100%;min-width:0;min-height:0;display:flex;overflow:hidden}.lesson-content .kicker{margin-bottom:12px}.lesson-content h2{font-family:var(--font-serif);font-variation-settings:"opsz" 72, "SOFT" 45;letter-spacing:-.03em;color:var(--fg);margin-bottom:18px;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:380;line-height:1.08}.lesson-intro{font-family:var(--font-serif);font-variation-settings:"opsz" 20;color:var(--fg-1);letter-spacing:-.008em;margin-bottom:28px;font-size:16px;line-height:1.62}.vocab-table{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-elev);margin-bottom:24px;overflow:hidden}.vocab-row{border-top:1px solid var(--line);grid-template-columns:minmax(100px,1.1fr) minmax(90px,.9fr) 1.4fr;gap:0;font-size:13px;line-height:1.45;display:grid}.vocab-row:first-child{border-top:0}.vocab-row.is-head{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);background:var(--bg-sunk);font-size:10px;font-weight:500}.vocab-row>div{border-right:1px solid var(--line);padding:11px 14px}.vocab-row>div:last-child{border-right:0}.vocab-a{color:var(--fg);font-weight:500}.vocab-b{font-family:var(--font-mono);color:var(--fg-2);font-size:12px}.vocab-c{color:var(--fg-1)}.crumb-bar{background:oklch(from var(--bg) l c h / .78);-webkit-backdrop-filter:blur(14px)saturate(180%);border-bottom:1px solid var(--line);box-sizing:border-box;flex-shrink:0;align-items:center;gap:6px;min-width:0;height:48px;padding:0 12px 0 4px;display:none}.crumb-bar-back{border-radius:var(--r);min-width:44px;height:44px;min-height:44px;color:var(--accent);font:500 13px/1 var(--font-mono);letter-spacing:.02em;text-transform:lowercase;cursor:pointer;transition:transform .16s var(--ease-out), color .12s var(--ease-out);background:0 0;border:0;flex-shrink:0;align-items:center;gap:2px;margin:0;padding:0 8px 0 4px;display:inline-flex}.crumb-bar-back:active{transform:scale(.97)}.crumb-bar-chevron{color:var(--accent);opacity:.92;flex-shrink:0;display:block}.crumb-bar-parent{letter-spacing:.02em}.crumb-bar-sep{color:var(--fg-3);font:400 12px/1 var(--font-mono);opacity:.72;-webkit-user-select:none;user-select:none;flex-shrink:0}.crumb-bar-current{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--fg-2);font:500 11.5px/1.3 var(--font-mono);letter-spacing:.02em;font-variant-numeric:tabular-nums;flex:auto;overflow:hidden}.crumb-bar-actions{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:inline-flex}.crumb-bar--spread{grid-template-columns:auto minmax(0,1fr) auto;gap:4px 8px;display:grid}.crumb-bar--spread .crumb-bar-current{grid-column:2}.lessons-detail-bar{display:none}.lesson-detail-inner{-webkit-overflow-scrolling:touch;box-sizing:border-box;flex:1;width:100%;max-width:min(68ch,42rem);min-height:0;margin:0 auto;padding:36px clamp(24px,4vw,56px) 100px;overflow-y:auto}@media (max-width:720px){.vocab-row{grid-template-columns:1fr}.vocab-row>div{border-right:0;border-bottom:1px solid var(--line)}.vocab-row>div:last-child{border-bottom:0}}.countdown-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;max-width:1100px;display:grid}.countdown-tile{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);opacity:0;animation:rise .4s var(--ease-out) forwards;transition:border-color .18s var(--ease-out);flex-direction:column;gap:6px;padding:20px 18px 18px;display:flex;position:relative;overflow:hidden;transform:translateY(8px)}.countdown-tile:before{content:"";background:var(--c,var(--accent));border-radius:2px 0 0 2px;width:3px;position:absolute;top:0;bottom:0;left:0}.countdown-tile:hover{border-color:var(--line-2)}.countdown-num{font-family:var(--font-serif);font-variation-settings:"opsz" 96;letter-spacing:-.04em;color:var(--fg);font-variant-numeric:tabular-nums;font-size:2.75rem;font-weight:380;line-height:1}.countdown-num.is-past{color:var(--fg-2)}.countdown-unit{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);font-size:10px}.countdown-title{font-family:var(--font-serif);letter-spacing:-.015em;color:var(--fg);margin-top:8px;font-size:15px;font-weight:400}.countdown-date{font-family:var(--font-mono);color:var(--fg-2);font-size:11px}.watch-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;max-width:1180px;display:grid}.watch-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);transition:border-color .18s var(--ease-out), transform .18s var(--ease-out);opacity:0;animation:rise .4s var(--ease-out) forwards;grid-template-rows:160px auto;display:grid;overflow:hidden;transform:translateY(8px)}.watch-card:hover{border-color:var(--line-2)}.watch-card:active{transform:scale(.996)}.watch-poster{background:linear-gradient(145deg, var(--p1,var(--bg-sunk)), var(--p2,var(--line)));place-items:center;padding:20px;display:grid;position:relative}.watch-poster-title{font-family:var(--font-serif);font-variation-settings:"opsz" 48;text-align:center;letter-spacing:-.02em;color:#fcfcfcf0;color:lab(98.84% .0000298023 -.0000119209/.94);text-shadow:0 1px 16px #00000040;text-shadow:0 1px 16px lab(0% 0 0/.25);max-width:12ch;font-size:clamp(1rem,3vw,1.35rem);font-weight:400;line-height:1.2}.watch-info{flex-direction:column;gap:6px;padding:14px 16px 16px;display:flex}.watch-meta{font-family:var(--font-mono);color:var(--fg-3);letter-spacing:.02em;font-size:11px}.watch-meta i{font-style:normal}.watch-title-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.watch-title{font-family:var(--font-serif);letter-spacing:-.015em;color:var(--fg);font-size:15px;font-weight:400;line-height:1.3}.watch-status{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);color:var(--fg-2);border-radius:100px;flex-shrink:0;padding:3px 7px;font-size:9px;font-weight:500}.watch-status[data-s=watching]{color:var(--accent);border-color:oklch(from var(--accent) l c h / .4)}.watch-status[data-s=watched]{color:var(--accent-3);border-color:oklch(from var(--accent-3) l c h / .4)}.watch-rating{letter-spacing:.08em;color:var(--fg-2);font-size:11px}.watch-note{color:var(--fg-2);margin-top:4px;font-size:12.5px;font-style:italic;line-height:1.45}.card-title.sm{margin-bottom:4px;font-size:15px}.whats-new-btn{position:relative}.whats-new-pulse{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 0 oklch(from var(--accent) l c h / .45);animation:whatsPulse 2.2s var(--ease-out) infinite;border-radius:50%;position:absolute;top:4px;right:4px}.whats-new-pulse[hidden]{display:none!important}@keyframes whatsPulse{0%{box-shadow:0 0 0 0 oklch(from var(--accent) l c h / .4);transform:scale(1)}70%{box-shadow:0 0 0 6px oklch(from var(--accent) l c h / 0);transform:scale(1)}to{transform:scale(1);box-shadow:0 0 #0000}}.icon-btn:active,.search-trigger:active,.heart-btn:active{transform:scale(.97)}.hall-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;width:100%;min-width:0;max-width:1180px;display:grid}.card-tasks,.card-letter,.card-paper,.card-programme,.card-presence{grid-column:span 6}@media (max-width:880px){.card-tasks,.card-letter,.card-paper,.card-programme,.card-presence{grid-column:span 12}}.course-rail,.travel-rail{grid-column:1}.course-center,.travel-center{grid-column:2;grid-template-rows:1fr;min-width:0;height:100%;min-height:0;display:grid}.course-center{grid-template-rows:auto 1fr}.course-outline,.travel-outline{grid-column:3}@media (max-width:880px){.course-rail,.course-center,.course-outline,.travel-rail,.travel-center,.travel-outline{grid-column:1}}.course-center .course-pane{height:auto;min-height:0;overflow-y:auto}.course-toolbar{border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .92);-webkit-backdrop-filter:blur(12px);z-index:4;align-items:center;gap:4px;padding:10px clamp(20px,4vw,48px) 8px;display:flex;position:sticky;top:0}.course-tool{border-radius:var(--r);font:500 12px/1 var(--font-sans);color:var(--fg-2);cursor:pointer;transition:color .15s var(--ease-out), background .15s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;padding:5px 10px;display:inline-flex}.course-tool svg{color:var(--fg-3);transition:color .15s var(--ease-out)}.course-tool:hover{color:var(--fg);background:var(--bg-sunk)}.course-tool:hover svg{color:var(--fg-1)}.course-tool:active{transform:scale(.97)}.course-tool.is-active,.course-tool[aria-pressed=true]{color:var(--fg);background:var(--bg-elev);box-shadow:inset 0 0 0 1px var(--line-2)}.course-tool.is-active svg,.course-tool[aria-pressed=true] svg{color:var(--fg)}.course-tool-sep{background:var(--line);width:1px;height:16px;margin:0 4px}.course-detail-stack{display:contents}.course-mobile-shelf,.course-outline-strip,.course-detail-bar,.course-detail-crumb-wrap,.view-course.course-rail-hidden .course-rail,.view-course.course-outline-hidden .course-outline{display:none}.view-course.course-rail-hidden:not(.course-outline-hidden){grid-template-columns:minmax(0,1fr) 220px}.view-course.course-outline-hidden:not(.course-rail-hidden){grid-template-columns:var(--rail-w) minmax(0, 1fr)}.view-course.course-rail-hidden.course-outline-hidden{grid-template-columns:minmax(0,1fr)}.view-course.course-rail-hidden:not(.course-outline-hidden) .course-center{grid-column:1}.view-course.course-rail-hidden:not(.course-outline-hidden) .course-outline,.view-course.course-outline-hidden:not(.course-rail-hidden) .course-center{grid-column:2}.view-course.course-rail-hidden.course-outline-hidden .course-center{grid-column:1}@media (max-width:1180px){.view-course.course-rail-hidden:not(.course-outline-hidden){grid-template-columns:minmax(0,1fr)}.view-course.course-rail-hidden:not(.course-outline-hidden) .course-outline{display:none}}.view-course.course-flow{--course-gutter:clamp(20px, 4vw, 56px);--course-read-max:min(46rem, calc(100% - 2 * var(--course-gutter)));--course-wide-max:min(64rem, calc(100% - 2 * var(--course-gutter)))}.view-course.course-flow .course-center{justify-self:stretch;width:100%;max-width:none;margin:0}.view-course.course-flow .course-toolbar{box-sizing:border-box;width:100%;max-width:var(--course-read-max);border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .94);-webkit-backdrop-filter:blur(14px)saturate(180%);justify-content:flex-start;margin-inline:auto;padding:10px 0 8px}.view-course.course-flow .course-pane{width:100%;padding-inline:var(--course-gutter);box-sizing:border-box}.view-course.course-flow .course-pane>.paper-detail,.view-course.course-flow .course-pane>.item-detail{box-sizing:border-box;width:100%;max-width:var(--course-read-max);margin-inline:auto;padding:clamp(28px,4vh,48px) 0 clamp(72px,10vh,140px)}.view-course.course-flow .paper-body,.view-course.course-flow .course-pane .prose,.view-course.course-flow .item-detail .prose{width:100%;max-width:none;font-size:18px;line-height:1.75}.view-course.course-flow .paper-meta{width:100%;max-width:none}.view-course.course-flow .paper-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;width:fit-content;max-width:100%;margin-inline:0;display:inline-flex;overflow-x:auto}.view-course.course-flow .paper-tabs::-webkit-scrollbar{display:none}.view-course.course-flow .course-center:has(.tab-mindmap:not([hidden])) .course-toolbar{max-width:var(--course-wide-max)}.view-course.course-flow .paper-detail:has(.tab-mindmap:not([hidden])){max-width:var(--course-wide-max)}.view-course.course-flow .tab-mindmap{width:100%;max-width:none;margin-inline:0}.view-course.course-flow .mindmap-canvas{width:100%}@media (max-width:880px){.view-course.course-flow{--course-gutter:clamp(16px, 5vw, 24px);--course-read-max:100%;--course-wide-max:100%}.view-course.course-flow .course-center{grid-row:1}.view-course.course-flow .course-toolbar{max-width:none;padding-inline:0}}.programmes-rail{grid-column:1}.programme-center{grid-column:2;grid-template-rows:auto 1fr;min-width:0;height:100%;min-height:0;display:grid}.programme-outline{border-left:1px solid var(--line);top:var(--topbar-h);height:calc(100dvh - var(--topbar-h));max-height:calc(100dvh - var(--topbar-h));grid-column:3;align-self:start;padding:48px 24px 24px;position:sticky;overflow-y:auto}@media (max-width:880px){.programmes-rail,.programme-center,.programme-outline{grid-column:1}}.programme-center .programme-pane{height:auto;min-height:0;overflow-y:auto}.programme-toolbar{border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .92);-webkit-backdrop-filter:blur(12px);z-index:4;align-items:center;gap:4px;padding:10px clamp(20px,4vw,48px) 8px;display:flex;position:sticky;top:0}.programme-tool{border-radius:var(--r);font:500 12px/1 var(--font-sans);color:var(--fg-2);cursor:pointer;transition:color .15s var(--ease-out), background .15s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;padding:5px 10px;display:inline-flex}.programme-tool svg{color:var(--fg-3);transition:color .15s var(--ease-out)}.programme-tool:hover{color:var(--fg);background:var(--bg-sunk)}.programme-tool:hover svg{color:var(--fg-1)}.programme-tool:active{transform:scale(.97)}.programme-tool.is-active,.programme-tool[aria-pressed=true]{color:var(--fg);background:var(--bg-elev);box-shadow:inset 0 0 0 1px var(--line-2)}.programme-tool.is-active svg,.programme-tool[aria-pressed=true] svg{color:var(--fg)}.programme-tool-sep{background:var(--line);width:1px;height:16px;margin:0 4px}.view-programmes.programme-rail-hidden .programmes-rail,.view-programmes.programme-outline-hidden .programme-outline{display:none}.view-programmes.programme-rail-hidden:not(.programme-outline-hidden){grid-template-columns:minmax(0,1fr) 220px}.view-programmes.programme-outline-hidden:not(.programme-rail-hidden){grid-template-columns:300px minmax(0,1fr)}.view-programmes.programme-rail-hidden.programme-outline-hidden{grid-template-columns:minmax(0,1fr)}.view-programmes.programme-rail-hidden:not(.programme-outline-hidden) .programme-center{grid-column:1}.view-programmes.programme-rail-hidden:not(.programme-outline-hidden) .programme-outline,.view-programmes.programme-outline-hidden:not(.programme-rail-hidden) .programme-center{grid-column:2}.view-programmes.programme-rail-hidden.programme-outline-hidden .programme-center{grid-column:1}@media (max-width:1180px){.view-programmes.programme-rail-hidden:not(.programme-outline-hidden){grid-template-columns:minmax(0,1fr)}.view-programmes.programme-rail-hidden:not(.programme-outline-hidden) .programme-outline{display:none}}.view-programmes.programme-flow{--prog-gutter:clamp(20px, 4vw, 56px);--prog-read-max:min(46rem, calc(100% - 2 * var(--prog-gutter)))}.view-programmes.programme-flow .programme-center{justify-self:stretch;width:100%;max-width:none;margin:0}.view-programmes.programme-flow .programme-toolbar{box-sizing:border-box;width:100%;max-width:var(--prog-read-max);background:oklch(from var(--bg) l c h / .94);-webkit-backdrop-filter:blur(14px)saturate(180%);justify-content:flex-start;margin-inline:auto;padding:10px 0 8px}.view-programmes.programme-flow .programme-pane{width:100%;padding-inline:var(--prog-gutter);box-sizing:border-box}.view-programmes.programme-flow .programme-pane>.programme-detail,.view-programmes.programme-flow .programme-pane>.programme-empty{max-width:var(--prog-read-max);margin-inline:auto;padding:clamp(28px,4vh,48px) 0 clamp(72px,10vh,140px)}.view-programmes.programme-flow .programme-meta,.view-programmes.programme-flow .programme-body,.view-programmes.programme-flow .programme-summary,.view-programmes.programme-flow .programme-section p.prose{width:100%;max-width:none}.view-programmes.programme-flow .programme-section p.prose{font-size:18px;line-height:1.75}.view-programmes.programme-flow .programme-tabs{width:fit-content;max-width:100%;margin-inline:0;display:inline-flex}@media (max-width:880px){.view-programmes.programme-flow{--prog-gutter:clamp(16px, 5vw, 24px);--prog-read-max:100%}.view-programmes.programme-flow .programme-toolbar{max-width:none;padding-inline:0}}:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--mobile-bottom-gutter:calc(16px + env(safe-area-inset-bottom,0px));--r-full:999px;--drawer-w:420px}.is-editable{position:relative}.is-editable[contenteditable]{outline:none}.is-editable.is-editing{background:oklch(from var(--accent) l c h / .05);box-shadow:inset 0 0 0 1px oklch(from var(--accent) l c h / .25);border-radius:var(--r);margin:-4px -6px;padding:4px 6px}.editable-pencil{width:18px;height:18px;color:var(--fg-3);opacity:0;transition:opacity .18s var(--ease-out);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:-22px;transform:translateY(-50%)}.is-editable:hover>.editable-pencil{opacity:1}.editable-pencil:hover{color:var(--fg);background:var(--bg-sunk)}.editable-pencil:active{transform:translateY(-50%)scale(.92)}.is-editable.is-empty:not(.is-editing):before{content:attr(data-placeholder);color:var(--fg-3);font-style:italic}.seg-sm .seg-btn{padding:5px 10px;font-size:11px}.empty-line{font:380 14px/1.6 var(--font-serif);color:var(--fg-3);text-align:center;padding:32px 0}.detail-drawer-backdrop{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .26s var(--ease-out);background:#00000057;background:lab(0% 0 0/.34);position:fixed;inset:0}.detail-drawer-backdrop.is-open{opacity:1}.detail-drawer{width:min(var(--drawer-w), 100vw);z-index:81;background:var(--bg-elev);border-left:1px solid var(--line);box-shadow:var(--shadow-lg);transition:transform .3s var(--ease-drawer);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(100%)}.detail-drawer.is-open{transform:translate(0)}.detail-drawer-head{z-index:4;padding:env(safe-area-inset-top,0px) 8px 0 4px;min-height:calc(48px + env(safe-area-inset-top,0px));background:var(--bg-elev);border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:none;position:sticky;top:0}.detail-drawer-back{min-width:44px;height:44px;min-height:44px;color:var(--fg-1);font:500 14px/1 var(--font-sans);letter-spacing:-.005em;cursor:pointer;border-radius:var(--r);transition:transform .16s var(--ease-out), color .12s var(--ease-out);background:0 0;border:0;align-items:center;gap:4px;padding:0 10px 0 6px;display:inline-flex}.detail-drawer-back:active,.detail-drawer-x:active{transform:scale(.97)}.detail-drawer-back-icon{color:var(--fg-2);display:block}.detail-drawer-x{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--fg-1);border-radius:var(--r);cursor:pointer;transition:transform .16s var(--ease-out), color .12s var(--ease-out);background:0 0;border:0;place-items:center;display:none}@media (hover:hover) and (pointer:fine){.detail-drawer-back:hover,.detail-drawer-x:hover{color:var(--fg)}}.detail-drawer-handle{background:var(--line-3);border-radius:99px;width:32px;height:4px;display:none;position:absolute;top:16px;right:16px}.detail-drawer-body{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.drawer-cover{aspect-ratio:16/9;background:oklch(from var(--accent) l c h / .1) center/cover no-repeat;border-bottom:1px solid var(--line);place-items:center;width:100%;display:grid;position:relative}.drawer-cover img{object-fit:cover;width:100%;height:100%}.drawer-cover.is-empty{background:var(--bg-sunk);color:var(--fg-3);font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border:1px dashed var(--line-2);cursor:pointer;transition:color .15s var(--ease-out), background .15s var(--ease-out);border-radius:0;gap:6px}.drawer-cover.is-empty:hover{color:var(--fg-1);background:var(--bg)}.drawer-cover.is-empty:active{transform:scale(.99)}.drawer-body-inner{gap:14px;padding:24px 28px 32px;display:grid}.drawer-kicker{font:500 11px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);align-items:center;gap:6px;display:flex}.drawer-title{font:380 26px/1.18 var(--font-serif);font-variation-settings:"opsz" 36;letter-spacing:-.02em;color:var(--fg)}.drawer-prose{font:380 15px/1.6 var(--font-serif);color:var(--fg-1)}.drawer-meta{font:400 12px/1.4 var(--font-mono);color:var(--fg-3);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.drawer-meta .avatar.sm{background:var(--bg,var(--accent));width:22px;height:22px;color:var(--bg-elev);font:500 11px/1 var(--font-sans);border-radius:50%;place-items:center;display:grid}.drawer-link{border-top:1px solid var(--line);gap:4px;margin-top:4px;padding-top:14px;display:grid}.drawer-link-row{text-align:left;border-radius:var(--r);background:var(--bg-sunk);border:1px solid var(--line);width:100%;font:400 12.5px/1.4 var(--font-sans);color:var(--fg-1);cursor:pointer;transition:background .14s var(--ease-out);padding:8px 12px;display:block}.drawer-link-row:hover{background:var(--bg)}.drawer-link-row:active{transform:scale(.99)}.drawer-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-top:8px;padding-top:14px;display:flex}.drawer-actions .btn-primary,.drawer-actions .btn-ghost{flex:1;justify-content:center;min-width:0}.rating-row{align-items:center;gap:10px;display:flex}.stars{gap:2px;display:inline-flex}.star{width:24px;height:24px;font:500 18px/1 var(--font-sans);color:var(--line-3);cursor:pointer;transition:color .14s var(--ease-out), transform .14s var(--ease-out);padding:0}.star.is-filled{color:var(--accent)}.star:hover{transform:scale(1.12)}.star:active{transform:scale(.88)}.countdown-featured{margin-bottom:28px}.cd-featured{border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--bg-elev);box-shadow:var(--shadow-lg);isolation:isolate;padding:36px 36px 32px;position:relative;overflow:hidden}.cd-featured-glow{z-index:-2;background:radial-gradient(60% 70% at 30% 30%, oklch(from var(--c,var(--accent)) l c h / .18), transparent 70%);filter:blur(40px);pointer-events:none;position:absolute;inset:-40%}.cd-featured-cover{z-index:-1;opacity:.32;background-position:50%;background-size:cover;position:absolute;inset:0}.cd-featured-inner{gap:14px;display:grid}.cd-featured-title{font:380 clamp(28px, 4vw, 40px)/1.06 var(--font-serif);font-variation-settings:"opsz" 96;letter-spacing:-.025em;color:var(--fg)}.cd-featured-date{font:400 14px/1.5 var(--font-sans);color:var(--fg-2)}.cd-featured-clock{align-items:baseline;gap:10px;margin-top:4px;display:flex}.cd-big-num{font:360 clamp(54px, 8vw, 88px)/1 var(--font-serif);font-variation-settings:"opsz" 144;letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--fg)}.cd-big-unit{font:500 12px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.cd-ticker{font:400 clamp(28px, 4.5vw, 44px)/1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--fg);align-items:baseline;gap:4px;display:inline-flex}.cd-tick-num{color:var(--fg)}.cd-tick-sep{color:var(--fg-3);margin-right:8px;font-size:.55em}.cd-feat-menu{position:absolute;top:16px;right:16px}.countdown-tile{cursor:default;position:relative}.countdown-tile.is-pinned:after{content:"★";color:var(--accent);font-size:11px;position:absolute;top:10px;right:12px}.countdown-tile.is-past{opacity:.92}.countdown-cover{z-index:0;opacity:.45;border-radius:inherit;background-position:50%;background-size:cover;position:absolute;inset:0}.countdown-tile .countdown-num,.countdown-tile .countdown-unit,.countdown-tile .countdown-title,.countdown-tile .countdown-date{z-index:1;position:relative}.countdown-tile .countdown-num{font-variant-numeric:tabular-nums}.countdown-menu{z-index:2;opacity:0;transition:opacity .15s var(--ease-out);position:absolute;top:10px;right:10px}.countdown-tile:hover .countdown-menu{opacity:1}.cd-empty{text-align:center;font:380 16px/1.5 var(--font-serif);color:var(--fg-2);border:1px dashed var(--line-2);border-radius:var(--r-lg);padding:28px}.countdown-past-head{font:500 11px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--fg-3);margin:36px 0 12px}.link-inline{font:400 inherit;color:var(--accent);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;text-decoration-thickness:1px}.link-inline:active{transform:scale(.97)}.watch-kind{font:500 11px/1 var(--font-mono);letter-spacing:.06em;text-transform:lowercase;color:var(--fg-3)}.watch-thumb{aspect-ratio:16/9;background:var(--bg-sunk);position:relative;overflow:hidden}.watch-thumb img{object-fit:cover;width:100%;height:100%;display:block}.watch-thumb-fallback{background:linear-gradient(135deg,#732d3b,#3f1e46);background:linear-gradient(135deg,lab(29.2418% 32.6583 7.38102),lab(17.5823% 21.68 -18.5481));position:absolute;inset:0}.watch-play-glyph{color:#fcfcfceb;color:lab(98.84% .0000298023 -.0000119209/.92);text-shadow:0 2px 8px #00000080;text-shadow:0 2px 8px lab(0% 0 0/.5);pointer-events:none;transition:transform .2s var(--ease-out);place-items:center;display:grid;position:absolute;inset:0}.watch-card:hover .watch-play-glyph{transform:scale(1.08)}.watch-duration{color:#f8f8f8;color:lab(97.68% -.0000298023 .0000119209);font:500 11px/1 var(--font-mono);font-variant-numeric:tabular-nums;background:#000000b8;background:lab(0% 0 0/.72);border-radius:4px;padding:3px 7px;position:absolute;top:8px;right:8px}.watch-eps{font:500 11px/1 var(--font-mono);color:var(--fg-3);font-variant-numeric:tabular-nums;align-items:center;gap:10px;margin-top:2px;display:flex}.watch-eps-bar{background:var(--bg-sunk);border-radius:99px;flex:1;height:3px;overflow:hidden}.watch-eps-bar span{height:100%;width:var(--p,0%);background:var(--accent-3);transition:width .3s var(--ease-out);display:block}.watch-poster-sq{aspect-ratio:1!important}.watch-card.watch-book{grid-template-columns:80px 1fr;display:grid}.watch-spine{background:linear-gradient(180deg, var(--p1,#843c38), var(--p2,#44152e));color:#f8f8f8;color:lab(97.68% -.0000298023 .0000119209);border-right:1px solid #0000002e;border-right:1px solid lab(0% 0 0/.18);align-content:end;gap:4px;padding:18px 14px;display:grid;position:relative}@supports (color:lab(0% 0 0)){.watch-spine{background:linear-gradient(180deg, var(--p1,lab(35.2211% 31.3348 17.9367)), var(--p2,lab(15.4009% 25.4918 -4.94471)))}}.watch-spine-title{font:380 16px/1.2 var(--font-serif);letter-spacing:-.01em}.watch-spine-author{font:400 11px/1.2 var(--font-mono);opacity:.7}.watch-card.watch-book .watch-info{padding:14px 16px}.travel-rail{border-right:1px solid var(--line);background:var(--bg);grid-template-rows:auto auto 1fr;gap:0;min-width:0;padding:0;display:grid;overflow:hidden}.travel-rail-head{z-index:3;padding:18px var(--rail-gutter,16px) 14px;background:oklch(from var(--bg) l c h / .88);-webkit-backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:8px;margin:0;display:grid;position:sticky;top:0}.travel-rail-head .kicker,.travel-rail-kicker{color:var(--fg-3);margin-bottom:8px}.travel-rail-head-text{gap:0;min-width:0;display:grid}.travel-rail-title,.travel-rail-title-mobile{display:none}.travel-rail-sub{font:400 12px/1.35 var(--font-sans);color:var(--fg-2);font-variant-numeric:tabular-nums;letter-spacing:-.005em;margin:0}.travel-rail-head #travel-add,.travel-rail-head .travel-add-btn{align-self:center}.travel-filter-bar{padding:12px var(--rail-gutter,16px) 14px;border-bottom:1px solid var(--line);background:var(--bg);box-sizing:border-box;min-width:0}.travel-filter-seg.seg{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-sunk);grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;width:100%;max-width:100%;margin:0;padding:3px;display:grid}.travel-filter-seg .seg-btn{min-width:0;height:calc(var(--toolbar-row-h) - 6px);min-height:calc(var(--toolbar-row-h) - 6px);border-radius:calc(var(--r-md) - 2px);font:500 10px/1.15 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);box-shadow:none;text-overflow:ellipsis;white-space:nowrap;text-align:center;transition:color .14s var(--ease-out), background .14s var(--ease-out), box-shadow .14s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;padding:0 4px;overflow:hidden}.travel-filter-seg .seg-btn:hover{color:var(--fg-2);background:oklch(from var(--bg) l c h / .5)}.travel-filter-seg .seg-btn.is-active{color:var(--fg);background:var(--bg-elev);box-shadow:inset 0 0 0 1px var(--line-2)}.travel-filter-seg .seg-btn:active{transform:scale(.97)}.travel-rail-list{-webkit-overflow-scrolling:touch;align-content:start;gap:0;min-height:0;padding:0 0 80px;display:grid;overflow-y:auto}.travel-rail-list>.travel-list{gap:0;min-width:0;margin:0;padding:0;display:grid}.travel-year{gap:0;margin:0;display:grid}.travel-year-head{font:500 10.5px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.06em;text-transform:uppercase;padding:14px var(--rail-gutter,16px) 5px;background:var(--bg);margin:0}.travel-year:first-child .travel-year-head,.travel-list>.travel-unit-label:first-child{padding-top:10px}.travel-trip-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.travel-trip-list>li{margin:0;padding:0}.view-travel .travel-row,.view-lessons .travel-row{width:100%;min-height:44px;padding:11px var(--rail-gutter,16px);border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .14s var(--ease-out), transform .16s var(--ease-out);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid;position:relative}.view-travel .travel-row--desk.has-thumb{grid-template-columns:32px minmax(0,1fr) auto;align-items:center}.view-travel .travel-row.is-active,.view-lessons .travel-row.is-active{background:var(--bg-sunk)}.view-travel .travel-row.is-active:before,.view-lessons .travel-row.is-active:before{content:"";background:var(--fg);border-radius:0 2px 2px 0;width:2px;position:absolute;top:6px;bottom:6px;left:0}.view-travel .travel-row:active,.view-lessons .travel-row:active{transform:scale(.97)}.view-travel .travel-row--desk{animation:rise .26s var(--ease-out) both}.travel-row-thumb{border-radius:var(--r);background:var(--bg-sunk) center/cover no-repeat;border:1px solid var(--line);opacity:.92;flex-shrink:0;width:32px;height:32px;display:block;overflow:hidden}.travel-row-body{gap:2px;min-width:0;display:grid}.travel-row-title{font:450 13px/1.35 var(--font-sans);letter-spacing:-.005em;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.view-travel .travel-row.is-active .travel-row-title,.view-lessons .travel-row.is-active .travel-row-title{color:var(--fg)}.travel-row-meta{font:400 11px/1.3 var(--font-mono);color:var(--fg-3);letter-spacing:.02em;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.travel-row-status{font:500 10px/1 var(--font-mono);letter-spacing:.04em;text-transform:lowercase;color:var(--fg-3);font-variant-numeric:tabular-nums;white-space:nowrap;place-self:center end;margin:0;padding:0}.travel-row-status[data-s=booked]{color:oklch(from var(--accent) l c h / .88)}.travel-row-status[data-s=planning]{color:oklch(from var(--accent-2) l c h / .88)}.travel-row-status[data-s=current]{color:oklch(from var(--accent-3) l c h / .88)}.travel-row-status[data-s=dreaming]{color:#606496;color:lab(43.505% 8.3302 -28.5666)}@media (hover:hover) and (pointer:fine){.view-travel .travel-row:hover,.view-lessons .travel-row:hover,.view-travel .travel-row.is-active:hover,.view-lessons .travel-row.is-active:hover{background:var(--bg-sunk)}}.travel-rail-empty{padding:22px var(--rail-gutter,16px);font:380 15px/1.4 var(--font-serif);color:var(--fg-3);max-width:22ch}.travel-detail{isolation:isolate;min-width:0;position:relative}.travel-detail-inner{box-sizing:border-box}.travel-hero{aspect-ratio:16/7;border-radius:var(--r-lg);background:var(--bg-sunk) center/cover no-repeat;width:100%;max-width:100%;box-shadow:var(--shadow-md);isolation:isolate;position:relative;overflow:hidden}.travel-hero[data-photo-id]{background-position:50%;background-size:cover}.travel-hero img{object-fit:cover;width:100%;height:100%;display:block}.travel-hero-gradient{z-index:-1;background:linear-gradient(135deg,#ba5a42,#004b5e);background:linear-gradient(135deg,lab(50.1844% 38.3092 32.6045),lab(28.5074% -20.9686 -23.2092));position:absolute;inset:0}.travel-hero-gradient[data-kind=dream]{background:linear-gradient(135deg,#5e61a1,#002c47);background:linear-gradient(135deg,lab(43.2237% 11.501 -35.4722),lab(16.2898% -6.31529 -24.7207))}.travel-hero-gradient[data-kind=weekend]{background:linear-gradient(135deg,#478d4b,#00493e);background:linear-gradient(135deg,lab(52.7447% -33.6409 27.6808),lab(26.7635% -28.3707 -.192791))}.travel-hero-gradient[data-kind=day-trip]{background:linear-gradient(135deg,#b58a3a,#6c411a);background:linear-gradient(135deg,lab(60.6148% 10.9431 47.9719),lab(32.4054% 16.533 31.2457))}.travel-hero-fade{pointer-events:none;background:linear-gradient(#0000 50%,#0000006b);background:linear-gradient(#0000 50%,lab(0% 0 0/.42));position:absolute;inset:0}.travel-hero-kicker{color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209);font:500 10.5px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 3px #0006;text-shadow:0 1px 3px lab(0% 0 0/.4);align-items:center;gap:8px;display:flex;position:absolute;bottom:16px;left:20px}.travel-hero-kicker .kicker-sep{opacity:.55}.travel-title-block{gap:10px;display:grid}.travel-title-block .kicker{color:var(--fg-3)}.travel-title{font:380 clamp(1.75rem, 3vw, 2.25rem)/1.08 var(--font-serif);font-variation-settings:"opsz" 64;letter-spacing:-.025em;color:var(--fg);margin:0}.travel-summary{font:380 17px/1.55 var(--font-serif);font-variation-settings:"opsz" 18;color:var(--fg-1);max-width:60ch;margin:0}.travel-summary[data-empty=true]:before{content:attr(data-placeholder);color:var(--fg-3);opacity:.7}.travel-meta-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:24px 32px;padding:18px 0;display:grid}.travel-meta-block{gap:6px;min-width:0;display:grid}.travel-meta-block .kicker{color:var(--fg-3)}.travel-meta-val{font:400 14px/1.4 var(--font-sans);color:var(--fg);font-variant-numeric:tabular-nums}.travel-place-chips{flex-wrap:wrap;gap:5px;display:flex}.travel-place-chip{font:500 11px/1 var(--font-mono);border:1px solid var(--line);color:var(--fg-1);background:var(--bg-sunk);white-space:nowrap;border-radius:6px;padding:4px 8px}.travel-place-chip .dim{color:var(--fg-3)}.travel-who{align-items:center;display:flex}.travel-who .avatar.sm{background:var(--bg,var(--accent));color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209);width:24px;height:24px;font:500 11px/1 var(--font-sans);border:2px solid var(--bg);border-radius:50%;place-items:center;margin-left:-6px;display:inline-grid}.travel-who .avatar.sm:first-child{margin-left:0}.travel-meta-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.travel-meta-actions .btn-ghost{font:500 12px/1 var(--font-sans);padding:6px 10px}.travel-section{gap:14px;display:grid}.travel-section h2{font:380 22px/1.2 var(--font-serif);font-variation-settings:"opsz" 32;letter-spacing:-.015em;color:var(--fg);margin:0}.travel-empty{place-items:center;min-height:min(52vh,420px);padding:32px;display:grid}.travel-empty--compact{place-items:start;min-height:0;padding:28px 24px 48px}.travel-empty--compact .travel-empty-inner{text-align:left;justify-items:start}.travel-empty-inner{text-align:center;justify-items:center;gap:14px;max-width:320px;display:grid}.travel-empty-title{font:380 clamp(1.5rem, 2.4vw, 1.9rem)/1.15 var(--font-serif);font-variation-settings:"opsz" 48;letter-spacing:-.02em;color:var(--fg);margin:0}.travel-empty-body{font:380 16px/1.55 var(--font-serif);font-variation-settings:"opsz" 18;color:var(--fg-2);margin:0}.travel-empty-days{color:var(--fg-3);font:380 15px/1.4 var(--font-serif);border-top:1px solid var(--line);padding:24px 0}.view-editor{height:100%;min-height:0;padding:0;overflow:hidden}.editor-shell{background:var(--bg);grid-template-rows:auto 1fr;display:grid;position:absolute;inset:0;overflow:hidden}.editor-bar{border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .85);-webkit-backdrop-filter:saturate(180%)blur(14px);justify-content:space-between;align-items:center;height:56px;padding:10px 24px;display:flex}.editor-bar-left,.editor-bar-right{align-items:center;gap:10px;display:flex}.editor-kicker{font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3)}.editor-page{padding:36px 32px 120px;overflow-y:auto}.editor-page--travel,.editor-page--programme,.editor-page--letter{width:100%;max-width:760px;margin:0 auto}.editor-block{gap:8px;margin-bottom:22px;display:grid}.editor-block-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.editor-block-row>div{gap:8px;display:grid}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--bg);font:500 11px/1 var(--font-mono);letter-spacing:.04em;color:var(--fg-2);cursor:pointer;transition:border-color .14s var(--ease-out), color .14s var(--ease-out), background .14s var(--ease-out);border-radius:999px;padding:6px 10px}.chip:hover{border-color:var(--line-2);color:var(--fg)}.chip.is-selected{border-color:var(--fg);color:var(--fg);background:var(--bg-sunk)}.chip:active{transform:scale(.97)}.editor-label{font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3)}.editor-input{font:400 14px/1.5 var(--font-sans);color:var(--fg);border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--bg-elev);width:100%;transition:border-color .14s var(--ease-out), background .14s var(--ease-out);padding:10px 12px}.editor-input:focus{border-color:var(--accent);background:var(--bg);outline:none}textarea.editor-input{resize:vertical;min-height:60px}.editor-input-title{font:380 clamp(22px, 3vw, 32px)/1.18 var(--font-serif);font-variation-settings:"opsz" 48;letter-spacing:-.02em;background:0 0;border-color:#0000;padding:6px 0}.editor-input-title:focus{box-shadow:0 1px 0 var(--accent);background:0 0;border-color:#0000;border-radius:0}.editor-section{border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.editor-section-head{justify-content:space-between;align-items:baseline;margin-bottom:14px;display:flex}.editor-section-head h2{font:380 20px/1.2 var(--font-serif);font-variation-settings:"opsz" 32;letter-spacing:-.015em;color:var(--fg)}.editor-cover{aspect-ratio:21/8;border-radius:var(--r-lg);background:var(--bg-sunk);border:1px dashed var(--line-2);margin-bottom:22px;position:relative;overflow:hidden}.editor-cover-img{background-position:50%;background-size:cover;position:absolute;inset:0}.editor-cover-img img{object-fit:cover;width:100%;height:100%}.editor-cover-btn{background:oklch(from var(--bg) l c h / .85);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line-2);color:var(--fg-1);font:500 12px/1 var(--font-sans);cursor:pointer;transition:transform .14s var(--ease-out);border-radius:99px;align-items:center;gap:6px;padding:8px 14px;display:inline-flex;position:absolute;bottom:16px;right:16px}.editor-cover-btn:active{transform:scale(.97)}.editor-days{gap:14px;display:grid}.prog-editor .ec-day,.view-editor[data-view=programme-editor] .ec-day{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-elev);transition:border-color .14s var(--ease-out);gap:8px;padding:14px;display:grid}.prog-editor .ec-day.is-drag,.view-editor[data-view=programme-editor] .ec-day.is-drag{opacity:.5}.prog-editor .ec-day.is-drop-target,.view-editor[data-view=programme-editor] .ec-day.is-drop-target{border-color:var(--accent)}.prog-editor .ec-day-head,.view-editor[data-view=programme-editor] .ec-day-head{grid-template-columns:14px 70px 140px 1fr 28px;align-items:center;gap:10px;display:grid}.prog-editor .ec-day-handle,.view-editor[data-view=programme-editor] .ec-day-handle{color:var(--fg-3);cursor:grab;font:500 14px/1 var(--font-mono);letter-spacing:-.2em}.prog-editor .ec-stops,.view-editor[data-view=programme-editor] .ec-stops{gap:6px;display:grid}.prog-editor .ec-stop,.view-editor[data-view=programme-editor] .ec-stop{grid-template-columns:1fr 2fr 28px;align-items:center;gap:6px;display:grid}.editor-page--travel .travel-editor-field{box-sizing:border-box;border:0;border-bottom:1px solid var(--line);width:100%;min-width:0;font:400 14px/1.5 var(--font-sans);color:var(--fg);transition:border-color .16s var(--ease-out), box-shadow .16s var(--ease-out);background:0 0;border-radius:0;padding:8px 0}.editor-page--travel .travel-editor-field::placeholder{color:var(--fg-3)}.editor-page--travel .travel-editor-field:focus{border-bottom-color:var(--accent);box-shadow:0 1px 0 var(--accent);outline:none}.editor-page--travel textarea.travel-editor-field{resize:vertical;min-height:52px;line-height:1.55}.travel-editor-days-section{margin-top:28px}.travel-editor-days{gap:0;display:grid}.travel-editor-days-empty{font:400 13px/1.45 var(--font-sans);color:var(--fg-3);margin:0 0 4px}.travel-editor-day.ec-day{border:0;border-bottom:1px solid var(--line);min-width:0;transition:opacity .16s var(--ease-out), border-color .16s var(--ease-out);background:0 0;border-radius:0;gap:10px;padding:18px 0;display:grid}.travel-editor-day.ec-day.is-drag{opacity:.45}.travel-editor-day.ec-day.is-drop-target{border-bottom-color:var(--accent)}.travel-editor-day-head.ec-day-head{grid-template-columns:auto auto minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:8px 10px;min-width:0;display:grid}.travel-editor-day-drag.ec-day-handle{border-radius:var(--r);width:28px;height:28px;color:var(--fg-3);cursor:grab;transition:color .16s var(--ease-out), background .16s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}@media (hover:hover) and (pointer:fine){.travel-editor-day-drag.ec-day-handle:hover{color:var(--fg-2);background:var(--bg-sunk)}}.travel-editor-day-drag.ec-day-handle:active{cursor:grabbing;transform:scale(.97)}.travel-editor-day-collapse{border-radius:var(--r);width:28px;height:28px;color:var(--fg-3);cursor:pointer;transition:color .16s var(--ease-out), background .16s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}@media (hover:hover) and (pointer:fine){.travel-editor-day-collapse:hover{color:var(--fg-2);background:var(--bg-sunk)}}.travel-editor-day-collapse:active{transform:scale(.97)}.travel-editor-day-chevron{transition:transform .18s var(--ease-out)}.travel-editor-day.is-collapsed .travel-editor-day-chevron{transform:rotate(-90deg)}.travel-editor-day.is-collapsed .travel-editor-day-body{display:none}.travel-editor-day-label-wrap{cursor:pointer;gap:2px;min-width:0;display:grid}.travel-editor-day-label-text{font:500 11px/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.travel-editor-day-date.ec-day-date{width:100%;min-width:0;font:500 11px/1.2 var(--font-mono);letter-spacing:.04em;color:var(--fg-2);opacity:0;pointer-events:none;background:0 0;border:0;height:0;padding:0;overflow:hidden}.travel-editor-day-label-wrap:focus-within .travel-editor-day-date.ec-day-date,.travel-editor-day-date.ec-day-date:focus{opacity:1;pointer-events:auto;border-bottom:1px solid var(--line);height:auto;padding:4px 0}.travel-editor-day-title.ec-day-title{min-width:0}.travel-editor-icon-btn{border-radius:var(--r);width:28px;min-width:28px;height:28px;min-height:28px;color:var(--fg-3);cursor:pointer;transition:color .16s var(--ease-out), background .16s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}@media (hover:hover) and (pointer:fine){.travel-editor-icon-btn:hover{color:var(--fg-2);background:var(--bg-sunk)}}.travel-editor-icon-btn:active{transform:scale(.97)}.travel-editor-day-body{gap:10px;min-width:0;padding-left:36px;display:grid}.travel-editor-activities.ec-stops{gap:0;min-width:0;margin:0;padding:0;list-style:none;display:grid}.travel-editor-activity.ec-stop{border-bottom:1px solid var(--line);min-width:0;display:block}.travel-editor-activity.ec-stop:last-child{border-bottom:0}.travel-editor-activity-row{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:10px;min-width:0;padding:6px 0;display:grid}.travel-editor-add-day,.travel-editor-add-activity{min-height:44px;font:500 12px/1 var(--font-mono);letter-spacing:.04em;color:var(--fg-3);cursor:pointer;transition:color .16s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;justify-self:flex-start;align-items:center;padding:10px 0;display:inline-flex}.travel-editor-add-day:before,.travel-editor-add-activity:before{content:"+";color:var(--accent);margin-right:6px}@media (hover:hover) and (pointer:fine){.travel-editor-add-day:hover,.travel-editor-add-activity:hover{color:var(--fg-2)}}.travel-editor-add-day:active,.travel-editor-add-activity:active{transform:scale(.97)}.travel-editor-add-activity{padding-left:36px}.prog-template-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.prog-template{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--bg-elev);text-align:left;cursor:pointer;transition:border-color .14s var(--ease-out), transform .14s var(--ease-out);gap:4px;padding:14px 16px;display:grid}.prog-template:hover{border-color:var(--accent);transform:translateY(-1px)}.prog-template:active{transform:scale(.98)}.prog-template-name{font:500 14px/1.2 var(--font-sans);color:var(--fg)}.prog-template-meta{font:400 11px/1.3 var(--font-mono);color:var(--fg-3)}.prog-sections{gap:12px;display:grid}.prog-section-edit{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-elev);gap:10px;padding:14px 16px;display:grid}.prog-section-edit-head{grid-template-columns:1fr 28px;align-items:center;gap:8px;display:grid}.prog-section-title{font:380 18px/1.2 var(--font-serif);padding:6px 10px}.prog-section-lines{gap:6px;display:grid}.prog-section-line{grid-template-columns:1fr 28px;align-items:start;gap:6px;display:grid}.prog-habits-edit{gap:6px;padding:0;list-style:none;display:grid}.prog-habit-edit{grid-template-columns:1fr 28px;align-items:center;gap:6px;display:grid}.view-editor[data-view=letter-editor] .editor-shell{grid-template-rows:auto 1fr;display:grid}.letter-editor-bar{z-index:10;min-height:var(--topbar-h);border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .85);-webkit-backdrop-filter:saturate(180%)blur(14px);justify-content:space-between;align-items:center;gap:10px;padding:8px 20px 8px 12px;display:flex;position:sticky;top:0}.letter-editor-bar-focus{flex-direction:column;flex:auto;align-items:center;gap:2px;min-width:0;padding:0 8px;display:flex}.letter-editor-kicker{font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-2);white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.letter-editor-route{font:500 11px/1 var(--font-mono);letter-spacing:.04em;text-transform:lowercase;color:var(--fg-3);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;max-width:100%;transition:color .16s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;padding:0;display:none;overflow:hidden}.letter-editor-route:hover{color:var(--fg-2)}.letter-editor-route:active{transform:scale(.97)}.letter-editor-back{padding:0 var(--btn-quiet-px);flex-shrink:0;gap:4px}.letter-editor-back-icon{color:var(--fg-3);flex-shrink:0}.letter-editor-back-label{letter-spacing:-.01em}.letter-editor-bar-actions{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.letter-editor-save,.letter-editor-send{flex-shrink:0}.letter-editor-send-meta{font:500 11px/1 var(--font-mono);letter-spacing:.02em;opacity:.72}.letter-editor-send-label,.letter-editor-send-meta{display:inline}.editor-bar .btn-quiet,.editor-bar .editor-back-btn.btn-quiet{height:var(--btn-quiet-h);min-height:var(--btn-quiet-h)}.editor-section-head .btn-quiet{flex-shrink:0}.travel-empty .btn-quiet{margin-top:4px}.letter-from-to{align-self:flex-start;margin-bottom:16px}.editor-page--letter{max-width:720px}.letter-editor-subject{width:100%;font:380 clamp(26px, 3.5vw, 36px)/1.16 var(--font-serif);font-variation-settings:"opsz" 64;letter-spacing:-.025em;color:var(--fg);border:0;border-bottom:1px solid var(--line);background:0 0;outline:none;margin-bottom:18px;padding:12px 0}.letter-editor-subject::placeholder{color:var(--fg-3)}.letter-editor-body{min-height:60vh;font:380 17.5px/1.68 var(--font-serif);color:var(--fg-1);font-variation-settings:"opsz" 18, "SOFT" 50;font-optical-sizing:auto;outline:none}.letter-editor-body.is-empty:before{content:attr(data-placeholder);color:var(--fg-3);pointer-events:none;font-style:italic;display:block}.letter-editor-body.is-empty>p:first-child:empty:last-child:before{content:none}.letter-editor-body:focus.is-empty:before{opacity:.55}.letter-editor-body.is-drop{background:oklch(from var(--accent) l c h / .05);border-radius:var(--r-md)}.letter-editor-body p{margin:16px 0}.letter-editor-body h2{font:380 24px/1.2 var(--font-serif);font-variation-settings:"opsz" 36;letter-spacing:-.015em;margin:32px 0 12px}.letter-editor-body h3{font:500 16px/1.3 var(--font-sans);color:var(--fg-1);letter-spacing:-.01em;margin:28px 0 10px}.letter-editor-body blockquote{border-left:2px solid var(--accent);font:400 17px/1.6 var(--font-serif);color:var(--fg-1);margin:20px 0;padding:4px 0 4px 18px;font-style:italic}.letter-editor-body figure{-webkit-user-select:none;user-select:none;margin:24px 0}.letter-editor-body figure img{border-radius:var(--r-lg);background:var(--bg-sunk);width:100%;display:block}.letter-editor-body figcaption{font:400 12.5px/1.45 var(--font-sans);color:var(--fg-3);outline:none;margin-top:8px}.letter-editor-body figcaption:empty:before{content:attr(data-placeholder, "caption");color:var(--fg-3);opacity:.5}.letter-editor-body hr{border:0;border-top:1px solid var(--line-2);width:80px;margin:28px auto}.letter-editor-body a{color:var(--accent);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.from-to-pill{background:var(--bg-sunk);border:1px solid var(--line);font:400 12px/1 var(--font-sans);color:var(--fg-1);cursor:pointer;transition:border-color .14s var(--ease-out);border-radius:99px;align-items:center;gap:8px;padding:4px 10px;display:inline-flex}.from-to-pill:hover{border-color:var(--line-3)}.from-to-pill:active{transform:scale(.98)}.from-to-pill-chip{align-items:center;gap:4px;display:inline-flex}.from-to-pill-chip .avatar.sm{background:var(--bg,var(--accent));width:18px;height:18px;color:var(--bg-elev);font:500 10px/1 var(--font-sans);border-radius:50%;place-items:center;display:inline-grid}.from-to-arrow{color:var(--fg-3)}.sel-toolbar{z-index:200;color:#f8f8f8;color:lab(97.68% -.0000298023 .0000119209);opacity:0;transform-origin:50% 100%;transition:opacity .14s var(--ease-out), transform .14s var(--ease-out);pointer-events:none;background:#15110d;background:lab(5.26703% .977032 2.52232);border-radius:8px;align-items:center;gap:2px;padding:4px;display:inline-flex;position:fixed;transform:translateY(4px)scale(.96);box-shadow:0 8px 28px #0000005c;box-shadow:0 8px 28px lab(0% 0 0/.36)}.sel-toolbar.is-open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.sel-toolbar button{color:inherit;cursor:pointer;font:500 12px/1 var(--font-sans);min-width:28px;min-height:28px;transition:background .12s var(--ease-out);background:0 0;border:0;border-radius:6px;place-items:center;padding:6px 10px;display:inline-grid}.sel-toolbar button:hover{background:#f8f8f81f;background:lab(97.68% -.0000298023 .0000119209/.12)}.sel-toolbar button:active{transform:scale(.92)}.sel-sep{background:#f8f8f82e;background:lab(97.68% -.0000298023 .0000119209/.18);width:1px;height:16px;margin:0 4px}.slash-menu{z-index:210;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);min-width:220px;box-shadow:var(--shadow-lg);opacity:0;transform-origin:0 0;transition:opacity .14s var(--ease-out), transform .14s var(--ease-out);gap:2px;padding:6px;display:grid;position:fixed;transform:translateY(-4px)scale(.97)}.slash-menu.is-open{opacity:1;transform:translateY(0)scale(1)}.slash-item{border-radius:var(--r);text-align:left;cursor:pointer;transition:background .12s var(--ease-out);background:0 0;border:0;grid-template-columns:32px 1fr;align-items:center;gap:10px;padding:8px 10px;display:grid}.slash-item:hover,.slash-item.is-active{background:var(--bg-sunk)}.slash-item:active{transform:scale(.98)}.slash-glyph{background:var(--bg-sunk);border-radius:var(--r);width:28px;height:28px;font:500 13px/1 var(--font-mono);color:var(--fg-2);place-items:center;display:grid}.slash-body{gap:1px;display:grid}.slash-title{font:500 13px/1.2 var(--font-sans);color:var(--fg)}.slash-sub{font:400 11px/1.2 var(--font-mono);color:var(--fg-3)}.reader-figure{margin:28px 0}.reader-figure img{border-radius:var(--r-lg);background:var(--bg-sunk);width:100%;display:block}.reader-figure figcaption{font:400 12.5px/1.5 var(--font-sans);color:var(--fg-3);margin-top:8px}.reader-quote{border-left:2px solid var(--accent);font:400 17px/1.6 var(--font-serif);color:var(--fg-1);margin:24px 0;padding-left:18px;font-style:italic}.reader-h2{font:380 26px/1.16 var(--font-serif);font-variation-settings:"opsz" 36;letter-spacing:-.02em;margin:36px 0 14px}.reader-h3{font:500 16px/1.3 var(--font-sans);color:var(--fg-1);margin:28px 0 10px}.reader-hr{border:0;border-top:1px solid var(--line-2);width:80px;margin:32px auto}.draft-pill{background:oklch(from var(--warn) l c h / .15);color:oklch(from var(--warn) l c h / .9);font:500 9.5px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:99px;padding:1px 6px;display:inline-block}.letters-list-wrap{border-right:1px solid var(--line);background:var(--bg);grid-template-rows:auto 1fr;min-width:0;display:grid;overflow:hidden}.letters-rail-head{z-index:3;border-bottom:1px solid var(--line);background:oklch(from var(--bg) l c h / .88);-webkit-backdrop-filter:saturate(180%)blur(14px);grid-template-columns:1fr auto;align-items:center;gap:8px;padding:18px 16px 14px;display:grid;position:sticky;top:0}.letters-rail-head-text{gap:0;min-width:0;display:grid}.letters-rail-kicker{color:var(--fg-3);margin-bottom:8px}.letters-rail-sub{font:400 12px/1.35 var(--font-sans);color:var(--fg-2);font-variant-numeric:tabular-nums;letter-spacing:-.005em;margin:0}.letters-rail-head .letters-new-btn{align-self:center}.letters-list{-webkit-overflow-scrolling:touch;align-content:start;gap:0;padding:0 0 80px;display:grid;overflow-y:auto}.letters-month{background:var(--bg);padding:14px 16px 5px}.letters-month:first-child{padding-top:10px}.letters-month-label{font:500 10.5px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);margin:0}.letters-empty{text-align:center;place-content:center;gap:10px;min-height:min(52vh,420px);padding:48px 24px;display:grid}.letters-empty-title{font:380 clamp(1.35rem, 3vw, 1.65rem)/1.15 var(--font-serif);font-variation-settings:"opsz" 48, "SOFT" 50;font-optical-sizing:auto;letter-spacing:-.02em;color:var(--fg);margin:0}.letters-empty-sub{font:400 13px/1.55 var(--font-sans);color:var(--fg-2);max-width:24ch;margin:0 auto}.letter-item{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;width:100%;min-height:44px;transition:background-color .14s var(--ease-out), transform .16s var(--ease-out);background:0 0;border-radius:0;grid-template-columns:10px minmax(0,1fr);align-items:start;gap:8px;padding:11px 16px 12px;display:grid;position:relative}.letter-item-indicator{pointer-events:none;background:0 0;border-radius:50%;justify-self:center;width:5px;height:5px;margin-top:6px}.letter-item.is-unread .letter-item-indicator{background:var(--accent);opacity:.78}.letter-item.is-active{background:var(--bg-sunk)}.letter-item.is-active:before{content:"";background:var(--fg);border-radius:0 2px 2px 0;width:2px;position:absolute;top:6px;bottom:6px;left:0}.letter-item.is-draft{background:oklch(from var(--bg-sunk) l c h / .35)}.letter-item.is-draft.is-active{background:var(--bg-sunk)}.letter-item:active{transform:scale(.97)}.letter-row{gap:3px;min-width:0;display:grid}.letter-row-top{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:10px;display:grid}.letter-from{font:450 13px/1.35 var(--font-sans);letter-spacing:-.005em;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.letter-item.is-unread .letter-from{color:var(--fg);font-weight:500}.letter-date{font:400 11px/1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--fg-3);white-space:nowrap}.letter-subject{font:500 13px/1.35 var(--font-sans);letter-spacing:-.006em;color:var(--fg);-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.letter-item.is-unread .letter-subject{color:var(--fg)}.letter-preview{font:400 12px/1.4 var(--font-sans);color:var(--fg-2);-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.letter-item:not(:has(.letter-preview)){padding-bottom:11px}.letter-item .draft-pill{font:500 10px/1 var(--font-mono);letter-spacing:.04em;text-transform:lowercase;background:oklch(from var(--warn) l c h / .1);border:1px solid oklch(from var(--warn) l c h / .28);color:oklch(from var(--warn) l c h / .9);border-radius:100px;padding:2px 6px}@media (hover:hover) and (pointer:fine){.letter-item:hover,.letter-item.is-active:hover{background:var(--bg-sunk)}}.inline-menu{z-index:60;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);min-width:180px;box-shadow:var(--shadow-lg);padding:4px;position:fixed}.popover-item.is-danger{color:oklch(from var(--accent) l c h / .9)}@media (min-width:881px){.detail-drawer-head{justify-content:flex-end;min-height:48px;padding-top:0;display:flex}.detail-drawer-back{display:none}.detail-drawer-x{display:grid}}.drawer-backdrop{z-index:49;-webkit-backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .25s var(--ease-out);background:#0000006b;background:lab(0% 0 0/.42);position:fixed;inset:0}.drawer-backdrop:not([hidden]){display:block}.sidebar-drawer-head,.sidebar-mobile-foot{display:none}.sidebar-inner{flex-direction:column;height:100%;min-height:0;display:flex}@media (min-width:881px){.drawer-backdrop,.app.sidebar-open .drawer-backdrop{opacity:0!important;pointer-events:none!important;visibility:hidden!important}.app:not(.sidebar-collapsed) .sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);max-width:var(--sidebar-w);visibility:visible;pointer-events:auto;overflow:hidden auto;transform:none}.app.sidebar-open .sidebar{transform:none}.sidebar-drawer-head,.sidebar-mobile-foot{display:none!important}.sidebar-inner{flex-direction:column;height:100%;min-height:0;display:flex}.sidebar-mobile-body{flex-direction:column;flex:auto;min-height:0;display:flex}.sidebar .side-item{grid-template-columns:16px minmax(0,1fr) auto;gap:8px;height:28px;padding:0 8px;font-size:13px;font-weight:400}.sidebar .side-title{opacity:1;visibility:visible;color:inherit;font-size:13px;font-weight:400}.sidebar .side-foot{display:block}}body.sidebar-scroll-lock{touch-action:none;overflow:hidden}@media (max-width:880px){kbd,.cmd-meta,.cx-hint,.cx-types-foot,.cmd-foot,.door-foot .kbd-hint{display:none!important}.cx-esc:after{content:"Close";font:500 12px/1 var(--font-sans);color:var(--fg-2)}.cx-type-tile{grid-template-columns:28px 1fr}.cmd-item{grid-template-columns:16px 1fr}.app{grid-template-rows:calc(var(--topbar-h) + var(--safe-top)) 1fr;min-height:100dvh;min-height:-webkit-fill-available}.topbar{padding-top:var(--safe-top);align-self:start}.topbar:before{content:"";left:0;right:0;top:calc(-1 * var(--safe-top));height:var(--safe-top);background:var(--bg);pointer-events:none;position:absolute}html.is-mobile-shell:before{content:"";background:var(--bg);pointer-events:none;z-index:-1;position:fixed;inset:0}body.is-mobile-shell .main{padding-bottom:0}.sidebar-inner{flex-direction:column;flex:auto;height:100%;min-height:0;display:flex;overflow:hidden}.sidebar-drawer-head{min-height:calc(44px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 6px 0 2px;background:var(--bg);border-bottom:0;flex-shrink:0;align-items:center;gap:2px;display:flex}.sidebar-drawer-brand{display:none}.sidebar-drawer-wordmark{font:500 14px/1 var(--font-sans);letter-spacing:-.02em;color:var(--fg);margin:0}.sidebar-close{width:40px;min-width:40px;height:40px;min-height:40px;color:var(--fg-2);transition:transform .16s var(--ease-out), background-color .16s var(--ease-out), color .16s var(--ease-out);background:0 0;border:0;flex-shrink:0}.sidebar-close:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.sidebar-close:hover{background:var(--bg-sunk);color:var(--fg)}}.app .sidebar{z-index:50;width:100%;max-width:none;height:100dvh;max-height:100dvh;transition:transform .24s var(--ease-drawer);background:var(--bg);box-shadow:none;box-sizing:border-box;border-right:0;flex-direction:column;padding:0;display:flex;position:fixed;inset:0;overflow:hidden;transform:translate(-100%)}.app:not(.sidebar-open) .sidebar{pointer-events:none}.app.sidebar-open .sidebar{z-index:52;transform:translate(0)}.app.sidebar-open .drawer-backdrop{z-index:51;opacity:1;pointer-events:auto}.app .sidebar-nav.sidebar-nav--mobile{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;justify-content:flex-start;gap:0;min-height:0;padding:2px 0 6px;display:flex;overflow:hidden auto}.app .sidebar .sidebar-mobile-block,.app .sidebar .side-group{border:0;flex-direction:column;flex:none;margin:0;padding:0;display:flex}.app .sidebar .sidebar-mobile-block+.sidebar-mobile-block{border-top:1px solid var(--line);margin-top:2px;padding-top:6px}.app .sidebar .sidebar-mobile-block.is-solo{padding-top:4px}.app .sidebar .sidebar-mobile-block.is-solo .sidebar-section-nav{padding-top:0}.app .sidebar .sidebar-section-label{font:500 10px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);flex-shrink:0;margin:0;padding:8px 14px 3px}.app .sidebar .sidebar-section-nav{flex-direction:column;flex:none;gap:1px;padding:0 6px;display:flex}.app .sidebar .side-item{border-radius:var(--r);letter-spacing:-.01em;height:42px;min-height:42px;max-height:42px;color:var(--fg-1);transition:background-color .15s var(--ease-out), color .15s var(--ease-out), transform .16s var(--ease-out);flex:none;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:10px;margin-inline:0;padding:0 8px;font-size:14px;font-weight:400}.app .sidebar .side-item:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.app .sidebar .side-item:hover{background:var(--bg-sunk);color:var(--fg)}}.app .sidebar .side-item.is-active{background:var(--bg-sunk);color:var(--fg)}.app .sidebar .side-item.is-active:before{background:var(--accent);border-radius:1px;width:2px;top:10px;bottom:10px;left:0}.app .sidebar .side-ic,.app .sidebar .side-ic svg{width:16px;height:16px}.app .sidebar .side-glyph{font-size:11px}.app .sidebar .side-title{color:inherit;font-size:14px;font-weight:400;line-height:1.2}.app .sidebar .side-pill{padding:2px 6px;font-size:10px}.app .sidebar .side-foot{display:none}.sidebar-mobile-foot{min-height:0;padding:8px 14px;padding-bottom:max(10px, env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:var(--bg);flex-shrink:0;justify-content:flex-start;align-items:center;display:flex}@media (max-height:740px){.sidebar-drawer-head{min-height:calc(40px + env(safe-area-inset-top,0px))}.app .sidebar .sidebar-section-label{letter-spacing:.07em;padding:6px 14px 2px;font-size:9px}.app .sidebar .side-item{height:40px;min-height:40px;max-height:40px;font-size:13.5px}.sidebar-mobile-foot{padding-top:6px;padding-bottom:max(8px, env(safe-area-inset-bottom,0px))}}@media (max-height:680px){.app .sidebar-nav.sidebar-nav--mobile{padding:0 0 4px}.app .sidebar .side-item{gap:9px;height:38px;min-height:38px;max-height:38px;font-size:13px}.sidebar-drawer-wordmark{font-size:13px}}.sidebar-foot-btn{display:none}.sidebar-version-chip{font:400 10px/1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--fg-3);background:0 0;border:0;padding:0}.drawer-backdrop{-webkit-backdrop-filter:blur(4px);transition:opacity .22s var(--ease-out);background:#00000047;background:lab(0% 0 0/.28)}@media (prefers-reduced-motion:reduce){.app:not(.sidebar-open) .sidebar{opacity:0;pointer-events:none;transition:opacity .18s;transform:none}.app.sidebar-open .sidebar{opacity:1;pointer-events:auto;transition:opacity .18s;transform:none}.drawer-backdrop{transition:opacity .18s}}.topbar{grid-template-columns:auto 1fr auto;gap:8px;padding:0 12px}.search-trigger{background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;padding:0;display:inline-flex}.search-trigger span,.search-trigger kbd,.topbar-right .icon-btn.whats-new-btn{display:none}:root{--btn-quiet-h:36px;--btn-quiet-px:12px;--toolbar-row-h:40px}.travel-empty .btn-quiet,.letters-empty .btn-quiet{--btn-quiet-h:44px;min-width:44px;padding:0 14px}#theme-toggle{display:none}#popover-theme{min-height:44px;padding-top:10px;padding-bottom:10px}.cmd{flex-direction:column;width:min(620px,100% - 20px);max-height:min(72vh,520px);display:flex;top:50%;bottom:auto;transform:translate(-50%,calc(12px - 50%))scale(.98)}.cmd.is-open{transform:translate(-50%,-50%)scale(1)}.cmd-list{flex:auto;min-height:0;max-height:min(48vh,360px)}.cmd-foot,.cmd-head kbd,.cmd-item .cmd-meta,.course-rail,.course-outline,.travel-outline{display:none}.view-course.show-rail .course-rail,.view-course.show-outline .course-outline{z-index:5;display:block;position:absolute;inset:0}.editor-bar{padding:8px 12px}.editor-block-row{grid-template-columns:1fr;gap:12px}.editor-cover{aspect-ratio:16/9}.detail-drawer{border-left:0;width:calc(100vw - 48px);max-width:calc(100vw - 48px)}.detail-drawer-head{display:flex}.detail-drawer-back{display:inline-flex}.detail-drawer-x{display:none}.detail-drawer-body{padding-bottom:max(16px, env(safe-area-inset-bottom,0px))}.seg-btn{height:calc(var(--btn-quiet-h) - 2px);min-height:calc(var(--btn-quiet-h) - 2px);padding:0 12px}.seg.sm .seg-btn{height:var(--btn-quiet-h);min-height:var(--btn-quiet-h);padding:0 10px}.travel-filter-seg .seg-btn{height:calc(var(--toolbar-row-h) - 4px);min-height:calc(var(--toolbar-row-h) - 4px);letter-spacing:.06em;padding:0 4px;font-size:9.5px}.icon-btn{min-width:38px;min-height:38px}.view-bucket .header-actions{flex-wrap:wrap;gap:8px}.bucket-body,.bucket-list{width:100%;min-width:0}.bucket-item{grid-template-columns:8px minmax(0,1fr) auto;grid-template-areas:"dot main pill";column-gap:12px;min-height:76px;padding:14px 4px}.bucket-thumb{display:none}.bucket-row-main{min-width:0}.bucket-title{white-space:normal;-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.watch-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){body.is-mobile-shell .view{padding:16px 14px var(--mobile-bottom-gutter)}.view-header{margin-bottom:18px}.display,.display.sm{font-size:clamp(22px,6vw,28px)}body.is-mobile-shell .view[data-view=hall]{padding-top:20px}.hall-hero{margin-bottom:40px;padding-top:0}.hall-greeting-kicker{margin-bottom:20px}.hall-greeting-title{max-width:none;margin-bottom:14px;font-size:clamp(2.65rem,9vw,4rem);line-height:1}.hall-greeting-subline{max-width:28ch;font-size:14px}.hall-greeting-rule{margin-top:18px}.view-travel{padding:0}.travel-page-cover{max-height:160px}.view-programmes{padding:0}body.is-mobile-shell .view.view-programmes{padding-inline:0;padding-top:0}.prog-shell{--prog-gutter:16px;padding:18px var(--prog-gutter) var(--mobile-bottom-gutter)}.prog-stage{padding-top:0}.prog-deck-wrap{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scroll-padding-inline:var(--prog-gutter);padding-bottom:4px;overflow-x:auto}.prog-deck{flex-direction:row;gap:12px;width:max-content;min-width:100%;padding-bottom:8px;display:flex}.prog-deck>.prog-card{scroll-snap-align:start;flex:0 0 min(82vw,300px)}.countdown-grid,.watch-grid{grid-template-columns:1fr}.view-tasks .header-actions{flex-wrap:wrap;gap:8px;width:100%}.bucket-item{grid-template-columns:8px minmax(0,1fr) auto;grid-template-areas:"dot main pill";column-gap:12px;min-height:76px;padding:14px 4px}.bucket-thumb{display:none}.bucket-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.bucket-meta{font-size:10.5px}.bucket-status{min-width:64px;min-height:32px;padding:8px 10px;font-size:10px}.from-to-pill{padding:4px 8px;font-size:11px}.editor-input-title,.letter-editor-subject{font-size:24px}}@media (max-width:880px){body.is-editor-route .topbar{display:none}body.is-editor-route .app{grid-template-rows:1fr;height:100dvh;min-height:100dvh}body.is-editor-route .main{height:100%;min-height:0}body.is-editor-route .view-editor{z-index:25;background:var(--bg);width:100%;max-width:100%;height:100dvh;min-height:0;max-height:100dvh;padding:0;position:fixed;inset:0;overflow:hidden}.view-editor{max-width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0;overflow:hidden}.view-editor .editor-shell{grid-template-rows:auto minmax(0,1fr);width:100%;min-width:0;max-width:100%;height:100%;min-height:0;display:grid;position:absolute;inset:0;overflow:hidden}.view-editor[data-view=letter-editor] .editor-shell{grid-template-rows:auto minmax(0,1fr);display:grid}.view-editor .editor-page,.view-editor .editor-page--travel,.view-editor .editor-page--programme,.view-editor .editor-page--letter{box-sizing:border-box;-webkit-overflow-scrolling:touch;width:100%;min-width:0;max-width:100%;height:auto;min-height:0;max-height:none;padding:20px 14px max(28px, env(safe-area-inset-bottom));overflow:hidden auto}.view-editor[data-view=letter-editor] .editor-page--letter{padding:12px 18px max(28px, env(safe-area-inset-bottom))}.view-editor[data-view=letter-editor] .letter-from-to{display:none}.view-editor .editor-bar,.view-editor .letter-editor-bar{padding-left:max(12px, env(safe-area-inset-left));padding-right:max(12px, env(safe-area-inset-right));padding-top:max(8px, env(safe-area-inset-top));flex-shrink:0}.letter-editor-bar{grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1px 8px;min-height:0;padding-bottom:10px;display:grid}.letter-editor-back{grid-row:1/-1;align-self:center;min-width:44px;height:44px;min-height:44px;padding:0 10px}.letter-editor-bar-focus{grid-area:1/2/-1;align-self:center;align-items:flex-start;gap:3px;padding:0 4px 0 0}.letter-editor-kicker{text-align:left;letter-spacing:.08em;width:100%;color:var(--fg-2)}.letter-editor-route{text-align:left;border-top:0;width:100%;padding-top:0;display:block}.letter-editor-bar-actions{min-height:var(--toolbar-row-h);grid-area:1/3/-1;align-self:center;gap:6px}.letter-editor-save,.letter-editor-send{height:var(--btn-quiet-h);min-height:var(--btn-quiet-h)}.letter-editor-send{box-shadow:none;padding:0 12px;font-size:12.5px}.letter-editor-send-meta{display:none}.editor-bar{height:auto;min-height:var(--topbar-h);flex-wrap:nowrap;align-items:center;gap:6px;overflow:hidden}.editor-bar-left{flex:auto;min-width:0;overflow:hidden}.editor-bar-right{flex:none;gap:6px;min-width:0}.editor-bar .editor-kicker,.view-editor[data-view=travel-editor] #travel-editor-cancel,.view-editor[data-view=programme-editor] #programme-editor-cancel{display:none}.editor-block,.editor-block-row,.editor-block-row>div,.editor-section,.editor-days,.ec-day,.ec-stops,.ec-stop{min-width:0;max-width:100%}.editor-input,.editor-input-title,textarea.editor-input,.letter-editor-subject,.letter-editor-body{box-sizing:border-box;min-width:0;max-width:100%}.editor-input[type=date]{width:100%;min-width:0}.editor-section-head{flex-wrap:wrap;align-items:center;gap:8px}.editor-section-head h2{flex:auto;min-width:0}.editor-page--travel .travel-editor-field,.editor-page--travel .travel-editor-day-date.ec-day-date{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.editor-page--travel .travel-editor-day-head.ec-day-head{grid-template-rows:auto auto auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 8px}.editor-page--travel .travel-editor-day-drag.ec-day-handle{display:none}.editor-page--travel .travel-editor-day-collapse{grid-area:1/1;width:36px;min-width:36px;height:36px;min-height:36px}.editor-page--travel .travel-editor-day-label-wrap{grid-area:1/2;min-width:0}.editor-page--travel .travel-editor-day-remove{grid-area:1/3;width:36px;min-width:36px;height:36px;min-height:36px}.editor-page--travel .travel-editor-day-date.ec-day-date{opacity:1;pointer-events:auto;grid-area:2/1/auto/-1;height:auto;padding:8px 0}.editor-page--travel .travel-editor-day-title.ec-day-title{grid-area:3/1/auto/-1}.editor-page--travel .travel-editor-day-body{padding-left:0}.editor-page--travel .travel-editor-activity-row{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr);gap:0;padding:8px 0}.editor-page--travel .travel-editor-activity-remove{grid-row:3;justify-self:end;width:36px;min-width:36px;height:36px;min-height:36px}.editor-page--travel .travel-editor-add-activity{padding-left:0}.view-editor[data-view=programme-editor] .ec-day-head{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:8px}.view-editor[data-view=programme-editor] .ec-day-handle{display:none}.view-editor[data-view=programme-editor] .ec-day-date{grid-area:2/1/auto/-1;width:100%}.view-editor[data-view=programme-editor] .ec-day-title{grid-area:3/1/auto/-1;width:100%}.view-editor[data-view=programme-editor] .ec-stop{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr);gap:6px}.view-editor[data-view=programme-editor] .ec-stop .icon-btn{grid-row:3;justify-self:end}.editor-label .dim{letter-spacing:.06em;margin-top:4px;font-size:10px;display:block}}@media (max-width:560px){.view-editor .editor-bar .btn-primary{padding:8px 12px;font-size:13px}.view-editor .editor-back-btn{padding:8px 10px;font-size:13px}}@media (max-width:880px){body.is-mobile-shell .view.view-lessons{padding:0;overflow:hidden}.view-lessons{background:var(--bg);max-width:100%;height:100%;min-height:0;padding:0;overflow:clip hidden}.lessons-shell{background:var(--bg);grid-template-rows:1fr;grid-template-columns:1fr;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;display:grid}.lessons-rail,.lesson-content{will-change:transform;width:100%;min-width:0;height:100%;min-height:0;max-height:none;transition:transform .22s var(--ease-drawer), opacity .2s var(--ease-out);backface-visibility:hidden;grid-area:1/1}.lessons-rail{--rail-gutter:16px;background:var(--bg);-webkit-overflow-scrolling:touch;border-bottom:0;border-right:0;grid-template-rows:auto 1fr;padding:0;display:grid;overflow:hidden}.lessons-list{min-height:0;padding:0 var(--rail-gutter) var(--mobile-bottom-gutter);-webkit-overflow-scrolling:touch;overflow-y:auto}.lesson-content{opacity:0;pointer-events:none;background:var(--bg);flex-direction:column;max-width:none;padding:0;display:flex;position:relative;overflow:hidden;transform:translate(100%)}body[data-lessons-pane=list] .lessons-rail{opacity:1;pointer-events:auto;transform:translate(0)}body[data-lessons-pane=list] .lesson-content{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(100%)}body[data-lessons-pane=detail] .lessons-rail{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(-24%)}body[data-lessons-pane=detail] .lesson-content{opacity:1;pointer-events:auto;transform:translate(0)}body[data-lessons-pane=detail] .lessons-detail-bar.crumb-bar{display:flex}.lesson-detail-inner{padding:20px 16px var(--mobile-bottom-gutter);box-sizing:border-box;max-width:none;margin:0}.lesson-content h2.lesson-title{font-size:clamp(1.55rem,5.5vw,2rem)}.lesson-item{opacity:0;min-height:44px;animation:rise .36s var(--ease-out) both;animation-delay:calc(var(--i,0) * 32ms);transition:background-color .12s var(--ease-out), color .12s var(--ease-out);align-items:center;padding:10px 12px;transform:translateY(8px)}.lesson-item:active{background-color:oklch(from var(--accent) l c h / .06);transform:none}.lesson-item.is-active{background:oklch(from var(--accent) l c h / .09);box-shadow:none}.lessons-rail-head{padding:calc(8px + env(safe-area-inset-top,0px)) var(--rail-gutter) 12px;background:oklch(from var(--bg) l c h / .88)}.lessons-rail-kicker,.lessons-rail-title,.lessons-rail-sub,.lessons-rail-teach{display:block}.lessons-rail-kicker{display:inline-flex}.lessons-rail-lang,.lessons-rail-native,.lessons-banner{display:none}.unit-label,.lesson-item{padding-left:0;padding-right:0}}@media (min-width:881px){.view-travel .travel-rail,.view-travel .travel-detail{opacity:1;pointer-events:auto;will-change:auto;grid-area:auto;transform:none}.view-travel .travel-rail{border-right:1px solid var(--line);overflow:hidden}.view-travel .travel-detail{flex-direction:column;min-height:0;display:flex;overflow:hidden}.travel-detail-bar{display:none!important}.view-letters .letters-list-wrap,.view-letters .letter-reader{will-change:auto;grid-area:auto;opacity:1!important;pointer-events:auto!important;transform:none!important}.view-letters .letter-reader .reader-bar{display:none!important}.view-lessons .lessons-rail,.view-lessons .lesson-content{will-change:auto;grid-area:auto;width:auto;height:auto;opacity:1!important;pointer-events:auto!important;transform:none!important}.view-lessons .lessons-detail-bar.crumb-bar{display:none!important}.view-lessons .lessons-rail-kicker,.view-lessons .lessons-rail-title,.view-lessons .lessons-rail-sub,.view-lessons .lessons-rail-teach{display:none}.view-lessons .lessons-rail-lang,.view-lessons .lessons-rail-native,.view-lessons .lessons-banner{display:block}}.view-travel .travel-rail-head{padding:18px var(--rail-gutter,16px) 14px}.view-travel .travel-rail-kicker{color:var(--fg-3);margin-bottom:8px;display:inline-flex}.view-travel .travel-rail-title,.view-travel .travel-rail-title-mobile{display:none}.view-travel .travel-rail-sub{margin:0;display:block}.view-travel .travel-detail-inner{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-sizing:border-box;flex:auto;width:100%;max-width:720px;min-height:0;margin:0 auto;padding:24px clamp(20px,4vw,32px) 96px;overflow:hidden auto}.travel-detail-bar,.lessons-detail-bar,.course-detail-bar{z-index:4;flex-shrink:0;display:none;position:sticky;top:0}@media (max-width:880px){.view-travel{--rail-gutter:16px;grid-template-rows:1fr;grid-template-columns:1fr;height:100%;min-height:0;padding:0;position:absolute;inset:0;overflow:hidden}.view-travel .travel-rail,.view-travel .travel-detail{will-change:transform;width:100%;min-width:0;height:100%;max-height:none;transition:transform .22s var(--ease-drawer), opacity .2s var(--ease-out);backface-visibility:hidden;grid-area:1/1}.view-travel .travel-rail{background:var(--bg);opacity:1;pointer-events:auto;-webkit-overflow-scrolling:touch;border-bottom:0;border-right:0;grid-template-rows:auto auto 1fr;padding:0;display:grid;overflow:hidden;transform:translate(0)}.view-travel .travel-detail{background:var(--bg);opacity:0;pointer-events:none;flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden;transform:translate(100%)}body[data-travel-pane=list] .view-travel .travel-rail{opacity:1;pointer-events:auto;transform:translate(0)}body[data-travel-pane=list] .view-travel .travel-detail{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(100%)}body[data-travel-pane=detail] .view-travel .travel-rail{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(-24%)}body[data-travel-pane=detail] .view-travel .travel-detail{opacity:1;pointer-events:auto;transform:translate(0)}body[data-travel-pane=detail] .travel-detail-bar.crumb-bar{display:flex}.view-travel .travel-rail-head{padding:calc(8px + env(safe-area-inset-top,0px)) var(--rail-gutter) 12px}.view-travel .travel-filter-bar{padding:10px var(--rail-gutter) 12px}.view-travel .travel-filter-seg .seg-btn{height:calc(var(--toolbar-row-h) - 4px);min-height:calc(var(--toolbar-row-h) - 4px);letter-spacing:.06em;padding:0 3px;font-size:9.5px}.view-travel .travel-rail-list{gap:0;padding:0}.travel-list{padding:0 0 var(--mobile-bottom-gutter);gap:0;min-width:0}.travel-unit-label{padding:14px var(--rail-gutter) 5px;font:500 10.5px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);background:var(--bg);margin:0}.view-travel .travel-row{min-height:44px;padding:11px var(--rail-gutter);background:var(--bg)}.view-travel .travel-row.is-active{background:var(--bg-sunk)}.view-travel .travel-row.is-active:before{background:var(--fg);top:8px;bottom:8px}.view-travel .travel-row-status{font-size:10px}.travel-rail-empty{padding:24px var(--rail-gutter);max-width:none;font-size:14px}.view-travel .travel-detail-inner{padding:20px 18px var(--mobile-bottom-gutter);max-width:none}.travel-detail-inner>.item-detail.travel-page{padding:0 0 var(--mobile-bottom-gutter);max-width:none}.main{overflow-x:clip}body.is-mobile-shell .view.view-course,.view.view-course{padding:0;overflow:clip hidden}.view-course{isolation:isolate;grid-template-rows:minmax(0,1fr);max-width:100%;height:100%;min-height:0;padding:0;overflow:clip hidden;grid-template-columns:1fr!important}.course-center{display:contents}.course-center>.course-toolbar,.view-course .course-toolbar{display:none!important}.course-detail-stack{will-change:transform;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;transition:transform .22s var(--ease-drawer), opacity .2s var(--ease-out);backface-visibility:hidden;background:var(--bg);flex-direction:column;grid-area:1/1;display:flex;overflow:clip hidden}.view-course.course-rail-hidden:not(.course-outline-hidden),.view-course.course-outline-hidden:not(.course-rail-hidden),.view-course.course-rail-hidden.course-outline-hidden,.view-course.course-rail-hidden:not(.course-outline-hidden) .course-center,.view-course.course-outline-hidden:not(.course-rail-hidden) .course-center{grid-template-columns:1fr!important}.course-outline{display:none!important}.course-rail{width:100%;min-width:0;max-width:100%;height:100%;max-height:none;padding-bottom:var(--mobile-bottom-gutter);-webkit-overflow-scrolling:touch;will-change:transform;transition:transform .22s var(--ease-drawer), opacity .2s var(--ease-out);backface-visibility:hidden;border-bottom:0;grid-area:1/1;align-content:start;overflow:clip auto;display:grid!important}.view-course.course-rail-hidden .course-rail{display:grid!important}body[data-course-pane=list] .course-rail{opacity:1;pointer-events:auto;transform:translate(0)}body[data-course-pane=list] .course-detail-stack{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(100%)}body[data-course-pane=detail] .course-rail{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(-24%)}body[data-course-pane=detail] .course-detail-stack{opacity:1;pointer-events:auto;transform:translate(0)}.view-course.course-flow .course-detail-stack{opacity:1;pointer-events:auto;transform:none}.course-mobile-shelf,.course-outline-strip{border-bottom:1px solid var(--line);background:oklch(from var(--bg-elev) l c h / .92);-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0;min-width:0;max-width:100%;display:block;overflow-x:auto}.course-mobile-shelf::-webkit-scrollbar{display:none}.course-outline-strip::-webkit-scrollbar{display:none}.course-mobile-shelf[hidden],.course-outline-strip[hidden]{display:none!important}.course-shelf-deck{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:none;flex-direction:row;gap:10px;width:max-content;min-width:100%;margin:0;padding:10px 12px 12px;list-style:none;display:flex;overflow-x:auto}.course-shelf-deck::-webkit-scrollbar{display:none}.course-shelf-card{scroll-snap-align:start;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg);cursor:pointer;text-align:left;min-height:44px;transition:transform .16s var(--ease-out), border-color .16s var(--ease-out), background .16s var(--ease-out);flex:0 0 min(78vw,260px);grid-template-columns:16px 1fr;align-items:start;gap:8px;padding:10px 12px;display:grid}.course-shelf-card:active{transform:scale(.97)}.course-shelf-card.is-active{border-color:oklch(from var(--accent) l c h / .35);background:oklch(from var(--accent) l c h / .06);box-shadow:inset 0 0 0 1px oklch(from var(--accent) l c h / .12)}.course-shelf-card-title{font:500 13px/1.35 var(--font-sans);color:var(--fg);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.course-outline-strip{padding:6px 0 8px}.course-outline-strip-label{font:500 9px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);padding:0 12px 6px;display:block}.course-outline-chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;gap:3px;margin:0;padding:0 12px;list-style:none;display:flex;overflow-x:auto}.course-outline-chips::-webkit-scrollbar{display:none}.course-outline-chip{min-height:22px;font:500 9px/1.2 var(--font-sans);letter-spacing:-.01em;color:var(--fg-2);background:var(--bg-sunk);border:1px solid var(--line);cursor:pointer;white-space:nowrap;transition:transform .16s var(--ease-out), color .16s var(--ease-out), background .16s var(--ease-out), border-color .16s var(--ease-out);border-radius:4px;flex:none;align-items:center;padding:3px 7px;display:inline-flex}.course-outline-chip:active{transform:scale(.97)}.course-outline-chip.is-active{color:var(--fg);background:oklch(from var(--accent) l c h / .1);border-color:oklch(from var(--accent) l c h / .28)}.outline-empty{color:var(--fg-3);font:400 11px/1.4 var(--font-mono);white-space:nowrap;padding:6px 12px}body[data-course-pane=detail] .course-detail-bar.crumb-bar{flex-wrap:nowrap;align-items:center;height:44px;min-height:44px;padding-top:0;padding-bottom:0;display:flex}body[data-course-pane=list] .course-detail-bar{display:none}.course-detail-head{display:contents}.course-detail-bar .course-detail-title{text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;max-width:100%;line-height:1;overflow:hidden}.course-detail-crumb-wrap{display:none!important}.course-detail-stack>.course-pane{-webkit-overflow-scrolling:touch;flex:1;width:100%;min-width:0;max-width:100%;height:auto;min-height:0;max-height:none;overflow:clip auto}.course-pane>.paper-detail,.course-pane>.item-detail,.course-pane .prose,.course-pane .paper-body,.course-pane .paper-meta,.course-pane .tab-mindmap,.course-pane .mindmap-canvas{box-sizing:border-box;min-width:0;max-width:100%}.course-pane .paper-tabs{scrollbar-width:none;max-width:100%;overflow-x:auto}.course-pane .paper-tabs::-webkit-scrollbar{display:none}.course-detail-stack>.course-mobile-shelf,.course-detail-stack>.course-outline-strip,.course-detail-stack>.course-detail-bar{flex-shrink:0}.course-pane>.paper-detail,.course-pane>.item-detail{padding:24px 16px var(--mobile-bottom-gutter)}.course-pane .paper-title,.course-pane>.item-detail>h1{display:none}.view-course.course-flow .course-pane>.paper-detail,.view-course.course-flow .course-pane>.item-detail{padding-bottom:calc(var(--mobile-bottom-gutter) + 16px)}}@media (hover:hover) and (pointer:fine){.lesson-item:hover{background:var(--bg-sunk);color:var(--fg)}.crumb-bar-back:hover{color:oklch(from var(--accent) calc(l + .04) c h)}.travel-back:hover{color:var(--fg)}.view-travel .travel-row:hover{background:var(--bg-sunk)}.travel-filter-seg .seg-btn:hover{color:var(--fg-2);background:var(--bg-sunk)}}@media (max-width:880px) and (prefers-reduced-motion:reduce){.lessons-rail,.lesson-content,.travel-rail,.travel-detail,.letters-list-wrap,.letter-reader{transition:opacity .16s!important;transform:none!important}body[data-lessons-pane=detail] .lessons-rail,body[data-lessons-pane=list] .lesson-content,body[data-travel-pane=detail] .travel-rail,body[data-travel-pane=list] .travel-detail,body[data-letters-pane=reader] .letters-list-wrap,body[data-letters-pane=list] .letter-reader{opacity:0;pointer-events:none}body[data-lessons-pane=list] .lessons-rail,body[data-lessons-pane=detail] .lesson-content,body[data-travel-pane=list] .travel-rail,body[data-travel-pane=detail] .travel-detail,body[data-letters-pane=list] .letters-list-wrap,body[data-letters-pane=reader] .letter-reader{opacity:1;pointer-events:auto}.lesson-item,.view-travel .travel-row,.letter-item{opacity:1;animation:none;transform:none}.lesson-item:active,.view-travel .travel-row:active,.letter-item:active{transform:none}.course-rail,.course-detail-stack{transition:opacity .16s!important;transform:none!important}body[data-course-pane=detail] .course-rail,body[data-course-pane=list] .course-detail-stack{opacity:0;pointer-events:none}body[data-course-pane=list] .course-rail,body[data-course-pane=detail] .course-detail-stack{opacity:1;pointer-events:auto}}.reader-bar{display:none}.reader-more-popover{transform-origin:100% 0;z-index:30;min-width:220px;position:absolute;top:calc(100% + 4px);right:8px}@media (max-width:880px){.view-letters{grid-template-rows:1fr;grid-template-columns:1fr;height:100%;min-height:0;padding:0}.letters-list-wrap,.letter-reader{will-change:transform;width:100%;min-width:0;height:100%;min-height:0;max-height:none;transition:transform .28s var(--ease-drawer), opacity .2s var(--ease-out);backface-visibility:hidden;border-bottom:0;grid-area:1/1}.letters-list-wrap{background:var(--bg);opacity:1;pointer-events:auto;border-right:0;grid-template-rows:auto 1fr;display:grid;transform:translate(0)}.letter-reader{opacity:0;pointer-events:none;background:var(--bg);position:relative;transform:translate(100%)}body[data-letters-pane=list] .letters-list-wrap{opacity:1;pointer-events:auto;transform:translate(0)}body[data-letters-pane=list] .letter-reader{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(100%)}body[data-letters-pane=reader] .letters-list-wrap{opacity:0;pointer-events:none;transition:transform .2s var(--ease-drawer), opacity .16s var(--ease-out);transform:translate(-24%)}body[data-letters-pane=reader] .letter-reader{opacity:1;pointer-events:auto;transform:translate(0)}body[data-letters-pane=reader] .letter-reader.is-dragging{transition:none}body[data-letters-pane=reader] .reader-bar.crumb-bar{z-index:4;display:flex;position:sticky;top:0}.reader-bar.crumb-bar--spread .crumb-bar-current{padding-right:4px}.reader-more{width:44px;min-width:44px;height:44px;color:var(--fg-1);cursor:pointer;transition:transform .16s var(--ease-out), background-color .12s var(--ease-out);background:0 0;border:0;border-radius:999px;place-items:center;display:grid}.reader-more:active{transform:scale(.92)}.letter-reader .reader-progress{height:1px;top:48px}.reader-inner{padding:0 20px var(--mobile-bottom-gutter);max-width:none;margin:18px auto 0}body.is-mobile-shell .view.view-letters{padding:0}.letters-rail-head{padding:calc(8px + env(safe-area-inset-top,0px)) 14px 12px}.letters-list{padding-bottom:var(--mobile-bottom-gutter)}.letters-month{padding:14px 16px 5px}.letter-item{grid-template-columns:10px minmax(0,1fr);gap:8px;min-height:48px;padding:12px 16px}.letter-item-indicator{margin-top:7px}.letter-item:not(:has(.letter-preview)){padding-bottom:12px}.letters-empty{min-height:min(60vh,480px);padding:56px 24px}.letter-reader{padding-bottom:env(safe-area-inset-bottom,0px)}.reader-inner{padding:20px 16px calc(24px + env(safe-area-inset-bottom,0px));margin:0}.reader-title{font-variation-settings:"opsz" 96, "SOFT" 50;letter-spacing:-.025em;margin-bottom:10px;font-size:clamp(1.6rem,6vw,2.1rem);line-height:1.08}.reader-byline{font:400 12.5px/1.3 var(--font-mono);color:var(--fg-3);margin-bottom:22px}.reader-body{font-variation-settings:"opsz" 16;font-size:17px;line-height:1.7}.reader-body p+p{margin-top:16px}.reader-figure{margin:22px 0}.reader-figure img{aspect-ratio:4/3;object-fit:cover}.reader-figure figcaption{font:400 11.5px/1.5 var(--font-mono);color:var(--fg-3);margin-top:6px}.reader-quote{border-left:2px solid var(--line-3);font:380 18px/1.55 var(--font-serif);color:var(--fg-1);margin:20px 0;padding-left:14px;font-style:italic}.reader-h2{font:380 22px/1.2 var(--font-serif);font-variation-settings:"opsz" 36;letter-spacing:-.02em;margin:28px 0 12px}.reader-more-popover{top:50px;right:8px}}@media (max-width:560px){body.is-mobile-shell .view.view-programmes,body.is-mobile-shell .view.view-travel{padding-inline:0;padding-top:0;padding-bottom:var(--mobile-bottom-gutter)}body.is-mobile-shell .view.view-course,body.is-mobile-shell .view.view-lessons{padding:0}.letter-subject{font-size:15px}.letter-from{font-size:13.5px}}@media (hover:hover) and (pointer:fine){.letter-item:hover,.reader-more:hover{background:var(--bg-sunk)}}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation-duration:.22s;animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:.22s;animation-timing-function:var(--ease-out)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}.cd-ticker{animation:none}}.bucket-status,.watch-eps,.watch-rating,.watch-duration,.countdown-num,.countdown-date,.cd-tick-num,.cd-big-num,.travel-day-date,.reader-byline,.letter-date,.cd-featured-date{font-variant-numeric:tabular-nums}button:active:not(:disabled):not(.no-scale){transition:transform .16s var(--ease-out)}.prog-arc-dot{font-variant-numeric:tabular-nums}.prog-checkin-form{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:18px;display:grid}.prog-checkin-head{font:500 12px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3)}.prog-checkin-grid{gap:10px;display:grid}.prog-checkin-field{gap:4px;display:grid}.prog-checkin-field>span:first-child{font:500 11px/1 var(--font-mono);letter-spacing:.06em;color:var(--fg-3)}.prog-checkin-field input[type=number],.prog-checkin-field input[type=text]{border:1px solid var(--line-2);border-radius:var(--r);background:var(--bg);font:400 13px/1.4 var(--font-sans);color:var(--fg);font-variant-numeric:tabular-nums;padding:8px 10px}.prog-checkin-field input[type=range]{width:100%}.prog-checkin-adh{font:500 11px/1 var(--font-mono);color:var(--fg-2);font-variant-numeric:tabular-nums}.prog-checkin-mood .chip.small,.chips.small .chip{padding:4px 8px;font-size:10.5px}.prog-checkin-form .btn-primary{justify-content:center;justify-self:stretch}.prog-brief-actions{margin-top:12px}.side-pill{font-variant-numeric:tabular-nums}.prog-brief-title.is-editable:hover{cursor:text}:root{--cx-dot-task:var(--accent-2);--cx-dot-bucket:#6cb26f;--cx-dot-countdown:var(--accent);--cx-dot-watch:#b55386;--cx-dot-programme:var(--accent);--cx-dot-trip:#4188b6;--cx-dot-letter:var(--accent);--cx-dot-course:var(--fg-1)}@supports (color:lab(0% 0 0)){:root{--cx-dot-bucket:lab(66.6863% -33.5986 27.2525);--cx-dot-watch:lab(49.3961% 44.8849 -8.6739);--cx-dot-trip:lab(53.5434% -11.8794 -31.4643)}}.cx-backdrop[hidden],.cx-sheet[hidden],.cx-pop[hidden],.cx-cal[hidden]{opacity:0;pointer-events:none;display:none!important}.cx-backdrop{z-index:1190;background:oklch(from var(--bg) l c h / .58);-webkit-backdrop-filter:blur(16px)saturate(140%);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s var(--ease-out), visibility 0s linear .2s;position:fixed;inset:0}.cx-backdrop:not([hidden]){visibility:visible;transition:opacity .2s var(--ease-out), visibility 0s}.cx-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto}.cx-backdrop:not(.is-open):not([hidden]){visibility:hidden;-webkit-backdrop-filter:none}body.composer-open{touch-action:none;overflow:hidden}body.composer-open .app{-webkit-user-select:none;user-select:none;pointer-events:none!important}body.composer-open .cx-backdrop,body.composer-open .cx-sheet,body.composer-open .cx-pop,body.composer-open .cx-cal{pointer-events:auto}.cx-sheet{z-index:1200;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);opacity:0;width:min(560px,100vw - 32px);max-height:min(640px,100dvh - 80px);transition:opacity .24s var(--ease-out), transform .24s var(--ease-out);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,calc(8px - 50%))scale(.98)}.cx-sheet.is-open{opacity:1;transform:translate(-50%,-50%)scale(1)}.cx-sheet.is-closing{opacity:0;pointer-events:none;transition-duration:.18s;transform:translate(-50%,calc(8px - 50%))scale(.98)}.cx-grab{display:none}.cx-head{border-bottom:1px solid var(--line);background:var(--bg-elev);flex:none;justify-content:space-between;align-items:center;height:44px;padding:0 16px;display:flex}.cx-kicker{font:500 11px/1 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);align-items:center;gap:8px;display:inline-flex}.cx-kicker-dot{background:var(--fg-3);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.cx-kicker-label{color:var(--fg-1)}.cx-esc{cursor:pointer;border-radius:var(--r);transition:background .12s var(--ease-out), transform .12s var(--ease-out);background:0 0;border:0;padding:4px 6px}.cx-esc:hover{background:var(--bg-sunk)}.cx-esc:active{transform:scale(.97)}.cx-esc kbd{font:500 10.5px/1 var(--font-mono);color:var(--fg-2);background:var(--bg-sunk);border-radius:var(--r);border:1px solid var(--line);padding:3px 6px}.cx-body{flex-direction:column;flex:auto;gap:12px;padding:18px 20px 14px;display:flex;overflow-y:auto}.cx-kind-tiles{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:4px;display:grid}.cx-kind-tile{background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;color:var(--fg-1);transition:background .14s var(--ease-out), border-color .14s var(--ease-out), transform .14s var(--ease-out);opacity:0;animation:cx-rise .28s var(--ease-out) forwards;flex-direction:column;align-items:center;gap:4px;padding:10px 4px 9px;display:flex;transform:translateY(6px)}.cx-kind-tile:hover{background:var(--bg);border-color:var(--line-3)}.cx-kind-tile:active{transform:scale(.97)}.cx-kind-tile.is-selected{background:oklch(from var(--cx-dot-watch) l c h / .1);border-color:oklch(from var(--cx-dot-watch) l c h / .45);color:var(--fg)}.cx-kind-tile-glyph{width:26px;height:26px;color:var(--fg-1);place-items:center;display:grid}.cx-kind-tile-label{font:500 11.5px/1 var(--font-sans);color:var(--fg)}.cx-kind-tile-sub{font:400 10.5px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.cx-title-input+.cx-meta:not(:empty){margin-top:2px}.cx-title-input{width:100%;font:500 20px/1.3 var(--font-sans);letter-spacing:-.012em;color:var(--fg);caret-color:var(--accent);background:0 0;border:0;outline:none;padding:2px 0}.cx-title-input::placeholder{color:var(--fg-3);font-weight:400}.cx-subtitle-input{width:100%;font:400 14px/1.55 var(--font-sans);color:var(--fg-1);resize:none;field-sizing:content;background:0 0;border:0;outline:none;min-height:22px;padding:0}.cx-subtitle-input::placeholder{color:var(--fg-3)}.cx-yt-preview{background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--r-md);opacity:0;animation:cx-rise .24s var(--ease-out) forwards;grid-template-columns:96px 1fr;align-items:center;gap:12px;margin-top:4px;padding:10px;display:grid}.cx-yt-preview img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--r);background:var(--bg);width:96px}.cx-yt-title{font:500 13px/1.3 var(--font-sans);color:var(--fg)}.cx-yt-channel{font:400 11.5px/1 var(--font-mono);color:var(--fg-3);margin-top:4px}.cx-yt-err{font:400 12px/1.3 var(--font-mono);color:oklch(from var(--accent) l c h / .85)}.cx-yt-skeleton{background:linear-gradient(90deg, var(--line) 0%, var(--line-2) 50%, var(--line) 100%);vertical-align:middle;background-size:200% 100%;border-radius:99px;width:84px;height:10px;margin-right:6px;animation:1.2s linear infinite cx-shimmer;display:inline-block}@keyframes cx-shimmer{to{background-position:-200% 0}}.cx-meta{flex-wrap:wrap;gap:6px;padding:0 0 2px;display:flex}.cx-chip{background:var(--bg);border:1px solid var(--line);height:28px;font:500 12px/1 var(--font-sans);color:var(--fg-1);cursor:pointer;transition:background .14s var(--ease-out), border-color .14s var(--ease-out), transform .14s var(--ease-out);border-radius:999px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.cx-chip:hover{background:var(--bg-sunk);border-color:var(--line-2)}.cx-chip:active{transform:scale(.97)}.cx-chip.is-set{color:var(--fg);border-color:var(--line-2)}.cx-chip-label{color:var(--fg-3);letter-spacing:.005em;font-weight:500}.cx-chip-value{font-variant-numeric:tabular-nums}.cx-chip-caret{width:10px;height:10px;color:var(--fg-3);margin-left:2px}.cx-chip-add-icon{color:var(--fg-3)}.cx-chip-photo-thumb{background:var(--bg-sunk) center/cover no-repeat;border:1px solid var(--line-2);border-radius:4px;flex:none;width:18px;height:18px}.cx-discard{background:oklch(from var(--accent) l c h / .07);border:1px solid oklch(from var(--accent) l c h / .25);border-radius:var(--r-md);font:400 12.5px/1.3 var(--font-sans);color:var(--fg);flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;padding:10px 12px;display:flex}.cx-discard-yes,.cx-discard-no{cursor:pointer;font:500 12px/1 var(--font-sans);transition:background .12s var(--ease-out), transform .12s var(--ease-out);background:0 0;border:0;border-radius:999px;padding:6px 10px}.cx-discard-yes{color:var(--accent);background:oklch(from var(--accent) l c h / .1)}.cx-discard-no{color:var(--fg-1)}.cx-discard-yes:hover{background:oklch(from var(--accent) l c h / .16)}.cx-discard-no:hover{background:var(--bg-sunk)}.cx-discard-yes:active,.cx-discard-no:active{transform:scale(.97)}.cx-foot{border-top:1px solid var(--line);background:var(--bg-elev);flex:none;justify-content:space-between;align-items:center;height:56px;padding:0 14px 0 16px;display:flex}.cx-hint{font:400 11.5px/1.2 var(--font-sans);color:var(--fg-3)}.cx-hint kbd{font:500 10.5px/1 var(--font-mono);color:var(--fg-2);background:var(--bg-sunk);border-radius:var(--r);border:1px solid var(--line);margin:0 2px;padding:3px 5px}.cx-submit{cursor:pointer;background:var(--fg);height:32px;color:var(--bg);font:500 12.5px/1 var(--font-sans);letter-spacing:.005em;transition:background .12s var(--ease-out), transform .12s var(--ease-out), opacity .12s var(--ease-out);border:0;border-radius:999px;margin-left:auto;padding:0 14px}.cx-submit:hover{background:var(--fg-1)}.cx-submit:active{transform:scale(.97)}.cx-submit:focus-visible{outline:2px solid oklch(from var(--accent) l c h / .5);outline-offset:2px}.cx-submit:disabled{opacity:.5;cursor:default}.cx-types{width:min(560px,100vw - 32px);max-height:min(640px,100dvh - 80px)}.cx-types-head{border-bottom:1px solid var(--line);flex-direction:column;flex:none;gap:8px;padding:14px 16px 10px;display:flex}.cx-types-head .cx-kicker{padding-left:2px}.cx-types-search-wrap{background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--r-md);align-items:center;gap:8px;min-height:40px;padding:0 10px;display:flex}.cx-types-search-wrap>svg{flex:none}.cx-types-search-wrap .cx-esc{flex:none;align-self:center}.cx-types-search-wrap svg{color:var(--fg-3)}#cx-types-search{font:400 14px/1.2 var(--font-sans);color:var(--fg);background:0 0;border:0;outline:none;flex:auto;width:100%;min-width:0}#cx-types-search::placeholder{color:var(--fg-3)}.cx-types-filter{flex-wrap:wrap;gap:4px;padding-top:2px;display:flex}.cx-filter-chip{border:1px solid var(--line);background:var(--bg);font:500 11.5px/1 var(--font-sans);color:var(--fg-2);cursor:pointer;letter-spacing:.005em;transition:background .14s var(--ease-out), color .14s var(--ease-out), border-color .14s var(--ease-out), transform .14s var(--ease-out);border-radius:999px;padding:5px 10px}.cx-filter-chip:hover{background:var(--bg-sunk)}.cx-filter-chip:active{transform:scale(.97)}.cx-filter-chip.is-active{background:var(--fg);color:var(--bg);border-color:var(--fg)}.cx-types-grid{flex:auto;grid-template-columns:1fr 1fr;gap:4px;padding:8px;display:grid;overflow-y:auto}.cx-type-tile{border-radius:var(--r-md);text-align:left;cursor:pointer;transition:background .14s var(--ease-out), border-color .14s var(--ease-out), transform .14s var(--ease-out);opacity:0;animation:cx-rise .28s var(--ease-out) forwards;background:0 0;border:1px solid #0000;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid;position:relative;transform:translateY(6px)}.cx-type-tile:active{transform:scale(.98)}.cx-type-tile.is-focus{background:oklch(from var(--accent) l c h / .08);border-color:oklch(from var(--accent) l c h / .18)}.cx-type-tile.is-focus:before{content:"";background:var(--accent);border-radius:99px;width:2px;position:absolute;top:8px;bottom:8px;left:0}.cx-type-glyph{background:var(--bg-sunk);border-radius:var(--r);width:28px;height:28px;color:var(--fg-1);place-items:center;display:grid}.cx-type-text{flex-direction:column;gap:2px;min-width:0;display:flex}.cx-type-title{font:500 13px/1.2 var(--font-sans);color:var(--fg)}.cx-type-sub{font:400 11.5px/1.2 var(--font-mono);color:var(--fg-3);letter-spacing:.005em}.cx-type-enter{font:500 10.5px/1 var(--font-mono);color:var(--fg-2);background:var(--bg);border:1px solid var(--line);border-radius:var(--r);opacity:0;transition:opacity .14s var(--ease-out);padding:3px 5px}.cx-type-tile.is-focus .cx-type-enter{opacity:1}.cx-types-foot{border-top:1px solid var(--line);font:400 11px/1 var(--font-sans);color:var(--fg-3);background:var(--bg-elev);flex-wrap:wrap;flex:none;align-items:center;gap:12px;padding:10px 14px;display:flex}.cx-types-foot kbd{font:500 10.5px/1 var(--font-mono);color:var(--fg-2);background:var(--bg-sunk);border-radius:var(--r);border:1px solid var(--line);margin-right:4px;padding:3px 5px}.cx-pop{z-index:1250;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);min-width:180px;max-width:240px;box-shadow:var(--shadow-lg);transform-origin:50% 0;opacity:0;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out);flex-direction:column;gap:1px;padding:4px;display:flex;position:fixed;transform:scale(.97)translateY(-2px)}.cx-pop.is-open{opacity:1;transform:scale(1)translateY(0)}.cx-pop.cx-pop-bottom{transform-origin:50% 100%;transform:scale(.97)translateY(2px)}.cx-pop.cx-pop-bottom.is-open{transform:scale(1)translateY(0)}.cx-pop-item{cursor:pointer;min-height:32px;font:500 12.5px/1.2 var(--font-sans);color:var(--fg-1);border-radius:var(--r);text-align:left;transition:background .12s var(--ease-out), color .12s var(--ease-out);background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;display:flex}.cx-pop-item:hover,.cx-pop-item.is-focus{background:var(--bg-sunk);color:var(--fg)}.cx-pop-item.is-selected{color:var(--fg)}.cx-pop-item-tick{color:var(--accent);opacity:0}.cx-pop-item.is-selected .cx-pop-item-tick{opacity:1}.cx-cal{z-index:1250;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);width:248px;box-shadow:var(--shadow-lg);transform-origin:50% 0;opacity:0;transition:opacity .18s var(--ease-out), transform .18s var(--ease-out);outline:none;padding:8px;position:fixed;transform:scale(.97)translateY(-2px)}.cx-cal.is-open{opacity:1;transform:scale(1)translateY(0)}.cx-cal.cx-cal-bottom{transform-origin:50% 100%;transform:scale(.97)translateY(2px)}.cx-cal.cx-cal-bottom.is-open{transform:scale(1)translateY(0)}.cx-cal-head{grid-template-columns:28px 1fr 28px;align-items:center;gap:4px;padding:2px 2px 6px;display:grid}.cx-cal-title{font:380 16px/1.3 var(--font-serif);letter-spacing:-.005em;color:var(--fg);text-align:center}.cx-cal-nav{cursor:pointer;border-radius:var(--r);width:28px;height:28px;color:var(--fg-2);transition:background .12s var(--ease-out), color .12s var(--ease-out), transform .12s var(--ease-out);background:0 0;border:0;place-items:center;display:grid}.cx-cal-nav:hover{background:var(--bg-sunk);color:var(--fg)}.cx-cal-nav:active{transform:scale(.92)}.cx-cal-dow{font:500 10.5px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);grid-template-columns:repeat(7,1fr);padding:4px 2px;display:grid}.cx-cal-dow span{text-align:center;padding:4px 0}.cx-cal-grid{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.cx-cal-day{aspect-ratio:1;width:100%;font:500 13px/1 var(--font-sans);font-variant-numeric:tabular-nums;color:var(--fg-1);border-radius:var(--r);cursor:pointer;transition:background .12s var(--ease-out), color .12s var(--ease-out), transform .12s var(--ease-out);background:0 0;border:0;place-items:center;display:grid}.cx-cal-day.is-other{color:var(--fg-3)}.cx-cal-day:hover{background:var(--bg-sunk)}.cx-cal-day:active{transform:scale(.92)}.cx-cal-day.is-today{box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent)}.cx-cal-day.is-focus{background:var(--bg-sunk)}.cx-cal-day.is-selected{background:var(--accent);color:var(--bg);box-shadow:none}.cx-cal-foot{border-top:1px solid var(--line);flex-wrap:wrap;gap:4px;margin-top:6px;padding:6px 2px 0;display:flex}.cx-cal-quick{background:var(--bg-sunk);font:500 11px/1 var(--font-sans);color:var(--fg-1);cursor:pointer;transition:background .12s var(--ease-out), color .12s var(--ease-out), transform .12s var(--ease-out);border:0;border-radius:999px;padding:5px 8px}.cx-cal-quick:hover{background:var(--bg);color:var(--fg)}.cx-cal-quick:active{transform:scale(.97)}@keyframes cx-rise{to{opacity:1;transform:translateY(0)}}@media (max-width:880px){.cx-sheet{border-radius:var(--r-lg) var(--r-lg) 0 0;width:100%;max-width:100%;max-height:min(58dvh,520px);padding-bottom:env(safe-area-inset-bottom);opacity:1;transition:transform .28s var(--ease-drawer);border-bottom:0;border-left:0;border-right:0;inset:auto 0 0;transform:translateY(100%)}.cx-sheet:not(.is-open):not(.is-closing){visibility:hidden;pointer-events:none;opacity:0;clip-path:inset(100% 0 0);border-width:0;max-height:0;padding-bottom:0;overflow:hidden}.cx-sheet.is-open{transform:translateY(0)}.cx-sheet.is-closing{pointer-events:none;transition-duration:.2s;transform:translateY(100%)}.cx-sheet.is-dragging{transition:none}.cx-grab{touch-action:none;cursor:grab;background:0 0;border-radius:0;width:100%;height:20px;display:block;position:absolute;top:0;left:0;right:0;transform:none}.cx-grab:after{content:"";background:var(--line-3);border-radius:99px;width:32px;height:4px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.cx-head,.cx-types-head{padding-top:12px}.cx-grab{touch-action:none;cursor:grab}.cx-grab:active{cursor:grabbing}.cx-types{width:100%;max-width:100%;max-height:min(58dvh,520px)}.cx-body,.cx-types-grid{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow-y:auto}#cx-types-search,#cx-title,#cx-subtitle,#cmd-input{font-size:16px}.topbar .icon-btn.new-btn{min-width:38px;min-height:38px;color:var(--fg)}.cx-chip{height:36px;padding:0 12px;font-size:13px}.cx-cal-day{font-size:14px}.cx-filter-chip{min-height:36px;padding:8px 12px}.cx-esc{min-width:44px;min-height:36px;padding:8px 10px}.cx-kind-tiles{grid-template-columns:repeat(5,1fr);gap:4px}.cx-kind-tile-sub{display:none}.cx-types-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.cx-backdrop,.cx-sheet,.cx-pop,.cx-cal,.cx-type-tile,.cx-kind-tile,.cx-yt-preview{transition-duration:80ms!important;animation-duration:80ms!important}.cx-sheet,.cx-sheet.is-closing{transform:translate(-50%,-50%)!important}@media (max-width:880px){.cx-sheet{transform:translateY(0)!important}.cx-sheet:not(.is-open){opacity:0}}.cx-pop,.cx-pop.is-open,.cx-cal,.cx-cal.is-open,.cx-type-tile,.cx-kind-tile,.cx-yt-preview{transform:none!important}}.door-stage--auth{max-width:400px;padding:2rem 1.5rem 1.5rem}.door-stage--auth .door-mark{margin-bottom:1.5rem}.door-title--auth{margin-bottom:1.25rem}.door .door-flow{gap:14px;width:100%;display:grid}.door .door-flow[data-step=pick]{gap:10px}.door .door-head{text-align:center;gap:6px;display:grid}.door .door-kicker{font:500 10px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin:0}.door .door-step-title{font-family:var(--font-serif);font-variation-settings:"opsz" 48, "SOFT" 50;letter-spacing:-.02em;color:var(--fg);margin:0;font-size:1.25rem;font-weight:380;line-height:1.15}.door .door-profiles{gap:8px;width:100%;display:grid}.door .door-profile{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-elev);text-align:left;width:100%;min-height:44px;color:var(--fg);transition:border-color .16s var(--ease-out), background .16s var(--ease-out), transform .16s var(--ease-out);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:0 12px;display:grid;position:relative}.door .door-profile:hover:not(:disabled){border-color:var(--line-2);background:var(--bg)}.door .door-profile:active:not(:disabled){transform:scale(.97)}.door .door-profile.is-loading{opacity:.65;pointer-events:none}.door .door-profile-avatar{width:28px;height:28px;font:500 12px/1 var(--font-sans);color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209);background:var(--bg,var(--accent-2));border-radius:50%;flex-shrink:0;place-items:center;display:grid}.door .door-profile-avatar[style*=--bg]{background:var(--bg);color:#fcfcfc;color:lab(98.84% .0000298023 -.0000119209)}html[data-theme=dark] .door .door-profile-avatar:not([style*=--bg]){color:#f2eee7;color:lab(94.2286% .580758 3.77309);background:#191511;background:lab(7.22589% 1.19062 3.13728)}.door .door-profile-name{font:500 14px/1 var(--font-sans);letter-spacing:-.01em;color:var(--fg)}.door .door-profile-arrow{font:400 14px/1 var(--font-mono);color:var(--fg-3)}.door .door-profile.is-loading .door-profile-arrow{opacity:0}.door .door-profile.is-loading:after{content:"";border:1.5px solid var(--line-2);border-top-color:var(--accent);border-radius:50%;width:10px;height:10px;animation:.6s linear infinite door-auth-spin;position:absolute;right:12px}.door .door-fields{gap:12px;display:grid}.door .door-field{text-align:left;gap:6px;display:grid}.door .door-field-label{font:500 10px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3)}.door input.editor-input.door-input{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-md);height:36px;padding:0 11px;font-size:16px;line-height:1}.door input.editor-input.door-input:focus{border-color:var(--line-2);background:var(--bg);outline:none}.door .door-primary{justify-content:center;width:100%}.door .door-back{font:500 11px/1 var(--font-mono);color:var(--fg-3);cursor:pointer;text-align:center;transition:color .16s var(--ease-out), transform .16s var(--ease-out);background:0 0;border:0;padding:0}.door .door-back:hover:not(:disabled){color:var(--fg-2)}.door .door-back:active:not(:disabled){transform:scale(.97)}.door .door-error{font:400 12px/1.45 var(--font-sans);color:var(--warn);text-align:center;margin:0}@keyframes door-auth-spin{to{transform:rotate(360deg)}}@media (max-width:420px){.door-stage--auth{padding:1.25rem 1rem 1rem}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(../media/KaTeX_AMS-Regular.0p1vbqd84i2~o.woff2)format("woff2"),url(../media/KaTeX_AMS-Regular.0b~8ki5y928w2.woff)format("woff"),url(../media/KaTeX_AMS-Regular.173t6ktr7uf-w.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(../media/KaTeX_Caligraphic-Bold.01-pzluls4zgb.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Bold.0x2v1lwn~880f.woff)format("woff"),url(../media/KaTeX_Caligraphic-Bold.16zv5fax0h0ka.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(../media/KaTeX_Caligraphic-Regular.0rysu1t-ncjq8.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Regular.10927swgekwun.woff)format("woff"),url(../media/KaTeX_Caligraphic-Regular.02i3z7wig438t.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(../media/KaTeX_Fraktur-Bold.0w23i72~hprpq.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Bold.0e-16u10iuyyf.woff)format("woff"),url(../media/KaTeX_Fraktur-Bold.0et27v~3~4uhe.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(../media/KaTeX_Fraktur-Regular.0rekyoa-52fj_.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Regular.0b.riegzdfue2.woff)format("woff"),url(../media/KaTeX_Fraktur-Regular.0vjwa15znhk~4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(../media/KaTeX_Main-Bold.16pfc63_du6mx.woff2)format("woff2"),url(../media/KaTeX_Main-Bold.09lmynrorhcbw.woff)format("woff"),url(../media/KaTeX_Main-Bold.09i7~607shf-h.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(../media/KaTeX_Main-BoldItalic.0d54rk08rx11s.woff2)format("woff2"),url(../media/KaTeX_Main-BoldItalic.0cp37g7x1q8h6.woff)format("woff"),url(../media/KaTeX_Main-BoldItalic.15j6k~hix2t_0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(../media/KaTeX_Main-Italic.06o5nq0_91v60.woff2)format("woff2"),url(../media/KaTeX_Main-Italic.0382gqciexmbu.woff)format("woff"),url(../media/KaTeX_Main-Italic.0su4i6mm18-wo.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(../media/KaTeX_Main-Regular.0kaf-ag2_wkm-.woff2)format("woff2"),url(../media/KaTeX_Main-Regular.0diheg01zyoph.woff)format("woff"),url(../media/KaTeX_Main-Regular.08zh8z.7shijf.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(../media/KaTeX_Math-BoldItalic.0ja97dn.cpc87.woff2)format("woff2"),url(../media/KaTeX_Math-BoldItalic.0ck1myuerwyqw.woff)format("woff"),url(../media/KaTeX_Math-BoldItalic.0ajzxypnbx1h1.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(../media/KaTeX_Math-Italic.0zrha2c4sl2je.woff2)format("woff2"),url(../media/KaTeX_Math-Italic.09xkhecjcn5r9.woff)format("woff"),url(../media/KaTeX_Math-Italic.0x23a-bmp-5tg.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(../media/KaTeX_SansSerif-Bold.05a9.pc1j_zx9.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Bold.0jcl-ayi1uun0.woff)format("woff"),url(../media/KaTeX_SansSerif-Bold.0re8y.dm7.mt5.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(../media/KaTeX_SansSerif-Italic.0a0234dc3s62j.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Italic.0judofdln9731.woff)format("woff"),url(../media/KaTeX_SansSerif-Italic.10z1iap9pfus8.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(../media/KaTeX_SansSerif-Regular.0v6gcj32-czft.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Regular.0h9yjlugq4q_e.woff)format("woff"),url(../media/KaTeX_SansSerif-Regular.0zm18kga42ebc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(../media/KaTeX_Script-Regular.0c4.h-mer83d_.woff2)format("woff2"),url(../media/KaTeX_Script-Regular.0ze6v4r_-99oy.woff)format("woff"),url(../media/KaTeX_Script-Regular.0q14y6zkzlpob.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size1-Regular.013x6a4ierotp.woff2)format("woff2"),url(../media/KaTeX_Size1-Regular.0kidw0oi.m68o.woff)format("woff"),url(../media/KaTeX_Size1-Regular.0m6y-i6wfokni.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size2-Regular.0d5inmyp-tyv3.woff2)format("woff2"),url(../media/KaTeX_Size2-Regular.0blpmluwilgbg.woff)format("woff"),url(../media/KaTeX_Size2-Regular.0wnhnvj-.k9d5.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size3-Regular.0iukctyhw5j56.woff2)format("woff2"),url(../media/KaTeX_Size3-Regular.01h0xm_sfctj3.woff)format("woff"),url(../media/KaTeX_Size3-Regular.0jl8mqyf4gzpn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size4-Regular.0w3.rb_c4stzk.woff2)format("woff2"),url(../media/KaTeX_Size4-Regular.12tvaesf3.zl3.woff)format("woff"),url(../media/KaTeX_Size4-Regular.0wr_9l81-mu06.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(../media/KaTeX_Typewriter-Regular.0c4zdxz~8frhm.woff2)format("woff2"),url(../media/KaTeX_Typewriter-Regular.0cgrzn5l3kao5.woff)format("woff"),url(../media/KaTeX_Typewriter-Regular.128~qc3858otl.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.17.0"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}:root{--font-sans:var(--font-geist-sans), ui-sans-serif, system-ui, -apple-system, sans-serif;--font-serif:var(--font-fraunces), ui-serif, Georgia, serif;--font-mono:var(--font-geist-mono), ui-monospace, "SF Mono", Menlo, monospace}.app[aria-hidden=false]{opacity:1}.travel-editor-days-empty-wrap{gap:10px;padding:8px 0 4px;display:grid}.travel-editor-days-hint{font:400 12px/1.45 var(--font-mono);color:var(--fg-3);margin:0}.popover-theme-glyph svg{display:block}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
