:root{
  --bg:#0a0d14;
  --bg-alt:#121826;
  --card:#171f31;
  --card-2:#1d2740;
  --line:#33415f;
  --text:#f7f4ee;
  --muted:#c7c1b2;
  --accent:#ff7a18;
  --accent-2:#ffd166;
  --accent-3:#ff4d6d;
  --success:#2bb673;
  --error:#e05252;
  --info:#4f7cff;
  --glow:rgba(255,122,24,.18);
  --shadow:0 14px 34px rgba(0,0,0,.34);
}
html[data-theme="light"]{
  --bg:#f7f1e8;
  --bg-alt:#fffaf2;
  --card:#fffdf8;
  --card-2:#fff5e5;
  --line:#e8cfb4;
  --text:#1e1a17;
  --muted:#6c6257;
  --accent:#cf5c00;
  --accent-2:#b27b00;
  --accent-3:#c93a59;
  --success:#207c4a;
  --error:#bf3b38;
  --info:#3059d7;
  --glow:rgba(207,92,0,.10);
  --shadow:0 10px 24px rgba(120,85,35,.12);
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at top left, rgba(79,124,255,.08), transparent 28%), radial-gradient(circle at top right, rgba(255,122,24,.08), transparent 22%), var(--bg);color:var(--text);font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
.wrap{width:min(1120px,calc(100% - 32px));margin:0 auto}
.site-header{background:radial-gradient(circle at top right, rgba(255,122,24,.18), transparent 28%), linear-gradient(180deg,var(--bg-alt),transparent);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(255,255,255,.04) inset}
.header-inner{display:flex;justify-content:space-between;gap:18px;padding:20px 0;align-items:center}
.site-title{margin:0 0 4px;font-size:clamp(28px,3.5vw,42px);line-height:1.05}
.site-title a{text-decoration:none;background:linear-gradient(90deg,var(--accent),var(--accent-2) 55%,var(--accent-3));-webkit-background-clip:text;background-clip:text;color:transparent}
.site-tag{margin:0;color:var(--muted);max-width:660px;font-size:15px}
.brand-lockup{display:flex;align-items:center;gap:14px;min-width:0;flex:1 1 auto}
.site-logo-link{display:inline-flex;flex:0 0 auto;text-decoration:none}
.site-logo{width:74px;height:auto;display:block;filter:drop-shadow(0 6px 14px rgba(0,0,0,.28))}
.brand-copy{min-width:0}

.header-tools{display:flex;flex-direction:column;gap:10px;align-items:flex-end;flex:0 0 auto;margin-left:auto}
.top-nav{display:flex;flex-wrap:nowrap;gap:6px;align-items:center;white-space:nowrap}
.top-nav a{padding:7px 9px;border:1px solid transparent;border-radius:999px;font-size:14px;font-weight:700}
.top-nav a:hover{background:linear-gradient(180deg,var(--card-2),var(--card));border-color:rgba(255,122,24,.35);text-decoration:none;box-shadow:0 0 0 1px var(--glow) inset}
.translate-box{background:linear-gradient(180deg,var(--card-2),var(--card));border:1px solid var(--line);border-radius:14px;padding:8px 12px;box-shadow:0 0 0 1px rgba(255,255,255,.03) inset}
.translate-label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}
.theme-toggle,.button,button{appearance:none;border:0;border-radius:12px;background:linear-gradient(135deg,var(--accent),#ff9447);color:#fff;padding:10px 16px;font-weight:800;cursor:pointer;box-shadow:0 10px 24px var(--glow)}
.button.secondary, button.secondary, .theme-toggle{background:linear-gradient(180deg,var(--card-2),var(--card));color:var(--text);border:1px solid var(--line);box-shadow:none}
.button:hover,button:hover,.theme-toggle:hover{text-decoration:none;filter:brightness(1.04)}
main.wrap{padding:28px 0 44px}
.hero,.card{background:linear-gradient(180deg,var(--card-2),var(--card) 30%);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:22px}
.hero{margin-bottom:22px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3));opacity:.95}
.kicker{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2);font-weight:800;margin-bottom:10px}
.subtle{color:var(--muted)}
.badge{display:inline-flex;border:1px solid rgba(255,122,24,.28);padding:6px 10px;border-radius:999px;background:rgba(255,122,24,.08);font-size:13px}
.section-head{display:flex;justify-content:space-between;gap:14px;align-items:end;margin:14px 0}
.section-head h3{margin:0}
.story-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}
.compact-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.story-card h3,.story-card h4{margin:0 0 10px}
.story-meta,.metrics,.comment-tools,.story-topline,.share-row,.hero-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.angle{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(255,122,24,.10);border:1px solid rgba(255,122,24,.28);font-size:13px;color:var(--accent-2)}
.rating-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0}
.star-glyphs{letter-spacing:1px;font-size:18px}
.star-copy{position:absolute;left:-9999px}
.severity-copy{color:var(--muted);font-size:14px}
.story-page-card{margin-bottom:18px}
.live-actions,.story-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.live-actions .button,.story-card-actions .button{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;text-align:center;white-space:nowrap;padding:10px 12px;font-size:14px;line-height:1.2}
.rating-banner{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:var(--bg-alt);margin:16px 0}
.inline-tags{margin:10px 0 16px}
.topic-strip,.search-page-card,.search-results-card{margin-bottom:18px}
.topic-chip-wrap{display:flex;flex-wrap:wrap;gap:10px}
.topic-chip{display:inline-flex;gap:8px;align-items:center;padding:9px 12px;border-radius:999px;background:var(--bg-alt);border:1px solid var(--line);text-decoration:none}
.topic-chip span{color:var(--muted);font-size:13px}
.topic-chip:hover{text-decoration:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--glow) inset;background:linear-gradient(180deg,var(--card-2),var(--card))}
.search-row,.digest-form-grid,.story-editor-grid,.footer-grid{display:grid;gap:14px}
.search-row{grid-template-columns:1fr auto}
.digest-form-grid{grid-template-columns:1fr 1fr auto;align-items:end}
.story-editor-grid{grid-template-columns:1.2fr 1fr .8fr}
.footer-grid{grid-template-columns:1.4fr .8fr}

input,textarea,select{width:100%;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.02);color:var(--text)}
select{background-color:var(--card);color:var(--text)}
select option,select optgroup{background-color:var(--card);color:var(--text)}
html[data-theme="dark"] select{color-scheme:dark}
html[data-theme="light"] select{color-scheme:light}
input:focus,textarea:focus,select:focus{outline:none;border-color:rgba(255,122,24,.55);box-shadow:0 0 0 4px var(--glow)}
textarea{min-height:140px;resize:vertical}
label{display:block;font-weight:700;margin:0 0 6px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.site-footer{border-top:1px solid var(--line);padding:20px 0 40px;background:radial-gradient(circle at bottom left, rgba(255,122,24,.12), transparent 30%), linear-gradient(180deg,transparent,var(--bg-alt))}
.footer-links-card p{margin:.4rem 0}
.footer-rss-wrap{margin:10px 0 14px}
.rss-button{display:inline-flex;gap:10px;align-items:center;padding:10px 14px;border-radius:999px;background:linear-gradient(135deg,var(--accent),#ff9a2f);color:#fff;font-weight:800;text-decoration:none;box-shadow:0 10px 22px var(--glow)}
.rss-button svg{width:20px;height:20px;fill:currentColor;stroke:currentColor;stroke-width:2;fill:none}
.homepage-main{margin-top:18px}
.flash{margin:0 0 18px;padding:12px 14px;border-radius:14px;color:#fff}
.flash-success{background:var(--success)}
.flash-error{background:var(--error)}
.flash-info{background:var(--info)}
.comment{padding:16px 0;border-top:1px solid var(--line)}
.comment.reply{margin-left:28px;padding-left:18px;border-left:3px solid var(--line)}
.meta{color:var(--muted);font-size:13px;margin-bottom:8px}
.inline-form{display:inline}
.inline-form button{padding:7px 11px;font-size:13px}
.vote-score,.flag-count{font-size:13px;color:var(--muted)}
.comment-form-actions{display:flex;gap:10px;flex-wrap:wrap}
.reply-target{margin-bottom:10px;padding:10px 12px;border-radius:12px;background:rgba(255,122,24,.08);border:1px dashed rgba(255,122,24,.35)}
.hide-me{position:absolute;left:-9999px}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px}
.stat-grid > div{background:linear-gradient(180deg,var(--card-2),var(--card));border:1px solid var(--line);border-radius:18px;padding:18px}
.stat-grid strong{display:block;font-size:30px}
.stat-grid span{color:var(--muted);font-size:14px}
.closing-card{margin-top:18px}
.form-card{display:grid;gap:12px}
.hero-search-form{margin-top:16px}
.hero-search-form label{font-size:14px}
.metrics{font-size:13px;color:var(--muted)}
.goog-te-gadget{color:var(--text)!important;font-family:inherit!important}
.goog-te-gadget .goog-te-combo{margin:0!important;background:var(--bg-alt)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:6px 8px!important}
iframe.goog-te-banner-frame{display:none!important}
body{top:0!important}
@media (max-width:980px){
  .top-nav{flex-wrap:wrap;white-space:normal;justify-content:flex-start}
}
@media (max-width:900px){
  .header-inner,.footer-grid,.story-editor-grid,.digest-form-grid{grid-template-columns:1fr}
  .header-inner{display:grid}
  .brand-lockup{align-items:flex-start}
  .site-logo{width:62px}
  .header-tools{align-items:flex-start;margin-left:0}
}
@media (max-width:700px){
  .search-row{grid-template-columns:1fr}
  .rating-banner{grid-template-columns:1fr}
  .story-list{grid-template-columns:1fr}
  .live-actions,.story-card-actions{grid-template-columns:1fr}
  .comment.reply{margin-left:12px;padding-left:12px}
}

.footer-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px}
.footer-translate-box{min-width:220px}

.prose h3{margin-top:1.3rem;}
.prose p{max-width:72ch;}
.byline-row{margin-top:-0.25rem;}


.story-image-figure {
    margin: 0 0 1.25rem 0;
}
.story-image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 10px 30px rgba(0,0,0,0.22);
    background: rgba(255,255,255,0.03);
}
.story-image-figure figcaption {
    margin-top: 0.55rem;
    font-size: 0.9rem;
}


.reader-action-card{border:1px solid rgba(255,122,24,.35);box-shadow:0 0 0 1px rgba(255,122,24,.08) inset;background:linear-gradient(180deg,rgba(255,122,24,.08),rgba(255,255,255,.01))}
.reader-action-card .kicker{color:var(--accent)}
.action-deadline{margin:12px 0 10px}
.action-links{margin:12px 0 6px;padding-left:20px}
.action-links li{margin:8px 0}

.correction-note {
  margin: 1rem 0 1.25rem;
  padding: 0.9rem 1rem;
  border: 1px solid var(--border-color, rgba(255,255,255,0.14));
  border-left-width: 4px;
  border-radius: 12px;
  background: rgba(255,255,255,0.03);
}

.reader-links-card .action-links {
  margin-bottom: 0.75rem;
}


.archive-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:14px}
.archive-summary{margin:.35rem 0 0}
.archive-pagination{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.archive-page-status{color:var(--muted);font-size:14px}
.archive-pagination-bottom{margin-top:16px;justify-content:flex-end}
.archive-page-jump{display:inline-flex;gap:8px;align-items:center;margin:0}
.archive-page-jump input{width:84px;min-width:84px;padding:9px 10px}
.archive-page-jump .button{margin:0}


.translate-launch{padding:8px 12px;font-size:14px}
.translate-status{margin:.55rem 0 0;font-size:12px;line-height:1.4}
.translate-widget[hidden]{display:none!important}
.translate-widget{min-height:38px}
@supports (content-visibility:auto){
  .story-list .story-card,
  .comment,
  .footer-digest,
  .footer-links-card,
  .topic-strip,
  .search-results-card,
  .archive-year-section,
  .weekly-listing-card,
  .scorecard-listing-card{
    content-visibility:auto;
    contain-intrinsic-size:1px 320px;
  }
}
