:root{
  --ink:#1d1d1f;--paper:#fff;--mist:#f5f5f7;--fog:#fafafc;--slate:#707070;
  --ash:#777779;--smoke:#86868b;--peach:#eef5ff;--brown:#143f70;--blue:#0071e3;--hairline:#d6d6d6;--wash:#e8e8ed;
  --serif:"Source Serif 4","Iowan Old Style","Palatino Linotype",Georgia,ui-serif,serif;
  --sans:Inter,"Helvetica Neue",ui-sans-serif,system-ui,sans-serif;
  --max:none;--radius:28px;--pill:9999px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.35;overflow-x:hidden}button,input{font:inherit}button,a{color:inherit}button{cursor:pointer}
html,body,.card,nav,footer{transition:background-color .2s ease,color .2s ease,border-color .2s ease}
header{position:relative;width:100%;height:56px;margin:0;padding:0 12px;display:flex;justify-content:center;align-items:center;background:transparent}
.brand{display:inline-flex;align-items:center;gap:9px;font-family:var(--serif);font-size:22px;text-decoration:none;letter-spacing:-.3px}
.brand-logo{width:38px;height:38px;display:block;overflow:hidden;border-radius:50%;background:#0d4d40}
.brand-logo img{width:100%;height:100%;display:block;object-fit:contain}
.theme-toggle{position:absolute;right:10px;top:10px;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--hairline);border-radius:9999px;background:var(--paper);color:var(--ink);font-size:18px;line-height:1}
.theme-toggle:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.hero{width:100%;margin:72px 0 80px;padding:0 16px;text-align:center}.eyebrow{color:var(--ash);font-size:14px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 22px}.hero h1{font-family:var(--serif);font-size:clamp(52px,7.3vw,90px);font-weight:400;line-height:1.06;letter-spacing:-.025em;margin:0}.hero h1 em{font-weight:400}.hero-copy{max-width:550px;margin:28px auto 0;color:var(--slate);font-size:18px}.hero-actions{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:32px}.hero-actions button,.hero-actions a{min-height:46px;display:inline-flex;align-items:center;padding:0 22px;border-radius:var(--pill);font-size:16px;text-decoration:none}.hero-actions button{border:1px solid var(--ink);background:var(--ink);color:#fff}.hero-actions a{border:1px solid var(--ink);background:transparent}
nav{position:sticky;top:0;z-index:20;width:100%;margin:0 0 8px;padding:6px 8px;display:flex;gap:6px;overflow:auto;background:rgba(250,250,252,.92);border-bottom:1px solid var(--hairline);backdrop-filter:blur(20px)}nav button{border:1px solid transparent;background:transparent;padding:8px 14px;border-radius:var(--pill);white-space:nowrap;color:#474747;font-size:14px;transition:background-color .16s ease,color .16s ease,border-color .16s ease}nav button:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);font-weight:600}nav button:focus-visible{outline:3px solid rgba(0,113,227,.28);outline-offset:2px}nav .active,nav .active:hover{background:var(--blue);color:#fff;border-color:var(--blue);font-weight:600;box-shadow:none}
nav button{position:relative}nav button.has-update::after{content:"";position:absolute;top:5px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px var(--fog)}nav button.active.has-update::after,nav button:hover.has-update::after{background:#fff;box-shadow:0 0 0 2px currentColor}
main{width:100%;margin:0;padding:0 8px 8px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.card{height:calc((100vh - 116px)/2);min-height:260px;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--mist);border:0;border-radius:20px;padding:18px 16px}.card-head{display:flex;flex:0 0 auto;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.feed-title{min-width:0;display:flex;align-items:center;gap:8px}.feed-title img{width:22px;height:22px;flex:0 0 22px;object-fit:contain;border-radius:5px}.card h2{min-width:0;font-family:var(--serif);font-size:22px;font-weight:400;line-height:1.15;letter-spacing:-.015em;margin:0}.card-head button{width:30px;height:30px;flex:0 0 auto;border:1px solid currentColor;border-radius:var(--pill);background:transparent}.card ul{flex:1;min-height:0;list-style:none;padding:0 5px 0 0;margin:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.card li{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:7px;border-top:1px solid rgba(23,25,28,.1);padding:10px 0}.rank{color:var(--ash);font-size:11px;line-height:1.4;text-align:right;font-variant-numeric:tabular-nums}.card a{min-width:0;font-size:14px;text-decoration:none;font-weight:450;line-height:1.32;transition:opacity .16s ease,color .16s ease}.card a:hover{text-decoration:underline;text-underline-offset:3px}.card a.is-read{color:var(--smoke);opacity:.48}.card p{color:var(--slate);font-size:12px;line-height:1;margin:3px 0 0;text-align:right;white-space:nowrap}.status{color:var(--slate)}
.region-filter{grid-column:1/-1;min-width:0;display:flex;gap:6px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none;overscroll-behavior-x:contain}.region-filter::-webkit-scrollbar{display:none}.region-filter button{min-height:36px;display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:6px 11px;border:1px solid var(--hairline);border-radius:var(--pill);background:var(--paper);color:var(--slate);font-size:13px;white-space:nowrap}.region-filter button:hover{border-color:var(--ink);color:var(--ink)}.region-filter button.active{border-color:var(--ink);background:var(--ink);color:var(--paper);font-weight:600}.region-filter small{min-width:19px;padding:2px 5px;border-radius:var(--pill);background:var(--wash);color:var(--slate);font-size:10px;font-weight:700;line-height:1.2;text-align:center}.region-filter button.active small{background:rgba(255,255,255,.18);color:inherit}
dialog{border:0;border-radius:24px;padding:32px;width:min(460px,calc(100% - 32px));box-shadow:0 0 0 1px rgba(0,0,0,.05),0 8px 40px rgba(0,0,0,.1)}dialog::backdrop{background:rgba(23,25,28,.35);backdrop-filter:blur(4px)}form{display:grid;gap:20px}form h2{font-family:var(--serif);font-size:36px;font-weight:400;letter-spacing:-.015em;margin:0 0 4px}label{display:grid;gap:8px;font-size:15px}input{padding:15px 16px;border:1px solid #ececec;background:var(--fog);border-radius:16px;color:var(--ink);outline:none}input:focus{border-color:var(--ink);background:#fff}form>div{display:flex;justify-content:flex-end;gap:8px}form button{min-height:44px;padding:0 20px;border:1px solid var(--ink);border-radius:var(--pill);background:transparent}#save{background:var(--ink);color:#fff}#form-error{color:#a02b1d;margin:0;font-size:14px}
footer{width:100%;margin:0;padding:32px 16px 52px;border-top:1px solid #ececec;text-align:center;color:var(--slate);font-size:14px}
@media(max-width:1400px){main{grid-template-columns:repeat(4,minmax(0,1fr))}.card{height:430px}}
@media(max-width:1050px){main{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){main{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){header{height:56px}.brand{font-size:19px}.hero{margin:64px auto 72px}.hero h1{font-size:50px}.hero-actions{flex-wrap:wrap}main{display:grid;grid-template-columns:1fr;gap:8px;padding:0 8px 10px;overflow:visible;touch-action:pan-y;will-change:transform,opacity}.card{height:auto;min-height:0;padding:20px 18px}.card ul{flex:none;min-height:auto;overflow:visible;touch-action:auto}footer{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[data-theme="dark"]{--ink:#f5f5f7;--paper:#000;--mist:#1d1d1f;--fog:#161617;--slate:#a1a1a6;--ash:#86868b;--smoke:#6e6e73;--peach:#10243d;--brown:#c8e1ff;--blue:#2997ff;--hairline:#38383a;--wash:#2c2c2e}
[data-theme="dark"] nav{background:rgba(22,22,23,.92);border-color:var(--hairline)}
[data-theme="dark"] nav button{color:#d2d2d7}
[data-theme="dark"] nav button:hover{background:#f5f5f7;color:#1d1d1f;border-color:#f5f5f7}
[data-theme="dark"] nav .active,[data-theme="dark"] nav .active:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
[data-theme="dark"] footer,[data-theme="dark"] .theme-toggle,[data-theme="dark"] input{border-color:#303238}
[data-theme="dark"] .card li{border-color:rgba(255,255,255,.09)}

/* Keep the masthead and category rail visible while category pages slide below. */
body{padding-top:105px}
header{position:fixed;top:0;left:0;right:0;z-index:30;background:rgba(255,255,255,.92);backdrop-filter:blur(20px)}
nav{position:fixed;top:56px;left:0;right:0;z-index:29;margin:0}
main{margin-top:8px}
.card p.is-today{margin-top:0;padding:3px 7px;border-radius:var(--pill);background:var(--blue);color:#fff;font-weight:600;line-height:1.15}
.country-tag{flex:0 0 auto;padding:3px 7px;border-radius:var(--pill);background:var(--wash);color:var(--slate);font-size:10px;font-weight:600;line-height:1.2;white-space:nowrap}
[data-theme="dark"] header{background:rgba(0,0,0,.92)}
@media(max-width:720px){
  main{display:block;padding:0 0 10px;overflow:hidden;touch-action:pan-y}
  .category-track{width:300%;display:flex;align-items:flex-start;transform:translate3d(-33.333333%,0,0);will-change:transform}
  .category-panel{width:33.333333%;flex:0 0 33.333333%;min-width:0;display:grid;grid-template-columns:1fr;gap:8px;padding:0 8px}
  .region-filter{margin:0 -8px;padding:2px 8px 6px}
}
