@font-face{font-family:FeedHub Noto;src:url(fonts/noto-regular.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:FeedHub Noto;src:url(fonts/noto-bold.woff) format("woff");font-weight:700;font-display:swap}
:root{
 --bg:#f5f7fa;--panel:#fff;--subtle:#edf2f8;--text:#1e293b;--muted:#5b687a;--line:#dce3ed;--accent:#245dcc;--on-accent:#fff;--ok:#167044;--err:#b33333;
 --text-xs:clamp(.75rem,.72rem + .15vw,.825rem);--text-sm:clamp(.875rem,.84rem + .15vw,.95rem);
 --text-base:clamp(1rem,.96rem + .15vw,1.06rem);--text-lg:clamp(1.125rem,1.05rem + .3vw,1.3rem);--text-xl:clamp(1.5rem,1.3rem + .6vw,1.875rem);
 --s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.25rem;--s6:1.5rem;--s8:2rem;--s10:2.5rem;--s12:3rem;
}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#101720;--panel:#172130;--subtle:#1e2a3a;--text:#e3eaf5;--muted:#adbbce;--line:#334158;--accent:#91b5ff;--on-accent:#132b55;--ok:#7bd9a5;--err:#ffb0b0}}
[data-theme=dark]{--bg:#101720;--panel:#172130;--subtle:#1e2a3a;--text:#e3eaf5;--muted:#adbbce;--line:#334158;--accent:#91b5ff;--on-accent:#132b55;--ok:#7bd9a5;--err:#ffb0b0}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--text-base)/1.65 "FeedHub Noto",system-ui,sans-serif}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:var(--s4);top:-100px;z-index:100;background:var(--panel);padding:var(--s3)}.skip:focus{top:var(--s2)}
.topbar{display:flex;align-items:center;gap:var(--s8);background:var(--panel);border-bottom:1px solid var(--line);padding:var(--s3) var(--s8);flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:var(--s3);font-weight:700;color:var(--text);white-space:nowrap}.brand svg{color:var(--accent)}.brand small{font-size:var(--text-xs);font-weight:400;color:var(--muted)}
.topbar nav{display:flex;gap:var(--s2);flex-wrap:wrap}.topbar nav a{padding:var(--s2) var(--s3);min-height:44px;display:flex;align-items:center;color:var(--muted);font-size:var(--text-sm);border-radius:6px}
.topbar nav a[aria-current=page]{background:var(--subtle);color:var(--accent);font-weight:700}
.header-actions{display:flex;gap:var(--s2);margin-left:auto;align-items:center}
main{max-width:1120px;margin:0 auto;padding:var(--s8) var(--s6) var(--s12);min-height:75vh}
footer{padding:var(--s6);border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:var(--text-xs)}
h1{font-size:var(--text-xl);line-height:1.3;letter-spacing:-.035em;margin:0 0 var(--s3)}
h2{font-size:var(--text-lg);line-height:1.5;margin:0 0 var(--s3)}h3{font-size:var(--text-base);line-height:1.6;margin:var(--s1) 0}
p{margin:0 0 var(--s4)}.muted{color:var(--muted)}.small{font-size:var(--text-sm)}.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;color:var(--muted);margin-bottom:var(--s2)}
.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s6);margin-bottom:var(--s6)}.page-head>div{min-width:0}.page-head form,.page-head>.button{flex-shrink:0}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:var(--s6);margin-bottom:var(--s6)}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin:var(--s6) 0 var(--s3)}.panel .section-head{margin-top:0}.section-head h2{margin:0}.section-head>a{font-size:var(--text-sm)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;background:var(--panel);margin-bottom:var(--s8)}
.stats>div{padding:var(--s5);border-right:1px solid var(--line)}.stats>div:last-child{border:0}.stats span{display:block;color:var(--muted);font-size:var(--text-sm)}.stats strong{display:block;font-size:var(--text-xl);margin-top:var(--s2)}.stats small{font-size:var(--text-sm);color:var(--muted);font-weight:400}
.table-scroll{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}
th,td{text-align:left;padding:var(--s3) var(--s4);border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:400}tr:last-child td{border-bottom:0}.nowrap{white-space:nowrap}
.source-url{display:block;color:var(--muted);font-size:var(--text-xs);overflow-wrap:anywhere;max-width:400px}
.badge{display:inline-block;background:var(--subtle);padding:var(--s1) var(--s2);border-radius:4px;color:var(--muted);font-size:var(--text-xs)}.badge.ok{color:var(--ok)}.badge.error{color:var(--err)}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);padding:var(--s2) var(--s4);min-height:44px;cursor:pointer;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);text-decoration:none;font-size:var(--text-sm);font-weight:700}
button:hover,.button:hover{border-color:var(--accent);text-decoration:none}button:disabled{opacity:.6;cursor:not-allowed}
.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.quiet{background:transparent;font-weight:400}.danger{color:var(--err);background:transparent}.full{width:100%;margin-top:var(--s5)}
label{display:block;font-size:var(--text-sm);margin:var(--s3) 0 var(--s2)}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{width:100%;background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:var(--s3);color:var(--text);min-height:44px}
textarea{font:var(--text-sm)/1.7 ui-monospace,monospace;resize:vertical}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:20px;height:20px;flex-shrink:0}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4) var(--s6)}
.checks{display:flex;flex-wrap:wrap;gap:var(--s6);margin:var(--s4) 0}.checks label{display:flex;align-items:center;gap:var(--s2);min-height:44px}
.check-row{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) 0;min-height:44px;margin:0}.check-row span{min-width:0}
.switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s6);margin:0;min-height:44px}.switch-row strong{font-size:var(--text-lg)}.switch-row small{display:block;color:var(--muted);font-size:var(--text-sm);margin-top:var(--s1)}
.switch-row input{appearance:none;width:42px;height:24px;background:var(--line);border-radius:20px;position:relative;cursor:pointer;border:1px solid var(--muted)}
.switch-row input:after{content:"";width:16px;height:16px;position:absolute;left:3px;top:3px;border-radius:50%;background:var(--panel);transition:transform .15s}
.switch-row input:checked{background:var(--accent);border-color:var(--accent)}.switch-row input:checked:after{transform:translateX(18px);background:var(--on-accent)}
.main-switch{padding-bottom:var(--s5);border-bottom:1px solid var(--line)}
.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2) var(--s8);padding:var(--s5) 0}
fieldset{border:0;padding:0;margin:var(--s6) 0}legend{font-size:var(--text-sm);font-weight:700;margin-bottom:var(--s3)}
.levels{display:flex;gap:var(--s2);flex-wrap:wrap}.levels label{margin:0}.levels input{position:absolute;opacity:0;pointer-events:none}
.levels span{display:block;min-height:44px;padding:var(--s2) var(--s4);border:1px solid var(--line);border-radius:6px;font-size:var(--text-sm);cursor:pointer}
.levels input:checked+span{border-color:var(--accent);color:var(--accent);background:var(--subtle)}.levels input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}
.age-field{display:flex;gap:var(--s4);align-items:center;flex-wrap:wrap;margin-bottom:var(--s4)}.age-field label{margin:0}.age-field input#max_age_minutes{width:100px}.age-field span{font-size:var(--text-sm)}
.inherited{opacity:.7}.scope-picker{max-width:560px;margin-bottom:var(--s6)}.actions,.links{display:flex;gap:var(--s3);flex-wrap:wrap}.actions{margin-bottom:var(--s4)}
.inline-form,.search-form{display:flex;gap:var(--s4);align-items:flex-end}.inline-form>div,.search-form>div{flex:1;min-width:0}
.copy-row{display:flex;align-items:center;gap:var(--s4);background:var(--subtle);padding:var(--s3);border-radius:6px;margin:var(--s4) 0}.copy-row code{flex:1}.copy-row button{flex-shrink:0}
code{font-size:var(--text-sm);overflow-wrap:anywhere;word-break:break-word}
.notice{background:var(--subtle);border:1px solid var(--line);padding:var(--s4) var(--s5);border-radius:6px;margin-bottom:var(--s5);overflow-wrap:anywhere}.notice.error{color:var(--err)}
.empty{text-align:center;padding:var(--s8) var(--s4)}.empty p{color:var(--muted);max-width:540px;margin:0 auto var(--s5)}
.news-row{padding:var(--s5) 0;border-bottom:1px solid var(--line)}.news-row:first-child{padding-top:0}.news-row:last-child{border:0;padding-bottom:0}.news-row h2{font-size:var(--text-base);overflow-wrap:anywhere}
.item-meta{display:flex;gap:var(--s4);flex-wrap:wrap;font-size:var(--text-xs);color:var(--muted);margin-bottom:var(--s2)}
.item-actions{display:flex;gap:var(--s2);flex-wrap:wrap;margin-top:var(--s3)}.content-text{white-space:pre-wrap;overflow-wrap:anywhere}
details{margin:var(--s4) 0}summary{cursor:pointer;min-height:44px;padding:var(--s2) 0;color:var(--accent);font-size:var(--text-sm)}
.tabs{display:flex;gap:var(--s4);border-bottom:1px solid var(--line);margin-bottom:var(--s5)}.tabs a{min-height:44px;padding:var(--s3);color:var(--muted);border-bottom:2px solid transparent}.tabs a[aria-current=page]{border-color:var(--accent);color:var(--accent)}.tabs span{font-size:var(--text-xs);margin-left:var(--s1)}
.pagination{display:flex;justify-content:center;align-items:center;gap:var(--s6)}.pagination a{padding:var(--s3)}.breadcrumb{font-size:var(--text-sm)}.danger-zone{margin-top:var(--s8)}
.login{max-width:480px;margin:var(--s8) auto}.login h1{margin-bottom:var(--s5)}.login>.small:last-child{margin-top:var(--s6);margin-bottom:0}
.preview-result{margin-top:var(--s6)}
@media(max-width:760px){.topbar{gap:var(--s3);padding:var(--s3) var(--s4)}.topbar nav{order:3;width:100%;gap:var(--s1)}.topbar nav a{padding:var(--s2)}main{padding:var(--s6) var(--s4) var(--s10)}.page-head{flex-direction:column;gap:var(--s3)}.stats{grid-template-columns:1fr 1fr}.stats>div:nth-child(2){border-right:0}.stats>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.fields,.filter-grid{grid-template-columns:1fr}.panel{padding:var(--s4)}.inline-form,.search-form{flex-direction:column;align-items:stretch}.copy-row{align-items:flex-start;flex-direction:column}.section-head{align-items:flex-start}.switch-row strong{font-size:var(--text-base)}.login{margin:var(--s4) auto}.tabs{gap:var(--s1)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
