:root{--bg:#f5f4f4;--surface:#fff;--surface-2:#f0eded;--text:#211718;--muted:#746667;--line:#dfd8d9;--accent:#c81e32;--accent-2:#f9e4e7;--danger:#b42335;--shadow:0 12px 35px rgba(34,14,17,.1);--radius:12px;--header:66px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:light}
:root[data-theme="dark"]{--bg:#100d0e;--surface:#191415;--surface-2:#251b1d;--text:#f3e9ea;--muted:#b4a1a3;--line:#3b2b2e;--accent:#ff4d61;--accent-2:#431820;--danger:#ff7685;--shadow:0 16px 42px rgba(0,0,0,.38);color-scheme:dark}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--bg:#100d0e;--surface:#191415;--surface-2:#251b1d;--text:#f3e9ea;--muted:#b4a1a3;--line:#3b2b2e;--accent:#ff4d61;--accent-2:#431820;--danger:#ff7685;--shadow:0 16px 42px rgba(0,0,0,.38);color-scheme:dark}}
*,*::before,*::after{box-sizing:border-box;border-radius:0!important}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--text);color:var(--surface);padding:.7rem 1rem}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topbar{height:var(--header);position:sticky;top:0;z-index:20;display:grid;grid-template-columns:220px minmax(240px,640px) 1fr;gap:1.25rem;align-items:center;padding:0 clamp(1rem,3vw,3rem);background:color-mix(in srgb,var(--surface) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{display:flex;gap:.55rem;align-items:center;color:var(--text);text-decoration:none;font-size:1.25rem;font-weight:750;letter-spacing:-.03em}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:var(--text);color:var(--surface);font-family:Georgia,serif}.search{display:flex;align-items:center;gap:.7rem;border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:0 .8rem;height:42px}.search:focus-within{outline:2px solid color-mix(in srgb,var(--accent) 45%,transparent);border-color:var(--accent)}.search input{width:100%;border:0;outline:0;background:transparent}.search kbd{font-size:.72rem;border:1px solid var(--line);border-radius:4px;padding:.1rem .35rem;color:var(--muted)}.icon-button,.close{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:.55rem .75rem;justify-self:end}.mobile-only{display:none}
.topic-nav{display:flex;gap:.2rem;overflow:auto;padding:.7rem clamp(1rem,3vw,3rem);background:var(--surface);border-bottom:1px solid var(--line);scrollbar-width:none}.topic{white-space:nowrap;border:0;background:transparent;color:var(--muted);padding:.55rem .9rem;border-radius:999px}.topic:hover,.topic.active{background:var(--accent-2);color:var(--accent)}
.app-shell{display:grid;grid-template-columns:245px minmax(0,880px);gap:clamp(1.5rem,4vw,4rem);max-width:1250px;margin:0 auto;padding:2rem clamp(1rem,3vw,3rem) 5rem}.filters{position:sticky;top:calc(var(--header) + 72px);align-self:start}.filter-heading,.dialog-heading,.feed-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.filter-heading h2,.dialog-heading h2{margin:0}.filter-heading button,#clear-filters{border:0;background:transparent;color:var(--accent);font-size:.85rem}.filters fieldset{border:0;border-top:1px solid var(--line);margin:1.2rem 0 0;padding:1.2rem 0 0}.filters legend{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:700}.check-list{display:grid;gap:.55rem;margin-top:.8rem;max-height:250px;overflow:auto}.check-list label{display:flex;gap:.55rem;align-items:center;font-size:.9rem}.select-label select,.date-fields input,.settings select{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:.65rem}.date-fields label{display:grid;gap:.35rem;margin-top:.7rem;font-size:.82rem;color:var(--muted)}
.feed-header{align-items:end;margin-bottom:1.3rem}.feed-header h1{margin:.1rem 0 0;font-size:clamp(1.65rem,4vw,2.35rem);letter-spacing:-.045em}.eyebrow{margin:0;color:var(--accent);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:750}.muted{color:var(--muted);font-size:.85rem}.article-list{display:grid;gap:12px}.article-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.35rem;box-shadow:0 1px 0 rgba(0,0,0,.02);transition:transform .15s,border-color .15s}.article-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.article-card h2{font-size:1.1rem;line-height:1.35;letter-spacing:-.018em;margin:.45rem 0}.article-card h2 a{color:var(--text);text-decoration:none}.article-card h2 a:focus-visible{outline:2px solid var(--accent)}.article-card p{color:var(--muted);line-height:1.55;margin:.55rem 0}.meta{display:flex;gap:.6rem;align-items:center;color:var(--muted);font-size:.78rem}.source{color:var(--accent);font-weight:700}.tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.85rem}.tag{font-size:.7rem;border-radius:999px;background:var(--surface-2);color:var(--muted);padding:.25rem .5rem}.external{font-size:.72rem;color:var(--muted);margin-left:.25rem}.status{min-height:1.5rem}.status-card{padding:2rem;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);background:var(--surface)}.status-card.error{color:var(--danger)}.skeleton{height:150px;border-radius:var(--radius);background:linear-gradient(100deg,var(--surface) 20%,var(--surface-2) 40%,var(--surface) 60%);background-size:300% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-100% 0}}.pagination{display:flex;justify-content:center;padding:1.4rem}.primary{border:0;border-radius:8px;background:var(--accent);color:#fff;padding:.7rem 1rem;font-weight:650}.new-articles{position:sticky;top:calc(var(--header) + 68px);z-index:10;margin:0 auto 1rem;display:block;border:1px solid var(--accent);background:var(--accent-2);color:var(--accent);border-radius:999px;padding:.55rem 1rem;box-shadow:var(--shadow)}.new-articles[hidden]{display:none}
.settings{width:min(460px,calc(100vw - 2rem));border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);padding:1.35rem;box-shadow:var(--shadow)}.settings::backdrop{background:rgba(5,14,10,.55)}.settings form:last-child{display:grid;gap:1rem;margin-top:1rem}.settings label{display:grid;grid-template-columns:1fr 180px;align-items:center;gap:1rem}.settings-actions{display:flex;justify-content:space-between;margin-top:.5rem}.settings-actions button:first-child{border:0;background:transparent;color:var(--danger)}.close{font-size:1.4rem;padding:.2rem .55rem}
:root[data-density="compact"] .article-card{padding:.85rem 1rem}:root[data-density="compact"] .article-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}:root[data-density="compact"] .article-list{gap:7px}
@media(max-width:760px){.topbar{height:auto;min-height:62px;grid-template-columns:1fr auto auto;padding:.65rem 1rem;gap:.5rem}.search{grid-column:1/-1;grid-row:2}.search kbd{display:none}.mobile-only{display:block}.topic-nav{padding:.55rem 1rem}.app-shell{display:block;padding:1.3rem 1rem 4rem}.filters{display:none;position:static;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;margin-bottom:1rem}.filters.open{display:block}.feed-header{align-items:start}.article-card{padding:1rem}.article-card h2{font-size:1rem}.settings label{grid-template-columns:1fr}.settings-actions{gap:1rem;align-items:center}.meta{flex-wrap:wrap}}
.topbar-actions{display:flex;justify-content:flex-end;gap:.5rem}.brand-mark{background:var(--accent);color:#fff;font-family:inherit;font-weight:800}.about-panel{width:min(460px,calc(100vw - 2rem));border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);padding:1.35rem;box-shadow:var(--shadow)}.about-panel::backdrop{background:rgba(5,2,3,.72);backdrop-filter:blur(3px)}.about-text{white-space:pre-wrap;color:var(--muted);line-height:1.65;margin:1.2rem 0 .3rem}@media(max-width:760px){.topbar-actions{grid-column:2/-1}}
.feed-controls{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;flex-wrap:wrap}.feed-controls label{font-size:.78rem;color:var(--muted)}.feed-controls select{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:.5rem .65rem}.feed-controls #result-meta{flex-basis:100%;margin:0;text-align:right}
