/* Training presentation only. Calculations and saved settings live in JS. */
body .market-record-controls { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:14px; }
body #trainingRecordSummary { font-size:12px; color:#786a54; }
body .training-record-window .market-table { margin-top:18px; }
body .training-record-window input { width:120px; max-width:100%; height:36px; border:1px solid #d9cfbe; border-radius:7px; background:#fff; text-align:center; color:#342c20; font:inherit; }
body .training-record-actions { display:flex; justify-content:flex-end; margin-top:16px; }
body .market-window { border:1px solid #d8ccb7; border-radius:16px; background:#f7f5f0; box-shadow:0 18px 70px #30251040; }
body .market-heading { padding:15px 22px; background:#bd9652; color:#302512; }
body .market-heading h2 { font-size:22px; letter-spacing:-.4px; }
body .market-body { padding:20px 22px; }
body .market-overview { margin-bottom:18px; gap:14px; }
body .market-context { font-size:17px; color:#473a26; margin-bottom:10px; }
body .market-summary { color:#82735b; font-size:13px; }
body .market-summary b { color:#342c20; }
body .market-table { border-collapse:separate; border-spacing:0; font-variant-numeric:tabular-nums; }
body .market-table caption { color:#514535; font-size:13px; padding-bottom:10px; }
body .market-table th { background:#eee6d7; color:#786a54; font-size:11px; letter-spacing:.4px; border:0; border-bottom:1px solid #e0d5c3; padding:11px 8px; }
body .market-table th:first-child { border-radius:9px 0 0 0; }
body .market-table th:last-child { border-radius:0 9px 0 0; }
body .market-table td { border:0; border-bottom:1px solid #e0d8c9; padding:13px 8px; background:#edf3e7; color:#3a4b2f; font-size:15px; }
body .market-table td + td, body .market-table th + th { border-left:1px solid #e5ded1; }
body .market-table td:first-child { border-radius:0 0 0 9px; }
body .market-table td:last-child { border-radius:0 0 9px 0; background:#e1ebd8; }
body .market-village { margin-top:20px; gap:24px; padding:16px; border:1px solid #e5ddcf; border-radius:12px; background:white; box-shadow:0 3px 12px #392b1304; align-items:center; }
body .market-village .market-table td { background:#faf8f3; color:#423a2c; }
body .market-village .market-table td:last-child { background:#f1e9d9; color:#785b2f; }
body .market-village:has([data-trip-resource]) { border-color:#d8c298; background:#fffcf5; }
body .market-capacity { gap:8px; font-size:12px; color:#786a54; }
body .market-capacity input, body .market-trip-progress input { border:1px solid #d9cfbe; border-radius:8px; background:#fff; color:#342c20; font-variant-numeric:tabular-nums; }
body .market-trip-progress { gap:10px 14px; font-size:13px; color:#786a54; }
body .market-trip-progress label { font-size:12px; }
body .market-trip-progress b { color:#342c20; }
body #remainingTrips { display:inline-block; padding:5px 9px; border-radius:6px; background:#f3e7ce; color:#785b2f; }
body .market-village > div > p:not(.market-note) { font-size:13px; color:#786a54; margin:12px 0; }
body .market-village > div > p b { color:#342c20; }
body .market-village-reader textarea { border-color:#d9cfbe; background:#faf9f6; border-radius:7px; }
body .market-village-reader button, body .market-copy-buttons button { border:1px solid #d9cfbe; background:#f5f1e9; color:#514535; border-radius:7px; font-size:12px; }
body .market-village-reader button:hover, body .market-copy-buttons button:not(:disabled):hover { background:#ece0c9; border-color:#bd9652; }
body .market-copy-buttons { gap:7px; }
body .market-copy-buttons button[data-copy-resource="all"] { background:#bd9652; color:#241b0d; border-color:#a58244; }
body .market-note { font-size:11px; line-height:1.5; color:#8a7e6b; margin-top:10px; }
body .market-village-status:empty, body #transportStatus:empty, body #copyResourceStatus:empty { display:none; }
body .market-village-reader.expanded { background:#fff; border-color:#d9cfbe; border-radius:10px; }
@media(max-width:800px) {
    body .market-body { padding:14px; }
    body .market-village { padding:12px; gap:16px; }
    body .market-table th { padding:9px 4px; font-size:10px; }
    body .market-table td { padding:11px 4px; font-size:12px; }
}
body .content { padding:48px 32px; background:#f5f3ef; }
body .training-wrap { width:min(1120px,100%); }
body .page-title { color:#342c20; font-size:30px; letter-spacing:-.6px; margin-bottom:28px; }
body .selectors { width:min(950px,100%); gap:16px; padding:22px; margin-bottom:24px; background:#fff; border:1px solid #e5deD2; border-radius:14px; box-shadow:0 4px 16px #392b1305; }
body .select-box label, body .calc-field > span { color:#786a54; font-size:11px; letter-spacing:.7px; }
body .select-box select { height:44px; border:1px solid #d9cfbe; border-radius:8px; color:#342c20; font-size:15px; }
body .unit-name { color:#514535; font-size:18px; letter-spacing:1px; margin:0 0 14px; }
body .info-table, body .calc-result { border-collapse:separate; border-spacing:0; overflow:hidden; font-variant-numeric:tabular-nums; }
body .info-table { border:1px solid #e0d8c9; border-radius:12px; box-shadow:0 4px 16px #392b1305; }
body .info-table th, body .calc-result th { border:0; border-bottom:1px solid #e8dfcf; background:#f4eddf; color:#786a54; font-size:11px; letter-spacing:.4px; padding:13px 8px; }
body .info-table td { border:0; padding:17px 8px; background:#fff; color:#342c20; font-size:17px; }
body .info-table td.total { background:#fbf2df; color:#886127; }
body .info-table th + th, body .info-table td + td { border-left:1px solid #eee7db; }
body .building-line { color:#897d6b; font-size:12px; margin-top:12px; }
body .training-calculator { margin-top:26px; border:1px solid #e0d8c9; border-radius:14px; background:white; box-shadow:0 6px 24px #392b1308; }
body .calc-tabs { border:0; border-bottom:1px solid #e7dfd2; padding:7px; gap:6px; background:#eee9e0; border-radius:14px 14px 0 0; }
body .calc-tab { height:auto; min-height:44px; padding:10px 8px; border:0; border-radius:8px; color:#776b58; font-size:12px; line-height:1.4; transition:background .15s,color .15s; }
body .calc-tab + .calc-tab { border:0; }
body .calc-tab { background:transparent; }
body .calc-tab:hover { background:#f8f4ec; color:#342c20; }
body .calc-tab.active, body .calc-tab[data-mode="tocen"].active { background:#bd9652; color:#20190d; box-shadow:0 2px 5px #71542522; }
body .calc-inputs { padding:26px 18px; gap:12px; }
body .calc-field { gap:9px; }
body .calc-field input { border:1px solid #d9cfbe; border-radius:7px; color:#342c20; background:#fff; height:40px; font-variant-numeric:tabular-nums; }
body .calc-arrow { color:#aa8b56; font-size:22px; }
body .calc-result td { border:0; background:#f0f5ec; color:#35492d; padding:16px 8px; font-size:15px; }
body .calc-result td:last-child { background:#e3ecdc; }
body .calc-result th + th, body .calc-result td + td { border-left:1px solid #e3e8de; }
body .calc-note { padding:13px 18px; font-size:12px; color:#897d6b; }
body .txt-reader textarea, body .multi-all-reader textarea { border-color:#d9cfbe; border-radius:7px; background:#faf9f6; }
body .txt-reader button, body .multi-all-reader button { border:1px solid #d9cfbe; border-radius:7px; color:#514535; background:#f5f1e9; }
body .txt-reader button:hover, body .multi-all-reader button:hover { background:#eee3d0; }
body .txt-reader-status { top:44px; font-size:11px; }
body #multiInputs { padding:12px 18px !important; }
body #multiInputs > div:first-child { padding-bottom:10px; margin-bottom:8px !important; border-bottom:1px solid #eee7db; gap:10px !important; }
body #multiInputs select { height:38px !important; padding:0 8px; border:1px solid #d9cfbe; border-radius:7px; background:#fff; color:#342c20; font-weight:bold; }
body #multiTargetAll { height:38px !important; }
body #multiTargetAllBtn { height:38px !important; border-color:#d9cfbe !important; background:#f5f1e9 !important; color:#514535; }
body #multiRows { overflow-x:auto; }
body #multiRows > table { min-width:820px; border-collapse:separate !important; border-spacing:0; }
body #multiRows th { padding:8px 6px !important; border-bottom:1px solid #dfd5c4 !important; font-size:10px; letter-spacing:.5px; color:#786a54; background:#f6f1e7; }
body #multiRows td { padding:3px 5px !important; border-bottom:1px solid #eee7db !important; }
body #multiRows td[data-market-toggle] { border-left:4px solid #fff; font-size:12px; color:#283521; }
body #multiRows input { height:28px !important; border:1px solid #ddd5c8; border-radius:6px; color:#342c20; font-variant-numeric:tabular-nums; }
body #multiRows textarea, body #multiRows button { height:28px !important; }
body #multiRows .training-text-panel textarea { height:100% !important; }
body #multiRows .training-text-panel button { height:38px !important; }
body #multiRows input[readonly] { border-color:transparent; background:#f5f3ee !important; color:#786a54; }
body #multiRows textarea { border-color:#d9cfbe !important; background:#faf9f6; }
body #multiRows button { border-color:#d9cfbe !important; background:#f5f1e9 !important; color:#514535; }
body #multiInputs > div:last-child { border-top-color:#e7dfd2 !important; padding-top:10px !important; margin-top:10px !important; }
body .training-wrap:has(#multiInputs[style*="display: block"]) > .page-title { margin-bottom:12px; }
body .training-wrap:has(#multiInputs[style*="display: block"]) .training-calculator { margin-top:12px; }
body .training-wrap input:focus-visible, body .training-wrap select:focus-visible, body .training-wrap textarea:focus-visible, body .training-wrap button:focus-visible { outline:2px solid #987135; outline-offset:2px; }
body .market-button { border-radius:8px; box-shadow:0 2px 5px #71542515; }
@media(max-width:1100px) {
    body .content { padding:40px 18px; }
    body .calc-inputs.market-host { padding-right:18px !important; padding-bottom:70px; }
    body #multiInputs > div:first-child.market-host { padding-right:0 !important; padding-bottom:66px; }
    body #multiInputs .market-toolbar { bottom:14px; }
}
@media(max-width:700px) {
    body .sidebar { width:150px; padding:16px 8px; }
    body .menu-btn { font-size:13px; }
    body .content { padding:42px 12px 24px; }
    body .selectors { padding:16px; }
    body .select-box, body .select-box.small { min-width:0; width:100%; }
    body .info-table th, body .calc-result th { font-size:9px; padding:10px 3px; overflow-wrap:anywhere; }
    body .info-table td, body .calc-result td { font-size:12px; padding:12px 3px; overflow-wrap:anywhere; }
    body .calc-tab { font-size:10px; }
    body .calc-result { table-layout:fixed; width:100%; }
}
