@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-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--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;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm:.25rem;--radius-lg:.5rem;--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-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function: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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table\!{display:table!important}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}:root{--bg:#f4efe6;--surface:#fcfaf5;--panel:#fff;--border:#e7decf;--border-soft:#efe7d9;--line:#ece3d5;--ink:#232019;--sub:#6f6657;--faint:#a39a89;--clay:#b0552f;--clay-hover:#99492a;--clay-soft:#f1e2d8;--clay-tint:#f8ece4;--sage:#5f7355;--sage-soft:#e7eee1;--sage-tint:#eff3ea;--amber:#bd7f36;--amber-soft:#f6e8d2;--amber-tint:#faf1e0;--denim:#4c5c83;--denim-soft:#e2e5ee;--denim-tint:#edeff5;--danger:#b0392f;--danger-soft:#fbeae6;--radius:14px;--radius-sm:10px;--radius-lg:18px;--sans:var(--font-figtree), Figtree, system-ui, sans-serif;--serif:var(--font-jakarta), "Plus Jakarta Sans", system-ui, sans-serif;--shadow-sm:0 1px 2px #3c2e140d;--shadow-md:0 4px 18px #3c2e1412;--shadow-lg:0 20px 50px #23201938;--shadow-card:0 6px 24px #3c2e1414;--rail-w:244px;--rail-collapsed:68px}:root[data-theme=dark]{--bg:#1c1a16;--surface:#24211b;--panel:#2a2620;--border:#38332b;--border-soft:#322e27;--line:#322e27;--ink:#f1ebde;--sub:#b3a893;--faint:#7c7363;--clay-soft:#3a2a22;--clay-tint:#2e251f;--sage-soft:#2a3324;--sage-tint:#262b20;--amber-soft:#3a2e1c;--amber-tint:#2e2a1e;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 18px #00000059;--shadow-lg:0 20px 50px #0000008c}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#443e34}.material-symbols-rounded{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;font-family:Material Symbols Rounded;font-size:20px;font-style:normal;font-weight:400;line-height:1;display:inline-block}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}.ms{font-variation-settings:"FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;font-family:Material Symbols Rounded;font-style:normal;line-height:1;display:inline-flex}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border:3px solid var(--bg);background:#ddd2c0;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#cbbea8}.f-page-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.f-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.f-section-head{justify-content:space-between;align-items:center;gap:16px;margin:0 0 14px;display:flex}.f-section-title{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:800}:root[data-titles=sans] .f-section-title{font-family:var(--sans)}.f-card-new{animation:1.8s ease-out f-card-highlight}@keyframes f-card-highlight{0%{border-color:var(--clay);box-shadow:0 0 0 3px var(--clay-tint)}to{border-color:var(--border);box-shadow:none}}.f-card-ic{background:var(--clay-tint);width:38px;height:38px;color:var(--clay);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.f-card-title{color:var(--ink);overflow-wrap:anywhere;font-size:15.5px;font-weight:600;line-height:1.3}.f-card-meta{color:var(--sub);margin-top:2px;font-size:13px}.f-card-excerpt{color:var(--sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.f-card-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:4px;display:flex}.f-card-date{color:var(--faint);font-size:12px}.f-card-pin{cursor:pointer;color:var(--faint);background:0 0;border:none;border-radius:6px;padding:4px;transition:color .16s,background .16s;display:flex}.f-card-pin:hover{background:var(--clay-tint);color:var(--clay)}.f-card-pin.active{color:var(--clay)}.f-add-card{border:1.5px dashed var(--border);border-radius:var(--radius);color:var(--faint);background:0 0;justify-content:center;align-items:center;gap:10px;width:100%;min-height:120px;padding:16px;font-size:13.5px;font-weight:600;transition:border-color .16s,color .16s,background .16s;display:flex}.f-add-card:hover{border-color:var(--clay);color:var(--clay);background:var(--clay-tint)}.f-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:72px 24px;display:flex}.f-empty-ic{background:var(--surface);border:1px solid var(--border);width:64px;height:64px;color:var(--faint);border-radius:16px;place-items:center;display:grid}.f-empty-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:20px;font-weight:800}.f-empty-sub{color:var(--sub);max-width:360px;font-size:14px;line-height:1.5}.f-badge{letter-spacing:.01em;white-space:nowrap;border-radius:99px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.f-badge.clay{background:var(--clay-tint);color:var(--clay)}.f-badge.sage{background:var(--sage-tint);color:var(--sage)}.f-badge.amber{background:var(--amber-tint);color:var(--amber)}.f-badge.denim{background:var(--denim-tint);color:var(--denim)}.f-tag-pill{border:1px solid var(--border);color:var(--sub);background:var(--surface);white-space:nowrap;border-radius:99px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:500;transition:background .13s,border-color .13s,color .13s;display:inline-flex}.f-tag-pill:hover{color:var(--ink);border-color:var(--faint)}.f-tag-pill.active{background:var(--clay-tint);color:var(--clay);border-color:var(--clay);font-weight:600}.f-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.f-tag-pill.active{border-color:var(--clay);background:var(--clay-tint);color:var(--clay);font-weight:600}button.f-tag-add{white-space:nowrap;font-size:12.5px;font-weight:500;line-height:1;font-family:var(--sans);border:1px dashed var(--border);color:var(--faint);cursor:pointer;background:0 0;border-radius:99px;align-items:center;gap:6px;padding:6px 12px;transition:border-color .13s,color .13s;display:inline-flex}button.f-tag-add svg{flex-shrink:0}button.f-tag-add:hover{border-color:var(--clay);color:var(--clay)}.f-tag-input{border:1px solid var(--clay);background:var(--panel);color:var(--ink);width:140px;box-shadow:0 0 0 3px var(--clay-tint);border-radius:99px;outline:none;padding:6px 12px;font-size:12.5px;font-weight:500}.f-tag-input::placeholder{color:var(--faint)}.f-label{color:var(--sub);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600}.f-overlay{z-index:200;background:#23201966;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.f-modal{background:var(--panel);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;overflow:hidden}.f-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.f-modal-title{font-family:var(--display);letter-spacing:-.02em;font-size:17px;font-weight:800}.f-modal-close{color:var(--faint);background:0 0;border:none;border-radius:8px;place-items:center;padding:4px;transition:background .12s,color .12s;display:grid}.f-modal-close:hover{background:var(--clay-tint);color:var(--clay)}.f-modal-body{flex-direction:column;gap:16px;padding:20px 22px;display:flex}.f-modal-foot{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:10px;padding:16px 22px;display:flex}.f-error{color:var(--danger);background:var(--danger-soft);border-radius:8px;padding:8px 12px;font-size:13px}.f-logdate-choice{flex-direction:column;gap:8px;display:flex}.f-logdate-label{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:600}.f-logdate-opts{flex-wrap:wrap;gap:8px;display:flex}.f-logdate-opt{cursor:pointer;text-align:left;min-width:140px;font:inherit;background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:10px;flex-direction:column;flex:1;gap:2px;padding:9px 12px;font-size:13.5px;font-weight:600;transition:border-color .14s,background .14s,color .14s;display:flex}.f-logdate-opt:hover{border-color:var(--clay)}.f-logdate-opt.on{border-color:var(--clay);background:var(--clay-tint);color:var(--clay)}.f-logdate-hint{color:var(--faint);font-size:11.5px;font-weight:400}.f-logdate-opt.on .f-logdate-hint{color:var(--clay);opacity:.8}.f-prose{color:var(--ink);font-size:15px;line-height:1.75}.f-prose h1,.f-prose h2,.f-prose h3{font-family:var(--serif);letter-spacing:-.01em;margin:1.4em 0 .5em;font-weight:600;line-height:1.25}.f-prose h1{font-size:28px}.f-prose h2{font-size:22px}.f-prose h3{font-size:18px}.f-prose p{margin:.8em 0}.f-prose ul,.f-prose ol{margin:.8em 0;padding-left:1.4em}.f-prose ul{list-style:outside}.f-prose ol{list-style:decimal}.f-prose li{margin:.3em 0;display:list-item}.f-prose li::marker{color:var(--faint)}.f-prose ul[data-type=taskList]{padding-left:4px;list-style:none}.f-prose ul[data-type=taskList] li{display:flex}.f-prose a{color:var(--clay);text-underline-offset:2px;text-decoration:underline}.f-prose code{background:var(--clay-tint);color:var(--clay-hover);border-radius:5px;padding:1px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.f-prose pre{background:var(--ink);color:#f1ebde;border-radius:var(--radius-sm);padding:14px 16px;overflow-x:auto}.f-prose pre code{color:inherit;background:0 0;padding:0}.f-prose blockquote{border-left:3px solid var(--clay);color:var(--sub);margin:1.2em 0;padding:.1em 0 .1em 1.1em;font-style:italic}.f-prose img{border-radius:var(--radius-sm);max-width:100%}.f-prose hr{border:none;border-top:1px solid var(--line);margin:1.6em 0}.f-prose table{border-collapse:collapse;width:100%;margin:1em 0;font-size:14px}.f-prose th,.f-prose td{border:1px solid var(--border);text-align:left;padding:7px 11px}.f-prose th{background:var(--surface);font-weight:600}.f-banner-actions{opacity:0;gap:8px;transition:opacity .15s;display:flex;position:absolute;top:12px;right:12px}.f-banner:hover .f-banner-actions{opacity:1}.f-banner-add{border-radius:var(--radius-lg);border:1.5px dashed var(--border);background:var(--surface);width:100%;color:var(--faint);cursor:pointer;justify-content:center;align-items:center;gap:9px;padding:22px;font-size:13.5px;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:flex}.f-banner-add:hover{border-color:var(--clay);color:var(--clay);background:var(--clay-tint)}.f-photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.f-photo-tile{aspect-ratio:3/4;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;position:relative;overflow:hidden}.f-photo-tile img{object-fit:cover;width:100%;height:100%;display:block}.f-photo-tile-act{color:#fcfaf5;opacity:0;background:#2320198c;border:none;border-radius:7px;padding:5px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}.f-photo-tile-act.edit{right:38px}.f-photo-tile:hover .f-photo-tile-act{opacity:1}@media (hover:none){.f-photo-tile-act{opacity:1}}.f-photo-viewer{justify-content:center;align-items:stretch;gap:16px;width:100%;height:100%;min-height:0;display:flex}.f-photo-viewer-img{flex:1;justify-content:center;align-items:center;min-width:0;display:flex}.f-photo-viewer-img img{border-radius:var(--radius-sm);object-fit:contain;max-width:100%;max-height:100%}.f-photo-viewer-side{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex-shrink:0;align-self:center;gap:10px;width:360px;max-height:100%;padding:16px;display:flex}.f-photo-viewer-text{resize:none;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:260px;color:var(--ink);outline:none;flex:1;padding:10px 12px;font-size:14px;line-height:1.55}.f-photo-viewer-text:focus{border-color:var(--clay);box-shadow:0 0 0 3px var(--clay-tint)}.f-photo-viewer-hint{color:var(--faint);font-size:13px;line-height:1.5}@media (max-width:760px){.f-photo-viewer{flex-direction:column;overflow-y:auto}.f-photo-viewer-img{flex:none;max-height:45vh}.f-photo-viewer-side{align-self:auto;width:100%}.f-photo-viewer-text{min-height:160px}}.f-photo-editor-btn{color:#fcfaf5;background:#ffffff1a}.f-photo-editor-btn:hover{color:#fcfaf5;background:#fff3}.f-photo-add{aspect-ratio:3/4;border-radius:var(--radius-sm);border:1.5px dashed var(--border);color:var(--faint);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:12.5px;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:flex}.f-photo-add:hover{border-color:var(--clay);color:var(--clay);background:var(--clay-tint)}.f-photo-add:disabled{cursor:default;opacity:.7}.f-book-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.f-book-meta{color:var(--sub);align-items:center;gap:7px;font-size:13px;display:flex}.f-book-empty{text-align:center;border:1.5px dashed var(--border);border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:56px 24px;display:flex}.f-book-empty-ic{background:var(--amber-tint);width:56px;height:56px;color:var(--amber);border-radius:14px;place-items:center;display:grid}.f-book-empty-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:18px;font-weight:800}.f-book-empty-sub{color:var(--sub);max-width:380px;font-size:14px;line-height:1.5}.f-book-pages{flex-direction:column;gap:16px;display:flex}.f-book-hint{color:var(--faint);align-items:center;gap:8px;margin-top:18px;font-size:12px;display:flex}.f-note-titlerow{align-items:flex-start;gap:16px;display:flex}.f-note-title{flex:1;min-width:0}.f-note-tags{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding-top:10px;display:flex}@media (max-width:720px){.f-note-titlerow{flex-direction:column;gap:4px}.f-note-tags{justify-content:flex-start;padding-top:4px}}.f-view-toggle{background:var(--surface);border:1px solid var(--border);border-radius:9px;gap:2px;padding:2px;display:inline-flex}.f-view-toggle button{width:30px;height:28px;color:var(--faint);cursor:pointer;background:0 0;border:none;border-radius:7px;place-items:center;transition:background .12s,color .12s;display:grid}.f-view-toggle button:hover{color:var(--sub)}.f-view-toggle button.active{background:var(--panel);color:var(--ink);box-shadow:var(--shadow-sm)}.f-book-summary{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:14px;margin-bottom:16px;overflow:hidden}.f-book-summary-head{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:none;align-items:center;gap:10px;padding:16px 20px;display:flex}.f-book-summary-head:hover{background:var(--surface)}.f-book-summary-title{font-family:var(--display);letter-spacing:-.018em;font-size:16px;font-weight:700}.f-book-summary-meta{color:var(--faint);font-size:12.5px}.f-book-summary-body{border-top:1px solid var(--line);max-height:60vh;padding:4px 26px 24px;overflow-y:auto}.f-book-summary-page{border-bottom:1px solid var(--line);padding:18px 0}.f-book-summary-page:last-child{border-bottom:none}.f-book-summary-pageno{letter-spacing:.03em;color:var(--amber);text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700}.f-page-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;display:grid}.f-page-tile{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-sm);aspect-ratio:3/4;cursor:pointer;border-radius:12px;flex-direction:column;padding:18px 20px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;overflow:hidden}.f-page-tile:hover{border-color:var(--clay-soft);box-shadow:var(--shadow-card);transform:translateY(-2px)}.f-page-tile.pending{border-style:dashed;border-color:var(--amber);background:var(--amber-tint)}.f-page-tile.pending:hover{border-color:var(--amber);box-shadow:var(--shadow-card)}.f-page-tile-head{align-items:center;margin-bottom:12px;display:flex}.f-page-tile-head .f-page-del{margin-left:auto}.f-page-tile-text{font-family:var(--serif);color:var(--ink);flex:1;font-size:15px;line-height:1.65;overflow:hidden;-webkit-mask-image:linear-gradient(#000 72%,#0000 100%);mask-image:linear-gradient(#000 72%,#0000 100%)}.f-page-tile-pending{color:var(--amber);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;font-size:12.5px;font-weight:600;display:flex}.f-page-tile-pending img{object-fit:cover;border:1px solid var(--amber-soft);border-radius:10px;width:56px;height:56px}.f-page-card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:14px;padding:22px 26px}.f-page-card-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.f-page-badge{letter-spacing:.03em;background:var(--amber-tint);color:var(--amber);border-radius:99px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.f-page-date{color:var(--faint);font-size:12px}.f-page-cleared{color:var(--sage);align-items:center;gap:4px;font-size:11px;display:inline-flex}.f-page-del{width:28px;height:28px;color:var(--faint);cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;margin-left:auto;transition:background .12s,color .12s;display:grid}.f-page-del:hover{background:var(--danger-soft);color:var(--danger)}.f-page-text{font-family:var(--serif);color:var(--ink);white-space:pre-wrap;-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:17px;line-height:1.7;display:-webkit-box;overflow:hidden}.f-page-pending{border:1.5px dashed var(--amber);background:var(--amber-tint);border-radius:14px;padding:16px 20px}.f-page-pending-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.f-page-thumb{object-fit:cover;border:1px solid var(--amber-soft);border-radius:12px;flex-shrink:0;width:44px;height:44px}.f-page-thumb.ph{background:var(--amber-soft);color:var(--amber);place-items:center;display:grid}.f-page-pending-main{flex:1;min-width:140px}.f-page-pending-title{color:var(--ink);font-size:14px;font-weight:600}.f-page-pending-sub{color:var(--sub);margin-top:2px;font-size:12.5px}.f-page-convert{flex-shrink:0;border:1px solid var(--amber)!important;background:var(--panel)!important;color:var(--amber)!important}.f-page-convert:hover{background:var(--amber-soft)!important}.f-page-discard{border:1px solid var(--amber);width:32px;height:32px;color:var(--amber);cursor:pointer;background:0 0;border-radius:9px;flex-shrink:0;place-items:center;transition:background .12s,color .12s,border-color .12s;display:grid}.f-page-discard:hover{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-soft)}.f-page-transcribe{margin-top:14px}.f-page-transcribe-input{resize:vertical;border:1px solid var(--amber-soft);background:var(--panel);width:100%;min-height:120px;color:var(--ink);font-family:var(--serif);border-radius:10px;outline:none;padding:12px 14px;font-size:15px;line-height:1.6}.f-page-transcribe-input:focus{border-color:var(--amber);box-shadow:0 0 0 3px var(--amber-tint)}.f-page-transcribe-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.f-bookpage{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:18px;flex-direction:column;min-height:60vh;padding:40px 48px;display:flex}.f-bookpage-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:22px;display:flex}.f-bookpage-text{resize:none;field-sizing:content;width:100%;min-height:280px;font-family:var(--serif);color:var(--ink);background:0 0;border:none;outline:none;font-size:19px;line-height:1.85;overflow:hidden}.f-bookpage-text::placeholder{color:var(--faint)}.f-bookpage-photo{object-fit:contain;border:1px solid var(--border);border-radius:12px;width:auto;max-width:100%;height:auto;max-height:70vh;margin:0 auto 20px;display:block}.f-bookpage-prose{font-family:var(--serif);color:var(--ink);font-size:19px;line-height:1.85}.f-bookpage-prose h3{font-family:var(--sans);letter-spacing:.01em;color:var(--ink);margin:26px 0 10px;font-size:16px;font-weight:700}.f-bookpage-prose h3:first-child{margin-top:0}.f-bookpage-prose p{margin:0 0 14px}.f-bookpage-prose ul{margin:0 0 14px;padding-left:22px}.f-bookpage-prose li{margin-bottom:8px}.f-bookpage-prose li::marker{color:var(--amber)}.f-bookpage-summary{flex-direction:column;display:flex}@media (max-width:640px){.f-bookpage{padding:26px 22px}}.f-page-badge.summary{background:var(--clay-tint);color:var(--clay)}.f-page-card.summary{border-color:var(--clay-soft)}.f-page-card.summary:hover{border-color:var(--clay)}.f-page-tile.summary{border-color:var(--clay-soft);background:var(--clay-tint)}.f-page-tile.summary:hover{border-color:var(--clay)}.f-lightbox{z-index:300;background:#14120ee0;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.f-lightbox img{border-radius:var(--radius-sm);object-fit:contain;max-width:100%;max-height:100%}.f-lightbox-close{color:#fcfaf5;background:#ffffff1f;border:none;border-radius:8px;padding:8px;display:flex;position:absolute;top:18px;right:18px}.f-card-thumb{aspect-ratio:16/7;background:var(--clay-tint);border-top-left-radius:var(--radius);border-top-right-radius:var(--radius);width:calc(100% + 36px);margin:-18px -18px 4px;overflow:hidden}.f-card-thumb img{object-fit:cover;width:100%;height:100%;display:block}.f-doc-page{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);cursor:text;min-height:560px;padding:44px 56px}@media (max-width:640px){.f-doc-page{padding:28px 22px}}.f-chapters{align-items:flex-start;gap:24px;display:flex}.f-chapters-index{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex:0 0 240px;padding:16px;position:sticky;top:24px}.f-chapters-main{flex:1;min-width:0}.f-chapter-titlebar{align-items:center;margin-bottom:18px;display:flex}.f-chapter-badge-input{font-family:var(--sans);letter-spacing:.01em;background:var(--clay-tint);color:var(--clay);border:1px solid #0000;border-radius:99px;outline:none;max-width:100%;padding:6px 14px;font-size:13px;font-weight:700;transition:border-color .14s,box-shadow .14s}.f-chapter-badge-input:focus{border-color:var(--clay);box-shadow:0 0 0 3px var(--clay-tint)}.f-chapter-badge-input::placeholder{color:var(--clay);opacity:.6}.f-more-menu{z-index:30;background:var(--panel);border:1px solid var(--border);min-width:200px;box-shadow:var(--shadow-lg);border-radius:10px;padding:5px;position:absolute;top:calc(100% + 6px);right:0}.f-chapters-list{flex-direction:column;gap:2px;display:flex}.f-chapter-row{border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:4px;display:flex}.f-chapter-row.active{background:var(--clay-tint)}.f-chapter-link{cursor:pointer;text-align:left;min-width:0;color:var(--sub);border-radius:var(--radius-sm);background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:8px;font-size:13.5px;display:flex}.f-chapter-row.active .f-chapter-link{color:var(--clay);font-weight:600}.f-chapter-link:hover{color:var(--ink)}.f-chapter-num{color:var(--faint);flex-shrink:0;min-width:16px;font-size:12px;font-weight:600}.f-chapter-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.f-chapter-actions{opacity:0;flex-shrink:0;gap:2px;padding-right:4px;transition:opacity .14s;display:flex}.f-chapter-row:hover .f-chapter-actions,.f-chapter-row.active .f-chapter-actions{opacity:1}.f-chapter-actions .f-btn{padding:4px}@media (max-width:800px){.f-chapters{flex-direction:column}.f-chapters-index{flex:auto;width:100%;position:static}}.f-editor{position:relative}.f-editor-content{outline:none;min-height:480px}.f-editor-img-btn{z-index:3;border:1px solid var(--border);background:var(--surface);color:var(--sub);opacity:0;border-radius:8px;align-items:center;gap:6px;padding:6px 11px;font-size:12px;font-weight:600;transition:opacity .15s,color .13s,border-color .13s;display:inline-flex;position:absolute;top:-2px;right:0}.f-editor:hover .f-editor-img-btn,.f-editor:focus-within .f-editor-img-btn{opacity:1}.f-editor-img-btn:hover{color:var(--clay);border-color:var(--clay-soft);background:var(--clay-tint)}.f-prose-img,.f-editor-content img{border-radius:var(--radius-sm);border:1px solid var(--border);max-width:100%;height:auto;margin:1em 0;display:block}.f-editor-content img.ProseMirror-selectednode{outline:2px solid var(--clay);outline-offset:2px}.f-editor-content p.is-editor-empty:first-child:before,.f-editor-content .is-empty:before{content:attr(data-placeholder);float:left;pointer-events:none;height:0;color:var(--faint)}.f-prose ul[data-type=taskList] li{align-items:flex-start;gap:9px;margin:.35em 0}.f-prose ul[data-type=taskList] li>label{-webkit-user-select:none;user-select:none;flex-shrink:0;margin-top:.3em;display:flex}.f-prose ul[data-type=taskList] li>div{flex:1;min-width:0}.f-prose ul[data-type=taskList] li>div>p{margin:0}.f-prose ul[data-type=taskList] input[type=checkbox]{border:1.5px solid var(--border);appearance:none;cursor:pointer;background:var(--surface);border-radius:5px;width:16px;height:16px;margin:0;position:relative}.f-prose ul[data-type=taskList] input[type=checkbox]:checked{background:var(--clay);border-color:var(--clay)}.f-prose ul[data-type=taskList] input[type=checkbox]:checked:after{content:"";border:2px solid #fcfaf5;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.f-prose ul[data-type=taskList] li[data-checked=true]>div{color:var(--faint);text-decoration:line-through}.f-editor-content .tableWrapper{margin:1em 0;overflow-x:auto}.f-editor-content table{border-collapse:collapse;width:100%}.f-editor-content table td,.f-editor-content table th{border:1px solid var(--border);vertical-align:top;padding:7px 11px;position:relative}.f-editor-content table th{background:var(--surface);text-align:left;font-weight:600}.f-editor-content table .selectedCell{background:var(--clay-tint)}.f-editor-content table .column-resize-handle{background:var(--clay);pointer-events:none;width:4px;position:absolute;top:0;bottom:0;right:-2px}.f-editor-content .ProseMirror-gapcursor{display:none}.f-slash-menu{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);min-width:250px;max-height:320px;padding:6px;overflow-y:auto}.f-slash-empty{color:var(--faint);padding:12px 14px;font-size:13px}.f-slash-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:11px;width:100%;padding:8px 10px;transition:background .1s;display:flex}.f-slash-item.active,.f-slash-item:hover{background:var(--clay-tint)}.f-slash-ic{background:var(--surface);border:1px solid var(--border);width:32px;height:32px;color:var(--sub);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.f-slash-item.active .f-slash-ic,.f-slash-item:hover .f-slash-ic{color:var(--clay);border-color:var(--clay-soft)}.f-slash-title{color:var(--ink);font-size:13.5px;font-weight:600}.f-slash-desc{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.f-card-top{justify-content:space-between;align-items:flex-start;display:flex}.f-card-ic.organizer{color:var(--sub);background:#f0eade}.f-card-actions{opacity:0;gap:5px;transition:opacity .14s;display:flex}.f-card:hover .f-card-actions{opacity:1}.f-rename-input{font-family:var(--serif);color:var(--ink);border:1.5px solid var(--clay);background:var(--panel);border-radius:8px;outline:none;width:100%;padding:2px 7px;font-size:15.5px;font-weight:600}.f-folder-crumbs{flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:14px;font-size:13px;display:flex}.f-folder-crumb{color:var(--sub);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:3px 7px;font-size:13px;font-weight:500;transition:background .12s,color .12s}.f-folder-crumb:hover{background:var(--clay-tint);color:var(--ink)}.f-folder-crumb.current{color:var(--ink);cursor:default;font-weight:600}.f-folder-crumb.current:hover{background:0 0}.f-pick-here{border-bottom:1px solid var(--line);padding:14px 20px}.f-pick-list{max-height:320px;padding:8px 0 12px;overflow-y:auto}.f-pick-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:11px;padding:11px 22px;font-size:14px;transition:background .1s;display:flex}.f-pick-item:hover{background:var(--clay-tint)}.f-pick-item .chev{color:var(--faint);margin-left:auto}.f-pick-empty{color:var(--faint);padding:16px 22px;font-size:13px}.f-tpl-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;display:grid}.f-tpl-opt{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:8px;padding:13px;transition:all .14s;display:flex}.f-tpl-opt:hover{border-color:var(--clay-soft)}.f-tpl-opt.active{border-color:var(--clay);background:var(--clay-tint);box-shadow:0 0 0 3px var(--clay-tint)}.f-tpl-opt-ic{width:32px;height:32px;color:var(--sub);background:#f0eade;border-radius:9px;place-items:center;display:grid}.f-tpl-opt.active .f-tpl-opt-ic{background:var(--clay-soft);color:var(--clay)}.f-tpl-opt-label{color:var(--ink);font-size:12.5px;font-weight:600;line-height:1.25}.f-tpl-opt-sub{color:var(--faint);font-size:11px}.f-label .opt{color:var(--faint);text-transform:none;letter-spacing:normal;font-size:12px;font-weight:400}.f-set-section{color:var(--faint);letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px 2px;font-size:11px;font-weight:700}.f-set-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;overflow:hidden}.f-set-title{color:var(--ink);font-size:14.5px;font-weight:600}.f-switch{background:var(--border);cursor:pointer;border:none;border-radius:99px;flex-shrink:0;width:42px;height:25px;transition:background .18s;position:relative}.f-switch:after{content:"";width:19px;height:19px;box-shadow:var(--shadow-sm);background:#fff;border-radius:99px;transition:transform .18s;position:absolute;top:3px;left:3px}.f-switch.on:after{transform:translate(17px)}.f-theme-swatches{gap:8px;display:flex}.f-swatch{cursor:pointer;border:2px solid #0000;border-radius:8px;width:32px;height:32px;transition:transform .12s,border-color .12s}.f-swatch:hover{transform:scale(1.1)}.f-swatch.selected{border-color:var(--ink)}.f-palette-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:80;background:#14100c5c;justify-content:center;align-items:flex-start;padding:12vh 16px 0;display:flex;position:fixed;inset:0}.f-palette{background:var(--panel);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:560px;max-height:70vh;display:flex;overflow:hidden}.f-palette-input-row{border-bottom:1px solid var(--line);align-items:center;gap:11px;padding:16px 18px;display:flex}.f-palette-input-row input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:15px}.f-palette-input-row input::placeholder{color:var(--faint)}.f-palette-results{padding:8px;overflow-y:auto}.f-palette-empty{text-align:center;color:var(--faint);padding:36px 18px;font-size:13.5px}.f-palette-item{cursor:pointer;border-radius:9px;align-items:center;gap:12px;padding:10px 12px;transition:background .1s;display:flex}.f-palette-item.active,.f-palette-item:hover{background:var(--clay-tint)}.f-palette-ic{border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.f-palette-text{flex-direction:column;gap:2px;min-width:0;display:flex}.f-palette-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.f-palette-sub{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.f-palette-tag{color:var(--faint);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;margin-left:auto;font-size:10.5px;font-weight:600}.f-palette-foot{border-top:1px solid var(--line);color:var(--faint);align-items:center;gap:14px;padding:10px 18px;font-size:11.5px;display:flex}.f-palette-foot span{align-items:center;gap:6px;display:flex}.f-toast{z-index:300;background:var(--ink);color:var(--bg);box-shadow:var(--shadow-lg);border-radius:99px;align-items:center;gap:9px;padding:11px 18px;font-size:13.5px;font-weight:600;animation:.22s ease-out f-toast-in;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@keyframes f-toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.f-pop{animation:.16s ease-out f-pop-in}@keyframes f-pop-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.f-capture-ic{background:var(--clay-tint);width:30px;height:30px;color:var(--clay);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.f-inbox-list{flex-direction:column;gap:10px;display:flex}.f-inbox-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:flex-start;gap:14px;padding:16px 18px;transition:border-color .16s,box-shadow .16s;display:flex}.f-inbox-item:hover{border-color:var(--border-soft);box-shadow:var(--shadow-sm)}.f-inbox-ic{background:var(--clay-tint);width:30px;height:30px;color:var(--clay);border-radius:9px;flex-shrink:0;place-items:center;margin-top:1px;display:grid}.f-inbox-text{min-width:0;color:var(--ink);overflow-wrap:anywhere;flex:1;font-size:14.5px;line-height:1.55}.f-inbox-time{color:var(--faint);margin-top:6px;font-size:12px}.f-inbox-actions{flex-shrink:0;gap:6px;display:flex}.f-resume{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-sm);align-items:center;gap:18px;margin-bottom:34px;padding:18px 22px;transition:border-color .16s,box-shadow .16s;display:flex}.f-resume:hover{border-color:var(--clay-soft);box-shadow:var(--shadow-card)}.f-resume-ic{background:var(--clay-tint);width:46px;height:46px;color:var(--clay);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.f-resume-body{flex:1;min-width:0}.f-resume-eyebrow{color:var(--clay);letter-spacing:.04em;text-transform:uppercase;font-size:11.5px;font-weight:600}.f-resume-title{font-family:var(--serif);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:19px;font-weight:600;overflow:hidden}.f-resume-meta{color:var(--faint);margin-top:2px;font-size:13px}.f-capture-btn{border-radius:var(--radius-sm);border:1px solid var(--clay);background:var(--clay);color:#fcfaf5;width:100%;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;gap:8px;padding:11px 14px;font-size:13.5px;font-weight:600;transition:background .15s;display:flex}.f-capture-btn:hover{background:var(--clay-hover)}.f-focus{z-index:120;background:var(--bg);flex-direction:column;animation:.2s ease-out f-fade;display:flex;position:fixed;inset:0}@keyframes f-fade{0%{opacity:0}to{opacity:1}}:root[data-titles=sans] .f-card-title,:root[data-titles=sans] .f-resume-title{font-family:var(--sans)}.f-spin-wrap{justify-content:center;align-items:center;padding:80px 0;display:flex}.f-spin{border:3px solid var(--border);border-top-color:var(--clay);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite f-spin}@keyframes f-spin{to{transform:rotate(360deg)}}.f-link{font:inherit;color:var(--clay);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.f-localmode-notice{z-index:90;background:var(--surface,#fff);max-width:560px;color:var(--sub,#57534e);border:1px solid var(--clay,#b0552f);border-radius:10px;padding:11px 16px;font-size:13px;line-height:1.5;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px -8px #29242140}.f-localmode-notice strong{color:var(--clay,#b0552f);font-weight:700}.f-log-meta{color:var(--faint);font-size:12px}.f-log-meta.dirty{color:var(--amber)}.f-log-section{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin:4px 0 10px;font-size:12px;font-weight:700}.f-log-list{flex-direction:column;gap:8px;margin-bottom:32px;display:flex}.f-log-item{text-align:left;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:14px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.f-log-item:hover{border-color:var(--border);background:var(--panel)}.f-log-item.active{border-color:var(--sage);background:var(--sage-tint)}.f-log-item-date{border-radius:var(--radius-sm);background:var(--sage-soft);width:44px;color:var(--sage);flex-direction:column;flex-shrink:0;align-items:center;padding:5px 0;display:flex}.f-log-item-dow{text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:700}.f-log-item-day{font-size:17px;font-weight:700;line-height:1.1}.f-log-item-title{color:var(--ink);font-size:13px;font-weight:600}.f-log-item-preview{color:var(--sub);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.f-log-item-words{color:var(--faint);flex-shrink:0;font-size:11px}.f-key-row{border-top:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;display:flex}.f-key-row:first-child{border-top:none}.f-key-name{color:var(--ink);font-size:13.5px;font-weight:600}.f-key-meta{color:var(--faint);font-size:12px}.f-key-new{background:var(--sage-tint);border:1px dashed var(--sage);border-radius:var(--radius-sm);align-items:center;gap:10px;margin-top:10px;padding:12px 14px;display:flex}.f-key-new code{word-break:break-all;color:var(--ink);flex:1;font-size:12.5px}.f-backlinks{border-top:1px solid var(--line);margin:26px 0 40px;padding-top:16px}.f-backlinks-head{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);align-items:center;gap:7px;margin-bottom:10px;font-size:12px;font-weight:700;display:flex}.f-backlinks-chips{flex-wrap:wrap;gap:8px;display:flex}.f-backlink-chip{cursor:pointer;background:var(--surface);border:1px solid var(--border);color:var(--ink);border-radius:99px;align-items:center;gap:7px;padding:6px 12px;font-size:13px;transition:border-color .15s;display:inline-flex}.f-backlink-chip:hover{border-color:var(--clay);color:var(--clay)}.f-backlink-chip.log:hover{border-color:var(--sage);color:var(--sage)}.f-cap-overlay{z-index:200;background:var(--bg);grid-template-rows:auto 1fr;padding:0;animation:.16s ease-out f-cap-in;display:grid;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.f-cap-overlay{animation:none}}@keyframes f-cap-in{0%{opacity:0}to{opacity:1}}.f-cap-head{border-bottom:1px solid var(--border);background:var(--panel);align-items:flex-start;gap:16px;padding:18px 28px 16px;display:flex}.f-cap-head-inner{align-items:flex-start;gap:16px;width:100%;max-width:820px;margin:0 auto;display:flex}.f-cap-head-meta{flex:1;min-width:0}.f-cap-head-acts{flex-shrink:0;align-items:center;gap:8px;display:flex}.f-cap-title{font-family:var(--serif);color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;margin:3px 0 2px;font-size:22px;font-weight:600}.f-cap-sub{color:var(--sub);margin:0;font-size:13px}.f-cap-when-btn{cursor:pointer;font:inherit;color:var(--ap);text-underline-offset:2px;opacity:.55;background:0 0;border:0;padding:0 0 0 2px;font-size:12.5px;text-decoration:underline;transition:opacity .14s}.f-cap-head:hover .f-cap-when-btn,.f-cap-when-btn:hover,.f-cap-when-btn:focus-visible{opacity:1}.f-cap-when-edit{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.f-cap-when-input{width:auto;padding:6px 10px;font-size:13.5px}.f-cap-scroll{padding:22px 28px 48px;overflow-y:auto}.f-cap-scroll-inner{max-width:820px;margin:0 auto}.f-cap-overlay .f-capture-text{resize:none;min-height:0;font-size:16px;line-height:1.75}@media (max-width:640px){.f-cap-head{padding:14px 18px 12px}.f-cap-title{font-size:19px}.f-cap-scroll{padding:16px 18px 32px}}.f-capture{max-width:780px}.f-capture-audio{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);margin-bottom:18px;padding:18px 20px}.f-capture-body{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:18px 20px 20px}.f-capture-body-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.f-capture-text{resize:vertical;field-sizing:content;width:100%;min-height:320px;color:var(--ink);font:inherit;background:0 0;border:0;font-size:15px;line-height:1.72}.f-capture-text:focus{outline:none}.f-capture-text::placeholder{color:var(--faint)}.f-wave{align-items:center;gap:12px;display:flex}.f-wave-play{background:var(--ap);width:40px;height:40px;color:var(--ap-ink);cursor:pointer;border:none;border-radius:99px;flex-shrink:0;place-items:center;transition:background .12s;display:grid}.f-wave-play:hover:not(:disabled){background:var(--ap-2)}.f-wave-play:disabled{background:var(--border);cursor:default}.f-wave-canvas{cursor:pointer;flex:1;min-width:0;height:44px}.f-wave-time{color:var(--faint);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12px}.f-wave-fail{color:var(--danger);align-items:center;gap:7px;padding:8px 0;font-size:13px;display:flex}.f-pulse{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer;margin-bottom:20px;padding:16px 18px;transition:border-color .15s,box-shadow .15s}.f-pulse:hover{border-color:var(--clay);box-shadow:var(--shadow-md)}.f-pulse-top{justify-content:space-between;align-items:center;display:flex}.f-pulse-eyebrow{letter-spacing:.05em;text-transform:uppercase;color:var(--clay);align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.f-pulse-vibe{color:var(--ink);margin:8px 0 12px;font-size:16px;font-weight:600}.f-pulse-stats{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.f-pulse-stat{flex:1;align-items:center;gap:9px;min-width:160px;display:flex}.f-pulse-bar{background:var(--surface);border-radius:99px;flex:1;max-width:220px;height:7px;overflow:hidden}.f-pulse-bar span{background:var(--sage);border-radius:99px;height:100%;transition:width .3s;display:block}.f-pulse-stat-label{color:var(--sub);white-space:nowrap;font-size:12.5px;font-weight:600}.f-pulse-chip{color:var(--sub);background:var(--surface);border:1px solid var(--border-soft);border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.f-pulse-chip.warn{color:var(--amber);background:var(--amber-soft);border-color:#0000}:root{--bg:#eff1f0;--panel:#fff;--panel-2:#f7f8f8;--panel-3:#fff9;--ink:#161a19;--sub:#575e5c;--faint:#8a9290;--border:#161a1913;--border-2:#161a1924;--ok:#0f9a6a;--ok-soft:#0f9a6a1a;--warm:#d2672a;--warm-soft:#d2672a1c;--sky:#2a7fcf;--sky-soft:#2a7fcf1a;--amber:#a97c08;--amber-soft:#a97c081f;--pink:#c8438f;--pink-soft:#c8438f1a;--danger:#c2341f;--danger-soft:#c2341f1a;--shadow:0 1px 2px #161a190a, 0 10px 28px #161a190f;--shadow-h:0 2px 5px #161a190d, 0 18px 44px #161a191a;--ap:#127a63;--ap-ink:#fff;--ap-soft:#127a631a;--ap-2:#1fa37f;--wash-1:#127a6326;--wash-2:#d2672a1a;--wash-3:#2a7fcf1a;--wash-o:1;--r-card:26px;--r-lg:18px;--r:14px;--r-sm:12px;--r-xs:9px;--r-pill:999px;--display:var(--font-jakarta), "Plus Jakarta Sans", system-ui, sans-serif;--sans:var(--font-figtree), "Figtree", system-ui, sans-serif;--serif:var(--font-lora), "Lora", Georgia, serif;--title:var(--serif);--rail-w:238px;--rail-collapsed:68px;--tabbar-h:64px;--bp-mobile:760px;--bp-narrow:1040px;--ease:cubic-bezier(.4,0,.2,1);--t-fast:.16s;--t-med:.22s}:root[data-titles=sans]{--title:var(--display)}:root[data-accent=violet]{--ap:#6c3ef4;--ap-2:#9a6bff;--ap-soft:#6c3ef41a;--wash-1:#8560ff29;--wash-2:#ffaf941f;--wash-3:#78d6ff1f}:root[data-accent=cobalt]{--ap:#2358d8;--ap-2:#5a8cff;--ap-soft:#2358d81a;--wash-1:#4678ff26;--wash-2:#ffbe8c1c;--wash-3:#82e1d21f}:root[data-accent=ember]{--ap:#c2451f;--ap-2:#f2743f;--ap-soft:#c2451f1a;--wash-1:#ff8c5a26;--wash-2:#ffcd7821;--wash-3:#be96ff1a}:root[data-accent=teal]{--ap:#0e8f8f;--ap-2:#2fb6b6;--ap-soft:#0e8f8f1a;--wash-1:#14b4b429;--wash-2:#ffbe8c1c;--wash-3:#a08cff1a}:root[data-accent=rose]{--ap:#c4267a;--ap-2:#e85fa6;--ap-soft:#c4267a1a;--wash-1:#e65aa026;--wash-2:#ffc88c1f;--wash-3:#8cb4ff1a}:root[data-accent=slate]{--ap:#3f4b54;--ap-2:#5c6b76;--ap-soft:#3f4b541a;--wash-1:#5a6e7d24;--wash-2:#ffbe8c1a;--wash-3:#8cc8ff1a}:root[data-theme=dark]{--bg:#0a0c0c;--panel:#141817;--panel-2:#1a1f1e;--panel-3:#ffffff0d;--ink:#f0f3f2;--sub:#a0a8a6;--faint:#6f7876;--border:#ffffff14;--border-2:#ffffff2b;--ok:#4cd3a0;--ok-soft:#4cd3a021;--warm:#ffa575;--warm-soft:#ffa57521;--sky:#7cc4ff;--sky-soft:#7cc4ff21;--amber:#ffd37a;--amber-soft:#ffd37a21;--pink:#ff8fd0;--pink-soft:#ff8fd021;--danger:#ff8a73;--danger-soft:#ff8a7321;--shadow:0 1px 2px #0000004d, 0 10px 28px #0000005c;--shadow-h:0 2px 6px #0000005c, 0 20px 48px #0000007a;--ap:#4fd6ae;--ap-ink:#07130f;--ap-soft:#4fd6ae24;--wash-o:.8}:root[data-theme=dark][data-accent=violet]{--ap:#a489ff;--ap-ink:#120e20;--ap-soft:#a489ff26}:root[data-theme=dark][data-accent=cobalt]{--ap:#7fa8ff;--ap-ink:#0b1122;--ap-soft:#7fa8ff26}:root[data-theme=dark][data-accent=ember]{--ap:#ff9366;--ap-ink:#1c0c06;--ap-soft:#ff936626}:root[data-theme=dark][data-accent=teal]{--ap:#4fe0d8;--ap-ink:#052120;--ap-soft:#4fe0d826}:root[data-theme=dark][data-accent=rose]{--ap:#ff8fc4;--ap-ink:#240817;--ap-soft:#ff8fc426}:root[data-theme=dark][data-accent=slate]{--ap:#9aaab5;--ap-ink:#10151a;--ap-soft:#9aaab524}*,:before,:after{box-sizing:border-box}.f-app,.f-app input,.f-app textarea,.f-app button,.f-app select{font-family:var(--sans)}html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100dvh;margin:0;padding:0;font-size:14px;line-height:1.55}body{overscroll-behavior-y:none}a{color:var(--ap);text-decoration:none}a:hover{color:var(--ink)}::selection{background:var(--ap-soft)}:focus-visible{outline:2px solid var(--ap);outline-offset:2px;border-radius:var(--r-xs)}:focus:not(:focus-visible){outline:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,h4,h5,h6{font-family:var(--display);letter-spacing:-.025em;font-weight:800;line-height:1.2}.f-display{font-family:var(--display);letter-spacing:-.025em;font-weight:800}.f-h1{font-family:var(--display);letter-spacing:-.032em;margin:0;font-size:34px;font-weight:800;line-height:1.1}.f-h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:21px;font-weight:800;line-height:1.25}.f-h3{font-family:var(--display);letter-spacing:-.015em;margin:0;font-size:17px;font-weight:800;line-height:1.3}.f-body{color:var(--ink);font-size:14px;line-height:1.6}.f-sub{color:var(--sub);font-size:13.5px;line-height:1.55}.f-small{color:var(--sub);font-size:12.5px;line-height:1.5}.f-meta{color:var(--faint);font-size:11.5px}.f-lede{color:var(--sub);max-width:520px;margin:11px 0 0;font-size:14.5px;line-height:1.55}.f-page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.f-eyebrow,.f-lib-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);font-size:11.5px;font-weight:700}.f-card{background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);padding:30px 32px 40px}.f-card[data-clickable]:hover,a.f-card:hover,button.f-card:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}.f-card-sm{background:var(--panel);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:16px 18px}.f-tile{background:var(--panel-2);border-radius:var(--r);padding:14px 16px}.f-btn{border-radius:var(--r-sm);background:var(--panel);min-height:38px;box-shadow:var(--shadow);color:var(--ink);transition:box-shadow var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);border:none;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:13.5px;font-weight:600;display:inline-flex}.f-btn:hover{box-shadow:var(--shadow-h);transform:translateY(-1px)}.f-btn:active{transform:translateY(0)}.f-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:var(--shadow);transform:none}.f-btn.primary{background:var(--ap);color:var(--ap-ink)}.f-btn.primary:hover{background:var(--ap-2)}.f-btn.ghost{box-shadow:none;color:var(--sub);background:0 0}.f-btn.ghost:hover{background:var(--panel-3);color:var(--ink);transform:none}.f-btn.soft{background:var(--ap-soft);color:var(--ap);box-shadow:none}.f-btn.soft:hover{background:var(--ap-soft);color:var(--ap);box-shadow:var(--shadow)}.f-btn.danger{box-shadow:none;color:var(--danger);background:0 0}.f-btn.danger:hover{background:var(--danger-soft)}.f-btn.sm{min-height:32px;padding:6px 12px;font-size:12.5px}.f-btn.lg{min-height:46px;padding:12px 22px;font-size:15px}.f-btn.block{width:100%}.f-icon-btn{border-radius:var(--r-sm);background:var(--panel);width:38px;height:38px;box-shadow:var(--shadow);color:var(--sub);transition:color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);border:none;flex-shrink:0;place-items:center;display:grid}.f-icon-btn:hover{color:var(--ink);box-shadow:var(--shadow-h)}.f-icon-btn.bare{box-shadow:none;background:0 0}.f-icon-btn.bare:hover{background:var(--panel-3);box-shadow:none}.f-icon-btn.danger:hover{color:var(--warm)}.f-input,.f-textarea,.f-select{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--panel);width:100%;color:var(--ink);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);padding:11px 14px;font-size:13.5px}.f-input::placeholder,.f-textarea::placeholder{color:var(--faint)}.f-input:focus,.f-textarea:focus,.f-select:focus{border-color:var(--ap);box-shadow:0 0 0 3px var(--ap-soft);outline:none}.f-textarea{resize:vertical;min-height:96px;line-height:1.6}.f-field{flex-direction:column;gap:7px;display:flex}.f-label{color:var(--faint);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.f-input-bare{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:13.5px}.f-input-bare::placeholder{color:var(--faint)}.f-chip{border-radius:var(--r-pill);background:var(--panel-2);color:var(--sub);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.f-chip.accent{background:var(--ap-soft);color:var(--ap)}.f-kbd{color:var(--faint);border:1px solid var(--border);border-radius:6px;padding:2px 6px;font-size:10.5px;font-weight:700}.f-seg{border-radius:var(--r);background:var(--panel-2);align-items:center;gap:2px;padding:3px;display:inline-flex}.f-seg-item{border-radius:var(--r-sm);color:var(--faint);transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:0 0;border:none;padding:7px 14px;font-size:12.5px;font-weight:600}.f-seg-item:hover{color:var(--sub)}.f-seg-item.active{background:var(--panel);color:var(--ink);box-shadow:var(--shadow)}@keyframes lmFloat1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(4vw,3vh)scale(1.14)}}@keyframes lmFloat2{0%,to{transform:translate(0)scale(1.08)}50%{transform:translate(-5vw,-4vh)scale(.94)}}@keyframes lmBar{0%,to{transform:scaleY(.32)}50%{transform:scaleY(1)}}@keyframes lmDot{0%,to{opacity:1}50%{opacity:.32}}@keyframes lmRise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.f-rise{animation:lmRise .4s var(--ease) both}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.f-scroll{scrollbar-width:thin;scrollbar-color:var(--border-2) transparent}.f-scroll::-webkit-scrollbar{width:9px;height:9px}.f-scroll::-webkit-scrollbar-track{background:0 0}.f-scroll::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:var(--r-pill);background-clip:content-box;border:2px solid #0000}.f-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:760px){.f-h1{font-size:26px}.f-h2{font-size:19px}.f-card{border-radius:22px;padding:22px 18px 28px}.f-card-sm{padding:14px 15px}.f-btn,.f-icon-btn{min-height:44px}.f-icon-btn{width:44px;height:44px}.f-btn.sm{min-height:38px}.f-seg-item{padding:10px 14px}.f-input,.f-textarea,.f-input-bare{font-size:16px}.f-scroll-x{scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;gap:8px;display:flex;overflow-x:auto}.f-scroll-x::-webkit-scrollbar{display:none}.f-scroll-x>*{scroll-snap-align:start;flex-shrink:0}}.f-app{width:100%;min-height:100dvh;color:var(--ink);background:0 0;display:flex;position:relative;overflow:hidden}.f-wash{pointer-events:none;z-index:0;opacity:var(--wash-o);position:fixed;inset:0;overflow:hidden}.f-wash>div{border-radius:50%;position:absolute}.f-wash-1{background:radial-gradient(circle, var(--wash-1) 0%, transparent 68%);filter:blur(50px);width:46vw;height:46vw;animation:lmFloat1 30s var(--ease) infinite;top:-24vh;left:-4vw}.f-wash-2{background:radial-gradient(circle, var(--wash-2) 0%, transparent 70%);filter:blur(60px);width:40vw;height:40vw;animation:lmFloat2 36s var(--ease) infinite;bottom:-28vh;right:4vw}.f-wash-3{background:radial-gradient(circle, var(--wash-3) 0%, transparent 72%);filter:blur(60px);width:30vw;height:30vw;animation:lmFloat1 44s var(--ease) infinite;top:32vh;right:28vw}.f-rail{z-index:20;scrollbar-gutter:stable;height:100dvh;width:var(--rail-w);transition:width var(--t-med) var(--ease);flex-direction:column;flex-shrink:0;gap:24px;padding:20px 14px 18px;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.f-rail[data-collapsed]{width:var(--rail-collapsed)}.f-rail-brand{align-items:center;gap:10px;padding:4px 6px;display:flex}.f-rail-logo{border-radius:var(--r-sm);background:linear-gradient(145deg, var(--ap), var(--ap-2));width:34px;height:34px;color:var(--ap-ink);box-shadow:0 6px 16px var(--ap-soft);flex-shrink:0;place-items:center;display:grid}.f-rail-name{font-family:var(--display);letter-spacing:-.025em;white-space:nowrap;font-size:19px;font-weight:800;overflow:hidden}.f-rail[data-collapsed] .f-rail-name{opacity:0;max-width:0;transition:opacity calc(var(--t-med) * .5) var(--ease), max-width var(--t-med) var(--ease)}.f-rail:not([data-collapsed]) .f-rail-name{opacity:1;max-width:160px;transition:opacity var(--t-med) var(--ease) calc(var(--t-med) * .3), max-width var(--t-med) var(--ease);overflow:hidden}.f-rail-toggle{width:28px;height:28px;margin-left:auto}.f-rail-expand{width:40px;height:34px;margin:-14px 0 -8px}.f-rail-group{flex-direction:column;gap:2px;display:flex}.f-rail-eyebrow{letter-spacing:.13em;padding:0 12px 9px;font-size:10.5px;overflow:hidden}.f-rail[data-collapsed] .f-rail-eyebrow{opacity:0;max-height:0;transition:opacity calc(var(--t-med) * .5) var(--ease), max-height var(--t-med) var(--ease), padding var(--t-med) var(--ease);padding-top:0;padding-bottom:0}.f-rail:not([data-collapsed]) .f-rail-eyebrow{opacity:1;max-height:30px;transition:opacity var(--t-med) var(--ease) calc(var(--t-med) * .3), max-height var(--t-med) var(--ease), padding var(--t-med) var(--ease)}.f-rail-item{border-radius:var(--r-sm);width:100%;min-height:40px;color:var(--sub);text-align:left;transition:color var(--t-fast) var(--ease);background:0 0;border:none;align-items:center;gap:11px;padding:9px 12px;font-size:13.5px;font-weight:600;display:flex;position:relative}.f-rail-item:hover,.f-rail-item[data-active]{color:var(--ink)}.f-rail[data-collapsed] .f-rail-item{justify-content:center;gap:0;padding:9px 0}.f-rail-item-bg{border-radius:var(--r-sm);background:var(--panel);box-shadow:var(--shadow);position:absolute;inset:0}.f-rail-item-ic{flex-shrink:0;display:flex;position:relative}.f-rail-item-label{white-space:nowrap;flex:1;position:relative;overflow:hidden}.f-rail[data-collapsed] .f-rail-item-label{opacity:0;max-width:0;transition:opacity calc(var(--t-med) * .5) var(--ease), max-width var(--t-med) var(--ease)}.f-rail:not([data-collapsed]) .f-rail-item-label{opacity:1;max-width:140px;transition:opacity var(--t-med) var(--ease) calc(var(--t-med) * .3), max-width var(--t-med) var(--ease)}.f-rail-item-count{color:var(--faint);font-size:11px;font-weight:700;position:relative}.f-rail-item-dot{border-radius:var(--r-pill);width:6px;height:6px;position:absolute;top:7px;right:9px}.f-rail-foot{flex-direction:column;gap:12px;margin-top:auto;display:flex}.f-collapse-btn{border-radius:var(--r-sm);color:var(--faint);cursor:pointer;font-family:var(--sans);white-space:nowrap;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:none;align-items:center;gap:12px;padding:10px 12px;font-size:13px;font-weight:600;display:flex}.f-collapse-btn:hover{background:var(--panel-3);color:var(--sub)}.f-rail[data-collapsed] .f-collapse-btn{justify-content:center;gap:0;padding:10px 0}.f-collapse-label{white-space:nowrap;overflow:hidden}.f-rail[data-collapsed] .f-collapse-label{opacity:0;max-width:0;transition:opacity calc(var(--t-med) * .5) var(--ease), max-width var(--t-med) var(--ease)}.f-rail:not([data-collapsed]) .f-collapse-label{opacity:1;max-width:100px;transition:opacity var(--t-med) var(--ease) calc(var(--t-med) * .3), max-width var(--t-med) var(--ease)}.f-rail-user{border-radius:var(--r);text-align:left;width:100%;transition:background var(--t-fast) var(--ease);background:0 0;border:none;align-items:center;gap:10px;padding:8px 10px;display:flex}.f-rail-user:hover{background:var(--panel-3)}.f-rail-user-wrap{position:relative}.f-rail-profile-menu{z-index:40;border-radius:var(--r-lg);background:var(--panel);width:190px;box-shadow:var(--shadow-h);animation:lmRise .16s var(--ease) both;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);left:0}.f-rail-profile-menu-portal{position:fixed}.f-menu-item{border-radius:var(--r-sm);cursor:pointer;text-align:left;width:100%;font-family:var(--sans);color:var(--sub);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:none;align-items:center;gap:10px;padding:9px 11px;font-size:13.5px;font-weight:600;display:flex}.f-menu-item:hover{background:var(--panel-2);color:var(--ink)}.f-menu-item.danger{color:var(--danger)}.f-menu-item.danger:hover{background:var(--danger-soft)}@media (prefers-reduced-motion:reduce){.f-rail-profile-menu{animation:none}}.f-rail[data-collapsed] .f-rail-user{justify-content:center;gap:0;padding:8px 0}.f-rail-user-text{min-width:0;overflow:hidden}.f-rail[data-collapsed] .f-rail-user-text{opacity:0;max-width:0;height:0;transition:opacity calc(var(--t-med) * .5) var(--ease), max-width var(--t-med) var(--ease), flex-basis var(--t-med) var(--ease);flex:0 0 0}.f-rail:not([data-collapsed]) .f-rail-user-text{opacity:1;max-width:160px;transition:opacity var(--t-med) var(--ease) calc(var(--t-med) * .3), max-width var(--t-med) var(--ease), flex-basis var(--t-med) var(--ease);flex:1}.f-rail-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:700;overflow:hidden}.f-rail-user-sub{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.f-avatar{border-radius:var(--r-pill);color:#fff;background:linear-gradient(145deg, var(--warm), var(--pink));flex-shrink:0;place-items:center;width:31px;height:31px;font-size:11.5px;font-weight:800;display:grid}.f-main{z-index:1;min-width:0;margin-left:var(--rail-w);transition:margin-left var(--t-med) var(--ease);flex-direction:column;flex:1;padding:14px 16px 16px 0;display:flex;position:relative}.f-app:has(.f-rail[data-collapsed]) .f-main{margin-left:var(--rail-collapsed)}.f-topbar-brand{color:var(--ink);font-family:var(--display);letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:8px;margin-top:6px;padding-left:2px;font-size:15px;font-weight:800;display:none}.f-app:has(.f-rail[data-collapsed]) .f-topbar-brand{display:flex}.f-content{flex:1;min-height:0}.f-topbar{z-index:5;align-items:center;gap:12px;padding:0 6px 14px 0;display:flex;position:sticky;top:0}.f-search{border-radius:var(--r);background:var(--panel);width:320px;max-width:100%;box-shadow:var(--shadow);transition:box-shadow var(--t-fast) var(--ease);align-items:center;gap:10px;margin-left:auto;padding:10px 15px;display:flex}.f-search:focus-within{box-shadow:0 0 0 2px var(--ap-soft), var(--shadow)}.f-topbar-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.f-crumbs{flex:1;align-items:center;gap:2px;min-width:0;display:flex}.f-crumb-wrap{align-items:center;gap:2px;min-width:0;display:inline-flex}.f-crumb{border-radius:var(--r-xs);color:var(--sub);white-space:nowrap;text-overflow:ellipsis;transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:0 0;border:none;padding:4px 6px;font-size:13px;font-weight:600;overflow:hidden}button.f-crumb:hover{color:var(--ink);background:var(--panel-3)}.f-crumb.current{color:var(--ink);max-width:32ch;font-weight:700}.f-crumb-sep{color:var(--faint);flex-shrink:0}.f-topbar .f-crumbs{margin:-5px 0 -5px -5px;padding:5px 0 5px 5px;overflow:hidden}.f-tabbar{z-index:20;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--border);align-items:center;gap:2px;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 24px #00000012}.f-tab{border-radius:var(--r-sm);min-height:48px;color:var(--faint);transition:color var(--t-fast) var(--ease);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:4px;padding:7px 2px;font-size:10.5px;font-weight:700;display:flex;position:relative}.f-tab[data-active]{background:var(--ap-soft)}.f-tab-ic{display:flex}.f-tab-label{line-height:1}.f-tab-dot{border-radius:var(--r-pill);width:6px;height:6px;position:absolute;top:6px;right:22%}@media (max-width:760px){.f-rail{display:none}.f-tabbar{display:flex}.f-main{padding:10px 12px calc(88px + env(safe-area-inset-bottom));margin-left:0}.f-topbar{padding-bottom:12px}.f-search{width:100%;max-width:none;margin-left:0}:is(.f-topbar:has(.f-search) .f-crumbs,.f-app:has(.f-rail[data-collapsed]) .f-topbar-brand){display:none}}.f-stat{align-items:flex-start;gap:12px;display:flex}.f-stat-ic{border-radius:var(--r-sm);flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.f-stat-body{min-width:0}.f-stat-value{font-family:var(--display);letter-spacing:-.03em;font-size:26px;font-weight:800;line-height:1.1}.f-stat-label{color:var(--ink);margin-top:2px;font-size:12.5px;font-weight:600}.f-stat-note{color:var(--faint);margin-top:1px;font-size:11.5px}.f-stat-unit{font-family:var(--sans);color:var(--faint);margin-left:3px;font-size:14px;font-weight:600}.f-statcard{background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);padding:18px 20px}button.f-statcard,a.f-statcard{text-align:left;cursor:pointer}button.f-statcard:hover,a.f-statcard:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}.f-statcard-label{color:var(--faint);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.f-statcard-value{font-family:var(--display);letter-spacing:-.022em;color:var(--ink);margin-top:8px;font-size:32px;font-weight:800;line-height:1}.f-statcard-foot{color:var(--sub);margin-top:8px;font-size:12.5px}.f-list-row{text-align:left;background:var(--panel);border-radius:var(--r-card);width:100%;box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;display:flex}button.f-list-row,a.f-list-row{cursor:pointer}button.f-list-row:hover,a.f-list-row:hover{box-shadow:var(--shadow-h)}.f-list-row-title{color:var(--ink);font-size:14px;font-weight:600}.f-list-row-meta{color:var(--faint);margin-top:2px;font-size:12px}.f-list-row-chev{color:var(--faint);flex-shrink:0}.f-empty{text-align:center;background:var(--panel);border-radius:var(--r-card);box-shadow:var(--shadow);padding:28px}.f-empty-msg{color:var(--sub);margin-bottom:14px;font-size:14px}.f-section-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.f-section-head-lead{color:var(--ink);font-family:var(--display);letter-spacing:-.022em;align-items:center;gap:8px;font-size:18px;font-weight:800;display:flex}.f-section-head-ic{color:var(--ap);display:flex}.f-section-head-link{cursor:pointer;color:var(--ap);background:0 0;border:none;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.f-section-head-trailing{color:var(--faint);font-size:12.5px}.f-heat{flex-direction:column;gap:6px;width:100%;min-width:0;display:flex}.f-heat-grid{grid-auto-flow:column;grid-template-rows:repeat(7, var(--heat-cell,11px));grid-auto-columns:var(--heat-cell,11px);gap:3px;display:grid}.f-heat-cell{width:var(--heat-cell,11px);height:var(--heat-cell,11px);transition:transform var(--t-fast) var(--ease);border:none;border-radius:3px;padding:0}.f-heat-cell:not(:disabled):hover{cursor:pointer;transform:scale(1.25)}.f-heat-months{grid-auto-flow:column;grid-auto-columns:var(--heat-cell,11px);color:var(--faint);gap:3px;font-size:9.5px;font-weight:600;display:grid}.f-heat-legend{align-items:center;gap:4px;display:flex}.f-heat-legend .f-heat-cell{aspect-ratio:auto;width:10px;height:10px}.f-sheet-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:lmFade .16s var(--ease) both;background:#0a0c0c6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}@keyframes lmFade{0%{opacity:0}to{opacity:1}}@keyframes lmSlideUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.f-sheet{background:var(--panel);border-radius:var(--r-card);width:100%;max-height:88dvh;box-shadow:var(--shadow-h);animation:lmSlideUp .2s var(--ease) both;outline:none;flex-direction:column;display:flex}.f-sheet-head{justify-content:space-between;align-items:center;gap:12px;padding:20px 22px 12px;display:flex}.f-sheet-body{padding:0 22px 22px;overflow-y:auto}.f-sheet-backdrop[data-mobile]{place-items:end stretch;padding:0}.f-sheet-backdrop[data-mobile] .f-sheet{border-radius:var(--r-card) var(--r-card) 0 0;max-width:none;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom);animation:lmSheetUp .24s var(--ease) both}@keyframes lmSheetUp{0%{transform:translateY(100%)}to{transform:none}}.f-sheet-grab{border-radius:var(--r-pill);background:var(--border-2);flex-shrink:0;width:38px;height:4px;margin:10px auto 2px}.f-ptr{z-index:60;--f-ptr-y:0px;transform:translate(-50%, calc(var(--f-ptr-y) - 26px + env(safe-area-inset-top)));transition:transform var(--t-med) var(--ease), opacity var(--t-fast) var(--ease);pointer-events:none;opacity:0;position:fixed;top:0;left:50%}.f-ptr[data-state=pull],.f-ptr[data-state=armed],.f-ptr[data-state=busy]{opacity:1}.f-ptr-disc{border-radius:var(--r-pill);background:var(--panel);border:1px solid var(--border);width:34px;height:34px;box-shadow:var(--shadow);color:var(--sub);transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);place-items:center;display:grid}.f-ptr[data-state=armed] .f-ptr-disc,.f-ptr[data-state=busy] .f-ptr-disc{color:var(--ap);background:var(--ap-soft)}.f-ptr-ic{display:block}.f-ptr[data-state=busy] .f-ptr-ic{animation:.8s linear infinite lmSpin}@keyframes lmSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.f-ptr{transition:opacity var(--t-fast) var(--ease)}.f-ptr[data-state=busy] .f-ptr-ic{animation:lmDot 1s var(--ease) infinite}}.f-lib-head{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.f-lib-title{margin:8px 0 0}.f-lib-summary{color:var(--faint);padding-bottom:5px;font-size:13px}.f-lib-views{background:var(--panel-2);border:1px solid var(--border);border-radius:11px;gap:3px;margin-left:auto;padding:3px;display:flex}.f-lib-view{cursor:pointer;width:30px;height:26px;color:var(--faint);box-shadow:none;transition:color var(--t-fast) var(--ease);background:0 0;border:none;border-radius:8px;place-items:center;display:grid}.f-lib-view:hover{color:var(--sub)}.f-lib-view[data-on]{color:var(--ink);background:var(--panel);box-shadow:var(--shadow)}.f-lib-bar{border-radius:var(--r-pill);background:var(--panel-2);height:5px;display:block;overflow:hidden}.f-lib-bar>i{border-radius:var(--r-pill);background:var(--tone);height:100%;display:block}.f-lib-pct{color:var(--sub);font-size:11.5px;font-weight:700}.f-lib-notes{color:var(--faint);font-size:11.5px}.f-lib-cards{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:12px;margin-top:22px;display:grid}.f-lib-card{background:var(--panel);border:1px solid var(--border);cursor:pointer;text-align:left;transition:transform .18s var(--ease), box-shadow .18s var(--ease);border-radius:20px;flex-direction:column;padding:18px;display:flex;position:relative}.f-lib-card:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}.f-lib-cover{background:var(--tone-soft);border-radius:14px;align-items:flex-end;height:96px;padding:12px;display:flex;position:relative}.f-lib-mark{font-family:var(--display);letter-spacing:-.03em;color:var(--tone);opacity:.55;font-size:26px;font-weight:800}.f-lib-card-title{font-family:var(--display);letter-spacing:-.018em;text-wrap:pretty;margin-top:14px;font-size:15px;font-weight:700;line-height:1.3;display:block}.f-lib-by{color:var(--faint);margin-top:4px;font-size:12px;display:block}.f-lib-card .f-lib-bar{margin-top:14px}.f-lib-card-foot{align-items:center;gap:8px;min-height:17px;margin-top:auto;padding-top:9px;display:flex}.f-lib-card-foot .f-lib-notes{margin-left:auto}.f-lib-shelf{flex-direction:column;gap:10px;margin-top:22px;display:flex}.f-lib-row{background:var(--panel);border:1px solid var(--border);cursor:pointer;text-align:left;transition:transform .18s var(--ease), box-shadow .18s var(--ease);border-radius:20px;align-items:center;gap:16px;padding:14px 18px 14px 14px;display:flex;position:relative}.f-lib-row:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}.f-lib-spine{background:var(--tone-soft);border-left:4px solid var(--tone);width:52px;height:70px;font-family:var(--display);letter-spacing:-.02em;color:var(--tone);border-radius:6px 11px 11px 6px;flex-shrink:0;place-items:center;font-size:16px;font-weight:800;display:grid}.f-lib-row-main{flex:1;min-width:0;display:block}.f-lib-row-title{font-family:var(--display);letter-spacing:-.018em;font-size:15.5px;font-weight:700;display:block}.f-lib-row-by{color:var(--faint);margin-top:3px;font-size:12px;display:block}.f-lib-row-meta{align-items:center;gap:10px;margin-top:11px;display:flex}.f-lib-row-meta .f-lib-bar{flex:1;max-width:260px}.f-lib-action{background:var(--tone-soft);color:var(--tone);cursor:pointer;font-family:var(--sans);border:none;border-radius:11px;flex-shrink:0;padding:9px 15px;font-size:12.5px;font-weight:700;display:block}.f-lib-focus{margin-top:22px}.f-lib-hero{background:var(--tone-soft);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:22px;flex-wrap:wrap;gap:20px;width:100%;padding:22px;display:flex}.f-lib-hero-cover{background:var(--panel);border-left:5px solid var(--tone);width:104px;height:140px;box-shadow:var(--shadow);font-family:var(--display);letter-spacing:-.03em;color:var(--tone);border-radius:8px 14px 14px 8px;flex-shrink:0;align-items:flex-end;padding:14px;font-size:24px;font-weight:800;display:flex}.f-lib-hero-main{flex:1;min-width:220px;display:block}.f-lib-hero-label{letter-spacing:.09em;text-transform:uppercase;color:var(--tone);font-size:11px;font-weight:800;display:block}.f-lib-hero-title{font-family:var(--display);letter-spacing:-.028em;text-wrap:pretty;margin-top:9px;font-size:23px;font-weight:800;line-height:1.2;display:block}.f-lib-hero-by{color:var(--sub);margin-top:5px;font-size:12.5px;display:block}.f-lib-hero-note{color:var(--sub);text-wrap:pretty;max-width:460px;margin-top:14px;font-size:13.5px;line-height:1.6;display:block}.f-lib-hero-cta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.f-lib-hero-btn{background:var(--tone);color:var(--panel);cursor:pointer;font-family:var(--sans);border:none;border-radius:13px;padding:11px 18px;font-size:13px;font-weight:700;display:block}.f-lib-hero-prog{align-items:center;gap:9px;display:flex}.f-lib-hero-prog .f-lib-bar{background:var(--panel);width:120px;height:6px}.f-lib-hero-prog .f-lib-pct,.f-lib-hero-cta .f-lib-notes{font-size:12px}.f-lib-next-head{align-items:baseline;gap:10px;margin-top:24px;display:flex}.f-lib-next-h2{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:16px;font-weight:800}.f-lib-next-count{color:var(--faint);font-size:12px}.f-lib-next{flex-direction:column;gap:1px;margin-top:10px;display:flex}.f-lib-next-row{cursor:pointer;text-align:left;transition:background var(--t-fast) var(--ease);background:0 0;border:none;border-radius:14px;align-items:center;gap:13px;padding:13px 12px;display:flex}.f-lib-next-row:hover{background:var(--panel-2)}.f-lib-next-mark{background:var(--tone-soft);width:34px;height:34px;color:var(--tone);font-family:var(--display);border-radius:10px;flex-shrink:0;place-items:center;font-size:12.5px;font-weight:800;display:grid}.f-lib-next-main{flex:1;min-width:0;display:block}.f-lib-next-title{letter-spacing:-.012em;font-size:14px;font-weight:700;display:block}.f-lib-next-by{color:var(--faint);margin-top:2px;font-size:11.5px;display:block}.f-lib-next-row .f-lib-bar{flex-shrink:0;width:74px}.f-lib-next-row .f-lib-pct{text-align:right;flex-shrink:0;width:38px}.f-lib-next-row .f-lib-notes{text-align:right;flex-shrink:0;min-width:62px}@media (max-width:760px){.f-lib-views{margin-left:0}.f-lib-view{width:44px;height:36px}.f-lib-cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.f-lib-hero-cover{width:78px;height:104px;font-size:19px}.f-lib-hero-title{font-size:20px}.f-lib-row{gap:12px;padding:12px 14px 12px 12px}.f-lib-next-row .f-lib-bar,.f-lib-next-row .f-lib-notes{display:none}}.f-lib-pin{border-radius:var(--r-xs);width:26px;height:26px;color:var(--faint);background:var(--panel);box-shadow:var(--shadow);cursor:pointer;opacity:0;transition:opacity var(--t-fast) var(--ease), color var(--t-fast) var(--ease);place-items:center;display:grid;position:absolute;top:8px;right:8px}.f-lib-card:hover .f-lib-pin,.f-lib-row:hover .f-lib-pin,.f-lib-pin:focus-visible,.f-lib-pin[data-on]{opacity:1}.f-lib-pin:hover{color:var(--ink)}.f-lib-pin[data-on]{color:var(--ap)}@media (max-width:760px){.f-lib-pin{opacity:1}}.f-cols{flex-wrap:wrap;flex:1;align-items:flex-start;gap:16px;min-height:0;display:flex}.f-panel{border-radius:var(--r-card);background:var(--panel);min-width:0;min-height:calc(100vh - 96px);box-shadow:var(--shadow);animation:lmRise .4s var(--ease) both;flex:520px;padding:30px 32px 40px}.f-panel>.f-empty,.f-panel>.f-card,.f-panel>.f-card-sm,.f-panel .f-list-row{background:var(--panel-2);box-shadow:none;border-radius:var(--r)}.f-panel .f-list-row:hover{background:var(--ap-soft);box-shadow:none;transform:none}.f-aside{flex-direction:column;flex:300px;gap:14px;min-width:0;max-width:340px;display:flex}.f-panel-soft{border-radius:var(--r-card);background:var(--panel-3);width:100%;max-width:1420px;animation:lmRise .4s var(--ease) both;margin:0 auto;padding:28px 30px 34px}@media (prefers-reduced-motion:reduce){.f-panel-soft,.f-panel{animation:none}}@media (max-width:760px){.f-panel{min-height:auto;padding:22px 18px 28px}.f-aside{max-width:none}}.f-topbar-menu-wrap{display:flex;position:relative}.f-topbar-menu{z-index:40;border-radius:var(--r-lg);background:var(--panel);min-width:200px;box-shadow:var(--shadow-h);animation:lmRise .16s var(--ease) both;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.f-topbar-menu-item{border-radius:var(--r-sm);cursor:pointer;text-align:left;white-space:nowrap;font-family:var(--sans);color:var(--sub);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;border:none;align-items:center;gap:10px;padding:9px 11px;font-size:13.5px;font-weight:600;display:flex}.f-topbar-menu-item:hover{background:var(--panel-2);color:var(--ink)}@media (prefers-reduced-motion:reduce){.f-topbar-menu{animation:none}}.f-title-doc{font-family:var(--title);letter-spacing:-.032em;text-wrap:pretty;margin:0;font-size:32px;font-weight:800;line-height:1.14}.f-title-doc[data-focus]{font-size:36px}@media (max-width:760px){.f-title-doc,.f-title-doc[data-focus]{font-size:26px}}.f-lib-card-title,.f-lib-row-title,.f-lib-hero-title{font-family:var(--title)}.f-search-btn{cursor:pointer;text-align:left;font-family:var(--sans);border:none}.f-search-btn-label{min-width:0;color:var(--faint);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13.5px;overflow:hidden}.f-search-btn:hover .f-search-btn-label{color:var(--sub)}.f-log-headrow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.f-log-headrow-nav{align-items:center;gap:6px;margin-left:auto;display:flex}.f-log-daystrip{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.f-log-day{border:1px solid var(--border);background:var(--panel-2);cursor:pointer;font-family:var(--sans);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);border-radius:14px;flex-direction:column;align-items:center;gap:5px;padding:9px 13px;display:flex}.f-log-day:hover{border-color:var(--border-2)}.f-log-day.active{border-color:var(--ap);background:var(--ap-soft)}.f-log-day-dow{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-size:10.5px;font-weight:700}.f-log-day.active .f-log-day-dow{color:var(--ap)}.f-log-day-num{font-family:var(--display);color:var(--ink);font-size:15px;font-weight:800}.f-log-day.active .f-log-day-num{color:var(--ap)}.f-log-day-dot{background:var(--border-2);border-radius:99px;width:5px;height:5px}.f-log-day-dot.on{background:var(--ap)}.f-log-day.active .f-log-day-dot{background:var(--ap);opacity:.7}.f-log-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:22px;display:grid}.f-log-card{background:var(--panel-2);border:1px solid var(--border);border-radius:20px;padding:18px}.f-log-card-head{align-items:center;gap:9px;display:flex}.f-log-card-ic{border-radius:8px;flex-shrink:0;place-items:center;width:24px;height:24px;display:grid}.f-log-card-title{font-size:12.5px;font-weight:800}.f-log-card-meta{color:var(--faint);margin-left:auto;font-size:11.5px;font-weight:700}.f-log-actions{flex-direction:column;gap:2px;margin-top:12px;display:flex}.f-log-action{cursor:pointer;text-align:left;width:100%;font-family:var(--sans);transition:background var(--t-fast) var(--ease);background:0 0;border:none;border-radius:10px;align-items:flex-start;gap:10px;padding:7px 6px;display:flex}.f-log-action:hover{background:var(--panel)}.f-log-action-box{border:1.5px solid var(--border-2);color:#0000;width:17px;height:17px;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border-radius:6px;flex-shrink:0;place-items:center;margin-top:1px;display:grid}.f-log-action.done .f-log-action-box{background:var(--ok);border-color:var(--ok);color:var(--panel)}.f-log-action-text{color:var(--ink);flex:1;font-size:13px;line-height:1.45}.f-log-action.done .f-log-action-text{color:var(--faint);text-decoration:line-through}.f-log-action-tasklink{color:var(--ap);background:var(--ap-soft);border-radius:99px;flex-shrink:0;margin-top:1px;padding:2px 7px;font-size:10.5px;font-weight:700}.f-log-takeaways{flex-direction:column;gap:11px;margin-top:13px;display:flex}.f-log-takeaway{gap:10px;display:flex}.f-log-takeaway-bar{background:var(--ap);opacity:.5;border-radius:99px;flex-shrink:0;align-self:stretch;width:3px}.f-log-takeaway-text{color:var(--sub);text-wrap:pretty;font-size:13px;line-height:1.5}.f-log-composer{border:1px solid var(--border);background:var(--panel-2);transition:border-color var(--t-fast) var(--ease);border-radius:18px;align-items:center;gap:10px;margin-top:22px;padding:11px 12px 11px 16px;display:flex}.f-log-composer:focus-within{border-color:var(--ap)}.f-log-composer-input{min-width:0;font-family:var(--sans);color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:13.5px}.f-log-composer-input::placeholder{color:var(--faint)}.f-log-composer-add{background:var(--ap);width:36px;height:36px;color:var(--ap-ink);cursor:pointer;box-shadow:0 6px 16px var(--ap-soft);transition:background var(--t-fast) var(--ease), opacity var(--t-fast) var(--ease);border:none;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.f-log-composer-add:hover:not(:disabled){background:var(--ap-2)}.f-log-composer-add:disabled{opacity:.4;cursor:default}.f-log-entries-head{align-items:center;gap:10px;margin-top:26px;display:flex}.f-log-entries-count{color:var(--faint);font-size:12px;font-weight:700}.f-log-entries{flex-direction:column;gap:10px;margin-top:14px;display:flex}.f-log-entry{background:var(--panel);border:1px solid var(--border);transition:box-shadow var(--t-fast) var(--ease);border-radius:20px;gap:14px;padding:17px 18px;display:flex;position:relative}.f-log-entry:hover{box-shadow:var(--shadow)}.f-log-entry-gutter{flex-direction:column;flex-shrink:0;align-items:center;gap:8px;display:flex}.f-log-entry-ic{border-radius:11px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.f-log-entry-time{color:var(--faint);white-space:nowrap;font-size:10.5px;font-weight:700}.f-log-entry-main{text-align:left;cursor:pointer;min-width:0;font:inherit;color:inherit;background:0 0;border:none;flex-direction:column;flex:1;padding:0;display:flex}.f-log-entry-text{color:var(--ink);text-wrap:pretty;font-size:13.5px;line-height:1.6}.f-log-entry-text.pending{color:var(--faint);font-style:italic}.f-log-entry-player{margin-top:13px}.f-log-entry-acts{flex-direction:column;gap:2px;margin-top:10px;display:flex}.f-log-entry-foot{flex-wrap:wrap;align-items:center;gap:7px;margin-top:11px;display:flex}.f-log-entry-chip{border-radius:8px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.f-log-entry-chip.neutral{background:var(--panel-2);color:var(--sub)}.f-log-entry-del{opacity:0;transition:opacity var(--t-fast) var(--ease);position:absolute;top:11px;right:12px}.f-log-entry:hover .f-log-entry-del,.f-log-entry-del:focus-visible{opacity:1}.f-log-tone-accent{background:var(--ap-soft);color:var(--ap)}.f-log-tone-warm{background:var(--warm-soft);color:var(--warm)}.f-log-tone-sky{background:var(--sky-soft);color:var(--sky)}.f-log-tone-amber{background:var(--amber-soft);color:var(--amber)}.f-log-tone-pink{background:var(--pink-soft);color:var(--pink)}.f-log-tone-ok{background:var(--ok-soft);color:var(--ok)}.f-log-empty{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:56px 24px;display:flex}.f-log-empty-ic{background:var(--panel-2);border:1px solid var(--border);width:56px;height:56px;color:var(--faint);border-radius:16px;place-items:center;display:grid}.f-log-empty-title{font-family:var(--display);letter-spacing:-.02em;color:var(--ink);font-size:18px;font-weight:800}.f-log-empty-sub{color:var(--sub);max-width:360px;font-size:13.5px;line-height:1.5}.f-log-spin{border:3px solid var(--border);border-top-color:var(--ap);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite f-log-spin}@keyframes f-log-spin{to{transform:rotate(360deg)}}.f-log-cap-pending{color:var(--faint);margin:0;font-size:13.5px;font-style:italic;line-height:1.72}@media (max-width:760px){.f-log-entry{gap:11px;padding:14px}.f-log-entry-del{top:8px;right:8px}}.f-notes-head{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.f-notes-total{color:var(--faint);padding-bottom:5px;font-size:13px}.f-notes-filters{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.f-notes-filter{border-radius:var(--r-pill);border:1px solid var(--border);background:var(--panel-2);cursor:pointer;font-family:var(--sans);color:var(--sub);transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);align-items:center;gap:7px;padding:7px 13px;font-size:12.5px;font-weight:700;display:inline-flex}.f-notes-filter.active{border-color:var(--ap);background:var(--ap-soft);color:var(--ap)}.f-notes-filter-count{opacity:.65;font-size:11px;font-weight:700}.f-notes-filter-add{color:var(--faint);background:0 0;border-style:dashed}.f-notes-filter-add:hover{border-color:var(--sub);color:var(--sub)}.f-notes-feed{flex-direction:column;gap:10px;margin-top:20px;display:flex}.f-notes-feed.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.f-notes-item{background:var(--panel);border:1px solid var(--border);cursor:pointer;text-align:left;transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);border-radius:20px;flex-direction:column;gap:0;padding:16px 18px 18px;display:flex}.f-notes-item:hover{box-shadow:var(--shadow-h);border-color:var(--border-2);transform:translateY(-2px)}.f-notes-item-ic{border-radius:8px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.f-notes-item-top{align-items:center;gap:8px;display:flex}.f-notes-item-folder{letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:800}.f-notes-item-pin{cursor:pointer;width:22px;height:22px;color:var(--faint);background:0 0;border:none;border-radius:7px;place-items:center;margin-left:auto;display:grid}.f-notes-item-pin:hover{background:var(--panel-2)}.f-notes-item-pin.pinned{color:inherit}.f-notes-item-date{color:var(--faint);flex-shrink:0;font-size:11.5px}.f-notes-item-title{font-family:var(--title);letter-spacing:-.018em;text-wrap:pretty;color:var(--ink);margin-top:7px;font-size:15.5px;font-weight:700;line-height:1.3}.f-notes-item-excerpt{color:var(--sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:5px;font-size:12.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.f-notes-item-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-top:11px;display:flex}.f-notes-item-tag{border-radius:8px;padding:3px 9px;font-size:11px;font-weight:700}.f-inbox-head{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.f-inbox-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);font-size:11.5px;font-weight:700}.f-inbox-title{margin-top:8px}.f-inbox-summary{color:var(--faint);padding-bottom:5px;font-size:13px}.f-inbox-list{flex-direction:column;gap:10px;margin-top:22px;display:flex}.f-inbox-row{background:var(--panel);border:1px solid var(--border);border-radius:20px;gap:14px;padding:17px 18px;display:flex}.f-inbox-row-ic{background:var(--ap-soft);width:36px;height:36px;color:var(--ap);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.f-inbox-row-body{flex:1;min-width:0}.f-inbox-row-top{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.f-inbox-row-title{font-family:var(--display);letter-spacing:-.015em;overflow-wrap:anywhere;font-size:14.5px;font-weight:700}.f-inbox-row-when{color:var(--faint);white-space:nowrap;margin-left:auto;font-size:11.5px}.f-inbox-row-note{color:var(--sub);overflow-wrap:anywhere;margin-top:5px;font-size:12.5px;line-height:1.55}.f-inbox-row-actions{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.f-inbox-btn{cursor:pointer;font-family:var(--sans);background:0 0;border:none;border-radius:10px;padding:7px 13px;font-size:12px;font-weight:700}.f-inbox-btn:disabled{opacity:.5;cursor:not-allowed}.f-inbox-btn.primary{background:var(--ap);color:var(--ap-ink)}.f-inbox-btn.primary:hover:not(:disabled){background:var(--ap-2)}.f-inbox-btn.ghost{border:1px solid var(--border);color:var(--sub)}.f-inbox-btn.ghost:hover:not(:disabled){color:var(--ink);border-color:var(--border-2)}.f-inbox-btn.discard{color:var(--faint)}.f-inbox-btn.discard:hover:not(:disabled){color:var(--warm)}@media (max-width:760px){.f-inbox-row{border-radius:16px;padding:15px 14px}.f-inbox-row-when{margin-left:0}}.f-tags-lede{color:var(--sub);max-width:440px;margin:8px 0 0;font-size:13.5px;line-height:1.5}.f-tag-cloud{flex-wrap:wrap;gap:9px;margin-top:22px;display:flex}.f-tag-pill{border:1px solid var(--border);background:var(--panel-2);color:var(--sub);cursor:pointer;font-family:var(--sans);border-radius:99px;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;font-weight:700;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.f-tag-pill:hover{border-color:var(--border-2)}.f-tag-pill.selected{border-color:var(--ap);background:var(--ap-soft);color:var(--ap)}.f-tag-pill .count{opacity:.65;font-size:11px}.f-tags-selected-head{align-items:center;gap:8px;margin-top:28px;display:flex}.f-tags-selected-title{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:16px;font-weight:800}.f-tags-matches{flex-direction:column;gap:9px;margin-top:12px;display:flex}.f-tags-match{background:var(--panel);border:1px solid var(--border);width:100%;box-shadow:none;cursor:pointer;text-align:left;font-family:var(--sans);border-radius:16px;align-items:center;gap:13px;padding:14px 16px;transition:transform .16s,box-shadow .16s;display:flex}.f-tags-match:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}.f-tags-match-icon{border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.f-tags-match-body{flex:1;min-width:0}.f-tags-match-title{letter-spacing:-.012em;color:var(--ink);font-size:14px;font-weight:700;display:block}.f-tags-match-meta{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11.5px;display:block;overflow:hidden}.f-tags-empty{border:1px dashed var(--border-2);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:10px;margin-top:20px;padding:60px 22px;display:flex}.f-tags-empty-ic{background:var(--panel-2);width:44px;height:44px;color:var(--faint);border-radius:14px;place-items:center;display:grid}.f-tags-empty-title{font-family:var(--display);font-size:16px;font-weight:700}.f-tags-empty-sub{color:var(--faint);max-width:320px;font-size:12.5px;line-height:1.5}.f-tags-spin-wrap{justify-content:center;align-items:center;padding:80px 0;display:flex}.f-tags-spin{border:3px solid var(--border);border-top-color:var(--ap);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite f-tags-spin}@keyframes f-tags-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.f-tags-spin{animation:none}}.f-trash-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);font-size:11.5px;font-weight:700}.f-trash-lede{color:var(--sub);margin:8px 0 0;font-size:13.5px;line-height:1.5}.f-trash-empty{border:1px dashed var(--border-2);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:10px;margin-top:20px;padding:60px 22px;display:flex}.f-trash-empty-ic{background:var(--panel-2);width:44px;height:44px;color:var(--faint);border-radius:14px;place-items:center;display:grid}.f-trash-empty-title{font-family:var(--display);font-size:16px;font-weight:700}.f-trash-empty-sub{color:var(--faint);max-width:320px;font-size:12.5px;line-height:1.5}.f-trash-spin-wrap{justify-content:center;align-items:center;padding:80px 0;display:flex}.f-trash-spin{border:3px solid var(--border);border-top-color:var(--ap);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite f-trash-spin}@keyframes f-trash-spin{to{transform:rotate(360deg)}}.f-trash-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:20px;display:grid}.f-trash-card{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:17px}.f-trash-card-head{align-items:center;gap:9px;display:flex}.f-trash-card-ic{border-radius:10px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.f-trash-card-kind{letter-spacing:.07em;text-transform:uppercase;font-size:10.5px;font-weight:800}.f-trash-card-title{font-family:var(--display);letter-spacing:-.015em;overflow-wrap:anywhere;margin-top:12px;font-size:15px;font-weight:700}.f-trash-card-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:14px;display:flex}.f-trash-card-when{color:var(--faint);font-size:11.5px}.f-trash-card-actions{gap:5px;display:flex}.f-trash-icon-btn{border:1px solid var(--border);width:29px;height:29px;color:var(--sub);cursor:pointer;background:0 0;border-radius:9px;place-items:center;transition:color .12s,border-color .12s;display:grid}.f-trash-icon-btn:hover{color:var(--ink);border-color:var(--border-2)}.f-trash-icon-btn.danger:hover{color:var(--danger);border-color:var(--border-2)}@media (max-width:760px){.f-trash-icon-btn{width:36px;height:36px}}.f-set-wrap{max-width:none}.f-set-wrap>.f-h1{margin:8px 0 0}.f-set-wrap>.f-lede{max-width:none;margin:8px 0 0;font-size:13.5px}.f-set-section{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-top:24px;font-size:11px;font-weight:800}.f-set-section.first{margin-top:26px}.f-set-group{background:var(--panel);border:1px solid var(--border);border-radius:18px;flex-direction:column;margin-top:10px;display:flex;overflow:hidden}.f-set-row{border-bottom:1px solid var(--border);align-items:center;gap:13px;padding:16px 18px;display:flex}.f-set-row:last-child{border-bottom:none}.f-set-row.align-start{align-items:flex-start}.f-set-row.col{flex-direction:column;align-items:stretch;gap:12px}.f-set-ic{background:var(--panel-2);width:34px;height:34px;color:var(--sub);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.f-set-main{flex:1;min-width:0}.f-set-title{font-size:13.5px;font-weight:700}.f-set-desc{color:var(--faint);margin-top:2px;font-size:12px}.f-switch{box-sizing:border-box;appearance:none;background:var(--border-2);cursor:pointer;border:none;border-radius:99px;flex-shrink:0;width:42px;height:25px;padding:0;transition:background .18s;position:relative}.f-switch.on{background:var(--ap)}.f-switch:after{content:"";background:#fff;border-radius:99px;width:20px;height:20px;transition:left .18s;position:absolute;top:2.5px;left:2.5px;box-shadow:0 1px 3px #00000040}.f-switch.on:after{left:auto;right:2.5px;transform:none}.f-theme-swatches{gap:9px;margin-top:11px;display:flex}.f-swatch{cursor:pointer;background-clip:content-box;border:2px solid #0000;border-radius:99px;width:26px;height:26px;padding:2px;transition:border-color .15s}@media (max-width:760px){.f-set-row{padding:14px 16px}}.f-item-actions{align-items:center;gap:8px;display:flex}.f-item-icbtn{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--panel);width:34px;height:34px;color:var(--sub);cursor:pointer;transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);place-items:center;display:grid}.f-item-icbtn:hover{color:var(--ink);border-color:var(--border-2)}.f-item-hero{flex-wrap:wrap;gap:20px;margin-top:20px;display:flex}.f-item-cover{background:var(--tone-soft);border-left:5px solid var(--tone);width:96px;height:130px;font-family:var(--display);letter-spacing:-.03em;color:var(--tone);border-radius:8px 14px 14px 8px;flex-shrink:0;align-items:flex-end;padding:13px;font-size:23px;font-weight:800;display:flex}.f-item-main{flex:1;min-width:240px}.f-item-kind{letter-spacing:.09em;text-transform:uppercase;color:var(--tone);font-size:11px;font-weight:800}.f-item-title{margin:9px 0 0}.f-item-author{color:var(--sub);align-items:center;gap:6px;margin-top:6px;font-size:13px;display:flex}.f-item-author-input{color:var(--sub);border:none;border-bottom:1px solid var(--border-2);font-size:13px;font-family:var(--sans);background:0 0;outline:none;min-width:120px;padding:0 0 2px}.f-item-author-edit{color:var(--faint);cursor:pointer;background:0 0;border:none;padding:2px;display:inline-flex}.f-item-author-edit:hover{color:var(--ink)}.f-item-progress{flex-wrap:wrap;align-items:center;gap:11px;margin-top:16px;display:flex}.f-item-progress-edit{align-items:center;gap:6px;display:inline-flex}.f-item-progress-input{color:var(--sub);border:none;border-bottom:1px solid var(--border-2);font-size:12.5px;font-weight:700;font-family:var(--sans);-moz-appearance:textfield;background:0 0;outline:none;width:44px;padding:0 0 2px}.f-item-progress-input::placeholder{color:var(--faint);font-weight:400}.f-item-progress-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.f-item-progress-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.f-item-progress-input:focus{border-bottom-color:var(--tone)}.f-item-bar{border-radius:var(--r-pill);background:var(--panel-2);width:150px;height:6px;overflow:hidden}.f-item-bar>i{border-radius:var(--r-pill);background:var(--tone);height:100%;display:block}.f-item-pct{color:var(--sub);font-size:12.5px;font-weight:700}.f-item-subnote{color:var(--faint);font-size:12.5px}.f-item-cta-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.f-item-cta{flex-wrap:wrap;gap:8px;display:flex}.f-item-cta-primary{background:var(--ap);color:var(--ap-ink);cursor:pointer;font-family:var(--sans);box-shadow:0 8px 20px var(--ap-soft);border:none;border-radius:13px;padding:11px 17px;font-size:13px;font-weight:700}.f-item-cta-secondary{border:1px solid var(--border);background:var(--panel);color:var(--ink);cursor:pointer;font-family:var(--sans);transition:border-color var(--t-fast) var(--ease);border-radius:13px;align-items:center;gap:7px;padding:11px 15px;font-size:13px;font-weight:700;display:inline-flex}.f-item-cta-secondary:hover{border-color:var(--border-2)}.f-item-cta-secondary[disabled]{opacity:.6;cursor:default}.f-item-pending{background:var(--warm-soft);border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;padding:13px 16px;display:flex}.f-item-pending-ic{background:var(--panel);width:26px;height:26px;color:var(--warm);border-radius:9px;place-items:center;display:grid}.f-item-pending-label{color:var(--warm);font-size:12.5px;font-weight:700}.f-item-pending-btn{background:var(--warm);color:var(--panel);cursor:pointer;font-family:var(--sans);border:none;border-radius:11px;margin-left:auto;padding:8px 14px;font-size:12px;font-weight:700}.f-item-pages{flex-direction:column;gap:12px;display:flex}.f-item-page{background:var(--panel);border:1px solid var(--border);cursor:pointer;text-align:left;transition:transform .18s var(--ease), box-shadow .18s var(--ease);border-radius:20px;padding:20px 22px}.f-item-page:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}.f-item-page-head{align-items:center;gap:9px;display:flex}.f-item-page-num{font-family:var(--display);color:var(--faint);font-size:13px;font-weight:800}.f-item-page-dot{background:var(--tone);border-radius:99px;width:6px;height:6px}.f-item-page-status{color:var(--tone);font-size:11px;font-weight:700}.f-item-page-text{color:var(--ink);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:11px;font-size:14.5px;line-height:1.7;display:-webkit-box;overflow:hidden}.f-item-page-add{border:1px dashed var(--border-2);color:var(--faint);cursor:pointer;font-family:var(--sans);transition:color var(--t-fast) var(--ease);background:0 0;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:12px;font-weight:700;display:flex}.f-item-page-add:hover{color:var(--ink)}.f-item-tabs{background:var(--panel-2);border:1px solid var(--border);border-radius:13px;flex-wrap:wrap;flex-shrink:0;gap:4px;width:fit-content;padding:4px;display:flex}@media (max-width:760px){.f-item-tabs{margin-top:8px}}.f-item-tab{cursor:pointer;font-family:var(--sans);color:var(--faint);background:0 0;border:none;border-radius:9px;align-items:center;gap:7px;padding:8px 14px;font-size:12.5px;font-weight:700;display:inline-flex}.f-item-tab[data-active]{color:var(--ink);background:var(--panel);box-shadow:var(--shadow)}.f-item-tab-count{opacity:.6;font-size:11px;font-weight:700}.f-item-panel{margin-top:18px}.f-item-notes{flex-direction:column;gap:10px;display:flex}.f-item-note{background:var(--panel);border:1px solid var(--border);cursor:pointer;text-align:left;width:100%;transition:transform .18s var(--ease), box-shadow .18s var(--ease);border-radius:20px;padding:17px 18px;display:block}.f-item-note:hover{box-shadow:var(--shadow-h);transform:translateY(-2px)}.f-item-note-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.f-item-note-title{font-family:var(--display);letter-spacing:-.018em;font-size:15px;font-weight:700}.f-item-note-date{color:var(--faint);margin-left:auto;font-size:11.5px}.f-item-note-excerpt{color:var(--sub);text-wrap:pretty;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.f-item-note-locator{color:var(--tone);margin-top:10px;font-size:11.5px;font-weight:700}.f-item-chapters{flex-direction:column;gap:1px;display:flex}.f-item-chapter{transition:background .16s var(--ease);border-radius:15px;align-items:center;gap:14px;padding:14px 13px;display:flex}.f-item-chapter:hover{background:var(--panel-2)}.f-item-chapter-badge{cursor:pointer;width:30px;height:30px;font-size:12px;font-weight:800;font-family:var(--sans);transition:transform .12s var(--ease);border:none;border-radius:10px;flex-shrink:0;place-items:center;display:grid}.f-item-chapter-badge:active{transform:scale(.92)}.f-item-chapter-open{cursor:pointer;text-align:left;background:0 0;border:none;flex:1;min-width:0;padding:0}.f-item-chapter-title{letter-spacing:-.012em;font-size:14px;font-weight:700;display:block}.f-item-chapter-meta{color:var(--faint);margin-top:3px;font-size:11.5px;display:block}.f-item-chapter-notes{color:var(--faint);flex-shrink:0;font-size:11.5px;font-weight:700}.f-item-chapter-del{flex-shrink:0}.f-item-drag-handle{width:20px;height:30px;color:var(--faint);cursor:grab;opacity:0;transition:opacity .12s var(--ease);flex-shrink:0;place-items:center;display:grid}.f-item-chapter:hover .f-item-drag-handle{opacity:1}.f-item-drag-handle:active{cursor:grabbing}.f-item-dragging{opacity:.4}.f-item-drag-over{box-shadow:inset 0 2px 0 var(--ap)}.f-item-revs{flex-direction:column;display:flex}.f-item-rev{gap:15px;display:flex}.f-item-rev-rail{flex-direction:column;flex-shrink:0;align-items:center;width:20px;display:flex}.f-item-rev-dot{border-radius:var(--r-pill);background:var(--tone);border:2px solid var(--panel);width:11px;height:11px;box-shadow:0 0 0 1.5px var(--tone);margin-top:5px}.f-item-rev-line{background:var(--border);flex:1;width:1.5px;margin:4px 0}.f-item-rev-body{flex:1;min-width:0;padding-bottom:20px}.f-item-rev-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.f-item-rev-version{font-family:var(--display);font-size:14px;font-weight:800}.f-item-rev-delta{background:var(--tone-soft);color:var(--tone);border-radius:8px;padding:3px 9px;font-size:11px;font-weight:700}.f-item-rev-date{color:var(--faint);margin-left:auto;font-size:11.5px}.f-item-rev-note{color:var(--sub);text-wrap:pretty;margin-top:6px;font-size:13px;line-height:1.55}.f-item-rev-actions{gap:8px;margin-top:10px;display:flex}.f-item-highlights{flex-direction:column;gap:12px;margin-top:18px;display:flex}.f-item-highlight{background:var(--panel-2);border:1px solid var(--border);border-left:3px solid var(--tone);border-radius:20px;padding:18px 20px;position:relative}.f-item-highlight-text{color:var(--ink);text-wrap:pretty;padding-right:24px;font-size:14.5px;line-height:1.65}.f-item-highlight-foot{align-items:center;gap:9px;margin-top:11px;display:flex}.f-item-highlight-locator{color:var(--tone);font-size:11.5px;font-weight:700}.f-item-highlight-date{color:var(--faint);margin-left:auto;font-size:11.5px}.f-item-highlight-remove{width:22px;height:22px;color:var(--faint);cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;display:grid;position:absolute;top:14px;right:14px}.f-item-highlight-remove:hover{background:var(--panel);color:var(--danger)}.f-item-add-highlight-form{background:var(--panel);border:1px solid var(--border);border-radius:20px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.f-item-empty{border:1px dashed var(--border-2);text-align:center;border-radius:20px;padding:34px 22px}.f-item-empty-title{font-family:var(--display);font-size:15px;font-weight:700}.f-item-empty-sub{color:var(--faint);margin-top:6px;font-size:12.5px;line-height:1.55}@media (max-width:760px){.f-item-cover{width:78px;height:104px;font-size:19px}.f-item-bar{width:110px}}.f-writer{padding-bottom:8px}.f-writer-bar{align-items:center;gap:8px;display:flex}.f-writer-back{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--panel);cursor:pointer;font-family:var(--sans);color:var(--sub);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);align-items:center;gap:7px;padding:7px 12px 7px 9px;font-size:12.5px;font-weight:700;display:inline-flex}.f-writer-back:hover{color:var(--ink);border-color:var(--border-2)}.f-writer .f-item-icbtn[disabled]{opacity:.35;cursor:default}.f-writer .f-item-icbtn.danger:hover{color:var(--danger);border-color:var(--danger)}.f-writer-eyebrow{align-items:center;gap:9px;margin-top:20px;display:flex}.f-writer-folder{letter-spacing:.08em;text-transform:uppercase;color:var(--ap);font-size:11px;font-weight:800}.f-writer-sep{border-radius:var(--r-pill);background:var(--faint);width:4px;height:4px}.f-writer-meta{color:var(--faint);font-size:11.5px}.f-writer-title{font-family:var(--title);letter-spacing:-.032em;box-shadow:none;text-wrap:pretty;background:0 0;border:none;width:100%;margin:12px 0 0;padding:0;font-size:34px;font-weight:800;line-height:1.14}.f-writer-fields{flex-wrap:wrap;align-items:center;gap:16px;margin-top:10px;display:flex}.f-writer-locator{color:var(--ap);border:none;border-bottom:1px solid var(--border-2);font-size:12px;font-weight:700;font-family:var(--sans);background:0 0;outline:none;min-width:160px;padding:0 0 3px}.f-writer-select{color:var(--sub);border:none;border-bottom:1px solid var(--border-2);font-size:12px;font-weight:700;font-family:var(--sans);cursor:pointer;background:0 0;outline:none;padding:0 0 3px}.f-writer-done{border:1px solid var(--border);background:var(--panel);color:var(--sub);cursor:pointer;font-family:var(--sans);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);border-radius:9px;align-items:center;gap:6px;padding:5px 12px;font-size:11.5px;font-weight:700;display:inline-flex}.f-writer-done:hover{border-color:var(--border-2);color:var(--ink)}.f-writer-done[data-on]{background:var(--ok-soft);color:var(--ok);border-color:#0000}.f-writer-body{margin-top:22px}.f-writer-tags{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:7px;margin-top:26px;padding-top:20px;display:flex}.f-writer-tag{background:var(--ap-soft);color:var(--ap);border-radius:9px;align-items:center;gap:5px;padding:5px 11px;font-size:11.5px;font-weight:700;display:inline-flex}.f-writer-tag>button{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;padding:0;display:flex}.f-writer-tag>button:hover{opacity:1}.f-writer-tag-add{border:1px dashed var(--border-2);cursor:pointer;font-family:var(--sans);color:var(--faint);transition:color var(--t-fast) var(--ease);background:0 0;border-radius:9px;align-items:center;gap:6px;padding:5px 11px;font-size:11.5px;font-weight:700;display:inline-flex}.f-writer-tag-add:hover{color:var(--ink)}@media (max-width:760px){.f-writer-inner{padding:22px 18px 96px}.f-writer-title{font-size:26px}}.f-writer-locator::placeholder{color:var(--faint);font-weight:600}.f-banner{aspect-ratio:16/6;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--panel-2);width:100%;position:relative;overflow:hidden}.f-banner img{object-fit:cover;width:100%;height:100%;display:block}.f-banner-actions{opacity:0;transition:opacity var(--t-fast) var(--ease);gap:8px;display:flex;position:absolute;top:12px;right:12px}.f-banner:hover .f-banner-actions,.f-banner:focus-within .f-banner-actions{opacity:1}.f-banner-add{aspect-ratio:16/6;border-radius:var(--r-lg);border:1.5px dashed var(--border-2);background:var(--panel-2);width:100%;color:var(--faint);font-family:var(--sans);cursor:pointer;transition:border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);justify-content:center;align-items:center;gap:9px;font-size:13px;font-weight:600;display:flex}.f-banner-add:hover{border-color:var(--ap);color:var(--ap)}.f-banner-add:disabled{cursor:default;opacity:.7}.f-item-content-card{padding:0;overflow:hidden}.f-item-content-banner{aspect-ratio:16/6;width:100%;margin-bottom:44px;position:relative}.f-item-content-banner img{object-fit:cover;width:100%;height:100%;display:block}.f-item-content-banner .f-banner-actions{padding:44px 56px 0 0}.f-item-content-card .f-item-content-banner-add{aspect-ratio:16/6;width:calc(100% - 112px);height:auto;margin:44px 56px}.f-item-content-card .f-writer-body,.f-item-content-card>.f-editor,.f-item-content-card>div[class*=ProseMirror]{padding:0 56px 44px}@media (max-width:760px){.f-item-content-banner{aspect-ratio:16/8;margin-bottom:28px}.f-item-content-banner .f-banner-actions{padding:22px 22px 0 0}.f-item-content-card .f-item-content-banner-add{width:calc(100% - 44px);margin:22px}}.f-writer-banner{border:1px solid var(--border);background:var(--panel-2);border-radius:20px;width:100%;height:220px;margin-top:20px;position:relative;overflow:hidden}.f-writer-banner img{object-fit:cover;width:100%;height:100%;display:block}.f-writer-banner-add{border:1.5px dashed var(--border-2);background:var(--panel-2);width:100%;height:220px;color:var(--faint);cursor:pointer;font-family:var(--sans);transition:border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:10px;margin-top:20px;font-size:14px;font-weight:700;display:flex}.f-writer-banner-add:hover{border-color:var(--ap);color:var(--ap)}.f-writer-banner-add:disabled{cursor:default;opacity:.7}.f-writer-banner-hint{color:var(--ap);font-size:12px;font-weight:600;text-decoration:underline}@media (max-width:760px){.f-writer-banner,.f-writer-banner-add{height:160px}}.f-focus{z-index:120;background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.f-focus-progress{background:var(--border);flex-shrink:0;height:3px}.f-focus-progress-bar{background:var(--ap);height:100%;transition:width .1s linear}.f-focus-exit{z-index:2;position:absolute;top:18px;right:24px}.f-focus-scroll{flex:1;padding:88px 24px 120px;overflow-y:auto}.f-focus-inner{max-width:680px;margin:0 auto}.f-focus-title{font-family:var(--title);letter-spacing:-.028em;margin:18px 0 10px;font-size:40px;font-weight:800;line-height:1.15}.f-focus-meta{color:var(--faint);margin-bottom:36px;font-size:13px}@media (max-width:760px){.f-focus-scroll{padding:76px 18px 96px}.f-focus-title{font-size:30px}}.f-focus .f-prose a{color:var(--ap)}.f-focus .f-prose code{background:var(--ap-soft);color:var(--ap);border-radius:var(--r-sm)}.f-focus .f-prose pre{border-radius:var(--r-sm)}.f-focus .f-prose blockquote{border-left-color:var(--ap)}.f-focus .f-prose hr{border-top-color:var(--border)}.f-focus .f-prose th{background:var(--panel-2)}.f-focus-banner{border-radius:20px;width:100%;height:260px;margin-bottom:28px;overflow:hidden}.f-focus-banner img{object-fit:cover;width:100%;height:100%;display:block}@media (max-width:760px){.f-focus-banner{height:160px;margin-bottom:20px}}.f-writer-save{color:var(--faint);font-size:12px;font-family:var(--sans);align-items:center;gap:5px;display:flex}.f-bookpage-split{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:32px;margin-top:22px;display:grid}.f-bookpage-photo-col{position:sticky;top:0}.f-bookpage-photo-col .f-bookpage-photo{border-radius:var(--r-lg);border:1px solid var(--border);object-fit:contain;background:var(--panel-2);width:100%;max-height:none;margin:0}.f-bookpage-text-col .f-writer-eyebrow{margin-top:0}.f-bookpage-photo-wrap{position:relative}.f-bookpage-photo-edit{border-radius:var(--r-pill);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fcfaf5;font-family:var(--sans);cursor:pointer;opacity:0;transition:opacity var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:#14120ea8;border:none;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:700;display:flex;position:absolute;top:12px;right:12px}.f-bookpage-photo-wrap:hover .f-bookpage-photo-edit,.f-bookpage-photo-wrap:focus-within .f-bookpage-photo-edit{opacity:1}.f-bookpage-photo-edit:hover{background:#14120ed1}@media (max-width:900px){.f-bookpage-split{grid-template-columns:1fr}.f-bookpage-photo-col{position:static}}@media (max-width:760px){.f-bookpage-photo-edit{opacity:1}}.f-bookpage-photo{object-fit:contain;border-radius:var(--r-lg);border:1px solid var(--border);width:auto;max-width:100%;height:auto;max-height:70vh;margin:0 auto 20px;display:block}.f-summary-page{border-bottom:1px solid var(--border);padding:20px 0}.f-summary-page:first-child{padding-top:0}.f-summary-page:last-child{border-bottom:none}.f-summary-pageno{letter-spacing:.03em;color:var(--amber);text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:700}.f-nb-photo-actions{align-items:center;gap:8px;display:flex;position:absolute;top:12px;right:12px}.f-nb-photo-actions .f-bookpage-photo-edit{position:static;top:auto;right:auto}.f-nb-photo-actions .f-bookpage-photo-edit.danger{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.f-nb-photo-actions .f-bookpage-photo-edit.danger{background:color-mix(in oklab, var(--danger) 62%, transparent)}}.f-nb-photo-actions .f-bookpage-photo-edit.danger:hover{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.f-nb-photo-actions .f-bookpage-photo-edit.danger:hover{background:color-mix(in oklab, var(--danger) 82%, transparent)}}.f-writer-banner:hover .f-banner-actions,.f-writer-banner:focus-within .f-banner-actions,.f-item-content-banner:hover .f-banner-actions,.f-item-content-banner:focus-within .f-banner-actions{opacity:1}@media (max-width:760px){.f-writer-banner .f-banner-actions,.f-item-content-banner .f-banner-actions{opacity:1}}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}@property --tw-ease{syntax:"*";inherits:false}
