:root{--font-serif:ui-serif, "New York", "Hiragino Mincho ProN", "Yu Mincho", serif;--font-sans:-apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic UI", system-ui, sans-serif;--font-mono:ui-monospace, "SF Mono", "SFMono-Regular", Menlo, monospace;--paper:#f6f1e7;--paper-2:#fdfaf3;--paper-raise:#fffdf8;--ink:#221d16;--ink-2:#5d5446;--ink-3:#8f8574;--line:#e4dccc;--line-2:#efe8d9;--accent:#b1432c;--accent-2:#9a3824;--accent-ink:#fdfaf3;--accent-tint:#f6e6df;--cat-topic:#3f6fb0;--cat-summary:#2f8f6b;--cat-watchtowr:#8a5cb0;--cat-other:#97806a;--shadow:0 1px 2px #3c2d190f, 0 8px 24px -12px #3c2d192e;--read-size:17px;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#15120d;--paper-2:#1e1a13;--paper-raise:#241f17;--ink:#ede5d6;--ink-2:#b6ac9a;--ink-3:#857b6a;--line:#322b20;--line-2:#2a241a;--accent:#e06a4e;--accent-2:#cf5c41;--accent-ink:#1a140f;--accent-tint:#2f2018;--cat-topic:#6a9bda;--cat-summary:#52bd8f;--cat-watchtowr:#b487e0;--cat-other:#b19a82;--shadow:0 1px 2px #0006, 0 10px 28px -14px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#15120d;--paper-2:#1e1a13;--paper-raise:#241f17;--ink:#ede5d6;--ink-2:#b6ac9a;--ink-3:#857b6a;--line:#322b20;--line-2:#2a241a;--accent:#e06a4e;--accent-2:#cf5c41;--accent-ink:#1a140f;--accent-tint:#2f2018;--cat-topic:#6a9bda;--cat-summary:#52bd8f;--cat-watchtowr:#b487e0;--cat-other:#b19a82;--shadow:0 1px 2px #0006, 0 10px 28px -14px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overscroll-behavior-y:none;margin:0}body:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle at 20% 12%, color-mix(in srgb, var(--accent) 5%, transparent), transparent 42%), radial-gradient(circle at 88% 8%, color-mix(in srgb, var(--cat-topic) 4%, transparent), transparent 40%);opacity:.7;position:fixed;inset:0}button{cursor:pointer;color:inherit;font-family:inherit}.boot{background:var(--paper);height:100dvh}.view{z-index:1;flex-direction:column;height:100dvh;display:flex;position:relative}.scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;flex:1;overflow-y:auto}.scroll__foot{height:calc(28px + env(safe-area-inset-bottom))}.topbar{padding:calc(env(safe-area-inset-top) + 12px) 14px 12px;background:color-mix(in srgb, var(--paper) 82%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid var(--line);z-index:10;align-items:center;gap:6px;display:flex;position:sticky;top:0}.topbar__masthead{font-family:var(--font-serif);letter-spacing:.01em;flex:1;align-items:center;gap:9px;font-size:25px;font-weight:700;display:flex}.topbar__masthead:first-letter{color:var(--accent)}.topbar__count{font-family:var(--font-sans);letter-spacing:0;color:var(--accent-ink);background:var(--accent);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700;line-height:1.4}.topbar__actions{gap:2px;display:flex}.topbar__spacer{flex:1}.topbar__title{font-family:var(--font-serif);font-size:19px;font-weight:600}.iconbtn{width:40px;height:40px;color:var(--ink-2);background:0 0;border:none;border-radius:10px;place-items:center;transition:background .15s,color .15s,transform .1s;display:grid}.iconbtn:active{background:var(--line-2);transform:scale(.92)}.iconbtn:disabled{opacity:.4}.iconbtn--star{color:var(--accent)}.textbtn{border:1px solid var(--line);background:var(--paper-2);color:var(--ink-2);border-radius:999px;justify-content:center;align-items:center;gap:4px;min-width:40px;padding:7px 13px;font-size:13px;font-weight:600;transition:transform .1s,background .15s;display:inline-flex}.textbtn:active{transform:scale(.94)}.textbtn--active{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, var(--line));background:var(--accent-tint)}.textbtn__ico{width:15px;height:15px}.topbar--reader,.topbar--search{padding-top:calc(env(safe-area-inset-top) + 10px);padding-bottom:10px}.chips{scrollbar-width:none;border-bottom:1px solid var(--line-2);background:var(--paper);gap:8px;padding:12px 14px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);background:var(--paper-2);color:var(--ink-2);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 14px;font-size:13.5px;font-weight:600;transition:transform .1s,border-color .15s,color .15s,background .15s;display:inline-flex}.chip:active{transform:scale(.95)}.chip__dot{background:var(--c,var(--ink-3));border-radius:50%;width:8px;height:8px}.chip__n{background:var(--c,var(--ink-3));color:#fff;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:700;line-height:1.5}.chip--on{color:var(--ink);border-color:var(--ink);background:var(--paper-raise);box-shadow:var(--shadow)}.chip--toggle.chip--on{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 50%, var(--line));background:var(--accent-tint)}.statusline{color:var(--ink-3);border-bottom:1px solid var(--line-2);letter-spacing:.01em;padding:9px 18px;font-size:12.5px}.banner{text-align:left;border:none;border-bottom:1px solid color-mix(in srgb, var(--accent) 30%, var(--line));background:var(--accent-tint);width:100%;color:var(--accent-2);align-items:flex-start;gap:10px;padding:11px 16px;font-size:12.5px;font-weight:600;line-height:1.5;display:flex}.banner:active{filter:brightness(.97)}.banner__ico{flex:none;width:18px;height:18px;margin-top:1px}.ptr{color:var(--ink-3);justify-content:center;align-items:center;gap:8px;font-size:12.5px;transition:opacity .15s;display:flex;overflow:hidden}.ptr svg{width:18px;height:18px;transition:transform .1s linear}.daygroup{padding:0 0 6px}.daygroup__head{font-family:var(--font-serif);color:var(--ink-2);background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(8px);z-index:5;letter-spacing:.02em;margin:0;padding:16px 18px 8px;font-size:15px;font-weight:600;position:sticky;top:0}.daygroup__head:after{content:"";background:linear-gradient(90deg, var(--line), transparent);height:1px;margin-top:8px;display:block}.feed{margin:0;padding:0;list-style:none}.entry{text-align:left;border:none;border-bottom:1px solid var(--line-2);background:0 0;flex-direction:column;gap:5px;width:100%;padding:15px 18px;transition:background .15s;animation:.4s both fadeup;display:flex}.entry:active{background:var(--line-2)}@keyframes fadeup{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.entry__top{align-items:center;gap:8px;display:flex}.entry__unreaddot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent);border-radius:50%;margin-left:auto}.entry__date{color:var(--ink-3);margin-left:auto;font-size:12px}.entry__title{font-family:var(--font-serif);color:var(--ink);letter-spacing:.005em;font-size:17.5px;font-weight:600;line-height:1.4}.entry--unread .entry__title{color:var(--ink)}.entry:not(.entry--unread) .entry__title{color:var(--ink-2)}.entry__excerpt,.entry__snippet{color:var(--ink-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.6;display:-webkit-box;overflow:hidden}.entry__snippet mark{background:color-mix(in srgb, var(--accent) 24%, transparent);color:var(--ink);border-radius:3px;padding:0 1px}.entry__star{width:14px;height:14px;color:var(--accent);margin-left:auto}.entry__star+.entry__unreaddot{margin-left:8px}.entry__stubicon{width:15px;height:15px;color:var(--ink-3);opacity:.8;margin-left:auto}.entry__stubicon+.entry__star,.entry__stubicon+.entry__unreaddot{margin-left:8px}.dlbox{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-2);padding:18px}.dlbox__msg{font-family:var(--font-sans);color:var(--ink-2);margin:0 0 12px;font-size:13.5px;line-height:1.7}.dlbox__msg--loading{color:var(--ink-3);background:0 0;border:none;padding:0}.swipe{position:relative;overflow:hidden}.swipe__bg{background:var(--accent);color:var(--accent-ink);align-items:center;padding:0 22px;transition:opacity .12s;display:flex;position:absolute;inset:0}.swipe__bg--r{justify-content:flex-end}.swipe__bg--l{justify-content:flex-start}.swipe__act{letter-spacing:.02em;align-items:center;gap:6px;font-size:12.5px;font-weight:700;display:inline-flex}.swipe__ico{width:16px;height:16px}.swipe__fg{background:var(--paper);touch-action:pan-y;will-change:transform;position:relative}.chip__star{width:13px;height:13px;color:var(--accent)}.selcheck{border:1.5px solid var(--ink-3);width:22px;height:22px;color:var(--accent-ink);border-radius:50%;flex:none;justify-content:center;align-items:center;transition:background .12s,border-color .12s;display:inline-flex}.selcheck--on{background:var(--accent);border-color:var(--accent)}.selcheck svg{width:13px;height:13px}.entry--selected{background:color-mix(in srgb, var(--accent) 8%, transparent)}.selbar{padding:10px 14px calc(env(safe-area-inset-bottom) + 10px);border-top:1px solid var(--line);background:color-mix(in srgb, var(--paper) 90%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);gap:10px;display:flex}.selbar .btn{flex:1}.cat-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--c,var(--ink-3));align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.cat-badge__dot{background:var(--c,var(--ink-3));border-radius:2px;width:7px;height:7px;transform:rotate(45deg)}.empty{text-align:center;color:var(--ink-3);padding:64px 32px}.empty__icon{width:44px;height:44px;color:var(--line);margin-bottom:12px}.empty__title{font-family:var(--font-serif);color:var(--ink-2);margin:0 0 6px;font-size:18px}.empty__sub{margin:0;font-size:13.5px;line-height:1.6}.skel{padding:12px 18px}.skel__row{border-bottom:1px solid var(--line-2);flex-direction:column;gap:9px;padding:15px 0;display:flex}.skel__bar{background:linear-gradient(90deg, var(--line-2), var(--line), var(--line-2));background-size:200% 100%;border-radius:6px;height:12px;animation:1.4s infinite shimmer}.skel__bar--sm{width:30%;height:10px}.skel__bar--md{width:60%}.skel__bar--lg{width:85%;height:16px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.view[data-fontsize=sm]{--read-size:15px}.view[data-fontsize=md]{--read-size:17px}.view[data-fontsize=lg]{--read-size:19.5px}.reader{max-width:42rem;margin:0 auto;padding:20px 22px 40px}.reader__meta{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.reader__date{color:var(--ink-3);font-size:13px}.reader__title{font-family:var(--font-serif);font-size:calc(var(--read-size) * 1.6);letter-spacing:.005em;margin:0 0 18px;font-weight:700;line-height:1.3}.reader__foot{border-top:1px solid var(--line);margin-top:40px;padding-top:16px}.reader__filename{font-family:var(--font-mono);color:var(--ink-3);font-size:12px}.markdown{font-family:var(--font-serif);font-size:var(--read-size);color:var(--ink);word-break:break-word;line-height:1.85}.markdown>:first-child{margin-top:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4{font-family:var(--font-serif);letter-spacing:.005em;margin:1.7em 0 .6em;line-height:1.35}.markdown h1{font-size:calc(var(--read-size) * 1.5);font-weight:700}.markdown h2{font-size:calc(var(--read-size) * 1.24);border-bottom:1px solid var(--line);padding-bottom:.25em;font-weight:700}.markdown h3{font-size:calc(var(--read-size) * 1.08);color:var(--ink);font-weight:700}.markdown p{margin:0 0 1.1em}.markdown a{color:var(--accent);border-bottom:1px solid color-mix(in srgb, var(--accent) 40%, transparent);padding-bottom:1px;text-decoration:none}.markdown strong{color:var(--ink);background:linear-gradient(transparent 62%, color-mix(in srgb, var(--accent) 16%, transparent) 0);font-weight:700}.markdown em{font-style:italic}.markdown ul,.markdown ol{margin:0 0 1.1em;padding-left:1.4em}.markdown li{margin:.35em 0;padding-left:.2em}.markdown li::marker{color:var(--accent)}.markdown blockquote{border-left:3px solid var(--accent);color:var(--ink-2);background:color-mix(in srgb, var(--accent) 5%, transparent);border-radius:0 6px 6px 0;margin:1.2em 0;padding:.5em 0 .5em 1.1em;font-style:italic}.markdown blockquote p:last-child{margin-bottom:0}.markdown code{font-family:var(--font-mono);background:var(--paper-2);border:1px solid var(--line);border-radius:5px;padding:.1em .4em;font-size:.86em}.markdown pre{background:var(--paper-2);border:1px solid var(--line);-webkit-overflow-scrolling:touch;border-radius:10px;margin:1.2em 0;padding:14px 16px;overflow-x:auto}.markdown pre code{color:var(--ink-2);background:0 0;border:none;padding:0;font-size:13.5px;line-height:1.7}.markdown .hljs{color:var(--ink-2)}.markdown .hljs-comment,.markdown .hljs-quote{color:var(--ink-3);font-style:italic}.markdown .hljs-keyword,.markdown .hljs-selector-tag,.markdown .hljs-literal,.markdown .hljs-doctag,.markdown .hljs-type,.markdown .hljs-section{color:var(--cat-watchtowr)}.markdown .hljs-string,.markdown .hljs-regexp,.markdown .hljs-addition{color:var(--cat-summary)}.markdown .hljs-number,.markdown .hljs-symbol,.markdown .hljs-bullet{color:var(--accent)}.markdown .hljs-title,.markdown .hljs-title.function_,.markdown .hljs-built_in,.markdown .hljs-name,.markdown .hljs-attr,.markdown .hljs-attribute,.markdown .hljs-selector-id,.markdown .hljs-selector-class{color:var(--cat-topic)}.markdown .hljs-variable,.markdown .hljs-template-variable,.markdown .hljs-meta,.markdown .hljs-link{color:var(--ink)}.markdown .hljs-deletion{color:var(--accent);text-decoration:line-through}.markdown .hljs-strong{font-weight:700}.markdown .hljs-emphasis{font-style:italic}.markdown hr{border:none;border-top:1px solid var(--line);margin:2em 0}.markdown img{border-radius:10px;max-width:100%;height:auto}.md-img{border:1px solid var(--line);border-radius:10px;margin:1.2em 0;display:block}.md-img--loading{background:linear-gradient(90deg, var(--line-2), var(--line), var(--line-2));background-size:200% 100%;height:140px;animation:1.4s infinite shimmer}.md-img--fallback{font-family:var(--font-sans);color:var(--ink-3);background:var(--paper-2);padding:14px 16px;font-size:13px}.table-scroll{-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:10px;margin:1.2em 0;overflow-x:auto}.markdown table{border-collapse:collapse;width:100%;font-family:var(--font-sans);font-size:14px}.markdown th,.markdown td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:10px 14px}.markdown th{background:var(--paper-2);color:var(--ink-2);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:700}.markdown tr:last-child td{border-bottom:none}.searchbox{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;flex:1;align-items:center;gap:8px;height:40px;padding:0 10px;display:flex}.searchbox__ico{width:18px;height:18px;color:var(--ink-3);flex:none}.searchbox__input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:16px}.searchbox__clear{color:var(--ink-3);background:0 0;border:none;place-items:center;padding:4px;display:grid}.feed--search .entry{gap:6px}.onboard{z-index:1;min-height:100dvh;position:relative;overflow-y:auto}.onboard__inner{max-width:34rem;padding:calc(env(safe-area-inset-top) + 40px) 20px calc(env(safe-area-inset-bottom) + 40px);margin:0 auto}.onboard__head{text-align:center;margin-bottom:28px}.masthead{font-family:var(--font-serif);letter-spacing:.01em;font-size:34px;font-weight:700}.masthead:first-letter{color:var(--accent)}.onboard__sub{color:var(--ink-3);margin:6px 0 0;font-size:14px}.card{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:18px}.card__title{font-family:var(--font-serif);margin:0 0 10px;font-size:16px;font-weight:700}.hint{color:var(--ink-3);margin:0 0 12px;font-size:13px;line-height:1.65}.hint--center{text-align:center;margin:8px 0}.hint strong{color:var(--ink-2)}.link-out{color:var(--accent);margin-bottom:12px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-block}.field{width:100%;font-family:var(--font-sans);color:var(--ink);background:var(--paper-raise);border:1px solid var(--line);border-radius:10px;outline:none;padding:11px 13px;font-size:16px;transition:border-color .15s,box-shadow .15s}.field:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent)}.grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lbl{color:var(--ink-2);flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;display:flex}.lbl__opt{color:var(--ink-3);margin-left:5px;font-weight:400}.msg{border-radius:9px;margin:12px 0;padding:10px 12px;font-size:13px;line-height:1.6}.msg--ok{color:var(--cat-summary);background:color-mix(in srgb, var(--cat-summary) 12%, transparent)}.msg--err{color:var(--accent);background:var(--accent-tint)}.btn{border:1px solid #0000;border-radius:11px;width:100%;padding:13px 16px;font-size:15px;font-weight:700;transition:transform .1s,background .15s,opacity .15s}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.42}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--ghost{background:var(--paper-raise);border-color:var(--line);color:var(--ink)}.btn--text{color:var(--ink-3);background:0 0;font-weight:600}.btn--danger{border-color:color-mix(in srgb, var(--accent) 40%, var(--line));color:var(--accent);background:0 0}.onboard__actions{flex-direction:column;gap:10px;margin-top:24px;display:flex}.btnstack{flex-direction:column;gap:10px;display:flex}.settings{max-width:34rem;margin:0 auto;padding:18px 18px 0}.settings__stat{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;display:grid}.settings__stat>div{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);text-align:center;padding:16px}.settings__statnum{font-family:var(--font-serif);font-size:30px;font-weight:700;line-height:1}.settings__statnum--sm{padding:6px 0;font-size:17px}.settings__statlbl{color:var(--ink-3);margin-top:6px;font-size:12px}.segmented{background:var(--paper-raise);border:1px solid var(--line);border-radius:11px;gap:3px;padding:3px;display:flex}.segmented__opt{color:var(--ink-2);background:0 0;border:none;border-radius:8px;flex:1;padding:9px;font-size:13.5px;font-weight:600;transition:background .15s,color .15s}.segmented__opt--on{background:var(--accent);color:var(--accent-ink)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
