.party-skill-overview {min-width:0}
.party-skill-scroll-hint {display:none}
.party-skill-heading {display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0 8px}
.party-skill-heading h2 {margin:0;font-size:20px}
.party-skill-totals {font-size:16px;font-weight:650;font-variant-numeric:tabular-nums;margin:0;color:var(--ink)}
.party-skill-note,.party-skill-hint {font-size:12px;line-height:1.7;color:var(--muted);margin:6px 0 8px}
.party-skill-controls {display:flex;gap:14px;max-width:660px;margin:12px 0 8px}
.party-skill-controls label {display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600}
.party-skill-controls label:first-child {flex:1;min-width:0}
.party-skill-controls input,.party-skill-controls select {width:100%;min-height:44px;padding:8px 10px;background:#fff;border:1px solid var(--line);border-radius:5px;font-size:14px;min-width:0;color:var(--ink)}
.party-skill-legend {display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px;color:var(--muted);margin:14px 0 8px}
.party-skill-legend b {color:var(--ink);font-size:12px}
.party-skill-toolbar {display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px}
.party-skill-toolbar>[data-skill-add-catalog] {min-height:44px}
.party-skill-options {min-width:0;flex:1}
.party-skill-options>summary {display:list-item;width:fit-content;min-height:44px;padding:10px 8px;cursor:pointer;font-size:12px;color:var(--muted)}
.party-skill-options[open] {flex-basis:100%;border-block:1px solid var(--line)}
.party-skill-options .party-skill-legend {margin-top:0}
.party-skill-result-count {font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0}
.party-skill-result-count:empty {display:none}
.party-skill-matrix {width:100%;min-width:0}
.party-skill-table {width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;text-align:left;background:var(--paper,#fff);border:1px solid var(--line);border-radius:6px}
.party-skill-name-column {width:34%}.party-skill-count-column {width:8%}.party-skill-member-column {width:9.666%}
.party-skill-table thead th {position:sticky;top:0;z-index:2;background:#f1f5f5;border-bottom:1px solid var(--line);padding:10px 8px;font-size:12px;vertical-align:bottom}
.party-skill-table thead th:first-child {padding-left:18px}
.party-skill-table tbody th,.party-skill-table tbody td {border-bottom:1px solid #e3e9e9;padding:10px 8px}
.party-skill-table tbody tr:last-child>* {border-bottom:0}
.party-skill-table tbody tr:hover>* {background:#f6f9f9}
.party-skill-table tbody th {padding-left:18px;font-weight:500}
.party-skill-kind {display:block;color:var(--muted);font-size:10px;margin-bottom:3px;font-weight:400}
.party-skill-name {display:block;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.party-skill-state-note {display:block;font-size:10px;color:#8d5f22;margin-top:4px}
.party-skill-count {font-size:17px;font-variant-numeric:tabular-nums}
.party-skill-table thead th:not(:first-child),.party-skill-table td {text-align:center}
.party-skill-owner button {display:flex;align-items:center;flex-direction:column;gap:5px;width:100%;min-width:0;border:0;background:transparent;padding:0 2px;color:var(--ink)}
.party-position-key {font-size:12px;font-weight:700;color:var(--slot-ink);background:var(--slot-bg);padding:3px 7px;border-radius:4px;white-space:nowrap}
.party-skill-portrait {display:grid;place-items:center;width:44px;height:44px;background:#211e24;border-radius:4px;color:#bcb6c2;overflow:hidden}
.party-skill-portrait img {display:block;width:100%;height:100%;object-fit:contain}
.party-skill-owner-name {max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500}
.party-skill-overview .party-skill-mark {min-height:44px;min-width:44px;max-width:100%;border:1px solid transparent;border-radius:4px;padding:3px;font-size:17px;font-weight:700;background:var(--slot-bg);color:var(--slot-ink)}
.party-skill-overview .party-skill-mark:hover {border-color:currentColor}
.party-skill-overview .party-skill-mark.state-off,.party-skill-overview .party-skill-mark.state-disabled {font-size:10px;background:#f1f2f2;color:#7a6464;border:1px dashed #b1a4a4}
.party-skill-overview .party-skill-mark.state-uncertain,.party-skill-overview .party-skill-mark.state-unknown {background:#fff5e2;color:#845b1a;font-size:10px;border:1px dashed #d0b783}
.party-skill-absent {color:#b4bfc0;font-size:14px}
.party-skill-overview .party-skill-mark.party-skill-add {background:transparent;color:var(--muted);border:1px dashed var(--line);font-weight:500}
.party-skill-overview .party-skill-mark.party-skill-add:hover {color:var(--accent);border-color:var(--accent)}
.party-extract-entry [data-skill-add-catalog] {min-height:44px;margin-right:8px}
#party-content:has(>#panel-skills:not([hidden]))>.party-bulk-toolbar>#party-bulk-add {display:none}
#party-confirm {max-height:85dvh;overflow:auto}
#party-confirm-text {white-space:pre-line;overflow-wrap:anywhere;line-height:1.7}
#party-confirm .dialog-actions {position:sticky;bottom:0;background:var(--paper);padding-block:8px}
.party-skill-empty {padding:28px 18px;background:#fff;border:1px solid var(--line);border-radius:5px;color:var(--muted);line-height:1.8;font-size:14px}
.party-skill-unread {font-size:12px;line-height:1.8;margin:18px 0;color:var(--muted);overflow-wrap:anywhere}.party-skill-unread summary {cursor:pointer}.party-skill-unread ul {padding-left:24px}
.party-skill-error {color:#963d33;font-size:13px}
.party-skill-sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.slot-color-0 {--slot-ink:#8c3938;--slot-bg:#f8e9e8}.slot-color-1 {--slot-ink:#7e521c;--slot-bg:#f8efdf}.slot-color-2 {--slot-ink:#596624;--slot-bg:#eef2dd}
.slot-color-3 {--slot-ink:#245f72;--slot-bg:#e2f0f5}.slot-color-4 {--slot-ink:#4c568a;--slot-bg:#e9ecf8}.slot-color-5 {--slot-ink:#784f75;--slot-bg:#f1e8f1}
.game-slot .slot-position {color:var(--slot-ink);background:var(--slot-bg);border-radius:3px;align-self:flex-start;padding:1px 4px;font-weight:650}
.party-skill-overview .party-skill-mark.state-removing {border:2px dashed currentColor;background:transparent;font-size:24px}
.party-skill-overview .party-skill-mark.state-adding {border:2px dashed currentColor}
.game-ui .party-skill-overview .party-skill-mark.state-removing[aria-pressed=true] {border:2px dashed currentColor;background:transparent;font-size:24px;color:var(--slot-ink)}
.party-skill-fixed {display:block;font-size:11px;color:var(--muted)}
.party-skill-removal-bar {position:sticky;bottom:8px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding:12px 16px;background:var(--paper,#fff);border:1px solid var(--line);border-radius:6px;box-shadow:0 3px 12px #0003}
.party-skill-removal-bar[hidden] {display:none}
.party-skill-removal-bar p {margin:0;font-size:14px;line-height:1.5}
.party-skill-removal-bar .party-skill-error {flex-basis:100%;color:var(--game-red,#fca5a5);max-height:22dvh;overflow:auto;padding:8px;border:1px solid currentColor;border-radius:4px}
.party-skill-removal-bar>div {display:flex;flex-wrap:wrap;gap:8px}
.party-skill-removal-bar button {min-height:44px;font-size:14px}
.party-skill-removal-dialog {width:calc(100% - 32px);max-width:680px;max-height:85dvh;overflow:auto}
.party-skill-removal-dialog h2 {font-size:20px}.party-skill-removal-dialog p {font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.party-skill-removal-items section {border-top:1px solid var(--line);padding:12px 0}.party-skill-removal-items h3 {font-size:16px;margin:0 0 8px}
.party-skill-removal-items ul {padding-left:24px;margin:0;line-height:1.8;font-size:14px;overflow-wrap:anywhere}
.party-skill-removal-items small {font-size:12px;color:var(--muted)}
.party-skill-removal-dialog .dialog-actions {position:sticky;bottom:0;background:var(--paper,#fff);padding:12px 0;margin:0}
.party-skill-removal-dialog button {min-height:44px}.party-skill-removal-error {color:var(--danger,#b84040)}
@media(max-width:680px){
  .game-party-page .party-tabs {gap:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  .game-party-page .party-tabs button {padding:9px 2px;font-size:12px;min-width:0;min-height:44px;white-space:normal}
  .game-party-page .party-tabs span {font-size:10px;margin-left:2px}
  .party-skill-heading {margin-top:16px;gap:6px}.party-skill-heading h2 {font-size:18px}.party-skill-totals {font-size:14px}
  .party-skill-controls {gap:8px;margin-top:10px}.party-skill-controls input,.party-skill-controls select {font-size:16px;padding:8px 6px}.party-skill-controls label:last-child {width:145px}
  .party-skill-note,.party-skill-hint {font-size:11px}.party-skill-legend {gap:6px 12px;font-size:11px}
  .party-skill-name-column {width:31%}.party-skill-count-column {width:9%}.party-skill-member-column {width:10%}
  .party-skill-table thead th {padding:6px 1px;font-size:10px}.party-skill-table thead th:first-child {padding-left:7px}
  .party-skill-table tbody th,.party-skill-table tbody td {padding:7px 1px}.party-skill-table tbody th {padding-left:7px}
  .party-skill-name {font-size:12px;line-height:1.5}.party-skill-kind {font-size:9px}.party-skill-count {font-size:14px}
  .party-skill-owner button {gap:4px;padding:0}.party-position-key {font-size:10px;padding:3px 4px}.party-skill-portrait {width:28px;height:28px}.party-skill-owner-name {font-size:9px}
  .party-skill-overview .party-skill-mark {min-width:0;width:100%;min-height:44px;font-size:14px;padding:2px;border-radius:3px}
  .party-skill-overview .party-skill-mark.state-off,.party-skill-overview .party-skill-mark.state-disabled {font-size:9px;padding:1px}
  .party-skill-state-note {font-size:9px}
}
/* Keep six recipients identifiable and tappable instead of squeezing each below 30px. */
@media(max-width:680px){
  .party-skill-scroll-hint {display:block;font-size:12px;color:var(--muted);margin:8px 0}
  .party-skill-matrix {overflow:auto;overscroll-behavior-x:contain;border-radius:6px}
  .party-skill-table {min-width:568px}
  .party-skill-name-column {width:136px}.party-skill-count-column {width:36px}.party-skill-member-column {width:66px}
  .party-skill-table thead th:first-child,.party-skill-table tbody th {position:sticky;left:0;background:var(--paper);z-index:2;border-right:1px solid var(--line)}
  .party-skill-table thead th:first-child {z-index:3}
  .party-skill-table tbody td {padding-inline:5px}
  .party-skill-overview .party-skill-mark {width:44px;min-width:44px;min-height:44px}
  .party-skill-owner button {min-height:72px}
  .party-skill-owner-name {font-size:11px;white-space:normal;overflow-wrap:anywhere;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .party-skill-portrait {width:34px;height:34px}.party-position-key {font-size:11px}
}
