/* Keep the paper and faction colors, with solid, readable ink for game information. */
body{--ink:#252d28;--muted:#53594f;--gold:#775d32;--green:#375b36;font-size:15px;line-height:1.85}
.hero:after{background:linear-gradient(90deg,rgba(248,244,235,.92),rgba(248,244,235,.7) 42%,rgba(248,244,235,.05) 78%)}
.hero-copy>p{font:500 15px/2 var(--sans);color:#354135}
.hero-quote{font-size:12px;font-weight:600;color:#45503e;letter-spacing:1.5px}
.eyebrow,.panel-eyebrow,.char-label,.event-eyebrow,.report-label{font-size:12px;font-weight:600}
.birth-panel .intro,.birth-note,.family-eligibility-note,.setup-random-note,#setup-preview{font-size:13px;color:var(--muted);line-height:1.85}
.name-field label,.name-field input::placeholder,.setup-select-row label,.fate-cell span{font-size:13px;color:#56584a}
.name-field input{font-size:16px}.setup-select-row select{font-size:14px;min-height:42px}
.micro,.family-catalog-open,.talent-catalog-open,.setup-resource-note{font-size:12px;color:var(--muted);line-height:1.8}
.talent-catalog-open{display:block;text-align:left;margin:0 0 14px}
.feature p,.section-heading p,.path-card p,.character-origin,.char-stamp{font-size:13px}
.path-card>span,.topline,.footer,.footer .source-button{font-size:12px;color:var(--muted)}
.char-title{font-size:15px;color:#414c40}.stat-row>div:first-child,.health-line{font-size:14px}
.character-panel .text-button{font-size:12px}
.event-description,.result-box>p,.biography-body,.biography-judgment p{font-family:var(--sans);font-size:16px;font-weight:400;line-height:2;color:#333f34}
.event-description{max-width:820px}.result-box .world-result-entry p{font-size:14px;color:#3e493c}
.choice{background:var(--light);border-color:#b9b19e}
.choice-title,.recruitment-choices .choice-title{font-size:17px;font-weight:600;color:var(--ink)}
.choice-description{font-size:14px;line-height:1.9;color:#475044}
.choice-label,.forecast-guide,.game-bottom{font-size:12px;line-height:1.8;letter-spacing:0;color:var(--muted)}
.choice:disabled,.choice.disabled{opacity:1;background:#e7e2d7;border-style:dashed}
.choice.disabled .choice-title{color:#555c50}.choice.disabled .choice-requirement{color:#773b2b}
.forecast-gain b{font-size:13px;color:#315531}.forecast-gain small{font-size:12px;color:#4d5648}
.forecast-fixed,.political-chance,.danger-note,.choice-requirement{font-size:13px}
.forecast-fixed small,.age-cost,.patronage-choice,.trait-choice-note{font-size:12px;opacity:1}
.trait-choice-note>b{color:#6d552b}.growth-outcome>span,.growth-outcome small,.growth-results>p{font-size:12px;color:var(--muted)}
.log-heading,.log-date,.log-entry p{font-size:13px;color:var(--muted)}
.text-button{font-weight:500;color:var(--red)}
.historical-context,.historical-context>span,.historical-context small{font-size:12px;line-height:1.85}
.historical-context p{color:#4e5846}.historical-context{background:#e6e0d1}
.modal-copy{font-size:14px;color:#414b3f;line-height:1.95}
.origin-reveal p,.birth-separation p,.birth-upbringing p,.birth-rule{font-size:14px!important;color:#414b3f;line-height:1.95!important}
.birth-identity>span,.birth-identity>small,.birth-family small,.birth-upbringing>span,.innate-grid span,.birth-table{font-size:12px}
.birth-identity .text-button,.trait-identity .text-button{font-size:12px!important}
.trait-identity>p,.trait-identity>span,.specialty-slot-title,.trait-effects li,.trait-rules{font-size:12px}
.trait-card>p{font-size:13px!important}.trait-card-top,.trait-card-top small{font-size:12px}
.world-strip span,.world-strip small,.patronage-strip>span,.patronage-strip p,.origin-trait>span,.origin-trait p{font-size:12px;color:var(--muted)}
.world-strip strong{font-size:17px}.patronage-strip .text-button{font-size:12px}
.faction-banner-kicker,.faction-banner-title>p,.faction-banner-office>span,.faction-banner-next,.faction-banner-note,.faction-banner-office>.faction-ornament-level{font-size:12px;line-height:1.8}
.unification-invite p,.unification-invite .text-button,.unification-bottom p,.unification-bottom .text-button,.unification-forecasts p,.unification-forecasts small{font-size:12px}
.conquest-panel-heading>div>span,.conquest-panel-heading>strong,.conquest-territory small,.conquest-territory>span,.conquest-court span,.conquest-political-steps small,.conquest-panel-bottom,.conquest-panel-bottom .text-button,.conquest-records{font-size:12px}
.conquest-political-steps li{opacity:1}.conquest-political-steps b{font-size:13px}.conquest-court b{font-size:15px}
.policy-panel,.policy-panel p,.policy-panel-bottom>span,.policy-intro,.policy-note{color:#4b5140}
.policy-panel p,.policy-panel-bottom>span,.policy-panel-bottom button,.policy-rules{font-size:13px}
.policy-panel-top span{color:#715936;font-size:12px}
.policy-option>p{font-size:14px;color:#4c5445}
.policy-benefit,.policy-tradeoff{font-size:13px}.policy-benefit p,.policy-tradeoff p{color:#4d5343}
.policy-option .policy-modifiers,.policy-source,.policy-footnote,.policy-option .policy-locked{font-size:12px;color:#5c5747}
.policy-option>button:disabled{opacity:1;color:#53584c;background:#e5dfd1;border:1px dashed #a99e87}
.policy-option-heading small{font-size:11px;color:#66573d}
.policy-current,.policy-current p{font-size:13px;color:#46543b}
.talent-badge{margin:16px 0;padding:12px 14px;border:1px solid #b9a778;background:#f4ecda}
.talent-badge strong{display:block;font:700 20px/1.6 var(--serif);color:#694921}
.talent-badge small,.talent-badge p{font-size:12px;color:#53523e}
.talent-rank-list{list-style:none;padding:0;margin:18px 0;display:grid;gap:10px}
.talent-rank-list li{border:1px solid var(--line);padding:14px;background:var(--light)}
.talent-rank-list h3{font:600 17px var(--serif)}
.talent-rank-list p,.talent-rank-list small{font-size:13px;color:var(--muted)}
.campaign-requirements{margin:14px 0;padding:14px 16px;background:#eee8d9;border:1px solid #c9bfa9}
.campaign-requirements h4{font:600 16px var(--serif);margin:0 0 9px}
.campaign-requirements p,.campaign-requirements li{font-size:13px;line-height:1.85;color:#454f40}
.campaign-requirements ul{padding-left:20px;margin:8px 0}
.campaign-role-note{display:block;margin-top:10px;border-top:1px solid var(--line);padding-top:10px;font-size:13px;color:#4b513f}
.campaign-role-note b{color:var(--red)}
@media(max-width:600px){
  .hero-copy>p{font-size:14px;max-width:260px}.hero-quote{font-size:12px;letter-spacing:0}
  .event-description,.result-box>p,.biography-body{font-size:15px}
  .choice-title,.recruitment-choices .choice-title{font-size:16px}.choice-description{font-size:13px}
  .choice-label{align-items:flex-start;flex-wrap:wrap}.choice-label .text-button{margin-left:0}
  .world-strip strong{font-size:16px}.world-strip small{line-height:1.7}
  .conquest-territory{flex-wrap:wrap}.conquest-territory-meter{min-width:65px}
  .birth-note{margin-bottom:12px}.game-bottom{gap:14px}.family-rank-heading{flex-wrap:wrap}
}
.campaign-readiness{background:#efe7d6;border:1px solid #baac8b;padding:15px 18px;color:#354333;margin:15px 0;font-size:13px;line-height:1.9}.campaign-readiness strong,.campaign-readiness b{color:#313c2b}.campaign-readiness small{font-size:12px;color:#575b4c}.campaign-readiness ul{padding-left:20px}.talent-rank-table{font-size:13px}.relationship-panel{border-top:3px solid #79643d}.relationship-panel .policy-rules span{font-size:13px}.relationship-modal .policy-note{color:#54594d}.relationship-modal .policy-source{color:#415a36;text-decoration:underline}
