/* Comfortable reading and compact utility states; artwork stays unchanged. */
.calc-note,.equipment-notes,.hero-support,.group-note,.enemy-note,.data-legend,.section-note { font-size:14px; line-height:1.75; }
.calculator .calc-field label,.calc-field label { font-size:14px; }
.calculator .calc-field small,.calc-field small { font-size:13px; }
.guide-grid p,.term-list dd { font-size:14px; }
.card-action { font-size:13px; }.stat-description { font-size:12px; }
footer { font-size:12px; }
.calculator .level-buttons .back { min-height:44px; min-width:44px; }
.back { min-height:36px; }
.calculator .calc-tabs .back { min-height:44px; }
.intro-collapse { margin:0; min-height:36px; padding:6px 10px; background:transparent; border-color:#715333; color:var(--text); font-size:12px; }
.intro.intro-collapsed .caption,.intro.intro-collapsed .eyebrow,.intro.intro-collapsed::after { display:none; }
.intro.intro-collapsed .site-brand img { width:260px; }
.intro.intro-collapsed { margin-bottom:18px; }
.intro.intro-collapsed .site-brand { margin-bottom:8px; }
.mode-explainer { margin:0 0 18px; font-size:14px; color:var(--muted); }
.saved-builds { padding:12px 0; margin-bottom:18px; border-bottom:1px solid var(--line); }
.saved-builds > summary { font-size:14px; color:var(--accent); }
.saved-builds .build-tools { border:0; padding-bottom:0; }
#team-benchmark .team-start { background:linear-gradient(#d5c0e8,#b39bc9) !important; border-color:#e4d3f1 !important; color:#2d2236 !important; min-width:100px; }
.build-tools { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:18px 0; padding:14px 0; border-bottom:1px solid var(--line); }
.build-tools input,.build-tools select { min-height:40px; max-width:100%; min-width:0; background:var(--recessed); border:1px solid #74674e; border-radius:4px; color:var(--text); font:inherit; padding:8px 10px; }
.build-tools input { flex:1 1 150px; }.build-tools select { flex:1 1 150px; }
.save-status { flex-basis:100%; font-size:13px; color:var(--muted); margin:0; }
.stale-banner { border-left:3px solid var(--amber); padding:14px 16px; background:#493b25; color:#f1d2a4; font-size:14px; line-height:1.6; }
.comparison { padding:18px; border:1px solid var(--line); border-radius:4px; margin:18px 0; background:#333129; }
.comparison h4 { margin:0 0 12px; }.comparison p { margin:8px 0; font-variant-numeric:tabular-nums; }
.comparison small { display:block; color:var(--muted); }
.calc-warning { padding:12px 14px; border-left:2px solid #b28b51; }
.has-reference .guide-grid { grid-template-columns:1fr; gap:20px; }
.has-reference .guide-grid > article { padding:0; border-left:0; }
.content-gear .content-glossary { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:14px; }
.content-gear .content-glossary > :last-child { grid-column:1 / -1; }
.gear-ladder > :nth-child(1),.gear-ladder > :nth-child(2),.gear-ladder > :nth-child(3) { grid-column:1; }
.gear-ladder > :nth-child(4),.gear-ladder > :nth-child(5),.gear-ladder > :nth-child(6) { grid-column:2; }
.gear-ladder > :nth-child(1),.gear-ladder > :nth-child(4) { grid-row:1; }
.gear-ladder > :nth-child(2),.gear-ladder > :nth-child(5) { grid-row:2; }
.gear-ladder > :nth-child(3),.gear-ladder > :nth-child(6) { grid-row:3; }
.gear-ladder > :nth-child(7) { grid-row:4; grid-column:1; }
.drake-ladder > :nth-child(-n+4) { grid-column:1; }
.drake-ladder > :nth-child(n+5) { grid-column:2; }
.drake-ladder > :nth-child(1),.drake-ladder > :nth-child(5) { grid-row:1; }
.drake-ladder > :nth-child(2),.drake-ladder > :nth-child(6) { grid-row:2; }
.drake-ladder > :nth-child(3),.drake-ladder > :nth-child(7) { grid-row:3; }
.drake-ladder > :nth-child(4),.drake-ladder > :nth-child(8) { grid-row:4; }
.exact-result { margin:12px 0 18px; font-size:13px; color:var(--muted); }.exact-result p { font-size:13px; }
.evidence-badge { display:inline-block; padding:3px 8px; border:1px solid #8b7959; border-radius:3px; color:#dfc895; font:600 11px/1.5 system-ui,sans-serif; letter-spacing:.03em; margin:0 5px 4px 0; }
.evidence-badge.tested { color:#c9dfb1; border-color:#7a9164; }.evidence-badge.unresolved { color:#e5b898; border-color:#a77a54; }
.encounter-nav { display:flex; flex-wrap:wrap; gap:8px; padding:16px 0; margin:0 0 20px; border-bottom:1px solid var(--line); }
.encounter-nav .back { white-space:normal; }
.quick-take { padding:18px; background:#353129; border-left:3px solid var(--brass-light); margin:18px 0; }
.quick-take h3 { font-size:17px; margin:0 0 12px; }.quick-take ul { margin:0; padding-left:20px; }.quick-take li { margin:8px 0; line-height:1.65; font-size:14px; }
.abyss-section,.abyss-forms,.abyss-examples,.matrix-guide,.matrix-steps,.matrix-score,.matrix-details,.abyss-attack-detail { scroll-margin-top:105px; }
.section-state { display:block; color:var(--muted); font-size:12px; font-weight:400; margin-top:5px; line-height:1.6; }
.reference-body { padding:18px; }
.reference-body h3 { margin:0 0 14px; font-size:17px; }.reference-body p { font-size:14px; line-height:1.7; }
.reference-body .stat { padding:12px 9px; }.reference-body .stat dd { font-size:16px; overflow-wrap:anywhere; }
.reference-body .stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.reference-body .matrix-controls { margin:16px 0; }.reference-body .matrix-controls input { width:75px; }
.reference-rules { margin:16px 0; border-top:1px solid var(--line); padding-top:14px; }
.reference-body .back { white-space:normal; }.reference-body .matrix-tier-table { min-width:0; font-size:12px; }
.reference-body th,.reference-body td { padding:8px 5px; }
.team-slot-actions { display:flex; gap:10px; justify-content:flex-end; padding:0 18px 15px; }
.team-add { margin:14px 18px 24px; }
.contribution-chart { margin:22px 0; padding:20px; background:#302a34; border:1px solid #816c8d; border-radius:4px; }
.contribution-chart h4 { margin:0 0 10px; }.contribution-row { margin:16px 0; }.contribution-row p { display:flex; justify-content:space-between; gap:10px; margin:0 0 7px; font-size:14px; }
.contribution-track { height:9px; background:#201b24; border-radius:2px; }.contribution-fill { height:100%; background:var(--purple); border-radius:2px; }
@media(max-width:620px) {
 .gear-ladder > *,.drake-ladder > * { grid-column:auto; grid-row:auto; }
 .content-gear .content-glossary { grid-template-columns:1fr; }
 .shell { padding-top:22px; }.intro { margin-bottom:20px; }.site-brand img { width:min(100%,320px); }
 .intro .caption { font-size:14px; line-height:1.65; }.intro::after { display:none; }
 .preview { padding:10px 12px; }.preview-detail { font-size:11px; }.workspace-dock { margin:14px 0; }
 .back { min-height:44px; }.build-tools { gap:8px; }.build-tools .back { flex-grow:1; }
 .reference-body { padding:14px; }.encounter-nav .back { flex:1 1 125px; }
 .abyss-section,.abyss-forms,.abyss-examples,.matrix-guide,.matrix-steps,.matrix-score,.matrix-details,.abyss-attack-detail { scroll-margin-top:155px; }
 .calc-grid { gap:22px; }.section-state { font-size:12px; }
}
