/* Last Lantern: brass fittings, inked timber and warm work lights. Scoped to the mine. */
.mine {
  --brass: #c4a16d;
  --paper: #eee0c6;
  --muted: #b5a590;
  font-family: Arial, sans-serif;
  color: var(--paper);
}
.mine .fish-head {
  top: 16px;
  left: 20px;
  right: 20px;
  padding: 14px 18px;
  gap: 18px;
  border: 1px solid #6b5540;
  border-bottom: 3px solid #a48050;
  border-radius: 4px;
  background: linear-gradient(110deg, #211d1cf2, #181719ed);
  box-shadow: 0 6px 22px #0005;
  align-items: center;
}
.mine .fish-title {
  font:
    700 27px/1.15 Georgia,
    serif;
  letter-spacing: 1.5px;
  text-shadow: none;
  margin: 4px 0;
}
.mine .mine-eyebrow {
  font:
    700 9px/1.4 Arial,
    sans-serif;
  letter-spacing: 1.6px;
  color: #c6a77a;
  display: block;
}
.mine .fish-sub {
  font-size: 11px;
  color: #b8aa96;
}
.mine .fish-head-right {
  gap: 8px;
}
.mine .stat-chip,
.mine .mine-loot {
  border-radius: 3px;
  background: #151416;
  border-color: #554736;
  box-shadow: none;
  font-size: 13px;
}
.mine .mine-loot {
  font-size: 10px;
  padding: 7px 10px;
}
.mine .hub-btn {
  border-radius: 3px;
  box-shadow: none;
  background: linear-gradient(#514233, #302a26);
  border: 1px solid #8a7050;
  color: #f2dfb9;
}
.mine .hub-btn:hover:not(:disabled),
.mine .hub-btn:focus-visible {
  border-color: #e2be83;
  background: #675038;
  outline: 2px solid #d0aa6955;
  outline-offset: 2px;
}
.mine .hub-btn:disabled {
  opacity: 0.43;
  cursor: default;
}
.mine-settlement-badge {
  position: absolute;
  top: 118px;
  right: 28px;
  width: 253px;
  text-align: left;
  padding: 13px 16px;
  border: 1px solid #706049;
  border-left: 3px solid #c5a574;
  border-radius: 3px;
  background: #211d1bed;
  color: #e9d7b9;
  cursor: pointer;
  box-shadow: 0 4px 15px #0003;
}
.mine-settlement-badge small {
  font: 700 9px Arial;
  letter-spacing: 1.8px;
  color: #b99c76;
  display: block;
  margin-bottom: 6px;
}
.mine-settlement-badge b {
  font: 700 20px Georgia;
  display: block;
}
.mine-settlement-badge span {
  font: 11px Arial;
  color: #bbad96;
  display: block;
  margin: 8px 0;
}
.mine-settlement-badge i,
.outpost-progress {
  display: block;
  height: 4px;
  background: #100f12;
  border: 1px solid #544737;
}
.mine-settlement-badge em,
.outpost-progress i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #90724f, #d1b57b);
}
.mine-hud {
  width: max-content;
  max-width: calc(100% - 34px);
  bottom: 22px;
  gap: 8px;
  padding: 10px;
  border: 1px solid #715b41;
  border-top: 3px solid #b39664;
  border-radius: 4px;
  background: #201c1bef;
  box-shadow: 0 8px 30px #0007;
  flex-wrap: wrap;
  justify-content: center;
}
.mine-hud > *,
.mine-hud .mine-tool {
  border-radius: 3px;
  box-shadow: none;
}
.mine-ability {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 6px 10px 6px 4px;
  min-width: 228px;
  max-width: 280px;
  min-height: 66px;
  border: 1px solid var(--hero);
  border-left: 3px solid var(--hero);
  background: linear-gradient(120deg, #3b302c, #232024);
  color: var(--paper);
  text-align: left;
  cursor: pointer;
}
.mine-ability:disabled {
  opacity: 0.65;
  cursor: default;
  filter: saturate(0.5);
}
.mine-ability:hover:not(:disabled),
.mine-ability:focus-visible {
  background: #42342d;
  outline: 2px solid #deb57955;
  outline-offset: 2px;
}
.mine-ability-label {
  display: grid;
  gap: 4px;
}
.mine-ability-label small {
  font: 700 8px/1.3 Arial;
  letter-spacing: 0.6px;
  color: var(--hero);
}
.mine-ability-label b {
  font: 700 17px Georgia;
}
.mine-ability-label em {
  font: 10px Arial;
  color: #c7bba8;
  font-style: normal;
}
.mine-hp {
  display: grid;
  gap: 4px;
  padding: 10px 8px;
  background: none;
  border: 0;
  text-align: center;
  white-space: nowrap;
}
.mine-hp small {
  font: 700 8px Arial;
  letter-spacing: 1.2px;
  color: #bca78b;
}
.mine-hp span {
  display: flex;
  gap: 3px;
}
.mine-hp i {
  font-size: 16px;
}
.mine-bag {
  grid-template-columns: 130px;
  padding: 7px 10px;
  gap: 4px;
  background: #131315aa;
  border-color: #554634;
  min-width: 150px;
}
.mine-bag .mb-label {
  grid-row: auto;
  font-size: 8px;
}
.mine-bag .mb-bar {
  height: 5px;
  border-radius: 0;
}
.mine-bag .mb-bar i {
  border-radius: 0;
  background: linear-gradient(90deg, #947547, #d1b175);
}
.mine-bag .mb-text {
  font-size: 11px;
}
.mine-bag .mb-text small {
  font-size: 9px;
}
.mine-ladders {
  padding: 12px 8px;
  background: none;
  border-color: #554634;
  font-size: 16px;
}
.mine-ladders small {
  font-size: 8px;
  letter-spacing: 0.5px;
}
.mine-tools {
  gap: 5px;
}
.mine-tool {
  min-width: 45px;
  min-height: 55px;
  padding: 5px 6px;
  background: #141315;
  border-color: #5b4a38;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 4px;
}
.mine-tool .mine-icon {
  width: 22px !important;
  height: 22px !important;
}
.mine-tool small {
  font: 700 8px Arial;
  display: block;
  color: #b8a17d;
}
.mine-tool b {
  font-size: 13px;
  color: #e1c59b;
}
.mine-tool:disabled {
  opacity: 0.4;
}
.mine .mine-post-btn,
.mine .mine-lift-btn {
  font: 700 11px Arial;
  letter-spacing: 0.4px;
  padding: 13px 11px;
  min-height: 55px;
}
.mine-tip {
  bottom: 120px;
  max-width: calc(100vw - 40px);
  white-space: normal;
  text-align: center;
  border-radius: 2px;
  border: 1px solid #66533a;
  color: #d9c8aa;
  background: #181515e8;
  font-size: 11px;
  padding: 8px 14px;
}
.mine-help {
  width: 30px;
  height: 30px;
  min-width: 30px;
  padding: 0 !important;
}
.mine .mine-card {
  width: min(1050px, 94vw);
  max-height: 88dvh;
  border: 1px solid #967a50;
  border-top: 4px solid #c3a16c;
  border-radius: 5px;
  background: linear-gradient(140deg, #2b2421, #19181b);
  padding: 23px;
  box-shadow: 0 22px 90px #000a;
  overflow: auto;
}
.mine .mine-card .fish-card-name {
  font: 700 30px Georgia;
  text-align: left;
  color: #f0dfbb;
  margin: 4px 0 10px;
}
.mine .mp-wallet {
  padding: 10px 0;
  border-bottom: 1px solid #584838;
  color: #c9b497;
  font-size: 12px;
}
.mine .mp-tabs {
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 15px;
}
.mine .mp-tab {
  padding: 10px 11px;
  flex: 1 0 auto;
  border-radius: 3px;
  font-size: 10px;
  border-color: #5b4b3b;
  background: #1a1718;
}
.mine .mp-tab.on {
  background: #695139;
  border-color: #c9a672;
  color: #fff0ce;
}
.mine .mp-sec h4 {
  font: 700 18px Georgia;
  letter-spacing: 0;
  color: #ebd5b0;
}
.mine .mp-sec p {
  font-size: 12px;
  line-height: 1.6;
  color: #c0b09b;
}
.mine .mp-hint {
  color: #b9a990;
  font-size: 11px;
  line-height: 1.6;
}
.mine .mp-note {
  background: #443d2b;
  border: 1px solid #786b47;
  border-radius: 3px;
  color: #e2d2a2;
  font-size: 12px;
}
.mine .mp-foot {
  position: sticky;
  bottom: -23px;
  margin-top: 20px;
  padding: 14px 0;
  background: #1d1a1c;
  z-index: 2;
  justify-content: space-between;
  border-top: 1px solid #6e583e;
}
.mine .mp-gear {
  border-radius: 3px;
  background: #181719;
  border-color: #4b4035;
  padding: 13px;
}
.mine .mpg-text small {
  line-height: 1.5;
  color: #bcae98;
}
.outpost-summary {
  padding: 16px 20px;
  border: 1px solid #6d593f;
  border-radius: 3px;
  background: #30291f;
  margin-bottom: 16px;
}
.outpost-summary h4 {
  font-size: 26px !important;
  margin: 4px 0 !important;
}
.outpost-summary .outpost-counts {
  color: #dfc89d;
  font-weight: 700;
}
.outpost-progress {
  height: 6px;
  margin: 10px 0 7px;
}
.outpost-summary > small {
  font-size: 11px;
  color: #c2b199;
}
.outpost-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.outpost-building {
  display: flex;
  gap: 10px;
  padding: 13px;
  border: 1px solid #514638;
  border-radius: 3px;
  background: #19171a;
}
.outpost-art {
  width: 100px;
  height: 85px;
  object-fit: contain;
  align-self: center;
  flex-shrink: 0;
}
.outpost-building-text {
  flex: 1;
  min-width: 0;
}
.outpost-building h4 {
  font-size: 19px !important;
  margin: 5px 0 !important;
}
.outpost-building p {
  font-size: 11px !important;
  line-height: 1.5 !important;
  margin: 5px 0;
}
.outpost-building strong {
  font: 700 11px Arial;
  color: #d7c197;
  display: block;
  margin: 10px 0;
}
.outpost-building button {
  font: 700 9px Arial;
  min-width: 0;
  width: 100%;
  padding: 10px 6px;
  letter-spacing: 0;
}
.outpost-requirement {
  display: block;
  color: #c5a183;
  font-size: 10px;
  margin-top: 7px;
}
.mine-order {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 4px 18px;
  padding: 17px 20px;
  margin: 12px 0;
  border: 1px solid #594b3b;
  border-left: 3px solid #b89864;
  background: #201c1b;
}
.mine-order h4,
.mine-order p,
.mine-order .outpost-progress,
.mine-order small {
  grid-column: 1;
  margin: 0;
}
.mine-order button {
  grid-column: 2;
  grid-row: 1/5;
  align-self: center;
  font-size: 10px;
  min-width: 130px;
}
.mine-order small {
  color: #d0b992;
  font-size: 11px;
}
.mine-relic-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 14px;
}
.mine-relic {
  background: #1a171b;
  border: 1px solid #4a3d36;
  padding: 20px;
}
.mine-relic.known {
  border-top: 2px solid var(--relic);
}
.relic-number {
  font: 26px Georgia;
  color: var(--relic);
  opacity: 0.8;
}
.mine-relic h4 {
  margin: 9px 0 !important;
  font-size: 17px !important;
}
.mine .mine-lore-note {
  margin-top: 18px;
  padding-left: 14px;
  border-left: 2px solid #a08460;
}
.mine .mine-help-copy {
  font: 14px/1.8 Arial;
  color: #cfbea5;
  max-width: 740px;
}
.mine .mine-help-copy strong {
  color: #efd5a8;
}
@media (max-width: 1100px) {
  .mine .fish-head {
    left: 12px;
    right: 12px;
    padding: 10px;
    gap: 10px;
  }
  .mine .fish-title {
    font-size: 23px;
  }
  .mine .mine-loot {
    display: none;
  }
  .mine-hud {
    gap: 6px;
    padding: 8px;
  }
  .mine-ability {
    min-width: 200px;
  }
  .mine-bag {
    min-width: 120px;
    grid-template-columns: 110px;
  }
  .mine-settlement-badge {
    width: 220px;
    top: 110px;
  }
  .outpost-art {
    width: 80px;
  }
}
@media (max-width: 700px) {
  .mine .fish-head {
    top: 8px;
    left: 8px;
    right: 8px;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px;
  }
  .mine .fish-head .hub-btn-back {
    padding: 8px;
    min-width: 0;
    font-size: 10px;
  }
  .mine .fish-title {
    font-size: 19px;
  }
  .mine .fish-titles {
    flex: 1;
  }
  .mine .mine-eyebrow {
    font-size: 7px;
    letter-spacing: 0.7px;
  }
  .mine .fish-head-right {
    width: 100%;
    justify-content: flex-end;
  }
  .mine .stat-chip {
    font-size: 11px;
    padding: 5px 8px;
  }
  .mine .fish-sub {
    font-size: 9px;
  }
  .mine-settlement-badge {
    top: 130px;
    right: 10px;
    width: 184px;
    padding: 9px 11px;
  }
  .mine-settlement-badge b {
    font-size: 17px;
  }
  .mine-settlement-badge span {
    font-size: 9px;
    margin: 5px 0;
  }
  .mine-settlement-badge small {
    font-size: 7px;
  }
  .mine-hud {
    left: 8px;
    right: 8px;
    bottom: 8px;
    width: auto;
    max-width: none;
    transform: none;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 5px;
    padding: 6px;
  }
  .mine-ability {
    grid-column: 1/-1;
    max-width: none;
    min-width: 0;
    min-height: 57px;
    padding: 3px 8px;
  }
  .mine-ability-label b {
    font-size: 16px;
  }
  .mine-ability-label small {
    font-size: 8px;
  }
  .mine-hp {
    grid-column: 1/3;
    padding: 4px;
    justify-content: center;
    gap: 2px;
  }
  .mine-hp small {
    font-size: 7px;
  }
  .mine-bag {
    grid-column: 3/5;
    min-width: 0;
    padding: 4px 7px;
    grid-template-columns: auto;
    gap: 2px;
  }
  .mine-bag .mb-label {
    font-size: 7px;
  }
  .mine-bag .mb-text {
    font-size: 10px;
  }
  .mine-ladders {
    padding: 6px;
    min-height: 42px;
  }
  .mine-tools {
    grid-column: 2/5;
    justify-content: stretch;
    gap: 4px;
    display: flex;
  }
  .mine-tool {
    flex: 1;
    min-width: 0;
    min-height: 42px;
    padding: 3px;
  }
  .mine-tool .mine-icon {
    width: 16px !important;
    height: 16px !important;
  }
  .mine-tool small {
    font-size: 7px;
  }
  .mine .mine-post-btn,
  .mine .mine-lift-btn {
    grid-column: 1/-1;
    min-height: 33px;
    padding: 8px;
    font-size: 10px;
  }
  .mine-tip {
    bottom: 214px;
    font-size: 9px;
    padding: 6px 8px;
  }
  .mine-pad {
    left: 12px;
    bottom: 238px;
    grid-template-columns: repeat(3, 35px);
    grid-template-rows: repeat(3, 35px);
    gap: 3px;
  }
  .mine-pad button {
    border-radius: 3px;
    font-size: 15px;
    background: #211b17de;
  }
  .mine .mine-card {
    padding: 15px;
    width: 94vw;
    max-height: 92dvh;
  }
  .mine .mine-card .fish-card-name {
    font-size: 25px;
  }
  .mine .mp-tabs {
    gap: 4px;
  }
  .mine .mp-tab {
    font-size: 9px;
    padding: 9px 7px;
  }
  .outpost-grid,
  .mine-relic-grid {
    grid-template-columns: 1fr;
  }
  .outpost-art {
    width: 82px;
    height: 85px;
  }
  .outpost-building {
    padding: 10px;
  }
  .outpost-summary {
    padding: 13px;
  }
  .mine .mp-foot {
    bottom: -15px;
  }
  .mine-order {
    display: block;
    padding: 14px;
  }
  .mine-order button {
    margin-top: 12px;
  }
  .mine .mp-wallet {
    font-size: 10px;
  }
  .mine .mine-help-copy {
    font-size: 12px;
  }
}
@media (max-height: 550px) and (min-width: 701px) {
  .mine .fish-head {
    top: 5px;
    padding: 7px;
  }
  .mine .fish-title {
    font-size: 20px;
  }
  .mine-settlement-badge {
    top: 90px;
    width: 210px;
    padding: 9px;
  }
  .mine-hud {
    bottom: 7px;
    padding: 5px;
  }
  .mine-tip {
    bottom: 92px;
  }
  .mine-ability {
    min-height: 50px;
  }
  .mine-ability-label b {
    font-size: 14px;
  }
  .mine-ability .mine-icon {
    width: 32px !important;
    height: 32px !important;
  }
}

.mine-crew-btn { font-size: 10px; padding: 10px; white-space: nowrap; }
.mine-crew-card { max-width: 720px; width: min(720px,94vw); }
.mine-crew-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 14px 0; text-align: left; }
.mine-crew-option { display:flex; gap: 8px; align-items: center; min-width: 0; padding: 10px; color: #ead6b9; border: 1px solid #735e47; border-radius: 10px; background: linear-gradient(130deg,#2e241f,#141215); cursor: pointer; text-align: left; }
.mine-crew-option.selected { border-color: #f3cd88; box-shadow: inset 0 0 15px #c99b3522; }
.mine-crew-option:disabled { opacity: .42; cursor: default; }
.mine-crew-option:focus-visible { outline: 2px solid #f3cd88; outline-offset: 2px; }
.mine-crew-option span { display:grid; gap: 4px; }
.mine-crew-option b {font: 800 13px Arial;}
.mine-crew-option small { font: 10px/1.4 Arial; color:#dbb878; }
.mine-crew-option em { font: 11px/1.4 Arial; color:#b7aca5; }
.mine-hazard-chip {position:absolute; z-index:2; top: 112px; left:50%; transform:translateX(-50%); padding:6px 12px; color:#c8bca5; background:#110e12dc; border:1px solid #8d795447; border-radius:20px; font:800 10px Arial; letter-spacing:1px; pointer-events:none; max-width:90%; text-align:center;}
.mine-hazard-chip.warning { color:#ffdc99; border-color:#ff8f49; box-shadow:0 0 16px #eb6a2633; }
.mine .fish-toast {max-width:calc(100% - 24px); white-space:normal; width:max-content; text-align:center; box-sizing:border-box;}
@media(max-width:700px) {
 .mine-crew-list {grid-template-columns:1fr;}
 .mine-crew-btn {padding:7px;font-size:9px;}
 .mine-hazard-chip {top:112px;font-size:9px;padding:5px 8px;}
}
@media(max-height:460px) {.mine-hazard-chip{top:62px;font-size:9px;}.mine-crew-option em{display:none;}}
@media(max-height:550px) and (min-width:701px) {
 .mine-hud { left:50%; right:auto; transform:translateX(-50%); flex-direction:row; align-items:center; max-width:calc(100% - 24px); gap:4px; }
 .mine-ability {min-width:180px;max-width:210px;}
 .mine .fish-head { gap:8px; }
 .mine .fish-head-right { gap:4px; }
 .mine .fish-head .stat-chip {font-size:10px;padding:5px;}
 .mine .fish-head .fish-titles {min-width:120px;}
 .mine .fish-head .fish-title {font-size:17px;}
}
