/* Mining page preview. Reuses styles.css; only game-specific pieces live here. */
.mine{display:grid;gap:14px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
@media (max-width:820px){.mine{grid-template-columns:1fr}}

.board{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;background:var(--lcd-bg);box-shadow:var(--sunken);padding:10px}
.tile{position:relative;aspect-ratio:1/1;min-width:0;border:0;cursor:pointer;color:var(--lcd-text);font-family:var(--mono);
  background:#12251a;box-shadow:inset 0 0 0 1px #1d3326;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:6px 7px;text-align:left}
.tile:hover{box-shadow:inset 0 0 0 1px var(--lcd-dim)}
.tile .n{font-size:11px;color:var(--lcd-dim)}
.tile .t{font-size:clamp(9px,1.7vw,12px);align-self:flex-end;color:var(--lcd-text)}
.tile .heat{position:absolute;left:0;bottom:0;height:3px;background:var(--lcd-text);opacity:.7}
.tile.mine{box-shadow:inset 0 0 0 2px #f2eee0;background:#1b3a29}
.tile.sel{box-shadow:inset 0 0 0 2px #9af0b5;background:#183524}
.tile.winner{animation:flash 1.1s ease 3;background:#e9c46a;box-shadow:inset 0 0 0 3px #fff}
.tile.winner .n,.tile.winner .t{color:#0d1a12}
.tile:disabled{cursor:not-allowed;opacity:.55}
@keyframes flash{50%{background:#f6dc8f}}
@media (prefers-reduced-motion:reduce){.tile.winner{animation:none}}
.boardbtns{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.boardbtns .btn{flex:1;min-width:110px;text-align:center}

.cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.cards .lcd{padding:10px 12px}
.cards .lcd .v{font-size:clamp(17px,3.4vw,22px)}
.cards .lcd .k.sub{color:var(--lcd-text);margin-top:2px;text-transform:none;letter-spacing:0;font-size:11px}
.phase{display:flex;height:8px;margin-top:8px;box-shadow:var(--sunken);background:#0a140e}
.phase i{display:block;height:100%;background:var(--lcd-text)}
.phase.reveal i{background:#d9b24a}

.deploy{background:var(--paper-raised);box-shadow:var(--sunken);padding:12px}
.deploy .rowline{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:8px 0}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{font:700 11px var(--chrome);background:var(--paper);box-shadow:var(--raised);border:0;padding:6px 10px;cursor:pointer;color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--accent);color:var(--paper-raised)}
.amt{display:flex;gap:6px;align-items:center}
.amt input{min-width:0;width:130px;flex:none;text-align:right}
.stepper{display:flex;align-items:center;gap:6px}
.stepper button{width:28px;height:28px;font:700 14px var(--chrome);border:0;background:var(--paper);box-shadow:var(--raised);cursor:pointer}
.stepper span{min-width:28px;text-align:center;font:700 14px var(--mono)}
.total{font:700 18px var(--mono);color:var(--accent-deep)}
.msg{min-height:20px;font-size:12px;margin-top:8px}
.msg.err{color:var(--red)}.msg.ok{color:var(--accent)}
.deploy .btn.go{width:100%;padding:12px;font-size:13px}
.hint{font-size:11px;color:var(--ink-muted)}

.winmark{display:inline-block;min-width:22px;text-align:center;background:var(--accent);color:var(--paper-raised);font:700 11px var(--chrome);padding:1px 6px}
.hit{color:var(--gilt);font-weight:700}
.claimrow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px dotted var(--paper-sunken)}
.claimrow:last-child{border-bottom:0}
.claimrow .mono{white-space:nowrap;margin-left:auto}
.calc{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.calc label{margin-bottom:2px}
.calc input{width:100%;min-width:0}
.small.pre{white-space:pre-line}
.badge{display:inline-block;font:700 10px var(--chrome);letter-spacing:.1em;text-transform:uppercase;background:var(--gilt);color:var(--paper-raised);padding:1px 6px;margin-left:6px;vertical-align:middle}
.menubar a.cur{background:var(--accent);color:var(--paper-raised)}
.seg{display:inline-flex;box-shadow:var(--raised);background:var(--paper)}
.seg button{font:700 12px var(--chrome);border:0;background:transparent;padding:8px 14px;cursor:pointer;color:var(--ink)}
.seg button[aria-pressed="true"]{background:var(--accent);color:var(--paper-raised)}

/* plan form */
.dform{padding:14px 16px}
.prow2{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 2px;border-bottom:1px dotted var(--paper-sunken)}
.prow2.pbal{padding:0 2px 8px;font:400 12px var(--chrome)}
.prow2.pbal b{font:700 13px var(--mono)}
.plab{font:700 13px var(--chrome)}
.pamt{padding:6px 0 10px;border-bottom:1px dotted var(--paper-sunken)}
.pscreen{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 8px 10px;margin-bottom:8px;text-align:center}
#mine .dform .pscreen input{width:100%;max-width:100%;min-width:0;background:transparent;border:0;box-shadow:none;color:var(--lcd-text);font:400 28px var(--mono);text-align:center;padding:0;outline:0}
#mine .dform .pscreen input:focus{box-shadow:none}
.pscreen .k{margin-top:2px}
.pamt .chips{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.pamt .chip{text-align:center;padding:8px 4px}
#mine .dform .stepper input{width:70px;min-width:0;flex:none;text-align:center;font:700 14px var(--mono);padding:4px}
#mine .dform .stepper button.wide{width:auto;padding:0 10px}
#mine .dform .stepper button[aria-pressed="true"]{background:var(--accent);color:var(--paper-raised)}
#mine .dform .prow2 .amt input{width:110px;min-width:0;text-align:right}
.sw{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}
.sw input{position:absolute;inset:0;opacity:0;width:44px;min-width:0;max-width:44px;height:24px;margin:0;padding:0;cursor:pointer}
.sw .knob{position:absolute;inset:0;background:var(--paper-sunken);box-shadow:var(--sunken);transition:background .15s}
.sw .knob::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--paper-raised);box-shadow:var(--raised);transition:transform .15s}
.sw input:checked+.knob{background:var(--accent)}
.sw input:checked+.knob::after{transform:translateX(20px)}
.ptot{padding:8px 2px 2px}
.trow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font:400 12px var(--chrome);padding:4px 0;color:var(--ink-muted)}
.trow.big{font:700 15px var(--chrome);color:var(--ink);padding-top:10px;margin-top:6px;border-top:1px dotted var(--paper-sunken)}
#mine .dform .go{width:100%;margin-top:10px}
.tip{position:relative;display:inline-flex;align-items:center;gap:4px;cursor:help;outline:0}
.tip .i{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:var(--accent);color:var(--paper-raised);font:700 11px var(--chrome)}
.tip .pop{display:none;position:absolute;left:0;top:calc(100% + 6px);z-index:20;width:min(300px,80vw);padding:10px 12px;background:var(--lcd-bg);color:var(--lcd-text);font:400 11px/1.5 var(--chrome);text-transform:none;letter-spacing:0;box-shadow:var(--raised);white-space:normal}
.tip .pop.up{top:auto;bottom:calc(100% + 6px)}
.tip:hover .pop,.tip:focus .pop{display:block}
.prules{margin-top:6px;font-size:11px}

#myplan .vs{font-size:clamp(14px,2vw,22px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

#mpBal,#mpLeft,#mpLast{font-size:clamp(14px,1.9vw,21px)!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}

/* light show while the random value is awaited */
.board.suspense .tile{animation:shimmer 1.3s ease-in-out infinite;animation-delay:calc(var(--d,0) * 120ms)}
@keyframes shimmer{0%,100%{background:#162a1d;box-shadow:inset 0 0 0 1px #1d3a28}45%{background:#2a5a3a;box-shadow:inset 0 0 0 2px #9af0b5}}
@media (prefers-reduced-motion:reduce){.board.suspense .tile{animation:none}}

.ptop{float:right;color:var(--lcd-text);letter-spacing:.04em;text-transform:none;font-size:12px}

.winpop{display:none;position:fixed;inset:0;z-index:50;background:rgba(6,25,16,.62);align-items:center;justify-content:center;padding:16px}
.winpop .win{width:min(520px,100%);margin:0}
.marquee{position:relative;background:#0f1a15;border:2px solid #cfe9d9;color:#7be3a9;text-align:center;padding:38px 20px 30px;overflow:hidden;margin-bottom:10px}
.marquee .lights{position:absolute;background-image:radial-gradient(circle,#d8f5e4 2px,transparent 2.6px);background-size:16px 16px}
.marquee .lights.t{left:0;right:0;top:4px;height:12px;background-repeat:repeat-x}
.marquee .lights.b{left:0;right:0;bottom:4px;height:12px;background-repeat:repeat-x}
.marquee .lights.l{top:0;bottom:0;left:4px;width:12px;background-repeat:repeat-y}
.marquee .lights.r{top:0;bottom:0;right:4px;width:12px;background-repeat:repeat-y}
.wp-kicker{font:12px var(--chrome);letter-spacing:1.5px;text-transform:uppercase;opacity:.75}
.wp-big{font:700 clamp(22px,5.4vw,34px) var(--mono,monospace);margin:12px 0 8px;color:#a8f0c6}
.wp-sub{font:14px var(--chrome);opacity:.85}
.winpop .wp-cf{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:2}
.winpop .win{position:relative;z-index:1}
.tile .pc{position:absolute;right:6px;top:4px;font-size:11px;color:var(--lcd-text);opacity:.85}
.tile .pc:not(:empty)::before{content:"";display:inline-block;width:9px;height:9px;margin-right:3px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='3' r='2'/%3E%3Cpath d='M1 10c0-3 2-4 4-4s4 1 4 4z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Ccircle cx='5' cy='3' r='2'/%3E%3Cpath d='M1 10c0-3 2-4 4-4s4 1 4 4z'/%3E%3C/svg%3E") center/contain no-repeat}
.tile.winner .pc{color:#0d1a12}
.laststrip{display:grid;gap:14px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);margin:0 0 14px}
.laststrip.noapy{grid-template-columns:1fr}
.laststrip .lcd{padding:12px 16px}
.laststrip .ls-a{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.laststrip .ls-k{font:11px var(--chrome);letter-spacing:1.5px;text-transform:uppercase;opacity:.7;white-space:nowrap}
.laststrip .ls-v{font:20px var(--mono);color:#a8f0c6;margin-top:2px;white-space:nowrap}
.laststrip .ls-v b{color:#e9c46a;font-weight:700}
.laststrip .ls-r{flex:1;min-width:200px}
.laststrip .ls-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.laststrip .ls-chip{min-width:34px;text-align:center;padding:2px 8px;font:14px var(--mono);background:#173a2a;color:#a8f0c6}
.laststrip .ls-chip.now{background:#e9c46a;color:#0f1a15;font-weight:700}
.laststrip .ls-av{font:24px var(--mono);color:#e9c46a;margin-top:2px}
.laststrip .ls-an{font:11px var(--chrome);letter-spacing:1.5px;text-transform:uppercase;opacity:.7;margin-top:3px;white-space:nowrap}
.laststrip .ws{text-transform:none}
@media (max-width:820px){.laststrip{grid-template-columns:1fr}}
.tile.last{background:#e9c46a;box-shadow:inset 0 0 0 3px #fff}
.tile.last .n,.tile.last .t,.tile.last .pc{color:#0d1a12}
