:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#171a1c;--surface:#22272a;--text:#e9e8e3;--muted:#a5aeb2;--accent:#8cb9c5;--warning:#d4aa70;--line:#3a4449;--error:#efb2a5;--story-size:18px;--page-space:20px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg);scrollbar-color:#59666d var(--bg);scroll-padding-top:100px}body{color:var(--text);margin:0;font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;background:0 0;border:0;min-height:44px;padding:8px 12px}button:disabled{cursor:not-allowed;opacity:.48}button:not(:disabled):active{filter:brightness(.88)}a{color:var(--accent);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1:focus,h2:focus{outline:none}::selection{color:var(--text);background:#8cb9c54d}input,textarea{caret-color:var(--accent)}input::placeholder,textarea::placeholder{color:#a1adb3;opacity:1}p{margin:0 0 1em}h1,h2,h3{overflow-wrap:break-word}h2{margin:34px 0 15px;font-size:20px;font-weight:550;line-height:1.3}h3{margin:20px 0 12px;font-size:16px;font-weight:600}button svg{flex-shrink:0}img{max-width:100%}hr{border:0;border-top:1px solid var(--line)}[hidden]{display:none!important}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--text);color:var(--bg);padding:12px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.journal{max-width:760px;min-height:100dvh;padding-bottom:env(safe-area-inset-bottom);margin:0 auto}.header-space{height:96px}.header{z-index:20;width:min(100%,760px);height:96px;padding:14px var(--page-space) 10px;background:var(--bg);padding-top:max(14px,env(safe-area-inset-top));justify-content:space-between;align-items:center;gap:10px;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.header-hidden{transform:translate(-50%,-110%)}.header:focus-within{transform:translate(-50%)}.brand{text-align:left;letter-spacing:.015em;text-transform:uppercase;padding:4px 0;font-size:13px;font-weight:600;line-height:1.5}.header-actions{flex-shrink:0;gap:0;display:flex}.icon-button{border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:8px;display:inline-flex}.icon-button:hover,.text-button:hover{background:#ffffff06}.today-toggle{width:100%;padding:11px var(--page-space) 16px;border-bottom:1px solid var(--line);text-align:left;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.today-counts{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:12px;margin-left:auto;display:inline-flex}.today-counts span{align-items:center;gap:5px;display:inline-flex}.rotate{transform:rotate(180deg)}.today-content{padding:20px var(--page-space) 28px;border-bottom:1px solid var(--line)}.today-content .event-row:last-of-type{border-bottom:0}.cover{aspect-ratio:3/2;object-fit:cover;background:var(--surface);width:100%;height:auto;display:block}.publication{margin:0}.story-body{padding:24px var(--page-space) 36px;max-width:66ch;margin:0 auto}.story-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex;position:relative}.date-link{text-align:left;flex:1;justify-content:space-between;align-items:center;gap:16px;min-height:32px;padding:0;font-size:12px;display:flex}.story-title{text-wrap:balance;letter-spacing:-.015em;margin:12px 0 24px;font-family:Georgia,Cambria,serif;font-size:33px;font-weight:400;line-height:1.15}.prose{font-family:Georgia,Cambria,serif;font-size:var(--story-size);overflow-wrap:anywhere;line-height:1.65}.prose p{margin:0 0 1em}.prose h2,.prose h3{margin:1.8em 0 .7em;font-family:Georgia,Cambria,serif;font-weight:500;line-height:1.35}.prose h2{font-size:1.35em}.prose h3{font-size:1.15em}.prose ul,.prose ol{padding-left:1.5em}.prose li{margin:.4em 0;padding-left:.2em}.prose blockquote{border-left:1px solid var(--accent);color:var(--muted);margin:1.5em 0;padding-left:18px}.prose pre{background:var(--surface);padding:14px;font:14px/1.6 ui-monospace,monospace;overflow:auto}.prose code{overflow-wrap:anywhere;font-size:.85em}.prose table{display:block;overflow:auto}.story-tags{color:var(--muted);flex-wrap:wrap;align-items:center;gap:0 8px;margin:22px 0 2px;display:flex}.story-tags button{min-height:36px;padding:3px 0;font-size:13px}.story-tags button+button:before{content:"·";color:var(--muted);padding-right:8px}.sources-link{text-align:left;width:100%;color:var(--muted);justify-content:space-between;align-items:center;margin-top:8px;padding:8px 0;font-size:14px;display:flex}.day-menu{z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:7px;min-width:min(270px,90vw);padding:6px 18px;position:absolute;top:48px;right:0}.day-back{padding:5px var(--page-space) 12px}.day-back .text-button{padding-left:0}.filter-strip,.connection-notice,.update-notice{padding:12px var(--page-space);justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.connection-notice{color:var(--warning);border-bottom:1px solid var(--line)}.update-notice{flex-wrap:wrap;justify-content:center}.filter-strip{color:var(--muted);border-bottom:1px solid var(--line)}.empty-feed{padding:clamp(65px,13vh,145px) var(--page-space) 80px;max-width:580px;margin:auto}.small-rule{background:var(--accent);width:42px;height:1px;margin-bottom:25px;display:block}.empty-feed h1,.empty-day h1{text-wrap:balance;max-width:14ch;margin:0 0 24px;font-family:Georgia,Cambria,serif;font-size:34px;font-weight:400;line-height:1.2}.empty-feed p{max-width:38ch;color:var(--muted)}.empty-day{padding:38px var(--page-space) 80px}.feed-more{text-align:center;padding:8px 20px 36px}.end-note{text-align:center;color:var(--muted);margin:0 0 45px;font:italic 15px Georgia,serif}.feed-skeleton{opacity:.65}.skeleton-cover{aspect-ratio:3/2;background:var(--surface)}.skeleton-lines{padding:32px var(--page-space)}.skeleton-lines span{background:var(--surface);width:90%;height:16px;margin-bottom:18px;display:block}.skeleton-lines span:first-child{width:45%;height:24px;margin-bottom:26px}.skeleton-lines span:last-child{width:65%}.inset{padding:0 var(--page-space)}.screen{padding:0 var(--page-space) 50px;max-width:680px;min-height:70dvh;margin:auto}.screen-heading{align-items:center;gap:8px;min-height:76px;margin-left:-10px;padding:7px 0 24px;display:flex}.screen-heading h1{margin:0;font-size:20px;font-weight:550;line-height:1.3}.screen-heading .icon-button{margin-right:4px}.fine,small{color:var(--muted);font-size:13px;line-height:1.5}.muted{color:var(--muted)}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.row p{margin:0}.actions{flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0 0;display:flex}.primary,.secondary{text-align:center;border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:11px 17px;font-size:15px;font-weight:550;text-decoration:none;display:inline-flex}.primary{background:var(--text);color:var(--bg);border:1px solid var(--text)}.secondary{color:var(--text);background:0 0;border:1px solid #637078}.primary:hover:not(:disabled){background:#fff}.secondary:hover:not(:disabled){background:#ffffff08}.text-button{color:var(--accent);border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:8px 10px;font-size:14px;display:inline-flex}.danger-button{color:var(--error);text-align:left}.full-width{width:100%}.loading{color:var(--muted);align-items:center;gap:9px;padding:16px 0;font-size:14px;display:flex}.journal>.loading{padding-inline:var(--page-space)}.notice{border:1px solid var(--line);overflow-wrap:anywhere;background:#20292e;border-radius:4px;margin:20px 0;padding:14px 16px;font-size:14px}.notice p:last-child{margin-bottom:0}.notice p{margin-bottom:8px}.error{color:var(--error)}.error-text{color:var(--error);overflow-wrap:anywhere;font-size:14px}.success{color:var(--accent)}.empty-state{color:var(--muted);padding-block:26px}.empty-state h1{color:var(--text);font-size:25px}.menu-row{text-align:left;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:58px;padding:17px 0;display:flex}.menu-row:hover,.search-result:hover,.event-row:hover{color:var(--accent)}.menu-row small{margin-top:5px;display:block}.menu-row svg{color:var(--muted);flex-shrink:0}.menu-row:last-child{border-bottom:0}label{color:var(--muted);margin:20px 0 8px;font-size:14px;display:block}input,textarea,select{background:var(--surface);width:100%;max-width:100%;color:var(--text);border:1px solid #59686f;border-radius:5px;min-height:46px;padding:12px;display:block}input[type=file]{padding:10px;font-size:13px}input[type=file]::file-selector-button{background:var(--text);color:var(--bg);cursor:pointer;border:0;border-radius:3px;margin-right:10px;padding:7px 10px}select{padding-right:24px}textarea{resize:vertical;min-height:180px;scroll-margin-bottom:100px;line-height:1.6}form>button.primary,form>button.secondary{margin-top:18px}.note-input{min-height:230px}.form-actions{z-index:4;padding:16px 0 max(14px,env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;display:flex;position:sticky;bottom:0}.sheet .form-actions{background:var(--surface)}.stack-actions{flex-direction:column;align-items:stretch;gap:12px;margin:20px 0;display:flex}.checkbox-label{color:var(--text);align-items:flex-start;gap:10px;margin:20px 0;font-size:13px;line-height:1.6;display:flex}.checkbox-label input{width:20px;min-height:20px;accent-color:var(--accent);flex-shrink:0;margin:1px 0 0}.search-field{background:var(--surface);border:1px solid #59686f;border-radius:5px;align-items:center;gap:4px;padding-left:12px;display:flex}.search-field svg{color:var(--muted);flex-shrink:0}.search-field input{background:0 0;border:0;min-width:0;padding:12px 8px}.search-field input::-webkit-search-cancel-button{display:none}.filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.filters label{min-width:0;margin-top:15px}.filters label>span{margin-bottom:6px;display:block}.filters select{font-size:14px}.filters input{min-width:0;margin-top:6px;padding:10px 8px;font-size:14px}summary{cursor:pointer;min-height:44px;color:var(--muted);padding-block:10px;font-size:14px}details[open]>summary{margin-bottom:8px}.date-filters{margin-top:5px}.calendar{margin:18px 0 24px}.calendar-heading{justify-content:space-between;align-items:center;gap:4px;display:flex}.month-picker{text-align:center;margin:0}.month-picker input{background:0 0;border-color:#0000;width:auto;max-width:210px;min-height:44px;padding:8px;font-size:16px}.calendar-week,.calendar-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;display:grid}.calendar-week{color:var(--muted);padding:14px 0 5px;font-size:12px}.calendar-week span{padding:6px 0}.calendar-day{font-variant-numeric:tabular-nums;border:1px solid #0000;border-radius:3px;min-width:0;min-height:46px;padding:6px 0;font-size:14px;position:relative}.calendar-day.state-published:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;left:calc(50% - 2px)}.calendar-day.state-pending:after,.calendar-day.state-processing:after{content:"";border:1px solid var(--warning);border-radius:50%;width:5px;height:5px;position:absolute;bottom:4px;left:calc(50% - 2px)}.calendar-day.is-today{border-color:var(--line)}.calendar-day:hover:not(:disabled){background:var(--surface)}.calendar-key{color:var(--muted);margin:10px 0 0;font-size:11px;line-height:1.5}.search-result{text-align:left;border-bottom:1px solid var(--line);overflow-wrap:anywhere;width:100%;padding:20px 0;display:block}.search-result strong{color:var(--text);margin:8px 0 10px;font:400 22px/1.3 Georgia,Cambria,serif;display:block}.search-result span{display:block}.modal-backdrop{z-index:50;overscroll-behavior:contain;background:#04080ab3;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:640px;max-height:90dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:16px 16px 0 0;flex-direction:column;display:flex;overflow:hidden}.sheet-grip{touch-action:none;flex-shrink:0;padding:12px 0 6px}.sheet-grip span{background:#6c7980;border-radius:4px;width:38px;height:4px;margin:auto;display:block}.sheet-heading{padding:5px var(--page-space) 10px;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;display:flex}.sheet-heading h2{margin:0;font-size:22px;font-weight:500;line-height:1.25}.sheet-content{padding:0 var(--page-space) 24px;overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;overflow-y:auto}.sheet label{margin-top:18px}.sheet input,.sheet textarea,.sheet select{background:var(--bg)}.sheet .secondary:hover:not(:disabled){background:#ffffff08}.sheet form{position:relative}.sheet .cover{margin:12px 0 20px}.sheet-content>.fine:first-child{margin-top:4px}.event-row{text-align:left;border-bottom:1px solid var(--line);width:100%;padding:16px 0;display:block}.event-row strong{overflow-wrap:anywhere;margin:7px 0 0;font-weight:450;display:block}.event-detail{padding:12px 0 18px}.event-detail blockquote{white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0;font-family:Georgia,Cambria,serif;line-height:1.65}.raw-text{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg);border-radius:4px;max-height:65vh;padding:14px;font:14px/1.65 ui-monospace,SFMono-Regular,monospace;overflow:auto}.coverage{margin-top:24px}.local-queue{border-top:1px solid var(--line);margin-top:30px;padding-top:5px}.queue-note{border-bottom:1px solid var(--line);padding:16px 0;font-size:14px}.queue-note>p:first-child{white-space:pre-wrap;overflow-wrap:anywhere;max-height:150px;overflow:auto}.login-screen{max-width:480px;padding-top:10px}.login-title{letter-spacing:-.015em;margin:24px 0;font-family:Georgia,Cambria,serif;font-size:36px;font-weight:400;line-height:1.2}.password-field{background:var(--surface);border:1px solid #59686f;border-radius:5px;align-items:center;display:flex}.password-field input{background:0 0;border:0;min-width:0}.login-screen .full-width{margin:24px 0 12px}.editor-input{min-height:55dvh;font-family:Georgia,Cambria,serif;font-size:18px}.editor-preview{min-height:40vh;padding:16px 0}.editor-preview .story-title{margin-top:10px}.editor-cover{margin-bottom:15px}.conflict h2{margin-top:0}.conflict .prose{font-size:16px}.revision-preview{margin:20px calc(-1 * var(--page-space))}.revision-preview .story-body{padding:20px var(--page-space)}.revision-preview>.notice,.revision-preview>button,.revision-preview>details{margin-inline:var(--page-space)}.revision-preview .story-title{font-size:27px}.revision-preview .prose{font-size:17px}.section-end{border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.provider-test{justify-content:space-between;align-items:center;gap:12px;margin:12px 0 18px;display:flex}.provider-test p{overflow-wrap:anywhere;min-width:0;margin:0}.provider-test button{flex-shrink:0;padding:8px 12px;font-size:13px}.source-status{border-bottom:1px solid var(--line);padding:18px 0}.source-status p{margin:8px 0 0}.import-preview{margin-top:35px}.import-messages{border-block:1px solid var(--line);max-height:55vh;margin:20px 0;padding-right:10px;overflow:auto}.import-message{border-bottom:1px solid var(--line);padding:18px 0}.import-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0 0;font-size:14px}.backup-item,.operation-row{border-bottom:1px solid var(--line);padding:22px 0}.backup-item h3{margin:0 0 16px}.backup-item dl{margin:0;font-size:13px}.backup-item dl>div{grid-template-columns:minmax(100px,.8fr) minmax(0,1fr);gap:15px;margin:10px 0;display:grid}.backup-item dt{color:var(--muted)}.backup-item dd{margin:0}.operation-row p{margin:8px 0}.break-word{overflow-wrap:anywhere}.download-link{margin:8px 0}.toast{bottom:max(24px,env(safe-area-inset-bottom));z-index:90;background:var(--text);color:var(--bg);pointer-events:none;border-radius:5px;width:max-content;max-width:calc(100vw - 32px);padding:13px 18px;font-size:14px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 25px #0005}@media (width>=700px){:root{--story-size:20px;--page-space:32px}.header-space,.header{height:100px}.brand-break{display:none}.brand{font-size:14px}.header{padding-inline:32px}.story-body{max-width:100%;padding:30px 54px 46px}.story-title{font-size:40px;line-height:1.16}.story-meta,.date-link{font-size:13px}.today-toggle{font-size:14px}.today-counts{gap:16px}.sheet{border-radius:12px;max-height:85dvh;padding-bottom:4px}.modal-backdrop{align-items:center;padding:30px}.sheet-grip{padding-top:12px}.screen{padding-top:10px}.empty-feed h1{font-size:42px}.calendar-day{min-height:52px}.calendar{max-width:440px;margin-inline:auto}}@media (width<=359px){.calendar-grid,.calendar-week{margin-inline:-10px}:root{--page-space:16px}.brand{font-size:11px}.header{gap:6px}.header-actions{gap:0}.today-toggle{gap:5px;font-size:11px}.today-counts{gap:7px}.today-counts span{gap:4px}.story-title{font-size:30px}.date-link{gap:8px;font-size:11px}.screen-heading h1{font-size:18px}.sheet-heading h2{font-size:20px}.provider-test{flex-direction:column;align-items:flex-start}.filters{gap:8px}.filters select{padding:10px 5px;font-size:13px}.calendar-day{min-height:44px}.month-picker input{max-width:180px}.login-title,.empty-feed h1{font-size:32px}.backup-item dl>div{grid-template-columns:1fr;gap:4px}}html[data-text-size=large]{--story-size:21px}html[data-text-size=large] .story-title{font-size:36px}@media (width>=700px){html[data-text-size=large]{--story-size:23px}html[data-text-size=large] .story-title{font-size:44px}}@media (prefers-reduced-motion:no-preference){button,a{transition:background-color .15s,color .15s}.header{transition:transform .22s ease-out}.rotate{transition:transform .18s}.loading svg{animation:1.2s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.sheet{animation:.18s ease-out sheet-appear}@keyframes sheet-appear{0%{opacity:.7;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
