:root{--paper:#fff;--ink:#191919;--muted:#707070;--line:#eeeeef;--red:#e60023;--green:#e60023;color-scheme:light}*{box-sizing:border-box}html{scroll-padding-top:145px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer;color:inherit;border:0;background:none}button:focus-visible,a:focus-visible{outline:3px solid var(--red);outline-offset:3px}a{color:inherit;text-decoration:none}button:active{transform:scale(.96)}.sidebar,.desktop-label,.intro,.count{display:none}main{padding:0 10px calc(108px + env(safe-area-inset-bottom));max-width:700px;margin:auto}header{height:70px;display:flex;justify-content:space-between;align-items:center;padding:7px 8px;position:relative}.wordmark{display:flex;align-items:center;gap:7px;font-size:32px;font-weight:800;letter-spacing:-1.8px;color:var(--red)}.brand-symbol{display:grid;place-items:center;background:var(--red);color:white;width:30px;height:30px;border-radius:50%;font-size:20px;letter-spacing:0;font-weight:800}.header-sub{font-size:11px;color:var(--muted);letter-spacing:0;font-weight:500;border-left:1px solid #ddd;padding-left:12px;margin-left:6px}.round{width:44px;height:44px;border-radius:50%;background:#f4f4f4;display:grid;place-items:center}.round svg{width:21px;height:21px}.feed-toolbar{position:sticky;top:0;z-index:8;background:#ffffffef;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:6px 0 12px;margin:0 -10px}.filters{display:flex;align-items:center;gap:7px;padding:0 14px;overflow:auto;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.filters button{font-size:14px;font-weight:650;padding:0 17px;height:44px;border-radius:24px;background:#f2f2f2;white-space:nowrap;flex-shrink:0}.filters .selected{background:var(--ink);color:#fff}.demo-banner{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 4px 15px;font-size:11px;color:var(--muted);min-height:42px}.demo-banner span{line-height:1.4;max-width:185px}.demo-banner span:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--red);margin:0 6px 2px 0}.demo-banner button{min-height:44px;padding:8px 10px;color:var(--red);font-weight:650;font-size:12px;white-space:nowrap}.feed{columns:2;column-gap:10px;overflow-anchor:none}.card{break-inside:avoid;page-break-inside:avoid;display:inline-block;vertical-align:top;width:100%;margin:0 0 15px;min-width:0;position:relative;animation:arrive .35s both}.card-open{display:block;width:100%;text-align:left;padding:0;border-radius:18px;overflow:hidden}.art{height:240px;position:relative;overflow:hidden;border-radius:18px;background:#eee;display:grid;place-items:center;isolation:isolate}.art svg{display:block;width:100%;height:100%}.card:nth-child(4n+1) .art{height:250px}.card:nth-child(4n+2) .art{height:205px}.card:nth-child(4n+3) .art{height:285px}.card:nth-child(4n) .art{height:215px}.art-label{position:absolute;bottom:11px;left:10px;border-radius:14px;padding:6px 9px;background:#0005;color:#fff;font-size:9px;font-weight:600;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.card-content{padding:10px 5px 0}.meta{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.meta i{width:3px;height:3px;border-radius:50%;background:currentColor;flex-shrink:0}.card h2{font-size:14px;line-height:1.3;letter-spacing:-.2px;font-weight:650;margin:5px 0 0;overflow-wrap:anywhere}.card-content p{display:none}.card-foot{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:2px 0 0 5px;min-height:44px}.card-foot>span{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 46px)}.save{display:grid;place-items:center;min-width:44px;height:44px;font-size:20px;border-radius:50%;flex-shrink:0}.save svg{width:19px;height:19px}.save.saved{color:var(--red)}.quote-art{background:#e60023;color:white;padding:23px 17px}.quote-art blockquote{font-size:27px;font-weight:750;line-height:1.06;letter-spacing:-1.2px;margin:0}.quote-art blockquote em{font-style:normal;color:#ffb6bf}.quote-art .asterisk{position:absolute;right:16px;top:14px;font-size:26px;font-weight:400}.link-art{background:#f1e8e6;color:#963f48}.link-art .domain-art{font-size:20px;font-weight:700;line-height:1.2;letter-spacing:-.6px;overflow-wrap:anywhere;padding:20px;text-align:center}.link-art:before{content:'↗';position:absolute;right:16px;top:12px;font-size:22px;color:#a77276}.card:nth-child(3n+2) .link-art{background:#e8edf4;color:#425d7b}.card:nth-child(3n) .link-art{background:#ede9d9;color:#756948}.end{text-align:center;padding:30px 10px 10px;clear:both}.end>span{color:var(--red);font-size:24px}.end h2,.empty h2{font-size:22px;font-weight:750;letter-spacing:-.7px}.end p,.empty p{color:var(--muted);font-size:13px;line-height:1.6}.end button{font-size:13px;font-weight:600;min-height:44px;padding:10px 20px}.dock{position:fixed;z-index:10;bottom:0;left:0;right:0;display:flex;justify-content:space-evenly;align-items:center;padding:8px 20px calc(8px + env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid #eaeaea;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.dock button{display:flex;align-items:center;flex-direction:column;gap:4px;font-size:10px;font-weight:600;color:#777;min-width:70px;min-height:52px;justify-content:center;border-radius:16px}.dock button svg{width:25px;height:25px;stroke-width:1.8}.dock button.active{color:var(--ink)}.dock button.active svg{fill:currentColor}.dock button.add-button{background:var(--red);color:white;width:50px;min-width:50px;height:50px;min-height:50px;border-radius:50%;font-size:30px;font-weight:400;box-shadow:0 4px 12px #e6002324}.empty{text-align:center;padding:70px 20px}.empty>span{font-size:44px;color:var(--red)}dialog{position:fixed;inset:auto 0 0;margin:0 auto;width:100%;max-width:600px;max-height:calc(100dvh - 24px - env(safe-area-inset-top));border:0;border-radius:26px 26px 0 0;padding:12px 24px calc(24px + env(safe-area-inset-bottom));background:white;color:var(--ink);box-shadow:0 -10px 60px #0002;overscroll-behavior:contain;overflow:auto;animation:sheet .25s cubic-bezier(.2,.8,.2,1)}dialog:before{content:'';display:block;width:32px;height:4px;background:#d7d7d7;border-radius:4px;margin:0 auto 5px}dialog::backdrop{background:#0007}.modal-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.3px;color:var(--muted)}.close{font-size:29px;min-width:44px;height:44px;border-radius:50%}dialog h2{font-size:29px;font-weight:750;line-height:1.1;letter-spacing:-1px;margin:12px 0}dialog p{font-size:14px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}label{display:block;font-size:13px;font-weight:600;margin:20px 0}label span{color:var(--muted);font-weight:400}input,select,textarea{width:100%;display:block;min-height:50px;padding:13px 15px;margin-top:8px;border:1px solid #d5d5d5;border-radius:14px;background:white;color:var(--ink);font-size:16px;outline-color:var(--red)}textarea{height:85px;resize:vertical}.primary{display:block;width:100%;background:var(--red);color:white;border-radius:26px;min-height:50px;padding:16px 20px;font-size:15px;font-weight:650;text-align:center;margin-top:22px}.fine{font-size:12px!important;line-height:1.6;overflow-wrap:anywhere}.delete{display:block;margin:14px auto 0;min-height:48px;padding:12px;font-size:13px;color:#a41b2e}.import-label{display:block;background:#f6f6f6;border-radius:16px;padding:15px;cursor:pointer}.import-label input{font-size:12px;background:white}.detail-visual{height:260px;border-radius:18px;overflow:hidden;margin:14px 0}.detail-visual .art{height:100%;border-radius:0}.detail-visual .quote-art blockquote{font-size:36px}.detail-visual .art-label{display:none}#toast{position:fixed;bottom:calc(95px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,12px);background:#202020;color:white;padding:14px 20px;border-radius:24px;max-width:90vw;font-size:13px;line-height:1.4;opacity:0;pointer-events:none;z-index:30;transition:opacity .15s,transform .15s;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}@keyframes arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes sheet{from{transform:translateY(35px);opacity:0}to{transform:none;opacity:1}}@media(min-width:600px){main{padding:0 24px 115px}header{height:80px}.feed{column-gap:16px}.feed-toolbar{margin:0 -24px}.filters{padding-left:28px}.art,.card:nth-child(4n+1) .art{height:340px}.card:nth-child(4n+2) .art{height:280px}.card:nth-child(4n+3) .art{height:380px}.card:nth-child(4n) .art{height:300px}.card h2{font-size:16px}.quote-art blockquote{font-size:40px}.dock{left:50%;right:auto;bottom:16px;transform:translateX(-50%);width:330px;border:1px solid #eee;border-radius:36px;box-shadow:0 5px 30px #0001;padding:8px 12px}.demo-banner span{max-width:none}dialog{bottom:20px;border-radius:26px;max-height:90dvh}.wordmark{font-size:35px}}@media(max-width:359px){.filters{gap:5px;padding:0 10px}.filters button{padding:0 12px;font-size:13px}.art,.card:nth-child(4n+1) .art{height:210px}.card:nth-child(4n+2) .art{height:180px}.card:nth-child(4n+3) .art{height:240px}.quote-art blockquote{font-size:23px}.card h2{font-size:13px}.header-sub{display:none}}@media(hover:hover){.card-open:hover .art{filter:brightness(.95)}.save:hover{background:#f4f4f4}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.quote-art .art-label{display:none}.quote-art blockquote{font-size:24px}.quote-art .asterisk{font-size:19px;right:11px;top:9px}.quote-art{padding:24px 16px 18px}@media(max-width:359px){.quote-art blockquote{font-size:22px}}@media(min-width:600px){.quote-art blockquote{font-size:38px}}.detail-visual .quote-art blockquote{font-size:34px}
.art img{width:100%;height:100%;object-fit:cover;display:block;background:#f1f1f1}.detail-visual>img{width:100%;height:100%;object-fit:contain;background:#f7f7f7}.search-box{display:flex;align-items:center;gap:9px;background:#f1f1f1;border-radius:25px;margin:0 5px 10px;padding:0 15px;height:46px}.search-box svg{width:19px;height:19px;color:#777;flex-shrink:0}.search-box input{border:0;background:none;margin:0;padding:11px 0;min-height:44px;border-radius:0;font-size:16px}.search-box:focus-within{outline:2px solid var(--red)}.search-box input:focus{outline:0}.local-status{margin:0 9px 8px;font-size:11px;color:var(--muted);line-height:1.5}.art:has(img){background:#f0f0f0}.art:has(img) .art-label{background:#0008}
.art:has(img){height:auto!important;min-height:115px}.art:has(img):before{display:none}.art img{height:auto;max-height:380px;object-fit:contain}.detail-visual>img{height:100%}
.reader-dialog{inset:0!important;width:100%!important;max-width:none!important;height:100dvh;max-height:100dvh!important;margin:0!important;padding:0!important;border-radius:0!important;overflow:hidden;background:#fffdf9;--reader-font:18px}.reader-dialog:before{display:none}.reader-shell{height:100%;display:flex;flex-direction:column}.reader-toolbar{flex-shrink:0;position:relative;max-width:800px;width:100%;margin:auto;padding:calc(7px + env(safe-area-inset-top)) 12px 7px;height:auto;min-height:64px;gap:2px;background:#fffdf9;display:flex;align-items:center}.reader-toolbar button{min-width:44px;height:44px;border-radius:50%;font-size:15px;font-weight:650;display:grid;place-items:center}.reader-toolbar button:disabled{opacity:.3;cursor:default}.reader-toolbar button svg{width:23px;height:23px}.reader-toolbar>div{flex:1;padding-left:4px}.reader-toolbar strong{display:block;color:var(--red);font-size:24px;letter-spacing:-1px}.reader-toolbar span{display:block;font-size:8px;letter-spacing:1.6px;color:var(--muted);margin-top:2px}#reader-save{font-size:25px;color:var(--red)}.reader-progress{height:2px;flex-shrink:0;background:#eee9e4}.reader-progress>div{width:0;height:100%;background:var(--red);transition:width .1s}.reader-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;outline:none}.reader-article{max-width:700px;margin:0 auto;padding:25px 24px 50px}.reader-kicker{font-size:11px!important;color:var(--muted);line-height:1.6!important;margin:0 0 15px;overflow-wrap:anywhere}.reader-article h1{font-family:inherit;font-size:clamp(29px,6.5vw,43px);line-height:1.13;letter-spacing:-1px;font-weight:750;margin:0 0 18px;overflow-wrap:anywhere}.reader-byline{font-size:12px!important;color:var(--muted);line-height:1.6!important;margin-bottom:20px}.reader-state{font-size:11px!important;line-height:1.6!important;color:#74716e;border-top:1px solid #ece6e0;border-bottom:1px solid #ece6e0;padding:12px 0;margin:22px 0}.reader-warning{color:#9b4c25!important;background:#fbf0e4;padding:13px 15px;border:0;border-radius:12px}.reader-cover{margin:20px 0}.reader-cover img{display:block;width:100%;height:auto;max-height:300px;object-fit:contain;border-radius:12px}.reader-content{font-size:var(--reader-font);line-height:1.8;overflow-wrap:anywhere;color:#292725}.reader-content p{font-size:inherit;line-height:inherit;color:inherit;margin:0 0 1.35em}.reader-content h2,.reader-content h3,.reader-content h4{font-family:inherit;line-height:1.25;font-size:1.35em;font-weight:700;margin:1.9em 0 .8em;letter-spacing:-.4px}.reader-content ul,.reader-content ol{padding-left:1.35em;margin:1em 0 1.6em}.reader-content li{margin:.5em 0}.reader-content blockquote{border-left:3px solid var(--red);margin:1.6em 0;padding:.2em 0 .2em 1em;color:#5d5753}.reader-content figure{margin:1.7em -8px}.reader-content img{width:100%;height:auto;max-height:650px;object-fit:contain;border-radius:8px;display:block}.reader-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:.8em;margin:20px 0}.reader-content td,.reader-content th{border:1px solid #ded9d1;padding:10px;min-width:100px}.reader-content code{font-family:monospace;white-space:pre-wrap;background:#f2efea;font-size:.85em;padding:2px 5px}.reader-citation{padding:0;display:inline;min-height:0;color:#a82337;text-decoration:underline;text-underline-offset:3px;text-align:inherit;line-height:inherit;font-size:inherit}.reader-citation:active{transform:none}.reader-citation-note{font-size:13px;padding:18px;border-radius:12px;background:#f1ede6;line-height:1.7;overflow-wrap:anywhere;margin:25px 0}.reader-source{border-top:1px solid #e9e2da;padding:20px 0;font-size:12px;margin-top:28px}.reader-source summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#76706b}.reader-source summary:after{content:'＋';margin-left:auto}.reader-source[open] summary:after{content:'−'}.reader-source p{font-size:12px;line-height:1.7}.reader-source a{display:inline-flex;align-items:center;min-height:44px;color:var(--red);text-decoration:underline}.reader-end{text-align:center;margin-top:35px;padding:25px 0}.reader-end>span{color:var(--red);font-size:10px}.reader-end h2{font-size:22px;font-weight:700;margin:16px 0 6px}.reader-end p{font-size:13px;color:#777}.reader-end .primary{max-width:290px;margin:20px auto}.reader-footer{flex-shrink:0;display:flex;justify-content:space-between;gap:10px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));font-size:10px;color:#88827b;border-top:1px solid #ece6e0;background:#fffdf9}.reader-footer span:first-child{font-variant-numeric:tabular-nums;color:#4c4540}.reader-dialog .reader-source:not([open]) a{display:none}@media(max-width:359px){.reader-article{padding:22px 19px 40px}.reader-toolbar{padding-left:7px;padding-right:7px}.reader-footer{font-size:9px}}@media(prefers-reduced-motion:reduce){.reader-progress>div{transition:none}}
.feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;columns:auto}.feed-column{display:flex;flex-direction:column;gap:15px;min-width:0}.card{margin:0}.feed .card:nth-child(4n+1) .art:has(img){height:auto}@media(min-width:600px){.feed{gap:16px}}
#settings-dialog{z-index:30}#ingest-state{min-height:20px;color:var(--red)}#add-form button:disabled{opacity:.55;cursor:wait}

.ingest-details{margin:20px 0}.ingest-details summary{font-size:13px;color:var(--muted);cursor:pointer;min-height:44px;display:flex;align-items:center}.ingest-details summary:after{content:"＋";margin-left:auto}.ingest-details[open] summary:after{content:"−"}
