/* Plot cards already show the storage state and meter. Keep one compact action
   under them for the selected plot, with no repeated title, amount or bar. */
#timePanel.land-claim-action.resource-panel { width:100%; margin:10px 0 0; padding:0; gap:0; border:0; border-radius:0; background:transparent; box-shadow:none; transition:none; }
#timePanel.land-claim-action.resource-panel #tpClaim { width:100%; min-height:42px; padding:9px 12px; border:1px solid #d3dcd0; border-radius:10px; font:700 12px/1.35 Arial,'Microsoft YaHei',sans-serif; letter-spacing:0; transform:none; box-shadow:none; }
.resource-state-tag { display:inline-flex; align-items:center; flex-shrink:0; gap:5px; padding:3px 7px; border-radius:6px; font:600 11px/18px Arial,'Microsoft YaHei',sans-serif; color:#627265; background:#edf1ea; white-space:nowrap; }
.resource-state-tag::before { content:''; width:5px; height:5px; border-radius:50%; background:currentColor; flex:0 0 5px; }
#timePanel.resource-panel:is([data-resource-state=claimable],[data-resource-state=full]) #tpClaim:not(:disabled) { background:#c8f541; border-color:#64c43c; color:#173f19; box-shadow:0 2px 0 #4c9a28,0 0 18px #8be04538; opacity:1; }
#timePanel.resource-panel:is([data-resource-state=claimable],[data-resource-state=full]) #tpClaim:not(:disabled):hover { background:#d7ff5e; box-shadow:0 2px 0 #4c9a28,0 0 24px #8be04555; }
#timePanel.resource-panel #tpClaim:disabled { background:#e6eae3; color:#828f7e; border-color:#d3dcd0; opacity:1; box-shadow:none; }
:is([data-resource-state=claimable],[data-resource-state=full]) .resource-state-tag { color:#166a27; background:#d6f8bf; }
:is([data-resource-state=claimable],[data-resource-state=full]) .resource-state-tag::before { background:#32b64c; box-shadow:0 0 0 3px #70d55c30; animation:resource-green-breathe 2.5s ease-in-out infinite; }
[data-resource-state=depleted] .resource-state-tag { color:#6d658a; background:#efecf5; }
#worldSwitcher .ws-card-slot { min-width:0; min-height:0; display:flex; flex-direction:column; align-self:start; gap:7px; }
#worldSwitcher .ws-card.resource-card:not(.empty) { position:relative; box-sizing:border-box; height:160px; min-height:160px; max-height:160px; border-width:2px; padding:12px 14px; grid-template-areas:'label av' 'storage storage'; grid-template-rows:88px 33px; gap:7px 12px; align-items:start; transition:border-color .18s,box-shadow .18s,background-color .18s; }
#worldSwitcher .resource-card .ws-lore { height:32px; min-height:32px; line-height:16px; margin:4px 0 6px; }
#worldSwitcher .resource-card .ws-active-mark { position:absolute; top:15px; right:18px; margin:0; font-size:10px; color:#56735c; }
#worldSwitcher .resource-card .ws-av { align-self:center; }
#worldSwitcher .resource-card:is([data-resource-state=claimable],[data-resource-state=full]) { border-color:#47bb50; background:#f5ffee; box-shadow:inset 0 0 0 1px #73ce69; }
#worldSwitcher .resource-card:is([data-resource-state=claimable],[data-resource-state=full]).active { box-shadow:inset 0 0 0 1px #48b847,0 0 0 3px #89d75f24; }
.resource-card-footer { grid-area:storage; position:static; height:auto; min-width:0; }
.ws-claim-dock { min-height:0; display:flex; align-items:flex-start; }
.ws-claim-dock[aria-hidden="true"] { display:none; }
#worldSwitcher .ws-claim-dock #timePanel.land-claim-action.resource-panel { width:100%; min-height:55px; margin:0; padding:0; border:0; background:transparent; }
#worldSwitcher .ws-claim-dock #timePanel #tpClaim { min-height:44px; width:100%; }
#worldSwitcher .ws-claim-dock.is-entering #timePanel.resource-panel { animation: ws-claim-dock-in .18s ease-out both; }
@keyframes ws-claim-dock-in { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:translateY(0); } }
.resource-card-summary { display:flex; align-items:center; justify-content:space-between; gap:6px; height:24px; }
.resource-card-summary .resource-state-tag { padding:1px 5px; font-size:10px; }
.resource-card-amount { color:#697767; font:500 10px/18px var(--mono,monospace); white-space:nowrap; font-variant-numeric:tabular-nums; }
.resource-claim-value { font-variant-numeric:tabular-nums;white-space:nowrap; }
.resource-card-meter { height:4px; margin-top:5px; overflow:hidden; border-radius:3px; background:#e3e9df; }
.resource-card-meter>span { display:block; height:100%; background:#a8b6a3; border-radius:inherit; transition:width .2s linear; }
:is([data-resource-state=claimable],[data-resource-state=full]) .resource-card-meter>span { background:linear-gradient(90deg,#32bd50,#c8f541); animation:resource-green-breathe 2.5s ease-in-out infinite; }
@keyframes resource-green-breathe { 0%,100%{filter:brightness(.94)}50%{filter:brightness(1.09)} }
@media(max-width:600px){
 #worldSwitcher .ws-card.resource-card:not(.empty){height:160px;min-height:160px;max-height:160px;padding:12px;}
 #worldSwitcher .resource-card .ws-active-mark{right:16px;top:13px;}
 #timePanel.land-claim-action.resource-panel{margin-top:4px;}
 #timePanel.land-claim-action.resource-panel #tpClaim{min-height:44px;font-size:13px;}
}
@media(prefers-reduced-motion:reduce){:is([data-resource-state=claimable],[data-resource-state=full]) .resource-state-tag::before,:is([data-resource-state=claimable],[data-resource-state=full]) .resource-card-meter>span{animation:none;}}
@media(prefers-reduced-motion:reduce){#worldSwitcher .ws-claim-dock.is-entering #timePanel.resource-panel{animation:none;}}
/* Collection fills progressively; every claim-ready state stays bright green. */
.resource-card-meter{background:#edf4df;border-color:#d4e4ba}
.resource-card-meter>span{background:linear-gradient(90deg,#40be72 0%,#f1d34d 55%,#ed705a 100%)}
.resource-state-tag{background:#edf5df;color:#4f7951}
.land-history-claim{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid #dce4d6}
.land-history-claim[hidden]{display:none}
.land-history-label{font:500 11px/1.5 Arial,'Microsoft YaHei',sans-serif;color:#71816b}
.land-history-info summary{cursor:pointer;padding:4px 0;min-height:24px;line-height:24px}
.land-history-info summary:focus-visible{outline:2px solid #569845;outline-offset:3px;border-radius:4px}
.land-history-note{margin:4px 0 8px;font:400 11px/1.65 Arial,'Microsoft YaHei',sans-serif;color:#71816b;overflow-wrap:anywhere}
.land-history-claim .btn{width:100%;min-height:42px;padding:9px 12px;font-size:12px;overflow-wrap:anywhere}
.resource-threshold-control{display:grid;grid-template-columns:auto minmax(80px,1fr) auto;align-items:center;gap:8px;margin:8px 0 2px;padding:7px 9px;border:1px solid #dce4d5;border-radius:8px;background:#f7f9f1;color:#687767;font:11px/1.3 Arial,'Microsoft YaHei',sans-serif}.resource-threshold-control input{width:100%;min-width:0;accent-color:#72ad3d;cursor:pointer}.resource-threshold-control output{min-width:58px;text-align:right;color:#537349;font:600 11px var(--mono,monospace)}.resource-threshold-control[hidden]{display:none}
@media(max-width:600px){.resource-threshold-control{grid-template-columns:1fr auto;gap:4px 8px}.resource-threshold-control input{grid-column:1/-1;grid-row:2}.resource-threshold-control output{grid-column:2;grid-row:1}}
.resource-card-footer .resource-threshold-control{grid-template-columns:auto minmax(34px,1fr) auto;gap:4px;margin:4px 0 0;padding:2px 4px;border:0;background:transparent;font-size:9px}
.resource-card-footer .resource-threshold-control output{min-width:42px;font-size:9px}
.resource-threshold-control{display:none!important}

/* Prelaunch land has no live earnings or claim surface. */
#timePanel.resource-panel[hidden]{display:none!important}
[data-resource-state=prelaunch] .resource-state-tag::before{display:none}
[data-resource-state=prelaunch] .resource-card-meter{display:none}
