/* ARC Raiders site layer (2026-09-26): current-state blocks, update notes, timeline. */
.arc-now, .arc-update, .arc-timeline { width: min(1180px, 92%); margin: 34px auto 10px; }
.arc-now > h2, .arc-timeline > h2 { font-size: clamp(1.6rem, 3vw, 2.3rem); margin: 0 0 16px; color: #fff; }
.arc-now-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.arc-now-grid article { background: linear-gradient(145deg, rgba(18,29,25,.96), rgba(8,15,13,.96)); border: 1px solid #30433a; border-top: 3px solid #d7862d; border-radius: 8px; padding: 18px 18px 16px; display: flex; flex-direction: column; }
.arc-now-grid article.urgent { border-top-color: #e5533d; }
.arc-now-grid span { font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #efae58; }
.arc-now-grid article.urgent span { color: #ff8a73; }
.arc-now-grid strong { font-size: 1.25rem; color: #fff; margin: 6px 0 6px; }
.arc-now-grid p { margin: 0 0 12px; color: #b9c9c1; font-size: .95rem; }
.arc-now-grid a { margin-top: auto; font-weight: 700; }
.arc-alert { margin: 16px 0 0; padding: 12px 16px; border: 1px solid #6b4a24; border-left: 3px solid #f0a24c; border-radius: 6px; background: #17130d; color: #e7d6bf; }
.arc-alert b { color: #f0a24c; }

.arc-update { background: linear-gradient(100deg, rgba(17,25,22,.98), rgba(8,12,11,.98)); border: 1px solid rgba(154,159,139,.22); border-left: 3px solid #5fb6d6; border-radius: 8px; padding: 22px 26px; }
.arc-update > span { display: block; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #8fd3ea; margin-bottom: 6px; }
.arc-update h2 { font-size: 1.45rem; margin: 0 0 10px; color: #fff; }
.arc-update p, .arc-update li { color: #c3d1ca; }
.arc-update ul { margin: 8px 0 10px; padding-left: 1.2em; }
.arc-update li { margin-bottom: 6px; }
.arc-update li strong { color: #fff; }
.arc-update .src { font-size: .88rem; color: #88a096; margin: 8px 0 0; }

.arc-timeline ol { list-style: none; margin: 0; padding: 0; border-top: 2px solid #d7862d; }
.arc-timeline li { display: grid; grid-template-columns: 150px 1fr; gap: 20px; padding: 14px 4px; border-bottom: 1px solid #27352f; }
.arc-timeline time { font-weight: 800; color: #efae58; }
.arc-timeline li.next time { color: #8fd3ea; }
.arc-timeline li strong { color: #fff; }
.arc-timeline li p { margin: 4px 0 0; color: #b9c9c1; }
.arc-timeline li.done { opacity: .72; }
.site-header nav a[aria-current="page"] { background: #17231f; color: #f0a24c; }

@media (max-width: 1000px) { .arc-now-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) {
  .arc-now-grid { grid-template-columns: 1fr; }
  .arc-timeline li { grid-template-columns: 1fr; gap: 4px; }
  .arc-update { padding: 18px; }
}

/* Map dossier heroes: declared here (not inline) so the URL resolves against this stylesheet in every browser. */
.dossier-hero[data-map="blue-gate"] { --dossier-hero: url('../images/map-heroes-polished/blue-gate.webp'); }
.dossier-hero[data-map="buried-city"] { --dossier-hero: url('../images/map-heroes-polished/buried-city.webp'); }
.dossier-hero[data-map="dam-battlegrounds"] { --dossier-hero: url('../images/map-heroes-polished/dam-battlegrounds.webp'); }
.dossier-hero[data-map="riven-tides"] { --dossier-hero: url('../images/map-heroes-polished/riven-tides.webp'); }
.dossier-hero[data-map="spaceport"] { --dossier-hero: url('../images/map-heroes-polished/spaceport.webp'); }
.dossier-hero[data-map="stella-montis"] { --dossier-hero: url('../images/map-heroes-polished/stella-montis.webp'); }

/* Home: one field-guide index instead of starter cards and a systems deck. */
.guide-index { width: min(1180px, 92%); margin: 30px auto 48px; }
.guide-index > h2 { font-size: clamp(1.5rem, 2.6vw, 2rem); margin: 0 0 12px; color: #fff; }
.guide-cols { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 28px; border-top: 2px solid #d7862d; }
.guide-cols h3 { margin: 14px 0 4px; font-size: .85rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #efae58; }
.guide-cols ul { list-style: none; margin: 0; padding: 0; }
.guide-cols li { padding: 9px 0; border-bottom: 1px solid #27352f; color: #9fb1a8; font-size: .92rem; line-height: 1.45; }
.guide-cols li a { display: block; font-weight: 800; font-size: 1rem; color: #f2eee3; }
.guide-cols li a:hover { color: #f0a24c; }
@media (max-width: 1000px) { .guide-cols { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .guide-cols { grid-template-columns: 1fr; } }

/* Phone readability floor for small uppercase labels (overrides older !important rules in styles.css). */
@media (max-width: 640px) {
  .dossier-stats span, .badge, .weapon-card .weapon-class, .resource-labels .arc-panel-label, .arc-panel-label,
  .map-board-label, .resource-map-links > span, .system-banner span, .found span, .route span, .scrappy-cache span,
  .live-balance-note span { font-size: 12px !important; }
  .dossier-stats strong { font-size: 12.5px !important; }
}

/* Maps hub: one comparison table instead of six nested cards. */
.map-table-wrap { width: min(1180px, 92%); margin: 28px auto 8px; }
.map-table-wrap > h2 { font-size: clamp(1.5rem, 2.6vw, 2rem); margin: 0 0 4px; color: #fff; }
.map-table-wrap > p { margin: 0 0 14px; color: #9fb1a8; }
.map-table { width: 100%; border-collapse: collapse; border-top: 2px solid #d7862d; }
.map-table th, .map-table td { text-align: left; vertical-align: top; padding: 14px 12px; border-bottom: 1px solid #27352f; color: #b9c9c1; font-size: .95rem; line-height: 1.5; }
.map-table thead th { font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #efae58; padding: 10px 12px; }
.map-table tbody th { width: 23%; }
.map-table tbody th a { display: block; font-size: 1.15rem; font-weight: 800; color: #fff; }
.map-table tbody th a:hover { color: #f0a24c; }
.map-table tbody th span { display: block; font-weight: 400; color: #9fb1a8; font-size: .9rem; margin-top: 4px; }
.map-table tbody tr:hover { background: rgba(215,134,45,.04); }
.live-region-note { color: #c3d1ca; margin: 0 0 6px; }
@media (max-width: 860px) {
  .map-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .map-table, .map-table tbody, .map-table tr, .map-table th, .map-table td { display: block; width: auto; }
  .map-table tr { padding: 14px 0; border-bottom: 1px solid #27352f; }
  .map-table th, .map-table td, .map-table tbody th { border: 0; padding: 4px 0; width: auto; }
  .map-table td::before { content: attr(data-label); display: block; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #efae58; }
}

/* Map dossiers: lore beside the route sketch, then compact reference lists. */
.dossier-intro { width: min(1320px, calc(100% - 48px)); margin: 22px auto 0; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.dossier-lore { padding: 20px 24px; border-left: 3px solid #d48332; background: linear-gradient(90deg, rgba(212,131,50,.08), rgba(12,17,15,.92) 40%); }
.dossier-lore h2 { margin: 0 0 8px; font-size: clamp(1.35rem, 2.2vw, 1.8rem); }
.dossier-lore p { margin: 0 0 10px; color: #b9c4bd; }
.dossier-lore p:last-child { margin-bottom: 0; }
.dossier-route { margin: 0; border: 1px solid rgba(139,150,140,.25); background: #050908; }
.dossier-route img { display: block; width: 100%; height: auto; }
.dossier-route figcaption { padding: 6px 12px; font-size: .8rem; color: #88a096; border-top: 1px solid rgba(139,150,140,.2); }
.dossier-split .intel-block h2 { font-size: clamp(1.25rem, 2vw, 1.5rem); }
.dossier-section-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 20px; border-bottom: 2px solid #d7862d; padding-bottom: 6px; }
.dossier-section .dossier-section-head h2 { margin: 0; font-size: clamp(1.3rem, 2.2vw, 1.65rem); }
.dossier-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; margin: 0; }
.dossier-list > div { padding: 10px 0; border-bottom: 1px solid #27352f; }
.dossier-list dt { font-weight: 800; color: #f0e6d6; }
.dossier-list dd { margin: 2px 0 0; color: #aeb7b0; font-size: .95rem; line-height: 1.5; }
@media (max-width: 820px) {
  .dossier-intro { grid-template-columns: 1fr; width: min(100% - 28px, 1320px); }
  .dossier-list { grid-template-columns: 1fr; }
}

/* ARC machines: three across on wide screens, role badge sits on the image. */
.machine-list .machine-card { padding: 0 20px 18px; }
.machine-list .machine-card h2 { font-size: 1.3rem; margin: 0 0 4px; }
.machine-list .machine-card p { font-size: .93rem; margin: 0 0 8px; }
.machine-list .machine-card .stats { margin: 8px 0 10px; gap: 8px; }
.machine-list .machine-card .stats span { padding: 7px 9px; font-size: .92rem; }
@media (min-width: 1100px) { .machine-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Quest directory: one line per quest when closed, a three-part brief when open. */
.quest-detail { display: block; padding: 0; background: rgba(12,20,17,.72); }
.quest-detail > summary { display: grid; grid-template-columns: minmax(220px, .9fr) minmax(0, 1.6fr) 28px; gap: 16px; align-items: baseline; padding: 11px 16px; cursor: pointer; list-style: none; }
.quest-detail > summary::-webkit-details-marker { display: none; }
.quest-detail > summary:focus-visible { outline: 2px solid #f0a24c; outline-offset: -2px; }
.quest-name { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; }
.quest-name h3 { font-size: 1rem; }
.quest-row .quest-name span { font-size: .78rem; }
.quest-row .quest-quick { font-size: .93rem; text-transform: none; letter-spacing: 0; color: #b9c9c1; }
.quest-row .quest-chevron { font-size: 1.2rem; line-height: 1; color: #efae58; text-align: right; }
.quest-detail[open] .quest-chevron { transform: rotate(45deg); }
.quest-brief { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 20px; padding: 4px 16px 14px; }
.quest-brief-block span { display: block; margin-bottom: 2px; }
@media (max-width: 700px) {
  .quest-detail > summary { grid-template-columns: minmax(0, 1fr) 24px; gap: 2px 10px; }
  .quest-detail > summary .quest-quick { grid-column: 1; grid-row: 2; }
  .quest-detail > summary .quest-chevron { grid-column: 2; grid-row: 1; }
  .quest-brief { grid-template-columns: 1fr; }
}
