/* One complete hero panel; only a large collection needs a bounded list. */
.character-sheet .statistics-content{display:flex;flex-direction:column;gap:7px;overflow:hidden;padding:12px 14px;flex:1;min-height:0}
.character-sheet .statistics-content>*{flex:none;margin:0}
.character-sheet .character-identity{gap:10px;margin:0}
.character-sheet .character-identity h3{font-size:19px;line-height:1.15;margin-bottom:3px}
.character-sheet .character-identity h3.numeric-name{font:700 18px/1.2 var(--numbers,var(--sans));white-space:nowrap;overflow-wrap:normal;letter-spacing:-.3px}
.character-sheet .character-identity p{font-size:11px;line-height:1.35}
.character-sheet .character-portrait>span{width:36px;height:30px;font:700 14px var(--sans);right:-6px}
.character-sheet .character-experience{gap:4px 8px}
.character-sheet .character-section-link .parchment-button{min-height:34px;padding:5px 18px;font-size:17px}
.character-sheet .character-resources{padding:8px 0;gap:7px}
.character-sheet .character-resource>div{height:21px}
.character-sheet .character-resource strong{font-size:12px;line-height:20px}
.character-sheet .character-combat{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px 0}
.character-sheet .character-combat>div{display:flex;flex-direction:column;position:relative;gap:4px;min-width:0;align-items:flex-start}
.character-sheet .character-combat strong{grid-column:1/-1;grid-row:1;font-size:18px;line-height:1.15;white-space:nowrap;overflow-wrap:normal;letter-spacing:-.3px}
.character-sheet .character-combat svg{position:absolute;left:0;bottom:0;width:14px;height:14px}
.character-sheet .character-combat span{font-size:11px;padding-left:18px}
.character-sheet .attributes-heading{font-size:19px;text-align:center}
.character-sheet .attribute-allocation{padding:5px 8px}
.character-sheet .attribute-row{min-height:30px;font-size:12px;grid-template-columns:minmax(0,1fr) 30px 27px;gap:5px}
.character-sheet .attribute-row>b{font-size:20px}
.character-sheet .attribute-points{margin-top:4px;padding:6px 0 1px;font-size:11px}
.character-sheet .attribute-points strong{font-size:20px}
.character-sheet .attribute-note{font-size:11px;line-height:1.35}
.character-sheet .character-purse{display:grid;grid-template-columns:1fr;gap:3px;padding-top:6px;font-size:11px;line-height:1.3}
.character-sheet .character-purse>span{display:flex;align-items:baseline;justify-content:space-between;gap:6px}
.character-sheet .character-purse b{display:inline;margin:0;font-size:12px;line-height:1.3;white-space:nowrap;overflow-wrap:normal}
.character-sheet .inventory-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:9px 12px 6px}
.character-sheet .inventory-category-tabs{flex:none}
.character-sheet .inventory-group{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;overscroll-behavior:contain;margin:0;padding:0 3px 5px}
.character-sheet .inventory-group h3{font-size:18px;margin:2px 0 8px}
.character-sheet .inventory-grid{align-content:start;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}
.character-sheet .inventory-slot{max-width:none;min-width:0}
.character-sheet .expanded-bag-link{flex:none;margin:5px 0 0;padding:3px;font-size:15px}
.character-sheet .selected-item{flex:none;background:none;padding:8px 14px;max-height:46%;overflow:auto;border-top:1px solid #80592b44}
.character-sheet .selected-item .inventory-hint{margin:0;font-size:12px;line-height:1.35}
.character-sheet .item-inspection{display:flex;flex-direction:column;gap:6px}
.character-sheet .item-inspection>*{margin:0!important}
.character-sheet .item-inspection h3{font-size:21px}
.character-sheet .item-inspection p,.character-sheet .item-trait,.character-sheet .gear-comparison{font-size:12px!important;line-height:1.35}
.character-sheet .selected-item .equip-button{width:100%;min-height:34px;font-size:16px;padding:5px}
.character-sheet .item-sale-actions{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.character-sheet .wing-footer{padding:8px 0;min-height:50px}
.character-sheet .wing-footer .parchment-button{min-height:34px;padding:5px 12px;font-size:17px}

/* Five skills and all three abilities remain on their respective single pages. */
.training-dialog[data-tab][open]{height:min(720px,calc(100dvh - 24px));width:min(880px,calc(100vw - 24px));overflow:hidden}
.training-dialog[data-tab] .training-header{padding:12px 24px 0}
.training-dialog[data-tab] .training-header h2{font-size:34px;margin:6px 0 8px}
.training-dialog[data-tab] .training-header>p{font-size:15px;line-height:1.3;margin:8px 0}
.training-dialog[data-tab] .training-scroll{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(5,minmax(0,1fr));min-height:0;overflow:hidden;margin:0 16px;padding:0;flex:1}
.training-dialog[data-tab=abilities] .training-scroll{grid-template-rows:repeat(3,minmax(0,1fr))}
.training-dialog[data-tab] .training-row{min-height:0;grid-template-columns:34px minmax(0,1fr) 140px;gap:12px;padding:4px 8px}
.training-dialog[data-tab] .training-skill-glyph{width:34px;height:44px;border:0;border-radius:0;background:none;box-shadow:none}
.training-dialog[data-tab] .training-skill-glyph svg{display:block;position:static;width:100%;height:100%;filter:drop-shadow(0 2px 3px #0005)}
.training-dialog[data-tab] .training-copy h3{font-size:24px;line-height:1.05;margin:0 0 3px}
.training-dialog[data-tab] .training-copy p{font-size:15px;line-height:1.25;margin:3px 0;min-height:0}
.training-dialog[data-tab] .training-copy>small{font-size:11px;line-height:1.3;max-width:none}
.training-dialog[data-tab] .training-rank{font-size:11px;line-height:1.2;margin-top:3px}
.training-dialog[data-tab] .training-actions{gap:5px;padding:0;align-self:center}
.training-dialog[data-tab] .training-actions .parchment-button{min-height:32px;font-size:17px;padding:5px 8px;min-width:0}
.training-dialog[data-tab] .training-price{font-size:13px;line-height:1.3}
.training-dialog[data-tab] .training-actions>small{font-size:11px;line-height:1.25}
.training-dialog[data-tab] .training-footer{padding:8px 16px}
.training-dialog[data-tab] .training-summary{gap:8px 22px;flex-wrap:wrap;font-size:15px}
.training-dialog[data-tab] .training-summary b{font-size:18px}
.training-dialog[data-tab] .training-footer>p{font-size:12px;line-height:1.3;margin:5px 0 0}
.training-dialog[data-tab] .training-footer .training-notice{min-height:14px;font-size:11px;line-height:1.25;margin-top:4px}
.training-dialog[data-tab] .training-notice:empty{display:block;visibility:hidden}
.training-dialog[data-tab] .ability-training{grid-template-columns:64px minmax(0,1fr) 140px}
.training-dialog[data-tab] .ability-training .training-copy{display:block}
.training-dialog[data-tab] .ability-training .training-copy>*{grid-column:auto}
.training-dialog[data-tab] .ability-picture{width:62px;height:62px;grid-column:auto;grid-row:auto}
.training-dialog[data-tab] .ability-training .training-actions{grid-column:auto;grid-row:auto;flex-direction:column;flex-wrap:nowrap}
.training-dialog[data-tab] .ability-kind{font-size:8px;letter-spacing:.5px}
.training-dialog[data-tab] .ability-progress{height:5px;margin:5px 0}
.training-dialog[data-tab] .ability-cost{font-size:14px;gap:12px;flex-wrap:wrap;margin-top:5px}
.training-dialog[data-tab] .ability-cost svg,.training-dialog[data-tab] .training-summary svg{width:18px;height:18px}
.training-dialog[data-tab] .ability-source{font-size:12px;line-height:1.3;margin-top:5px}
.training-dialog[data-tab] .ability-source>span{font-size:13px;display:inline}
@media(max-height:600px){
 .character-sheet .statistics-content{gap:4px;padding-block:7px}
 .character-sheet .character-identity h3{font-size:19px}.character-sheet .character-portrait{width:38px;height:38px}
 .character-sheet .character-section-link .parchment-button{min-height:28px;font-size:15px;padding:3px 12px}
 .character-sheet .character-resources{padding:5px 0;gap:4px}.character-sheet .character-combat{padding:5px 0}
 .character-sheet .attribute-row{min-height:26px}.character-sheet .attribute-note{display:none}
 .character-sheet .character-purse{font-size:10px}.character-sheet .wing-heading{min-height:40px}.character-sheet .wing-heading h2{font-size:23px}
 .character-sheet .wing-footer{min-height:38px;padding:4px 0}.character-sheet .wing-footer .parchment-button{min-height:28px;font-size:15px}
 .training-dialog[data-tab] .training-header{padding-top:7px}
 .training-dialog[data-tab] .training-eyebrow,.training-dialog[data-tab] .training-header>p{display:none}
 .training-dialog[data-tab] .training-header h2{font-size:27px;margin:4px 0 7px}
 .training-dialog[data-tab] .training-tabs button{min-height:28px;padding-block:3px;font-size:17px}
 .training-dialog[data-tab] .training-row{padding:4px 6px;gap:8px;grid-template-columns:26px minmax(0,1fr) 118px}
 .training-dialog[data-tab] .training-copy h3{font-size:19px}.training-dialog[data-tab] .training-copy p{font-size:13px}
 .training-dialog[data-tab] .training-copy>small{display:none}.training-dialog[data-tab] .training-rank{font-size:10px;margin-top:2px}
 .training-dialog[data-tab] .training-actions .parchment-button{min-height:28px;padding:3px 6px;font-size:15px}
 .training-dialog[data-tab] .training-skill-glyph{width:26px;height:36px}
 .training-dialog[data-tab] .training-footer{padding:5px 12px}.training-dialog[data-tab] .training-summary{font-size:12px;gap:6px 14px}.training-dialog[data-tab] .training-summary b{font-size:16px}
 .training-dialog[data-tab] .training-footer>p{font-size:11px;margin-top:3px}
 .training-dialog[data-tab] .ability-training{grid-template-columns:44px minmax(0,1fr) 100px}
 .training-dialog[data-tab] .ability-picture{width:42px;height:42px}
 .training-dialog[data-tab] .ability-kind,.training-dialog[data-tab] .ability-progress{display:none}
 .training-dialog[data-tab] .ability-cost{font-size:12px;gap:8px}.training-dialog[data-tab] .ability-source{font-size:11px;margin-top:3px}
}
@media(max-width:600px){
 .training-dialog[data-tab] .training-scroll{margin-inline:9px}
 .training-dialog[data-tab] .training-row{grid-template-columns:24px minmax(0,1fr) 100px;gap:7px;padding-inline:4px}
 .training-dialog[data-tab] .training-actions .parchment-button{font-size:14px;white-space:normal}
 .training-dialog[data-tab] .skill-training .training-actions>*{max-width:none}
 .training-dialog[data-tab] .skill-training .training-actions{grid-column:auto;flex-direction:column}
 .training-dialog[data-tab] .training-copy h3{font-size:20px}.training-dialog[data-tab] .training-copy p{font-size:13px}
 .training-dialog[data-tab] .training-copy>small{font-size:10px}
 .training-dialog[data-tab] .ability-training{grid-template-columns:42px minmax(0,1fr) 92px}
 .training-dialog[data-tab] .ability-picture{width:40px;height:40px}
 .training-dialog[data-tab] .ability-cost{font-size:12px;gap:4px 8px}
 .training-dialog[data-tab] .training-summary{gap:5px 12px;font-size:13px}
 .training-dialog[data-tab] .training-summary b{font-size:16px}
}
@media(max-height:500px){
 .character-sheet .statistics-content{gap:0;padding:4px 12px}
 .character-sheet .character-portrait{width:32px;height:32px}.character-sheet .character-identity{gap:8px}
 .character-sheet .character-identity h3{font-size:17px}.character-sheet .character-identity p{font-size:10px}
 .character-sheet .character-experience small{font-size:10px}
 .character-sheet .character-section-link .parchment-button{min-height:24px;font-size:14px;padding:2px 10px}
 .character-sheet .character-resources{padding:4px 0;gap:4px}.character-sheet .character-resource>div{height:18px}.character-sheet .character-resource strong{font-size:11px;line-height:17px}
 .character-sheet .character-combat{padding:4px 0;gap:8px}.character-sheet .character-combat>div{grid-template-columns:1fr;gap:2px}
 .character-sheet .character-combat svg{display:none}.character-sheet .character-combat strong{font-size:16px;white-space:nowrap;overflow-wrap:normal}.character-sheet .character-combat span{font-size:10px;padding-left:0}
 .character-sheet .attributes-heading{font-size:17px}.character-sheet .attribute-allocation{padding:3px 6px}
 .character-sheet .attribute-row{min-height:22px;font-size:11px}.character-sheet .attribute-row>b{font-size:17px}
 .character-sheet .attribute-plus{height:21px;width:23px;font-size:17px;line-height:19px}
 .character-sheet .attribute-points{margin-top:3px;padding-top:4px;font-size:10px}.character-sheet .attribute-points strong{font-size:17px}
 .character-sheet .character-purse{padding-top:4px;font-size:10px}.character-sheet .character-purse b{font-size:12px}
 .training-dialog[data-tab] .skill-training{padding-block:2px}
 .training-dialog[data-tab] .skill-training .training-copy h3{font-size:18px;margin-bottom:1px}
 .training-dialog[data-tab] .skill-training .training-copy p{font-size:12px;line-height:1.2;margin:1px 0}
 .training-dialog[data-tab] .skill-training .training-rank{margin-top:1px}
 .training-dialog[data-tab] .skill-training .training-actions{gap:3px}
 .training-dialog[data-tab] .skill-training .training-price{font-size:11px;line-height:1.15}
}
@media(max-width:420px){
 .training-dialog[data-tab] .training-header h2{font-size:30px}
 .training-dialog[data-tab] .training-row{grid-template-columns:minmax(0,1fr) 92px;padding:4px;gap:7px}
 .training-dialog[data-tab] .training-skill-glyph,.training-dialog[data-tab] .ability-picture{position:absolute;left:6px;top:8px;width:24px;height:24px}
 .training-dialog[data-tab] .training-skill-glyph svg{width:100%;height:100%}
 .training-dialog[data-tab] .training-copy h3{padding-left:28px;margin-bottom:2px}
 .training-dialog[data-tab] .training-rank{margin-top:2px}
 .training-dialog[data-tab] .ability-kind{display:none}
 .training-dialog[data-tab] .ability-training .training-actions{grid-column:2}
}
