.table-map-tools{margin:12px 0;padding:12px;border:1px solid #59654c;border-radius:8px;background:#19291f;min-width:0}.table-map-tools summary{cursor:pointer;color:#e5ca8c;font-weight:700}.table-map-tools .toolbar{flex-wrap:wrap}.route-proposal{border-top:1px solid #42513d;padding:10px 0}.table-focus-banner{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0;padding:10px 14px;border:1px solid #b59a60;background:#293721;border-radius:8px}.table-focus-banner[hidden],.table-controls[hidden]{display:none}.table-controls:empty{display:none}.table-controls{border:1px solid #64704e;padding:10px;border-radius:8px;margin:10px 0}.table-controls>div{padding:5px 0}.table-controls button{margin:4px}.shared-map-ping circle{fill:#e5bf5a33;stroke:#ffe09b;stroke-width:4;vector-effect:non-scaling-stroke}.shared-map-ping text{font:700 17px system-ui;fill:#fff3cc;paint-order:stroke;stroke:#16251d;stroke-width:4px}.route-proposal-line{fill:none;stroke:#d4b7ec;stroke-width:4;stroke-dasharray:9 5;vector-effect:non-scaling-stroke}.history-dialog{width:min(860px,calc(100% - 24px));max-height:88vh;overflow:auto}.history-entry{border-top:1px solid #657154;margin-top:14px;padding-top:10px}.history-entry h3{margin:0}.history-entry p{margin:6px 0}.history-entry dd{margin-left:12px;overflow-wrap:anywhere;font-size:12px}.history-entry dt{font-weight:bold}.history-entry del{color:#cba7a1}.compact-hero{margin:10px 0 16px;padding:10px 14px;border:1px solid #53624b;border-radius:8px;background:#18281e}.compact-hero summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px;cursor:pointer}.hero-quick-vitals{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.hero-quick-vitals span{padding:3px 6px;background:#273827;border-radius:4px}.hero-quick-vitals .wounded{color:#ffb0a4}.compact-hero .toolbar{flex-wrap:wrap}.compact-hero select{max-width:100%}.hero-quick-status{color:#e5c785;font-size:12px}.hero-quick-actions{display:flex;gap:8px;flex-wrap:wrap;padding-top:10px}@media(max-width:650px){.table-map-tools{padding:10px}.table-map-tools .toolbar button{flex:1 1 130px}.table-focus-banner span{flex-basis:100%}.hero-quick-vitals{gap:4px}.compact-hero{padding:9px}.history-dialog{padding:12px}}
.compact-hero>summary>strong{overflow-wrap:anywhere;min-width:0}.hero-expand-hint{margin-left:auto;font-size:11px;color:#b8c3ad;display:flex;align-items:center;gap:7px}.hero-expand-hint:after{content:'⌄';font-size:18px}.compact-hero[open] .hero-expand-hint:after{content:'⌃'}.hero-selection{padding-top:12px;border-top:1px solid #3b4e37;margin-top:12px}.hero-selection>label:first-child{flex:1 1 180px;max-width:340px}.hero-selection>label:last-child{font-size:12px}.hero-selection input[type=checkbox]{width:auto}.hero-dashboard{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;margin-top:16px}.hero-portrait{margin:0;display:flex;align-items:center;flex-direction:column;justify-content:space-between;min-width:0;padding:12px 10px;border:1px solid #59664a;border-radius:10px;background:radial-gradient(ellipse at 50% 75%,#bda05b30 0,transparent 65%),linear-gradient(145deg,#2d3c2b,#16271e);position:relative;overflow:hidden}.hero-portrait:before{content:'';position:absolute;inset:11px;border:1px solid #a18b4b35;border-radius:50% 50% 8px 8px;pointer-events:none}.hero-portrait img{width:100%;height:180px;object-fit:contain;position:relative;filter:drop-shadow(0 8px 5px #0007)}.hero-portrait img:not([src]){visibility:hidden}.hero-portrait figcaption{text-align:center;color:#ecd29b;overflow-wrap:anywhere;font:700 15px/1.4 Georgia,serif;position:relative}.hero-portrait figcaption small{display:block;color:#bcc6b0;font:11px/1.5 system-ui;margin-top:4px}.hero-dashboard-main{min-width:0}.hero-attribute-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.hero-attribute{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px;border:1px solid #4d6248;border-radius:7px;background:#233527;color:#b7cfa7;min-width:0}.hero-symbol{width:25px;height:25px;flex:0 0 25px}.hero-attribute>span:not(.hero-attribute-track){min-width:0;flex:1}.hero-attribute small{font-size:10px;display:block;overflow-wrap:anywhere;color:#c4cebb}.hero-attribute strong{font:700 24px/1.2 Georgia,serif;color:#f0dfb9;white-space:nowrap}.hero-attribute em{font:12px system-ui;color:#b7c3ac}.hero-attribute-track{display:block;flex:1 0 100%;height:5px;border-radius:4px;background:#0f1d16;overflow:hidden}.hero-attribute-track i{display:block;height:100%;background:#a3ba79}.hero-attribute.is-hurt{border-color:#91644a;color:#e3a57e}.hero-attribute.is-hurt .hero-attribute-track i{background:#dfa176}.hero-attribute.is-broken{background:#3a2924;border-color:#ac7560}.hero-attribute.is-broken strong{color:#ffc8ae}.hero-willpower{border-color:#8c794b;background:#383b25;color:#e7ca7f}.hero-condition-strip{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:12px 0;min-height:32px}.hero-condition{display:flex;align-items:center;gap:6px;padding:5px 9px;font-size:12px;border-color:#9c824c;background:#3b3b26;color:#f2d49a}.hero-condition .hero-symbol{width:20px;height:20px;flex-basis:20px}.hero-condition.danger{border-color:#a16f56;background:#3d2c23;color:#ffcfb1}.hero-condition-clear{font-size:12px;color:#bdcbb6}.hero-supply-heading,.hero-equipment-heading{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:12px 0 8px}.hero-supply-heading h3,.hero-equipment-heading h3{font-size:15px;margin:0;color:#dfc58e}.hero-supply-heading small,.hero-equipment-heading small{font-size:10px;color:#bac5ad}.hero-supply-grid,.hero-gear-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.hero-supply,.hero-gear-tile{margin:0;display:flex;align-items:center;gap:8px;padding:8px;text-align:left;min-width:0;border-color:#475c40;background:#1c2e22}.hero-supply>svg,.hero-gear-tile>svg{width:44px;height:44px;flex:0 0 44px}.hero-supply>span:not(.hero-supply-steps),.hero-gear-tile>span{min-width:0;flex:1}.hero-supply small,.hero-gear-tile small{display:block;font-size:10px;color:#c2cbb8}.hero-supply strong{display:block;font:700 17px Georgia,serif;color:#ecd7a4}.hero-gear-tile strong{display:block;font-size:12px;line-height:1.4;overflow-wrap:anywhere;color:#e5d7b7}.hero-supply{flex-wrap:wrap}.hero-supply-steps{display:flex;flex:1 0 100%;gap:3px}.hero-supply-steps i{height:4px;border-radius:3px;background:#0d1c14;flex:1}.hero-supply-steps .filled{background:#bda366}.hero-supply.depleted{border-style:dashed;border-color:#86664c}.hero-supply.depleted strong{color:#d2a887}.hero-gear-tile.empty>svg{opacity:.38}.hero-gear-tile.empty strong{font-weight:400;color:#a4b59c}.hero-gear-tile .hero-item-wear{color:#e6b38a}.hero-quick-actions{border-top:1px solid #3e5238;margin-top:14px;padding-top:14px}.hero-quick-actions button{flex:1 1 150px}
@media(max-width:900px){.hero-dashboard{grid-template-columns:120px minmax(0,1fr);gap:12px}.hero-attribute-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hero-willpower{grid-column:1/-1;padding:7px 10px}.hero-willpower>span{display:flex;align-items:center;justify-content:space-between}.hero-willpower strong{font-size:20px}.hero-supply-grid,.hero-gear-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-attribute{gap:5px;padding:8px}.hero-attribute .hero-symbol{width:20px;height:20px;flex-basis:20px}}
@media(max-width:600px){.compact-hero>summary .hero-quick-vitals{flex-basis:100%}.hero-expand-hint{font-size:10px}.hero-dashboard{grid-template-columns:1fr}.hero-portrait{flex-direction:row;justify-content:flex-start;gap:16px;padding:8px 14px}.hero-portrait:before{inset:8px;border-radius:6px}.hero-portrait img{width:72px;height:92px;flex:none}.hero-portrait figcaption{text-align:left;font-size:18px}.hero-attribute-grid{gap:5px}.hero-attribute{padding:8px 6px;gap:4px}.hero-attribute>span:not(.hero-attribute-track){flex:1 0 100%}.hero-willpower>span:not(.hero-attribute-track){flex:1}.hero-attribute strong{font-size:22px}.hero-attribute em{font-size:11px}.hero-attribute small{font-size:9px}.hero-quick-actions{gap:6px}.hero-quick-actions button{font-size:12px;flex-basis:135px}.hero-condition-strip{gap:5px}.hero-gear-tile{padding:7px}.hero-gear-tile>svg{width:36px;height:36px;flex-basis:36px}}
