/* Shared inheritance shopping list: names, required levels and quantities first. */
.acquired-bulk-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:12px 0}
.acquired-bulk-controls>button{min-height:44px;white-space:normal;max-width:100%}
.acquired-bulk-controls>.hint{font-size:12px;line-height:1.6}
.acquired-bulk-controls [hidden]{display:none!important}
.material-overview{min-width:0;container-type:inline-size}
.material-overview .party-material-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:14px 0 8px}
.material-overview .party-material-heading h2{margin:0;font-size:18px}
.party-material-actions{display:flex;flex-wrap:wrap;gap:8px}
.material-overview .party-material-actions button{min-height:40px;padding:7px 12px;font-size:12px}
.material-overview .party-material-totals{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 24px;padding:10px 0;border-block:1px solid var(--line);font-size:13px}
.party-material-totals strong{font-size:24px;margin-left:6px;font-variant-numeric:tabular-nums}
.party-material-totals small{font-size:12px;font-weight:400;margin-left:4px}
.party-material-attention{color:var(--game-red,#a53131)}
.material-overview .party-material-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;margin-top:10px;font-size:12px}
.party-material-controls label{display:flex;align-items:center;gap:8px}
.material-overview .party-material-controls select{min-height:40px;padding:6px 8px;color:var(--ink);background:var(--paper);border:1px solid var(--line);font:inherit;border-radius:4px}
.material-overview .party-material-search{flex-wrap:wrap;gap:6px}
.material-overview [data-material-query]{box-sizing:border-box;width:220px;max-width:100%;min-width:0;min-height:44px;padding:8px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:4px;font:inherit;font-size:16px}
.party-material-filter-status{font-size:12px;line-height:1.7;margin:8px 0}
.material-overview .party-material-search[hidden],.material-overview .party-material-filter-status[hidden],.material-overview .party-material-row[hidden]{display:none!important}
.material-overview .party-material-note{font-size:12px;line-height:1.6;color:var(--muted);margin:8px 0 12px}
.party-material-note span{display:inline-block;margin-left:6px}
.material-overview h3{font-size:15px;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin:18px 0 8px}
.material-overview h3 small{font-size:12px;color:var(--muted);font-weight:400}
.material-overview .party-material-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,285px),1fr));gap:8px;align-items:start}
.material-overview .party-material-row{margin:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:var(--paper);min-width:0}
.material-overview .party-material-card{position:relative;min-width:0;border:1px solid var(--line);border-radius:5px;background:var(--paper);overflow:hidden}
.material-overview .party-material-card[hidden]{display:none!important}
.material-overview .party-material-card>.party-material-row{border:0;border-radius:0}
.party-material-use-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.material-overview .party-material-check{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;box-sizing:border-box;min-width:44px;min-height:44px;padding:8px;border:0;border-radius:4px;cursor:pointer;color:var(--muted);background:transparent;font-size:11px}
.party-material-check>input{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--accent);cursor:pointer}
.material-overview .party-material-check-inline{position:absolute;top:16px;right:4px;width:44px;height:44px}
.material-overview .has-inline-check>.party-material-row>summary{grid-template-columns:44px minmax(0,1fr) auto;padding-right:54px}
.has-inline-check>.party-material-row>summary>.party-material-expand{display:none}
.material-overview .party-material-check:hover{background:var(--game-hover,var(--tint))}
.material-overview .party-material-check:has(input:checked){color:var(--accent)}
.material-overview .party-material-check:focus-within{outline:2px solid var(--accent);outline-offset:-2px}
.party-material-card.is-inherited [data-material-row-progress]{color:var(--accent)}
.material-overview .party-material-card.is-inherited>.party-material-row>summary,
.material-overview .party-material-card.is-inherited .party-material-skill-list{opacity:.55;filter:grayscale(1)}
.material-overview .party-material-grid>.is-inherited:nth-child(1 of .is-inherited:not([hidden])){grid-column:1}
.party-material-progress{color:var(--accent);font-size:12px}
.material-overview .party-material-row>summary{display:grid;grid-template-columns:44px minmax(0,1fr) auto 10px;align-items:center;gap:8px;padding:10px;min-height:76px;cursor:pointer;list-style:none}
.material-overview .party-material-row>summary:hover{background:var(--game-hover,var(--tint))}
.material-overview .party-material-row>summary:focus-visible,.material-overview summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.material-overview .party-material-row>summary::after{display:none;content:none}
.material-overview summary::-webkit-details-marker{display:none}
.party-material-image{object-fit:contain;flex-shrink:0;width:44px;height:44px}
.party-material-placeholder{display:grid;place-items:center;color:var(--muted);background:var(--tint);border-radius:4px}
.material-overview .party-material-hom{display:flex;flex-direction:column;gap:4px;min-width:0}
.party-material-name-line{display:flex;align-items:center;gap:4px;min-width:0}
.party-material-name-line>strong{min-width:0}
.material-overview .party-material-copy-name{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;box-sizing:border-box;width:36px;height:36px;min-width:36px;min-height:36px;padding:7px;margin:0;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--accent);cursor:pointer;font-size:11px;line-height:1}
.material-overview .party-material-copy-name .ui-icon{width:18px;height:18px;flex-shrink:0}
.material-overview .party-material-copy-name:hover{background:var(--game-hover,var(--tint));border-color:var(--accent)}
.material-overview .party-material-copy-name:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.material-overview .party-material-copy-name[data-copy-state=success]{background:var(--tint);border-color:var(--accent)}
.material-overview .party-material-copy-name[data-copy-state=error]{color:var(--game-red,#a53131)}
.party-material-hom strong{font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.party-material-hom small{font-size:11px;color:var(--muted);font-weight:400}
.party-material-numbers{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-variant-numeric:tabular-nums;white-space:nowrap}
.material-overview .party-material-level{font-size:21px;line-height:1.1;color:var(--ink)}
.party-material-level small{font-size:11px;font-weight:400;margin-right:2px;color:var(--muted)}
.material-overview .party-material-quantity{font-size:13px;color:var(--accent);font-weight:700}
.party-material-quantity small{font-size:11px;font-weight:400;margin-left:2px}
.party-material-expand{display:inline-block;font-size:11px;color:var(--muted)}
.party-material-row[open] .party-material-expand{transform:rotate(180deg)}
.party-material-uses,.party-material-extra>div{padding:8px 12px 12px;border-top:1px solid var(--line)}
.party-material-uses>div+div{margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}
.material-overview .party-material-uses ul{list-style:none;margin:0;padding:0}
.party-material-uses li{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;line-height:1.7;padding:3px 0;overflow-wrap:anywhere}
.party-material-uses li>span:last-child{white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums}
.party-material-owner{display:inline-flex;align-items:center;gap:7px;max-width:100%;min-height:40px;border:0;background:transparent;padding:2px 0;font-size:12px;text-align:left;overflow-wrap:anywhere;color:var(--ink)}
.party-material-owner .party-position-key{flex-shrink:0}
.party-material-extra-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,285px),1fr));gap:8px;align-items:start}
.material-overview .party-material-extra{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:4px;min-width:0}
.material-overview .party-material-extra>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;cursor:pointer;list-style:none;font-size:13px;min-height:48px;overflow-wrap:anywhere}
.party-material-extra>summary>span{white-space:nowrap;font-size:12px;color:var(--muted)}
.party-material-route{white-space:pre-line;font-size:12px;line-height:1.8;margin:4px 0 8px;overflow-wrap:anywhere}
.party-material-targets{display:flex;flex-wrap:wrap;gap:4px 16px}
.material-overview .party-material-body-details,.material-overview .party-material-rules{margin:14px 0 0;border:0;border-top:1px solid var(--line);padding:0;border-radius:0}
.material-overview .party-material-body-details>summary,.material-overview .party-material-rules>summary{padding:12px 0;font-size:13px;cursor:pointer;min-height:44px}
.party-material-body-details>summary span{color:var(--muted);font-size:12px;font-weight:400}
.party-material-rules p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 8px}
.material-overview .party-material-issues-detail{border:1px solid #c98880;border-radius:4px;background:var(--paper);margin:0 0 12px}
.party-material-issues-detail>summary{font-size:12px;padding:10px;min-height:44px;color:var(--game-red,#902e26);cursor:pointer}
.party-material-issue{padding:4px 12px}
.party-material-issue p{font-size:12px;line-height:1.8;margin:4px 0 8px;overflow-wrap:anywhere}
.party-material-empty{padding:18px 0;color:var(--muted);font-size:13px}
.material-overview .party-material-empty[hidden],.material-overview .party-material-controls[hidden],.material-overview .party-material-note span[hidden]{display:none!important}
.party-material-message{font-size:13px;line-height:1.8}
.party-material-message:empty{display:none}
.material-overview [data-material-reset][hidden]{display:none!important}
.material-overview [data-material-reset]{min-height:44px;font-size:12px}
.material-overview .party-material-swap{position:static;width:fit-content;max-width:100%;min-width:44px;min-height:44px;margin:0 0 4px auto;padding:6px 8px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;color:var(--accent);border-radius:4px;font-size:12px}
.material-overview .party-material-swap svg{flex-shrink:0}
.material-overview .party-material-swap:hover{background:var(--game-hover,var(--tint))}
.material-overview .party-material-swap:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
dialog.party-material-picker{box-sizing:border-box;width:min(480px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);font:inherit;overflow:auto}
dialog.party-material-picker::backdrop{background:rgba(15,20,24,.55)}
.party-material-picker>header{position:sticky;top:0;z-index:1;background:var(--paper);display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px;padding:12px 12px 8px;border-bottom:1px solid var(--line)}
.party-material-picker>header>label{display:grid;gap:4px;width:100%;font-size:12px;color:var(--muted)}
.party-material-picker [data-source-search]{box-sizing:border-box;width:100%;min-height:44px;min-width:0;padding:8px;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:4px}
.party-material-picker [hidden]{display:none!important}
.party-material-picker .party-material-options-empty{padding:12px;font-size:13px;color:var(--muted)}
.party-material-picker>header>div{min-width:0}
.party-material-picker h2{margin:0 0 8px;font-size:16px}
.party-material-picker header p{margin:0;font-size:14px;overflow-wrap:anywhere;line-height:1.6}
.party-material-picker header small{display:block;font-size:12px;color:var(--muted)}
.party-material-picker [data-source-close]{flex-shrink:0;min-width:44px;min-height:44px;border:0;background:none;color:var(--ink);font-size:22px}
.party-material-picker .party-material-options{display:grid;gap:4px;padding:8px}
.party-material-picker .party-material-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px}
.party-material-picker [data-source-pick]{width:100%;min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;padding:8px;text-align:left;color:var(--ink);font:inherit;background:var(--paper);border:1px solid transparent;border-radius:4px}
.party-material-picker [data-source-pick][aria-pressed=true]{border-color:var(--accent);background:var(--tint)}
.party-material-picker [data-source-pick]:hover{background:var(--game-hover,var(--tint))}
.party-material-picker button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.party-material-picker [data-source-pick]>img,.party-material-picker [data-source-pick]>.party-material-placeholder{width:40px;height:40px;object-fit:contain}
.party-material-picker [data-source-pick]>span:not(.party-material-placeholder){display:flex;flex-direction:column;gap:3px;min-width:0}
.party-material-picker [data-source-pick] strong{font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.party-material-picker [data-source-pick] small{font-size:12px;color:var(--muted)}
.party-material-picker [data-source-pick] b{font-size:16px;white-space:nowrap;font-variant-numeric:tabular-nums}
.party-material-picker footer{display:flex;align-items:center;justify-content:space-between;gap:6px 12px;flex-wrap:wrap;padding:8px 12px;border-top:1px solid var(--line)}
.party-material-picker footer button{min-height:44px;font-size:12px;color:var(--ink)}
.party-material-picker footer>span{font-size:12px;line-height:1.8;color:var(--muted)}
.viewing-materials .character-slots{display:none}
#party-content:has(> #panel-materials:not([hidden]))>.party-bulk-toolbar{display:none}
@container(max-width:600px){
  .material-overview .party-material-grid,.material-overview .party-material-extra-grid{grid-template-columns:1fr}
  .material-overview .party-material-row>summary{min-height:68px;padding:7px 10px}
  .material-overview .party-material-check-inline{top:12px}
  .material-overview .party-material-actions button,.material-overview .party-material-controls select,.party-material-owner{min-height:44px}
  .material-overview .party-material-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
  .material-overview .party-material-controls label{flex-direction:column;align-items:stretch;gap:4px;min-width:0}
  .material-overview .party-material-search{grid-column:1/-1}
  .material-overview [data-material-query]{width:100%}
  .material-overview .party-material-controls select{font-size:16px;width:100%;min-width:0;max-width:none}
  .material-overview .party-material-hom strong{font-size:14px}
  .material-overview .party-material-note span{margin-left:0}
}
@media(max-width:680px){
  .material-overview .party-material-copy-name{flex-basis:44px;width:44px;height:44px;min-width:44px;min-height:44px}
  .game-party-page .party-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
  .game-party-page .party-tabs button{padding:9px 2px;font-size:11px;min-height:44px}
}

.material-overview button.party-material-skill-name{min-width:0;min-height:36px;width:100%;padding:5px 7px;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;border:0;background:transparent;color:var(--ink);font-size:13px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
.material-overview .party-material-skill-detail{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 4px;position:relative;min-width:0;border-bottom:1px solid var(--line)}
.material-overview .party-material-skill-level{position:static;align-self:center;font-size:12px;color:var(--muted);white-space:nowrap;pointer-events:none}
.material-overview .party-material-skill-detail>.party-material-swap{grid-column:2;justify-self:end}
.party-material-skill-name span{min-width:0}.party-material-skill-name small{flex-shrink:0;color:var(--accent);font-size:11px}
.material-overview .party-material-skill-name:hover,.material-overview .party-material-skill-name[aria-expanded=true]{background:var(--tint)}

@media(max-width:540px){.material-overview button.party-material-skill-name{min-height:44px}}
