/* T42: Aurora main site. Shared reading primitives; all colors use brand tokens. */
.refresh-home, .knowledge-refresh { background: var(--cxy-surface-page); }
.rf-section { padding: var(--cxy-space-12) 0; }
.rf-section-alt { background: var(--cxy-surface-subtle); }
.rf-label { display: inline-block; color: var(--cxy-action); font-size: var(--cxy-size-sm); font-weight: 700; margin-bottom: var(--cxy-space-5); }
.rf-hero { padding: 80px 0 64px; border-bottom: 1px solid var(--cxy-border-default); }
.rf-hero-grid { display:grid; grid-template-columns: 1.12fr 1fr; align-items:center; gap:64px; }
.rf-hero h1 { font-family:var(--cxy-font-display); font-size:clamp(40px,4.5vw,64px); font-weight:900; line-height:1.2; letter-spacing:-.03em; margin:0 0 24px; }
.rf-hero h1 span { color:var(--cxy-action); }
.rf-intro { max-width:32em; font-size:18px; line-height:1.9; color:var(--cxy-text); }
.rf-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
.rf-link { color:var(--cxy-action); text-underline-offset:4px; }
.rf-link:hover { text-decoration:underline; }
.rf-question-board { position:relative; background:var(--cxy-surface-card); border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-xl); padding:32px; box-shadow:var(--cxy-elevation-2); }
.rf-question-board::before { content:""; position:absolute; top:-1px; left:24px; right:24px; height:3px; background:var(--cxy-gradient-aurora); }
.rf-question-board h2 { font-size:24px; margin:0 0 8px; }
.rf-board-caption { color:var(--cxy-muted); font-size:14px; margin:0 0 24px; }
.rf-question { display:grid; grid-template-columns:32px 1fr 20px; gap:12px; align-items:center; padding:20px 0; border-top:1px solid var(--cxy-border-default); color:var(--cxy-ink); font-weight:600; line-height:1.6; }
.rf-question small { font-family:var(--cxy-font-num); color:var(--cxy-action); }
.rf-question:hover { color:var(--cxy-action); }
.rf-board-end { display:flex; justify-content:space-between; gap:16px; align-items:center; padding-top:24px; border-top:1px solid var(--cxy-border-default); color:var(--cxy-muted); font-size:14px; }
.rf-brand-note { display:flex; align-items:center; flex-wrap:wrap; gap:12px 32px; padding:24px 0; color:var(--cxy-muted); font-size:14px; }
.rf-brand-note a { color:var(--cxy-action); }
.rf-section h2 { font-size:clamp(28px,3vw,40px); letter-spacing:-.025em; line-height:1.4; margin:0 0 16px; }
.rf-section-lead { color:var(--cxy-text); max-width:45em; line-height:1.8; margin:0 0 40px; font-size:17px; }
.rf-service-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:24px; }
.rf-service { border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-xl); overflow:hidden; background:var(--cxy-surface-card); }
.rf-service-copy { padding:32px; }
.rf-service h3 { margin:12px 0; font-size:28px; }
.rf-service p { color:var(--cxy-text); line-height:1.8; }
.rf-service img { display:block; width:100%; height:auto; background:var(--cxy-subtle); border-top:1px solid var(--cxy-border-default); }
.rf-service small { display:block; color:var(--cxy-muted); font-size:13px; line-height:1.8; margin-top:16px; }
.rf-service .rf-link { display:inline-flex; align-items:center; min-height:44px; margin-top:8px; font-weight:600; }
.rf-ai-row { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.rf-ai-steps { display:grid; gap:0; margin:0; padding:0; list-style:none; border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-xl); overflow:hidden; }
.rf-ai-steps li { display:grid; grid-template-columns:40px 1fr; gap:16px; padding:24px; border-bottom:1px solid var(--cxy-border-default); }
.rf-ai-steps li:last-child { border-bottom:0; }
.rf-ai-steps b { color:var(--cxy-action); font-family:var(--cxy-font-num); }
.rf-ai-steps h3 { margin:0 0 8px; font-size:18px; }
.rf-ai-steps p { margin:0; color:var(--cxy-text); line-height:1.7; }
.rf-topic-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0 32px; }
.rf-topic { display:flex; gap:20px; align-items:flex-start; padding:28px 0; border-bottom:1px solid var(--cxy-border-default); color:var(--cxy-ink); }
.rf-topic-num { color:var(--cxy-action); font-family:var(--cxy-font-num); font-size:14px; padding-top:5px; }
.rf-topic h3 { margin:0 0 8px; font-size:20px; }
.rf-topic p { margin:0; color:var(--cxy-text); font-size:14px; line-height:1.8; }
.rf-topic:hover h3 { color:var(--cxy-action); }
.rf-trust { display:grid; grid-template-columns:1fr 2fr; gap:64px; padding:48px; border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-xl); }
.rf-trust h2 { font-size:28px; }
.rf-trust p { margin:0 0 24px; color:var(--cxy-text); line-height:1.9; }
.rf-contact-band { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.rf-contact-band p { margin:0; color:var(--cxy-text); line-height:1.8; }
.rf-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; font-size:14px; color:var(--cxy-muted); padding:24px 0 0; line-height:1.7; }
.rf-breadcrumb a { color:var(--cxy-action); }
.rf-breadcrumb [aria-current] { overflow-wrap:anywhere; }
.kb-hero { padding:56px 0 40px; }
.kb-hero h1 { margin:0 0 20px; font-size:clamp(32px,4vw,52px); line-height:1.25; font-weight:900; }
.kb-hero p { color:var(--cxy-text); max-width:44em; font-size:17px; line-height:1.9; }
.kb-overview { display:flex; gap:12px 28px; flex-wrap:wrap; margin-top:24px; font-size:14px; color:var(--cxy-muted); }
.kb-overview strong { color:var(--cxy-ink); font-family:var(--cxy-font-num); font-size:20px; margin-right:6px; }
.kb-search { padding:28px; background:var(--cxy-surface-subtle); border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-lg); }
.kb-search label { display:block; font-size:14px; font-weight:700; color:var(--cxy-ink); margin-bottom:8px; }
.kb-search-row { display:grid; grid-template-columns:1fr 200px auto; gap:16px; align-items:end; }
.kb-input, .kb-select { width:100%; min-height:48px; padding:12px 16px; color:var(--cxy-ink); background:var(--cxy-surface-card); border:1px solid var(--cxy-border-strong); border-radius:var(--cxy-radius-sm); font:inherit; }
.kb-input:focus-visible,.kb-select:focus-visible { outline:2px solid var(--cxy-action); outline-offset:3px; }
.kb-status { color:var(--cxy-muted); font-size:14px; margin:20px 0 0; }
.kb-tabs { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.kb-tab { background:var(--cxy-surface-card); color:var(--cxy-text); border:1px solid var(--cxy-border-strong); border-radius:var(--cxy-radius-pill); padding:10px 20px; min-height:44px; cursor:pointer; font:inherit; font-size:14px; }
.kb-tab[aria-pressed="true"] { background:var(--cxy-action-fill); color:var(--cxy-on-color); border-color:var(--cxy-action-fill); }
.kb-results { display:grid; grid-template-columns:1fr 1fr; gap:0 40px; margin:32px 0; }
.kb-item { padding:28px 0; border-bottom:1px solid var(--cxy-border-default); min-width:0; }
.kb-item-meta { display:flex; flex-wrap:wrap; gap:12px; color:var(--cxy-muted); font-size:13px; }
.kb-item-meta span:first-child { color:var(--cxy-action); }
.kb-item h2,.kb-item h3 { margin:12px 0; font-size:20px; line-height:1.65; }
.kb-item a { color:var(--cxy-ink); }
.kb-item a:hover { color:var(--cxy-action); }
.kb-item p { color:var(--cxy-text); line-height:1.8; font-size:15px; margin:0; }
.kb-pagination { display:flex; justify-content:center; align-items:center; gap:24px; padding:12px 0 48px; color:var(--cxy-muted); font-size:14px; }
.kb-pagination button:disabled { opacity:.45; cursor:not-allowed; }
.kb-empty { text-align:center; padding:64px 24px; border:1px dashed var(--cxy-border-strong); border-radius:var(--cxy-radius-lg); color:var(--cxy-text); margin:32px 0; }
.kb-empty h2 { color:var(--cxy-ink); font-size:24px; }
.rf-resource-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.rf-resource { display:block; padding:28px 32px; border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-lg); color:var(--cxy-ink); background:var(--cxy-surface-card); }
.rf-resource h2,.rf-resource h3 { font-size:22px; margin:0 0 12px; }
.rf-resource p { color:var(--cxy-text); line-height:1.8; margin:0; }
.rf-resource:hover { border-color:var(--cxy-action); }
.rf-reading { max-width:800px; margin:0 auto; padding:48px 24px 80px; }
.rf-reading h1 { font-size:clamp(32px,4vw,48px); line-height:1.35; margin:24px 0; }
.rf-reading h2 { margin:48px 0 16px; font-size:25px; }
.rf-reading p,.rf-reading li { color:var(--cxy-text); line-height:1.95; }
.rf-reading a { color:var(--cxy-action); text-decoration:underline; text-underline-offset:4px; }
.rf-reading code { overflow-wrap:anywhere; }
.rf-reading ul,.rf-reading ol { padding-left:24px; }
.rf-reading li { margin:8px 0; }
.rf-reading .rf-breadcrumb { padding-top:0; }
.rf-reading table { width:100%; border-collapse:collapse; }
.rf-reading th,.rf-reading td { text-align:left; padding:12px; border:1px solid var(--cxy-border-default); vertical-align:top; overflow-wrap:anywhere; }
.rf-contact-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:64px; align-items:start; }
.rf-contact-qr { padding:32px; text-align:center; border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-xl); background:var(--cxy-surface-card); }
.rf-contact-qr img { width:220px; height:220px; margin:0 auto 24px; background:var(--cxy-on-color); border-radius:var(--cxy-radius-sm); }
.rf-contact-qr p { color:var(--cxy-text); line-height:1.8; }
.rf-source-box { padding:24px; margin:24px 0; border:1px solid var(--cxy-border-default); border-radius:var(--cxy-radius-md); background:var(--cxy-surface-subtle); }
.rf-source-box h2 { font-size:18px; margin:0 0 12px; }
.rf-source-box p { color:var(--cxy-text); line-height:1.85; font-size:15px; margin:8px 0; }
.rf-source-box a { color:var(--cxy-action); overflow-wrap:anywhere; }
.rf-source-box ul { padding-left:20px; }
.rf-source-box li { margin:8px 0; line-height:1.8; }
.rf-source-box small { color:var(--cxy-muted); line-height:1.8; }
.art-body table { display:block; max-width:100%; overflow-x:auto; }
.art-main { min-width:0; }
.art-meta time { font-variant-numeric:tabular-nums; }
.art-meta a { color:var(--cxy-action); text-underline-offset:4px; }
.rf-faq-permalink { display:inline-flex; align-items:center; min-height:44px; font-size:14px; color:var(--cxy-action); margin-top:12px; }
.nav-links { gap:24px; }
.rf-sitemap-columns { columns:2; column-gap:40px; }
.rf-sitemap-columns li { break-inside:avoid; margin-bottom:12px; }
@media (max-width:1000px) {
 .rf-hero-grid { gap:32px; }
 .rf-hero { padding:56px 0; }
 .rf-topic-grid { grid-template-columns:1fr 1fr; }
 .rf-trust { gap:32px; padding:32px; }
 .rf-hero h1 { font-size:44px; }
}
@media (max-width:767px) {
 .rf-section { padding:56px 0; }
 .rf-hero { padding:40px 0; }
 .rf-hero-grid,.rf-service-grid,.rf-ai-row,.rf-trust,.rf-contact-grid { grid-template-columns:1fr; gap:32px; }
 .rf-hero h1 { font-size:40px; }
 .rf-intro { font-size:16px; }
 .rf-question-board,.rf-service-copy { padding:24px; }
 .rf-board-end { flex-wrap:wrap; }
 .rf-topic-grid { grid-template-columns:1fr; }
 .rf-resource-grid { grid-template-columns:1fr; }
 .rf-trust { padding:24px; }
 .rf-contact-band { display:block; }
 .rf-contact-band .btn { margin-top:24px; }
 .kb-hero { padding:40px 0 28px; }
 .kb-search { padding:20px; }
 .kb-search-row { grid-template-columns:1fr; }
 .kb-results { grid-template-columns:1fr; gap:0; }
 .kb-pagination { gap:16px; }
 .rf-reading { padding-top:28px; }
 .rf-sitemap-columns { columns:1; }
 .rf-hero .rf-actions .btn { padding:12px 16px; font-size:14px; }
}
@media (prefers-reduced-motion:reduce) { .refresh-home *,.knowledge-refresh * { animation:none!important; scroll-behavior:auto!important; } }


.faq-pick h2 { font-size:18px; line-height:1.6; margin:0 0 12px; }


.kb-topic-links { display:flex; flex-wrap:wrap; gap:12px 24px; padding:8px 0 24px; border-bottom:1px solid var(--cxy-border-default); }
.kb-topic-links a { color:var(--cxy-action); line-height:1.8; min-height:44px; display:inline-flex; align-items:center; gap:8px; }
.knowledge-refresh #all-knowledge { padding-top:32px; }

/* Official source URLs must wrap on narrow article screens. */
.art-body { overflow-wrap:anywhere; }
.art-body a { overflow-wrap:anywhere; word-break:break-word; }

@media (min-width:1024px) { .article-toc-inline { display:none; } }
