:root {
  --ink: #151a24;
  --paper: #f7f5f0;
  --surface: #ffffff;
  --gold: #d6a62e;
  --gold-soft: #fff5d8;
  --blue: #3976d2;
  --green: #21875a;
  --green-soft: #e9f7ef;
  --red: #c54a47;
  --muted: #667085;
  --border: #e2e5ea;
  --shadow: 0 12px 30px rgba(21, 26, 36, .08);
  --radius: 16px;
  --content: 1240px;
  --reading: 760px;
}

/* Article display metadata fields in the editor. */
.article-display-fields{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,.65fr) minmax(320px,1.35fr);gap:1rem;margin-top:.5rem;padding:1rem;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface) 94%,#8b5cf6 6%)}
.article-display-fields textarea{min-height:92px}
.dark-theme .article-display-fields{background:#171c2a;border-color:#343b50}
@media(max-width:760px){.article-display-fields{grid-template-columns:1fr}}
.media-library{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.media-library figure{margin:0;padding:.75rem;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.media-library img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px}.media-library figcaption{margin-top:.65rem;overflow-wrap:anywhere}.article-placement-link{font-size:.8rem;font-weight:700}
.admin-nav-label{display:block;margin:1.15rem .75rem .35rem;color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.admin-nav-label:first-child{margin-top:.25rem}
.category-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.75rem;margin:1rem 0 1.5rem}.category-admin-option{display:flex;align-items:flex-start;gap:.7rem;padding:.85rem;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.category-admin-option input{margin-top:.25rem}.category-admin-option span,.category-admin-option small{display:block}.category-admin-option small{margin-top:.2rem;color:var(--muted);overflow-wrap:anywhere}
.article-rich-toolbar{position:sticky;top:0;z-index:4;display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem;padding:.65rem;background:color-mix(in srgb,var(--surface) 90%,#8b5cf6 10%);border:1px solid var(--border);border-bottom:0;border-radius:13px 13px 0 0}.article-rich-toolbar button{min-height:36px;padding:.4rem .7rem;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:8px;font-size:.8rem;font-weight:750;cursor:pointer}.article-rich-toolbar button:hover{color:#fff;background:#6654d9}.article-rich-editor{min-height:520px;padding:clamp(1rem,3vw,2.25rem);color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:0 0 13px 13px;box-shadow:inset 0 1px 8px rgba(30,28,65,.035);font:400 1rem/1.75 system-ui,sans-serif;outline:0}.article-rich-editor:focus{border-color:#7c64e8;box-shadow:0 0 0 3px rgba(124,100,232,.14)}.article-rich-editor p{margin:0 0 1rem}.article-rich-editor h2{margin:2rem 0 .75rem;font:800 1.65rem/1.25 Georgia,serif}.article-rich-editor h3{margin:1.5rem 0 .65rem;font-size:1.2rem}.article-rich-editor ul,.article-rich-editor ol{margin:0 0 1.15rem;padding-left:1.7rem}.article-rich-editor blockquote{margin:1.25rem 0;padding:.8rem 1rem;border-left:4px solid #7c64e8;background:rgba(124,100,232,.08)}.article-rich-editor figure{margin:1.5rem auto}.article-rich-editor img{display:block;max-width:min(100%,760px);max-height:520px;margin:auto;object-fit:contain;border-radius:12px}.article-rich-editor figcaption{margin-top:.5rem;color:var(--muted);font-size:.85rem;text-align:center}.dark-theme .article-rich-toolbar,.dark-theme .article-rich-editor{background:#171c2a;border-color:#343b50}.dark-theme .article-rich-toolbar button{color:#edf0ff;background:#242b3d;border-color:#3c455c}
.article-image-controls{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;padding:.55rem .7rem;color:var(--ink);background:#eef0ff;border:1px solid #cfc9ff;border-top:0}.article-image-controls[hidden]{display:none}.article-image-controls span{margin-left:.45rem;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.article-image-controls button{min-height:32px;padding:.35rem .55rem;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:7px;font-size:.75rem;font-weight:750;cursor:pointer}.article-image-controls button.is-active{color:#fff;background:#6654d9;border-color:#6654d9}.article-image-controls button.is-danger{margin-left:auto;color:#a13b38}.article-rich-editor figure{width:100%;transition:width .18s ease,box-shadow .18s ease}.article-rich-editor figure[data-size="small"]{max-width:320px}.article-rich-editor figure[data-size="medium"]{max-width:560px}.article-rich-editor figure[data-size="large"]{max-width:760px}.article-rich-editor figure[data-size="full"]{max-width:100%}.article-rich-editor figure[data-align="left"]{margin-left:0;margin-right:auto}.article-rich-editor figure[data-align="center"]{margin-left:auto;margin-right:auto}.article-rich-editor figure[data-align="right"]{margin-left:auto;margin-right:0}.article-rich-editor figure.is-selected{outline:3px solid #7c64e8;outline-offset:5px}.article-rich-editor figure img{width:100%;max-width:100%}.article-body .article-image{width:100%}.article-body .article-image.size-small{max-width:320px}.article-body .article-image.size-medium{max-width:560px}.article-body .article-image.size-large{max-width:760px}.article-body .article-image.size-full{max-width:100%}.article-body .article-image.align-left{margin-left:0;margin-right:auto}.article-body .article-image.align-center{margin-left:auto;margin-right:auto}.article-body .article-image.align-right{margin-left:auto;margin-right:0}.dark-theme .article-image-controls{background:#20263a;border-color:#3b4560}
.admin-top-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.65rem}.admin-top-actions .admin-save-state{margin-left:0}.article-block-field input[type="checkbox"]{width:auto;justify-self:start}
@media(max-width:700px){.admin-top-actions{width:100%;justify-content:flex-start}.admin-top-actions .admin-save-state{width:100%;justify-content:center}}
.admin-body .button.secondary{color:#5d49c8;background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 20px rgba(86,69,204,.1)}.admin-body .button.compact{min-height:38px;padding:7px 12px;font-size:.82rem}.article-editor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.article-block-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.article-block-toolbar button,.article-block-actions button{min-height:36px;padding:.45rem .7rem;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:9px;font-weight:750;cursor:pointer}.article-block-toolbar button:hover,.article-block-actions button:hover{color:#fff;background:#6654d9}.article-block-editor{display:grid;gap:.9rem}.article-block-empty{display:grid;gap:.25rem;padding:1.25rem;color:var(--muted);text-align:center;background:var(--surface);border:1px dashed var(--border);border-radius:14px}.article-block-card{overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 18px rgba(25,24,54,.05)}.article-block-card>header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .8rem;background:color-mix(in srgb,var(--surface) 82%,#8b5cf6 18%);border-bottom:1px solid var(--border)}.article-block-card>header select{width:auto;min-width:135px;min-height:36px}.article-block-actions{display:flex;gap:.35rem}.article-block-actions button.is-danger{color:#a13b38}.article-block-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:1rem}.article-block-field{display:grid;gap:.35rem;color:var(--muted);font-size:.78rem;font-weight:800}.article-block-field:has(textarea),.article-block-field:has(input[type="text"]){grid-column:1/-1}.article-block-field input,.article-block-field textarea,.article-block-field select{width:100%;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:10px}.article-block-field textarea{min-height:110px;padding:.75rem;resize:vertical}.article-block-preview{grid-column:1/-1;max-width:320px;max-height:200px;object-fit:cover;border-radius:10px}.dark-theme .admin-body .button.secondary{color:#c9c2ff;background:#202638}.dark-theme .article-block-card,.dark-theme .article-block-toolbar button,.dark-theme .article-block-actions button{color:#eef1ff;background:#202638}
@media(max-width:700px){.article-editor-heading{display:grid}.article-block-fields{grid-template-columns:1fr}.article-block-card>header{align-items:flex-start}.article-block-actions{flex-wrap:wrap;justify-content:flex-end}.admin-top{flex-wrap:wrap}.admin-save-state{order:4;width:100%;justify-content:center}}

/* Inner-page visual refresh */
.tracker-hero {
  position: relative;
  overflow: hidden;
  margin: 22px auto 34px;
  padding: 38px;
  background:
    radial-gradient(circle at 92% 10%, rgba(214,166,46,.2), transparent 32%),
    linear-gradient(135deg, #fff 0%, #f7f4ec 100%);
  border: 1px solid rgba(38,53,80,.12);
  border-radius: 22px;
  box-shadow: 0 18px 45px rgba(21,26,36,.08);
}
.cover-placeholder {
  isolation: isolate;
  position: relative;
  overflow: hidden;
  background-image: linear-gradient(150deg, rgba(214,166,46,.94), rgba(38,53,80,.92) 62%, rgba(21,26,36,.96)), url('pattern-grid.svg');
  background-size: cover;
  border: 1px solid rgba(255,255,255,.38);
}
.cover-placeholder::before { content:""; position:absolute; inset:14px; z-index:-1; border:1px solid rgba(255,255,255,.3); border-radius:10px; }
.tracker-title h1, .article-header h1 { text-wrap: balance; }
.panel {
  box-shadow: 0 10px 28px rgba(21,26,36,.055);
  transition: transform .2s ease, box-shadow .2s ease;
}
.panel:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(21,26,36,.085); }
.panel h2 { padding-bottom:12px; border-bottom:1px solid var(--border); }
.article-header {
  margin-bottom: 28px;
  padding: 34px;
  background: linear-gradient(135deg,#fff,#f6f1e5);
  border: 1px solid var(--border);
  border-radius: 20px;
  box-shadow: 0 14px 36px rgba(21,26,36,.07);
}
.article-header .dek { max-width: 68ch; }
.answer-box { position:relative; overflow:hidden; box-shadow:0 10px 24px rgba(151,108,5,.08); }
.answer-box::before { content:"QUICK READ"; display:block; margin-bottom:8px; color:#896100; font-size:12px; font-weight:850; letter-spacing:.12em; }
.directory-card, .calendar-event, .guide-card {
  box-shadow: 0 10px 26px rgba(21,26,36,.055);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.directory-card:hover, .calendar-event:hover, .guide-card:hover { transform:translateY(-3px); border-color:rgba(214,166,46,.55); box-shadow:0 18px 38px rgba(21,26,36,.09); }
.directory-card h2 { text-wrap:balance; }
.calendar-event { border-left:4px solid var(--gold); }
.guide-card { overflow:hidden; }
.guide-card-art { position:relative; overflow:hidden; background-image:linear-gradient(145deg,rgba(38,53,80,.94),rgba(214,166,46,.86)),url('pattern-grid.svg'); background-size:cover; }
.guide-card-art::after { content:"AL"; position:absolute; right:-8px; bottom:-24px; color:rgba(255,255,255,.09); font:900 84px/1 Georgia,serif; }
.site-footer { position:relative; overflow:hidden; border-top:4px solid var(--gold); }
.site-footer::after { content:""; position:absolute; right:-100px; bottom:-180px; width:420px; height:420px; border:1px solid rgba(214,166,46,.12); border-radius:50%; box-shadow:0 0 0 50px rgba(214,166,46,.025),0 0 0 100px rgba(214,166,46,.018); pointer-events:none; }
.footer-grid,.footer-bottom { position:relative; z-index:1; }

@media (max-width: 600px) {
  .tracker-hero { margin:14px auto 24px; padding:20px; border-radius:16px; }
  .article-header { padding:24px 20px; border-radius:16px; }
  .panel { padding:20px; }
  .calendar-event { border-left-width:3px; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: radial-gradient(circle at 8% 0%, rgba(214,166,46,.08), transparent 24rem), var(--paper);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.6;
}
.dark-theme { --paper:#10151f; --surface:#19202c; --ink:#f3f5f8; --muted:#aeb7c7; --border:#303a4b; --gold-soft:#322a17; --green-soft:#183a2c; }
.dark-theme .site-header, .dark-theme .site-footer, .dark-theme .guide-feature { background:#0b1018; }
.dark-theme .lead-summary, .dark-theme .article-header .dek { color:#c9d0dc; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--blue); }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
.container { width: min(calc(100% - 32px), var(--content)); margin-inline: auto; }
.skip-link { position: fixed; left: 12px; top: -60px; z-index: 100; padding: 10px 14px; background: #fff; }
.skip-link:focus { top: 12px; }

.site-header { position:sticky; top:0; z-index:20; color:#fff; background:rgba(21,26,36,.97); border-bottom:1px solid rgba(214,166,46,.55); box-shadow:0 8px 28px rgba(21,26,36,.13); backdrop-filter:blur(14px); }
.header-row { min-height: 70px; display: flex; align-items: center; gap: 24px; }
.brand { display:inline-flex; align-items:center; flex:0 0 auto; width:190px; height:44px; overflow:hidden; font-size:0; background:url('adaptlore-logo.svg') center/contain no-repeat; }
.brand > * { display:none; }
.brand-logo { display:block; width:190px; height:auto; }
.primary-nav { display:flex; gap:6px; margin-left:14px; font-weight:650; }
.primary-nav a { padding:9px 12px; border-radius:9px; }
.primary-nav a:hover { color:#fff; background:rgba(255,255,255,.08); }
.primary-nav a[aria-current="page"] { color: var(--gold); }
.header-actions { margin-left: auto; display: flex; gap: 10px; align-items: center; }
.search-button, .menu-button { display: inline-grid; place-items: center; width: 44px; height: 44px; color: #fff; background: transparent; border: 1px solid rgba(255,255,255,.35); border-radius: 12px; cursor: pointer; }
.menu-button { display: none; }
.newsletter-button, .button { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:9px 17px; border:0; border-radius:11px; font-weight:800; background:linear-gradient(135deg,#e2b640,#c99419); color:#151a24; box-shadow:0 6px 16px rgba(214,166,46,.18); cursor:pointer; }
.theme-button { min-height:38px; padding:6px 11px; color:#fff; background:transparent; border:1px solid rgba(255,255,255,.35); border-radius:999px; cursor:pointer; }
.header-theme-button { width:44px; height:44px; min-height:44px; display:grid; place-items:center; padding:0; border-radius:10px; }
.header-theme-button svg,.search-button svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.header-search { width:clamp(250px,25vw,370px); min-height:46px; display:grid; grid-template-columns:28px minmax(90px,1fr) auto; align-items:center; gap:5px; margin:0; padding:4px 5px 4px 13px; color:#aeb2c1; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.2); border-radius:999px; }
.header-search:focus-within { color:#7ee9e5; border-color:rgba(126,233,229,.65); box-shadow:0 0 0 3px rgba(126,233,229,.1); }
.header-search svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; }
.header-search input { min-width:0; width:100%; height:36px; padding:0 4px; color:#fff; background:transparent; border:0; outline:0; font:600 15px/1 Inter,system-ui,sans-serif; }
.header-search input::placeholder { color:#a2a5b0; }
.header-search select { height:36px; max-width:105px; padding:0 29px 0 13px; color:#d9d9e5; background:#262535; border:0; border-radius:999px; outline:0; font:750 14px/1 Inter,system-ui,sans-serif; cursor:pointer; }
.header-search + .search-button { display:none; }
.button.secondary { background: #fff; border: 1px solid var(--border); }

.mobile-search { display: none; padding: 0 0 14px; }
.mobile-search.is-open { display: block; }
.search-form { display: flex; max-width: 640px; margin-left: auto; }
.search-form input { width: 100%; min-height: 44px; padding: 8px 14px; border: 1px solid var(--border); border-radius: 12px 0 0 12px; }
.search-form button { min-width: 50px; border: 0; border-radius: 0 12px 12px 0; background: var(--gold); }

@media (max-width:1120px) {
  .header-search { width:250px; }
}
@media (max-width:900px) {
  .header-search { display:none; }
  .header-search + .search-button { display:inline-grid; }
  .header-theme-button { display:grid !important; }
}
@media (max-width:520px) {
  .header-theme-button { width:40px; height:40px; min-height:40px; }
}

.eyebrow { margin: 0 0 8px; color: var(--green); text-transform: uppercase; font-size: 13px; line-height: 1.3; font-weight: 850; letter-spacing: .09em; }
.page-intro { padding:34px 0 8px; }
.page-intro h1 { margin:0; font:850 clamp(32px,5vw,54px)/1.05 Georgia,serif; letter-spacing:-.04em; }
.page-intro p { max-width:760px; margin:12px 0 0; color:var(--muted); font-size:18px; }
.story-grid { display:grid; grid-template-columns:1.45fr 1fr 1fr; gap:18px; }
.story-card { min-height:230px; padding:25px; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background:linear-gradient(155deg,#263550,#151a24); border:1px solid rgba(255,255,255,.08); border-radius:20px; overflow:hidden; position:relative; box-shadow:0 14px 32px rgba(21,26,36,.13); transition:transform .22s ease,box-shadow .22s ease; }
.story-card:hover { color:#fff; transform:translateY(-3px); box-shadow:0 20px 38px rgba(21,26,36,.2); }
.story-card::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 88% 8%,rgba(214,166,46,.62),transparent 42%),linear-gradient(0deg,rgba(5,9,16,.78),transparent 65%); }
.story-card>* { position:relative; }
.story-card::after { position:absolute; right:-8px; top:-25px; color:rgba(255,255,255,.055); font:900 150px/1 Georgia,serif; letter-spacing:-.08em; }
.story-card:nth-child(1)::after { content:"01"; }
.story-card:nth-child(2)::after { content:"02"; }
.story-card:nth-child(3)::after { content:"03"; }
.story-card:nth-child(4)::after { content:"04"; }
.story-card:nth-child(5)::after { content:"05"; }
.story-card:nth-child(2) { background:linear-gradient(145deg,#1f5946,#173229); }
.story-card:nth-child(3) { background:linear-gradient(145deg,#5d421a,#24201b); }
.story-card:nth-child(4) { background:linear-gradient(145deg,#344b7d,#182238); }
.story-card:nth-child(5) { background:linear-gradient(145deg,#633c4d,#271a22); }
.story-card:first-child { grid-row:span 2; min-height:500px; padding:clamp(28px,4vw,48px); background-color:#151a24; background-image:linear-gradient(90deg,rgba(10,14,22,.98) 0%,rgba(15,22,34,.88) 48%,rgba(15,22,34,.2) 100%),url('hero-source-to-screen.svg'); background-size:cover,auto 94%; background-position:center,right center; background-repeat:no-repeat; }
.story-card:first-child::before { background:linear-gradient(0deg,rgba(5,9,16,.9),transparent 62%); }
.story-card:first-child p { max-width:620px; color:#d9dfea; font-size:17px; }
.story-card h2,.story-card h3 { margin:8px 0; font:850 25px/1.12 Georgia,serif; }
.story-card:first-child h2 { font-size:clamp(34px,4vw,48px); }
.story-meta { color:#d5dae4; font-size:14px; }
.stats-row { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:20px; padding:0; color:var(--muted); background:var(--surface); border:1px solid var(--border); border-radius:14px; overflow:hidden; box-shadow:0 8px 24px rgba(21,26,36,.04); }
.stats-row span { padding:17px 20px; border-left:1px solid var(--border); }
.stats-row span:first-child { border-left:0; }
.stats-row strong { color:var(--ink); font-size:22px; }
.trending-bar { display:grid; grid-template-columns:auto repeat(3,1fr); border:1px solid var(--border); background:var(--surface); border-radius:16px; overflow:hidden; box-shadow:0 10px 26px rgba(21,26,36,.045); }
.trending-label { padding:18px; color:var(--gold); background:#151a24; font-weight:850; text-transform:uppercase; }
.trending-item { padding:18px; border-left:1px solid var(--border); font-weight:700; line-height:1.3; }
.trending-item span { color:var(--gold); margin-right:7px; }
.explore-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.explore-card { padding:23px; min-height:155px; background:linear-gradient(145deg,var(--surface),rgba(214,166,46,.04)); border:1px solid var(--border); border-radius:18px; transition:transform .2s ease,border-color .2s ease; }
.explore-card:hover { color:var(--ink); transform:translateY(-3px); border-color:rgba(214,166,46,.75); }
.explore-icon { width:45px; height:45px; display:grid; place-items:center; color:#151a24; background:var(--gold); border-radius:13px; font-size:22px; box-shadow:0 7px 15px rgba(214,166,46,.2); }
.explore-card h3 { margin:8px 0 2px; }
.topic-row { display:grid; grid-template-columns:repeat(6,1fr); gap:10px; }
.topic-chip { min-height:88px; padding:14px; display:grid; place-items:center; text-align:center; background:var(--surface); border:1px solid var(--border); border-radius:14px; font-weight:800; transition:background .2s ease,color .2s ease,transform .2s ease; }
.topic-chip:hover { color:#fff; background:#263550; transform:translateY(-2px); }
.tracker-card { transition:transform .2s ease,box-shadow .2s ease; overflow:hidden; }
.tracker-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
.news-card { transition:transform .2s ease,border-color .2s ease; }
.news-card:hover { transform:translateY(-2px); border-color:rgba(214,166,46,.75); }
body:has(.story-grid) .page-intro .container { position:relative; padding:clamp(30px,5vw,58px); color:#fff; background:linear-gradient(125deg,#151a24 0%,#263550 62%,#3c3425 100%); border:1px solid rgba(214,166,46,.35); border-radius:22px; overflow:hidden; box-shadow:0 18px 44px rgba(21,26,36,.16); }
body:has(.story-grid) .page-intro .container::before { content:"VERIFIED ADAPTATION INTELLIGENCE"; position:relative; z-index:1; display:inline-flex; margin-bottom:16px; padding:6px 10px; color:#f0c85e; border:1px solid rgba(214,166,46,.45); border-radius:999px; font-size:11px; font-weight:850; letter-spacing:.13em; }
body:has(.story-grid) .page-intro .container::after { content:"AL"; position:absolute; right:3%; top:50%; color:rgba(255,255,255,.045); font:900 clamp(110px,18vw,230px)/1 Georgia,serif; transform:translateY(-52%) rotate(-7deg); }
body:has(.story-grid) .page-intro h1,body:has(.story-grid) .page-intro p { position:relative; z-index:1; }
body:has(.story-grid) .page-intro h1 { max-width:780px; }
body:has(.story-grid) .page-intro p { color:#cbd2df; }
#trackers { margin:22px 0; background:linear-gradient(180deg,rgba(255,255,255,.6),rgba(214,166,46,.035)); border-block:1px solid var(--border); }
.dark-theme #trackers { background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(214,166,46,.035)); }
.filter-row { display:flex; flex-wrap:wrap; gap:9px; margin:20px 0 26px; }
.filter-button { min-height:40px; padding:7px 14px; color:var(--ink); background:var(--surface); border:1px solid var(--border); border-radius:999px; font-weight:750; cursor:pointer; }
.filter-button.is-active { color:#151a24; background:var(--gold); border-color:var(--gold); }
.directory-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; padding-bottom:45px; }
.directory-card { padding:22px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); }
.directory-card h2 { margin:10px 0 6px; font:800 24px/1.2 Georgia,serif; }
.directory-card dl { margin:16px 0 0; }
.directory-card dl div { display:flex; justify-content:space-between; gap:16px; padding:8px 0; border-top:1px solid var(--border); }
.directory-card dt { color:var(--muted); }
.directory-card dd { margin:0; text-align:right; font-weight:700; }
[hidden] { display:none !important; }
.calendar-shell { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:24px; padding-bottom:50px; align-items:start; }
.calendar-list { display:grid; gap:14px; }
.calendar-event { display:grid; grid-template-columns:96px 1fr auto; gap:18px; align-items:center; padding:20px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); }
.calendar-day { text-align:center; font-weight:850; color:var(--muted); }
.calendar-day strong { display:block; color:var(--ink); font:850 34px/1 Georgia,serif; }
.calendar-event h2 { margin:0 0 4px; font:800 23px/1.2 Georgia,serif; }
.calendar-note { padding:20px; color:#665017; background:var(--gold-soft); border:1px solid #efd784; border-radius:var(--radius); }
.month-nav { display:flex; justify-content:space-between; align-items:center; margin:20px 0; }
.month-nav h1 { margin:0; font:850 clamp(34px,5vw,52px)/1 Georgia,serif; }
.guide-list { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; padding-bottom:50px; }
.guide-card { display:grid; grid-template-columns:130px 1fr; gap:20px; padding:20px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); }
.guide-card-art { min-height:145px; display:grid; place-items:center; padding:12px; color:#fff; background:linear-gradient(145deg,#263550,#d6a62e); border-radius:12px; font:800 20px/1.15 Georgia,serif; text-align:center; }
.guide-card h2 { margin:6px 0; font:800 24px/1.2 Georgia,serif; }
.trust-layout { display:grid; grid-template-columns:220px minmax(0,var(--reading)); gap:40px; align-items:start; padding:35px 0 60px; }
.trust-nav { position:sticky; top:95px; display:grid; gap:6px; }
.trust-nav a { padding:9px 12px; border-radius:8px; }
.trust-nav a:hover { background:var(--surface); }
.trust-copy h1 { margin:0 0 12px; font:850 clamp(38px,6vw,60px)/1.05 Georgia,serif; }
.trust-copy h2 { margin:38px 0 12px; font:800 30px/1.2 Georgia,serif; }
.trust-copy p,.trust-copy li { font-size:17px; }
.policy-table { width:100%; border-collapse:collapse; background:var(--surface); }
.policy-table th,.policy-table td { padding:12px; text-align:left; border:1px solid var(--border); vertical-align:top; }
.policy-table th { background:var(--gold-soft); }
.search-page-form { display:flex; max-width:760px; margin:22px 0 30px; }
.search-page-form input { min-width:0; flex:1; min-height:50px; padding:10px 16px; color:var(--ink); background:var(--surface); border:1px solid var(--border); border-radius:12px 0 0 12px; }
.search-page-form button { border-radius:0 12px 12px 0; }
.search-results { display:grid; gap:14px; padding-bottom:55px; }
.search-result { padding:22px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); }
.search-result h2 { margin:9px 0 6px; font:800 25px/1.2 Georgia,serif; }
.search-result p { margin:0; color:var(--muted); }
.search-status { margin-left:10px; color:var(--muted); font-size:14px; }
.empty-state { padding:45px 24px; text-align:center; background:var(--surface); border:1px dashed var(--border); border-radius:var(--radius); }
.empty-state h2 { margin-top:0; font:800 28px/1.2 Georgia,serif; }
.admin-body { background:#eef1f5; }
.admin-shell { min-height:100vh; display:grid; grid-template-columns:250px 1fr; }
.admin-sidebar { padding:26px 18px; color:#dce2ed; background:#101621; }
.admin-sidebar .brand { margin-bottom:28px; }
.admin-nav { display:grid; gap:5px; }
.admin-nav a { padding:10px 12px; border-radius:9px; font-weight:700; }
.admin-nav a:hover,.admin-nav a.is-active { color:#151a24; background:var(--gold); }
.admin-main { min-width:0; padding:28px; }
.admin-top { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:24px; }
.admin-top h1 { margin:0; font:850 38px/1.1 Georgia,serif; }
.admin-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:24px; }
.admin-stat { padding:20px; background:#fff; border:1px solid #dde2e9; border-radius:14px; }
.admin-stat strong { display:block; font-size:30px; }
.admin-stat span { color:#667085; }
.admin-panel { padding:22px; margin-bottom:20px; background:#fff; border:1px solid #dde2e9; border-radius:14px; }
.admin-panel h2 { margin:0 0 16px; }
.admin-table { width:100%; border-collapse:collapse; }
.admin-table th,.admin-table td { padding:12px; border-bottom:1px solid #e5e8ed; text-align:left; vertical-align:middle; }
.admin-table th { color:#667085; font-size:13px; text-transform:uppercase; }
.admin-link { color:#285fae; font-weight:700; }
.admin-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.form-field { display:grid; gap:6px; }
.form-field.full { grid-column:1/-1; }
.form-field label { font-weight:750; }
.form-field input,.form-field select,.form-field textarea { width:100%; padding:10px 12px; color:#151a24; background:#fff; border:1px solid #cfd5de; border-radius:9px; }
.form-field textarea { min-height:110px; resize:vertical; }
.form-help { color:#667085; font-size:13px; }
.source-block { display:grid; grid-template-columns:1fr 180px; gap:12px; padding:16px; margin-top:12px; background:#f6f8fb; border:1px solid #e0e5ec; border-radius:10px; }
.admin-actions { position:sticky; bottom:0; display:flex; justify-content:flex-end; gap:10px; padding:14px 0; background:linear-gradient(transparent,#eef1f5 20%); }
.workflow { display:flex; flex-wrap:wrap; gap:8px; }
.workflow-step { padding:8px 11px; color:#667085; background:#f2f4f7; border-radius:999px; font-size:13px; font-weight:750; }
.workflow-step.is-current { color:#12603d; background:#e9f7ef; }
.editor-message { padding:12px 15px; margin:16px 0; color:#12603d; background:#e9f7ef; border-left:4px solid #21875a; border-radius:8px; }
.editor-message.is-error { color:#8b2927; background:#fff0ef; border-color:#c54a47; }
.admin-body { color:#172033; background:radial-gradient(circle at 88% 0%,rgba(214,166,46,.09),transparent 28rem),#eef1f5; }
.admin-sidebar { position:sticky; top:0; height:100vh; overflow-y:auto; border-right:1px solid rgba(214,166,46,.22); box-shadow:8px 0 30px rgba(16,22,33,.08); }
.admin-sidebar::after { content:"EDITORIAL OS"; display:block; margin:28px 12px 0; padding-top:18px; color:#68758a; border-top:1px solid rgba(255,255,255,.09); font-size:10px; font-weight:900; letter-spacing:.15em; }
.admin-nav a { position:relative; padding-left:16px; transition:background .18s ease,color .18s ease,transform .18s ease; }
.admin-nav a:hover { transform:translateX(2px); }
.admin-nav a.is-active { box-shadow:0 7px 18px rgba(214,166,46,.18); }
.admin-main { width:min(100%,1500px); margin-inline:auto; padding:34px clamp(22px,3vw,46px); }
.admin-top { padding:24px 26px; background:linear-gradient(125deg,#fff,#f8f4e9); border:1px solid #dde2e9; border-radius:18px; box-shadow:0 12px 28px rgba(21,26,36,.055); }
.admin-top .eyebrow { margin-bottom:5px; }
.admin-stat { position:relative; overflow:hidden; min-height:128px; display:flex; flex-direction:column; justify-content:center; padding:24px; box-shadow:0 10px 24px rgba(21,26,36,.045); }
.admin-stat::before { content:""; position:absolute; left:0; right:0; top:0; height:4px; background:var(--gold); }
.admin-stat:nth-child(2)::before { background:var(--red); }
.admin-stat:nth-child(3)::before { background:var(--blue); }
.admin-stat:nth-child(4)::before { background:var(--green); }
.admin-stat strong { font-size:36px; line-height:1; }
.admin-panel { padding:27px; border-radius:17px; box-shadow:0 10px 25px rgba(21,26,36,.045); }
.admin-panel h2 { padding-bottom:13px; border-bottom:1px solid #e5e8ed; font:800 25px/1.2 Georgia,serif; }
.admin-table tbody tr { transition:background .16s ease; }
.admin-table tbody tr:hover { background:#f8f5ec; }
.form-field input,.form-field select,.form-field textarea { min-height:44px; transition:border-color .16s ease,box-shadow .16s ease; }
.form-field input:focus,.form-field select:focus,.form-field textarea:focus { outline:0; border-color:#d6a62e; box-shadow:0 0 0 3px rgba(214,166,46,.16); }
.source-block { padding:20px; border-radius:13px; }
.workflow { position:relative; margin:0 0 22px; padding:14px 16px; background:#fff; border:1px solid #dde2e9; border-radius:14px; box-shadow:0 8px 20px rgba(21,26,36,.035); }
.workflow-step { position:relative; }
.workflow-step.is-current { box-shadow:inset 0 0 0 1px rgba(33,135,90,.18); }
.admin-actions { z-index:5; margin:0 -10px; padding:18px 10px; }
.admin-save-state { display:inline-flex; align-items:center; margin-left:auto; padding:5px 10px; color:#667085; background:#fff; border:1px solid #dde2e9; border-radius:999px; font-size:12px; font-weight:800; }
.admin-save-state.is-dirty { color:#7a5b12; background:#fff5d8; border-color:#efd784; }
.admin-save-state.is-saved { color:#12603d; background:#e9f7ef; border-color:#bce1cc; }
.seo-counter { justify-self:end; }
.seo-counter.is-warning { color:#a13b38; font-weight:800; }
.admin-pagination { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:20px; padding-top:18px; border-top:1px solid #e5e8ed; }
.admin-pagination span { color:#667085; font-size:.86rem; font-weight:800; }
.admin-pagination .is-disabled { opacity:.45; pointer-events:none; }
.auth-page { min-height:100vh; display:grid; place-items:center; padding:28px; color:#172033; background:radial-gradient(circle at 15% 12%,rgba(214,166,46,.2),transparent 24rem),linear-gradient(135deg,#101621,#263550); }
.auth-shell { width:min(100%,470px); padding:34px; background:#fff; border:1px solid rgba(255,255,255,.35); border-radius:20px; box-shadow:0 26px 70px rgba(5,9,16,.35); }
.auth-brand { display:block; width:200px; height:48px; margin-bottom:28px; background:url('adaptlore-logo.svg') left center/contain no-repeat; font-size:0; }
.auth-kicker { margin:0 0 5px; color:#21875a; font-size:12px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.auth-shell h1 { margin:0 0 8px; font:850 38px/1.1 Georgia,serif; letter-spacing:-.035em; }
.auth-intro { margin:0 0 23px; color:#667085; }
.auth-form { display:grid; gap:16px; }
.auth-field { display:grid; gap:7px; }
.auth-field label { font-weight:750; }
.auth-field input { width:100%; min-height:48px; padding:10px 12px; color:#151a24; background:#fff; border:1px solid #cfd5de; border-radius:10px; }
.auth-field input:focus { outline:0; border-color:#d6a62e; box-shadow:0 0 0 3px rgba(214,166,46,.17); }
.auth-submit { width:100%; min-height:49px; margin-top:2px; border:0; border-radius:11px; color:#151a24; background:linear-gradient(135deg,#e2b640,#c99419); font-weight:850; cursor:pointer; box-shadow:0 8px 18px rgba(214,166,46,.2); }
.auth-submit:hover { filter:brightness(1.04); }
.auth-alert { padding:12px 14px; margin:0 0 18px; border-left:4px solid; border-radius:9px; }
.auth-alert.error { color:#8b2927; background:#fff0ef; border-color:#c54a47; }
.auth-alert.success { color:#12603d; background:#e9f7ef; border-color:#21875a; }
.auth-alert.note { color:#6a4d00; background:#fff5d8; border-color:#d6a62e; }
.auth-footer { margin:23px 0 0; padding-top:17px; color:#667085; border-top:1px solid #e5e8ed; font-size:13px; text-align:center; }
.auth-cancel { width:100%; margin-top:12px; box-shadow:none; }
.security-status { display:inline-flex; align-items:center; min-height:36px; padding:7px 12px; border-radius:999px; font-size:13px; font-weight:850; white-space:nowrap; }
.security-status.is-on { color:#12603d; background:#e9f7ef; border:1px solid #b7dfc8; }
.security-status.is-off { color:#7a5010; background:#fff5d8; border:1px solid #ead28d; }
.security-critical { border-left:5px solid var(--gold); }
.recovery-code-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; max-width:560px; margin:18px 0; }
.recovery-code-grid code,.totp-secret { display:block; padding:11px 13px; color:#172033; background:#f2f4f7; border:1px solid #d9dee6; border-radius:8px; font-size:16px; font-weight:800; letter-spacing:.08em; }
.security-uri { margin-top:18px; }
.security-uri summary { color:#285fae; font-weight:750; cursor:pointer; }
.security-uri code { display:block; overflow-wrap:anywhere; margin-top:10px; padding:12px; background:#f2f4f7; border-radius:8px; }

/* Shared public chrome: one header, footer and 1240px rhythm on every route. */
body:not(.admin-body):not(.auth-page) { min-height:100vh; display:flex; flex-direction:column; }
body:not(.admin-body):not(.auth-page) > main { width:100%; flex:1 0 auto; }
.site-header .container,.site-footer .container { width:min(calc(100% - 40px),var(--content)); }
.site-header { min-height:72px; }
.header-row { min-height:72px; gap:clamp(18px,2.5vw,36px); }
.primary-nav { margin-left:8px; gap:4px; }
.primary-nav a { min-height:42px; display:inline-flex; align-items:center; padding:8px 13px; }
.header-actions { gap:8px; }
.site-footer { flex:0 0 auto; margin-top:clamp(36px,6vw,72px); padding:48px 0 24px; }
.footer-grid { grid-template-columns:minmax(230px,1.45fr) repeat(4,minmax(120px,1fr)); gap:clamp(20px,3vw,42px); }
.footer-grid h2 { margin-bottom:5px; font:850 27px/1.1 Georgia,serif; }
.footer-grid h3 { margin-bottom:12px; font-size:14px; letter-spacing:.07em; text-transform:uppercase; }
.footer-grid p { max-width:280px; margin-top:7px; color:#aeb7c7; }
.footer-links a { width:max-content; max-width:100%; color:#d9deea; }
.footer-links a:hover { color:var(--gold); }
.footer-bottom { display:flex; align-items:center; min-height:50px; padding-top:20px; margin-top:32px; }

@media (max-width:900px) {
  .site-header .container,.site-footer .container { width:min(calc(100% - 32px),var(--content)); }
  .site-header,.header-row { min-height:66px; }
  .primary-nav.is-open { top:66px; padding-inline:max(16px,calc((100vw - var(--content))/2)); box-shadow:0 18px 32px rgba(5,9,16,.2); }
  .footer-grid { grid-template-columns:1.2fr repeat(3,1fr); gap:24px; }
}

@media (max-width:600px) {
  .site-header .container,.site-footer .container { width:min(calc(100% - 24px),var(--content)); }
  .site-header,.header-row { min-height:62px; }
  .brand { width:156px; height:38px; background-position:left center; }
  .header-actions { margin-left:auto; }
  .search-button,.menu-button { width:40px; height:40px; border-radius:10px; }
  .primary-nav.is-open { top:62px; padding:8px 12px 14px; }
  .primary-nav.is-open a { min-height:46px; padding:11px 10px; }
  .site-footer { margin-top:34px; padding:36px 0 18px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:28px 18px; }
  .footer-grid > div:first-child { grid-column:1/-1; }
  .footer-bottom { margin-top:26px; font-size:13px; line-height:1.5; }
}

/* SQL-backed hubs keep the same readable mobile rail as the home page. */
@media (max-width:600px) {
  main.category-page {
    width:100% !important;
    padding-inline:12px !important;
    box-sizing:border-box;
  }
}

/* Manhwa + anime editorial identity */
:root { --ink:#111426; --paper:#f5f4fb; --surface:#fff; --gold:#8b5cf6; --gold-soft:#f1eafe; --blue:#6256e8; --green:#087f8c; --green-soft:#e7fbfb; --border:#ddddeb; --shadow:0 18px 44px rgba(39,31,89,.12); }
body { background:linear-gradient(rgba(109,93,251,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(109,93,251,.035) 1px,transparent 1px),radial-gradient(circle at 8% 0%,rgba(168,85,247,.13),transparent 25rem),radial-gradient(circle at 94% 14%,rgba(22,217,227,.09),transparent 22rem),var(--paper); background-size:32px 32px,32px 32px,auto,auto,auto; }
.dark-theme { --paper:#090b16; --surface:#14172a; --ink:#f5f5ff; --muted:#aeb3cb; --border:#2a2e49; --gold-soft:#251d45; --green-soft:#102f36; }
.site-header { background:rgba(10,12,25,.94); border-bottom:1px solid rgba(80,225,226,.28); box-shadow:0 12px 34px rgba(8,10,24,.2); }
.site-header::after { content:""; position:absolute; inset:auto 0 -1px; height:2px; background:linear-gradient(90deg,transparent,#9a5cff 30%,#36e1e0 70%,transparent); opacity:.8; }
.brand { width:218px; height:48px; }
.primary-nav a[aria-current="page"] { color:#55e6e1; }
.primary-nav a:hover { color:#fff; background:linear-gradient(135deg,rgba(168,85,247,.18),rgba(22,217,227,.1)); }
.newsletter-button,.button { color:#fff; background:linear-gradient(135deg,#9b52f2,#645cff 55%,#16bfc9); box-shadow:0 8px 22px rgba(109,93,251,.3); }
.eyebrow { color:#6f54dd; }
.dark-theme .eyebrow { color:#56dedb; }
body:has(.story-grid) .page-intro .container { background:radial-gradient(circle at 88% 22%,rgba(40,225,226,.2),transparent 20rem),radial-gradient(circle at 70% -25%,rgba(168,85,247,.38),transparent 30rem),linear-gradient(125deg,#0b0d1b 0%,#17142d 50%,#101d2b 100%); border-color:rgba(143,103,255,.55); }
body:has(.story-grid) .page-intro .container::before { content:"SOURCE TO SCREEN · VERIFIED"; color:#66ebe5; border-color:rgba(79,226,224,.4); background:rgba(8,13,27,.32); }
body:has(.story-grid) .page-intro .container::after { content:"マンガ"; right:2%; color:rgba(255,255,255,.045); font-family:Inter,system-ui,sans-serif; letter-spacing:-.08em; transform:translateY(-52%) rotate(-4deg); }
.story-card { background:linear-gradient(150deg,#292047,#111426); border-color:rgba(173,125,255,.3); box-shadow:0 18px 40px rgba(24,17,55,.2); }
.story-card::before { background:radial-gradient(circle at 88% 8%,rgba(168,85,247,.62),transparent 42%),linear-gradient(0deg,rgba(5,7,18,.85),transparent 65%); }
.story-card:nth-child(2) { background:linear-gradient(145deg,#30205f,#17132d); }
.story-card:nth-child(3) { background:linear-gradient(145deg,#0c5d69,#10202b); }
.story-card:nth-child(4) { background:linear-gradient(145deg,#713458,#251528); }
.story-card:nth-child(5) { background:linear-gradient(145deg,#294779,#131b35); }
.story-card:first-child { background-image:linear-gradient(90deg,rgba(8,10,23,.98),rgba(16,17,42,.84) 52%,rgba(17,20,38,.22)),url('hero-source-to-screen.svg'); }
.story-card h2,.story-card h3,.section-heading h2,.page-intro h1 { font-family:Inter,ui-sans-serif,system-ui,sans-serif; letter-spacing:-.045em; }
.trending-label { color:#5ce6e1; background:#111426; }
.trending-item span { color:#8b5cf6; }
.explore-icon { color:#fff; background:linear-gradient(145deg,#9c55f2,#625cf4 55%,#15bdc9); box-shadow:0 9px 20px rgba(109,93,251,.26); }
.explore-card { background:linear-gradient(145deg,var(--surface),rgba(139,92,246,.055)); }
.explore-card:hover,.news-card:hover { border-color:rgba(139,92,246,.7); }
.topic-chip { position:relative; overflow:hidden; }
.topic-chip::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,#a855f7,#16d9e3); opacity:.6; }
.topic-chip:hover { background:linear-gradient(135deg,#5030a3,#185d76); }
.badge.confirmed { color:#5c35b7; background:#efe8ff; }
.badge.released { color:#076d75; background:#e0fafa; }
.poster-mini,.guide-card-art { background-image:linear-gradient(145deg,rgba(76,37,145,.94),rgba(26,94,122,.9)),url('pattern-grid.svg'); }
.release-date { color:#fff; background:linear-gradient(145deg,#7345d3,#167c91); }
.site-footer { background:#090b16; border-top:0; }
.site-footer::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,#a855f7,#6d5dfb,#16d9e3); }
.footer-links a:hover { color:#55e6e1; }
@media (max-width:600px) { .brand { width:174px; height:40px; } body:has(.story-grid) .page-intro .container::after { font-size:82px; right:-10%; } }

/* Animated home composition */
.home-page .page-intro { padding-top:28px; }
.home-page .page-intro .container { min-height:390px; display:flex; flex-direction:column; justify-content:center; }
.home-page .page-intro .container::before { display:none !important; }
.home-page .page-intro h1 { max-width:850px; font-size:clamp(46px,6vw,78px); line-height:.96; text-transform:uppercase; }
.home-page .page-intro p { max-width:680px; font-size:clamp(17px,2vw,21px); }
.home-kicker { position:relative; z-index:2; display:flex; align-items:center; gap:10px; width:max-content; margin-bottom:22px; color:#fff; font-size:11px; font-weight:900; letter-spacing:.16em; }
.home-kicker span { padding:7px 10px; background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.16); border-radius:6px; }
.home-kicker span:nth-of-type(2) { color:#54e5e0; }
.home-kicker i { width:25px; height:1px; background:linear-gradient(90deg,#9d58f2,#35dedc); }
.home-hero-actions { position:relative; z-index:2; display:flex; align-items:center; gap:22px; margin-top:25px; }
.home-hero-actions .button { min-height:50px; padding-inline:21px; transform:skewX(-5deg); }
.home-hero-actions .button > *,.home-hero-actions .button { font-style:normal; }
.home-hero-actions b { margin-left:14px; }
.hero-text-link { color:#e8e8f7; font-weight:800; border-bottom:1px solid rgba(85,230,225,.6); }
.hero-text-link:hover { color:#55e6e1; }
.home-page .page-intro .container::after { content:"アニメ"; right:-1%; top:54%; font-size:clamp(130px,20vw,280px); color:rgba(255,255,255,.04); transform:translateY(-50%) rotate(-7deg); }
.home-page .page-intro .container { isolation:isolate; }
.home-page .page-intro .container > * { position:relative; z-index:2; }
.home-page .page-intro .container::selection { background:#8b5cf6; }
.home-page .page-intro .container { clip-path:polygon(0 0,96% 0,100% 12%,100% 100%,4% 100%,0 88%); }
.home-page .page-intro .container { background-image:radial-gradient(circle at 84% 28%,rgba(26,223,224,.19),transparent 17rem),radial-gradient(circle at 73% -20%,rgba(174,79,255,.42),transparent 28rem),repeating-linear-gradient(112deg,transparent 0 18px,rgba(255,255,255,.018) 19px 20px),linear-gradient(125deg,#090b18,#1a1534 54%,#102531); }
.home-latest { padding-top:34px; }
.home-latest .section-heading { align-items:end; }
.home-latest .section-heading h2 { font-size:clamp(34px,5vw,56px); text-transform:uppercase; }
.home-page .story-card { clip-path:polygon(0 0,94% 0,100% 8%,100% 100%,6% 100%,0 92%); }
.home-page .story-card:first-child { clip-path:polygon(0 0,96% 0,100% 5%,100% 100%,4% 100%,0 95%); }
.home-page .story-card:hover { transform:translateY(-5px) rotate(-.25deg); }
.adaptation-radar { position:relative; padding:clamp(58px,7vw,92px) 0; overflow:hidden; color:#f6f7ff; background:#0a0c19; }
.adaptation-radar::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 10% 15%,rgba(168,85,247,.23),transparent 24rem),radial-gradient(circle at 90% 85%,rgba(22,217,227,.18),transparent 24rem),repeating-linear-gradient(120deg,transparent 0 28px,rgba(255,255,255,.018) 29px 30px); pointer-events:none; }
.adaptation-radar .container { position:relative; }
.radar-heading { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr); gap:30px; align-items:end; margin-bottom:30px; }
.radar-heading h2 { max-width:760px; margin:0; font:900 clamp(36px,5vw,64px)/.98 Inter,system-ui,sans-serif; letter-spacing:-.055em; text-transform:uppercase; }
.radar-heading > p { margin:0; color:#aeb3cb; font-size:17px; }
.radar-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; counter-reset:radar; }
.radar-card { position:relative; min-height:330px; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; padding:28px; color:#fff; border:1px solid rgba(255,255,255,.12); clip-path:polygon(0 0,91% 0,100% 10%,100% 100%,9% 100%,0 90%); transition:transform .25s ease,filter .25s ease; }
.radar-card::before { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,8,20,.92),rgba(6,8,20,.05)); }
.radar-card > * { position:relative; z-index:1; }
.radar-card:hover { color:#fff; transform:translateY(-8px); filter:saturate(1.18); }
.radar-card.is-manhwa { background:linear-gradient(145deg,#713ac2,#251747); }
.radar-card.is-production { background:linear-gradient(145deg,#2551a0,#141e47); }
.radar-card.is-anime { background:linear-gradient(145deg,#087e8b,#123b4a); }
.radar-number { position:absolute; left:20px; top:15px; color:rgba(255,255,255,.16); font-size:66px; font-weight:950; line-height:1; }
.radar-icon { position:absolute; right:-5px; top:12px; color:rgba(255,255,255,.1); font-size:130px; font-weight:900; line-height:1; transform:rotate(8deg); }
.radar-card small { color:#5ce6e1; text-transform:uppercase; font-weight:900; letter-spacing:.12em; }
.radar-card h3 { margin:8px 0 7px; font:900 30px/1 Inter,system-ui,sans-serif; letter-spacing:-.04em; }
.radar-card p { margin:0 0 18px; color:#d6d9e7; }
.radar-card b { font-size:14px; }
.home-page .section:not(.adaptation-radar) { animation:home-rise .55s ease both; animation-delay:calc(var(--section-index,0) * 35ms); }
@keyframes home-rise { from { opacity:.25; transform:translateY(14px); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce) { .home-page .section { animation:none !important; } .radar-card,.story-card { transition:none !important; } }
@media (max-width:900px) {
  .home-page .page-intro .container { min-height:340px; clip-path:none; border-radius:20px; }
  .radar-heading { grid-template-columns:1fr; }
  .radar-grid { grid-template-columns:1fr; }
  .radar-card { min-height:245px; clip-path:polygon(0 0,95% 0,100% 14%,100% 100%,5% 100%,0 86%); }
}
@media (max-width:600px) {
  .home-page .page-intro { padding-top:14px; }
  .home-page .page-intro .container { min-height:430px; padding:30px 22px; }
  .home-page .page-intro h1 { font-size:42px; line-height:.98; }
  .home-kicker { gap:6px; }
  .home-kicker span { padding:6px 7px; font-size:9px; }
  .home-kicker i { width:10px; }
  .home-hero-actions { align-items:flex-start; flex-direction:column; gap:16px; }
  .home-page .story-card,.home-page .story-card:first-child { clip-path:none; }
  .adaptation-radar { padding:54px 0; }
  .radar-heading h2 { font-size:38px; }
  .radar-card { min-height:265px; padding:24px; }
}

/* Shared inner-page frame and visual language */
:root { --page-gutter:max(20px,calc((100vw - var(--content))/2)); }
body:not(.admin-body):not(.auth-page)::before,
body:not(.admin-body):not(.auth-page)::after {
  content:"";
  position:fixed;
  z-index:0;
  top:72px;
  bottom:0;
  width:1px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(139,92,246,.28),rgba(22,217,227,.13) 48%,transparent 90%);
}
body:not(.admin-body):not(.auth-page)::before { left:var(--page-gutter); }
body:not(.admin-body):not(.auth-page)::after { right:var(--page-gutter); }
body:not(.admin-body):not(.auth-page) > main,
body:not(.admin-body):not(.auth-page) > footer { position:relative; z-index:1; }
body:not(.admin-body):not(.auth-page) .container {
  width:min(calc(100% - 40px),var(--content));
}
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro {
  padding:28px 0 18px;
}
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro > .container,
body:not(.home-page):not(.admin-body):not(.auth-page) main > .month-nav {
  position:relative;
  overflow:hidden;
  padding:clamp(28px,4vw,48px);
  color:#f7f7ff;
  background:
    radial-gradient(circle at 88% 12%,rgba(22,217,227,.17),transparent 17rem),
    radial-gradient(circle at 68% -35%,rgba(168,85,247,.38),transparent 26rem),
    repeating-linear-gradient(112deg,transparent 0 21px,rgba(255,255,255,.018) 22px 23px),
    linear-gradient(125deg,#0b0d1b,#1b1736 58%,#10242f);
  border:1px solid rgba(139,92,246,.42);
  border-radius:20px;
  box-shadow:0 20px 48px rgba(24,17,55,.17);
  clip-path:polygon(0 0,97% 0,100% 15%,100% 100%,3% 100%,0 85%);
}
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro > .container::after {
  content:"物語";
  position:absolute;
  right:2%;
  top:50%;
  color:rgba(255,255,255,.04);
  font:900 clamp(88px,13vw,170px)/1 Inter,system-ui,sans-serif;
  transform:translateY(-50%) rotate(-6deg);
  pointer-events:none;
}
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro h1,
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro p,
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro .filter-row {
  position:relative;
  z-index:1;
}
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro h1 {
  max-width:850px;
  color:#fff;
  font-family:Inter,system-ui,sans-serif;
  font-weight:950;
  letter-spacing:-.05em;
}
body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro p { color:#cbd0e2; }
body:not(.home-page):not(.admin-body):not(.auth-page) .filter-row {
  width:max-content;
  max-width:100%;
  padding:6px;
  background:rgba(6,8,20,.38);
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
}
body:not(.home-page):not(.admin-body):not(.auth-page) .filter-button {
  color:#e9eafa;
  background:transparent;
  border-color:transparent;
}
body:not(.home-page):not(.admin-body):not(.auth-page) .filter-button.is-active {
  color:#fff;
  background:linear-gradient(135deg,#9854ef,#5e5cef,#16aeba);
}
.directory-grid,.guide-list,.calendar-shell,.tracker-layout,.trust-layout,.search-results {
  width:min(calc(100% - 40px),var(--content));
  margin-inline:auto;
}
.directory-card,.guide-card,.calendar-event,.tracker-card,.news-card,.search-result,.panel {
  border-color:rgba(112,91,186,.22);
  box-shadow:0 14px 36px rgba(35,27,78,.08);
}
.directory-card,.search-result,.panel {
  position:relative;
  overflow:hidden;
}
.directory-card::before,.search-result::before,.panel::before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  background:linear-gradient(90deg,#a855f7,#6d5dfb 55%,#16d9e3);
  opacity:.72;
}
.directory-card:hover,.guide-card:hover,.calendar-event:hover,.tracker-card:hover,.news-card:hover,.search-result:hover {
  border-color:rgba(139,92,246,.62);
  box-shadow:0 22px 46px rgba(38,25,92,.14);
}
.directory-card h2,.guide-card h2,.calendar-event h2,.search-result h2,.panel h2 {
  font-family:Inter,system-ui,sans-serif;
  font-weight:900;
  letter-spacing:-.035em;
}
.calendar-event { border-left:4px solid #745be9; }
.calendar-note,.answer-box {
  color:#3e2b72;
  background:linear-gradient(135deg,#f2eaff,#e5fbfb);
  border-color:rgba(126,91,218,.28);
}
.dark-theme .calendar-note,.dark-theme .answer-box { color:#e7e1ff; background:linear-gradient(135deg,#261b48,#12343b); }
.tracker-hero,.article-header {
  position:relative;
  overflow:hidden;
  color:#f7f7ff;
  background:
    radial-gradient(circle at 90% 15%,rgba(22,217,227,.18),transparent 18rem),
    radial-gradient(circle at 68% -30%,rgba(168,85,247,.38),transparent 25rem),
    linear-gradient(125deg,#0b0d1b,#1b1736 58%,#10242f);
  border-color:rgba(139,92,246,.42);
  box-shadow:0 20px 48px rgba(24,17,55,.17);
  clip-path:polygon(0 0,97% 0,100% 12%,100% 100%,3% 100%,0 88%);
}
.tracker-hero p,.tracker-hero .muted,.article-header .dek,.article-header .article-meta { color:#cbd0e2; }
.tracker-title h1,.article-header h1 {
  color:#fff;
  font-family:Inter,system-ui,sans-serif;
  font-weight:950;
  letter-spacing:-.05em;
}
body:has(main.article) .article {
  width:min(calc(100% - 40px),var(--content));
}
body:has(main.article) .article-header { width:100%; }
body:has(main.article) .article-body,
body:has(main.article) .answer-box,
body:has(main.article) .article-tools,
body:has(main.article) .breadcrumbs {
  width:min(100%,var(--reading));
  margin-inline:auto;
}
body:has(main.article) .article-body {
  padding:clamp(24px,4vw,44px);
  background:var(--surface);
  border-inline:1px solid var(--border);
  box-shadow:0 18px 44px rgba(35,27,78,.06);
}
body:has(.trust-layout) .trust-copy {
  position:relative;
  overflow:hidden;
  padding:clamp(28px,4vw,48px);
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:18px;
}
body:has(.trust-layout) .trust-nav {
  padding:14px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:15px;
}
@media (max-width:900px) {
  :root { --page-gutter:16px; }
  body:not(.admin-body):not(.auth-page)::before,body:not(.admin-body):not(.auth-page)::after { top:66px; }
  body:not(.admin-body):not(.auth-page) .container,
  .directory-grid,.guide-list,.calendar-shell,.tracker-layout,.trust-layout,.search-results,
  body:has(main.article) .article { width:min(calc(100% - 32px),var(--content)); }
}
@media (max-width:600px) {
  :root { --page-gutter:12px; }
  body:not(.admin-body):not(.auth-page)::before,body:not(.admin-body):not(.auth-page)::after { top:62px; }
  body:not(.admin-body):not(.auth-page) .container,
  .directory-grid,.guide-list,.calendar-shell,.tracker-layout,.trust-layout,.search-results,
  body:has(main.article) .article { width:min(calc(100% - 24px),var(--content)); }
  body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro > .container,
  .tracker-hero,.article-header { clip-path:none; border-radius:17px; }
  body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro > .container { padding:28px 20px; }
  body:not(.home-page):not(.admin-body):not(.auth-page) .page-intro > .container::after { right:-12%; font-size:86px; }
  body:has(main.article) .article-body { width:100%; padding:24px 19px; border:1px solid var(--border); border-radius:15px; }
}

/* Compact article masthead, tags and sharing */
body:has(main.article) .article { padding-top:26px; }
body:has(main.article) .article-header {
  width:min(100%,980px);
  margin:0 auto 24px;
  padding:clamp(28px,3.4vw,42px);
  clip-path:polygon(0 0,97% 0,100% 14%,100% 100%,3% 100%,0 86%);
}
body:has(main.article) .article-header h1 {
  max-width:820px;
  margin:9px 0 13px;
  font-size:clamp(38px,4.3vw,58px);
  line-height:1.01;
  text-wrap:balance;
}
body:has(main.article) .article-header .dek {
  max-width:760px;
  margin:0;
  font-size:clamp(16px,1.55vw,19px);
  line-height:1.55;
}
body:has(main.article) .article-header .byline {
  max-width:820px;
  margin-top:17px;
  padding-top:14px;
  font-size:14px;
}
.article-tags {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  max-width:820px;
  margin-top:14px;
}
.article-tags > span,.share-label {
  margin-right:3px;
  color:#9da5bd;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.article-tags a {
  min-height:29px;
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  color:#d9dcf0;
  background:rgba(255,255,255,.065);
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  font-size:12px;
  font-weight:750;
}
.article-tags a::before { content:"#"; margin-right:2px; color:#55e6e1; }
.article-tags a:hover { color:#fff; border-color:rgba(85,230,225,.55); background:rgba(22,217,227,.1); }
.article-tools {
  align-items:center;
  gap:7px;
  max-width:820px;
  margin-top:12px;
}
.article-tools .share-button {
  min-height:32px;
  padding:5px 11px;
  color:#f1f2fb;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.17);
  border-radius:9px;
  font-size:12px;
  font-weight:800;
}
.article-tools .share-button:hover {
  color:#fff;
  background:linear-gradient(135deg,rgba(152,84,239,.75),rgba(22,174,186,.72));
  border-color:rgba(126,221,226,.55);
}
.article-tools .copy-link { font-family:inherit; }
@media (max-width:600px) {
  body:has(main.article) .article { padding-top:14px; }
  body:has(main.article) .article-header { width:100%; padding:25px 20px; clip-path:none; }
  body:has(main.article) .article-header h1 { font-size:36px; line-height:1.04; }
  body:has(main.article) .article-header .dek { font-size:16px; }
  .article-tags { gap:6px; }
  .article-tools { display:flex; grid-template-columns:none; gap:6px; }
  .article-tools .share-label { width:100%; }
  .article-tools .share-button { flex:0 0 auto; }
}

/* Article uses the same outer rails as the home page */
body:has(main.article) .article {
  width:min(calc(100% - 40px),var(--content));
}
body:has(main.article) .article-header {
  width:100%;
  margin-inline:0;
}
body:has(main.article) .article-header > * {
  max-width:830px;
}
body:has(main.article) .article-header h1 { max-width:790px; }
.article-content-layout {
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:clamp(28px,4vw,54px);
  align-items:start;
}
.article-main-column { min-width:0; }
body:has(main.article) .article-main-column .answer-box,
body:has(main.article) .article-main-column .article-body {
  width:100%;
  margin-inline:0;
}
body:has(main.article) .article-main-column .answer-box { margin-bottom:18px; }
body:has(main.article) .article-main-column .article-body {
  padding:clamp(26px,3.5vw,42px);
  border:1px solid var(--border);
  border-radius:18px;
}
.article-sidebar {
  position:sticky;
  top:96px;
  display:grid;
  gap:18px;
}
.article-toc {
  position:relative;
  overflow:hidden;
  padding:22px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:16px;
  box-shadow:0 14px 34px rgba(35,27,78,.08);
}
.article-toc::before {
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  background:linear-gradient(90deg,#a855f7,#6d5dfb,#16d9e3);
}
.article-toc h2 {
  margin:0 0 14px;
  font:900 18px/1.2 Inter,system-ui,sans-serif;
  letter-spacing:-.02em;
}
.article-toc ol {
  margin:0;
  padding:0;
  display:grid;
  gap:4px;
  list-style:none;
  counter-reset:toc;
}
.article-toc li { counter-increment:toc; }
.article-toc a {
  position:relative;
  min-height:38px;
  display:flex;
  align-items:center;
  padding:7px 8px 7px 34px;
  color:var(--muted);
  border-radius:9px;
  font-size:13px;
  font-weight:720;
  line-height:1.35;
}
.article-toc a::before {
  content:counter(toc,decimal-leading-zero);
  position:absolute;
  left:8px;
  color:#7959dc;
  font-size:10px;
  font-weight:900;
}
.article-toc a:hover { color:var(--ink); background:var(--gold-soft); }
.article-ad {
  min-height:250px;
  display:grid;
  place-content:center;
  gap:5px;
  padding:20px;
  text-align:center;
  color:var(--muted);
  background:linear-gradient(145deg,rgba(139,92,246,.045),rgba(22,217,227,.045)),var(--surface);
  border:1px dashed rgba(115,94,180,.34);
  border-radius:16px;
}
.article-ad:nth-child(3) { min-height:180px; }
.article-ad span {
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.article-ad strong { color:var(--ink); font-size:17px; }
.article-ad small { font-size:11px; }
.article-inline-ad {
  width:100%;
  min-height:180px;
  margin:30px 0;
}
.article-feedback {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:7px 18px;
  margin-top:22px;
  padding:15px 18px;
  background:linear-gradient(135deg,rgba(105,80,200,.09),rgba(49,176,187,.08)),var(--surface);
  border:1px solid var(--border);
  border-radius:16px;
}
.article-feedback-copy .eyebrow { margin-bottom:3px; font-size:10px; }
.article-feedback-copy h2 { margin:0; font-size:18px; letter-spacing:-.02em; }
.article-feedback-copy>p:last-child { display:none; }
.article-feedback-actions { display:flex; gap:8px; }
.article-feedback-actions button,
.article-suggestion button {
  min-height:34px;
  padding:6px 12px;
  color:var(--ink);
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:10px;
  font-weight:850;
  cursor:pointer;
}
.article-feedback-actions button:hover,
.article-feedback-actions button[aria-pressed="true"] { color:#fff; background:#6750c8; border-color:#6750c8; }
.article-feedback-status { grid-column:1/-1; min-height:0; margin:0; color:var(--muted); font-size:11px; }
.article-feedback-status:empty { display:none; }
.article-suggestion { grid-column:1; }
.article-suggestion summary,.article-correction-link { color:#6048bd; font-size:13px; font-weight:850; cursor:pointer; }
.article-suggestion form { margin-top:9px; }
.article-suggestion label { display:block; margin-bottom:6px; color:var(--muted); font-size:12px; font-weight:750; }
.article-suggestion form>div { display:flex; max-width:560px; }
.article-suggestion input { min-width:0; flex:1; min-height:42px; padding:8px 12px; color:var(--ink); background:var(--surface); border:1px solid var(--border); border-radius:10px 0 0 10px; }
.article-suggestion button { border-radius:0 10px 10px 0; }
.article-correction-link { grid-column:2; grid-row:4; justify-self:end; }
.feedback-honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; }
.dark-theme .article-suggestion summary,.dark-theme .article-correction-link { color:#9de8eb; }
@media (max-width:900px) {
  body:has(main.article) .article { width:min(calc(100% - 32px),var(--content)); }
  .article-content-layout { grid-template-columns:minmax(0,1fr) 240px; gap:24px; }
}
@media (max-width:760px) {
  .article-content-layout { grid-template-columns:1fr; }
  .article-sidebar { display:none; }
  .article-ad { min-height:160px; }
  .article-ad:nth-child(3) { min-height:160px; }
  .article-inline-ad { display:grid; min-height:135px; margin:22px 0; }
  .article-feedback { grid-template-columns:minmax(0,1fr) auto; gap:8px 12px; padding:14px; }
  .article-feedback-copy { grid-column:1; }
  .article-feedback-actions { grid-row:auto; }
  .article-feedback-actions button { min-width:44px; padding-inline:10px; font-size:12px; }
  .article-feedback-actions button[data-feedback-vote="no"] { font-size:0; }
  .article-feedback-actions button[data-feedback-vote="no"]::after { content:"No"; font-size:12px; }
  .article-suggestion,.article-correction-link { grid-row:auto; justify-self:start; }
  .article-suggestion { grid-column:1; }
  .article-correction-link { grid-column:2; }
  .article-feedback-status { grid-column:1/-1; }
}
@media(max-width:430px){
  .article-feedback { grid-template-columns:1fr; }
  .article-feedback-actions,.article-suggestion,.article-correction-link { grid-column:1; }
  .article-feedback-actions { justify-self:start; }
}
@media (max-width:600px) {
  body:has(main.article) .article { width:min(calc(100% - 24px),var(--content)); }
  body:has(main.article) .article-main-column .article-body { padding:24px 19px; }
  .article-sidebar { grid-template-columns:1fr; }
  .article-toc { grid-column:auto; }
}

.admin-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:14px; margin-bottom:20px; padding:16px; background:#fff; border:1px solid #dde2e9; border-radius:14px; box-shadow:0 8px 20px rgba(21,26,36,.035); }
.admin-filter-form { flex:1; display:flex; gap:9px; min-width:min(100%,480px); }
.admin-filter-form input,.admin-filter-form select { min-width:0; min-height:43px; padding:8px 11px; color:#151a24; background:#fff; border:1px solid #cfd5de; border-radius:9px; }
.admin-filter-form input { flex:1; }
.admin-filter-form button { min-height:43px; }
.admin-result-count { color:#667085; font-size:14px; font-weight:750; white-space:nowrap; }
.admin-title-cell strong { display:block; }
.admin-title-cell small { color:#667085; }
.workflow-badge { display:inline-flex; padding:4px 8px; color:#495467; background:#f2f4f7; border-radius:999px; font-size:12px; font-weight:800; text-transform:capitalize; }
.workflow-badge.published { color:#12603d; background:#e9f7ef; }
.workflow-badge.source-audit { color:#7a5b12; background:#fff5d8; }
.workflow-badge.editor-review { color:#244d90; background:#eaf1ff; }
.workflow-badge.archived { color:#667085; background:#e5e8ed; }
.audit-json { max-height:520px; margin:0; padding:16px; overflow:auto; color:#e9eef7; background:#151a24; border-radius:10px; font-size:13px; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; }
.muted { color: var(--muted); }
.section { padding:42px 0; }
.section-heading { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:20px; }
.section-heading h2 { margin: 0; font: 800 clamp(24px, 4vw, 32px)/1.2 Georgia, serif; letter-spacing: -.025em; }
.section-heading h2::after { content:""; display:inline-block; width:38px; height:3px; margin:0 0 7px 12px; background:var(--gold); border-radius:3px; }
.section-heading a { color: var(--blue); font-weight: 750; }

.lead { padding: 38px 0 24px; }
.lead-card { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(310px, .6fr); overflow: hidden; background: var(--surface); border: 1px solid var(--border); border-radius: 22px; box-shadow: var(--shadow); }
.lead-copy { padding: clamp(28px, 5vw, 64px); }
.lead h1 { max-width: 830px; margin: 0 0 18px; font: 850 clamp(34px, 5.5vw, 64px)/1.03 Georgia, serif; letter-spacing: -.045em; }
.lead-summary { max-width: 720px; margin: 0 0 24px; color: #3e4656; font-size: 18px; }
.lead-art { min-height: 390px; display: grid; place-items: center; background: linear-gradient(145deg, #1d2940, #333f58); position: relative; overflow: hidden; }
.lead-art::before { content: "AL"; position: absolute; color: rgba(255,255,255,.04); font: 900 220px/1 Georgia, serif; transform: rotate(-10deg); }
.lead-art .poster { width: 210px; aspect-ratio: 2/3; padding: 26px; display: flex; align-items: flex-end; color: #fff; background: linear-gradient(155deg, #d6a62e, #694c17 55%, #151a24); border-radius: 12px; box-shadow: 0 24px 50px rgba(0,0,0,.35); font: 800 28px/1.05 Georgia, serif; transform: rotate(3deg); }

.release-list, .news-grid, .tracker-grid { display: grid; gap: 14px; }
.release-list { grid-template-columns: repeat(3, 1fr); }
.release-item, .news-card, .tracker-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); }
.release-item { display: grid; grid-template-columns: 74px 1fr; overflow: hidden; }
.release-date { display: grid; place-items: center; padding: 16px 8px; background: var(--ink); color: #fff; font-weight: 850; text-align: center; line-height: 1.2; }
.release-date strong { display: block; color: var(--gold); font-size: 26px; }
.release-copy { padding: 16px; }
.release-copy h3, .news-card h3, .tracker-card h3 { margin: 0 0 4px; line-height: 1.25; }

.news-grid { grid-template-columns: repeat(3, 1fr); }
.news-card { padding: 22px; }
.news-card h3 { font: 800 22px/1.22 Georgia, serif; }
.news-card .meta { margin-top: 16px; font-size: 14px; color: var(--muted); }
.badge { display: inline-flex; align-items: center; min-height: 26px; padding: 3px 9px; border-radius: 999px; font-size: 12px; line-height: 1; font-weight: 850; text-transform: uppercase; letter-spacing: .045em; }
.badge.confirmed { color: #12603d; background: var(--green-soft); }
.badge.released { color: #244d90; background: #eaf1ff; }
.badge.unknown { color: #7a5b12; background: var(--gold-soft); }

.tracker-grid { grid-template-columns:repeat(4,1fr); gap:18px; }
.tracker-card { padding: 20px; }
.tracker-card .poster-mini { aspect-ratio:16/9; display:grid; place-items:center; margin:-20px -20px 18px; color:#fff; background-color:#263550; background-image:linear-gradient(135deg,rgba(38,53,80,.82),rgba(214,166,46,.72)),url('pattern-grid.svg'); border-radius:16px 16px 0 0; font:800 24px/1.1 Georgia,serif; text-align:center; padding:20px; text-shadow:0 2px 12px rgba(0,0,0,.35); }
.tracker-card:nth-child(2) .poster-mini { background-image:linear-gradient(135deg,rgba(26,89,69,.88),rgba(29,45,39,.72)),url('pattern-grid.svg'); }
.tracker-card:nth-child(3) .poster-mini { background-image:linear-gradient(135deg,rgba(74,63,127,.86),rgba(203,129,155,.64)),url('pattern-grid.svg'); }
.tracker-card:nth-child(4) .poster-mini { background-image:linear-gradient(135deg,rgba(94,58,26,.9),rgba(214,166,46,.7)),url('pattern-grid.svg'); }
.tracker-card p { margin: 6px 0; color: var(--muted); }

.guide-strip { display: grid; grid-template-columns: 1.2fr .8fr; gap: 22px; }
.guide-feature, .signup { padding: 28px; border-radius: var(--radius); }
.guide-feature { position:relative; overflow:hidden; background:linear-gradient(125deg,#151a24,#263550); color:#fff; box-shadow:0 16px 36px rgba(21,26,36,.13); }
.guide-feature::after { content:"AL"; position:absolute; right:-16px; bottom:-40px; color:rgba(255,255,255,.04); font:900 150px/1 Georgia,serif; transform:rotate(-8deg); }
.guide-feature>* { position:relative; z-index:1; }
.guide-feature h2 { margin: 8px 0 12px; font: 800 34px/1.15 Georgia, serif; }
.signup { background: var(--gold-soft); border: 1px solid #efd784; }
.signup h2 { margin-top: 0; font: 800 28px/1.15 Georgia, serif; }
.signup-form { display: flex; }
.signup-form input { min-width: 0; flex: 1; min-height: 46px; padding: 8px 12px; border: 1px solid var(--border); border-radius: 10px 0 0 10px; }
.signup-form button { border-radius: 0 10px 10px 0; }

.breadcrumbs { padding: 20px 0 0; color: var(--muted); font-size: 14px; }
.tracker-hero { display: grid; grid-template-columns: 260px 1fr; gap: 36px; padding: 34px 0; align-items: center; }
.cover-placeholder { aspect-ratio: 2/3; display: flex; align-items: flex-end; padding: 24px; color: #fff; background: linear-gradient(150deg, #d6a62e, #263550 60%, #151a24); border-radius: 16px; box-shadow: var(--shadow); font: 800 28px/1.05 Georgia, serif; }
.tracker-title h1, .article-header h1 { margin: 8px 0 12px; font: 850 clamp(38px, 6vw, 68px)/1.02 Georgia, serif; letter-spacing: -.045em; }
.tracker-title .alt-title { font-size: 18px; color: var(--muted); }
.badge-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }
.verified { padding: 12px 14px; background: var(--green-soft); border-left: 4px solid var(--green); border-radius: 8px; }
.tracker-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 26px; align-items: start; padding-bottom: 50px; }
.panel { padding: 26px; background: #fff; border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 18px; }
.panel h2 { margin: 0 0 16px; font: 800 28px/1.2 Georgia, serif; }
.fact-list { margin: 0; }
.fact-row { display: grid; grid-template-columns: 150px 1fr; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--border); }
.fact-row:last-child { border-bottom: 0; }
.fact-row dt { color: var(--muted); font-weight: 700; }
.fact-row dd { margin: 0; font-weight: 650; }
.check-list { padding-left: 22px; }
.check-list li { margin: 9px 0; }
.source-list { padding-left: 20px; }
.source-list a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }

.article { width: min(calc(100% - 32px), var(--reading)); margin-inline: auto; padding: 28px 0 60px; }
.article-header { padding: 20px 0 30px; }
.article-header .dek { color: #40495a; font-size: 20px; }
.byline { color: var(--muted); font-size: 14px; }
.byline a { color:inherit; font-weight:800; text-underline-offset:3px; }
.article-author-card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;align-items:start;margin:40px 0 10px;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.article-author-card h2{margin:2px 0 8px;font-size:24px}.article-author-card p{margin:0 0 10px}.article-author-card .eyebrow{margin:0;color:var(--accent)}
.author-avatar{display:grid;place-items:center;width:72px;aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,#7c4dff,#69d5dc);color:#fff;font:900 22px/1 var(--font-display);box-shadow:0 10px 28px rgba(91,67,190,.22)}
.author-page{padding-block:32px 72px}.author-profile{display:grid;grid-template-columns:104px minmax(0,1fr);gap:28px;align-items:center;padding:34px;border:1px solid var(--line);border-radius:24px;background:var(--surface)}
.author-profile .author-avatar{width:104px;font-size:30px}.author-profile h1{margin:4px 0 4px;font-size:clamp(38px,6vw,68px)}.author-role{margin:0 0 14px;color:var(--accent);font-weight:900}
.author-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.author-details>div{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.author-details h2{margin-top:0}
.author-articles{margin-top:42px}.author-article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.author-article-list article{padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.author-article-list article>p:first-child{color:var(--muted);font-size:13px;font-weight:800}.author-article-list h3{margin:6px 0 10px;font-size:22px}
@media(max-width:700px){.article-author-card{grid-template-columns:52px minmax(0,1fr);padding:16px}.article-author-card .author-avatar{width:52px;font-size:17px}.author-profile{grid-template-columns:64px minmax(0,1fr);gap:16px;padding:20px}.author-profile .author-avatar{width:64px;font-size:20px}.author-details,.author-article-list{grid-template-columns:1fr}}
.answer-box { padding: 22px; background: var(--gold-soft); border: 1px solid #efd784; border-radius: 14px; }
.article-body h2 { margin: 38px 0 12px; font: 800 30px/1.2 Georgia, serif; }
.article-body p, .article-body li { font-size: 18px; }
.article-body a { color: var(--blue); text-decoration: underline; }
.article-body .article-inline-link { color:#6448c7; font-weight:750; text-decoration-thickness:1px; text-underline-offset:3px; }
.article-body .article-inline-link:hover { color:#3d2b96; }
.dark-theme .article-body .article-inline-link { color:#8fe8e6; }
.dark-theme .article-body .article-inline-link:hover { color:#c6ffff; }
.correction-note { padding: 18px; border-left: 4px solid var(--blue); background: #eef4ff; }

.site-footer { padding: 38px 0; color: #d9deea; background: var(--ink); }
.footer-grid { display:grid; grid-template-columns:1.35fr repeat(3,1fr); gap:30px; }
.footer-grid h2, .footer-grid h3 { color: #fff; margin-top: 0; }
.footer-links { display: grid; gap: 8px; }
.footer-bottom { padding-top: 24px; margin-top: 28px; border-top: 1px solid rgba(255,255,255,.14); color: #aeb7c7; font-size: 14px; }

@media (max-width: 900px) {
  .primary-nav, .newsletter-button { display: none; }
  .menu-button { display: inline-grid; }
  .primary-nav.is-open { position: absolute; top: 70px; left: 0; right: 0; display: grid; gap: 0; margin: 0; padding: 10px 16px 18px; background: var(--ink); border-bottom: 3px solid var(--gold); }
  .primary-nav.is-open a { padding: 12px; border-bottom: 1px solid rgba(255,255,255,.12); }
  .lead-card, .guide-strip, .tracker-layout { grid-template-columns: 1fr; }
  .lead-art { min-height: 310px; }
  .release-list { grid-template-columns: 1fr; }
  .news-grid { grid-template-columns: repeat(2, 1fr); }
  .tracker-grid { grid-template-columns: repeat(2, 1fr); }
  .tracker-layout aside { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
  .tracker-layout aside .panel { margin-bottom: 0; }
  .story-grid { grid-template-columns:1fr 1fr; }
  .story-card:first-child { grid-column:1/-1; grid-row:auto; min-height:380px; }
  .stats-row { grid-template-columns:1fr 1fr; }
  .stats-row span:nth-child(odd) { border-left:0; }
  .stats-row span:nth-child(n+3) { border-top:1px solid var(--border); }
  .trending-bar { grid-template-columns:1fr; }
  .trending-item { border-left:0; border-top:1px solid var(--border); }
  .explore-grid { grid-template-columns:repeat(2,1fr); }
  .topic-row { grid-template-columns:repeat(3,1fr); }
  .directory-grid { grid-template-columns:repeat(2,1fr); }
  .calendar-shell { grid-template-columns:1fr; }
  .guide-list { grid-template-columns:1fr; }
  .trust-layout { grid-template-columns:1fr; }
  .trust-nav { position:static; grid-template-columns:repeat(2,1fr); }
  .admin-shell { display:block; min-width:0; }
  .admin-sidebar { position:relative; top:auto; width:100%; height:auto; padding:14px; overflow:visible; }
  .admin-sidebar .brand { margin-bottom:12px; }
  .admin-sidebar::after,.admin-nav-label { display:none; }
  .admin-nav { display:flex; gap:6px; overflow-x:auto; padding-bottom:4px; scrollbar-width:thin; }
  .admin-nav a { flex:0 0 auto; white-space:nowrap; }
  .admin-main { width:100%; max-width:100%; padding:20px 14px; overflow:hidden; }
  .admin-top { align-items:flex-start; flex-wrap:wrap; padding:20px; }
  .admin-top h1 { font-size:clamp(30px,7vw,38px); }
  .admin-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-panel { min-width:0; padding:18px; }
  .admin-toolbar,.admin-filter-form { min-width:0; flex-wrap:wrap; }
  .admin-filter-form input,.admin-filter-form select { min-width:0; flex:1 1 190px; }
  .admin-table-wrap { max-width:100%; overflow-x:auto; }
  .article-content-field,.article-rich-toolbar,.article-image-controls,.article-rich-editor { min-width:0; max-width:100%; }
  .article-rich-editor { padding:18px; overflow-x:auto; }
  .article-rich-editor table { display:block; max-width:100%; overflow-x:auto; white-space:nowrap; }
  .article-image-controls button.is-danger { margin-left:0; }
}

@media (max-width: 600px) {
  .container { width: min(calc(100% - 24px), var(--content)); }
  .header-row { min-height: 62px; gap: 10px; }
  .brand,.brand-logo { width:164px; }
  .primary-nav.is-open { top: 62px; }
  .lead { padding-top: 18px; }
  .lead-card { border-radius: 16px; }
  .lead-copy { padding: 24px 20px; }
  .lead h1 { font-size: 38px; }
  .lead-summary { font-size: 16px; }
  .lead-art { min-height: 260px; }
  .lead-art .poster { width: 150px; padding: 18px; font-size: 21px; }
  .section { padding: 26px 0; }
  .news-grid, .tracker-grid, .footer-grid, .tracker-layout aside { grid-template-columns: 1fr; }
  .news-card { padding: 18px; }
  .tracker-hero { grid-template-columns: 105px 1fr; gap: 18px; align-items: start; }
  .cover-placeholder { padding: 12px; font-size: 16px; border-radius: 10px; }
  .tracker-title h1 { font-size: 34px; }
  .tracker-title .alt-title { font-size: 15px; }
  .verified { grid-column: 1 / -1; }
  .panel { padding: 20px; }
  .fact-row { grid-template-columns: 1fr; gap: 2px; }
  .article { width: min(calc(100% - 28px), var(--reading)); }
  .article-header h1 { font-size: 40px; }
  .article-header .dek, .article-body p, .article-body li { font-size: 17px; }
  .signup-form { display: grid; gap: 8px; }
  .signup-form input, .signup-form button { border-radius: 10px; }
  .theme-button { display:none; }
  .story-grid { grid-template-columns:1fr; }
  .story-card,.story-card:first-child { grid-column:auto; min-height:245px; }
  .story-card:first-child h2 { font-size:34px; }
  .explore-card { min-height:130px; padding:17px; }
  .topic-row { grid-template-columns:1fr 1fr; }
  body:has(.story-grid) .page-intro { padding-top:18px; }
  body:has(.story-grid) .page-intro .container { padding:28px 22px; border-radius:17px; }
  body:has(.story-grid) .page-intro h1 { font-size:38px; }
  .stats-row { grid-template-columns:1fr; }
  .stats-row span,.stats-row span:nth-child(odd),.stats-row span:nth-child(n+3) { border-left:0; border-top:1px solid var(--border); }
  .stats-row span:first-child { border-top:0; }
  .directory-grid { grid-template-columns:1fr; }
  .calendar-event { grid-template-columns:70px 1fr; }
  .calendar-event .badge { grid-column:2; justify-self:start; }
  .guide-card { grid-template-columns:92px 1fr; gap:14px; padding:14px; }
  .guide-card-art { min-height:110px; font-size:16px; }
  .guide-card h2 { font-size:21px; }
  .search-page-form { display:grid; gap:8px; }
  .search-page-form input,.search-page-form button { border-radius:12px; }
  .admin-shell { grid-template-columns:1fr; }
  .admin-sidebar { padding:14px; }
  .admin-sidebar .brand { margin-bottom:12px; }
  .admin-nav { display:flex; overflow:auto; }
  .admin-nav a { white-space:nowrap; }
  .admin-main { padding:18px 12px; }
  .admin-cards { grid-template-columns:1fr 1fr; }
  .admin-form-grid,.source-block { grid-template-columns:1fr; }
  .admin-table-wrap { overflow-x:auto; }
}

/* Inner-page refresh overrides: keep after legacy/responsive rules. */
.tracker-hero {
  position:relative; overflow:hidden; margin:22px auto 34px; padding:38px;
  background:radial-gradient(circle at 92% 10%,rgba(214,166,46,.2),transparent 32%),linear-gradient(135deg,#fff,#f7f4ec);
  border:1px solid rgba(38,53,80,.12); border-radius:22px; box-shadow:0 18px 45px rgba(21,26,36,.08);
}
.cover-placeholder {
  isolation:isolate; position:relative; overflow:hidden; padding:24px; border:1px solid rgba(255,255,255,.38); border-radius:16px;
  background-image:linear-gradient(150deg,rgba(214,166,46,.94),rgba(38,53,80,.92) 62%,rgba(21,26,36,.96)),url('pattern-grid.svg'); background-size:cover;
}
.cover-placeholder::before { content:""; position:absolute; inset:14px; z-index:-1; border:1px solid rgba(255,255,255,.3); border-radius:10px; }
.tracker-title h1,.article-header h1 { text-wrap:balance; }
.panel { box-shadow:0 10px 28px rgba(21,26,36,.055); transition:transform .2s ease,box-shadow .2s ease; }
.panel:hover { transform:translateY(-2px); box-shadow:0 16px 34px rgba(21,26,36,.085); }
.panel h2 { padding-bottom:12px; border-bottom:1px solid var(--border); }
.article-header { margin-bottom:28px; padding:34px; background:linear-gradient(135deg,#fff,#f6f1e5); border:1px solid var(--border); border-radius:20px; box-shadow:0 14px 36px rgba(21,26,36,.07); }
.article-header .dek { max-width:68ch; }
.answer-box { position:relative; overflow:hidden; box-shadow:0 10px 24px rgba(151,108,5,.08); }
.answer-box::before { content:"QUICK READ"; display:block; margin-bottom:8px; color:#896100; font-size:12px; font-weight:850; letter-spacing:.12em; }
.directory-card,.calendar-event,.guide-card { box-shadow:0 10px 26px rgba(21,26,36,.055); transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.directory-card:hover,.calendar-event:hover,.guide-card:hover { transform:translateY(-3px); border-color:rgba(214,166,46,.55); box-shadow:0 18px 38px rgba(21,26,36,.09); }
.directory-card h2 { text-wrap:balance; }
.calendar-event { border-left:4px solid var(--gold); }
.guide-card { overflow:hidden; }
.guide-card-art { position:relative; overflow:hidden; background-image:linear-gradient(145deg,rgba(38,53,80,.94),rgba(214,166,46,.86)),url('pattern-grid.svg'); background-size:cover; }
.guide-card-art::after { content:"AL"; position:absolute; right:-8px; bottom:-24px; color:rgba(255,255,255,.09); font:900 84px/1 Georgia,serif; }
.site-footer { position:relative; overflow:hidden; border-top:4px solid var(--gold); }
.site-footer::after { content:""; position:absolute; right:-100px; bottom:-180px; width:420px; height:420px; border:1px solid rgba(214,166,46,.12); border-radius:50%; box-shadow:0 0 0 50px rgba(214,166,46,.025),0 0 0 100px rgba(214,166,46,.018); pointer-events:none; }
.footer-grid,.footer-bottom { position:relative; z-index:1; }
.dark-theme .tracker-hero { background:radial-gradient(circle at 92% 10%,rgba(214,166,46,.16),transparent 32%),linear-gradient(135deg,#19202c,#111722); border-color:#303a4b; }
.dark-theme .article-header { background:linear-gradient(135deg,#19202c,#151b25); border-color:#303a4b; }
.dark-theme .panel,.dark-theme .directory-card,.dark-theme .calendar-event,.dark-theme .guide-card { background:var(--surface); }
.dark-theme .answer-box { background:#322a17; border-color:#655322; }
.dark-theme .answer-box::before { color:#edc65d; }
.dark-theme .button.secondary { color:var(--ink); background:var(--surface); border-color:var(--border); }
.is-clickable { cursor:pointer; }
[data-filter-item][hidden] { display:none !important; }
.filter-status { min-height:24px; margin:12px 0 0; color:var(--muted); font-size:14px; font-weight:700; }
.filter-empty { grid-column:1/-1; min-height:190px; display:grid; place-content:center; gap:7px; padding:30px; color:var(--muted); text-align:center; background:linear-gradient(145deg,var(--surface),rgba(214,166,46,.04)); border:1px dashed var(--border); border-radius:var(--radius); }
.filter-empty strong { color:var(--ink); font:800 24px/1.2 Georgia,serif; }
.filter-empty span { max-width:440px; }
.filter-button { transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease; }
.filter-button:hover { transform:translateY(-1px); border-color:rgba(214,166,46,.75); }
.filter-button:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
body:has(.directory-grid) .page-intro { padding:24px 0 26px; }
body:has(.directory-grid) .page-intro .container {
  position:relative; overflow:hidden; padding:34px 38px;
  background:linear-gradient(125deg,#151a24 0%,#263550 68%,#3b3322 100%);
  border:1px solid rgba(214,166,46,.35); border-radius:22px; box-shadow:0 18px 44px rgba(21,26,36,.14);
}
body:has(.directory-grid) .page-intro .container::after { content:"TRACK"; position:absolute; right:22px; top:50%; color:rgba(255,255,255,.045); font:900 clamp(74px,12vw,150px)/1 Georgia,serif; transform:translateY(-52%); pointer-events:none; }
body:has(.directory-grid) .page-intro h1,body:has(.directory-grid) .page-intro p,body:has(.directory-grid) .filter-row,body:has(.directory-grid) .filter-status { position:relative; z-index:1; }
body:has(.directory-grid) .page-intro h1 { color:#fff; }
body:has(.directory-grid) .page-intro p { color:#cbd2df; }
body:has(.directory-grid) .page-intro .eyebrow { color:#edc65d; }
body:has(.directory-grid) .filter-row { width:max-content; max-width:100%; margin:24px 0 0; padding:5px; gap:4px; background:rgba(7,11,18,.34); border:1px solid rgba(255,255,255,.13); border-radius:999px; }
body:has(.directory-grid) .filter-button { color:#f4f6f9; background:transparent; border-color:transparent; }
body:has(.directory-grid) .filter-button:hover { background:rgba(255,255,255,.08); }
body:has(.directory-grid) .filter-button.is-active { color:#151a24; background:var(--gold); border-color:var(--gold); box-shadow:0 5px 14px rgba(214,166,46,.2); }
body:has(.directory-grid) .filter-status { margin:10px 0 0; color:#cbd2df; }
.directory-grid { padding-top:4px; }
.directory-card { min-height:250px; display:flex; flex-direction:column; overflow:hidden; }
.directory-card::before { content:""; height:5px; margin:-22px -22px 18px; background:linear-gradient(90deg,var(--gold),#f0d67e 42%,#263550); }
.directory-card dl { margin-top:auto; padding-top:10px; }
.directory-card .badge { align-self:flex-start; }
body:has(.guide-list) .page-intro { padding:24px 0 28px; }
body:has(.guide-list) .page-intro .container {
  position:relative; overflow:hidden; padding:36px 40px;
  background:radial-gradient(circle at 88% 18%,rgba(214,166,46,.24),transparent 28%),linear-gradient(128deg,#182134,#314b66);
  border:1px solid rgba(214,166,46,.34); border-radius:22px; box-shadow:0 18px 44px rgba(21,26,36,.14);
}
body:has(.guide-list) .page-intro .container::after { content:"GUIDE"; position:absolute; right:18px; bottom:-22px; color:rgba(255,255,255,.045); font:900 clamp(70px,12vw,145px)/1 Georgia,serif; pointer-events:none; }
body:has(.guide-list) .page-intro h1,body:has(.guide-list) .page-intro p,body:has(.guide-list) .filter-row,body:has(.guide-list) .filter-status { position:relative; z-index:1; }
body:has(.guide-list) .page-intro h1 { max-width:720px; color:#fff; }
body:has(.guide-list) .page-intro p { color:#d4dbe6; }
body:has(.guide-list) .page-intro .eyebrow { color:#edc65d; }
body:has(.guide-list) .filter-row { width:max-content; max-width:100%; margin:24px 0 0; padding:5px; gap:4px; background:rgba(7,11,18,.3); border:1px solid rgba(255,255,255,.13); border-radius:999px; }
body:has(.guide-list) .filter-button { color:#f4f6f9; background:transparent; border-color:transparent; }
body:has(.guide-list) .filter-button:hover { background:rgba(255,255,255,.08); }
body:has(.guide-list) .filter-button.is-active { color:#151a24; background:var(--gold); border-color:var(--gold); box-shadow:0 5px 14px rgba(214,166,46,.2); }
body:has(.guide-list) .filter-status { margin:10px 0 0; color:#d4dbe6; }
.guide-list { padding-top:4px; }
.guide-card { min-height:210px; align-items:stretch; }
.guide-card > div:last-child { display:flex; flex-direction:column; padding:4px 2px; }
.guide-card h2 { text-wrap:balance; }
.guide-card small { margin-top:auto; padding-top:10px; color:var(--muted); font-weight:750; }
.guide-card:nth-child(2) .guide-card-art { background-image:linear-gradient(145deg,rgba(25,91,72,.92),rgba(214,166,46,.72)),url('pattern-grid.svg'); }
.guide-card:nth-child(3) .guide-card-art { background-image:linear-gradient(145deg,rgba(77,64,132,.92),rgba(203,129,155,.7)),url('pattern-grid.svg'); }
.guide-card:nth-child(4) .guide-card-art { background-image:linear-gradient(145deg,rgba(86,50,58,.94),rgba(214,166,46,.7)),url('pattern-grid.svg'); }
.guide-card:nth-child(5) .guide-card-art { background-image:linear-gradient(145deg,rgba(29,86,110,.94),rgba(82,158,166,.72)),url('pattern-grid.svg'); }
.guide-card:nth-child(6) .guide-card-art { background-image:linear-gradient(145deg,rgba(71,57,34,.94),rgba(214,166,46,.76)),url('pattern-grid.svg'); }
body:has(.calendar-shell) main > .container { padding-top:24px; }
body:has(.calendar-shell) .month-nav {
  position:relative; overflow:hidden; margin:0 0 18px; padding:34px 38px;
  color:#fff; background:radial-gradient(circle at 84% 20%,rgba(214,166,46,.25),transparent 30%),linear-gradient(125deg,#151a24,#263550 70%,#3b3322);
  border:1px solid rgba(214,166,46,.35); border-radius:22px; box-shadow:0 18px 44px rgba(21,26,36,.14);
}
body:has(.calendar-shell) .month-nav::after { content:"DATES"; position:absolute; right:14%; top:50%; color:rgba(255,255,255,.045); font:900 clamp(70px,11vw,140px)/1 Georgia,serif; transform:translateY(-50%); pointer-events:none; }
body:has(.calendar-shell) .month-nav > * { position:relative; z-index:1; }
body:has(.calendar-shell) .month-nav h1 { color:#fff; }
body:has(.calendar-shell) .month-nav .eyebrow { color:#edc65d; }
body:has(.calendar-shell) .month-nav .button.secondary { width:48px; min-width:48px; padding:0; color:#fff; background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.25); box-shadow:none; font-size:22px; }
body:has(.calendar-shell) .month-nav .button.secondary:hover { color:#151a24; background:var(--gold); border-color:var(--gold); }
body:has(.calendar-shell) .filter-row { width:max-content; max-width:100%; margin:0 0 22px; padding:5px; gap:4px; background:var(--surface); border:1px solid var(--border); border-radius:999px; box-shadow:0 8px 22px rgba(21,26,36,.045); }
body:has(.calendar-shell) .filter-button { border-color:transparent; }
body:has(.calendar-shell) .filter-button.is-active { box-shadow:0 5px 14px rgba(214,166,46,.18); }
body:has(.calendar-shell) .filter-status { display:inline-block; min-height:0; margin:-15px 0 18px 10px; }
.calendar-list { position:relative; }
.calendar-event { min-height:120px; border-left-width:5px; }
.calendar-event:has(.badge.confirmed) { border-left-color:var(--green); }
.calendar-event:has(.badge.unknown) { border-left-color:var(--gold); }
.calendar-day { min-height:76px; display:grid; place-content:center; padding:10px; color:var(--muted); background:linear-gradient(145deg,var(--paper),var(--surface)); border:1px solid var(--border); border-radius:13px; line-height:1.1; }
.calendar-day strong { margin-top:3px; }
.calendar-event h2 { text-wrap:balance; }
.calendar-event .badge { justify-self:end; }
.calendar-shell aside { position:sticky; top:94px; display:grid; gap:16px; }
.calendar-note { position:relative; overflow:hidden; padding:24px; box-shadow:0 10px 24px rgba(151,108,5,.07); }
.calendar-note::after { content:"✓"; position:absolute; right:10px; bottom:-26px; color:rgba(151,108,5,.09); font:900 96px/1 Georgia,serif; }
.calendar-note strong { display:block; margin-bottom:8px; font:800 22px/1.2 Georgia,serif; }
.calendar-shell aside .panel { margin:0; }
.dark-theme .calendar-day { background:linear-gradient(145deg,#111722,var(--surface)); }
.dark-theme .calendar-note { color:#f0d994; background:#322a17; border-color:#655322; }
body:has(.tracker-layout) .breadcrumbs { padding-top:18px; font-weight:650; }
body:has(.tracker-layout) .breadcrumbs a { color:var(--blue); }
body:has(.tracker-layout) .tracker-hero { grid-template-columns:240px minmax(0,1fr); gap:38px; align-items:center; }
body:has(.tracker-layout) .tracker-title { align-self:center; }
body:has(.tracker-layout) .tracker-title .eyebrow { color:var(--green); }
body:has(.tracker-layout) .tracker-title h1 { max-width:820px; }
body:has(.tracker-layout) .verified { grid-column:2; position:relative; padding:18px 20px 18px 22px; border-left-width:5px; box-shadow:0 8px 22px rgba(33,135,90,.08); }
body:has(.tracker-layout) .verified::before { content:"VERIFICATION NOTE"; display:block; margin-bottom:5px; color:var(--green); font-size:11px; font-weight:900; letter-spacing:.12em; }
.verification-age { display:inline-flex; margin:10px 0 0 8px; padding:3px 8px; color:#176943; background:rgba(33,135,90,.1); border:1px solid rgba(33,135,90,.2); border-radius:999px; font-size:12px; font-weight:800; white-space:nowrap; }
.tracker-layout > aside { position:sticky; top:94px; }
.tracker-layout > div > .panel { padding:30px; }
.tracker-layout .panel h2 { font-size:27px; }
.fact-row { min-height:52px; align-items:center; }
.fact-row dd { justify-self:start; padding:4px 9px; background:var(--paper); border-radius:7px; }
.check-list { list-style:none; padding-left:0; }
.check-list li { position:relative; padding-left:30px; }
.check-list li::before { content:"✓"; position:absolute; left:0; top:1px; width:21px; height:21px; display:grid; place-items:center; color:#fff; background:var(--green); border-radius:50%; font-size:12px; font-weight:900; }
.check-list + h2 { margin-top:30px; }
.check-list + h2 + .check-list li::before { content:"?"; color:#6a4d00; background:var(--gold-soft); border:1px solid #e4c35c; }
.source-list { margin:0; padding:0; list-style:none; counter-reset:sources; }
.source-list li { counter-increment:sources; position:relative; padding:0 0 0 42px; }
.source-list li::before { content:counter(sources); position:absolute; left:0; top:0; width:30px; height:30px; display:grid; place-items:center; color:#151a24; background:var(--gold); border-radius:9px; font-weight:900; }
.source-list small { color:var(--muted); }
.dark-theme .fact-row dd { background:#111722; }
.dark-theme body:has(.tracker-layout) .verified::before { color:#75d3a8; }
.dark-theme .verification-age { color:#9ce0bf; background:rgba(33,135,90,.16); border-color:rgba(117,211,168,.26); }
body:has(main.article) .article { width:min(calc(100% - 32px),var(--content)); padding-top:34px; }
body:has(main.article) .article-header { position:relative; overflow:hidden; padding:42px 44px; color:#fff; background:radial-gradient(circle at 90% 12%,rgba(214,166,46,.28),transparent 30%),linear-gradient(128deg,#151a24,#263550); border-color:rgba(214,166,46,.34); }
body:has(main.article) .article-header::after { content:"AL"; position:absolute; right:-10px; bottom:-42px; color:rgba(255,255,255,.045); font:900 170px/1 Georgia,serif; transform:rotate(-7deg); pointer-events:none; }
body:has(main.article) .article-header > * { position:relative; z-index:1; }
body:has(main.article) .article-header .eyebrow { color:#edc65d; }
body:has(main.article) .article-header .dek { color:#d7deea; }
body:has(main.article) .byline { margin:20px 0 0; padding-top:16px; color:#bfc8d6; border-top:1px solid rgba(255,255,255,.14); }
.article-tools { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.article-tools a,.article-tools button { min-height:36px; display:inline-flex; align-items:center; padding:6px 11px; color:#fff; background:rgba(255,255,255,.075); border:1px solid rgba(255,255,255,.2); border-radius:999px; font-size:13px; font-weight:750; cursor:pointer; }
.article-tools a:hover,.article-tools button:hover { color:#151a24; background:var(--gold); border-color:var(--gold); }
.article-tools a:focus-visible,.article-tools button:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
body:has(main.article) .answer-box,body:has(main.article) .article-body { width:min(100%,860px); margin-inline:auto; }
body:has(main.article) .answer-box { padding:25px 27px; border-left:5px solid var(--gold); font-size:17px; }
body:has(main.article) .article-body { padding-top:6px; }
body:has(main.article) .article-body h2 { position:relative; padding-left:18px; text-wrap:balance; }
body:has(main.article) .article-body h2::before { content:""; position:absolute; left:0; top:.18em; bottom:.14em; width:5px; background:linear-gradient(var(--gold),#e9cc78); border-radius:99px; }
body:has(main.article) .article-body p { line-height:1.78; }
body:has(main.article) .article-body ul { padding:18px 20px 18px 46px; background:var(--surface); border:1px solid var(--border); border-radius:14px; }
body:has(main.article) .article-body li { margin:8px 0; }
body:has(main.article) .correction-note { margin-top:36px; padding:22px 24px; background:#eef4ff; border:1px solid #cadcf8; border-left:5px solid var(--blue); border-radius:12px; }
.reading-progress { position:fixed; z-index:50; left:0; top:0; width:100%; height:4px; background:linear-gradient(90deg,var(--gold),#f0d67e); transform:scaleX(0); transform-origin:left center; will-change:transform; }
.dark-theme body:has(main.article) .article-header { background:radial-gradient(circle at 90% 12%,rgba(214,166,46,.22),transparent 30%),linear-gradient(128deg,#0b1018,#202c40); }
.dark-theme body:has(main.article) .article-body ul { background:var(--surface); }
.dark-theme body:has(main.article) .correction-note { color:#cbdaf2; background:#17243a; border-color:#29446d; }
body:has(.search-results) .page-intro { padding:24px 0 48px; }
body:has(.search-results) .page-intro > .container { position:relative; overflow:hidden; padding:38px 40px; background:radial-gradient(circle at 88% 12%,rgba(214,166,46,.24),transparent 28%),linear-gradient(125deg,#151a24,#263550); border:1px solid rgba(214,166,46,.34); border-radius:22px; box-shadow:0 18px 44px rgba(21,26,36,.14); }
body:has(.search-results) .page-intro > .container::after { content:"SEARCH"; position:absolute; right:16px; top:18px; color:rgba(255,255,255,.04); font:900 clamp(64px,10vw,124px)/1 Georgia,serif; pointer-events:none; }
body:has(.search-results) .page-intro h1,body:has(.search-results) .page-intro .eyebrow,body:has(.search-results) .search-page-form,body:has(.search-results) .search-results { position:relative; z-index:1; }
body:has(.search-results) .page-intro h1 { color:#fff; }
body:has(.search-results) .page-intro .eyebrow { color:#edc65d; }
body:has(.search-results) .search-page-form { max-width:820px; margin-bottom:32px; filter:drop-shadow(0 10px 22px rgba(0,0,0,.16)); }
body:has(.search-results) .search-page-form input { min-height:56px; border-color:transparent; font-size:17px; }
body:has(.search-results) .search-page-form button { min-width:110px; }
.search-results { grid-template-columns:repeat(2,minmax(0,1fr)); }
.search-summary { grid-column:1/-1; margin:0; color:#cbd2df; font-weight:750; }
.search-result { position:relative; min-height:180px; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.search-result:hover { transform:translateY(-3px); border-color:rgba(214,166,46,.6); box-shadow:0 16px 32px rgba(0,0,0,.13); }
.search-result h2 a::after { content:""; position:absolute; inset:0; }
.search-result .search-status { margin-left:8px; color:var(--muted); font-size:13px; font-weight:750; }
.search-result p { line-height:1.55; }
.empty-state { grid-column:1/-1; color:var(--muted); }
.empty-state-icon { width:58px; height:58px; display:grid; place-items:center; margin:0 auto 14px; color:#151a24; background:var(--gold); border-radius:18px; font-size:30px; box-shadow:0 10px 22px rgba(214,166,46,.18); }
.empty-state p { max-width:540px; margin:0 auto 18px; }
.search-suggestions { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin:0 0 20px; }
.search-suggestions a { padding:5px 10px; color:var(--ink); background:var(--paper); border:1px solid var(--border); border-radius:999px; font-size:13px; font-weight:750; }
.search-suggestions a:hover { color:#151a24; background:var(--gold); border-color:var(--gold); }
.dark-theme body:has(.search-results) .page-intro > .container { background:radial-gradient(circle at 88% 12%,rgba(214,166,46,.2),transparent 28%),linear-gradient(125deg,#0b1018,#202c40); }
.dark-theme .search-result,.dark-theme .empty-state { background:var(--surface); }
body:has(.trust-layout) { background:radial-gradient(circle at 8% 9%,rgba(214,166,46,.08),transparent 25rem),var(--paper); }
body:has(.trust-layout) .trust-layout { width:min(90%,var(--content)); grid-template-columns:minmax(0,1fr) 320px; justify-content:center; gap:32px; padding:22px 0 64px; }
body:has(.trust-layout) .trust-nav { grid-column:2; grid-row:1; }
body:has(.trust-layout) .trust-copy { grid-column:1; grid-row:1; min-width:0; }
body:has(.trust-layout) .trust-nav { top:96px; gap:5px; padding:16px; background:var(--surface); border:1px solid var(--border); border-radius:17px; box-shadow:0 12px 28px rgba(21,26,36,.06); font-size:15px; }
body:has(.trust-layout) .trust-nav::before { content:"ON THIS PAGE"; display:block; padding:0 10px 10px; color:var(--muted); font-size:11px; font-weight:900; letter-spacing:.12em; }
body:has(.trust-layout) .trust-nav a { position:relative; min-height:38px; display:flex; align-items:center; padding:8px 11px 8px 15px; color:var(--muted); font-weight:700; border-radius:9px; }
body:has(.trust-layout) .trust-nav a::before { content:""; position:absolute; left:5px; top:50%; width:3px; height:0; background:var(--gold); border-radius:99px; transform:translateY(-50%); transition:height .18s ease; }
body:has(.trust-layout) .trust-nav a:hover { color:var(--ink); background:var(--paper); }
body:has(.trust-layout) .trust-nav a.is-active { color:var(--ink); background:var(--gold-soft); }
body:has(.trust-layout) .trust-nav a.is-active::before { height:22px; }
body:has(.trust-layout) .trust-copy { padding:42px 46px; background:var(--surface); border:1px solid var(--border); border-radius:20px; box-shadow:0 16px 38px rgba(21,26,36,.065); }
body:has(.trust-layout) .trust-copy > .eyebrow:first-child { color:var(--green); }
body:has(.trust-layout) .trust-copy h1 { max-width:720px; text-wrap:balance; }
body:has(.trust-layout) .trust-copy h1 + p:not(.muted),body:has(.trust-layout) .trust-copy .muted + p { color:#40495a; font-size:19px; line-height:1.7; }
body:has(.trust-layout) .trust-copy h2 { scroll-margin-top:110px; padding-top:34px; border-top:1px solid var(--border); }
body:has(.trust-layout) .trust-copy ul,body:has(.trust-layout) .trust-copy ol { padding:18px 22px 18px 44px; background:var(--paper); border:1px solid var(--border); border-radius:13px; }
body:has(.trust-layout) .trust-copy li { margin:7px 0; }
body:has(.trust-layout) .policy-table { display:table; overflow:hidden; border-radius:12px; box-shadow:0 8px 20px rgba(21,26,36,.04); }
body:has(.trust-layout) .policy-table th { color:#5e470d; background:var(--gold-soft); }
.dark-theme body:has(.trust-layout) .trust-copy h1 + p:not(.muted),.dark-theme body:has(.trust-layout) .trust-copy .muted + p { color:#c9d0dc; }
.dark-theme body:has(.trust-layout) .trust-nav a:hover { background:#111722; }
.dark-theme body:has(.trust-layout) .trust-copy ul,.dark-theme body:has(.trust-layout) .trust-copy ol { background:#111722; }
.dark-theme body:has(.trust-layout) .policy-table th { color:#f0d994; }
.policy-reviewed { margin:-.35rem 0 1.45rem; color:var(--muted); font-size:.9rem; font-weight:700; }
.policy-lede { font-size:clamp(1.08rem,1.6vw,1.25rem); line-height:1.72; }
.policy-summary,.policy-callout,.policy-contact {
  margin:1.75rem 0;
  padding:1.25rem 1.4rem;
  border:1px solid var(--border);
  border-left:5px solid var(--gold);
  border-radius:1rem;
  background:var(--paper);
}
.policy-summary strong,.policy-callout strong { display:block; margin-bottom:.35rem; font-size:1.05rem; }
.policy-summary p,.policy-callout p,.policy-contact p { margin:0; }
.policy-contact p + p { margin-top:1rem; }
.policy-table-wrap { margin:1.25rem 0 2rem; overflow-x:auto; border-radius:.9rem; }
.policy-table td:first-child { width:10.5rem; font-weight:800; color:var(--ink); }
.dark-theme .policy-summary,.dark-theme .policy-callout,.dark-theme .policy-contact { background:#111722; }

/* Search results — compact editorial directory */
.search-page main { padding-bottom:clamp(44px,6vw,78px); }
.search-page .shared-breadcrumbs { margin-bottom:14px; }
.search-hero > .container,
.search-content {
  width:min(90%,var(--content));
  margin-inline:auto;
}
.search-hero > .container {
  position:relative;
  overflow:hidden;
  padding:clamp(30px,4vw,48px);
  color:#fff;
  background:
    radial-gradient(circle at 88% 12%,rgba(99,210,223,.18),transparent 28%),
    linear-gradient(125deg,#111323,#222947);
  border:1px solid rgba(139,92,246,.42);
  border-radius:22px;
  box-shadow:0 18px 44px rgba(21,26,36,.14);
}
.search-hero > .container::after {
  content:"検索";
  position:absolute;
  right:3%;
  bottom:-24%;
  color:rgba(255,255,255,.045);
  font:900 clamp(80px,12vw,150px)/1 Georgia,serif;
  pointer-events:none;
}
.search-hero .eyebrow { position:relative; z-index:1; margin:0 0 8px; color:var(--cyan); }
.search-hero h1 { position:relative; z-index:1; max-width:900px; margin:0; color:#fff; font:900 clamp(34px,4.8vw,58px)/1.04 Inter,system-ui,sans-serif; letter-spacing:-.045em; text-wrap:balance; }
.search-hero-copy { position:relative; z-index:1; max-width:720px; margin:16px 0 0; color:#cfd4e3; font-size:17px; line-height:1.6; }
.search-page .search-page-form {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px auto;
  max-width:880px;
  margin:26px 0 0;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.16));
}
.search-page .search-page-form input,
.search-page .search-page-form select {
  min-width:0;
  min-height:54px;
  padding:10px 16px;
  color:var(--ink);
  background:var(--surface);
  border:0;
  border-right:1px solid var(--border);
}
.search-page .search-page-form input { border-radius:12px 0 0 12px; font-size:17px; }
.search-page .search-page-form select { font-weight:800; }
.search-page .search-page-form button { min-width:112px; border-radius:0 12px 12px 0; }
.search-content { padding-top:clamp(28px,4vw,44px); }
.search-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:32px; align-items:start; }
.search-sidebar { width:320px; }
.search-page .search-results { display:block; width:100% !important; margin:0 !important; padding:0; }
.search-results-toolbar { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:18px; padding-bottom:15px; border-bottom:1px solid var(--border); }
.search-summary { margin:0; color:var(--ink); font-size:20px; font-weight:900; }
.search-range { margin:3px 0 0; color:var(--muted); font-size:13px; }
.search-clear { color:#6850ca; font-size:14px; font-weight:800; }
.search-result-list { display:grid; grid-template-columns:1fr; gap:14px; }
.search-page .search-result {
  position:relative;
  display:grid;
  grid-template-columns:clamp(150px,18vw,220px) minmax(0,1fr);
  min-height:170px;
  padding:0;
  overflow:hidden;
  background:var(--surface);
  border:1px solid var(--border);
  border-top:3px solid transparent;
  border-radius:16px;
  box-shadow:0 10px 28px rgba(21,26,36,.055);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.search-page .search-result:hover { transform:translateY(-3px); border-top-color:var(--cyan); box-shadow:0 16px 34px rgba(21,26,36,.1); }
.search-result-image { display:block; min-height:100%; overflow:hidden; background:#111525; }
.search-result-image img { width:100%; height:100%; min-height:168px; object-fit:cover; transition:transform .25s ease; }
.search-result:hover .search-result-image img { transform:scale(1.025); }
.search-result-copy { display:flex; min-width:0; flex-direction:column; padding:20px 24px; }
.search-result-meta { display:flex; align-items:center; gap:10px; }
.search-page .search-result h2 { margin:11px 0 7px; font:850 clamp(20px,2vw,26px)/1.18 Inter,system-ui,sans-serif; letter-spacing:-.035em; }
.search-page .search-result h2 a { color:var(--ink); text-decoration:none; }
.search-page .search-result-copy > p { margin:0 0 14px; color:var(--muted); font-size:15px; line-height:1.55; }
.search-result-action { margin-top:auto; color:#6850ca; font-size:14px; font-weight:900; }
.search-result-action span { margin-left:4px; }
.search-pagination { margin-top:26px; }
.search-page-numbers { display:flex; gap:7px; }
.search-page-link { min-width:42px; min-height:42px; display:inline-flex; align-items:center; justify-content:center; padding:8px 12px; color:var(--ink); font-weight:800; background:var(--surface); border:1px solid var(--border); border-radius:10px; }
.search-page-link:hover,.search-page-link.is-current { color:#fff; background:#6850ca; border-color:#6850ca; }
.search-page-direction:last-child { justify-self:end; }
.search-page-link.is-disabled { color:var(--muted); opacity:.48; pointer-events:none; }
.search-page .empty-state { max-width:760px; margin-inline:auto; padding:clamp(38px,6vw,66px) 24px; }
.dark-theme .search-page .search-result { background:#141927; }
.dark-theme .search-page .search-result h2 a { color:#f7f8fb; }

@media (max-width:760px) {
  .search-hero > .container,.search-content { width:min(calc(100% - 32px),var(--content)); }
  .search-layout { grid-template-columns:minmax(0,1fr); gap:24px; }
  .search-sidebar { width:auto; position:static; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .search-sidebar .popular { grid-column:1/-1; }
  .search-page .search-page-form { grid-template-columns:minmax(0,1fr) 120px; gap:8px; filter:none; }
  .search-page .search-page-form input { border-radius:11px; }
  .search-page .search-page-form select { border:0; border-radius:11px; }
  .search-page .search-page-form button { grid-column:1/-1; width:100%; border-radius:11px; }
  .search-result-list { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .search-hero > .container,.search-content { width:min(calc(100% - 24px),var(--content)); }
  .search-hero > .container { padding:25px 20px; border-radius:17px; }
  .search-hero h1 { font-size:36px; }
  .search-hero-copy { font-size:15px; }
  .search-page .search-page-form { grid-template-columns:1fr 1fr; }
  .search-page .search-page-form input { grid-column:1/-1; }
  .search-page .search-page-form select,.search-page .search-page-form button { grid-column:auto; min-width:0; width:100%; }
  .search-page .search-result { grid-template-columns:96px minmax(0,1fr); min-height:150px; }
  .search-result-image img { min-height:100%; }
  .search-result-copy { padding:17px 16px; }
  .search-result-meta { align-items:flex-start; flex-direction:column; gap:5px; }
  .search-page .search-result h2 { margin-top:8px; font-size:19px; }
  .search-page .search-result-copy > p { display:none; }
  .search-pagination { grid-template-columns:1fr 1fr; }
  .search-page-numbers { grid-column:1/-1; grid-row:1; justify-content:center; }
  .search-page-direction { grid-row:2; }
  .search-sidebar { grid-template-columns:minmax(0,1fr); gap:10px; }
  .search-sidebar .popular { grid-column:auto; }
  .search-sidebar .category-side-card { padding:16px; }
}
.is-clickable:focus-visible,.explore-card:focus-visible,.topic-chip:focus-visible,.primary-nav a:focus-visible,.footer-links a:focus-visible,.section-heading a:focus-visible {
  outline:3px solid var(--gold); outline-offset:4px;
}
.story-card:focus-within,.story-card.is-clickable:focus-visible { transform:translateY(-3px); box-shadow:0 20px 38px rgba(21,26,36,.2); }
.tracker-card:focus-within,.tracker-card.is-clickable:focus-visible,.news-card:focus-within,.news-card.is-clickable:focus-visible,.guide-card:focus-within,.guide-card.is-clickable:focus-visible,.directory-card:focus-within,.directory-card.is-clickable:focus-visible { border-color:rgba(214,166,46,.75); box-shadow:0 16px 34px rgba(21,26,36,.09); }
.story-card h2 a,.story-card h3 a,.tracker-card h3 a,.news-card h3 a { text-decoration:none; }
.story-card h2 a::after,.story-card h3 a::after,.tracker-card h3 a::after,.news-card h3 a::after { content:""; position:absolute; inset:0; }
.story-card,.tracker-card,.news-card,.guide-card,.directory-card { position:relative; }

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}

@media (min-width:601px) and (max-width:900px) {
  .admin-shell { grid-template-columns:210px minmax(0,1fr); }
  .admin-main { padding:26px 20px; }
  .admin-cards { grid-template-columns:1fr 1fr; }
  .source-block { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1.35fr 1fr; }
  .tracker-layout > aside,.calendar-shell aside { position:static; }
  body:has(.tracker-layout) .tracker-hero { grid-template-columns:190px minmax(0,1fr); gap:28px; padding:30px; }
  body:has(.tracker-layout) .verified { grid-column:1/-1; }
  body:has(.trust-layout) .trust-layout { grid-template-columns:190px minmax(0,1fr); gap:22px; }
  body:has(.trust-layout) .trust-copy { padding:34px 30px; }
}

@media (max-width:600px) {
  .auth-page { padding:16px; }
  .auth-shell { padding:27px 21px; border-radius:17px; }
  .auth-brand { width:176px; margin-bottom:23px; }
  .auth-shell h1 { font-size:34px; }
  .admin-toolbar { align-items:stretch; }
  .admin-filter-form { display:grid; grid-template-columns:1fr; }
  .admin-filter-form input,.admin-filter-form select,.admin-filter-form button { width:100%; }
  body:has(.directory-grid) .page-intro { padding:14px 0 22px; }
  body:has(.directory-grid) .page-intro .container { padding:25px 20px; border-radius:17px; }
  body:has(.directory-grid) .page-intro h1 { font-size:38px; }
  body:has(.directory-grid) .filter-row { width:100%; display:grid; grid-template-columns:1fr 1fr; border-radius:14px; }
  body:has(.directory-grid) .filter-button { width:100%; border-radius:10px; }
  .directory-card { min-height:225px; }
  body:has(.guide-list) .page-intro { padding:14px 0 22px; }
  body:has(.guide-list) .page-intro .container { padding:25px 20px; border-radius:17px; }
  body:has(.guide-list) .page-intro h1 { font-size:38px; }
  body:has(.guide-list) .filter-row { width:100%; display:grid; grid-template-columns:1fr 1fr; border-radius:14px; }
  body:has(.guide-list) .filter-button { width:100%; border-radius:10px; }
  .guide-card { min-height:175px; }
  .guide-card > div:last-child { padding:0; }
  body:has(.calendar-shell) main > .container { padding-top:14px; }
  body:has(.calendar-shell) .month-nav { padding:25px 18px; border-radius:17px; }
  body:has(.calendar-shell) .month-nav::after { right:5%; }
  body:has(.calendar-shell) .month-nav h1 { font-size:36px; }
  body:has(.calendar-shell) .month-nav .button.secondary { width:42px; min-width:42px; min-height:42px; }
  body:has(.calendar-shell) .filter-row { width:100%; display:grid; grid-template-columns:1fr 1fr; border-radius:14px; }
  body:has(.calendar-shell) .filter-button { width:100%; border-radius:10px; }
  .calendar-shell aside { position:static; }
  .calendar-event { min-height:126px; padding:16px 14px; gap:13px; }
  .calendar-day { min-height:68px; padding:7px; }
  body:has(.tracker-layout) .breadcrumbs { padding-top:12px; font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  body:has(.tracker-layout) .tracker-hero { grid-template-columns:92px 1fr; gap:16px; padding:19px; }
  body:has(.tracker-layout) .tracker-title h1 { font-size:32px; }
  body:has(.tracker-layout) .verified { grid-column:1/-1; padding:16px 17px; }
  .tracker-layout > aside { position:static; }
  .tracker-layout > div > .panel { padding:21px; }
  .fact-row dd { justify-self:start; }
  body:has(main.article) .article { width:min(calc(100% - 24px),var(--content)); padding-top:18px; }
  body:has(main.article) .article-header { padding:28px 21px; }
  body:has(main.article) .article-header h1 { font-size:38px; }
  body:has(main.article) .article-header .dek { font-size:17px; }
  .article-tools { display:grid; grid-template-columns:1fr 1fr; }
  .article-tools a,.article-tools button { justify-content:center; text-align:center; border-radius:10px; }
  .article-tools button { grid-column:1/-1; }
  body:has(main.article) .answer-box { padding:21px 19px; }
  body:has(main.article) .article-body h2 { font-size:27px; }
  body:has(main.article) .article-body ul { padding:15px 16px 15px 40px; }
  body:not(.search-page):has(.search-results) .page-intro { padding:14px 0 28px; }
  body:not(.search-page):has(.search-results) .page-intro > .container { padding:27px 20px; border-radius:17px; }
  body:not(.search-page):has(.search-results) .page-intro h1 { font-size:37px; }
  body:not(.search-page):has(.search-results) .search-page-form { display:grid; grid-template-columns:1fr; gap:8px; }
  body:not(.search-page):has(.search-results) .search-page-form input,body:not(.search-page):has(.search-results) .search-page-form button { width:100%; border-radius:11px; }
  .search-results { grid-template-columns:1fr; }
  .search-result { min-height:160px; padding:19px; }
  body:has(.trust-layout) .trust-layout { grid-template-columns:1fr; gap:15px; padding:18px 0 38px; }
  body:has(.trust-layout) .trust-nav { grid-column:1; grid-row:1; position:static; display:flex; overflow-x:auto; padding:9px; border-radius:13px; scrollbar-width:none; }
  body:has(.trust-layout) .trust-nav::-webkit-scrollbar { display:none; }
  body:has(.trust-layout) .trust-nav::before { display:none; }
  body:has(.trust-layout) .trust-nav a { flex:0 0 auto; white-space:nowrap; }
  body:has(.trust-layout) .trust-copy { grid-column:1; grid-row:2; padding:27px 20px; border-radius:16px; }
  body:has(.trust-layout) .trust-copy h1 { font-size:39px; }
  body:has(.trust-layout) .trust-copy h1 + p:not(.muted),body:has(.trust-layout) .trust-copy .muted + p { font-size:17px; }
  body:has(.trust-layout) .trust-copy h2 { padding-top:27px; font-size:27px; }
  body:has(.trust-layout) .policy-table { display:block; overflow-x:auto; white-space:normal; }
  .tracker-hero { grid-template-columns:105px 1fr; gap:18px; margin:14px auto 24px; padding:20px; border-radius:16px; }
  .cover-placeholder { padding:12px; border-radius:10px; }
  .article-header { padding:24px 20px; border-radius:16px; }
  .panel { padding:20px; }
  .calendar-event { border-left-width:3px; }
}

/* Final shared-chrome overrides intentionally follow all page-specific rules. */
body:not(.admin-body):not(.auth-page) { min-height:100vh; display:flex; flex-direction:column; }
body:not(.admin-body):not(.auth-page) > main { width:100%; flex:1 0 auto; }
.site-header .container,.site-footer .container { width:min(calc(100% - 40px),var(--content)); }
.site-header,.header-row { min-height:72px; }
.header-row { gap:clamp(18px,2.5vw,36px); }
.primary-nav { margin-left:8px; gap:4px; }
.primary-nav a { min-height:42px; display:inline-flex; align-items:center; padding:8px 13px; }
.header-actions { gap:8px; }
.site-footer { flex:0 0 auto; margin-top:clamp(36px,6vw,72px); padding:48px 0 24px; }
.footer-grid { grid-template-columns:minmax(230px,1.45fr) repeat(3,minmax(130px,1fr)); gap:clamp(24px,4vw,54px); }
.footer-grid h2 { margin-bottom:5px; font:850 27px/1.1 Georgia,serif; }
.footer-grid h3 { margin-bottom:12px; font-size:14px; letter-spacing:.07em; text-transform:uppercase; }
.footer-grid p { max-width:280px; margin-top:7px; color:#aeb7c7; }
.footer-links a { width:max-content; max-width:100%; color:#d9deea; }
.footer-links a:hover { color:var(--gold); }
.footer-bottom { display:flex; align-items:center; min-height:50px; padding-top:20px; margin-top:32px; }
@media (max-width:900px) {
  .site-header .container,.site-footer .container { width:min(calc(100% - 32px),var(--content)); }
  .site-header,.header-row { min-height:66px; }
  .primary-nav.is-open { top:66px; padding-inline:max(16px,calc((100vw - var(--content))/2)); box-shadow:0 18px 32px rgba(5,9,16,.2); }
  .footer-grid { grid-template-columns:1.2fr repeat(3,1fr); gap:24px; }
}
@media (max-width:600px) {
  .site-header .container,.site-footer .container { width:min(calc(100% - 24px),var(--content)); }
  .site-header,.header-row { min-height:62px; }
  .brand { width:156px; height:38px; background-position:left center; }
  .header-actions { margin-left:auto; }
  .search-button,.menu-button { width:40px; height:40px; border-radius:10px; }
  .primary-nav.is-open { top:62px; padding:8px 12px 14px; }
  .primary-nav.is-open a { min-height:46px; padding:11px 10px; }
  .site-footer { margin-top:34px; padding:36px 0 18px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:28px 18px; }
  .footer-grid > div:first-child { grid-column:1/-1; }
  .footer-bottom { margin-top:26px; font-size:13px; line-height:1.5; }
}

/* Final article inset must follow the shared-chrome rules above. */
@media (min-width:901px) {
  body:has(main.article) .article { width:min(calc(100% - 40px),var(--content)); margin-inline:auto; }
}
@media (min-width:601px) and (max-width:900px) {
  body:has(main.article) .article { width:min(calc(100% - 32px),var(--content)); margin-inline:auto; }
}
@media (max-width:600px) {
  body:has(main.article) .article { width:min(calc(100% - 24px),var(--content)); margin-inline:auto; }
}

/* Final compact article masthead */
.article-breadcrumbs {
  min-height:38px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  padding:4px 2px 8px;
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}
.article-breadcrumbs a { color:#7659dc; }
.article-breadcrumbs a:hover { color:#159ca7; }
.article-breadcrumbs span[aria-hidden="true"] { color:#8e93a8; }
.article-breadcrumbs span[aria-current="page"] {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body:has(main.article) .article-header {
  padding:30px 38px 28px;
}
body:has(main.article) .article-header > * { max-width:none; }
body:has(main.article) .article-header h1 {
  max-width:1080px;
  margin:7px 0 11px;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-size:clamp(38px,3.7vw,54px);
  font-weight:950;
  line-height:.98;
  letter-spacing:-.052em;
  text-wrap:balance;
}
body:has(main.article) .article-header .dek {
  max-width:980px;
  font-size:17px;
  line-height:1.5;
}
body:has(main.article) .article-header .byline {
  max-width:none;
  margin:14px 0 0;
  padding-top:12px;
}
body:has(main.article) .article-header .article-tags {
  max-width:none;
  display:inline-flex;
  margin:11px 14px 0 0;
  vertical-align:middle;
}
body:has(main.article) .article-header .article-tools {
  max-width:none;
  display:inline-flex;
  margin:11px 0 0;
  vertical-align:middle;
}
body:has(main.article) .article-header .article-tools .share-label { color:var(--muted); }
body:has(main.article) .article-header .article-tags a,
body:has(main.article) .article-header .article-tools .share-button {
  min-height:30px;
}
@media (max-width:900px) {
  body:has(main.article) .article-header h1 { font-size:clamp(38px,6vw,50px); }
  body:has(main.article) .article-header .article-tags,
  body:has(main.article) .article-header .article-tools { display:flex; margin-right:0; }
}
@media (max-width:600px) {
  .article-breadcrumbs { flex-wrap:nowrap; overflow:hidden; }
  body:has(main.article) .article-header { padding:24px 20px; }
  body:has(main.article) .article-header h1 { font-size:35px; line-height:1.02; }
  body:has(main.article) .article-header .dek { font-size:15px; }
  body:has(main.article) .article-header .article-tools { display:flex; }
}

/* News landing page */
.news-page {
  width:min(calc(100% - 40px),var(--content));
  margin-inline:auto;
  padding-top:18px;
}
.news-breadcrumbs {
  min-height:40px;
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}
.news-breadcrumbs a { color:#7659dc; }
.news-hero {
  position:relative;
  overflow:hidden;
  padding:clamp(34px,5vw,62px);
  color:#fff;
  background:radial-gradient(circle at 88% 18%,rgba(22,217,227,.18),transparent 18rem),radial-gradient(circle at 66% -30%,rgba(168,85,247,.38),transparent 27rem),repeating-linear-gradient(112deg,transparent 0 22px,rgba(255,255,255,.018) 23px 24px),linear-gradient(125deg,#090b18,#1a1534 55%,#102531);
  border:1px solid rgba(139,92,246,.44);
  border-radius:21px;
  clip-path:polygon(0 0,97% 0,100% 16%,100% 100%,3% 100%,0 84%);
}
.news-hero::after {
  content:"NEWS";
  position:absolute;
  right:2%;
  top:50%;
  color:rgba(255,255,255,.045);
  font:950 clamp(90px,15vw,190px)/1 Inter,system-ui,sans-serif;
  transform:translateY(-50%) rotate(-6deg);
}
.news-hero > * { position:relative; z-index:1; }
.news-hero h1 {
  max-width:900px;
  margin:5px 0 14px;
  font:950 clamp(43px,6vw,75px)/.98 Inter,system-ui,sans-serif;
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.news-hero > p:last-child { max-width:720px; margin:0; color:#cbd0e2; font-size:18px; }
.news-feature {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  min-height:365px;
  margin:26px 0;
  overflow:hidden;
  color:#fff;
  background:#101322;
  border:1px solid rgba(116,91,211,.35);
  border-radius:19px;
  box-shadow:0 22px 48px rgba(30,21,70,.14);
}
.news-feature-copy { display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(30px,5vw,58px); }
.news-feature-copy .badge { width:max-content; }
.news-kicker { margin:18px 0 4px; color:#55e6e1; font-size:11px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.news-feature h2 { max-width:760px; margin:4px 0 10px; font:950 clamp(32px,4vw,52px)/1 Inter,system-ui,sans-serif; letter-spacing:-.045em; }
.news-feature-copy > p:not(.news-kicker) { max-width:680px; margin:0 0 16px; color:#cbd0e2; font-size:17px; }
.news-meta { color:var(--muted); font-size:13px; font-weight:650; }
.news-feature .news-meta { color:#aeb4ca; }
.news-feature-art {
  position:relative;
  display:grid;
  place-content:center;
  overflow:hidden;
  background:radial-gradient(circle at 35% 30%,rgba(22,217,227,.45),transparent 28%),linear-gradient(145deg,#6239b2,#1c5271);
}
.news-feature-art::before { content:""; position:absolute; inset:0; background:repeating-linear-gradient(120deg,transparent 0 22px,rgba(255,255,255,.045) 23px 24px); }
.news-feature-art span { position:relative; z-index:1; font-size:14px; font-weight:950; letter-spacing:.3em; }
.news-feature-art strong { position:relative; z-index:1; color:rgba(255,255,255,.86); font-size:145px; line-height:.9; }
.news-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:8px 0 24px; }
.news-toolbar .filter-row { margin:0; }
.news-search-link { flex:0 0 auto; color:#7053d3; font-weight:850; }
.news-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:clamp(28px,4vw,52px); align-items:start; }
.news-feed { min-width:0; display:grid; gap:15px; }
.news-feed .section-heading { margin-bottom:2px; }
.news-feed .section-heading h2 { margin:0; font-size:35px; }
.news-list-card {
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:22px;
  padding:17px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:17px;
  box-shadow:0 13px 32px rgba(35,27,78,.06);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.news-list-card:hover { transform:translateY(-3px); border-color:rgba(139,92,246,.55); box-shadow:0 20px 42px rgba(35,27,78,.12); }
.news-card-art { position:relative; min-height:155px; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; padding:16px; color:#fff; border-radius:12px; }
.news-card-art::after { content:""; position:absolute; inset:0; background:repeating-linear-gradient(120deg,transparent 0 18px,rgba(255,255,255,.04) 19px 20px); }
.news-card-art span,.news-card-art strong { position:relative; z-index:1; }
.news-card-art span { color:rgba(255,255,255,.3); font-size:50px; font-weight:950; line-height:1; }
.news-card-art strong { font-size:12px; letter-spacing:.13em; }
.art-violet { background:linear-gradient(145deg,#7d43d3,#24204f); }
.art-cyan { background:linear-gradient(145deg,#07828e,#173b4a); }
.art-pink { background:linear-gradient(145deg,#a44178,#431d42); }
.art-blue { background:linear-gradient(145deg,#3568bd,#1b2b58); }
.art-amber { background:linear-gradient(145deg,#a96d24,#49331f); }
.news-list-card h3 { margin:8px 0 7px; font:900 25px/1.08 Inter,system-ui,sans-serif; letter-spacing:-.035em; }
.news-list-card p { margin:0 0 13px; color:var(--muted); line-height:1.55; }
.news-sidebar { position:sticky; top:94px; display:grid; gap:18px; }
.news-trending,.news-brief {
  padding:22px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:16px;
  box-shadow:0 14px 34px rgba(35,27,78,.07);
}
.news-trending h2,.news-brief h2 { margin:3px 0 14px; font:900 21px/1.1 Inter,system-ui,sans-serif; }
.news-trending ol { margin:0; padding:0; display:grid; list-style:none; }
.news-trending li { border-top:1px solid var(--border); }
.news-trending a { display:grid; grid-template-columns:28px 1fr; gap:7px; padding:12px 0; font-size:13px; font-weight:780; line-height:1.35; }
.news-trending a span { color:#7959dc; font-size:10px; font-weight:950; }
.news-ad { min-height:250px; display:grid; place-content:center; gap:5px; text-align:center; color:var(--muted); background:linear-gradient(145deg,rgba(139,92,246,.045),rgba(22,217,227,.045)),var(--surface); border:1px dashed rgba(115,94,180,.34); border-radius:16px; }
.news-ad span { font-size:10px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.news-ad strong { color:var(--ink); }
.news-ad small { font-size:11px; }
.news-brief p { color:var(--muted); font-size:14px; }
.news-brief a { color:#7053d3; font-weight:850; }
@media (max-width:900px) {
  .news-page { width:min(calc(100% - 32px),var(--content)); }
  .news-feature { grid-template-columns:1fr 260px; }
  .news-layout { grid-template-columns:minmax(0,1fr) 240px; gap:24px; }
  .news-list-card { grid-template-columns:145px minmax(0,1fr); }
}
@media (max-width:760px) {
  .news-feature { grid-template-columns:1fr; }
  .news-feature-art { min-height:180px; grid-row:1; }
  .news-layout { grid-template-columns:1fr; }
  .news-sidebar { position:static; grid-template-columns:1fr 1fr; }
  .news-trending { grid-column:1/-1; }
  .news-toolbar { align-items:flex-start; flex-direction:column; }
}
@media (max-width:600px) {
  .news-page { width:min(calc(100% - 24px),var(--content)); padding-top:10px; }
  .news-hero { padding:32px 21px; clip-path:none; border-radius:17px; }
  .news-hero h1 { font-size:42px; }
  .news-feature { min-height:0; }
  .news-feature-copy { padding:25px 21px 28px; }
  .news-feature h2 { font-size:34px; }
  .news-toolbar .filter-row { width:100%; display:flex; overflow-x:auto; flex-wrap:nowrap; border-radius:14px; }
  .news-toolbar .filter-button { flex:0 0 auto; }
  .news-list-card { grid-template-columns:1fr; }
  .news-card-art { min-height:125px; }
  .news-sidebar { grid-template-columns:1fr; }
  .news-trending { grid-column:auto; }
}

/* Final News spacing: a light inset inside the shared 1240px rails. */
@media (min-width:901px) {
  .news-page { width:min(calc(100% - 64px),1200px); margin-inline:auto; }
}
@media (min-width:601px) and (max-width:900px) {
  .news-page { width:min(calc(100% - 32px),var(--content)); margin-inline:auto; }
}
@media (max-width:600px) {
  .news-page { width:min(calc(100% - 24px),var(--content)); margin-inline:auto; }
}

/* One canonical horizontal shell for every public page. */
.site-header .container,
.site-footer .container,
.home-page .page-intro > .container,
.news-page,
body:has(main.article) main.article,
body:not(.home-page) .page-intro > .container,
.directory-grid,
.guide-list,
.calendar-shell,
.tracker-hero,
.tracker-layout,
.trust-layout,
.search-results {
  width:min(calc(100% - 40px),var(--content));
  margin-inline:auto;
}
body:has(.calendar-shell) main > .month-nav,
body:has(.calendar-shell) main > .filter-row,
body:has(.tracker-layout) main > .breadcrumbs,
body:has(.search-results) main > .page-intro,
body:has(.trust-layout) main > .breadcrumbs {
  width:min(calc(100% - 40px),var(--content));
  margin-inline:auto;
}
@media (max-width:900px) {
  .site-header .container,
  .site-footer .container,
  .home-page .page-intro > .container,
  .news-page,
  body:has(main.article) main.article,
  body:not(.home-page) .page-intro > .container,
  .directory-grid,
  .guide-list,
  .calendar-shell,
  .tracker-hero,
  .tracker-layout,
  .trust-layout,
  .search-results,
  body:has(.calendar-shell) main > .month-nav,
  body:has(.calendar-shell) main > .filter-row,
  body:has(.tracker-layout) main > .breadcrumbs,
  body:has(.search-results) main > .page-intro,
  body:has(.trust-layout) main > .breadcrumbs {
    width:min(calc(100% - 32px),var(--content));
    margin-inline:auto;
  }
}

/* Editorial components used by reported news articles. */
.article-fact-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:28px 0 34px;
}
.article-fact-grid > div {
  min-height:92px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:9px;
  padding:16px;
  background:linear-gradient(145deg,rgba(139,92,246,.055),rgba(22,217,227,.045)),var(--surface);
  border:1px solid var(--border);
  border-radius:13px;
}
.article-fact-grid span {
  color:var(--muted);
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.article-fact-grid strong { font-size:16px; line-height:1.25; }
body:has(main.article) .article-body h3 {
  margin:28px 0 8px;
  font:850 20px/1.25 Inter,system-ui,sans-serif;
  letter-spacing:-.025em;
}
.article-sources a { color:#6850ca; font-weight:800; }
.article-source-visual {
  display:grid;
  grid-template-columns:minmax(190px,260px) minmax(0,1fr);
  gap:clamp(22px,4vw,42px);
  align-items:center;
  margin:4px 0 38px;
  padding:clamp(18px,3vw,28px);
  overflow:hidden;
  background:linear-gradient(135deg,rgba(130,78,236,.14),rgba(107,206,222,.10)),var(--surface);
  border:1px solid var(--border);
  border-radius:20px;
}
.article-source-cover {
  display:block;
  overflow:hidden;
  border-radius:12px;
  box-shadow:0 16px 36px rgba(15,10,35,.26);
}
.article-source-cover img {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:720/1018;
  object-fit:cover;
}
.article-source-visual figcaption { margin:0; }
.article-source-visual figcaption > span {
  display:block;
  margin-bottom:9px;
  color:var(--cyan);
  font-size:13px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.article-source-visual figcaption > strong {
  display:block;
  font:800 clamp(25px,3vw,36px)/1.08 Georgia,serif;
  letter-spacing:-.03em;
}
.article-source-visual figcaption p { margin:15px 0; font-size:16px !important; line-height:1.65 !important; }
.article-source-visual figcaption small { color:var(--muted); font-size:13px; }
.article-source-visual figcaption a { color:inherit; font-weight:800; }
@media (max-width:700px) {
  .article-fact-grid { grid-template-columns:1fr 1fr; }
  .article-source-visual { grid-template-columns:130px minmax(0,1fr); gap:18px; }
  .article-source-visual figcaption p { display:none; }
}
@media (max-width:430px) {
  .article-fact-grid { grid-template-columns:1fr; }
  .article-source-visual { grid-template-columns:105px minmax(0,1fr); padding:14px; }
  .article-source-visual figcaption > strong { font-size:22px; }
}

/* Nested content must not apply the shell gutter a second time. */
.calendar-shell,
.search-results {
  width:100% !important;
  margin-inline:0 !important;
}
body:has(.search-results) main > .page-intro {
  width:100% !important;
  margin-inline:0 !important;
}
body:has(.calendar-shell) main > .container {
  width:min(calc(100% - 40px),var(--content));
  margin-inline:auto;
}
@media (max-width:900px) {
  body:has(.calendar-shell) main > .container {
    width:min(calc(100% - 32px),var(--content));
  }
}
@media (max-width:600px) {
  body:has(.calendar-shell) main > .container {
    width:min(calc(100% - 24px),var(--content));
  }
}

/* Definitive desktop shell: 5vw breathing room per side, capped at 1240px. */
@media (min-width:901px) {
  :root { --page-gutter:max(5vw,calc((100vw - var(--content))/2)); }
  .site-header .container,
  .site-footer .container,
  .home-page .page-intro > .container,
  .news-page,
  body:has(main.article) main.article,
  body:not(.home-page) .page-intro > .container,
  .directory-grid,
  .guide-list,
  body:has(.calendar-shell) main > .container,
  .tracker-hero,
  .tracker-layout,
  .trust-layout {
    width:min(90%,var(--content)) !important;
    margin-inline:auto !important;
  }
  .calendar-shell,
  .search-results {
    width:100% !important;
    margin-inline:0 !important;
  }
}
@media (max-width:600px) {
  .site-header .container,
  .site-footer .container,
  .home-page .page-intro > .container,
  .news-page,
  body:has(main.article) main.article,
  body:not(.home-page) .page-intro > .container,
  .directory-grid,
  .guide-list,
  .calendar-shell,
  .tracker-hero,
  .tracker-layout,
  .trust-layout,
  .search-results,
  body:has(.calendar-shell) main > .month-nav,
  body:has(.calendar-shell) main > .filter-row,
  body:has(.tracker-layout) main > .breadcrumbs,
  body:has(.search-results) main > .page-intro,
  body:has(.trust-layout) main > .breadcrumbs {
    width:min(calc(100% - 24px),var(--content));
    margin-inline:auto;
  }
}

/* Balanced article reading layout — final cascade */
body:has(main.article) main.article { padding-top:22px; padding-bottom:72px; }
body:has(main.article) .article-breadcrumbs { margin-bottom:14px; }
body:has(main.article) .article-header { margin-bottom:26px; padding:clamp(28px,3vw,40px) clamp(28px,4vw,48px) 30px; }
body:has(main.article) .article-header h1 { max-width:1000px; font-size:clamp(40px,3.5vw,52px); line-height:1.02; }
body:has(main.article) .article-header .dek { max-width:900px; font-size:17px; line-height:1.55; }
.article-content-layout { grid-template-columns:minmax(0,1fr) 280px; gap:clamp(28px,3vw,40px); }
body:has(main.article) .article-main-column .answer-box { margin:0 0 18px; padding:21px 24px; font-size:16px; line-height:1.65; border-radius:15px; }
body:has(main.article) .article-main-column .article-body { padding:clamp(26px,3vw,38px); border-radius:18px; }
body:has(main.article) .article-body > h2 { max-width:700px; margin-top:40px; margin-bottom:14px; font-size:clamp(26px,2.4vw,31px); line-height:1.18; }
body:has(main.article) .article-body > h2:first-of-type { margin-top:30px; }
body:has(main.article) .article-body > p,
body:has(main.article) .article-body > ul,
body:has(main.article) .article-body > h3 { max-width:720px; }
body:has(main.article) .article-body > p { margin:0 0 19px; font-size:17px; line-height:1.75; }
body:has(main.article) .article-body > ul { margin:0 0 28px; }
.article-source-visual { grid-template-columns:210px minmax(0,1fr); gap:30px; margin:0 0 32px; padding:22px; }
.article-sidebar { top:88px; gap:16px; }
.article-toc,.article-ad { border-radius:16px; }
.article-toc { padding:20px; }
.article-ad { min-height:210px; }
.article-ad:nth-child(3) { min-height:150px; }
@media (max-width:980px) {
  .article-content-layout { grid-template-columns:minmax(0,1fr) 230px; gap:24px; }
  .article-source-visual { grid-template-columns:175px minmax(0,1fr); gap:22px; }
}
@media (max-width:760px) {
  body:has(main.article) main.article { padding-top:14px; }
  body:has(main.article) .article-header { margin-bottom:18px; }
  .article-content-layout { grid-template-columns:1fr; }
  .article-sidebar { display:none; }
  .article-ad { min-height:145px; }
}
@media (max-width:600px) {
  body:has(main.article) .article-header { padding:23px 20px; }
  body:has(main.article) .article-header h1 { font-size:34px; line-height:1.04; }
  body:has(main.article) .article-main-column .article-body { padding:22px 18px; }
  body:has(main.article) .article-body > h2 { margin-top:34px; font-size:26px; }
  body:has(main.article) .article-body > p { font-size:16.5px; line-height:1.7; }
  .article-source-visual { grid-template-columns:112px minmax(0,1fr); gap:17px; padding:14px; }
  .article-source-visual figcaption p { display:none; }
  .article-sidebar { display:none; }
}

/* Article masthead: smaller type and full usable row width. */
@media (min-width:901px) {
  body:has(main.article) .article-header { padding:32px 44px 28px; }
  body:has(main.article) .article-header h1 {
    width:100%;
    max-width:none;
    margin:8px 0 14px;
    font-size:clamp(36px,2.75vw,44px);
    line-height:1.06;
    letter-spacing:-.045em;
    text-wrap:pretty;
  }
  body:has(main.article) .article-header .dek,
  body:has(main.article) .article-header .byline {
    width:100%;
    max-width:none;
  }
  body:has(main.article) .article-header .dek { font-size:16px; line-height:1.55; }
}

/* Refined article type scale. */
.table-wrap { max-width:100%; overflow-x:auto; margin:18px 0 30px; border:1px solid var(--border); border-radius:14px; }
.table-wrap table { width:100%; border-collapse:collapse; background:var(--surface); }
.table-wrap th,.table-wrap td { padding:13px 15px; text-align:left; border-bottom:1px solid var(--border); white-space:nowrap; }
.table-wrap th { color:var(--muted); background:rgba(112,91,186,.08); font-size:12px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.table-wrap tr:last-child td { border-bottom:0; }
body:has(main.article) .article-header h1 {
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-weight:850;
  letter-spacing:-.032em;
  line-height:1.1;
}
body:has(main.article) .article-header .dek {
  font-weight:450;
  letter-spacing:-.008em;
}
body:has(main.article) .article-header .byline {
  font-size:13.5px;
  line-height:1.5;
}
body:has(main.article) .article-tags > span,
body:has(main.article) .article-tools .share-label {
  font-size:12px;
  letter-spacing:.11em;
}
body:has(main.article) .article-tags a,
body:has(main.article) .article-tools .share-button {
  font-size:12.5px;
  font-weight:750;
}
@media (min-width:901px) {
  body:has(main.article) .article-header h1 {
    font-size:clamp(35px,2.45vw,40px);
  }
}
@media (max-width:600px) {
  body:has(main.article) .article-header h1 {
    font-size:31px;
    line-height:1.08;
  }
}

/* Shared editorial article — guides and reviews must read as stories, not hubs. */
body:has(main.article) .article-header {
  overflow:visible;
  max-width:1000px;
  margin:0 0 24px;
  padding:10px 0 6px;
  color:var(--ink);
  background:none;
  border:0;
  border-radius:0;
  box-shadow:none;
  clip-path:none;
}
body:has(main.article) .article-header::after { content:none; }
body:has(main.article) .article-header .eyebrow { color:#6650c9; }
body:has(main.article) .article-header h1 {
  max-width:920px;
  margin:9px 0 14px;
  color:var(--ink);
  font-size:clamp(38px,3.15vw,50px);
  line-height:1.08;
  letter-spacing:-.035em;
  text-wrap:balance;
}
body:has(main.article) .article-header .dek {
  max-width:820px;
  margin:0;
  color:var(--muted);
  font-size:18px;
  line-height:1.6;
}
body:has(main.article) .article-header .byline {
  max-width:820px;
  margin:19px 0 0;
  padding:15px 0 0;
  color:var(--muted);
  border-top:1px solid var(--border);
}
body:has(main.article) .article-header .article-tools {
  display:flex;
  width:fit-content;
  margin:12px 0 0;
}
body:has(main.article) .article-header .article-tools .share-button {
  min-height:32px;
  color:var(--ink);
  background:var(--surface);
  border-color:var(--border);
}
body:has(main.article) .article-header .article-tools .share-button:hover {
  color:#5a43bc;
  border-color:#8b78db;
}
body:has(main.article) .article-body > .article-share-footer {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  max-width:720px;
  margin:30px 0 0;
  padding:16px 0 2px;
  border-top:1px solid var(--border);
}
body:has(main.article) .article-body > .article-share-footer .share-label {
  width:auto;
  margin-right:4px;
  color:var(--muted);
}
body:has(main.article) .article-body > .article-share-footer .share-button {
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 12px;
  color:var(--ink);
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:9px;
}
body:has(main.article) .article-body > .article-share-footer .share-button:hover {
  color:#fff;
  background:#6750c8;
  border-color:#6750c8;
}
.dark-theme body:has(main.article) .article-body > .article-share-footer .share-button {
  color:#eef1ff;
  background:#20263a;
  border-color:#3c4664;
}
@media (max-width:600px) {
  body:has(main.article) .article-body > .article-share-footer {
    gap:6px;
    margin-top:24px;
    padding-top:14px;
  }
  body:has(main.article) .article-body > .article-share-footer .share-label {
    width:100%;
    margin-bottom:1px;
  }
  body:has(main.article) .article-body > .article-share-footer .share-button {
    min-height:38px;
    padding-inline:11px;
    font-size:12px;
  }
}
body:has(main.article) .article-header .article-tags > span {
  color:var(--muted);
}
body:has(main.article) .article-header .article-tags a {
  color:var(--ink);
  background:var(--surface);
  border-color:var(--border);
}
body:has(main.article) .article-header .article-tags a::before {
  color:#168d91;
}
body:has(main.article) .article-header .article-tags a:hover {
  color:#4d38ad;
  background:#f1edff;
  border-color:#8b78db;
}
.dark-theme body:has(main.article) .article-header .article-tags a {
  color:#eef1ff;
  background:#20263a;
  border-color:#3c4664;
}
.dark-theme body:has(main.article) .article-header .article-tags a::before {
  color:#6be4df;
}
.dark-theme body:has(main.article) .article-header .article-tags a:hover {
  color:#fff;
  background:#27304a;
  border-color:#6be4df;
}
body:has(main.article) .article-body > .article-tags {
  max-width:720px;
  margin:42px 0 4px;
  padding-top:22px;
  border-top:1px solid var(--border);
}
body:has(main.article) .article-body > .article-tags a {
  color:var(--ink);
  background:var(--surface-2,#f5f3fb);
  border-color:var(--border);
}
.dark-theme body:has(main.article) .article-body > .article-tags > span {
  color:#aeb7d1;
}
.dark-theme body:has(main.article) .article-body > .article-tags a {
  color:#eef1ff;
  background:#20263a;
  border-color:#3c4664;
}
.dark-theme body:has(main.article) .article-body > .article-tags a::before {
  color:#6be4df;
}
.dark-theme body:has(main.article) .article-body > .article-tags a:hover {
  color:#fff;
  background:#27304a;
  border-color:#6be4df;
}

/* Best Manhwa: keep the flagship guide compact and readable in both themes. */
body[data-article-slug="best-manhwa"] .table-wrap th,
body[data-article-slug="best-manhwa"] .table-wrap td {
  white-space:normal;
  vertical-align:top;
  line-height:1.45;
}
body[data-article-slug="best-manhwa"] .table-wrap th:first-child,
body[data-article-slug="best-manhwa"] .table-wrap td:first-child { width:30%; }
body[data-article-slug="best-manhwa"] .table-wrap th:nth-child(2),
body[data-article-slug="best-manhwa"] .table-wrap td:nth-child(2) { width:23%; }
.dark-theme body[data-article-slug="best-manhwa"] .answer-box {
  color:#edf0ff;
  background:linear-gradient(135deg,#211a3e 0%,#152a39 100%);
  border-color:#40396b;
  box-shadow:0 12px 30px rgba(0,0,0,.16);
}
.dark-theme body[data-article-slug="best-manhwa"] .answer-box::before { color:#78e1df; }
.dark-theme body[data-article-slug="best-manhwa"] .article-toc a { color:#c4cbe0; }
.dark-theme body[data-article-slug="best-manhwa"] .article-toc a::before { color:#a58aff; }
.dark-theme body[data-article-slug="best-manhwa"] .article-toc a:hover {
  color:#fff;
  background:#252344;
}
@media (max-width:600px) {
  body[data-article-slug="best-manhwa"] .table-wrap table { min-width:590px; }
  body[data-article-slug="best-manhwa"] .table-wrap th,
  body[data-article-slug="best-manhwa"] .table-wrap td { white-space:nowrap; }
}
body:has(main.article) .article-main-column > .article-source-visual {
  margin:0 0 22px;
  background:var(--surface);
  border:1px solid var(--border);
  box-shadow:0 12px 32px rgba(31,25,65,.07);
}
.dark-theme body:has(main.article) .article-header { color:var(--ink); background:none; }
.dark-theme body:has(main.article) .article-header .dek,
.dark-theme body:has(main.article) .article-header .byline { color:var(--muted); }
@media (max-width:600px) {
  body:has(main.article) .article-header { margin-bottom:18px; padding:6px 0 2px; }
  body:has(main.article) .article-header h1 { font-size:clamp(31px,9.2vw,38px); line-height:1.1; }
  body:has(main.article) .article-header .dek { font-size:16px; line-height:1.55; }
  body:has(main.article) .article-header .article-tools { width:100%; overflow-x:auto; padding-bottom:3px; }
  body:has(main.article) .article-header .article-tools .share-button { flex:0 0 auto; }
}

/* News typography and editorial imagery. */
.news-hero h1 {
  max-width:1050px;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-size:clamp(42px,5vw,68px);
  font-weight:850;
  line-height:1.02;
  letter-spacing:-.045em;
}
.news-hero > p:last-child { font-size:17px; line-height:1.6; }
.news-feature { min-height:340px; }
.news-feature h2 {
  font-size:clamp(31px,3.2vw,44px);
  font-weight:850;
  line-height:1.08;
  letter-spacing:-.035em;
}
.news-feature-copy > p:not(.news-kicker) { font-size:16px; line-height:1.6; }
.news-feature-art { isolation:isolate; }
.news-feature-art img,
.news-card-art img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.news-feature-art::after,
.news-card-art::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(8,10,24,.05),rgba(8,10,24,.68));
  pointer-events:none;
}
.news-feature-art span {
  position:absolute;
  z-index:2;
  left:22px;
  bottom:20px;
  font-size:13px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.news-card-art { isolation:isolate; }
.news-card-art span,.news-card-art strong { z-index:2; }
.news-list-card h3 {
  font-size:clamp(21px,2vw,25px);
  font-weight:820;
  line-height:1.16;
  letter-spacing:-.025em;
}
.news-list-card p { font-size:15px; line-height:1.6; }
.news-feed .section-heading h2,
.news-trending h2,
.news-brief h2 {
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-weight:850;
  letter-spacing:-.03em;
}
@media (max-width:600px) {
  .news-hero h1 { font-size:38px; line-height:1.04; }
  .news-feature-art { min-height:210px; }
  .news-feature h2 { font-size:30px; }
  .news-list-card h3 { font-size:22px; }
  .news-card-art { min-height:170px; }
}

@media (min-width:901px) {
  .news-hero h1 {
    width:100%;
    max-width:none;
    font-size:clamp(38px,3.45vw,50px);
    line-height:1.05;
    white-space:nowrap;
  }
  .news-hero > p:last-child {
    width:100%;
    max-width:none;
    font-size:clamp(14px,1.25vw,16px);
    line-height:1.55;
    white-space:nowrap;
  }
}

/* Home editorial imagery. */
.home-page .story-card { isolation:isolate; }
.home-story-image {
  position:absolute;
  inset:0;
  z-index:-2;
  overflow:hidden;
}
.home-story-image::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(8,10,24,.08) 0%,rgba(8,10,24,.7) 58%,rgba(8,10,24,.96) 100%);
}
.home-story-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.home-page .story-card:hover .home-story-image img { transform:scale(1.035); }
.home-page .story-card:first-child .home-story-image::after {
  background:linear-gradient(90deg,rgba(8,10,24,.97) 0%,rgba(8,10,24,.76) 52%,rgba(8,10,24,.22) 100%);
}
.home-page .tracker-card .poster-mini {
  position:relative;
  min-height:190px;
  padding:0;
  overflow:hidden;
  background:#17172a;
}
.home-page .tracker-card .poster-mini::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(7,9,20,.88));
}
.home-page .tracker-card .poster-mini img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease;
}
.home-page .tracker-card .poster-mini span {
  position:absolute;
  z-index:2;
  left:15px;
  right:15px;
  bottom:13px;
  color:#fff;
  font-size:14px;
  font-weight:850;
  line-height:1.2;
}
.home-page .tracker-card:hover .poster-mini img { transform:scale(1.04); }
@media (max-width:600px) {
  .home-page .tracker-card .poster-mini { min-height:160px; }
}

/* Homepage image-layer and card consistency fixes. */
.home-page .story-card { background:#111426; }
.home-page .story-card .home-story-image { z-index:0; }
.home-page .story-card::before { z-index:1; pointer-events:none; }
.home-page .story-card > :not(.home-story-image) {
  position:relative;
  z-index:2;
}
.home-page .story-card h2,
.home-page .story-card h3 {
  text-shadow:0 2px 18px rgba(0,0,0,.7);
}
.home-page .story-card p,
.home-page .story-card .story-meta { color:#e1e4ef; }
.home-page .story-card:not(:first-child) { min-height:270px; }
.home-page .tracker-grid { align-items:stretch; }
.home-page .tracker-card { display:flex; flex-direction:column; }
.home-page .tracker-card > p:last-child { margin-top:auto; }
.home-page .tracker-card .poster-mini { aspect-ratio:4/3; min-height:0; }
.home-page .tracker-card:nth-child(3) .poster-mini img { object-position:center 18%; }
@media (max-width:900px) {
  .home-page .story-card:not(:first-child) { min-height:250px; }
}
@media (max-width:600px) {
  .home-page .story-card,
  .home-page .story-card:not(:first-child) { min-height:260px; }
  .home-page .tracker-card .poster-mini { aspect-ratio:16/10; }
}

/* News page alignment with the shared AdaptLore design system. */
.news-page { padding-top:22px; padding-bottom:70px; }
.news-breadcrumbs {
  margin:0 0 14px;
  padding:0;
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}
.news-hero {
  margin-bottom:26px;
  padding:clamp(30px,4vw,48px);
  border:1px solid rgba(139,92,246,.42);
  border-radius:22px;
  box-shadow:0 20px 48px rgba(24,17,55,.17);
  clip-path:polygon(0 0,97% 0,100% 14%,100% 100%,3% 100%,0 86%);
}
.news-hero .eyebrow { color:#63e5e1; }
.news-feature {
  margin-bottom:24px;
  border-color:rgba(139,92,246,.34);
  border-radius:20px;
  box-shadow:0 18px 42px rgba(35,27,78,.12);
}
.news-feature-copy { padding:clamp(28px,4vw,46px); }
.news-toolbar {
  margin:0 0 28px;
  padding:12px 0;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.news-toolbar .filter-row {
  padding:4px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:14px;
}
.news-toolbar .filter-button { min-height:38px; border-radius:10px; }
.news-layout { grid-template-columns:minmax(0,1fr) 280px; gap:clamp(28px,3vw,40px); }
.news-list-card {
  grid-template-columns:180px minmax(0,1fr);
  gap:22px;
  padding:17px;
  border-radius:18px;
}
.news-card-art { min-height:150px; }
.news-trending,.news-brief,.news-ad {
  border-color:var(--border);
  border-radius:16px;
  box-shadow:0 12px 30px rgba(35,27,78,.07);
}
.news-sidebar { top:88px; gap:16px; }
.dark-theme .news-toolbar .filter-row,
.dark-theme .news-list-card,
.dark-theme .news-trending,
.dark-theme .news-brief { background:var(--surface); }
@media (max-width:900px) {
  .news-layout { grid-template-columns:minmax(0,1fr) 230px; gap:24px; }
  .news-list-card { grid-template-columns:145px minmax(0,1fr); }
}
@media (max-width:760px) {
  .news-layout { grid-template-columns:1fr; }
  .news-sidebar { position:static; grid-template-columns:1fr 1fr; }
  .news-trending { grid-column:1/-1; }
  .news-toolbar { align-items:flex-start; flex-direction:column; }
}
@media (max-width:600px) {
  .news-page { padding-top:12px; padding-bottom:48px; }
  .news-hero { padding:28px 21px; clip-path:none; border-radius:17px; }
  .news-feature { border-radius:17px; }
  .news-list-card { grid-template-columns:1fr; padding:14px; }
  .news-card-art { min-height:180px; }
  .news-sidebar { grid-template-columns:1fr; }
  .news-trending { grid-column:auto; }
}

/* Other public pages follow the News page shell and title rhythm. */
.shared-breadcrumbs {
  width:min(90%,var(--content));
  display:flex;
  align-items:center;
  gap:9px;
  margin:18px auto 0;
  color:var(--muted);
  font-size:13px;
  font-weight:700;
}
.shared-breadcrumbs a { color:#7657d8; }
body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro {
  padding:14px 0 30px;
}
body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro > .container {
  padding:clamp(30px,4vw,48px);
  border:1px solid rgba(139,92,246,.42);
  border-radius:22px;
  box-shadow:0 20px 48px rgba(24,17,55,.17);
  clip-path:polygon(0 0,97% 0,100% 14%,100% 100%,3% 100%,0 86%);
}
body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro h1 {
  width:100%;
  max-width:none;
  margin:8px 0 14px;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-size:clamp(38px,3.45vw,50px);
  font-weight:850;
  line-height:1.05;
  letter-spacing:-.04em;
}
body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro h1 + p {
  width:100%;
  max-width:none;
  font-size:16px;
  line-height:1.6;
}
.trust-copy > h1 {
  max-width:none;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif;
  font-weight:850;
  letter-spacing:-.04em;
}
@media (min-width:901px) {
  body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro h1,
  body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro h1 + p {
    white-space:nowrap;
  }
}
@media (max-width:900px) {
  .shared-breadcrumbs { width:min(calc(100% - 32px),var(--content)); }
}
@media (max-width:600px) {
  .shared-breadcrumbs {
    width:min(calc(100% - 24px),var(--content));
    margin-top:12px;
    overflow:hidden;
    white-space:nowrap;
  }
  .shared-breadcrumbs span:last-child { overflow:hidden; text-overflow:ellipsis; }
  body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro { padding:10px 0 24px; }
  body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro > .container {
    padding:28px 21px;
    clip-path:none;
    border-radius:17px;
  }
  body:not(.home-page):not(:has(.news-page)):not(:has(main.article)) .page-intro h1 {
    font-size:36px;
    line-height:1.05;
  }
}

/* Shared header and footer navigation states. */
.site-footer .footer-links a[aria-current="page"] {
  color:#55e6e1;
  font-weight:850;
}
.site-footer .footer-links a[aria-current="page"]::before { content:"→ "; }
@media (min-width:901px) and (max-width:1120px) {
  .primary-nav { gap:3px; }
  .primary-nav a { padding-inline:9px; font-size:14px; }
  .theme-button { padding-inline:12px; }
}

/* Header parent and child menus. */
.primary-nav .nav-item {
  position:relative;
  display:flex;
  align-items:center;
}
.primary-nav .nav-item > a { padding-right:5px; }
.submenu-toggle {
  width:27px;
  height:34px;
  display:grid;
  place-items:center;
  padding:0;
  color:#bfc4d8;
  background:transparent;
  border:0;
  border-radius:8px;
  cursor:pointer;
  transition:color .18s ease,background .18s ease,transform .18s ease;
}
.submenu-toggle:hover,.submenu-toggle:focus-visible { color:#55e6e1; background:rgba(255,255,255,.08); }
.submenu {
  position:absolute;
  z-index:80;
  left:0;
  top:calc(100% + 8px);
  width:max-content;
  min-width:190px;
  display:grid;
  padding:8px;
  visibility:hidden;
  opacity:0;
  transform:translateY(-6px);
  color:#f5f5ff;
  background:rgba(17,20,38,.98);
  backdrop-filter:blur(16px);
  border:1px solid rgba(139,92,246,.38);
  border-radius:14px;
  box-shadow:0 18px 42px rgba(5,7,18,.34);
  transition:opacity .16s ease,transform .16s ease,visibility .16s;
}
.submenu a {
  min-height:39px;
  display:flex;
  align-items:center;
  padding:8px 11px !important;
  border-radius:9px;
  font-size:13px !important;
  white-space:nowrap;
}
.submenu a:hover,.submenu a:focus-visible { color:#64e8e3; background:rgba(139,92,246,.16); }
.submenu a[aria-current="page"] {
  color:#8ef1ec;
  background:linear-gradient(90deg,rgba(139,92,246,.24),rgba(54,225,224,.09));
}
.submenu a[aria-current="page"]::before {
  content:"";
  width:5px;
  height:5px;
  margin-right:8px;
  flex:0 0 auto;
  border-radius:50%;
  background:#55e6e1;
  box-shadow:0 0 0 3px rgba(85,230,225,.12);
}
.nav-item.has-wide-submenu > .submenu {
  grid-template-columns:repeat(2,minmax(152px,1fr));
  min-width:344px;
}
.nav-item:hover > .submenu,
.nav-item:focus-within > .submenu,
.nav-item.is-submenu-open > .submenu {
  visibility:visible;
  opacity:1;
  transform:none;
}
.nav-item.is-submenu-open > .submenu-toggle { color:#55e6e1; background:rgba(85,230,225,.09); }
@media (max-width:900px) {
  .primary-nav.is-open .nav-item {
    display:grid;
    grid-template-columns:minmax(0,1fr) 46px;
    width:100%;
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .primary-nav.is-open .nav-item > a { border-bottom:0; }
  .primary-nav.is-open .submenu-toggle { width:46px; height:46px; }
  .primary-nav.is-open .submenu {
    position:static;
    grid-column:1/-1;
    width:100%;
    display:none;
    padding:4px 8px 10px 18px;
    visibility:visible;
    opacity:1;
    transform:none;
    background:rgba(255,255,255,.035);
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  .primary-nav.is-open .nav-item.is-submenu-open > .submenu { display:grid; }
  .primary-nav.is-open .submenu a { min-height:42px; border-bottom:0; }
  .primary-nav.is-open .nav-item.has-wide-submenu > .submenu { grid-template-columns:1fr; min-width:0; }
}

/* Landscape editorial media used by Phase 1 news pages. */
.article-source-cover img[src*="/assets/news/"] {
  aspect-ratio:3/2;
  object-fit:cover;
}

/* Anime and manhwa topic hubs. */
.topic-hub .news-hero { margin-top:0; }
.topic-hub .news-hero::after { content:"ANIME"; }
.manhwa-hub .news-hero { background:radial-gradient(circle at 78% 22%,rgba(100,232,227,.18),transparent 23rem),radial-gradient(circle at 45% -30%,rgba(139,92,246,.38),transparent 32rem),linear-gradient(125deg,#0b0d1b,#21153e 58%,#102732); }
.manhwa-hub .news-hero::after { content:"MANHWA"; }
.topic-hub .filter-row a { text-decoration:none; }
.topic-hub .news-feature-art img { width:100%; height:100%; object-fit:cover; }
.home-hubs .explore-grid { align-items:stretch; }
.home-hubs .hub-card { position:relative; overflow:hidden; min-height:220px; color:#f7f7ff; border-color:rgba(139,92,246,.4); }
.home-hubs .hub-card h3,.home-hubs .hub-card p,.home-hubs .hub-card strong { position:relative; z-index:1; }
.home-hubs .hub-card h3 { font-size:25px; }
.home-hubs .hub-card p { color:#d9dced; }
.home-hubs .hub-card strong { display:block; margin-top:18px; color:#77ebe6; }
.home-hubs .hub-card.is-manhwa { background:radial-gradient(circle at 90% 10%,rgba(119,235,230,.2),transparent 12rem),linear-gradient(145deg,#5f35ad,#171329); }
.home-hubs .hub-card.is-anime { background:radial-gradient(circle at 88% 15%,rgba(139,92,246,.28),transparent 12rem),linear-gradient(145deg,#153c4a,#101426); }
.home-hubs .hub-card .explore-icon { color:#fff; background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.18); }
@media (min-width:901px) and (max-width:1180px) { .footer-grid { grid-template-columns:1.3fr repeat(2,1fr); } }
@media (max-width:900px) { .topic-hub .news-toolbar { align-items:flex-start; } }

/* Refined editorial homepage: one promise, one live spotlight, less repetition. */
.home-page .page-intro > .container {
  min-height:430px;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.55fr);
  grid-template-rows:auto auto auto auto;
  column-gap:clamp(30px,5vw,70px);
  align-content:center;
  padding:clamp(34px,5vw,64px);
}
.home-page .home-kicker,
.home-page .page-intro h1,
.home-page .page-intro > .container > p,
.home-page .home-hero-actions { grid-column:1; }
.home-page .home-kicker { margin-bottom:17px; }
.home-page .page-intro h1 { max-width:760px; margin:0 0 18px; font-size:clamp(44px,5.25vw,70px); }
.home-page .page-intro > .container > p { max-width:650px; margin:0; }
.home-spotlight {
  grid-column:2;
  grid-row:1 / 5;
  align-self:stretch;
  position:relative !important;
  z-index:3 !important;
  min-height:300px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  overflow:hidden;
  padding:24px;
  color:#fff;
  background:#111426;
  border:1px solid rgba(103,230,226,.34);
  border-radius:19px;
  box-shadow:0 24px 52px rgba(5,7,18,.4);
  transform:rotate(1deg);
  transition:transform .22s ease,border-color .22s ease;
}
.home-spotlight:hover { color:#fff; border-color:#64e8e3; transform:translateY(-4px) rotate(0); }
.home-spotlight::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,9,20,.05) 8%,rgba(7,9,20,.38) 44%,rgba(7,9,20,.96) 100%); }
.home-spotlight img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.home-spotlight > :not(img) { position:relative; z-index:1; }
.home-spotlight .badge { align-self:flex-start; margin-bottom:auto; }
.home-spotlight small { margin-top:22px; color:#66ebe5; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.home-spotlight strong { margin-top:5px; font:900 30px/1 Inter,system-ui,sans-serif; letter-spacing:-.04em; }
.home-spotlight p { margin:9px 0 15px !important; color:#dce0ec !important; font-size:14px !important; }
.home-spotlight b { font-size:13px; }
.home-page .section { padding-block:clamp(30px,4vw,46px); }
.home-page .section:has(.trending-bar) { padding-top:22px; padding-bottom:18px; }
.home-page .section:has(.trending-bar) .section-heading { display:none; }
.home-page .trending-bar { box-shadow:0 12px 30px rgba(24,17,55,.1); }
.home-page .home-latest { padding-top:35px; }
.home-page .home-hubs { padding-top:38px; }
.home-page .home-hubs .explore-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.home-page .home-hubs .explore-card { min-height:210px; display:flex; flex-direction:column; align-items:flex-start; }
.home-page .home-hubs .explore-card strong { margin-top:auto; padding-top:15px; }
@media (max-width:1050px) {
  .home-page .page-intro > .container { grid-template-columns:minmax(0,1fr) 280px; column-gap:28px; }
  .home-page .page-intro h1 { font-size:clamp(42px,5.8vw,61px); }
  .home-page .home-hubs .explore-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .home-page .page-intro > .container { min-height:0; display:grid; grid-template-columns:1fr; padding:30px 22px; }
  .home-page .home-kicker,.home-page .page-intro h1,.home-page .page-intro > .container > p,.home-page .home-hero-actions,.home-spotlight { grid-column:1; }
  .home-spotlight { grid-row:auto; min-height:225px; margin-top:30px; transform:none; }
  .home-page .page-intro h1 { font-size:clamp(38px,11vw,50px); }
  .home-page .trending-bar { overflow-x:auto; }
}
@media (max-width:520px) {
  .home-page .home-hubs .explore-grid { grid-template-columns:1fr; }
  .home-page .home-hubs .explore-card { min-height:185px; }
  .home-spotlight { min-height:205px; }
}

/* Reviews remain honest and noindex until the first full review is published. */
.reviews-hero { background:radial-gradient(circle at 76% 15%,rgba(224,126,255,.2),transparent 22rem),linear-gradient(130deg,#0c0e1b,#29163b 62%,#172431); }
.reviews-hero::after { content:"REVIEWS"; }
.reviews-empty { width:min(100%,980px); margin:34px auto 70px; padding:clamp(30px,5vw,58px); text-align:center; background:var(--surface); border:1px solid var(--border); border-radius:22px; box-shadow:0 20px 50px rgba(24,17,54,.09); }
.reviews-empty > span { color:#7856d5; font-size:12px; font-weight:900; letter-spacing:.14em; }
.reviews-empty > h2 { max-width:720px; margin:12px auto; font:850 clamp(30px,4.5vw,48px)/1.05 Inter,system-ui,sans-serif; letter-spacing:-.045em; }
.reviews-empty > p { max-width:760px; margin:0 auto; color:var(--muted); font-size:17px; }
.reviews-method { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:34px 0; text-align:left; }
.reviews-method > div { padding:22px; background:linear-gradient(145deg,rgba(139,92,246,.06),rgba(100,232,227,.04)); border:1px solid var(--border); border-radius:15px; }
.reviews-method strong { color:#8b5cf6; font-size:13px; }
.reviews-method h3 { margin:8px 0; font-size:18px; }
.reviews-method p { margin:0; color:var(--muted); font-size:14px; }
@media (max-width:700px) { .reviews-method { grid-template-columns:1fr; } }

/* Manhwa reader hub: discovery and reading intent before adaptation updates. */
.reader-hub .news-hero { padding-bottom:clamp(32px,5vw,54px); }
.reader-hub .news-hero::after { content:"MANHWA"; }
.reader-hero-actions { position:relative; z-index:2; display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-top:24px; }
.reader-text-link { color:#72e9e5; font-weight:850; border-bottom:1px solid currentColor; }
.reader-intents { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:13px; margin:22px 0 34px; }
.reader-intents a { min-height:132px; display:grid; grid-template-columns:44px 1fr; grid-template-rows:auto auto; gap:0 12px; align-content:center; padding:20px; background:var(--surface); border:1px solid var(--border); border-radius:17px; box-shadow:0 10px 25px rgba(24,17,52,.05); transition:transform .2s ease,border-color .2s ease; }
.reader-intents a:hover { color:var(--ink); border-color:#8b5cf6; transform:translateY(-3px); }
.reader-intents span { grid-row:1/3; align-self:center; width:42px; height:42px; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,#8b5cf6,#55dcd8); border-radius:12px; font-weight:900; }
.reader-intents strong { align-self:end; font-size:18px; }
.reader-intents small { color:var(--muted); line-height:1.3; }
.reader-feature { margin-top:0; }
.reader-subheading { margin-top:38px; }
.news-list-card.compact { grid-template-columns:1fr; min-height:0; }
@media (max-width:850px) { .reader-intents { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:520px) { .reader-intents { grid-template-columns:1fr; } .reader-intents a { min-height:108px; } }

/* Keep a topic hub inside the shared AdaptLore editorial system. */
.compact-topic-hub .news-hero { min-height:0; margin-bottom:18px; padding:clamp(28px,4vw,42px); clip-path:none; border-radius:20px; }
.compact-topic-hub .news-hero h1 { max-width:none; margin-bottom:10px; font-size:clamp(42px,6vw,66px); line-height:1; }
.compact-topic-hub .news-hero > p:last-child { max-width:760px; font-size:17px; }
.compact-topic-hub .news-hero::after { right:3%; top:50%; font-size:clamp(90px,15vw,190px); transform:translateY(-50%) rotate(-6deg); }
.manhwa-toolbar { margin-bottom:22px; }
.manhwa-toolbar .filter-row { margin:0; }
.compact-feature { margin:0 0 30px; }
.compact-feature .news-feature-copy { padding:clamp(25px,4vw,42px); }
.compact-feature .news-feature-art { min-height:300px; }
.compact-topic-hub .section-divider { margin-top:38px; padding-top:28px; border-top:1px solid var(--border); }
.compact-topic-hub .adaptation-brief { margin-top:14px; }
@media (max-width:760px) {
  .compact-topic-hub .news-hero { padding:26px 20px; border-radius:17px; }
  .compact-topic-hub .news-hero h1 { font-size:42px; }
  .manhwa-toolbar { align-items:flex-start; }
  .compact-feature .news-feature-art { min-height:230px; }
}

/* Keep every primary homepage collection visually complete by row. */
.home-page #guides .news-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
}
.home-page #guides .news-card {
  min-height:230px;
  display:flex;
  flex-direction:column;
}
.home-page #guides .news-card p { flex:1; }
.home-page #guides .news-card .meta { margin-top:auto; }
@media (max-width:900px) {
  .home-page #guides .news-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .home-page #guides .news-grid { grid-template-columns:1fr; }
  .home-page #guides .news-card { min-height:0; }
}

/* Definitive five-part footer shared by every public route. */
.site-footer .footer-grid {
  display:grid;
  grid-template-columns:minmax(230px,1.45fr) repeat(4,minmax(120px,1fr));
  gap:clamp(22px,3vw,42px);
  align-items:start;
}
.site-footer .footer-grid > div { min-width:0; }
.site-footer .footer-links { align-content:start; }
.site-footer .footer-bottom { justify-content:flex-start; }
@media (min-width:761px) and (max-width:1100px) {
  .site-footer .footer-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .site-footer .footer-grid > div:first-child { grid-column:1/-1; }
  .site-footer .footer-grid > div:first-child p { max-width:520px; }
}
@media (max-width:760px) {
  .site-footer .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 20px; }
  .site-footer .footer-grid > div:first-child { grid-column:1/-1; }
}
@media (max-width:420px) {
  .site-footer .footer-grid { grid-template-columns:1fr; }
  .site-footer .footer-grid > div:first-child { grid-column:auto; }
}

/* 2026 homepage: reading discovery first, adaptation reporting second. */
.home-hero { padding:clamp(24px,4vw,50px) 0 18px; }
.home-hero-shell {
  min-height:560px;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(320px,.62fr);
  gap:clamp(30px,5vw,72px);
  align-items:center;
  overflow:hidden;
  padding:clamp(36px,5vw,68px);
  color:#f8f8ff;
  background:radial-gradient(circle at 88% 18%,rgba(100,232,227,.2),transparent 20rem),radial-gradient(circle at 42% -25%,rgba(139,92,246,.45),transparent 34rem),linear-gradient(130deg,#090b17,#1b1233 58%,#10232e);
  border:1px solid rgba(139,92,246,.55);
  border-radius:28px;
  box-shadow:0 26px 64px rgba(7,9,20,.25);
}
.home-hero-copy h1 { max-width:760px; margin:18px 0; font:900 clamp(46px,6vw,76px)/.98 Inter,system-ui,sans-serif; letter-spacing:-.055em; text-wrap:balance; }
.home-hero-copy > p:not(.home-kicker) { max-width:670px; margin:0; color:#d9dcec; font-size:clamp(17px,1.7vw,20px); line-height:1.65; }
.home-kicker { display:flex; align-items:center; gap:13px; margin:0; color:#80ece8; font-size:12px; font-weight:900; letter-spacing:.15em; }
.home-kicker i { width:28px; height:1px; background:linear-gradient(90deg,#8b5cf6,#72e7e3); }
.home-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.home-hero-actions .button { min-height:52px; padding-inline:21px; color:#fff; background:linear-gradient(135deg,#8b5cf6,#4b79e8 65%,#63dedb); box-shadow:0 14px 28px rgba(86,69,204,.3); }
.home-hero-actions .secondary-home { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.28); box-shadow:none; }
.home-proof { display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:28px; color:#aeb6ce; font-size:13px; }
.home-proof span { position:relative; padding-left:14px; }
.home-proof span::before { content:""; position:absolute; left:0; top:.65em; width:5px; height:5px; background:#67e8e3; border-radius:50%; }
.home-proof strong { color:#fff; }
.home-lead-card { position:relative; min-height:410px; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; padding:24px; color:#fff; border:1px solid rgba(255,255,255,.22); border-radius:22px; box-shadow:0 24px 50px rgba(3,5,14,.42); transition:transform .2s ease,border-color .2s ease; }
.home-lead-card:hover { color:#fff; border-color:#70ebe6; transform:translateY(-5px); }
.home-lead-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(6,8,18,.08),rgba(6,8,18,.3) 38%,rgba(6,8,18,.96)); }
.home-lead-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.home-lead-card > *:not(img) { position:relative; z-index:1; }
.home-lead-card .badge { align-self:flex-start; }
.home-lead-card div { display:grid; gap:8px; }
.home-lead-card small { color:#70ebe6; font-weight:900; letter-spacing:.12em; }
.home-lead-card strong { font:900 clamp(28px,3vw,39px)/1.03 Inter,system-ui,sans-serif; letter-spacing:-.045em; }
.home-lead-card p { margin:2px 0; color:#dce0ec; line-height:1.5; }
.home-lead-card b { font-size:14px; }
.home-popular { padding:16px 0; }
.home-popular .container { display:grid; grid-template-columns:auto repeat(4,1fr); overflow:hidden; background:var(--surface); border:1px solid var(--border); border-radius:15px; box-shadow:0 12px 30px rgba(22,17,48,.07); }
.home-popular strong,.home-popular a { min-height:58px; display:flex; align-items:center; padding:12px 16px; }
.home-popular > .container > strong { color:#fff; background:#111426; text-transform:uppercase; font-size:12px; letter-spacing:.1em; }
.home-popular a { gap:8px; border-left:1px solid var(--border); font-weight:800; }
.home-popular a span { color:#8b5cf6; font-size:11px; }
.home-pillar-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.home-pillar { min-height:260px; display:flex; flex-direction:column; overflow:hidden; padding:26px; color:#fff; border:1px solid rgba(255,255,255,.14); border-radius:20px; box-shadow:0 16px 34px rgba(20,15,43,.14); transition:transform .2s ease; }
.home-pillar:hover { color:#fff; transform:translateY(-5px); }
.home-pillar > span { color:#79e9e5; font-size:11px; font-weight:900; letter-spacing:.13em; }
.home-pillar h3 { margin:25px 0 8px; font:900 34px/1 Inter,system-ui,sans-serif; letter-spacing:-.045em; }
.home-pillar p { margin:0 0 20px; color:#dce0ec; }
.home-pillar b { margin-top:auto; font-size:14px; }
.home-pillar.manhwa { background:radial-gradient(circle at 95% 5%,rgba(111,232,227,.2),transparent 11rem),linear-gradient(145deg,#6336b4,#181329); }
.home-pillar.manhua { background:radial-gradient(circle at 95% 5%,rgba(255,208,109,.2),transparent 11rem),linear-gradient(145deg,#784559,#211321); }
.home-pillar.anime { background:radial-gradient(circle at 95% 5%,rgba(139,92,246,.3),transparent 11rem),linear-gradient(145deg,#174353,#101525); }
.home-pillar.donghua { background:radial-gradient(circle at 95% 5%,rgba(104,215,161,.2),transparent 11rem),linear-gradient(145deg,#275947,#111c1d); }
.home-guides { background:linear-gradient(180deg,transparent,rgba(139,92,246,.045),transparent); }
.home-reviews { background:linear-gradient(180deg,transparent,rgba(54,225,224,.04),transparent); }
.home-reviews .feature-large > img { object-position:center 14%; }
.media-category .category-mark span { font-size:clamp(46px,6vw,82px); }
.media-category-feature .category-feature-media img { object-position:center; }
.donghua-category .category-header { background:radial-gradient(circle at 88% 18%,rgba(104,215,161,.22),transparent 18rem),linear-gradient(130deg,#101425,#163a38); }
.anime-category .category-header { background:radial-gradient(circle at 88% 18%,rgba(54,225,224,.2),transparent 18rem),linear-gradient(130deg,#111326,#302257); }
.home-feature-grid { display:grid; grid-template-columns:1.35fr 1fr; gap:16px; }
.home-feature-card { min-height:180px; display:grid; grid-template-columns:96px 1fr; align-items:center; gap:22px; padding:24px; background:var(--surface); border:1px solid var(--border); border-radius:18px; box-shadow:0 12px 30px rgba(25,17,55,.06); transition:transform .2s ease,border-color .2s ease; }
.home-feature-card:hover { transform:translateY(-3px); border-color:rgba(139,92,246,.55); }
.home-feature-card.feature-large { grid-row:span 3; min-height:570px; display:flex; flex-direction:column; align-items:stretch; padding:0; overflow:hidden; }
.home-feature-card.feature-large > img { width:100%; height:300px; object-fit:cover; }
.home-feature-card.feature-large > div { padding:28px; }
.home-feature-card h3 { margin:10px 0 8px; font:850 24px/1.15 Inter,system-ui,sans-serif; letter-spacing:-.035em; }
.home-feature-card.feature-large h3 { font-size:clamp(30px,3.4vw,44px); }
.home-feature-card p { margin:0; color:var(--muted); }
.home-feature-card .card-link { display:inline-flex; margin-top:20px; color:#6d4acf; font-weight:850; }
.feature-number { color:rgba(109,74,207,.25); font:900 54px/1 Inter,system-ui,sans-serif; text-align:center; }
.home-screen-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.home-screen-grid article { overflow:hidden; background:var(--surface); border:1px solid var(--border); border-radius:18px; box-shadow:0 12px 30px rgba(21,26,36,.06); }
.home-screen-grid img { width:100%; height:210px; object-fit:cover; }
.home-screen-grid article:nth-child(3) img { object-position:center 18%; }
.home-screen-grid article > div { padding:22px; }
.home-screen-grid h3 { margin:10px 0 7px; font:850 23px/1.15 Inter,system-ui,sans-serif; letter-spacing:-.03em; }
.home-screen-grid p { margin:0; color:var(--muted); }
.home-trust .container { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr); gap:40px; align-items:end; padding:clamp(30px,5vw,56px); color:#fff; background:linear-gradient(135deg,#121526,#20143a); border:1px solid rgba(139,92,246,.38); border-radius:22px; }
.home-trust h2 { max-width:800px; margin:8px 0 14px; font:850 clamp(30px,4vw,48px)/1.06 Inter,system-ui,sans-serif; letter-spacing:-.045em; }
.home-trust p:not(.eyebrow) { max-width:760px; color:#cbd0df; }
.home-trust-links { display:grid; gap:12px; }
.home-trust-links a { padding:13px 0; color:#73ebe6; border-bottom:1px solid rgba(255,255,255,.15); font-weight:800; }
.site-footer .footer-brand > a { color:#65e7e2; font-weight:800; }
.site-footer .footer-bottom { justify-content:space-between; gap:20px; }
@media (max-width:1050px) {
  .home-hero-shell { grid-template-columns:minmax(0,1fr) 310px; gap:30px; }
  .home-hero-copy h1 { font-size:clamp(44px,6vw,62px); }
  .home-pillar-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-popular .container { grid-template-columns:auto repeat(2,1fr); }
  .home-popular > .container > strong { grid-row:span 2; }
}
@media (max-width:760px) {
  .home-hero-shell { min-height:0; grid-template-columns:1fr; padding:28px 21px; border-radius:20px; }
  .home-hero-copy h1 { font-size:clamp(40px,11vw,54px); }
  .home-lead-card { min-height:330px; }
  .home-popular .container { display:flex; overflow-x:auto; }
  .home-popular > .container > strong,.home-popular a { flex:0 0 auto; }
  .home-feature-grid,.home-screen-grid,.home-trust .container { grid-template-columns:1fr; }
  .home-feature-card.feature-large { grid-row:auto; min-height:0; }
  .home-feature-card.feature-large > img { height:230px; }
  .home-trust .container { align-items:start; }
  .site-footer .footer-bottom { display:grid; }
}
@media (max-width:520px) {
  .home-pillar-grid { grid-template-columns:1fr; }
  .home-pillar { min-height:220px; }
  .home-feature-card { grid-template-columns:65px 1fr; gap:15px; padding:20px 16px; }
  .feature-number { font-size:42px; }
  .home-screen-grid img { height:190px; }
}

/* Tracker directory: every card maps to one canonical child tracker. */
.tracker-directory .page-intro { padding-top:10px; }
.tracker-directory-breadcrumb { margin-top:20px; }
.tracker-directory .directory-grid {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  padding-top:8px;
}
.tracker-directory .directory-card {
  min-height:330px;
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  padding:0;
  border-radius:20px;
}
.tracker-directory .directory-card::before { display:none; }
.tracker-directory-art { position:relative; min-height:100%; overflow:hidden; background:#111426; }
.tracker-directory-art::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(6,8,20,.88)); }
.tracker-directory-art img { width:100%; height:100%; object-fit:cover; }
.tracker-directory-art span { position:absolute; z-index:1; left:15px; right:15px; bottom:16px; color:#fff; font-size:11px; font-weight:950; letter-spacing:.1em; }
.tracker-directory-copy { min-width:0; display:flex; flex-direction:column; padding:24px; }
.tracker-directory-copy h2 { margin:10px 0 5px; font-size:27px; }
.tracker-directory-summary { margin:12px 0 2px; color:var(--muted); line-height:1.55; }
.tracker-directory-copy dl { width:100%; margin-top:auto; padding-top:12px; }
.tracker-directory-link { margin-top:15px; color:#6f54dd; font-size:14px; font-weight:900; }
.tracker-directory-note { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.2fr) auto; gap:30px; align-items:center; margin-top:8px; padding:26px 28px; background:var(--surface); border:1px solid var(--border); border-radius:18px; }
.tracker-directory-note h2,.tracker-directory-note p { margin:0; }
.tracker-directory-note a { color:#6f54dd; font-weight:900; white-space:nowrap; }
.tracker-cover-image { padding:0; overflow:hidden; }
.tracker-cover-image img { width:100%; height:100%; object-fit:cover; }

/* Professional tracker detail — Tomb Raider King */
.tracker-detail-page main { padding-bottom:64px; }
.tracker-detail-page .tracker-breadcrumbs { display:flex; align-items:center; gap:9px; }
.tracker-detail-page .tracker-breadcrumbs span { color:var(--muted); }
.tracker-detail-page .tracker-hero { grid-template-areas:"cover title" "cover verify"; grid-template-rows:auto auto; align-content:center; row-gap:18px; margin-top:18px; padding:clamp(26px,3vw,40px); background:radial-gradient(circle at 88% 12%,rgba(214,166,46,.18),transparent 32%),linear-gradient(135deg,var(--surface),var(--paper)); border:1px solid var(--border); border-radius:24px; box-shadow:0 20px 50px rgba(20,25,35,.09); }
.tracker-detail-page .tracker-hero { color:var(--ink); }
.tracker-detail-page .tracker-title h1 { color:var(--ink); }
.tracker-detail-page .tracker-hero p,.tracker-detail-page .tracker-hero .muted,.tracker-detail-page .tracker-title .alt-title { color:var(--muted); }
.tracker-detail-page .verified { color:#243141; background:#e8f8fa; border-color:#58aeb9; }
.tracker-detail-page .verified strong { color:#14202e; }
.tracker-detail-page .tracker-hero .cover-placeholder { grid-area:cover; width:100%; aspect-ratio:2/3; border-radius:15px; box-shadow:0 18px 34px rgba(10,13,22,.24); }
.tracker-detail-page .tracker-title h1 { margin:7px 0 8px; font-size:clamp(44px,5vw,68px); line-height:.98; }
.tracker-detail-page .tracker-title { grid-area:title; min-width:0; align-self:end; }
.tracker-detail-page .tracker-title h1,.tracker-detail-page .tracker-subtitle,.tracker-detail-page .verified,.tracker-detail-page .fact-row dd { overflow-wrap:anywhere; }
.tracker-detail-page .tracker-subtitle { max-width:680px; margin:0 0 8px; color:var(--ink); font-size:18px; font-weight:720; }
.tracker-detail-page .tracker-title .alt-title { font-size:15px; }
.tracker-detail-page .badge-row { margin-top:20px; gap:8px; }
.tracker-detail-page .verified { grid-area:verify; align-self:start; margin:0; line-height:1.58; }
.tracker-detail-page .tracker-layout { grid-template-columns:minmax(0,1fr) minmax(270px,320px); gap:28px; padding-top:28px; }
.tracker-detail-page .tracker-layout > div { min-width:0; }
.tracker-detail-page .tracker-layout .panel { scroll-margin-top:105px; margin-bottom:20px; border-radius:18px; box-shadow:0 10px 30px rgba(21,26,36,.055); }
.tracker-detail-page .panel-kicker { margin:0 0 5px; color:var(--green); font-size:11px; font-weight:950; letter-spacing:.13em; text-transform:uppercase; }
.tracker-detail-page .tracker-layout .panel h2 { margin:0 0 19px; font-size:clamp(24px,2.2vw,30px); }
.tracker-detail-page .fact-list { border-top:1px solid var(--border); }
.tracker-detail-page .fact-row { grid-template-columns:minmax(140px,34%) minmax(0,1fr); min-height:55px; border-bottom:1px solid var(--border); }
.tracker-detail-page .fact-row:last-child { border-bottom:0; }
.tracker-detail-page .fact-row dt { font-weight:750; }
.tracker-detail-page .fact-row dd { padding:0; background:transparent; font-weight:720; }
.tracker-detail-page .check-list { display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; margin-bottom:0; }
.tracker-detail-page .check-list li { margin:0; padding:10px 10px 10px 34px; background:var(--paper); border-radius:10px; line-height:1.45; }
.tracker-status-columns { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.tracker-status-columns > div { padding:18px; background:rgba(33,135,90,.055); border:1px solid rgba(33,135,90,.16); border-radius:14px; }
.tracker-status-columns > .is-unknown { background:rgba(214,166,46,.065); border-color:rgba(214,166,46,.24); }
.tracker-status-columns h3 { margin:0 0 12px; font-size:17px; }
.tracker-status-columns .check-list { grid-template-columns:1fr; }
.tracker-status-columns .is-unknown .check-list li::before { content:"?"; color:#6a4d00; background:var(--gold-soft); border:1px solid #e4c35c; }
.source-path { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:0 0 18px; }
.source-path span { padding:8px 11px; background:var(--paper); border:1px solid var(--border); border-radius:9px; font-size:14px; font-weight:800; }
.source-path b { color:var(--gold); }
.tracker-detail-page .tracker-layout > aside { display:grid; gap:16px; }
.tracker-detail-page .tracker-layout > aside .panel { margin:0; padding:22px; }
.tracker-on-page { display:grid; gap:5px; }
.tracker-on-page h2 { margin-bottom:9px !important; }
.tracker-on-page a { padding:8px 10px; color:var(--muted); border-radius:8px; font-size:14px; font-weight:750; text-decoration:none; }
.tracker-on-page a:hover { color:var(--ink); background:var(--paper); }
.tracker-related { display:grid; gap:10px; }
.tracker-related h2 { margin-bottom:3px !important; }
.tracker-related > a { display:grid; gap:3px; padding:12px; color:var(--ink); background:var(--paper); border:1px solid var(--border); border-radius:11px; text-decoration:none; }
.tracker-related > a:hover { border-color:var(--gold); }
.tracker-related span { color:var(--muted); font-size:13px; }
.tracker-update time { display:inline-block; margin-bottom:7px; color:var(--muted); font-size:13px; font-weight:800; }
.tracker-update p:last-child { margin:0; font-size:14px; }
.dark-theme .tracker-detail-page .tracker-hero { color:#f7f7ff; background:radial-gradient(circle at 88% 12%,rgba(214,166,46,.16),transparent 32%),linear-gradient(135deg,#19202c,#111722); }
.dark-theme .tracker-detail-page .tracker-title h1 { color:#fff; }
.dark-theme .tracker-detail-page .tracker-subtitle { color:#f2f4f8; }
.dark-theme .tracker-detail-page .tracker-hero p,.dark-theme .tracker-detail-page .tracker-hero .muted,.dark-theme .tracker-detail-page .tracker-title .alt-title { color:#bfc8d8; }
.dark-theme .tracker-detail-page .verified { color:#dceff1; background:#10383d; border-color:#15b8c6; }
.dark-theme .tracker-detail-page .verified strong { color:#fff; }
.dark-theme .tracker-detail-page .check-list li,.dark-theme .source-path span,.dark-theme .tracker-related > a { background:#111722; }

@media (max-width:900px) {
  .tracker-detail-page .tracker-layout { grid-template-columns:1fr; }
  .tracker-detail-page .tracker-layout > aside { grid-template-columns:1fr 1fr; position:static; }
  .tracker-detail-page .tracker-layout > aside .tracker-on-page { grid-column:1/-1; }
}
@media (max-width:600px) {
  .tracker-detail-page main { padding-bottom:38px; }
  .tracker-detail-page .tracker-breadcrumbs { gap:6px; padding-top:12px; font-size:12px; }
  .tracker-detail-page .tracker-hero { grid-template-areas:"cover title" "verify verify"; grid-template-columns:78px minmax(0,1fr) !important; grid-template-rows:auto auto; column-gap:15px !important; row-gap:14px !important; margin-top:12px; padding:16px !important; border-radius:18px; }
  .tracker-detail-page .tracker-hero .cover-placeholder { border-radius:10px; }
  .tracker-detail-page .tracker-title .eyebrow { margin-bottom:5px; font-size:10px; }
  .tracker-detail-page .tracker-title h1 { margin:0 0 6px; font-size:clamp(29px,9vw,38px) !important; line-height:1; }
  .tracker-detail-page .tracker-subtitle { margin-bottom:5px; font-size:13px; line-height:1.4; }
  .tracker-detail-page .tracker-title .alt-title { font-size:12px; }
  .tracker-detail-page .badge-row { grid-column:1/-1; margin-top:12px; }
  .tracker-detail-page .badge-row { max-width:100%; overflow:hidden; }
  .tracker-detail-page .badge { max-width:100%; padding:6px 8px; font-size:10px; white-space:normal; line-height:1.2; }
  .tracker-detail-page .verified { grid-column:1/-1; margin-top:0; padding:14px 15px !important; font-size:13px; }
  .tracker-detail-page .tracker-layout { gap:18px; padding-top:18px; }
  .tracker-detail-page .tracker-layout > div > .panel { padding:20px; margin-bottom:14px; border-radius:15px; }
  .tracker-detail-page .tracker-layout .panel h2 { margin-bottom:15px; font-size:24px; }
  .tracker-detail-page .fact-row { grid-template-columns:42% minmax(0,1fr); min-height:50px; gap:10px; font-size:14px; }
  .tracker-detail-page .check-list,.tracker-status-columns { grid-template-columns:1fr; }
  .tracker-detail-page .check-list li { font-size:14px; }
  .tracker-status-columns { gap:12px; }
  .tracker-status-columns > div { padding:14px; }
  .source-path { gap:7px; }
  .source-path span { padding:7px 9px; font-size:12px; }
  .tracker-detail-page .tracker-layout > aside { grid-template-columns:1fr; }
  .tracker-detail-page .tracker-layout > aside .tracker-on-page { display:none; }
}
@media (max-width:430px) {
  .tracker-detail-page { overflow-x:clip; }
  .tracker-detail-page .tracker-hero { grid-template-columns:72px minmax(0,1fr) !important; padding:14px !important; }
  .tracker-detail-page .tracker-title h1 { font-size:28px !important; overflow-wrap:anywhere; }
  .tracker-detail-page .tracker-subtitle { font-size:12px; }
  .tracker-detail-page .fact-row { grid-template-columns:1fr; gap:2px; padding:10px 0; }
  .tracker-detail-page .fact-row dd { width:100%; }
  .tracker-detail-page .source-list li { padding-left:38px; }
}
@media (max-width:900px) {
  .tracker-directory .directory-card { grid-template-columns:145px minmax(0,1fr); }
  .tracker-directory-note { grid-template-columns:1fr; gap:12px; }
}
@media (max-width:700px) {
  .tracker-directory .directory-grid { grid-template-columns:1fr; }
}
@media (max-width:430px) {
  .tracker-directory .directory-card { grid-template-columns:1fr; }
  .tracker-directory-art { min-height:190px; }
  .tracker-directory-copy { padding:20px; }
}
/* Manhwa category hub */
.category-page{width:min(calc(100% - 40px),var(--content));margin-inline:auto;padding:18px 0 76px}.category-page .article-breadcrumbs{width:100%;margin:0 0 16px}.category-header{min-height:210px;display:flex;align-items:center;justify-content:space-between;gap:36px;padding:clamp(30px,4vw,52px);overflow:hidden;color:#fff;background:radial-gradient(circle at 82% 20%,rgba(123,104,238,.38),transparent 30%),linear-gradient(125deg,#151426,#252946 62%,#24384a);border:1px solid rgba(118,98,214,.65);border-radius:24px 24px 8px 24px}.category-heading{max-width:760px}.category-heading .eyebrow{color:#8fe6e5}.category-heading h1{margin:5px 0 10px;font:900 clamp(46px,6vw,76px)/.95 Inter,system-ui,sans-serif;letter-spacing:-.055em}.category-heading>p:last-child{max-width:650px;margin:0;color:#d5d9e7;font-size:18px;line-height:1.6}.category-mark{flex:0 0 150px;display:grid;justify-items:center;color:rgba(255,255,255,.13);transform:rotate(-5deg)}.category-mark span{font:900 112px/.72 Georgia,serif}.category-mark strong{margin-top:18px;color:#90e3e4;font-size:13px;letter-spacing:.28em}.category-nav{display:flex;align-items:center;gap:7px;margin:14px 0 28px;padding:8px;overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px}.category-nav a{flex:0 0 auto;padding:10px 15px;color:var(--muted);border-radius:9px;font-size:13px;font-weight:800}.category-nav a:hover,.category-nav a.is-active{color:#fff;background:#6750c8}.category-feature{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);overflow:hidden;margin-bottom:42px;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:0 18px 44px rgba(34,27,72,.09)}.category-feature-media{position:relative;min-height:360px;overflow:hidden;background:#161629}.category-feature-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.category-feature-media:hover img{transform:scale(1.025)}.category-feature-media>span{position:absolute;left:18px;bottom:18px;padding:8px 11px;color:#fff;background:rgba(18,17,34,.86);border:1px solid rgba(255,255,255,.22);border-radius:8px;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.category-feature-copy{align-self:center;padding:clamp(28px,4vw,48px)}.category-feature-copy h2{margin:7px 0 13px;font:850 clamp(31px,3.2vw,46px)/1.05 Inter,system-ui,sans-serif;letter-spacing:-.04em}.category-feature-copy h2 a,.category-story h3 a{color:var(--ink)}.category-feature-copy>p:not(.eyebrow){color:var(--muted);font-size:16.5px;line-height:1.7}.category-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:18px;color:var(--muted);font-size:12px;font-weight:750}.category-meta span+span::before{content:"·";margin-right:16px;color:#9a91b8}.category-read-link{display:inline-flex;gap:10px;margin-top:24px;color:#5e47bd;font-weight:900}.category-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(28px,4vw,48px);align-items:start}.category-section-title{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:8px;padding-bottom:17px;border-bottom:1px solid var(--border)}.category-section-title h2{margin:2px 0 0;font-size:31px;letter-spacing:-.035em}.category-section-title>p{max-width:280px;margin:0;color:var(--muted);font-size:13px;text-align:right}.category-story{display:grid;grid-template-columns:235px minmax(0,1fr);gap:24px;padding:22px 0;border-bottom:1px solid var(--border)}.category-story-media{position:relative;min-height:154px;overflow:hidden;border-radius:14px;background:#171627}.category-story-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.category-story-media:hover img{transform:scale(1.03)}.category-story-media span{position:absolute;left:10px;bottom:10px;padding:6px 8px;color:#fff;background:rgba(20,18,39,.84);border-radius:6px;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.story-type{margin:0 0 6px;color:#6650c9;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.category-story h3{margin:0 0 8px;font:850 23px/1.17 Inter,system-ui,sans-serif;letter-spacing:-.025em}.category-story h3 a:hover{color:#654bc8}.category-story>div>p:not(.story-type){margin:0;color:var(--muted);font-size:14px;line-height:1.55}.category-sidebar{position:sticky;top:92px;display:grid;gap:16px}.category-side-card{padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 12px 30px rgba(35,27,78,.06)}.category-side-card h2{margin:4px 0 10px;font-size:21px;letter-spacing:-.025em}.category-side-card p:not(.eyebrow){color:var(--muted);font-size:13.5px;line-height:1.6}.category-side-card>a{color:#6048bd;font-size:13px;font-weight:850}.category-side-card ol{display:grid;gap:2px;margin:12px 0 0;padding:0;list-style:none}.category-side-card li a{display:grid;grid-template-columns:28px 1fr;padding:10px 4px;border-top:1px solid var(--border)}.category-side-card li span{grid-row:1/3;color:#6a54c7;font-size:11px;font-weight:900}.category-side-card li strong{color:var(--ink);font-size:13px}.category-side-card li small{margin-top:2px;color:var(--muted);font-size:11px}.category-about{margin-top:52px;padding:clamp(26px,4vw,42px);background:linear-gradient(135deg,rgba(105,80,200,.08),rgba(49,176,187,.07));border:1px solid var(--border);border-radius:18px}.category-about h2{max-width:720px;margin:5px 0 20px;font-size:clamp(28px,3vw,40px);letter-spacing:-.04em}.category-about>div{display:grid;grid-template-columns:1fr 1fr;gap:32px}.category-about>div p{margin:0;color:var(--muted);line-height:1.72}
@media(max-width:960px){.category-feature{grid-template-columns:1fr 1fr}.category-layout{grid-template-columns:minmax(0,1fr) 250px;gap:26px}.category-story{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:760px){.category-page{width:min(calc(100% - 32px),var(--content))}.category-header{min-height:auto;padding:32px 26px}.category-mark{display:none}.category-feature{grid-template-columns:1fr}.category-feature-media{min-height:260px}.category-layout{grid-template-columns:1fr}.category-sidebar{position:static;grid-template-columns:1fr 1fr}.category-side-card.popular{grid-column:1/-1}}
@media(max-width:560px){.category-page{width:min(calc(100% - 24px),var(--content));padding-top:12px}.category-header{border-radius:18px 18px 6px 18px}.category-heading h1{font-size:45px}.category-heading>p:last-child{font-size:16px}.category-nav{margin-bottom:20px}.category-feature-media{min-height:210px}.category-feature-copy{padding:24px 20px 28px}.category-feature-copy h2{font-size:30px}.category-section-title{display:block}.category-section-title>p{margin-top:6px;text-align:left}.category-story{grid-template-columns:118px minmax(0,1fr);gap:15px;padding:18px 0}.category-story-media{min-height:116px}.category-story h3{font-size:18px}.category-story>div>p:not(.story-type){display:none}.category-meta{gap:5px 10px}.category-meta span+span::before{margin-right:10px}.category-sidebar,.category-about>div{grid-template-columns:1fr}.category-side-card.popular{grid-column:auto}}

/* Category shell follows the home container and never overflows. */
.category-page{width:min(calc(100% - 32px),var(--content));max-width:var(--content);overflow:clip}.category-page>*,.category-heading,.category-feature>*,.category-layout>*,.category-story>*{min-width:0;max-width:100%}.category-header,.category-nav,.category-feature,.category-layout,.category-about{width:100%}.category-heading h1,.category-heading p,.category-feature-copy h2{overflow-wrap:anywhere}.category-feature-media img,.category-story-media img{display:block;max-width:100%}
@media(min-width:901px){.category-page{width:min(calc(100% - 32px),var(--content))!important;margin-inline:auto!important}}
@media(max-width:760px){.category-feature{grid-template-columns:minmax(0,1fr)}.category-layout{grid-template-columns:minmax(0,1fr)}.category-nav{max-width:100%;overscroll-behavior-inline:contain}.category-sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:600px){html,body{max-width:100%;overflow-x:hidden}.category-page{width:min(calc(100% - 24px),var(--content));margin-inline:auto}.category-page .article-breadcrumbs{padding-inline:0}.category-header{padding:28px 20px}.category-nav{padding:7px}.category-nav a{padding:9px 13px}.category-sidebar{grid-template-columns:minmax(0,1fr)}.category-story{grid-template-columns:108px minmax(0,1fr)}}

/* Compact category composition: restrained feature and balanced 72/28 columns. */
.category-header{min-height:180px;padding:clamp(27px,3vw,40px)}
.category-heading h1{font-size:clamp(44px,5vw,64px)}
.category-feature{grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);min-height:0;margin:20px 0 34px;border-radius:18px}
.category-feature-media{min-height:280px;max-height:310px}
.category-feature-copy{padding:clamp(25px,3vw,38px)}
.category-feature-copy h2{max-width:650px;margin:5px 0 10px;font-size:clamp(29px,2.65vw,39px);line-height:1.08}
.category-feature-copy>p:not(.eyebrow){max-width:680px;margin:0;font-size:15.5px;line-height:1.62}
.category-feature-copy .category-meta{margin-top:14px}
.category-feature-copy .category-read-link{margin-top:18px}
.category-layout{grid-template-columns:minmax(0,2.45fr) minmax(280px,.95fr);gap:clamp(28px,3vw,38px)}
.category-story{grid-template-columns:210px minmax(0,1fr);gap:21px;padding:19px 0}
.category-story-media{min-height:138px;max-height:148px}
.category-sidebar{top:86px}
@media(max-width:960px){.category-feature{grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr)}.category-feature-media{min-height:265px}.category-layout{grid-template-columns:minmax(0,1fr) 260px;gap:25px}.category-story{grid-template-columns:175px minmax(0,1fr)}}
@media(max-width:760px){.category-header{min-height:auto}.category-feature{grid-template-columns:minmax(0,1fr);margin-top:16px}.category-feature-media{min-height:230px;max-height:260px}.category-layout{grid-template-columns:minmax(0,1fr)}.category-sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:600px){.category-feature-media{min-height:190px;max-height:215px}.category-feature-copy{padding:22px 19px 25px}.category-feature-copy h2{font-size:28px}.category-story{grid-template-columns:106px minmax(0,1fr);gap:14px}.category-story-media{min-height:108px;max-height:118px}.category-sidebar{grid-template-columns:minmax(0,1fr)}}

/* Category links stay readable against the dark editorial surfaces. */
.dark-theme .category-read-link,
.dark-theme .category-side-card>a,
.dark-theme .category-side-card li span,
.dark-theme .story-type{
  color:#9de8eb;
}
.dark-theme .category-story h3 a:hover{
  color:#b7f4f2;
}

/* Final compact category masthead and lead story. */
.category-header{min-height:0;height:auto;padding:22px 30px;border-radius:17px 17px 6px 17px}
.category-heading{max-width:none;display:grid;grid-template-columns:auto 1fr;column-gap:22px;align-items:center}
.category-heading .eyebrow{grid-column:1;margin:0;white-space:nowrap}
.category-heading h1{grid-column:1;margin:4px 0 0;font-size:43px;line-height:1}
.category-heading>p:last-child{grid-column:2;grid-row:1/3;max-width:650px;font-size:15px;line-height:1.55}
.category-mark{display:none}
.category-feature{grid-template-columns:minmax(230px,.5fr) minmax(0,1.5fr);margin:16px 0 30px;border-radius:15px}
.category-feature-media{min-height:185px;max-height:205px}
.category-feature-copy{padding:22px 28px}
.category-feature-copy h2{max-width:none;margin:4px 0 8px;font-size:32px;line-height:1.08}
.category-feature-copy>p:not(.eyebrow){max-width:760px;font-size:14px;line-height:1.55}
.category-feature-copy .category-meta{margin-top:11px;font-size:11px}
.category-feature-copy .category-read-link{margin-top:12px;font-size:13px}
.category-feature-media>span{left:12px;bottom:12px;padding:6px 8px;font-size:9px}
@media(max-width:960px){.category-heading{grid-template-columns:auto 1fr}.category-feature{grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr)}.category-feature-media{min-height:190px;max-height:210px}.category-feature-copy h2{font-size:29px}}
@media(max-width:760px){.category-header{padding:24px 21px}.category-heading{display:block}.category-heading h1{font-size:40px}.category-heading>p:last-child{margin-top:10px;font-size:15px}.category-feature{grid-template-columns:150px minmax(0,1fr)}.category-feature-media{min-height:190px;max-height:none}.category-feature-copy{padding:19px}.category-feature-copy h2{font-size:25px}.category-feature-copy>p:not(.eyebrow){display:none}.category-feature-copy .category-meta span:last-child{display:none}}
@media(max-width:520px){.category-feature{grid-template-columns:115px minmax(0,1fr)}.category-feature-media{min-height:170px}.category-feature-copy{padding:16px 14px}.category-feature-copy h2{font-size:21px}.category-feature-copy .category-meta{display:none}.category-feature-copy .category-read-link{margin-top:12px}}

/* Short category copy uses the full available row. */
.category-heading{width:100%;grid-template-columns:235px minmax(0,1fr)}
.category-heading>p:last-child{width:100%;max-width:none}
.category-feature-copy{width:100%;min-width:0}
.category-feature-copy h2,.category-feature-copy>p:not(.eyebrow){width:100%;max-width:none}
@media(max-width:960px){.category-heading{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:760px){.category-heading{display:block}.category-heading>p:last-child{width:auto}}

/* Best-list article QA: completed Manhwa, desktop and mobile. */
body[data-article-slug="best-completed-manhwa"] .article-header{max-width:980px;margin-bottom:20px}
body[data-article-slug="best-completed-manhwa"] .article-content-layout{grid-template-columns:minmax(0,1fr) 260px;gap:32px}
body[data-article-slug="best-completed-manhwa"] .article-main-column>.article-source-visual{grid-template-columns:165px minmax(0,1fr);gap:24px;margin-bottom:17px;padding:18px;border-radius:16px}
body[data-article-slug="best-completed-manhwa"] .article-source-visual figcaption>strong{font-size:28px;line-height:1.12}
body[data-article-slug="best-completed-manhwa"] .article-source-visual figcaption p{margin:10px 0;font-size:14px!important;line-height:1.55!important}
body[data-article-slug="best-completed-manhwa"] .article-source-visual figcaption small{font-size:11.5px}
body[data-article-slug="best-completed-manhwa"] .article-main-column .answer-box{margin-bottom:15px;padding:18px 21px}
body[data-article-slug="best-completed-manhwa"] .article-main-column .article-body{padding:31px 34px}
body[data-article-slug="best-completed-manhwa"] .article-body>h2{margin-top:36px}
body[data-article-slug="best-completed-manhwa"] .article-body>h3{margin-top:25px;padding-top:18px;border-top:1px solid var(--border)}
body[data-article-slug="best-completed-manhwa"] .article-body>h2+h3{padding-top:0;border-top:0}
body[data-article-slug="best-completed-manhwa"] .article-sidebar{top:84px;gap:14px}
body[data-article-slug="best-completed-manhwa"] .article-toc{padding:18px}
body[data-article-slug="best-completed-manhwa"] .article-toc a{min-height:34px;padding-block:5px}
body[data-article-slug="best-completed-manhwa"] .article-ad{min-height:170px}
body[data-article-slug="best-completed-manhwa"] .article-ad:nth-child(3){min-height:125px}

/* Completed-manhwa guide: final visual QA adjustments. */
@media(min-width:981px){
  body[data-article-slug="best-completed-manhwa"] .article-header{max-width:1100px;margin-bottom:18px}
  body[data-article-slug="best-completed-manhwa"] .article-header h1{max-width:1080px;font-size:clamp(40px,3.15vw,46px);line-height:1.04}
  body[data-article-slug="best-completed-manhwa"] .article-main-column>.article-source-visual{grid-template-columns:205px minmax(0,1fr);gap:25px;padding:18px 20px}
  body[data-article-slug="best-completed-manhwa"] .article-source-cover{min-height:142px}
  body[data-article-slug="best-completed-manhwa"] .article-source-cover img{height:100%;object-fit:cover}
}

/* Article shells use the same responsive side gutters as category hubs. */
@media(min-width:901px){
  body:has(main.article) main.article{
    width:min(calc(100% - 32px),var(--content)) !important;
    margin-inline:auto !important;
  }
}
@media(max-width:980px){body[data-article-slug="best-completed-manhwa"] .article-content-layout{grid-template-columns:minmax(0,1fr) 225px;gap:22px}body[data-article-slug="best-completed-manhwa"] .article-main-column>.article-source-visual{grid-template-columns:140px minmax(0,1fr);gap:20px}}
@media(max-width:760px){body[data-article-slug="best-completed-manhwa"] .article-content-layout{grid-template-columns:minmax(0,1fr)}body[data-article-slug="best-completed-manhwa"] .article-sidebar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body[data-article-slug="best-completed-manhwa"] .article-toc{grid-column:1/-1}body[data-article-slug="best-completed-manhwa"] .article-ad:nth-child(3){display:none}}
@media(max-width:600px){body[data-article-slug="best-completed-manhwa"] main.article{padding-top:10px}body[data-article-slug="best-completed-manhwa"] .article-breadcrumbs{margin-bottom:10px;font-size:12px}body[data-article-slug="best-completed-manhwa"] .article-header{margin-bottom:12px;padding-block:18px}body[data-article-slug="best-completed-manhwa"] .article-header h1{margin-block:6px 10px;font-size:clamp(28px,9.2vw,32px);line-height:1.03}body[data-article-slug="best-completed-manhwa"] .article-header .dek{font-size:14.5px;line-height:1.55}body[data-article-slug="best-completed-manhwa"] .article-header .byline{margin-top:14px;padding-top:13px;font-size:12px;line-height:1.45}body[data-article-slug="best-completed-manhwa"] .article-header .article-tools{gap:7px;margin-top:10px}body[data-article-slug="best-completed-manhwa"] .article-header .article-tools .share-label{font-size:10px}body[data-article-slug="best-completed-manhwa"] .article-header .article-tools .share-button{min-height:34px;padding:7px 10px;font-size:11px}body[data-article-slug="best-completed-manhwa"] .article-main-column>.article-source-visual{grid-template-columns:96px minmax(0,1fr);gap:13px;margin-bottom:12px;padding:11px;border-radius:13px}body[data-article-slug="best-completed-manhwa"] .article-source-cover{min-height:96px}body[data-article-slug="best-completed-manhwa"] .article-source-cover img{height:100%;object-fit:cover}body[data-article-slug="best-completed-manhwa"] .article-source-visual figcaption>span{margin-bottom:5px;font-size:9px}body[data-article-slug="best-completed-manhwa"] .article-source-visual figcaption>strong{font-size:18px;line-height:1.12}body[data-article-slug="best-completed-manhwa"] .article-source-visual figcaption p,body[data-article-slug="best-completed-manhwa"] .article-source-visual figcaption small{display:none}body[data-article-slug="best-completed-manhwa"] .article-main-column .answer-box{margin-bottom:10px;padding:14px 15px;font-size:13.5px;line-height:1.55}body[data-article-slug="best-completed-manhwa"] .article-main-column .article-body{padding:14px 0;background:transparent;border:0;border-radius:0}body[data-article-slug="best-completed-manhwa"] .article-body>h2{margin-top:28px;font-size:23px}body[data-article-slug="best-completed-manhwa"] .article-body>h3{margin-top:20px;padding-top:14px;font-size:18px}body[data-article-slug="best-completed-manhwa"] .article-body>p{font-size:15.5px;line-height:1.66}body[data-article-slug="best-completed-manhwa"] .table-wrap{margin-inline:0;border-radius:10px}body[data-article-slug="best-completed-manhwa"] .table-wrap table{min-width:390px}body[data-article-slug="best-completed-manhwa"] .table-wrap th,body[data-article-slug="best-completed-manhwa"] .table-wrap td{padding:9px 10px;font-size:11px}body[data-article-slug="best-completed-manhwa"] .article-sidebar{grid-template-columns:minmax(0,1fr)}body[data-article-slug="best-completed-manhwa"] .article-toc{grid-column:auto}body[data-article-slug="best-completed-manhwa"] .article-ad{min-height:110px}}

/* Compact editorial masthead: preserve impact without delaying the article. */
@media(min-width:901px){
  body:has(main.article) .article-header{
    display:grid;
    grid-template-columns:minmax(0,auto) auto;
    column-gap:22px;
    align-items:start;
    max-width:1100px;
    margin-bottom:16px;
    padding:4px 0 2px;
  }
  body:has(main.article) .article-header>.eyebrow,
  body:has(main.article) .article-header>h1,
  body:has(main.article) .article-header>.dek{grid-column:1/-1}
  body:has(main.article) .article-header h1{
    max-width:1080px;
    margin:6px 0 10px;
    font-size:clamp(36px,2.8vw,42px);
    line-height:1.04;
  }
  body:has(main.article) .article-header .dek{
    max-width:880px;
    font-size:16.5px;
    line-height:1.52;
  }
  body:has(main.article) .article-header .byline{
    grid-column:1;
    width:auto;
    max-width:none;
    margin-top:13px;
    padding:12px 24px 0 0;
    white-space:nowrap;
  }
  body:has(main.article) .article-header .article-tools{
    grid-column:2;
    align-self:end;
    width:auto;
    margin:13px 0 0;
    padding-top:5px;
  }
}

/* Manhwa category QA: prioritize the story feed and compact supporting content. */
@media(min-width:961px){
  .manhwa-category .category-layout{
    grid-template-columns:minmax(0,1fr) 290px;
    gap:34px;
  }
  .manhwa-category .category-sidebar{gap:12px}
  .manhwa-category .category-side-card{padding:18px}
  .manhwa-category .category-side-card h2{font-size:19px}
  .manhwa-category .category-side-card li a{padding:8px 2px}
  .manhwa-category .category-about{
    margin-top:38px;
    padding:30px 34px;
  }
  .manhwa-category .category-about h2{
    margin-bottom:15px;
    font-size:32px;
  }
  .manhwa-category .category-about>div{gap:26px}
  .manhwa-category .category-about>div p{font-size:14px;line-height:1.62}
}
@media(max-width:600px){
  .manhwa-category{padding-bottom:52px}
  .manhwa-category .category-layout{gap:22px}
  .manhwa-category .category-sidebar{gap:10px}
  .manhwa-category .category-side-card{
    padding:15px 16px;
    border-radius:13px;
    box-shadow:0 8px 20px rgba(35,27,78,.05);
  }
  .manhwa-category .category-side-card h2{margin:2px 0 7px;font-size:18px}
  .manhwa-category .category-side-card.popular ol{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:6px;
    margin-top:8px;
  }
  .manhwa-category .category-side-card.popular li a{
    grid-template-columns:20px minmax(0,1fr);
    height:100%;
    padding:8px 5px;
    border:1px solid var(--border);
    border-radius:9px;
  }
  .manhwa-category .category-side-card.popular li small{display:none}
  .manhwa-category .category-side-card:not(.popular){
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:3px 12px;
  }
  .manhwa-category .category-side-card:not(.popular) .eyebrow,
  .manhwa-category .category-side-card:not(.popular) h2{grid-column:1}
  .manhwa-category .category-side-card:not(.popular)>p:not(.eyebrow){display:none}
  .manhwa-category .category-side-card:not(.popular)>a{
    grid-column:2;
    grid-row:1/3;
    align-self:center;
    white-space:nowrap;
    font-size:11px;
  }
  .manhwa-category .category-about{
    margin-top:30px;
    padding:20px 18px;
    border-radius:14px;
  }
  .manhwa-category .category-about h2{
    margin:4px 0 13px;
    font-size:25px;
    line-height:1.12;
  }
  .manhwa-category .category-about>div{gap:12px}
  .manhwa-category .category-about>div p{font-size:13.5px;line-height:1.58}
}

/* Best-completed list: use the full reading column beside the sidebar. */
body[data-article-slug="best-completed-manhwa"]:has(main.article) .article-body>h2,
body[data-article-slug="best-completed-manhwa"]:has(main.article) .article-body>h3,
body[data-article-slug="best-completed-manhwa"]:has(main.article) .article-body>p,
body[data-article-slug="best-completed-manhwa"]:has(main.article) .article-body>ul{
  width:100%;
  max-width:none;
}

/* Shared desktop columns: a 320px rail safely hosts a 300px ad unit. */
@media(min-width:981px){
  .manhwa-category .category-layout,
  body:has(main.article) .article-content-layout{
    grid-template-columns:minmax(0,1fr) 320px;
    gap:32px;
  }
  body:has(main.article) .article-ad{
    width:100%;
    padding-inline:9px;
  }
  body:has(main.article) .article-ad>ins,
  body:has(main.article) .article-ad>iframe{
    width:300px;
    max-width:100%;
    margin-inline:auto;
  }
}

/* Unified editorial rails across categories, articles and tracker details. */
body[data-article-slug]:has(main.article) .article-body>h2,
body[data-article-slug]:has(main.article) .article-body>h3,
body[data-article-slug]:has(main.article) .article-body>p,
body[data-article-slug]:has(main.article) .article-body>ul,
body[data-article-slug]:has(main.article) .article-body>ol{
  width:100%;
  max-width:none;
}
@media(min-width:981px){
  .category-page .category-layout,
  .news-page .news-layout,
  body:has(main.article) .article-content-layout,
  .tracker-layout,
  .tracker-detail-page .tracker-layout{
    grid-template-columns:minmax(0,1fr) 320px;
    gap:32px;
  }
  .category-page .category-sidebar,
  .news-page .news-sidebar,
  body:has(main.article) .article-sidebar,
  .tracker-layout>aside{
    width:320px;
    min-width:320px;
    max-width:320px;
  }
  .news-page .news-ad,
  body:has(main.article) .article-ad{
    width:100%;
    padding-inline:9px;
  }
  .news-page .news-ad>ins,
  .news-page .news-ad>iframe,
  body:has(main.article) .article-ad>ins,
  body:has(main.article) .article-ad>iframe{
    display:block;
    width:300px;
    max-width:100%;
    margin-inline:auto;
  }
}
@media(max-width:980px){
  .category-page .category-sidebar,
  .news-page .news-sidebar,
  body:has(main.article) .article-sidebar,
  .tracker-layout>aside{
    width:auto;
    min-width:0;
    max-width:none;
  }
}

/* Review category uses the shared story rhythm without inventing articles. */
.reviews-category .review-method-number{
  display:grid;
  place-content:center;
  gap:7px;
  text-align:center;
  color:#fff;
  background:linear-gradient(145deg,#1a1730,#53459a 58%,#277f89);
}
.reviews-category .review-method-number>span{
  position:static;
  padding:0;
  color:#8fe6e5;
  background:none;
  font-size:27px;
  letter-spacing:-.04em;
}
.reviews-category .review-method-number>strong{font-size:11px;letter-spacing:.16em}
.category-ad{width:100%;min-height:250px;display:grid;place-content:center;gap:7px;text-align:center;color:var(--muted);background:linear-gradient(145deg,rgba(105,80,200,.06),rgba(49,176,187,.06));border:1px dashed var(--border);border-radius:16px}
.category-ad span{font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.category-ad strong{color:var(--ink);font-size:22px}.category-ad small{font-size:11px}
@media(min-width:981px){.category-ad{width:320px;padding-inline:9px}.category-ad>ins,.category-ad>iframe{display:block;width:300px;max-width:100%;margin-inline:auto}}
.review-principles{margin-top:46px;padding:30px;background:linear-gradient(135deg,rgba(105,80,200,.07),rgba(49,176,187,.06));border:1px solid var(--border);border-radius:18px}
.review-principles-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:28px;align-items:end;margin-bottom:22px}.review-principles-heading .eyebrow{grid-column:1/-1;margin-bottom:-20px}.review-principles-heading h2{margin:0;font-size:32px;letter-spacing:-.035em}.review-principles-heading>p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.review-principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.review-principles-grid article{position:relative;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:14px}.review-principles-grid span{display:block;margin-bottom:13px;color:#6952c9;font-size:12px;font-weight:900;letter-spacing:.1em}.review-principles-grid h3{margin:0 0 8px;font-size:18px;letter-spacing:-.02em}.review-principles-grid p{margin:0;color:var(--muted);font-size:13px;line-height:1.58}
@media(max-width:760px){.review-principles{margin-top:32px;padding:22px 18px}.review-principles-heading{display:block}.review-principles-heading .eyebrow{margin-bottom:5px}.review-principles-heading h2{font-size:27px}.review-principles-heading>p{margin-top:8px}.review-principles-grid{grid-template-columns:1fr;margin-top:18px}.review-principles-grid article{padding:17px}.review-principles-grid span{margin-bottom:7px}}

/* Final compact header controls: desktop search, mobile icon controls. */
.header-actions .header-theme-button{width:42px;height:42px;min-height:42px}
.header-actions .header-search{width:clamp(260px,23.5vw,320px);max-width:none;min-height:44px;display:grid;grid-template-columns:26px minmax(88px,1fr) auto;align-items:center;gap:4px;margin:0;padding:4px 5px 4px 12px}
.header-actions .header-search svg{width:20px;height:20px}
.header-actions .header-search input{min-width:0;min-height:34px;width:100%;height:34px;padding:0 3px;color:#fff;background:transparent;border:0;border-radius:0;outline:0;font-size:14px}
.header-actions .header-search select{flex:0 0 auto;height:34px;max-width:94px;padding-left:12px;font-size:13px}
.header-actions .header-search+.search-button{display:none}
@media(max-width:1120px){.header-actions .header-search{width:230px}.header-actions .header-search select{max-width:84px;padding-left:10px}}
@media(max-width:900px){.header-actions .header-search{display:none}.header-actions .header-search+.search-button{display:inline-grid}.header-actions .header-theme-button{display:grid}}

/* Accessible labels must not occupy search-form grid cells. */
.sr-only {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

/* Compact three-column footer after removing duplicate discovery groups. */
.site-footer .footer-grid {
  grid-template-columns:minmax(280px,1.6fr) minmax(170px,.8fr) minmax(190px,.9fr);
  gap:clamp(34px,6vw,82px);
}
.site-footer {
  margin-top:clamp(34px,4.5vw,56px);
  padding:38px 0 18px;
}
.site-footer .footer-grid h2,
.site-footer .footer-grid h3 { margin-bottom:10px; }
.site-footer .footer-links { gap:7px; }
.site-footer .footer-bottom {
  min-height:44px;
  margin-top:24px;
  padding-top:17px;
}
@media (max-width:760px) {
  .site-footer .footer-grid { grid-template-columns:1fr 1fr; gap:30px 24px; }
  .site-footer .footer-brand { grid-column:1/-1; }
}
@media (max-width:460px) {
  .site-footer .footer-grid { grid-template-columns:1fr; }
  .site-footer .footer-brand { grid-column:auto; }
}

/* Compact shared footer: one row on desktop, readable groups on mobile. */
.site-footer {
  margin-top:clamp(32px,4vw,50px);
  padding:30px 0 14px;
}
.site-footer .footer-grid {
  grid-template-columns:minmax(260px,1.45fr) minmax(120px,.62fr) minmax(110px,.55fr) minmax(250px,1.15fr);
  gap:clamp(24px,4vw,56px);
}
.site-footer .footer-grid h2 { font-size:25px; }
.site-footer .footer-grid h3 { margin-bottom:8px; font-size:12px; }
.site-footer .footer-grid p { max-width:330px; margin-block:6px 0; font-size:14px; line-height:1.55; }
.site-footer .footer-links { gap:4px; }
.site-footer .footer-links a { font-size:14px; line-height:1.45; }
.site-footer .footer-information .footer-links { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
.site-footer .footer-bottom {
  min-height:38px;
  margin-top:20px;
  padding-top:13px;
  font-size:12px;
}
@media (max-width:900px) {
  .site-footer .footer-grid { grid-template-columns:1.2fr .7fr .7fr; gap:24px 32px; }
  .site-footer .footer-brand { grid-column:1/-1; }
  .site-footer .footer-information { grid-column:auto; }
  .site-footer .footer-information .footer-links { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .site-footer { margin-top:30px; padding:26px 0 12px; }
  .site-footer .footer-grid { grid-template-columns:1fr 1fr; gap:22px 20px; }
  .site-footer .footer-brand { grid-column:1/-1; }
  .site-footer .footer-information { grid-column:1/-1; }
  .site-footer .footer-information .footer-links { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:20px; }
  .site-footer .footer-bottom { display:grid; gap:3px; margin-top:18px; }
}

/* Shared Trust Center shell for About, Contact, Privacy, Terms and Corrections. */
.trust-center-page .trust-layout {
  width:min(90%,var(--content)) !important;
  max-width:var(--content);
  grid-template-columns:minmax(0,1fr) 320px !important;
  gap:32px !important;
  margin-inline:auto !important;
  padding:22px 0 64px;
}
.trust-center-page .trust-nav {
  grid-column:2 !important;
  grid-row:1 !important;
  top:92px;
  max-height:calc(100vh - 112px);
  overflow-y:auto;
  padding:16px;
  font-size:15px;
}
.trust-center-page .trust-nav::before {
  padding:0 10px 8px;
  font-size:11px;
}
.trust-center-page .trust-nav a {
  min-height:38px;
  display:flex;
  align-items:center;
  padding:8px 11px 8px 15px;
}
.trust-center-page .trust-copy {
  grid-column:1 !important;
  grid-row:1 !important;
  min-width:0;
  width:100%;
  padding:clamp(30px,3vw,42px);
}
.trust-center-page .trust-copy h1 {
  max-width:none;
  margin-bottom:14px;
  font-family:Inter,system-ui,sans-serif;
  font-size:clamp(42px,4.5vw,60px);
  font-weight:900;
  line-height:1.02;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.trust-center-page .trust-copy h2 { margin-top:38px; }
.trust-center-page .trust-copy > p,
.trust-center-page .trust-copy > ul,
.trust-center-page .trust-copy > ol,
.trust-center-page .trust-copy > aside,
.trust-center-page .trust-copy > div,
.trust-center-page .trust-copy > table {
  max-width:none;
}
.trust-center-page .policy-table-wrap { width:100%; }

@media (max-width:900px) {
  .trust-center-page .trust-layout {
    width:min(calc(100% - 32px),var(--content)) !important;
    grid-template-columns:1fr !important;
    gap:16px;
    padding-top:16px;
  }
  .trust-center-page .trust-nav {
    grid-column:1 !important;
    grid-row:1 !important;
    position:static;
    display:flex;
    max-height:none;
    overflow-x:auto;
    overflow-y:hidden;
    white-space:nowrap;
    scrollbar-width:none;
  }
  .trust-center-page .trust-nav::-webkit-scrollbar { display:none; }
  .trust-center-page .trust-nav a { flex:0 0 auto; }
  .trust-center-page .trust-copy { grid-column:1 !important; grid-row:2 !important; }
}
@media (max-width:600px) {
  .trust-center-page .trust-layout {
    width:min(calc(100% - 24px),var(--content)) !important;
    padding-bottom:44px;
  }
  .trust-center-page .trust-copy { padding:27px 20px; }
  .trust-center-page .trust-copy h1 { font-size:38px; }
}

/* Compact search hero: title and supporting copy share one desktop row. */
@media (min-width:761px) {
  .search-hero > .container { padding:28px clamp(34px,4vw,48px) 30px; }
  .search-hero-heading {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(390px,1.1fr) minmax(330px,.9fr);
    align-items:center;
    gap:clamp(28px,5vw,72px);
  }
  .search-hero-heading .search-hero-copy { margin:0; }
  .search-page .search-page-form { margin-top:22px; }
  .search-hero > .container::after { bottom:-48%; font-size:112px; }
}

/* Category pagination is created only when a feed contains more than ten stories. */
.category-pagination {
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
  width:100%;
  margin-top:28px;
  padding-top:22px;
  border-top:1px solid var(--border);
}
.category-page-numbers { display:flex; justify-content:center; gap:8px; }
.category-page-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:9px 13px;
  border:1px solid var(--border);
  border-radius:12px;
  color:var(--text);
  background:var(--surface);
  font-weight:800;
  text-decoration:none;
}
.category-page-link:hover,
.category-page-link:focus-visible,
.category-page-link.is-current {
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--brand),var(--accent));
}
.category-page-direction:last-child { justify-self:end; }
.category-page-link.is-disabled { opacity:.42; pointer-events:none; }
@media (max-width:600px) {
  .category-pagination { grid-template-columns:1fr 1fr; }
  .category-page-numbers { grid-column:1 / -1; grid-row:1; }
  .category-page-direction { grid-row:2; }
}

/* Homepage audit refinements: shorter entry point and data-aware news cards. */
@media (min-width:761px) {
  .home-hero-shell { min-height:500px; padding:clamp(32px,4vw,50px); }
  .home-hero-copy h1 { font-size:clamp(46px,5.25vw,66px); }
  .home-lead-card { min-height:360px; }
  .home-screen-grid.news-count-1 { grid-template-columns:1fr; }
  .home-screen-grid.news-count-1 article {
    display:grid;
    grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);
    min-height:290px;
  }
  .home-screen-grid.news-count-1 img { height:100%; min-height:290px; }
  .home-screen-grid.news-count-1 article > div { align-self:center; padding:clamp(28px,5vw,58px); }
  .home-screen-grid.news-count-1 h3 { font-size:clamp(28px,3vw,40px); }
  .home-screen-grid.news-count-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .home-hero { padding-top:18px; }
  .home-hero-shell { gap:24px; padding:24px 19px; }
  .home-hero-copy h1 { margin:13px 0; font-size:clamp(36px,10.5vw,46px); line-height:1; }
  .home-hero-copy > p:not(.home-kicker) { font-size:16px; line-height:1.55; }
  .home-hero-actions { margin-top:22px; }
  .home-proof { margin-top:20px; }
  .home-lead-card { min-height:270px; }
  .home-feature-card p,.home-screen-grid p { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
  .home-feature-card.mobile-extra { display:none; }
  .home-trust .container { gap:20px; padding:26px 20px; }
  .home-trust h2 { font-size:clamp(28px,8vw,38px); }
}
@media (max-width:520px) {
  .home-page .section-heading { align-items:flex-end; gap:10px; }
  .home-page .section-heading h2 { font-size:27px; line-height:1.08; }
  .home-page .section-heading > a { flex:0 0 auto; white-space:nowrap; font-size:12px; }
  .home-pillar-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .home-pillar { min-height:185px; padding:18px 15px; border-radius:16px; }
  .home-pillar h3 { margin:17px 0 7px; font-size:26px; }
  .home-pillar p { display:-webkit-box; overflow:hidden; margin-bottom:14px; font-size:13px; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
  .home-pillar b { font-size:12px; }
  .home-screen-grid.news-count-1 img { height:180px; }
}

/* Readable status pills on dark surfaces. */
.dark-theme .badge.confirmed {
  color:#b8fff0;
  background:#153d3d;
  border:1px solid rgba(112,235,224,.28);
}
.dark-theme .badge.released {
  color:#c8ddff;
  background:#203655;
  border:1px solid rgba(132,175,245,.28);
}
.dark-theme .badge.unknown {
  color:#ffe59a;
  background:#493b19;
  border:1px solid rgba(237,198,93,.3);
}
.dark-theme .home-page .section-heading > a,
.dark-theme .home-page .home-feature-card .card-link {
  color:#aaa0ff;
}
.dark-theme .home-page .section-heading > a:hover,
.dark-theme .home-page .home-feature-card .card-link:hover {
  color:#79ebe6;
}

/* Compact homepage scale: preserve hierarchy without oversized scroll blocks. */
.home-page main > .section { padding:32px 0; }
.home-page .home-pillar { min-height:215px; padding:22px; }
.home-page .home-pillar h3 { margin-top:20px; font-size:31px; }
.home-page .home-pillar p { display:-webkit-box; overflow:hidden; font-size:14px; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.home-page .home-feature-card { min-height:155px; gap:18px; padding:20px; }
.home-page .home-feature-card:not(.feature-large) { grid-template-columns:72px minmax(0,1fr); min-height:145px; gap:14px; padding:15px 17px; }
.home-page .home-feature-card:not(.feature-large) p { display:-webkit-box; overflow:hidden; font-size:13.5px; line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.home-page .home-feature-card:not(.feature-large) h3 { margin:7px 0 5px; font-size:19px; }
.home-page .home-feature-card:not(.feature-large) .feature-number { font-size:45px; }
.home-page .home-feature-card.feature-large { min-height:0; }
.home-page .home-feature-card.feature-large > img { height:205px; }
.home-page .home-feature-card.feature-large > div { padding:22px; }
.home-page .home-feature-card.feature-large h3 { font-size:clamp(27px,2.7vw,37px); }
.home-page .home-feature-card h3 { font-size:21px; }
.home-page .home-screen-grid.news-count-1 article { min-height:250px; }
.home-page .home-screen-grid.news-count-1 img { min-height:250px; }
.home-page .home-screen-grid.news-count-1 article > div { padding:30px 36px; }
.home-page .home-trust .container { gap:32px; padding:32px 38px; }
.home-page .home-trust h2 { font-size:clamp(29px,3.2vw,41px); }
@media (min-width:761px) {
  .home-page .home-hero-shell { min-height:455px; padding:34px 42px; }
  .home-page .home-hero-copy h1 { font-size:clamp(44px,4.6vw,58px); }
  .home-page .home-lead-card { min-height:325px; }
  .home-page .home-screen-grid.news-count-1 article {
    grid-template-columns:280px minmax(0,1fr);
    min-height:205px;
  }
  .home-page .home-screen-grid.news-count-1 img { min-height:205px; height:205px; }
  .home-page .home-screen-grid.news-count-1 article > div { padding:22px 28px; }
  .home-page .home-screen-grid.news-count-1 h3 { font-size:clamp(25px,2.4vw,33px); }
}
@media (max-width:760px) {
  .home-page main > .section { padding:25px 0; }
  .home-page .home-lead-card { min-height:245px; }
  .home-page .home-feature-card { min-height:135px; padding:17px 15px; }
  .home-page .home-feature-card.feature-large > img { height:190px; }
  .home-page .home-feature-card.feature-large > div { padding:19px 17px; }
  .home-page .home-feature-card.feature-large h3 { font-size:29px; }
  .home-page .home-feature-card h3 { font-size:20px; }
  .home-page .home-trust .container { padding:24px 19px; }
  .home-page .home-screen-grid.news-count-1 img { height:155px; min-height:155px; }
  .home-page .home-screen-grid.news-count-1 article > div { padding:18px 17px; }
  .home-page .home-screen-grid.news-count-1 h3 { font-size:22px; }
}
@media (max-width:520px) {
  .home-page .home-pillar { min-height:168px; padding:16px 14px; }
  .home-page .home-pillar h3 { margin-top:13px; font-size:24px; }
  .home-page .home-pillar p { -webkit-line-clamp:2; }
}

/* Mobile footer keeps only trust and legal links; discovery already lives in the header. */
@media (max-width:900px) {
  .site-footer .footer-explore,
  .site-footer .footer-read { display:none; }
  .site-footer .footer-grid { grid-template-columns:1fr; gap:20px; }
  .site-footer .footer-brand { grid-column:auto; }
  .site-footer .footer-brand p { width:100%; max-width:none; }
  .site-footer .footer-information { grid-column:auto; }
  .site-footer .footer-information .footer-links { grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px 16px; }
  .site-footer .footer-bottom { margin-top:18px; }
}
@media (max-width:600px) {
  .site-footer .footer-information .footer-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .site-footer .footer-bottom { min-height:32px; }
}

/* Search belongs to the mobile drawer; both themes get explicit readable colors. */
.mobile-menu-search { display:none; }
@media (max-width:900px) {
  .header-actions > .search-button { display:none !important; }
  .primary-nav.is-open {
    color:#111426;
    background:#fff;
    border-color:#8b5cf6;
  }
  .primary-nav.is-open .nav-item { border-color:#e2dfec; }
  .primary-nav.is-open .nav-item > a,
  .primary-nav.is-open .submenu-toggle { color:#24283a; }
  .primary-nav.is-open .submenu { background:#f6f4fb; }
  .primary-nav.is-open .submenu a { color:#4e5365; }
  .primary-nav.is-open .mobile-menu-search {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:24px minmax(0,1fr) auto 42px;
    align-items:center;
    gap:7px;
    margin:6px 4px 12px;
    padding:6px 6px 6px 12px;
    background:#f4f2f9;
    border:1px solid #d8d4e3;
    border-radius:13px;
  }
  .mobile-menu-search svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2; color:#686d7d; }
  .mobile-menu-search input { min-width:0; height:38px; padding:0 4px; color:#111426; background:transparent; border:0; outline:0; }
  .mobile-menu-search select { height:36px; padding:0 25px 0 9px; color:#313548; background:#e9e5f2; border:0; border-radius:9px; font-size:12px; font-weight:800; }
  .mobile-menu-search button { width:38px; height:38px; padding:0; color:#fff; background:linear-gradient(135deg,#7b50ea,#4f8edc); border:0; border-radius:9px; font-weight:900; }
  .dark-theme .primary-nav.is-open { color:#f5f5ff; background:#0b1018; }
  .dark-theme .primary-nav.is-open .nav-item { border-color:#293242; }
  .dark-theme .primary-nav.is-open .nav-item > a,
  .dark-theme .primary-nav.is-open .submenu-toggle { color:#f5f5ff; }
  .dark-theme .primary-nav.is-open .submenu { background:#111824; }
  .dark-theme .primary-nav.is-open .submenu a { color:#cbd3e2; }
  .dark-theme .primary-nav.is-open .mobile-menu-search { background:#171e2a; border-color:#343e50; }
  .dark-theme .mobile-menu-search svg { color:#aeb8ca; }
  .dark-theme .mobile-menu-search input { color:#f5f5ff; }
  .dark-theme .mobile-menu-search input::placeholder { color:#9ca6b9; }
  .dark-theme .mobile-menu-search select { color:#e8ebf4; background:#252d3d; }
}

/* SQL review articles: keep the masthead and lead cover inside the mobile viewport. */
@media (max-width:600px) {
  body:has(main.article) { overflow-x:hidden; }
  body:has(main.article) main.article,
  body:has(main.article) .article-header,
  body:has(main.article) .article-content-layout,
  body:has(main.article) .article-main-column,
  body:has(main.article) .article-body { min-width:0; max-width:100%; }
  body:has(main.article) .article-header h1 {
    max-width:100%;
    white-space:normal !important;
    overflow-wrap:anywhere;
    text-wrap:balance;
  }
  body:has(main.article) .article-review-cover {
    grid-template-columns:96px minmax(0,1fr);
    gap:13px;
    padding:11px;
    border-radius:13px;
  }
  body:has(main.article) .article-review-cover .article-source-cover { min-height:0; }
  body:has(main.article) .article-review-cover .article-source-cover img {
    width:100%;
    height:auto;
    aspect-ratio:720/1018;
    object-fit:cover;
  }
  body:has(main.article) .article-review-cover figcaption > span { margin-bottom:5px; font-size:9px; }
  body:has(main.article) .article-review-cover figcaption > strong { font-size:18px; line-height:1.12; }
  body:has(main.article) .article-review-cover figcaption p { display:none; }
}

/* Editorial reading pass: compact hierarchy, useful comparison data and decision notes. */
body[data-article-slug]:has(main.article) .article-body > h2 {
  margin-top:30px;
  margin-bottom:11px;
  font-size:clamp(26px,2vw,29px);
  line-height:1.18;
}
body[data-article-slug]:has(main.article) .article-body > h3 {
  margin-top:24px;
  margin-bottom:8px;
  font-size:clamp(19px,1.45vw,22px);
  line-height:1.25;
}
.recommendation-table {
  width:100%;
  max-height:620px;
  margin:12px 0 26px;
  overflow:auto;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface);
  box-shadow:0 8px 22px rgba(21,26,36,.055);
}
.recommendation-table table { width:100%; min-width:760px; border-collapse:collapse; }
.recommendation-table th,
.recommendation-table td { padding:11px 13px; border-bottom:1px solid var(--border); text-align:left; vertical-align:top; }
.recommendation-table th { position:sticky; top:0; z-index:1; color:var(--ink); background:color-mix(in srgb,var(--surface) 88%,#8b5cf6 12%); font-size:12px; letter-spacing:.055em; text-transform:uppercase; }
.recommendation-table td { color:var(--muted); font-size:13px; line-height:1.48; }
.recommendation-table td:first-child { min-width:190px; color:var(--ink); font-weight:800; }
.recommendation-table td:nth-child(2) { min-width:150px; }
.reader-fit-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:10px 0 18px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  list-style:none;
}
.reader-fit-list li {
  margin:0;
  padding:9px 11px;
  color:var(--muted);
  background:color-mix(in srgb,var(--surface) 92%,#8b5cf6 8%);
  border:1px solid var(--border);
  border-radius:10px;
  font-size:13px;
  line-height:1.45;
}
.article-related-reviews { margin-top:34px; }
.article-related-reviews::before { content:none; }
.article-related-reviews > strong { display:block; margin-bottom:10px; color:var(--ink); font-size:17px; }
.article-related-reviews ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 18px; margin:0; padding:0; background:transparent !important; list-style:none; }
.article-related-reviews li { margin:0; }
.article-related-reviews a { display:block; padding:8px 0; color:#5548cc; font-weight:750; line-height:1.35; }
.dark-theme .recommendation-table { background:#171c2a; border-color:#343b50; }
.dark-theme .recommendation-table th { color:#f5f5ff; background:#252b40; border-color:#343b50; }
.dark-theme .recommendation-table td { color:#c7cede; border-color:#343b50; }
.dark-theme .recommendation-table td:first-child { color:#f5f5ff; }
.dark-theme .reader-fit-list li { color:#cbd3e2; background:#171e2a; border-color:#343e50; }
.dark-theme .article-related-reviews > strong { color:#f5f5ff; }
.dark-theme .article-related-reviews a { color:#aaa8ff; }
.article-rich-editor table[data-structured-table="true"] { width:100%; margin:1rem 0; border-collapse:collapse; }
.article-rich-editor table[data-structured-table="true"] th,
.article-rich-editor table[data-structured-table="true"] td { padding:.55rem; border:1px solid var(--border); text-align:left; }
.article-rich-editor [data-block-style="reader-fit"] { padding:.75rem 1rem; border:1px solid var(--border); border-radius:10px; }
@media(max-width:600px) {
  body[data-article-slug]:has(main.article) .article-body > h2 { margin-top:25px; font-size:23px; }
  body[data-article-slug]:has(main.article) .article-body > h3 { margin-top:20px; font-size:18px; }
  .recommendation-table { max-height:480px; margin-bottom:21px; border-radius:11px; }
  .recommendation-table table { min-width:680px; }
  .recommendation-table th,.recommendation-table td { padding:9px 10px; }
  .reader-fit-list { grid-template-columns:1fr; gap:6px; margin-bottom:15px !important; }
  .reader-fit-list li { padding:8px 10px; font-size:12.5px; }
  .article-related-reviews ul { grid-template-columns:1fr; gap:2px; }
}

/* Clear, touch-friendly archive pagination with clean /page/N URLs. */
.pagination {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  margin:30px 0 8px;
  padding-top:22px;
  border-top:1px solid var(--border);
}
.pagination a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:8px 13px;
  color:var(--ink);
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:11px;
  font-size:14px;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  box-shadow:0 6px 16px rgba(34,30,76,.06);
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.pagination a:hover { transform:translateY(-1px); border-color:#7c64e8; }
.pagination a[aria-current="page"] { color:#fff; background:linear-gradient(135deg,#704fe3,#5b79dd); border-color:transparent; box-shadow:0 8px 18px rgba(93,73,200,.22); }
.listing-pagination { display:grid; grid-template-columns:1fr auto 1fr; }
.listing-pagination .pagination-pages { grid-column:2; display:flex; gap:8px; }
.listing-pagination .pagination-direction:first-child { grid-column:1; justify-self:start; }
.listing-pagination .pagination-direction:last-child { grid-column:3; justify-self:end; }
.pagination-direction { gap:7px; min-width:106px !important; }
.dark-theme .pagination a { color:#edf0ff; background:#1b2031; border-color:#343b50; box-shadow:none; }
.dark-theme .pagination a:hover { border-color:#9c88ff; background:#22283a; }
.dark-theme .pagination a[aria-current="page"] { color:#fff; background:linear-gradient(135deg,#7a5ce8,#4f7edc); border-color:transparent; }
@media(max-width:600px) {
  .pagination { gap:7px; margin-top:22px; padding-top:18px; }
  .pagination a { min-width:40px; min-height:40px; padding:7px 11px; }
  .listing-pagination { grid-template-columns:1fr auto 1fr; }
  .pagination-direction { min-width:40px !important; font-size:0 !important; }
  .pagination-direction span { font-size:18px; }
}

/* Ad placeholders stay out of the reading experience until a real ad provider is configured. */
html:not(.ads-enabled) .article-ad,
html:not(.ads-enabled) .category-ad {
  display:none !important;
}
