/* Scoped to the one-shot calculator. */
.oneshot-spell-control { display: inline-flex; flex-direction: column; gap: 2px; align-items: center; }
.oneshot-rank { width: 38px; min-height: 24px; padding: 0; font: 700 10px system-ui; color: #f5e4a7; background: #142925; border: 1px solid #688779; border-radius: 4px; }
.oneshot-model-note { color: #adbeb7; font: 11px/1.5 system-ui; margin: 5px 0; }
.oneshot-model-note a, .oneshot-mechanic-detail a { color: #b4e3cf; }
.oneshot-mechanic-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; padding: 8px; font: 12px/1.4 system-ui; color: #c8ded5; }
.oneshot-mechanic-toolbar label { display: flex; gap: 8px; align-items: center; cursor: pointer; }
.oneshot-mechanic-toolbar p { flex: 1 1 300px; margin: 0; color: #a8bcb3; }
.oneshot-mechanic-detail { grid-column: 1 / -1; border: 1px solid #537a65; border-radius: 10px; padding: 14px 18px; color: #d7e9de; background: linear-gradient(135deg, rgba(18,42,32,.97),rgba(7,17,16,.97)); font: 13px/1.5 system-ui; }
.oneshot-mechanic-detail[hidden] { display: none; }
.oneshot-detail-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.oneshot-detail-heading h2 { margin: 0; font-size: 21px; }
.oneshot-detail-heading button { margin-inline-start: auto; border: 1px solid #537a65; background: #152c25; color: #fff; border-radius: 5px; width: 32px; height: 32px; cursor: pointer; }
.oneshot-detail-metrics { display: flex; flex-wrap: wrap; gap: 8px 20px; padding: 10px 0; }
.oneshot-detail-warnings { color: #e4cb91; margin: 8px 0; }
.oneshot-mechanic-marker { font: 9px system-ui; color: #ddc985; }
.oneshot-extra-stats { font: 12px/1.5 system-ui; color: #c4d9ce; }
.oneshot-extra-stats summary, .oneshot-mechanic-detail summary { cursor: pointer; }
.oneshot-extra-stats > div { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
.oneshot-extra-stats label { display: flex; flex-direction: column; flex: 1 1 130px; }
.oneshot-extra-stats input { min-width: 0; width: 100%; padding: 6px; background: #0b1c17; border: 1px solid #537a65; color: #e9f7ee; border-radius: 5px; }
.oneshot-extra-stats p { margin: 5px 0; }
body:has(#oneshot-ability-list) .oneshot-spell-row { flex-wrap: wrap; }
@media (min-width: 1100px) and (max-width: 1600px) {
  body:has(#oneshot-ability-list) .app-shell { width: calc(100% - 32px); min-width: 0; margin-inline: auto; }
  body:has(#oneshot-ability-list) .oneshot-control-stack { width: 100%; grid-template-columns: minmax(160px,.55fr) minmax(250px,.8fr) minmax(0,1.5fr); }
  body:has(#oneshot-ability-list) .oneshot-import .character-import-form { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  body:has(#oneshot-ability-list) .oneshot-import .realm-combo { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  body:has(#oneshot-ability-list) .oneshot-fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body:has(#oneshot-ability-list) .oneshot-button-groups { grid-template-columns: minmax(0,1fr); }
  body:has(#oneshot-ability-list) .oneshot-dungeon-card.has-all-dungeons .oneshot-ability-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1099px) {
  body:has(#oneshot-ability-list) .oneshot-control-stack { min-width: 0; width: 100%; grid-template-columns: minmax(0,1fr); }
  body:has(#oneshot-ability-list) .oneshot-dungeon-card.has-all-dungeons .oneshot-ability-list { grid-template-columns: minmax(0,1fr); }
  body:has(#oneshot-ability-list) .oneshot-button-groups { grid-template-columns: minmax(0,1fr); }
}
