.production-panel{max-width:1120px;margin:32px auto;padding:24px;border:1px solid #cdd9be;border-radius:18px;background:#fafbf4;color:#243b2d}.production-heading,.production-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.production-heading{justify-content:space-between}.production-heading h2{margin:4px 0 16px}.production-panel button,.production-dialog button,.production-panel select,.production-dialog select{font:inherit;min-height:42px;padding:9px 13px;border:1px solid #bdcbb2;border-radius:9px;background:#f1f5e8;color:#284532;cursor:pointer}.production-panel button:disabled,.production-dialog button:disabled{opacity:.5;cursor:default}.production-note{font-size:12px;color:#65705f}.production-lands,.production-roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px;margin-top:18px}.production-lands article,.production-role{padding:16px;border:1px solid #dce3d3;border-radius:12px;background:white;min-width:0}.production-role p,.production-lands p{font-size:13px;margin:9px 0}.production-role small{overflow-wrap:anywhere;font-size:11px;color:#697760}.production-role progress,.production-lands progress{width:100%;accent-color:#718e4b;height:10px}.role-affinities{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0;white-space:normal}.affinity,.role-level{font-size:11px;line-height:1.5;padding:3px 6px;border-radius:5px;white-space:normal}.affinity.good{background:#e1f0d9;color:#285b2e}.affinity.poor{background:#fff0d7;color:#8a5118}.affinity.neutral,.role-level{background:#edf0e9;color:#52604b}.coll-item .role-affinities{max-width:160px;justify-content:center}.production-dialog{max-width:650px;width:calc(100% - 28px);max-height:85vh;overflow:auto;border:1px solid #bfcbb6;border-radius:16px;padding:24px;background:#fffef6;color:#294332}.production-dialog::backdrop{background:#172c2980}.production-close{float:right}.production-option{display:flex;gap:9px;align-items:center;margin:12px 0;font-size:14px}.production-dialog input{min-width:18px;min-height:18px}.production-dialog-status,#productionMessage{color:#885022}.production-dialog .production-tools{margin-top:14px}@media(max-width:600px){.production-panel{margin:18px 12px;padding:15px}.production-roles,.production-lands{grid-template-columns:1fr}.production-tools button{flex-grow:1}.production-tools select{max-width:100%}}

.coll-item:has(.role-affinities){min-width:146px}.production-usdc{border:1px solid #bdcbb2;background:#f1f5e8;color:#284532;padding:12px 18px;min-height:44px;border-radius:10px;margin:10px;font:inherit;cursor:pointer}

#payConfirm:disabled{opacity:.5;cursor:not-allowed}

/* Shared production state, readable at both desktop and phone sizes. */
.world-yield.production-overview{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:16px 20px;width:100%;box-sizing:border-box}
.production-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.production-metric{display:flex;flex-direction:column;gap:6px;min-width:0}
.production-metric>span{font-size:12px;color:var(--dim,#697462);font-weight:400}
.production-metric>strong{font:600 17px/24px Arial,'Microsoft YaHei',sans-serif;min-height:24px;color:var(--ink,#263528);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.production-overview-note{font-size:12px;line-height:1.6;color:var(--dim,#697462);font-weight:400}
.production-weather-intel{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:9px;box-sizing:border-box;min-height:58px;padding:8px 11px;border:1px solid #d7dfd0;border-radius:11px;background:#f5f7ef;color:#63705f}.production-weather-intel__icon{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#e4e9dc;color:#667261;font:800 13px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.production-weather-intel>strong{display:flex;align-items:center;min-width:0;min-height:34px;font-size:11px;line-height:1.55;font-weight:650;overflow-wrap:anywhere;word-break:normal}.production-weather-intel.is-active{border-color:#a8c999;background:#edf7e8;color:#285f37}.production-weather-intel.is-active .production-weather-intel__icon{background:#cfe8c7;color:#236139}.production-weather-intel.is-inactive{border-color:#dfd5b3;background:#faf7e9;color:#70643c}.production-weather-intel.is-inactive .production-weather-intel__icon{background:#eee4bf;color:#705d22}
@media(max-width:600px){.production-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.world-yield.production-overview{padding:14px}.production-metric>strong{font-size:15px}.production-weather-intel{min-height:74px;padding:9px 10px}.production-weather-intel>strong{min-height:51px}.tp-head{flex-wrap:wrap;gap:8px}.tp-note{line-height:1.6}}
/* Claim readiness begins at 60 HASH, independently of the storage ceiling. */
.time-panel:not(.is-claimable) .tp-fill{background:#a4aba1;animation:none}
.time-panel .tp-claim:disabled,#productionClaim:disabled{background:#e1e4de;color:#858c81;border-color:#d1d6cc;opacity:1;cursor:not-allowed;box-shadow:none}
.time-panel.is-claimable .tp-claim:not(:disabled){background:#c8f541;color:#173d25;border-color:#a5d22d;box-shadow:0 4px 14px #74a52c38;font-weight:800}
.time-panel.is-claimable .tp-claim:not(:disabled):hover{background:#d7ff5e;border-color:#8fc526;box-shadow:0 6px 18px #74a52c52}
.time-panel.is-claimable .tp-note{color:#356c3c;font-weight:600}
.time-panel.is-claimable .tp-bar{overflow:visible;animation:none}
.time-panel.is-claimable .tp-fill{background:linear-gradient(90deg,#67a85f,#c8f541);animation:none}
@keyframes earnings-ready-glow{0%,100%{box-shadow:0 0 3px #a3bf6350}50%{box-shadow:0 0 12px #b9ce7aa0}}
@keyframes earnings-ready-light{0%,100%{filter:brightness(1)}50%{filter:brightness(1.3)}}
@media(prefers-reduced-motion:reduce){.time-panel.is-claimable .tp-bar,.time-panel.is-claimable .tp-fill{animation:none}.time-panel.is-claimable .tp-bar{box-shadow:0 0 6px #b9ce7a80}}
.coll-item.coll-add{align-self:stretch;justify-content:center;min-height:220px;border-style:dashed;text-decoration:none;color:var(--dim);gap:12px}
.coll-add>span{font-size:40px;font-weight:400;line-height:1}
.coll-add>small{font-size:12px}
.coll-item.coll-add:hover{border-color:var(--gold);color:var(--gold)}
.land-unlock-options{display:grid;gap:12px;margin:20px 0}.land-unlock-options button{padding:16px;text-align:left}
.role-affinities .affinity{display:inline-flex;flex-direction:column;gap:3px;border:1px solid transparent;line-height:1.5}
.role-affinities .affinity.is-inactive{background:#f0f2ed;color:#737d6c;border-color:#e2e7dc}
.role-affinities .affinity.good.is-active{background:#d8efc7;color:#245b23;border:2px solid #548e38;box-shadow:0 0 0 2px #548e3818;font-weight:700}
.role-affinities .affinity.poor.is-active{background:#ffe4bf;color:#864311;border:2px solid #c57a28;box-shadow:0 0 0 2px #c57a2818;font-weight:700}
.affinity-state{display:block;font-size:10px;letter-spacing:.2px}

/* Home hierarchy: one collection, one deployment control, one reward panel. */
#collRow,.land-roster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(156px,1fr));gap:14px;align-items:stretch;overflow:visible}
#collRow .coll-item,.land-roster-grid .coll-item{width:auto;min-width:0;max-width:none;box-sizing:border-box;padding:18px 12px;min-height:232px;border-radius:16px}
#collRow .role-affinities,.land-roster-grid .role-affinities{max-width:none;width:100%;gap:6px}
#collRow .affinity,.land-roster-grid .affinity{width:100%;box-sizing:border-box;font-size:11px;text-align:left;padding:6px 8px}
#collRow .role-level,.land-roster-grid .role-level{margin:auto}
#collRow .coll-add,.land-roster-grid .coll-add{min-height:232px;align-items:center;justify-content:center;background:transparent}
#hudSeats.land-roster{display:block;width:min(960px,94vw);margin:4px auto 18px;box-sizing:border-box}
.land-roster-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 13px;padding-top:6px}
.land-roster-heading>div{display:flex;flex-direction:column;gap:4px}.land-roster-heading span{font-size:11px;color:var(--dim,#687461)}.land-roster-heading strong{font-size:18px;color:var(--txt,#263528)}.land-roster-heading small{font-size:11px;color:var(--dim,#687461);text-align:right}
.land-roster-grid{grid-template-columns:repeat(auto-fit,minmax(146px,1fr))}
.land-roster-grid .land-roster-add{font:inherit;color:var(--dim,#687461);cursor:pointer}
.land-roster-grid .land-roster-add:disabled{opacity:.55;cursor:not-allowed}
#collRow .coll-add:focus-visible,.production-dialog button:focus-visible,.production-dialog select:focus-visible,.production-dialog input:focus-visible,#creatureWorkActions button:focus-visible{outline:3px solid var(--gold,#a97f16);outline-offset:3px}
.home-fusion{scroll-margin-top:130px}
.fusion-workbench{display:grid;grid-template-columns:minmax(250px,1fr) minmax(260px,1fr);gap:28px;align-items:center;border:1px solid var(--line,#d9dfcf);border-radius:20px;background:var(--panel,#fafbf6);padding:28px}
.fusion-workbench p{font-size:14px;line-height:1.7;color:var(--dim,#687461);margin:0 0 18px}
.fusion-slot-preview{display:flex;align-items:center;gap:8px;justify-content:center}
.fusion-slot-preview span{display:grid;place-items:center;width:48px;height:64px;border:1px dashed var(--line,#c5ceb9);border-radius:12px;color:var(--dim,#879078);background:var(--panel2,#f1f4e9);font:600 20px monospace}
.fusion-slot-preview i{font-style:normal;font-size:14px;color:var(--dim,#879078)}
.fusion-slot-preview .fusion-result{border-style:solid;color:var(--gold,#ad881d);background:#d9bd4920}
.production-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:620px;padding:28px;border-radius:22px;background:var(--panel,#fafbf6);color:var(--txt,#263528);box-shadow:0 20px 80px #132b2b30;overscroll-behavior:contain}
.production-dialog h2{margin:0 40px 18px 0;font-size:22px;line-height:1.35}.production-dialog h3{font-size:15px;margin-top:24px}
.production-dialog p{font-size:14px;line-height:1.7;color:var(--dim,#687461)}
.production-dialog button,.production-dialog select,#creatureWorkActions button{min-height:44px;border-radius:12px;border:1px solid var(--line,#c5ceb9);background:var(--panel2,#f1f4e9);color:var(--txt,#263528);font:inherit;padding:10px 14px;cursor:pointer}
.production-dialog button:disabled,#creatureWorkActions button:disabled{opacity:.45;cursor:not-allowed}
.production-dialog .production-close{position:absolute;right:16px;top:16px;min-width:44px;padding:8px;font-size:22px;line-height:1}
 #creatureWorkActions{border-top:1px solid var(--line,#c5ceb9);padding-top:10px;margin-top:12px;gap:8px}
#creatureWorkActions button{flex:1 1 140px;font-size:13px}
.supply-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}
.supply-grid button{display:flex;flex-direction:column;gap:6px;align-items:center;padding:16px 8px}
.supply-grid strong{font-size:24px}.supply-grid span{font-size:12px}.supply-grid small{font-size:13px;color:var(--gold,#947116)}
#fusionChoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0;max-height:260px;overflow:auto;padding:3px}
.fusion-choice{display:flex;align-items:center;gap:10px;min-height:64px;padding:10px;border:1px solid var(--line,#c5ceb9);border-radius:12px;cursor:pointer}
.fusion-choice:has(:checked){border-color:var(--gold,#ad881d);background:#d9bd4918}.fusion-choice.unavailable{opacity:.5}
.fusion-choice span{min-width:0}.fusion-choice strong{font-size:13px}.fusion-choice small{display:block;font-size:11px;line-height:1.5;color:var(--dim,#687461);overflow-wrap:anywhere}
.fusion-main-label{display:grid;gap:8px;font-size:13px}#fusionPreview{padding:12px;background:var(--panel2,#f1f4e9);border-radius:10px;min-height:24px;font-variant-numeric:tabular-nums}
.production-option{line-height:1.6;align-items:flex-start}
.ws-av-item{width:28px;height:32px}.ws-av-item canvas{width:28px;height:28px;image-rendering:pixelated}
#payModal .modal-card,#creatureModal .modal-card,#crewPickModal .modal-card{box-sizing:border-box;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
#timePanel .tp-note{font-size:12px}#timePanel .tp-claim{min-height:44px;font-size:13px}
@media(max-width:600px){#collRow,.land-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#collRow .coll-item,.land-roster-grid .coll-item{padding:14px 9px}.land-roster-heading{align-items:flex-start;flex-direction:column;gap:6px}.land-roster-heading small{text-align:left}.fusion-workbench{grid-template-columns:1fr;padding:18px;gap:18px}.fusion-slot-preview{gap:5px}.fusion-slot-preview span{width:38px;height:54px}.fusion-workbench .btn{width:100%}.production-dialog{padding:20px;max-height:calc(100dvh - 24px)}.production-dialog h2{font-size:20px}#fusionChoices{grid-template-columns:1fr;max-height:240px}.production-dialog .btn{width:100%}.tp-foot{align-items:stretch}.tp-foot .tp-claim{width:100%}}
/* Attribute values must remain legible instead of inheriting tiny pixel labels. */
#creatureAttrs .attr-row{display:grid;grid-template-columns:minmax(90px,32%) minmax(0,1fr);gap:12px;padding:7px 0;align-items:start;line-height:1.55}
#creatureAttrs .attr-k,#creatureAttrs .attr-v{font:13px/1.55 Arial,'Microsoft YaHei',sans-serif;letter-spacing:0;text-transform:none;overflow-wrap:anywhere}
#creatureAttrs .attr-k{color:var(--dim,#687461)}#creatureAttrs .attr-v{color:var(--txt,#263528);font-weight:600}
#creatureTraits .affinity{font:12px/1.5 Arial,'Microsoft YaHei',sans-serif;padding:6px 8px}
#creatureWorkActions{position:sticky;bottom:-1px;background:var(--panel,#fafbf6);padding-bottom:6px}
@media(max-width:400px){#navPill a{font-size:10px;padding-left:8px;padding-right:8px}#creatureAttrs .attr-row{grid-template-columns:94px minmax(0,1fr);gap:10px}}
/* Active affinity is a compact indicator; its spoken state remains accessible. */
.role-affinities .affinity.is-active{flex-direction:row;align-items:center;gap:6px;border-width:1px;font-weight:600}
.affinity-light{display:inline-block;flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:#438d38;color:#438d38;animation:none}
.affinity.poor .affinity-light{background:#ba741f;color:#ba741f}
@keyframes affinity-breathe{0%,100%{opacity:.55;box-shadow:0 0 0 transparent}50%{opacity:1;box-shadow:0 0 6px currentColor}}
@media(prefers-reduced-motion:reduce){.affinity-light{animation:none;opacity:1}}
/* Reset inherited page geometry: native dialogs are viewport-centered. */
dialog.production-dialog{position:fixed!important;inset:0!important;margin:auto!important;height:fit-content!important;width:min(620px,calc(100vw - 32px))!important;max-height:calc(100dvh - 40px)!important;box-sizing:border-box;overflow:auto;padding:28px!important;float:none!important;transform:none!important}
dialog.production-dialog::backdrop{background:#17302975;backdrop-filter:blur(4px)}
dialog.production-dialog [hidden]{display:none!important}
dialog.production-dialog h2{font-size:23px;margin-bottom:12px}.production-dialog .dialog-footer{display:flex;justify-content:flex-end;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}
.unlock-eyebrow{display:block;font-size:11px;color:var(--dim);letter-spacing:1px;margin-bottom:8px}
.land-unlock-options{gap:12px;margin:24px 0}.land-unlock-options button{display:flex;align-items:center;gap:14px;padding:18px!important;border-radius:16px!important;background:var(--panel)!important;width:100%}
.land-unlock-options button:hover{border-color:var(--gold);background:#d9bd4910!important}.unlock-method-icon{width:40px;height:40px;border-radius:12px;background:var(--panel2);display:grid;place-items:center;font:bold 20px monospace;flex:none;color:var(--gold)}
.unlock-method-copy{display:flex;flex-direction:column;gap:5px;flex:1;text-align:left}.unlock-method-copy strong{font-size:15px}.unlock-method-copy small{font-size:12px;color:var(--dim);line-height:1.6}.unlock-method-value{font-size:12px;white-space:nowrap;color:var(--dim)}
.land-unlock-options [data-method="0"]{border-color:var(--gold)}.land-unlock-options [data-method="0"] .unlock-method-value{font-weight:700;color:var(--gold)}
.fusion-avatar{width:40px;height:40px;image-rendering:pixelated;flex:none;border-radius:8px;background:var(--panel2)}
#fusionChoices{max-height:250px}#fusionChoices .fusion-choice{padding:12px;gap:8px;min-height:80px;border-radius:14px!important}#fusionChoices .fusion-choice strong{font-size:13px}#fusionChoices .fusion-choice small{font-size:11px}
.fusion-selection-count{font-size:13px;font-weight:700;margin:18px 0 12px;color:var(--dim)}.fusion-get-more{display:block;padding:12px;background:var(--panel2);border-radius:10px;font-size:13px;color:var(--txt);text-decoration:none}
#fusionConfirm{display:block;width:100%;margin-top:16px;min-height:46px}.fusion-main-label{margin:14px 0}
@media(max-width:600px){dialog.production-dialog{padding:20px!important;width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important}.land-unlock-options button{padding:14px!important;gap:10px;flex-wrap:wrap}.unlock-method-value{margin-left:50px}.unlock-method-copy{flex-basis:calc(100% - 50px)}#fusionChoices{grid-template-columns:1fr;max-height:220px}.fusion-choice small{line-height:1.4}}
dialog.production-dialog input[type="checkbox"]{accent-color:var(--gold,#9a751d)}
/* Live stamina uses the same role record as work, rest and supplies. */
#worldSwitcher{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;overflow:visible;align-items:stretch;width:100%;box-sizing:border-box}
#worldSwitcher .ws-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label av" "buy buy";align-items:center;gap:12px;padding:18px;min-width:0;width:auto;min-height:150px;box-sizing:border-box;border-radius:16px;background:var(--panel,#fafbf6);flex:none}
#worldSwitcher .ws-label{grid-area:label;min-width:0;width:auto}
#worldSwitcher .ws-theme{display:flex;align-items:center;gap:8px;font:600 15px/1.5 Arial,'Microsoft YaHei',sans-serif;white-space:nowrap}
#worldSwitcher .ws-lore{max-width:none;font:12px/1.6 Arial,'Microsoft YaHei',sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:6px 0 10px;font-style:normal;word-break:normal}
#worldSwitcher .ws-slot,#worldSwitcher .ws-wid{font-size:11px;line-height:1.5;letter-spacing:0;white-space:nowrap}
#worldSwitcher .ws-cap{font-size:12px;margin-top:7px;white-space:nowrap}
#worldSwitcher .ws-active-mark{font-size:11px;margin-top:7px;white-space:nowrap}
#worldSwitcher .ws-av{grid-area:av;flex-shrink:0;align-self:center;margin:0}
#worldSwitcher .ws-av.ws-av-stack{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px;width:65px;max-width:65px;height:auto;background:transparent}
#worldSwitcher .ws-av.ws-av-stack .ws-av-item{margin:0;width:28px;height:28px;flex:0 0 28px}
#worldSwitcher .ws-av.ws-av-stack .ws-av-item canvas{width:28px;height:28px}
#worldSwitcher .ws-av.ws-av-stack .ws-av-item:not(.ws-av-more){border:0;border-radius:0;background:transparent!important;box-shadow:none;overflow:visible}
#worldSwitcher .ws-av.ws-av-stack .ws-av-item:not(.ws-av-more) canvas{background:transparent!important}
#worldSwitcher .ws-av-empty{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:transparent!important}
#worldSwitcher .ws-buy-wrap{grid-area:buy;gap:6px}#worldSwitcher .ws-buy{width:100%;min-height:40px;font-size:13px;border-radius:10px}#worldSwitcher .ws-cost{font-size:11px;line-height:1.5}
#worldSwitcher .ws-card.active{border-color:#58c33c;box-shadow:inset 0 0 0 1px #58c33c;background:#f6ffef}
#worldSwitcher .ws-card:focus-visible{outline:3px solid #58c33c;outline-offset:3px}
@media(max-width:600px){#worldSwitcher{grid-template-columns:1fr;gap:10px}#worldSwitcher .ws-card{padding:16px;min-height:132px}#worldSwitcher .ws-lore{margin:5px 0 8px}#worldSwitcher .ws-av.ws-av-stack{max-width:92px;width:92px}}
.coll-item .role-energy{width:100%;margin:9px 0 2px;box-sizing:border-box;text-align:left}
.role-energy-label{display:flex;justify-content:space-between;align-items:center;gap:5px;margin-bottom:5px;font:11px/1.4 Arial,'Microsoft YaHei',sans-serif;color:var(--dim,#697462)}
.role-energy-label strong{font-weight:600;font-variant-numeric:tabular-nums;color:var(--txt,#263528);white-space:nowrap}
.role-gathering-rate{display:flex;justify-content:space-between;align-items:baseline;gap:4px;margin-top:4px;font:10px/1.6 Arial,'Microsoft YaHei',sans-serif;color:var(--dim,#697462)}
.role-gathering-rate strong{font-size:11px;font-weight:600;color:#3b703c;white-space:nowrap;font-variant-numeric:tabular-nums}
.role-energy-track{height:6px;overflow:hidden;border-radius:4px;background:#dfe5d8}
.role-energy-fill{display:block;height:100%;background:#719c50;border-radius:inherit;transition:width .3s ease,background-color .2s ease}
.role-energy[data-state="low"] .role-energy-fill{background:#c99132}.role-energy[data-state="low"] strong{color:#946322}
.role-energy[data-state="empty"] .role-energy-track{background:#ecdad2}.role-energy[data-state="empty"] strong{color:#aa5037}
@media(prefers-reduced-motion:reduce){.role-energy-fill{transition:none}}
/* Fusion has a dedicated material library and a persistent result preview. */
.role-special{display:block;font:11px/1.5 Arial,'Microsoft YaHei',sans-serif;border:1px solid #d8dfd4;border-radius:6px;background:#f5f7f2;color:#43554a;padding:5px 7px;overflow-wrap:anywhere}
.role-special[data-tier="gold"]{border-color:#c99f4c;background:#fff3d8;color:#694713}
.role-special[data-tier="purple"]{border-color:#a77bc9;background:#f1e7fa;color:#4e286f}
.role-special.is-locked{border-style:dashed;box-shadow:none}
.role-special[data-tier="gold"].is-locked{border-color:#bda77b;background:#f7f0e3;color:#695332}
.role-special[data-tier="purple"].is-locked{border-color:#af93c5;background:#f1eaf6;color:#62447a}
.fusion-choice .role-energy,.fusion-choice .role-affinities{width:100%;margin:0}.fusion-choice .role-affinities{display:grid;gap:5px}.fusion-choice .role-level{display:none}.fusion-choice .affinity{font-size:11px;padding:5px 6px;white-space:normal}
/* One SVG coordinate system keeps every portrait, stream and reactor aligned. */
.fusion-coordinate-stage{display:block;width:100%;height:100%;overflow:visible}
.fusion-energy-guide{fill:none;stroke:#91ab83;stroke-width:2;opacity:.4}
.fusion-energy-line{fill:none;stroke:var(--hl-action,#d2f65a);stroke-width:4;stroke-linecap:square;stroke-dasharray:3 14;animation:fusion-stream-travel 1.8s linear infinite}
.fusion-energy-line.line-0{animation-delay:0s}.fusion-energy-line.line-1{animation-delay:-.45s}.fusion-energy-line.line-2{animation-delay:-.9s}.fusion-energy-line.line-3{animation-delay:-1.35s}
.fusion-mote{display:grid;place-items:center;box-sizing:border-box;width:100%;height:100%;border:2px solid #c3d1b4;border-radius:12px;background:#fffef8;box-shadow:0 3px 0 #d8e0cb}
.fusion-mote.is-main{border-color:#779a31;background:#f0f7d9;box-shadow:0 3px 0 #b6ce74}
.fusion-mote canvas{display:block;width:54px;height:54px;background:transparent!important;image-rendering:pixelated}
.fusion-node-name,.fusion-node-id,.fusion-reactor-note{text-anchor:middle;fill:#304329;font-family:Arial,'Microsoft YaHei',sans-serif;font-size:12px;font-weight:600}
.fusion-node-id{fill:#6f7f62;font-size:10px;font-weight:400}.fusion-reactor-note{fill:#536c32;font-size:9px;letter-spacing:1px}
.fusion-reactor-shell{fill:#d2f65a;stroke:#6d8d37;stroke-width:2;stroke-linejoin:miter}
.fusion-reactor-frame{fill:#eff7d4;stroke:#afc778;stroke-width:1}
.fusion-reactor-particles rect{fill:#557c2b;animation:fusion-corner-light 1.8s ease-in-out infinite;animation-delay:calc(var(--p)*-.3s)}
.fusion-reactor-silhouette{display:grid;place-items:center;width:100%;height:100%}.fusion-reactor-silhouette canvas{width:60px;height:60px;image-rendering:pixelated;background:transparent!important;animation:fusion-avatar-light 1.8s ease-in-out infinite}
.fusion-material-accessibility{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.fusion-reveal{display:none}.fusion-portrait-stage{position:relative;display:grid;place-items:center;min-width:0}
.fusion-portrait-stage canvas{width:160px;height:160px;background:transparent!important;image-rendering:pixelated}
.fusion-spark{display:none}.fusion-complete-kicker{color:#5b782f;font:11px/1.4 HashlingsPixel,monospace;letter-spacing:1px}
.production-dialog .fusion-complete-details h3{font:24px/1.3 HashlingsPixel,Arial,sans-serif;margin:10px 0;color:#243c2b;overflow-wrap:anywhere}
.fusion-complete-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:#67755b}.fusion-complete-level{border:1px solid #afc48a;border-radius:6px;background:#e9f3cf;padding:4px 7px;color:#48662c}
.fusion-complete-traits{margin-top:14px}.fusion-complete-traits .role-affinities,.fusion-complete-traits .role-specials{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0}.fusion-complete-traits .affinity,.fusion-complete-traits .role-specials>*{font-size:11px;line-height:1.5;padding:4px 7px;white-space:normal}
.fusion-complete-traits .affinity-state{display:none}.fusion-no-special{color:#79876b}
.fusion-kept-characters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%}.fusion-kept-characters>div{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid #d7dfcb;border-radius:10px;background:#fffef8;padding:16px 6px;min-width:0}.fusion-kept-characters canvas{width:64px;height:64px;image-rendering:pixelated}.fusion-kept-characters strong{font-size:12px}.fusion-kept-characters small{font:10px/1.5 monospace;color:#77846b;overflow-wrap:anywhere}.fusion-kept-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;font-size:12px;color:#6d795e}
.fusion-phase-track{display:flex;justify-content:center;gap:6px;margin-top:12px}.fusion-phase-track i{width:6px;height:6px;background:#bfd57a;animation:fusion-corner-light 1.5s ease-in-out infinite}.fusion-phase-track i:nth-child(2){animation-delay:-.5s}.fusion-phase-track i:nth-child(3){animation-delay:-1s}
@keyframes fusion-stream-travel{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@keyframes fusion-corner-light{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes fusion-avatar-light{0%,100%{filter:brightness(.82)}50%{filter:brightness(1.08)}}
@media(max-width:650px){.fusion-mote canvas{width:54px;height:54px}.fusion-kept-characters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.fusion-energy-line,.fusion-reactor-particles rect,.fusion-reactor-silhouette canvas,.fusion-phase-track i{animation:none!important;opacity:1}}

dialog.production-dialog[data-kind="fusion"]{width:min(960px,calc(100vw - 32px))!important;max-width:960px!important;padding:28px!important}
[data-kind="fusion"]>p{max-width:760px;margin:0 0 22px;font-size:13px}
.fusion-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}
.fusion-library-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:14px;padding:4px 2px 12px}
.fusion-library-heading span{font-size:12px;color:var(--dim)}
.fusion-library #fusionChoices{margin:0;max-height:420px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:3px}
.fusion-library #fusionChoices .fusion-choice{position:relative;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;min-height:142px;background:#fffdf7;border:1px solid #dbe0d0}
.fusion-library #fusionChoices .fusion-choice:has(:checked){background:#f4f3de;border:1px solid var(--gold,#a57c16);box-shadow:inset 0 0 0 1px var(--gold,#a57c16)}
.fusion-library #fusionChoices .fusion-choice:has(:disabled){opacity:.45;cursor:not-allowed}
.fusion-library .fusion-choice input{position:absolute;right:12px;top:12px;width:18px;height:18px;margin:0}
.fusion-library .fusion-avatar{width:48px;height:48px;padding:4px;background:#f1efe6}
.fusion-library .fusion-choice strong{display:block;margin-bottom:5px}
.fusion-summary{padding:18px;background:#eff2e8;border:1px solid #dbe0d0;border-radius:16px;min-width:0}
.fusion-summary-heading{font-size:14px;font-weight:700;margin-bottom:14px}
.fusion-selected-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.production-dialog .fusion-selected-slot{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;height:78px;min-width:0;padding:8px 3px;border:1px solid #c9d1b9;background:#fffdf7;border-radius:10px}
.production-dialog .fusion-selected-slot{border-radius:10px!important}.fusion-selected-slot canvas{width:32px;height:32px;image-rendering:pixelated}.fusion-selected-slot small{font:10px/1.3 monospace;color:var(--dim)}
.fusion-selected-slot>span{position:absolute;right:4px;top:1px;color:var(--dim);font-size:14px}
.fusion-selected-slot.empty{border-style:dashed;background:transparent}.fusion-selected-slot.empty>span{position:static;font-size:22px;color:#9ca78c}
.fusion-result-card{margin-top:14px;border:1px solid #d9dfcc;background:#fffdf7;border-radius:12px;padding:16px}
.fusion-result-empty{text-align:center;padding:12px 0}.fusion-result-empty>span{display:block;font-size:32px;color:var(--gold,#a57c16);margin-bottom:10px}.fusion-result-empty strong{display:block;font-size:14px}.fusion-result-empty p{font-size:12px;margin:8px 0 0}
.fusion-result-identity{display:flex;align-items:center;gap:12px}.fusion-result-identity canvas{width:56px;height:56px;image-rendering:pixelated;background:#f4eedc;border-radius:10px;padding:4px}
.fusion-result-identity strong,.fusion-result-identity small,.fusion-result-identity span{display:block}.fusion-result-identity strong{font-size:15px;margin:4px 0}.fusion-result-identity small,.fusion-result-identity span{font-size:11px;color:var(--dim)}
.fusion-result-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 0;border-top:1px solid #e4e7da;padding-top:14px}.fusion-result-stats dt{font-size:11px;color:var(--dim)}.fusion-result-stats dd{margin:4px 0 0;font:600 19px/1.2 Arial,sans-serif;color:#39472b}.fusion-result-stats dd small{font-size:11px;font-weight:400}
.production-dialog p.fusion-success-note{font-size:11px;color:#65794a;margin:14px 0 0}.fusion-summary #fusionPreview{font-size:12px;padding:0;background:none;min-height:0;margin:12px 0;line-height:1.5}
.fusion-summary #fusionConfirm{background:#967108;color:#fffaf0;border-color:#967108;font-size:14px;font-weight:600;box-shadow:0 2px 0 #735603}.fusion-summary #fusionConfirm:disabled{background:#dce1d3;color:#828c77;border-color:#dce1d3;box-shadow:none;opacity:1}
.fusion-summary select{width:100%;font-size:13px;background:#fffdf7}.fusion-summary #fusionTraits .production-option{font-size:12px}
@media(max-width:650px){dialog.production-dialog[data-kind="fusion"]{padding:20px!important;width:calc(100vw - 20px)!important}.fusion-layout{grid-template-columns:1fr;gap:16px}.fusion-library #fusionChoices{max-height:265px}.fusion-library #fusionChoices .fusion-choice{min-height:126px;padding:12px}.fusion-summary{padding:14px}.fusion-library-heading{flex-wrap:wrap}.fusion-selection-count{margin:10px 0}.fusion-result-empty{padding:4px}.fusion-result-empty>span{display:none}.fusion-summary #fusionConfirm{position:sticky;bottom:0}.fusion-get-more{margin-top:10px}}

.role-energy-state{display:block;font:10px/1.5 Arial,'Microsoft YaHei',sans-serif;color:var(--dim);margin-top:5px;min-height:15px}
#mint.is-minted{display:block!important}#mint.is-minted>.mint-card{display:none!important}.mint-complete{display:none}#timeBal{font-variant-numeric:tabular-nums}#tpTitle{line-height:1.6}#timePanel .tp-head{gap:10px;flex-wrap:wrap}

/* Land cards stay fixed; the blind-box picker uses a dedicated three-slot carousel. */
#worldSwitcher .ws-card:not(.empty){height:160px;min-height:160px;max-height:160px;grid-template-rows:1fr;grid-template-areas:'label av';align-items:start}
#worldSwitcher .ws-card:not(.empty) .ws-label{align-self:stretch;display:flex;flex-direction:column}#worldSwitcher .ws-card .ws-lore{height:38.4px;min-height:38.4px;flex-shrink:0}#worldSwitcher .ws-active-mark{margin-top:auto}
#worldSwitcher .ws-card.empty{height:160px;min-height:160px;max-height:160px;grid-template-columns:minmax(0,1fr);grid-template-rows:18px minmax(0,1fr) auto;grid-template-areas:'slot' 'label' 'buy';align-items:stretch;gap:6px 0;padding:12px 14px}
#worldSwitcher .ws-card.empty>.ws-slot{position:static!important;grid-area:slot;justify-self:end;align-self:start;max-width:100%;min-width:0;right:auto!important;top:auto!important}
#worldSwitcher .ws-card.empty .ws-slot-index{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;padding:1px 5px;border:1px solid #d7dfd1;border-radius:6px;background:#f7f9f3;color:#6d7969;font:600 10px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;box-sizing:border-box}
#worldSwitcher .ws-card.empty .ws-label{grid-area:label;display:flex;align-items:center;min-width:0}
#worldSwitcher .ws-card.empty .ws-empty-main{display:flex;align-items:center;gap:11px;min-width:0}
#worldSwitcher .ws-card.empty .ws-av{position:static;grid-area:auto;flex:0 0 46px;width:46px;height:46px;margin:0;border:1px dashed #b8c5b1;border-radius:12px;background:#f5f7f0!important;opacity:1}
#worldSwitcher .ws-card.empty .ws-slot-mark{color:#6d806a;font:500 22px/1 monospace}
#worldSwitcher .ws-card.empty .ws-empty-copy{min-width:0}.ws-card.empty .ws-theme{padding-right:0;overflow:visible}.ws-card.empty .ws-theme .ws-empty{overflow:hidden;text-overflow:ellipsis;color:#425646;font-size:14px;font-weight:700}
#worldSwitcher .ws-card.empty .ws-buy-wrap{grid-area:buy;display:grid;grid-template-rows:auto 40px;gap:5px;min-width:0}
#worldSwitcher .ws-card.empty .ws-cost{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.45;text-align:left}
#worldSwitcher .ws-card.empty .ws-buy{grid-area:auto;width:100%;height:40px;min-height:40px;padding:7px 10px;border:1px solid #88a67c;border-radius:9px;background:#eef5e8;color:#315a39;font-size:12px;font-weight:700;box-sizing:border-box}
#worldSwitcher .ws-card.empty .ws-buy:hover:not(:disabled){background:#e3f0dc;border-color:#648b59}
/* Stable supply-case selection: no carousel, scaling or idle shaking. */
.home-layout #box .mint-card{position:relative;background:var(--sf-surface,#181a20)!important;border:1px solid var(--sf-border,#343b46)!important;box-shadow:none}
.home-layout #box #boxPicker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:none;flex:0 0 250px;align-items:stretch;gap:12px;margin:0;overflow:visible}
#boxPicker .box-card,#boxPicker .box-card:hover,#boxPicker .box-card.active{--box-tier:#90dec1;position:relative;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;width:auto;height:250px;min-height:250px;padding:20px 10px 14px;overflow:visible;border:1px solid #343b46!important;border-radius:8px;background:#12171c!important;box-shadow:none!important;opacity:1;filter:none;transform:none!important;transition:border-color .16s ease,background-color .16s ease;cursor:pointer}
#boxPicker .box-card[data-tier="blue"]{--box-tier:#91bde8}
#boxPicker .box-card[data-tier="purple"]{--box-tier:#bea4e4}
#boxPicker .box-card[data-tier="purple"][data-pity-ready="true"]{--box-tier:#e8c570}
#boxPicker .box-card:hover{border-color:#707a86!important}
#boxPicker .box-card.active{border-color:var(--box-tier)!important;background:color-mix(in srgb,var(--box-tier) 7%,#12171c)!important;box-shadow:inset 0 2px 0 var(--box-tier)!important}
#boxPicker .box-card::before{content:'';position:absolute;top:10px;left:10px;width:6px;height:6px;border:1px solid #65717b;border-radius:50%;box-sizing:border-box}
#boxPicker .box-card.active::before{border-color:var(--box-tier);background:var(--box-tier)}
#boxPicker .box-icon,#boxPicker .box-card[data-tier="purple"][data-pity-ready="true"] .box-icon{position:relative;display:grid;place-items:center;flex:0 0 118px;width:118px;height:118px;max-width:100%;margin:0 auto 8px;border:0!important;border-radius:0;background:none!important;box-shadow:none!important}
#boxPicker .box-icon canvas{display:block;width:128px!important;height:128px!important;max-width:100%;object-fit:contain;image-rendering:pixelated;filter:none;transform:none;animation:none}
#boxPicker .box-card .box-name{min-height:24px;margin:0;padding:0;border:0;background:none;color:var(--sf-text,#eaecef);font:650 16px/24px system-ui,sans-serif;letter-spacing:0}
#boxPicker .box-card .box-cost{min-height:22px;margin:3px 0 0;color:var(--box-tier);font:500 12px/22px system-ui,sans-serif;font-variant-numeric:tabular-nums}
#boxPicker .box-card .box-bias{max-width:100%;min-height:36px;margin:10px 0 0;color:var(--sf-muted,#aeb8c4);font:11px/18px system-ui,sans-serif;text-align:center;text-wrap:balance}
#boxPicker .box-card:focus-visible{outline:2px solid var(--sf-primary,#fcd535);outline-offset:4px}
#boxPicker .box-card>.box-pity{left:auto;right:7px;top:7px;width:20px;height:20px;transform:none;filter:none}
#boxPicker .box-pity-icon{width:20px;height:20px;animation:none}
#boxPicker .box-pity .sr-only{width:.5px;height:.5px}
.home-layout #box .box-cinematic p{color:var(--sf-text,#eaecef);text-shadow:none}
.home-layout #box .box-skip{border-color:var(--sf-border,#343b46);background:#202730;color:var(--sf-muted,#aeb8c4)}
@media(max-width:600px){.home-layout #box #boxPicker{flex-basis:240px;gap:6px}.home-layout #box #boxPicker .box-card{height:240px;min-height:240px;padding:18px 4px 10px}.home-layout #box #boxPicker .box-icon{flex-basis:94px;width:94px;height:94px;margin-bottom:6px}.home-layout #box #boxPicker .box-icon canvas{width:94px!important;height:94px!important}#boxPicker .box-card .box-name{font-size:14px}#boxPicker .box-card .box-cost{font-size:10px}#boxPicker .box-card .box-bias{min-height:54px;margin-top:8px;font-size:10px;line-height:18px}}
@media(prefers-reduced-motion:reduce){#boxPicker .box-card{transition:none}}

/* Work state uses its own light beside the existing status, separate from affinity. */
.role-energy-state{display:flex;align-items:flex-start;gap:6px;text-align:left}
.role-work-light{display:inline-block;flex:0 0 7px;width:7px;height:7px;margin-top:4px;border-radius:50%;background:currentColor;color:#9aa393;box-shadow:0 0 0 2px rgba(110,123,99,.08)}
.role-work-light[data-state="working"]{color:#d3a416;animation:none}
.role-work-light[data-state="resting"]{color:#45a564;animation:none}
.role-work-light[data-state="empty"]{color:#d8544b;animation:none}
@keyframes role-work-breathe{0%,100%{opacity:.5;box-shadow:0 0 0 0 transparent}50%{opacity:1;box-shadow:0 0 5px 1px currentColor}}
@media(prefers-reduced-motion:reduce){.role-work-light{animation:none!important;opacity:1}}

/* Shared collection / plot cards: compact content with a common row baseline.
   The fallback reserves two status lines; subgrid also aligns longer translations.
   Empty trait tracks collapse, so cards without abilities gain no blank trait rows. */
:is(#collRow,.land-roster-grid) .coll-item:not(.coll-add){position:relative;padding-top:12px;padding-bottom:12px;justify-content:flex-start}
:is(#collRow,.land-roster-grid) .role-energy-label{flex-wrap:wrap;min-height:16px}
:is(#collRow,.land-roster-grid) .role-energy-state{min-height:30px;overflow-wrap:anywhere}
:is(#collRow,.land-roster-grid) .role-energy-state>span{min-width:0}
:is(#collRow,.land-roster-grid) .role-affinities{display:grid;grid-template-columns:minmax(0,1fr);justify-items:stretch;align-content:start}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity{min-height:31px;justify-content:center}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity.is-active{justify-content:flex-start}
:is(#collRow,.land-roster-grid) .role-special{box-sizing:border-box;min-height:31px;text-align:left;display:flex;align-items:center}
:is(#collRow,.land-roster-grid) .role-level{position:absolute;top:6px;right:6px;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:20px;box-sizing:border-box;margin:0;padding:2px 5px;border:1px solid #7baf82;border-radius:7px;background:#e0f0de;color:#245c32;font:700 11px/1 Arial,'Microsoft YaHei',sans-serif;white-space:nowrap;font-variant-numeric:tabular-nums;box-shadow:none}
:is(#collRow,.land-roster-grid) .role-level[data-level="2"]{background:#deecfb;border-color:#88afd9;color:#285c92}
:is(#collRow,.land-roster-grid) .role-level[data-level="3"]{background:#eee2fb;border-color:#b596d4;color:#67408b}
:is(#collRow,.land-roster-grid) .role-level[data-level="4"]{background:#fff0b2;border-color:#d7b44c;color:#755608}
:is(#collRow,.land-roster-grid) .role-level[data-level="5"]{background:#ffe1c4;border-color:#d9995d;color:#88420d}
:is(#collRow,.land-roster-grid) .role-level[data-level="6"]{background:#ffe1c4;border-color:#a66e17;color:#88420d;box-shadow:inset 0 0 0 2px #f3bf50}
:is(#collRow,.land-roster-grid) .role-card-avatar{margin-inline:0;justify-self:center}

:is(#collRow,.land-roster-grid) .role-affinities>.affinity,:is(#collRow,.land-roster-grid) .role-special{padding:4px 6px}
@supports(grid-template-rows:subgrid){
 #collRow,.land-roster-grid{row-gap:0}
 :is(#collRow,.land-roster-grid)>.coll-item{grid-row:span 14;margin-bottom:14px}
 :is(#collRow,.land-roster-grid)>.coll-item:not(.coll-add){display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;row-gap:0;align-items:stretch;justify-items:center}
 :is(#collRow,.land-roster-grid) .role-card-avatar{grid-row:1;align-self:start}
 :is(#collRow,.land-roster-grid) .role-card-identity{grid-row:2;margin-top:3px}
 :is(#collRow,.land-roster-grid) .cts{grid-row:3;margin-top:3px}
 :is(#collRow,.land-roster-grid) .role-energy{display:grid;grid-row:4/span 4;grid-template-rows:subgrid;row-gap:0;margin:8px 0 2px}
 :is(#collRow,.land-roster-grid) .role-energy-label{grid-row:1;align-self:start}
 :is(#collRow,.land-roster-grid) .role-energy-track{grid-row:2}
 :is(#collRow,.land-roster-grid) .role-energy-state{grid-row:3}
 :is(#collRow,.land-roster-grid) .role-gathering-rate{grid-row:4}
 :is(#collRow,.land-roster-grid) .role-affinities{grid-row:8/span 7;grid-template-rows:subgrid;row-gap:0;margin:4px 0 0}
 :is(#collRow,.land-roster-grid) .role-affinities>.affinity,:is(#collRow,.land-roster-grid) .role-special{min-height:0;margin-bottom:4px}
 :is(#collRow,.land-roster-grid) .affinity.good{grid-row:1}
 :is(#collRow,.land-roster-grid) .affinity.poor{grid-row:2}
 :is(#collRow,.land-roster-grid) [data-trait-slot="0"]{grid-row:4}
 :is(#collRow,.land-roster-grid) [data-trait-slot="1"]{grid-row:5}
 :is(#collRow,.land-roster-grid) [data-trait-slot="2"]{grid-row:6}
 :is(#collRow,.land-roster-grid) [data-trait-slot="3"]{grid-row:7}
 @media(max-width:600px){:is(#collRow,.land-roster-grid)>.coll-item{margin-bottom:10px}}
}

#mint.is-minted>.mint-complete{position:relative;isolation:isolate;overflow:hidden;display:block;padding:34px;border:1px solid #d6e0cf;border-radius:18px;background:#fbfcf8;box-shadow:0 12px 32px #263d2510}
#mint.is-minted>.mint-complete::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(251,252,248,.98) 0%,rgba(251,252,248,.94) 42%,rgba(251,252,248,.55) 73%,rgba(251,252,248,.2) 100%),url("assets/brand/shelflings-mascot-transparent.png") right center/auto 90% no-repeat}
#mint.is-minted>.mint-complete::after{content:"";position:absolute;inset:0;z-index:0;background:rgba(255,255,255,.2);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);pointer-events:none}
#mint.is-minted>.mint-complete>*{position:relative;z-index:1}
.mint-complete-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:22px;border-radius:12px;background:#e3efdc;color:#3c8652;image-rendering:pixelated}
.mint-complete-mark i{display:block;width:5px;height:5px;background:#2f8650;box-shadow:5px 5px #2f8650,10px 10px #2f8650,15px 5px #2f8650,20px 0 #2f8650;transform:translate(-9px,-3px)}
.mint-complete-kicker{color:#6b806a;font:600 11px/1.5 Arial,'Microsoft YaHei',sans-serif;letter-spacing:.1em}
.mint-complete h2{font:700 28px/1.4 Arial,'Microsoft YaHei',sans-serif;color:#203d2c;margin:7px 0 12px}
.mint-complete-status{position:absolute!important;top:28px;right:30px;display:inline-flex;align-items:center;justify-content:flex-end;box-sizing:border-box;max-width:calc(100% - 118px);min-height:32px;margin:0;padding:7px 12px;border:1px solid #78aa69;border-radius:8px;background:#dff2d2;color:#245a33;box-shadow:0 3px 0 #bdd7ae;font:700 12px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.045em;text-align:right;white-space:nowrap}
.mint-complete p{font:14px/1.9 Arial,'Microsoft YaHei',sans-serif;color:#64745e;margin:0}
.mint-complete-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.mint-complete-actions .btn{padding:11px 18px;min-height:44px;font-size:13px;background:#2e5039;border:1px solid #2e5039;color:#fff;text-decoration:none}.mint-complete-actions .btn.ghost{color:#38583e;border-color:#c9d6c1;background:transparent}
.mint-complete-skeleton{display:grid;grid-template-columns:18px 1fr;gap:5px 12px;align-items:center;min-height:72px;color:#687461}.mint-complete-skeleton i{grid-row:1/3;width:18px;height:18px;border:2px solid #cad5bf;border-top-color:#4b7b4d;border-radius:50%;animation:mint-skeleton-spin .8s linear infinite}.mint-complete-skeleton strong{font-size:14px;color:#2f4735}.mint-complete-skeleton span{font-size:12px}@keyframes mint-skeleton-spin{to{transform:rotate(360deg)}}
.collection-heading-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.collection-shortcuts{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.collection-shortcuts .btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;text-decoration:none;font-size:13px}
@media(max-width:700px){#mint.is-minted>.mint-complete{padding:24px}.mint-complete-status{top:18px;right:18px;max-width:calc(100% - 96px);min-height:30px;padding:6px 9px;font-size:11px;white-space:normal}.mint-complete h2{font-size:24px}.mint-complete p{font-size:13px}.mint-complete-actions{margin-top:20px}.collection-heading-row{align-items:flex-start;flex-direction:column}.collection-shortcuts{width:100%;justify-content:flex-start}.collection-shortcuts .btn{flex:1;justify-content:center}}
@media(prefers-reduced-motion:reduce){.mint-complete-skeleton i{animation:none}}

/* Food selection, current recovery and saved portions share one clear surface. */
dialog.production-dialog[data-kind="supply"]{width:min(680px,calc(100vw - 28px))!important;background:#fffef8;color:#253c2d;border:1px solid #dce5d6;padding:26px!important}
[data-kind="supply"] h2{font-size:24px;letter-spacing:-.5px;margin-bottom:12px}
.supply-hero{display:flex;align-items:center;gap:16px;background:#edf3e6;border:1px solid #dce7d3;padding:18px;border-radius:18px}
.supply-portrait{width:72px;height:80px;border-radius:14px;flex:none;background:#fffcf1;display:grid;place-items:center;border:1px solid #dfe5cf}
.supply-portrait canvas{width:60px;height:60px;image-rendering:pixelated}.supply-character{flex:1;min-width:0}
.supply-eyebrow{display:block;font:10px/1.5 Arial,sans-serif;letter-spacing:.6px;color:#74816b;margin-bottom:5px}
.supply-character>strong{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;font-size:17px}.supply-character>strong small{font:10px/1.5 monospace;color:#79836d}
.supply-energy-line{position:relative;display:flex;justify-content:space-between;gap:8px;margin:13px 0 6px;font-size:11px;color:#64705c}.supply-energy-line b{color:#294a31;font-variant-numeric:tabular-nums}
.supply-energy-gain{position:absolute;right:-7px;bottom:15px;z-index:1;padding:3px 6px;border:1px solid #638b52;border-radius:2px;background:#f7ffe9;color:#376d3d;box-shadow:2px 2px 0 #b9cf9d;font:700 10px/1 monospace;letter-spacing:.2px;pointer-events:none;opacity:0;transform:translateY(4px)}.supply-energy-gain.is-visible{animation:supply-energy-gain-pop .9s ease-out both}
.supply-energy-track{height:7px;background:#dce5d0;border-radius:20px;overflow:hidden}.supply-energy-track i{display:block;height:100%;background:linear-gradient(90deg,#78aa68,#b5ce79);border-radius:inherit;will-change:width}
@keyframes supply-energy-gain-pop{0%{opacity:0;transform:translateY(5px) scale(.9)}14%,68%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-7px) scale(1)}}
@media(prefers-reduced-motion:reduce){.supply-energy-gain.is-visible{animation:none;opacity:1;transform:none}.supply-energy-track i{will-change:auto}}
[data-kind="supply"] .supply-recovery{font-size:11px;line-height:1.6;color:#778169;margin:8px 2px 12px}
.supply-section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}.supply-section-heading h3{display:flex;align-items:center;gap:7px;margin:0!important;font-size:14px!important;color:#314a37}.supply-section-heading>span{font-size:10px;color:#87917a;line-height:1.5;text-align:right}
[data-kind="supply"] .supply-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 12px;gap:12px}
[data-kind="supply"] .supply-grid button{position:relative;min-width:0;border:1px solid #dce3d4;background:#fafbf5;padding:14px 8px 13px;border-radius:16px;gap:5px;transition:background .15s,border-color .15s}
[data-kind="supply"] .supply-grid button:hover{background:#f2f6e9;border-color:#9bb783}
[data-kind="supply"] .supply-grid button.selected{border:2px solid #64884c;padding:13px 7px 12px;background:#eef4dd;box-shadow:0 3px 12px #415a3510}
.supply-icon{display:block;width:64px;height:64px;flex:none}.supply-grid .supply-icon{margin-bottom:4px}
[data-kind="supply"] .supply-grid strong{font-size:14px;font-weight:700;color:#31472f;line-height:1.4}
[data-kind="supply"] .supply-grid .supply-portion{font:12px/1.4 Arial,sans-serif;color:#788367}
[data-kind="supply"] .supply-grid small{margin-top:6px;font:700 16px/1.4 monospace;color:#355c3b}
[data-kind="supply"] .supply-grid .supply-daily-limit{display:block;min-height:16px;font:10px/1.6 Arial,sans-serif;color:#75816a;font-variant-numeric:tabular-nums}
[data-kind="supply"] .supply-quantity{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 12px;padding:9px 10px 9px 13px;border:1px solid #e0e6d8;border-radius:12px;background:#f7f9f1;color:#5d6b56;font-size:12px}
[data-kind="supply"] .supply-quantity-stepper{display:grid;grid-template-columns:44px 54px 44px;align-items:stretch;overflow:hidden;border:1px solid #afc1a4;border-radius:11px;background:#fffef8;box-shadow:0 1px 2px #294a310a;transition:border-color .15s,box-shadow .15s}
[data-kind="supply"] .supply-quantity-stepper:focus-within{border-color:#64884c;box-shadow:0 0 0 3px #64884c24}
[data-kind="supply"] .supply-quantity button{display:grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0!important;border:0;border-radius:0;background:transparent;color:#355136;font-size:19px;line-height:1;transition:background .15s,color .15s}
[data-kind="supply"] .supply-quantity button:hover:not(:disabled){background:#edf4e6;color:#24492e}
[data-kind="supply"] .supply-quantity button:active:not(:disabled){background:#e3eed9}
[data-kind="supply"] .supply-quantity :is(button,input):focus-visible{outline:0;box-shadow:none}
[data-kind="supply"] .supply-quantity input{box-sizing:border-box;width:54px;min-width:54px;height:44px;min-height:44px;padding:0 4px;border:0;border-right:1px solid #d7e0d0;border-left:1px solid #d7e0d0;border-radius:0;outline:0;background:#f7faef;text-align:center;font:700 14px ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums;color:#294a31;appearance:textfield;-moz-appearance:textfield}
[data-kind="supply"] .supply-quantity input::-webkit-inner-spin-button,[data-kind="supply"] .supply-quantity input::-webkit-outer-spin-button{margin:0;appearance:none;-webkit-appearance:none}

/* Plot replacement presents the incoming plot and target slot as one reviewed move. */
dialog.production-dialog[data-kind="land-replace"]{width:min(690px,calc(100vw - 28px))!important;padding:26px!important}
[data-kind="land-replace"] h2{margin:0 0 8px;font-size:24px;letter-spacing:-.4px}
.land-replace-intro{margin:0 0 18px;color:#6b7765;font-size:12px;line-height:1.65}
.land-replace-grid{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);align-items:stretch;gap:10px}
.land-replace-field{display:flex;min-width:0;flex-direction:column;gap:11px;padding:15px;border:1px solid #dbe4d4;border-radius:16px;background:linear-gradient(145deg,#fbfcf7,#f2f6eb);box-sizing:border-box}
.land-replace-label{display:flex;align-items:center;gap:9px;color:#304b37}.land-replace-label>b{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#dfead6;color:#3f6c45;font:700 12px/1 ui-monospace,SFMono-Regular,Consolas,monospace}.land-replace-label>span{display:flex;min-width:0;flex-direction:column;gap:2px}.land-replace-label strong{font-size:13px}.land-replace-label small{color:#85907d;font-size:10px;font-weight:400}
.land-replace-picker{position:relative;min-width:0}.land-replace-native-select{display:none!important}
.land-replace-trigger{display:grid!important;grid-template-columns:46px minmax(0,1fr) 18px;align-items:center;gap:9px;box-sizing:border-box;width:100%;min-width:0;min-height:58px!important;padding:5px 8px!important;border:1px solid #b9c9af!important;border-radius:12px!important;background:#fffef8!important;color:#294733!important;text-align:left;box-shadow:none}
.land-replace-trigger:focus-visible,.land-replace-trigger[aria-expanded="true"]{outline:0;border-color:#64884c!important;box-shadow:0 0 0 3px #64884c24}
.land-replace-trigger:disabled{opacity:.55;cursor:default}.land-replace-trigger-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.land-replace-trigger-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.land-replace-trigger-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#788474;font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}
.land-replace-icon{display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:10px;background:#f1f5e9;box-sizing:border-box}.land-replace-icon .land-biome-icon{width:40px;height:40px;image-rendering:pixelated}.land-replace-icon-fallback{font:700 23px/1 monospace;color:#55745b}
.land-replace-chevron{color:#6b7e67;font:700 17px/1 monospace;transition:transform .15s}.land-replace-trigger[aria-expanded="true"] .land-replace-chevron{transform:rotate(180deg)}
.land-replace-options{position:absolute;z-index:30;top:calc(100% + 6px);right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;max-height:min(224px,38dvh);overflow:auto;overscroll-behavior:contain;padding:6px;border:1px solid #b9c9af;border-radius:12px;outline:0;background:#fffdf7;box-shadow:0 14px 28px #263d2524;scrollbar-gutter:stable}
.land-replace-options[hidden]{display:none}.land-replace-option{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:8px;box-sizing:border-box;min-width:0;min-height:52px;padding:5px 7px;border:1px solid transparent;border-radius:9px;color:#304834;cursor:pointer}.land-replace-option+.land-replace-option{margin-top:3px}.land-replace-option:hover,.land-replace-option.is-active{background:#f2f7eb}.land-replace-option[aria-selected="true"]{border-color:#75a364;background:#eaf4e4;color:#21482d}.land-replace-option-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#f0f4e9}.land-replace-option-icon .land-biome-icon{width:36px;height:36px}.land-replace-option-copy{display:flex;min-width:0;flex-direction:column;gap:2px}.land-replace-option-copy strong,.land-replace-option-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.land-replace-option-copy strong{font-size:12px}.land-replace-option-copy small{color:#7b8776;font:9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}.land-replace-option-check{visibility:hidden;color:#3f7b48;font-size:13px}.land-replace-option[aria-selected="true"] .land-replace-option-check{visibility:visible}
.land-replace-meta{display:block;min-height:17px;color:#6e7d68;font:10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}
.land-replace-arrow{display:grid;place-items:center;align-self:center;justify-self:center;box-sizing:border-box;width:34px;height:34px;border:1px solid #d8e2d0;border-radius:50%;background:#f8faf3}
.land-replace-arrow-icon{display:block;width:24px;height:24px;image-rendering:pixelated}
.land-replace-notice{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px;margin:14px 0;padding:12px 14px;border:1px solid #dfe5d5;border-radius:12px;background:#f5f7ef;color:#667360}.land-replace-notice>span{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#dfead6;color:#426a45;font:700 12px/1 Georgia,serif}.land-replace-notice p{margin:0;font-size:11px;line-height:1.7}
[data-kind="land-replace"] #replaceLandConfirm{display:block;width:100%;min-height:50px;margin:0;border-color:#315b3c;border-radius:12px;background:#315b3c;color:#f8ffef;font-size:14px;font-weight:700}
[data-kind="land-replace"] #replaceLandConfirm:hover:not(:disabled){background:#416d48;border-color:#416d48}
[data-kind="land-replace"] #replaceLandConfirm:focus-visible{outline:3px solid #64884c55;outline-offset:3px}
@media(max-width:580px){dialog.production-dialog[data-kind="land-replace"]{padding:20px!important}.land-replace-grid{grid-template-columns:minmax(0,1fr);gap:8px}.land-replace-field{padding:13px}.land-replace-arrow{width:30px;height:30px;transform:rotate(90deg);justify-self:center}.land-replace-arrow-icon{width:22px;height:22px}.land-replace-options{max-height:min(210px,32dvh)}.land-replace-notice{margin:12px 0}}
.supply-check{position:absolute;right:9px;top:9px;font:700 11px/17px Arial,sans-serif;width:17px;height:17px;border-radius:50%;color:transparent;background:transparent}
.selected .supply-check{color:#fff;background:#62854b}
.supply-bag{border-top:1px solid #e3e8db;padding-top:8px;margin:6px 0 0}.supply-bag .supply-section-heading{margin-bottom:6px}.supply-section-heading .supply-icon{width:22px;height:22px}
[data-kind="supply"] .supply-bag-empty{display:flex;align-items:center;box-sizing:border-box;min-height:57px;font-size:11px;line-height:1.5;margin:0;padding:7px 11px;background:#f5f6ee;border-radius:10px;color:#869078}
.supply-inventory{display:grid;align-content:start;min-height:57px;gap:6px}.supply-inventory-item{display:flex;align-items:center;box-sizing:border-box;min-height:57px;gap:10px;background:#f4f6eb;border:1px solid #e5e9db;border-radius:12px;padding:7px 10px}
.supply-inventory-item .supply-icon{width:32px;height:32px}.supply-inventory-item>span{flex:1}.supply-inventory-item strong{font-size:12px;display:block}.supply-inventory-item small{font:11px/1.7 Arial,sans-serif;color:#7d866f}
.supply-inventory-count{display:inline-block;margin-left:5px;color:#357048;font:700 12px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums}
.supply-inventory-item button{font-size:12px!important;min-height:36px!important;padding:6px 15px!important;background:#fffef8!important}
[data-kind="supply"] [data-supply-use-note]{min-height:15px;margin:5px 1px 0;font-size:10px;line-height:1.5}
.supply-checkout{position:sticky;bottom:-26px;background:#fffef8;margin:12px -2px -4px;padding:10px 2px 4px;border-top:1px solid #e1e7d8;z-index:2}
.supply-summary{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:11px;color:#7c876f}.supply-summary b{color:#355b36;font-size:15px;font-variant-numeric:tabular-nums;margin-left:5px}
[data-kind="supply"] .supply-purchase{display:block;width:100%;background:#31533a;border-color:#31533a;color:#faffed;font-size:14px;font-weight:700;min-height:46px;border-radius:12px;letter-spacing:.2px}
[data-kind="supply"] .supply-purchase:hover:not(:disabled){background:#436946}.supply-purchase:disabled{background:#e6ebde!important;color:#89917d!important;border-color:#dfe5d6!important;opacity:1!important}
[data-kind="supply"] [data-supply-blocker]{font-size:10px;line-height:1.5;text-align:center;margin:9px 0 0;color:#87907a;min-height:15px}
[data-kind="supply"] .production-dialog-status:empty{display:none}
#creatureWorkActions [data-role-action="supply"]{display:flex;align-items:center;justify-content:center;gap:8px;background:#e9f0dc;border-color:#bacaa8;color:#355136}
#creatureWorkActions [data-role-action="supply"] .supply-icon{width:24px;height:24px}
@media(max-width:480px){dialog.production-dialog[data-kind="supply"]{padding:20px!important}.supply-hero{padding:12px;gap:12px}.supply-portrait{width:56px;height:64px}.supply-portrait canvas{width:48px;height:48px}.supply-eyebrow{font-size:9px;letter-spacing:0}.supply-character>strong{font-size:15px}.supply-energy-line{margin-top:8px}.supply-section-heading>span{max-width:48%;font-size:9px}.supply-grid .supply-icon{width:48px;height:48px}[data-kind="supply"] .supply-grid{gap:7px}[data-kind="supply"] .supply-grid strong{font-size:11px}[data-kind="supply"] .supply-grid .supply-portion{font-size:11px}[data-kind="supply"] .supply-grid small{font-size:14px}.supply-checkout{bottom:-20px}.supply-summary{font-size:10px}}
@media(prefers-reduced-motion:reduce){[data-kind="supply"] .supply-grid button{transition:none}}

/* Character and land fusion use the same workshop language and shared rules. */
.fusion-workbenches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fusion-workbenches .fusion-workbench{grid-template-columns:150px minmax(0,1fr);gap:20px;padding:22px;min-height:220px;box-sizing:border-box}.fusion-workbench h3{margin:0 0 8px;font-size:18px;color:var(--txt,#263528)}.fusion-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.fusion-card-heading>span{padding:4px 7px;border:1px solid #dfc16b;border-radius:6px;background:#fff6d8;color:#785f19;font:700 8px/1.1 Arial,'Microsoft YaHei',sans-serif;letter-spacing:.04em;white-space:nowrap}.fusion-slot-preview.land span{font-size:25px;color:#58764c}.land-fusion-workbench{background:linear-gradient(145deg,#fbfcf6,#f1f5e9)}
dialog.production-dialog[data-kind="land-fusion"]{width:min(900px,calc(100vw - 32px))!important;max-width:900px!important;padding:28px!important}.land-fusion-intro{max-width:760px;margin:0 0 20px}.land-fusion-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:22px;align-items:start}.land-fusion-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:420px;overflow:auto;padding:3px}.land-fusion-choice{position:relative;display:flex;align-items:center;gap:12px;min-height:82px;padding:13px;border:1px solid #dbe0d0;border-radius:13px;background:#fffdf7;cursor:pointer;box-sizing:border-box}.land-fusion-choice:has(input:checked){background:#f4f3de;border-color:var(--gold,#a57c16);box-shadow:inset 0 0 0 1px var(--gold,#a57c16)}.land-fusion-choice.unavailable{opacity:.45;cursor:not-allowed}.land-fusion-choice input{position:absolute;right:10px;top:10px;margin:0}.land-fusion-glyph{display:grid;place-items:center;width:48px;height:48px;border-radius:11px;background:#edf3e6;font-size:24px;flex:none}.land-fusion-choice strong,.land-fusion-choice small{display:block;padding-right:20px}.land-fusion-choice strong{font-size:13px;margin-bottom:6px}.land-fusion-choice small{font:10px/1.5 Arial,'Microsoft YaHei',sans-serif;color:var(--dim,#687461)}.land-fusion-summary{padding:18px;border:1px solid #dbe0d0;border-radius:16px;background:#eff2e8}.land-fusion-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;margin:12px 0 16px;padding:16px;border:1px solid #d9dfcc;border-radius:13px;background:#fffdf7;text-align:center;box-sizing:border-box}.land-fusion-result-glyph{display:grid;place-items:center;width:58px;height:58px;margin-bottom:10px;border-radius:14px;background:#e7eed9;color:#4f7245;font-size:29px}.land-fusion-preview strong{font-size:17px}.land-fusion-preview>span{margin-top:8px;color:#477242;font-size:12px}.land-fusion-preview>small{margin-top:7px;color:var(--dim,#687461);font-size:10px}.land-fusion-summary select{width:100%;margin-top:7px;background:#fffdf7}.land-fusion-summary #landFusionStatus{min-height:52px;margin:13px 0;font-size:11px;line-height:1.6}.land-fusion-summary #landFusionConfirm{display:block;width:100%;background:#967108;color:#fffaf0;border-color:#967108;font-weight:700}.land-fusion-summary #landFusionConfirm:disabled{background:#dce1d3;color:#7a8471;border-color:#dce1d3;opacity:1;box-shadow:none}
.land-fusion-retain{display:grid;gap:7px;min-width:0;margin:0}.land-fusion-retain>.fusion-main-label{margin:0;color:#42533e;font-size:12px;font-weight:700;line-height:1.45}.land-fusion-retain-picker{position:relative;min-width:0}.land-fusion-main-native{display:none!important}
.production-dialog .land-fusion-retain-trigger{display:grid;grid-template-columns:46px minmax(0,1fr) 18px;align-items:center;gap:9px;box-sizing:border-box;width:100%;min-width:0;min-height:58px;padding:5px 8px;border:1px solid #b9c9af;border-radius:12px;background:#fffef8;color:#294733;text-align:left;box-shadow:none}
.land-fusion-retain-picker:focus-within .land-fusion-retain-trigger,.production-dialog .land-fusion-retain-trigger[aria-expanded="true"]{outline:0;border-color:#64884c;box-shadow:0 0 0 3px #64884c24}.production-dialog .land-fusion-retain-trigger:disabled{opacity:.58;cursor:default}
.land-fusion-retain-icon{display:grid;place-items:center;box-sizing:border-box;width:46px;height:46px;border-radius:10px;background:#f1f5e9}.land-fusion-retain-icon .land-biome-icon{width:40px;height:40px;image-rendering:pixelated}.land-fusion-icon-fallback{color:#55745b;font:700 23px/1 monospace}.land-fusion-retain-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.land-fusion-retain-copy strong,.land-fusion-retain-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.land-fusion-retain-copy strong{font-size:12px}.land-fusion-retain-copy small{color:#788474;font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}.land-fusion-retain-chevron{color:#6b7e67;font:700 17px/1 monospace;transition:transform .15s}.land-fusion-retain-trigger[aria-expanded="true"] .land-fusion-retain-chevron{transform:rotate(180deg)}
.land-fusion-retain-options{position:absolute;z-index:40;top:calc(100% + 6px);right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;max-height:min(224px,32dvh);overflow:auto;overscroll-behavior:contain;padding:6px;border:1px solid #b9c9af;border-radius:12px;outline:0;background:#fffdf7;box-shadow:0 14px 28px #263d2524;scrollbar-gutter:stable}.land-fusion-retain-options[hidden]{display:none}.land-fusion-retain-option{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:8px;box-sizing:border-box;min-width:0;min-height:52px;padding:5px 7px;border:1px solid transparent;border-radius:9px;color:#304834;cursor:pointer}.land-fusion-retain-option+.land-fusion-retain-option{margin-top:3px}.land-fusion-retain-option:hover,.land-fusion-retain-option.is-active{background:#f2f7eb}.land-fusion-retain-option[aria-selected="true"]{border-color:#75a364;background:#eaf4e4;color:#21482d}.land-fusion-retain-option-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#f0f4e9}.land-fusion-retain-option-icon .land-biome-icon{width:36px;height:36px;image-rendering:pixelated}.land-fusion-retain-option-copy{display:flex;min-width:0;flex-direction:column;gap:2px}.land-fusion-retain-option-copy strong,.land-fusion-retain-option-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.land-fusion-retain-option-copy strong{font-size:12px}.land-fusion-retain-option-copy small{color:#7b8776;font:9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}.land-fusion-retain-check{visibility:hidden;color:#3f7b48;font-size:13px}.land-fusion-retain-option[aria-selected="true"] .land-fusion-retain-check{visibility:visible}
@media(max-width:850px){.fusion-workbenches{grid-template-columns:1fr}.fusion-workbenches .fusion-workbench{min-height:0}.land-fusion-layout{grid-template-columns:1fr}.land-fusion-choices{max-height:260px}.land-fusion-summary{padding:15px}}
@media(max-width:600px){.fusion-workbenches .fusion-workbench{grid-template-columns:1fr}.land-fusion-choices{grid-template-columns:1fr}dialog.production-dialog[data-kind="land-fusion"]{padding:20px!important;width:calc(100vw - 20px)!important}.land-fusion-summary #landFusionConfirm{position:sticky;bottom:0}.land-fusion-retain-options{max-height:min(210px,30dvh)}}


/* Fusion route: compact pixel-alchemy entry cards. No interaction selectors changed. */
html[data-app-page="fusion"] .fusion-workbenches{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

html[data-app-page="fusion"] .fusion-workbenches .fusion-workbench{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:112px minmax(0,1fr);
  gap:20px;
  min-height:298px;
  padding:20px;
  border:1px solid #cad8cc;
  border-radius:20px;
  background:linear-gradient(155deg,#fffefb 0%,#fafcf6 100%);
  box-shadow:0 14px 36px rgba(36,79,51,.08);
  overflow:hidden;
  box-sizing:border-box;
}

html[data-app-page="fusion"] .fusion-workbench::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,#2f8f5f 0 68%,#cbf449 68%);
}

html[data-app-page="fusion"] .fusion-workbench>div:last-child{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
}

html[data-app-page="fusion"] .fusion-workbench h3{
  margin:0 0 7px;
  color:var(--txt,#263528);
  font:20px/1.5 HashlingsPixel,sans-serif;
}

html[data-app-page="fusion"] .fusion-workbench p{
  margin:0 0 16px;
  color:var(--dim,#617064);
  font-size:16px;
  line-height:1.65;
}

html[data-app-page="fusion"] .fusion-workbench .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:auto;
  padding:10px 18px;
  border:1px solid #173e32;
  border-radius:10px;
  background:#173e32;
  color:#f7fff4;
  font-size:14px;
  font-weight:700;
}

html[data-app-page="fusion"] .fusion-workbench .fusion-slot-preview{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:0;
  min-height:112px;
  padding:18px 14px 13px;
  border:1px solid #315f4d;
  border-radius:15px;
  background-color:#173e32;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:12px 12px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  overflow:hidden;
}

html[data-app-page="fusion"] .fusion-slot-preview::after{
  content:"2 × SAME LEVEL";
  position:absolute;
  top:8px;
  left:12px;
  color:#a8c6b6;
  font:700 9px/1 Arial,'Microsoft YaHei',sans-serif;
  letter-spacing:.1em;
}

html[lang^="zh"][data-app-page="fusion"] .fusion-slot-preview::after{content:"2 × 同级角色"}
html[lang^="ja"][data-app-page="fusion"] .fusion-slot-preview::after{content:"同レベル × 2"}

html[data-app-page="fusion"] .fusion-slot-preview span{
  position:relative;
  display:grid;
  flex:0 0 42px;
  place-items:center;
  width:42px;
  height:52px;
  border:1px solid #88b097;
  border-radius:9px;
  background:linear-gradient(145deg,#eff8e9,#bfd9bb);
  color:#214a36;
  font:700 17px/1 HashlingsPixel,monospace;
  box-shadow:inset 0 -6px 0 rgba(47,143,95,.12),0 5px 12px rgba(2,22,14,.16);
}

html[data-app-page="fusion"] .fusion-slot-preview span:not(.fusion-result)::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:7px;
  width:12px;
  height:3px;
  background:#57966d;
  box-shadow:-6px -4px 0 -1px #57966d,6px -4px 0 -1px #57966d;
  transform:translateX(-50%);
  opacity:.8;
}

html[data-app-page="fusion"] .fusion-slot-preview i{
  flex:0 0 auto;
  color:#d6e8dc;
  font:700 14px/1 HashlingsPixel,monospace;
}

html[data-app-page="fusion"] .fusion-slot-preview .fusion-result{
  flex-basis:56px;
  width:56px;
  height:62px;
  border-color:#dbf57e;
  background:linear-gradient(145deg,#dcff73,#a9da39);
  color:#1d472f;
  font-size:0;
  box-shadow:inset 0 -7px 0 rgba(69,115,28,.13),0 0 0 3px rgba(203,244,73,.09),0 7px 18px rgba(1,19,11,.25);
}

html[data-app-page="fusion"] .fusion-result::before{
  content:"LV";
  position:absolute;
  top:12px;
  font:700 9px/1 Arial,sans-serif;
  letter-spacing:.08em;
}

html[data-app-page="fusion"] .fusion-result::after{
  content:"+1";
  position:absolute;
  top:27px;
  font:700 18px/1 HashlingsPixel,monospace;
}

html[data-app-page="fusion"] .fusion-card-heading{
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:7px;
}

html[data-app-page="fusion"] .fusion-card-heading h3{margin:0}

html[data-app-page="fusion"] .fusion-card-heading>span{
  padding:5px 8px;
  border:1px solid #d8bc67;
  border-radius:7px;
  background:#fff6d8;
  color:#715719;
  font:700 12px/1 Arial,'Microsoft YaHei',sans-serif;
  letter-spacing:.04em;
  white-space:nowrap;
}

html[data-app-page="fusion"] .land-fusion-workbench{
  background:linear-gradient(155deg,#fffefb 0%,#f4f8ef 100%);
}

html[data-app-page="fusion"] .land-fusion-workbench::before{
  background:linear-gradient(90deg,#7f9d51 0 68%,#d6b951 68%);
}

html[data-app-page="fusion"] .fusion-slot-preview.land{
  border-color:#b9c9ae;
  background-color:#eaf1e5;
  background-image:
    linear-gradient(rgba(65,95,70,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(65,95,70,.055) 1px,transparent 1px);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.8);
}

html[data-app-page="fusion"] .fusion-slot-preview.land::after{
  content:"2 × SAME LEVEL";
  color:#6d826c;
}

html[lang^="zh"][data-app-page="fusion"] .fusion-slot-preview.land::after{content:"2 × 同级地块"}
html[lang^="ja"][data-app-page="fusion"] .fusion-slot-preview.land::after{content:"同レベル × 2"}

html[data-app-page="fusion"] .fusion-slot-preview.land span{
  flex-basis:58px;
  width:58px;
  height:62px;
  border-color:#9fb597;
  background:linear-gradient(145deg,#fffef7,#dbe8d4);
  color:#4e714d;
  font-size:27px;
  box-shadow:inset 0 -7px 0 rgba(75,111,64,.08),0 5px 12px rgba(31,65,38,.1);
}

html[data-app-page="fusion"] .fusion-slot-preview.land i{color:#6e806e}

html[data-app-page="fusion"] .fusion-slot-preview.land .fusion-result{
  border-color:#b69a42;
  background:linear-gradient(145deg,#ffefaa,#dcc264);
  color:#56430f;
  font-size:0;
  box-shadow:inset 0 -7px 0 rgba(122,93,22,.1),0 0 0 3px rgba(182,154,66,.09),0 7px 18px rgba(31,65,38,.14);
}

html[data-app-page="fusion"] .land-fusion-workbench .btn{
  border-color:#8b9e83;
  background:#fffef9;
  color:#38543c;
}

html[data-app-page="fusion"] .land-fusion-workbench .btn:hover{
  border-color:#536f58;
  background:#f3f7ef;
}

@media(max-width:850px){
  html[data-app-page="fusion"] .fusion-workbenches{grid-template-columns:1fr}
  html[data-app-page="fusion"] .fusion-workbenches .fusion-workbench{min-height:282px}
}

@media(max-width:600px){
  html[data-app-page="fusion"] .fusion-workbenches{gap:14px}
  html[data-app-page="fusion"] .fusion-workbenches .fusion-workbench{
    grid-template-rows:100px minmax(0,1fr);
    min-height:278px;
    padding:16px;
    border-radius:17px;
  }
  html[data-app-page="fusion"] .fusion-workbench .fusion-slot-preview{
    min-height:100px;
    gap:4px;
    padding:19px 8px 10px;
  }
  html[data-app-page="fusion"] .fusion-slot-preview span{
    flex-basis:34px;
    width:34px;
    height:44px;
    border-radius:7px;
    font-size:14px;
  }
  html[data-app-page="fusion"] .fusion-slot-preview .fusion-result{
    flex-basis:46px;
    width:46px;
    height:52px;
  }
  html[data-app-page="fusion"] .fusion-result::before{top:9px}
  html[data-app-page="fusion"] .fusion-result::after{top:24px;font-size:15px}
  html[data-app-page="fusion"] .fusion-slot-preview i{font-size:11px}
  html[data-app-page="fusion"] .fusion-slot-preview.land span{
    flex-basis:52px;
    width:52px;
    height:54px;
    font-size:24px;
  }
  html[data-app-page="fusion"] .fusion-workbench h3{font-size:18px}
  html[data-app-page="fusion"] .fusion-workbench p{font-size:16px}
  html[data-app-page="fusion"] .fusion-workbench .btn{width:100%}
}

@media(prefers-reduced-motion:reduce){
  html[data-app-page="fusion"] .fusion-workbench,
  html[data-app-page="fusion"] .fusion-workbench .btn{transition:none}
}

/* Fusion keeps one frame through selection and results. */
dialog.production-dialog[data-kind="fusion"]{
  width:min(960px,calc(100vw - 32px))!important;max-width:960px!important;
  height:min(800px,calc(100dvh - 40px))!important;
}
dialog.production-dialog[data-kind="land-fusion"]{
  width:min(900px,calc(100vw - 32px))!important;max-width:900px!important;
  height:min(660px,calc(100dvh - 40px))!important;
}
dialog.production-dialog:is([data-kind="fusion"],[data-kind="land-fusion"])[open]{display:flex;flex-direction:column;overflow:hidden;gap:0}
dialog.production-dialog:is([data-kind="fusion"],[data-kind="land-fusion"])>h2,
dialog.production-dialog:is([data-kind="fusion"],[data-kind="land-fusion"])>p{flex:none}
dialog.production-dialog:is([data-kind="fusion"],[data-kind="land-fusion"])>.production-dialog-status:empty{display:none}
dialog.production-dialog:is([data-kind="fusion"],[data-kind="land-fusion"])>:is(.fusion-layout,.land-fusion-layout){flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable;align-content:start}
.land-fusion-layout>div,.fusion-library{min-width:0}
.land-fusion-preview{height:208px;min-height:208px;flex:none;overflow:auto}
.land-fusion-choice{height:92px;min-height:92px}
.land-fusion-choice>span:last-child{min-width:0}
.land-fusion-choice strong,.land-fusion-choice small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.land-fusion-summary #landFusionStatus{height:64px;min-height:64px;overflow:auto}
.fusion-summary .fusion-result-card{box-sizing:border-box;height:280px;overflow:auto}
.fusion-summary .fusion-result-empty{height:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
.fusion-summary #fusionTraits{height:112px;overflow:auto;scrollbar-gutter:stable}
.fusion-summary #fusionPreview{height:64px;min-height:64px;overflow:auto}
.fusion-summary .fusion-main-label,.land-fusion-summary .fusion-main-label{min-width:0}
.fusion-summary select,.land-fusion-summary select{min-width:0;max-width:100%;text-overflow:ellipsis}
.fusion-library #fusionChoices{align-items:start;grid-auto-rows:minmax(280px,auto)}
.fusion-library #fusionChoices .fusion-choice{box-sizing:border-box;height:280px;min-height:280px;overflow:auto}
dialog.production-dialog:is([data-kind="fusion"],[data-kind="land-fusion"]) :is(button,.fusion-choice,.land-fusion-choice){
  transform:none!important;scale:none;animation:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;
}
dialog.production-dialog .fusion-layout.fusion-animation-layout{grid-template-columns:196px minmax(0,1fr);grid-template-rows:minmax(400px,1fr) 56px;align-content:stretch;gap:18px}
.fusion-animation-layout::after{content:"";grid-column:1/-1;grid-row:2;height:56px;pointer-events:none}
.fusion-animation-layout .fusion-animation-materials{display:block;grid-column:1;grid-row:1}
.fusion-animation-layout .fusion-chamber{grid-column:2;grid-row:1;box-sizing:border-box;height:100%;min-height:0;overflow:auto}
.fusion-animation-layout .fusion-finish-actions{grid-column:1/-1;grid-row:2;position:static;z-index:1}
.fusion-chamber[data-phase="complete"] .fusion-reveal{animation:none}
@media(max-width:650px){
  dialog.production-dialog:is([data-kind="fusion"],[data-kind="land-fusion"]),
  #payModal:is([data-workflow="fusion"],[data-workflow="land-fusion"]) .payment-card{width:calc(100vw - 20px)!important;height:calc(100dvh - 24px)!important;max-height:calc(100dvh - 24px)!important;padding:20px!important}
  dialog.production-dialog .fusion-layout.fusion-animation-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:440px 156px 56px}
  .fusion-animation-layout .fusion-chamber{grid-column:1;grid-row:1}
  .fusion-animation-layout .fusion-animation-materials{display:grid;grid-column:1;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start}
  .fusion-animation-layout::after,.fusion-animation-layout .fusion-finish-actions{grid-column:1;grid-row:3}
  .fusion-library #fusionChoices{grid-auto-rows:minmax(280px,auto)}
  .fusion-summary #fusionConfirm,.land-fusion-summary #landFusionConfirm{position:static}
}

/* Long translated action labels occupy the same slot in every selection state. */
.fusion-summary #fusionConfirm,.land-fusion-summary #landFusionConfirm{height:66px;min-height:66px;box-sizing:border-box;white-space:normal;line-height:1.4}
#payModal:is([data-workflow="fusion"],[data-workflow="land-fusion"]){padding:0;overflow:hidden;align-items:center;justify-content:center}

@media(max-width:650px){.land-fusion-choices,.fusion-library #fusionChoices{max-height:none;overflow:visible}.land-fusion-preview{height:208px;min-height:208px}}






/* Fusion uses the same fixed frame for selection, working and result. */
dialog.production-dialog[data-kind="fusion"]{width:min(960px,calc(100vw - 32px))!important;max-width:960px!important;height:min(800px,calc(100dvh - 40px))!important;max-height:min(800px,calc(100dvh - 40px))!important;box-sizing:border-box}
dialog.production-dialog[data-kind="fusion"]{padding:28px!important;background:#fbfcf5}
dialog.production-dialog[data-kind="fusion"] #productionDialogTitle{font:22px/1.4 HashlingsPixel,Arial,sans-serif;margin:0 52px 16px 0;color:#273f2a}
dialog.production-dialog[data-kind="fusion"]>.fusion-intro{font-size:12px;line-height:1.65;margin:0 0 16px;max-width:none}
dialog.production-dialog[data-kind="fusion"]>.fusion-layout{gap:16px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:stretch;align-content:stretch}
.fusion-library{display:flex;flex-direction:column;min-height:0}.fusion-library-heading{font-size:13px;padding:0 2px 10px;flex:none}.fusion-library-heading span{font-size:11px}
.fusion-library #fusionChoices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));grid-auto-rows:minmax(280px,auto);gap:10px;min-height:0;max-height:none;overflow:auto;align-content:start;align-items:stretch;flex:1;padding:3px}
.fusion-library #fusionChoices .fusion-choice{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:minmax(62px,auto) auto auto;align-content:start;height:auto;min-height:280px;gap:8px;padding:12px;border-radius:11px!important;overflow:visible;background:#fffef8}
.fusion-library #fusionChoices .fusion-choice:has(input:checked){border-color:#7e9d35;background:#f0f7d9;box-shadow:inset 0 0 0 1px #7e9d35}
.fusion-library #fusionChoices .fusion-choice input{top:10px;right:10px;accent-color:#738f2f}
.fusion-library #fusionChoices .fusion-choice>.fusion-avatar{grid-column:1;grid-row:1;width:48px;height:48px;padding:2px;margin:0;background:#f0f3e8;align-self:center}
.fusion-library #fusionChoices .fusion-choice>span{grid-column:2;grid-row:1;padding-right:20px;align-self:center;min-width:0}.fusion-library #fusionChoices .fusion-choice>span>strong{font-size:12px;line-height:1.35;margin:0 0 4px}.fusion-library #fusionChoices .fusion-choice>span>small{font-size:10px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fusion-library #fusionChoices .fusion-choice>.role-energy{grid-column:1/-1;grid-row:2;align-self:start;min-width:0}.fusion-library #fusionChoices .fusion-choice .role-energy-label{font-size:10px;flex-wrap:wrap;row-gap:2px}.fusion-library #fusionChoices .fusion-choice .role-energy-state{font-size:10px;line-height:1.4;margin-top:4px;min-width:0;overflow-wrap:anywhere}.fusion-library #fusionChoices .fusion-choice .role-energy-state>span{min-width:0}.fusion-library #fusionChoices .fusion-choice .role-gathering-rate{flex-wrap:wrap;row-gap:2px;min-width:0}
.fusion-library #fusionChoices .fusion-choice>.role-affinities{grid-column:1/-1;grid-row:3;align-content:start;gap:4px;min-height:0}.fusion-library #fusionChoices .fusion-choice .role-affinities>:not(.role-level){font-size:10px;line-height:1.35;padding:3px 5px;white-space:normal;display:block;overflow-wrap:anywhere}
.fusion-selection-count{font-size:12px;margin:10px 2px 0;flex:none}
.fusion-summary{display:flex;flex-direction:column;gap:12px;height:100%;min-height:0;overflow:hidden;box-sizing:border-box;padding:14px;border-radius:12px;background:#f0f3e8}
.fusion-summary-heading{font:13px/1.4 HashlingsPixel,Arial,sans-serif;margin:0;flex:none}.fusion-summary-body{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable;padding-right:3px}.fusion-summary-body>*{flex-shrink:0}
.fusion-summary .fusion-selected-slots{gap:6px}.fusion-summary .fusion-selected-slot{height:64px;padding:6px 3px;gap:3px}.fusion-summary .fusion-selected-slot small{font-size:9px}
.fusion-summary .fusion-result-card{height:240px;min-height:240px;overflow:visible;padding:12px;margin:0}.fusion-result-identity{gap:10px}.fusion-result-identity canvas{width:48px;height:48px}.fusion-result-identity strong{font-size:13px}.fusion-result-stats{gap:10px;margin-top:12px;padding-top:10px}.fusion-result-stats dd{font-size:17px}.fusion-result-stats dt{font-size:10px}.production-dialog p.fusion-success-note{margin-top:10px}
.fusion-summary .fusion-main-label{margin:0;font-size:12px;gap:6px}.fusion-summary select{min-height:42px;font-size:12px}.fusion-summary #fusionTraits{height:auto;max-height:none;overflow:visible;scrollbar-gutter:auto;margin:0}.fusion-summary #fusionTraits .production-option{font-size:11px;line-height:1.5;margin:0 0 8px}.fusion-summary #fusionPreview{height:48px;min-height:48px;font-size:11px;line-height:1.5;margin:0}
.production-dialog .fusion-summary #fusionConfirm,.production-dialog .fusion-return{display:flex;align-items:center;justify-content:center;width:100%;height:48px;min-height:48px;flex:none;margin:0;padding:10px 14px;border:1px solid #afc646;border-radius:10px!important;box-shadow:none;background:var(--hl-action,#d2f65a);color:var(--hl-action-ink,#1b2814);font-size:13px;font-weight:700;white-space:normal;line-height:1.4;position:static}
.production-dialog .fusion-return{width:min(340px,100%);justify-content:space-between}dialog.production-dialog[data-kind="fusion"] .fusion-return :is(span,i,strong){color:var(--hl-action-ink,#1b2814)!important}.production-dialog .fusion-summary #fusionConfirm:hover:not(:disabled),.production-dialog .fusion-return:hover{background:var(--hl-action-hover,#c4ea43);border-color:#91ad32}.production-dialog .fusion-summary #fusionConfirm:disabled{background:#e1e6d6;color:#77836b;border-color:#d6dec9;opacity:1}
dialog.production-dialog .fusion-layout.fusion-animation-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) 48px;gap:14px;overflow:hidden}
.fusion-animation-layout::after{content:none}.fusion-animation-layout .fusion-chamber{grid-column:1;grid-row:1;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:18px 24px;box-sizing:border-box;border:1px solid #d1ddc4;border-radius:14px;background:radial-gradient(ellipse at center,#e7f0cd,#f4f7eb 72%)}
.fusion-stage-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#6c8059;font:10px/1.5 HashlingsPixel,Arial,sans-serif;letter-spacing:.08em;flex:none}.fusion-stage-label strong{font-size:16px;color:#486232}
.fusion-scene-viewport{position:relative;flex:1;min-height:260px;display:grid;place-items:center;margin:8px 0}.fusion-coordinate-stage{max-width:640px}
.fusion-chamber-caption{flex:none;height:100px;min-height:100px;overflow:auto;text-align:center}.fusion-chamber-caption strong{display:block;font:18px/1.4 HashlingsPixel,Arial,sans-serif;color:#304b2a;margin:8px 0}.fusion-chamber-caption>span{display:block;max-width:520px;margin:auto;color:#6a7c58;font-size:12px;line-height:1.65}
.fusion-chamber:not([data-phase="working"]) .fusion-coordinate-stage{visibility:hidden}.fusion-chamber:not([data-phase="working"]) .fusion-reveal{position:absolute;inset:0;display:grid;place-content:center;align-items:center;grid-template-columns:minmax(140px,.75fr) minmax(0,1fr);gap:22px;overflow:auto;padding:12px 20px;animation:none}
.fusion-chamber:not([data-phase="working"]) .fusion-phase-track{visibility:hidden}.fusion-chamber[data-phase="failed"] .fusion-reveal{display:flex;flex-direction:column;justify-content:center}.fusion-chamber[data-phase="failed"] .fusion-chamber-caption strong{color:#6f6746}
.fusion-animation-layout .fusion-finish-actions{grid-column:1;grid-row:2;display:flex;align-items:center;justify-content:center;height:48px;min-height:48px;margin:0;padding:0;position:static;background:transparent}.fusion-waiting-note{font-size:12px;color:#7d886d}
@media(max-width:650px){
  dialog.production-dialog[data-kind="fusion"]{width:calc(100vw - 20px)!important;height:calc(100dvh - 24px)!important;max-height:calc(100dvh - 24px)!important;padding:20px!important}
  dialog.production-dialog[data-kind="fusion"] #productionDialogTitle{font-size:18px;margin-bottom:12px}
  dialog.production-dialog[data-kind="fusion"]>.fusion-intro{font-size:11px;margin-bottom:12px}
  dialog.production-dialog[data-kind="fusion"]>.fusion-layout{grid-template-columns:minmax(0,1fr);gap:16px;align-content:start;overflow:auto}
  .fusion-library{height:380px;min-height:380px}.fusion-library #fusionChoices{overflow:auto;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));grid-auto-rows:minmax(280px,auto)}.fusion-library #fusionChoices .fusion-choice{grid-template-columns:40px minmax(0,1fr);padding:9px;gap:7px}.fusion-library #fusionChoices .fusion-choice>.fusion-avatar{width:38px;height:38px}.fusion-library #fusionChoices .fusion-choice>span{padding-right:12px}.fusion-library #fusionChoices .fusion-choice>span>strong{font-size:11px}
  .fusion-summary{height:auto;min-height:700px;overflow:visible;align-self:start}.fusion-summary-body{flex:none;padding-right:0;overflow:visible;scrollbar-gutter:auto}
  dialog.production-dialog .fusion-layout.fusion-animation-layout{grid-template-rows:minmax(0,1fr) 48px;gap:10px;align-content:stretch;overflow:hidden}
  .fusion-node-name{font-size:24px}.fusion-node-id,.fusion-reactor-note{display:none}
  .fusion-animation-layout .fusion-chamber{padding:14px 8px}.fusion-stage-label{font-size:8px;letter-spacing:0}.fusion-stage-label strong{font-size:14px}.fusion-scene-viewport{min-height:210px;margin:2px 0}.fusion-chamber-caption{height:110px;min-height:110px}.fusion-chamber-caption strong{font-size:15px}.fusion-chamber-caption>span{font-size:11px;line-height:1.5}
  .fusion-chamber:not([data-phase="working"]) .fusion-reveal{grid-template-columns:minmax(0,1fr);gap:10px;text-align:center;padding:6px 10px;place-content:start center}.fusion-portrait-stage canvas{width:108px;height:108px}.production-dialog .fusion-complete-details h3{font-size:20px;margin:6px 0}.fusion-complete-meta,.fusion-complete-traits .role-affinities,.fusion-complete-traits .role-specials{justify-content:center}.fusion-complete-traits{margin-top:8px}.fusion-complete-traits .affinity,.fusion-complete-traits .role-specials>*{font-size:10px;padding:3px 5px}.fusion-complete-kicker{font-size:9px}
  .fusion-kept-characters{gap:7px}.fusion-kept-characters>div{padding:8px 4px;gap:4px}.fusion-kept-characters canvas{width:40px;height:40px}.fusion-kept-characters strong{font-size:11px}.fusion-kept-note{font-size:11px;margin-top:10px}
}

@media(max-width:380px){.fusion-library #fusionChoices{grid-template-columns:minmax(0,1fr)}.fusion-library #fusionChoices .fusion-choice{grid-template-columns:52px minmax(0,1fr);padding:12px;gap:8px}.fusion-library #fusionChoices .fusion-choice>.fusion-avatar{width:48px;height:48px}.fusion-library #fusionChoices .fusion-choice>span{padding-right:24px}.fusion-library #fusionChoices .fusion-choice>span>strong{font-size:12px}.fusion-library #fusionChoices .fusion-choice .role-energy-label{white-space:nowrap}}

/* Normal abilities have no visual effect or rarity treatment. */
.role-normal{display:block;padding:4px 6px;border:1px solid #d9e1d3;border-radius:5px;background:#eef2e9;color:#50604b;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
@supports(grid-template-rows:subgrid){:is(#collRow,.land-roster-grid) .role-normal{grid-row:3;margin-bottom:4px}}

/* Readable role cards: keep affinity labels short while retaining the full
   explanation in aria-label/title, and give live work states priority. */
:is(#collRow,.land-roster-grid) .role-affinities{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity{min-width:0;font-size:12px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity.is-active{justify-content:flex-start;}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity.is-active{box-sizing:border-box;min-width:0;width:100%;border-width:1px!important;padding:4px 4px;gap:3px;font-size:11px;overflow:hidden;}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity.is-active>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
:is(#collRow,.land-roster-grid) .role-energy-state{align-items:center;box-sizing:border-box;max-width:100%;min-height:17px;overflow:hidden;font-size:11px;line-height:1.35;font-weight:600;white-space:nowrap;}
:is(#collRow,.land-roster-grid) .role-energy-state>.role-work-light{margin-top:0;}
:is(#collRow,.land-roster-grid) .role-energy-state>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;}
:is(#collRow,.land-roster-grid) .role-energy-state[data-state="working"]{color:#8a6810;}
:is(#collRow,.land-roster-grid) .role-energy-state[data-state="resting"]{color:#39764d;}
:is(#collRow,.land-roster-grid) .role-energy-state[data-state="empty"]{color:#a74b43;}
:is(#collRow,.land-roster-grid) .role-gathering-rate{font-size:11px;line-height:1.5;}
:is(#collRow,.land-roster-grid) .role-gathering-rate strong{font-size:12px;}
@media(max-width:370px){:is(#collRow,.land-roster-grid) .role-affinities{grid-template-columns:1fr}:is(#collRow,.land-roster-grid) .role-affinities>.affinity{white-space:normal}}

/* Terrain modifiers are a pair; keep them on one row. Special abilities below
   retain their own full-width tracks, so long descriptions never collide. */
:is(#collRow,.land-roster-grid) .role-affinities{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity.good{grid-column:1;grid-row:1!important;}
:is(#collRow,.land-roster-grid) .role-affinities>.affinity.poor{grid-column:2;grid-row:1!important;}
:is(#collRow,.land-roster-grid) .role-affinities>.role-special{grid-column:1/-1;}
@media(max-width:370px){:is(#collRow,.land-roster-grid) .role-affinities{grid-template-columns:1fr!important}:is(#collRow,.land-roster-grid) .role-affinities>.affinity.good,:is(#collRow,.land-roster-grid) .role-affinities>.affinity.poor{grid-column:1}}

#creatureAttrs .attr-row:has(.attr-ability-list){align-items:flex-start}
#creatureAttrs .attr-ability-list{display:grid;gap:5px;text-align:left}
#creatureAttrs .attr-ability{display:block}
.role-level-detail{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:24px;padding:2px 9px;box-sizing:border-box;border:1px solid #7baf82;border-radius:7px;background:#e0f0de;color:#245c32;font:700 12px/1 Arial,'Microsoft YaHei',sans-serif;font-variant-numeric:tabular-nums}
.role-level-detail[data-level="2"]{background:#deecfb;border-color:#88afd9;color:#285c92}.role-level-detail[data-level="3"]{background:#eee2fb;border-color:#b596d4;color:#67408b}.role-level-detail[data-level="4"]{background:#fff0b2;border-color:#d7b44c;color:#755608}.role-level-detail[data-level="5"],.role-level-detail[data-level="6"]{background:#ffe1c4;border-color:#d9995d;color:#88420d}

/* Quote actions share a row without moving food or inventory during refresh. */
.supply-quote-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;margin:4px 0 18px}
.supply-quote-row [data-supply-quote]{flex:1;min-width:0;margin:0;font-size:11px;line-height:1.6;color:#7c866e}
.supply-quote-row .supply-quote-refresh{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;margin-left:auto;padding:8px 12px;min-height:38px;border:1px solid #dce3d4;border-radius:12px;background:#f7f9f1;font-size:12px;color:#455c3d;white-space:nowrap}
.supply-quote-refresh svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.supply-quote-refresh:hover:not(:disabled){background:#eef4dd;border-color:#92aa7f}.supply-quote-refresh:focus-visible{outline:2px solid #64884c;outline-offset:3px}
.supply-quote-refresh[aria-busy="true"] svg{animation:supply-quote-spin 1s linear infinite}
@keyframes supply-quote-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.supply-quote-refresh[aria-busy="true"] svg{animation:none}}

/* Fusion choices stay in the summary scroll, with no hidden checked abilities. */
.fusion-trait-picker{min-width:0}.fusion-traits-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:8px}.fusion-traits-heading>span{font-variant-numeric:tabular-nums;color:#526b35}.production-dialog .fusion-traits-hint{margin:8px 0 0;font-size:11px;line-height:1.5;color:#687759}.fusion-currencies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.fusion-currencies button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-width:0;min-height:64px;padding:10px 12px;border:1px solid #c9d4bc;border-radius:10px;background:#fffef8;color:#3a4c30;cursor:pointer;text-align:left}.fusion-currencies button[aria-pressed="true"]{border-color:#729332;background:#edf7cd;box-shadow:inset 0 0 0 1px #729332}.fusion-currencies button strong{font-size:13px}.fusion-currencies button span{font-size:11px;line-height:1.4;overflow-wrap:anywhere}.fusion-currencies button:focus-visible{outline:2px solid #5a7b23;outline-offset:2px}

/* The retained appearance is a two-choice control. Keeping the native select
   off-canvas preserves the existing value/event contract without exposing the
   operating system menu and its unrelated focus colours. */
.fusion-main-picker{position:relative;display:grid;gap:8px;min-width:0;margin:0}
.fusion-main-picker .fusion-main-label{margin:0;color:#42533e;font-size:12px;font-weight:700;line-height:1.45}
.production-dialog .fusion-main-source{position:absolute!important;left:0!important;top:0!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important}
.fusion-main-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0}
.production-dialog .fusion-main-option{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr) 8px;align-items:center;gap:8px;box-sizing:border-box;min-width:0;min-height:52px;padding:7px 8px;border:2px solid #d4ddcc;border-radius:9px!important;background:#fffef8;color:#2f4433;text-align:left;box-shadow:none}
.fusion-main-option canvas{display:block;width:32px;height:32px;border-radius:6px;background:#eff3e8;image-rendering:pixelated}
.fusion-main-option>span{min-width:0}.fusion-main-option strong,.fusion-main-option small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fusion-main-option strong{font-size:11px;line-height:1.35}.fusion-main-option small{margin-top:2px;color:#71806d;font:9px/1.3 monospace}
.fusion-main-option>i{display:block;width:7px;height:7px;border:1px solid #a9b6a0;background:#eef2e9;box-sizing:border-box}
.production-dialog .fusion-main-option:hover{border-color:#9aad8d;background:#f8faef}
.production-dialog .fusion-main-option[aria-pressed="true"]{border-color:#6f8d38;background:#eef5d9;color:#253d2b;box-shadow:none}
.fusion-main-option[aria-pressed="true"]>i{border-color:#567a2d;background:#73953a}
.production-dialog .fusion-main-option:focus-visible{border-color:#315f48;outline:0;box-shadow:none}
.fusion-main-empty{display:flex;grid-column:1/-1;align-items:center;box-sizing:border-box;min-height:52px;padding:10px 12px;border:1px dashed #c8d2bf;border-radius:9px;background:#f7f9f2;color:#7c8875;font-size:11px}
@media(max-width:380px){.fusion-main-options{grid-template-columns:minmax(0,1fr)}}
/* Listed role marker: visible in collection, deployment and fusion cards. */
:is(.coll-item,.fusion-choice).is-listed{position:relative;border-color:rgba(177,132,24,.72)}
.role-market-badge{position:absolute;top:6px;right:6px;z-index:3;pointer-events:none;padding:3px 6px;border:1px solid #b18418;border-radius:999px;background:#fff3c4;color:#7b5a09;font:700 10px/1.1 Arial,'Microsoft YaHei',sans-serif;white-space:nowrap;box-shadow:0 1px 0 rgba(92,65,12,.12)}
#crewPickGrid .role-market-badge{top:5px;right:5px;font-size:9px;padding:2px 5px}
.fusion-choice .role-market-badge{top:8px;right:8px}

/* Character detail tags share the same rows and alignment for every category. */
#creatureTraits{align-items:center}
#creatureTraits>.role-affinities{flex-basis:100%;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:2px 0 0;align-items:stretch}
#creatureTraits .hl-limited-badge--action{padding:6px 8px;font:12px/1.5 Arial,'Microsoft YaHei',sans-serif}
/* Supply bag/shop menus — six distinct item types, release 295. */
dialog.production-dialog[data-kind="supply"]{width:min(760px,calc(100vw - 28px))!important}
[data-kind="supply"] .supply-workspace{display:grid;grid-template-columns:minmax(0,1fr) 64px;align-items:start;gap:16px;margin-top:18px}
.supply-panes{min-width:0}.supply-panel[hidden]{display:none!important}
[data-kind="supply"] .supply-menu{display:grid;gap:8px;position:sticky;top:0}
[data-kind="supply"] .supply-menu button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:74px;width:100%;padding:9px 3px;border:1px solid #d7e1cc;border-radius:12px;background:#f2f5eb;color:#6d7c5f;font-size:12px}
[data-kind="supply"] .supply-menu button[aria-selected="true"]{background:#e3f0bf;color:#2a4a34;border-color:#6d9353;box-shadow:inset 3px 0 #6d9353}
[data-kind="supply"] .supply-menu button:focus-visible{outline:2px solid #446c36;outline-offset:3px}
.supply-menu .supply-icon,.supply-menu svg{width:24px;height:24px}
.supply-menu svg:not(.supply-icon){fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
[data-kind="supply"] .supply-bag{border:0;padding:0;margin:0}
[data-kind="supply"] .supply-inventory{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
[data-kind="supply"] .supply-inventory-item{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;align-items:center;padding:12px 10px;min-width:0}
[data-kind="supply"] .supply-inventory-item .supply-icon{width:40px;height:40px}
[data-kind="supply"] .supply-inventory-item small{display:block;font-size:10px;overflow-wrap:anywhere}
[data-kind="supply"] .supply-inventory-item .supply-origin{font-size:9px;color:#788367}
[data-kind="supply"] .supply-inventory-item button{grid-column:1/-1;min-height:40px!important;width:100%;padding:6px!important;margin-top:2px}
[data-kind="supply"] .supply-inventory-item.is-premium{border-color:#dacd9f;background:linear-gradient(135deg,#f9f8e9,#f1f0f9)}
[data-kind="supply"] .supply-inventory-item.is-empty{background:#f7f8f2;border-style:dashed}
[data-kind="supply"] .supply-inventory-item.is-empty button{opacity:.65}
[data-kind="supply"] .supply-grid button{background:linear-gradient(150deg,#f0f7ec,#fcf4d9);border-color:#d4c999}
[data-kind="supply"] .supply-grid button:nth-child(2){background:linear-gradient(150deg,#f2edff,#fbf6df)}
[data-kind="supply"] .supply-grid button:nth-child(3){background:linear-gradient(150deg,#fff2d0,#f9edd8)}
[data-kind="supply"] .supply-icon-premium{filter:drop-shadow(0 3px 5px #96784530)}
[data-kind="supply"] .supply-grid .supply-icon-premium{width:72px;height:72px}
[data-kind="supply"] .supply-grid button.selected{outline:1px solid #64884c;outline-offset:2px}
[data-kind="supply"] .supply-checkout{position:static;margin-bottom:0;padding-bottom:0}
[data-kind="supply"] .supply-summary{line-height:1.6;flex-wrap:wrap}
[data-kind="supply"] .supply-summary b{display:block;margin-left:0;font-size:12px}
[data-kind="supply"] [data-supply-use-note]{margin-top:12px}
@media(max-width:560px){
 dialog.production-dialog[data-kind="supply"]{padding:15px!important;width:calc(100vw - 20px)!important}
 [data-kind="supply"] .supply-workspace{grid-template-columns:minmax(0,1fr) 50px;gap:9px}
 [data-kind="supply"] .supply-menu button{min-height:68px;font-size:11px}
 [data-kind="supply"] .supply-inventory{grid-template-columns:1fr}
 [data-kind="supply"] .supply-inventory-item{grid-template-columns:36px minmax(0,1fr) 42px;padding:10px 8px;gap:6px}
 [data-kind="supply"] .supply-inventory-item .supply-icon{width:36px;height:36px}
 [data-kind="supply"] .supply-inventory-item button{grid-column:auto;margin:0;font-size:11px!important}
 [data-kind="supply"] .supply-inventory-item strong{font-size:11px}
 [data-kind="supply"] .supply-inventory-count{margin-left:2px;font-size:10px}
 [data-kind="supply"] .supply-grid{grid-template-columns:1fr;gap:10px}
 [data-kind="supply"] .supply-grid button{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:8px;row-gap:3px;padding:12px 10px;text-align:left}
 [data-kind="supply"] .supply-grid button.selected{padding:11px 9px}
 [data-kind="supply"] .supply-grid .supply-icon-premium{grid-row:1/5;width:56px;height:56px;margin:0}
 [data-kind="supply"] .supply-grid strong{font-size:13px}
 [data-kind="supply"] .supply-grid small{margin:0;font-size:13px}
 [data-kind="supply"] .supply-grid .supply-portion{font-size:10px}
 [data-kind="supply"] .supply-section-heading{align-items:start}
 [data-kind="supply"] .supply-section-heading>span{max-width:55%;font-size:9px}
 [data-kind="supply"] .supply-quote-row{gap:5px;flex-wrap:wrap}
 [data-kind="supply"] .supply-quote-refresh{padding:7px 9px;font-size:11px}
}



/* Attached supply bookmarks reserve only a narrow outer edge. */
dialog.production-dialog[data-kind="supply"]{width:min(760px,calc(100vw - 86px))!important;max-width:760px!important;height:min(780px,calc(100dvh - 40px))!important;max-height:none!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;left:62px!important;right:0!important}
[data-kind="supply"] .supply-surface{position:relative;box-sizing:border-box;height:100%;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:26px;border:1px solid #d3dfc9;border-radius:22px;background:var(--hl-paper,#fffef8);box-shadow:0 12px 40px #233e2720}
[data-kind="supply"] .supply-surface>h2{margin:0 44px 18px 0}
[data-kind="supply"] .supply-workspace{display:block;margin-top:18px}
[data-kind="supply"] .supply-menu{position:absolute;left:auto;right:calc(100% - 1px);top:104px;width:62px;display:grid;gap:6px;padding:0;background:transparent;border:0;box-shadow:none;z-index:2}
dialog.production-dialog[data-kind="supply"] .supply-menu button{position:relative;box-sizing:border-box;min-height:68px;width:62px;display:flex;flex-direction:column;gap:5px;padding:9px 3px;border:1px solid #d3dfc9!important;border-radius:12px 0 0 12px!important;background:#f0f3e8!important;color:#68765d!important;font-size:12px;--hl-cta-shadow:none;--hl-cta-shadow-hover:none;box-shadow:none!important;transform:none!important;transition:color .12s!important}
dialog.production-dialog[data-kind="supply"] .supply-menu button[aria-selected="true"]{border-right-color:var(--hl-paper,#fffef8)!important;background:var(--hl-paper,#fffef8)!important;color:#365d27!important;outline:0;font-weight:700}
dialog.production-dialog[data-kind="supply"] .supply-menu button[aria-selected="true"]::before{content:"";position:absolute;left:0;width:3px;height:24px;border-radius:2px;background:#83ad47}
dialog.production-dialog[data-kind="supply"] .supply-menu button:hover:not(:disabled){background:#f7f9ef!important}
dialog.production-dialog[data-kind="supply"] .supply-menu button[aria-selected="true"]:hover:not(:disabled){background:var(--hl-paper,#fffef8)!important}
body.shared-theme dialog.production-dialog[data-kind="supply"] .supply-menu button:active:not(:disabled){transform:none!important;box-shadow:none!important}
[data-kind="supply"] .supply-menu .supply-icon{width:26px;height:26px;image-rendering:pixelated}
[data-kind="supply"] .supply-grid button{border:1px solid #d4c999;padding:16px 10px;box-shadow:none!important;outline:0!important}
[data-kind="supply"] .supply-grid button.selected{border:1px solid #9cbb66;padding:16px 10px;background:#eff7db;box-shadow:none!important;outline:0!important}
[data-kind="supply"] .supply-grid button:focus-visible{outline:2px solid #779851!important;outline-offset:2px}
[data-kind="supply"] .supply-quantity{margin-top:16px}
[data-kind="supply"] #supplyPurchase{--hl-cta-shadow:none;--hl-cta-shadow-hover:none}
@media(max-width:560px){
 dialog.production-dialog[data-kind="supply"]{width:calc(100vw - 66px)!important;left:46px!important;height:calc(100dvh - 24px)!important}
 [data-kind="supply"] .supply-surface{padding:16px;max-height:calc(100dvh - 24px);border-radius:18px}
 [data-kind="supply"] .supply-menu{left:auto;right:calc(100% - 1px);top:88px;width:46px;gap:6px}
 dialog.production-dialog[data-kind="supply"] .supply-menu button{width:46px;min-height:64px;padding:9px 2px;font-size:10px;border-radius:10px 0 0 10px!important}
 [data-kind="supply"] .supply-menu .supply-icon{width:24px;height:24px}
 [data-kind="supply"] .supply-grid button,[data-kind="supply"] .supply-grid button.selected{padding:12px 10px}
 [data-kind="supply"] .supply-section-heading{gap:10px}
 [data-kind="supply"] .supply-section-heading>span{max-width:58%;line-height:1.5}
 [data-kind="supply"] .supply-hero{gap:10px;padding:12px}
 [data-kind="supply"] .supply-portrait{width:54px;height:64px;flex-basis:54px}
}

[data-kind="supply"] .supply-panel{padding:0!important;margin:0!important;max-width:none}

/* Keep inheritance controls together; page-level section spacing must not enter this dialog. */
dialog.production-dialog[data-kind="fusion"] .fusion-summary{gap:9px;padding:12px}
dialog.production-dialog[data-kind="fusion"] .fusion-summary-body{gap:10px;justify-content:flex-start}
dialog.production-dialog[data-kind="fusion"] :is(.fusion-main-picker,.fusion-trait-picker){padding:0!important;margin:0!important;min-height:0;max-width:none;width:100%;box-sizing:border-box}
dialog.production-dialog[data-kind="fusion"] .fusion-summary .fusion-result-card{height:auto;min-height:0;padding:10px}
dialog.production-dialog[data-kind="fusion"] .fusion-result-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px;padding-top:8px}
dialog.production-dialog[data-kind="fusion"] .fusion-result-stats dd{font-size:15px}
dialog.production-dialog[data-kind="fusion"] .fusion-result-identity canvas{width:36px;height:36px}
dialog.production-dialog[data-kind="fusion"] .fusion-summary #fusionPreview{height:auto;min-height:0;margin:0}
dialog.production-dialog[data-kind="fusion"] .fusion-selected-slot{height:48px;padding:4px;flex-direction:row;gap:6px}
dialog.production-dialog[data-kind="fusion"] .fusion-selected-slot canvas{width:28px;height:28px}
dialog.production-dialog[data-kind="fusion"] .fusion-traits-heading{margin-bottom:6px}
dialog.production-dialog[data-kind="fusion"] #fusionTraits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px}
dialog.production-dialog[data-kind="fusion"] #fusionTraits .production-option{margin:0;padding:3px 0;display:flex;align-items:flex-start;gap:5px}
dialog.production-dialog[data-kind="fusion"] #fusionTraits input{flex:none;margin-top:2px}
dialog.production-dialog[data-kind="fusion"] #fusionTraitsHint{margin-top:5px}
dialog.production-dialog[data-kind="fusion"] #fusionPaymentNote{margin:0;font-size:12px;line-height:1.5;color:#4a6834}
dialog.production-dialog[data-kind="fusion"] .fusion-summary-body:has(#fusionCurrencyLabel[hidden]) .fusion-currencies{display:none}
@media(max-width:650px){
 dialog.production-dialog[data-kind="fusion"]{padding:16px!important}
 dialog.production-dialog[data-kind="fusion"]>.fusion-layout:not(.fusion-animation-layout){position:relative;padding-bottom:62px}
 dialog.production-dialog[data-kind="fusion"] .fusion-library{height:250px;min-height:250px}
 dialog.production-dialog[data-kind="fusion"] .fusion-summary{min-height:0;height:auto;overflow:visible}
 dialog.production-dialog[data-kind="fusion"] .fusion-summary-body{flex:none;overflow:visible}
 dialog.production-dialog[data-kind="fusion"] .fusion-summary #fusionConfirm{position:fixed;bottom:16px;left:16px;right:16px;width:calc(100% - 32px);z-index:5;box-shadow:0 -8px 0 8px #fbfcf5}
 dialog.production-dialog[data-kind="fusion"] #fusionTraits{grid-template-columns:1fr}
 dialog.production-dialog[data-kind="fusion"] .fusion-main-options{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Material pages show entire cards. Only the outer fusion workspace scrolls. */
dialog.production-dialog[data-kind="fusion"]>.fusion-layout:not(.fusion-animation-layout){align-items:start;align-content:start;grid-template-rows:none;grid-auto-rows:max-content}
dialog.production-dialog[data-kind="fusion"] .fusion-library{height:auto;min-height:0;overflow:visible;flex:none}
dialog.production-dialog[data-kind="fusion"] .fusion-library #fusionChoices{height:auto;min-height:0;max-height:none;overflow:visible;flex:none;grid-auto-rows:auto;align-content:start}
dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice{height:auto;min-height:0;max-height:none;overflow:visible}
dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice[hidden]{display:none!important}
dialog.production-dialog[data-kind="fusion"] .fusion-material-pages{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 2px 0;padding:0;min-height:0;box-shadow:none;background:none;border:0;position:static;transform:none;inset:auto;width:auto;max-width:none;z-index:auto}
dialog.production-dialog[data-kind="fusion"] .fusion-material-pages[hidden]{display:none}
dialog.production-dialog[data-kind="fusion"] .fusion-material-pages button{min-height:40px;padding:8px 12px;font-size:12px;border:1px solid #cbd5bc;border-radius:9px;background:#fffef7;color:#314c2c;cursor:pointer}
dialog.production-dialog[data-kind="fusion"] .fusion-material-pages button:disabled{opacity:.45;cursor:default}
dialog.production-dialog[data-kind="fusion"] .fusion-material-pages span{font-size:11px;text-align:center;color:#617354}
dialog.production-dialog[data-kind="fusion"] .fusion-summary{height:auto;min-height:0;overflow:visible}
dialog.production-dialog[data-kind="fusion"] .fusion-summary-body{height:auto;min-height:0;overflow:visible;flex:none;scrollbar-gutter:auto}

/* Mobile materials use compact two-column cards in one vertical list. */
@media(max-width:650px){
 dialog.production-dialog[data-kind="fusion"]{padding:16px!important}
 dialog.production-dialog[data-kind="fusion"] .fusion-library-heading{padding-bottom:4px}
 dialog.production-dialog[data-kind="fusion"] .fusion-material-scroll-hint{display:block;margin:0 2px 7px;color:#617354;font:11px/1.5 Arial,'Microsoft YaHei',sans-serif}
 dialog.production-dialog[data-kind="fusion"] .fusion-library #fusionChoices{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;grid-auto-rows:auto;max-height:min(430px,48dvh);overflow-x:hidden;overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:2px 3px 5px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice{grid-template-columns:30px minmax(0,1fr);grid-template-rows:minmax(48px,auto) auto auto;gap:5px;padding:7px;border-radius:9px!important;min-width:0;height:auto;min-height:0;overflow:visible}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice input{width:17px;height:17px;top:6px;right:6px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice>.fusion-avatar{width:28px;height:28px;padding:1px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice>span{padding-right:14px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice>span>strong{font-size:11px;line-height:1.35;margin-bottom:3px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice>span>small{font-size:9px;line-height:1.35;display:block;overflow:visible;overflow-wrap:anywhere;-webkit-line-clamp:unset}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice>.role-energy{margin:0}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice .role-energy-label{font-size:10px;line-height:1.4;white-space:normal;gap:2px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice .role-energy-label :is(b,strong){font-size:11px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice .role-energy-track{height:5px;margin-top:3px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice .role-energy-state{margin-top:3px;min-height:14px;font-size:10px;line-height:1.4}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice .role-gathering-rate{margin-top:4px;font-size:10px;gap:2px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice .role-gathering-rate :is(b,strong){font-size:11px}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice>.role-affinities{gap:3px;margin-top:0}
 dialog.production-dialog[data-kind="fusion"] #fusionChoices .fusion-choice .role-affinities>:not(.role-level){padding:3px 4px;font-size:10px;line-height:1.35;white-space:normal;overflow:visible}
 dialog.production-dialog[data-kind="fusion"] .fusion-material-pages{display:none}
}

/* All materials stay in one list on desktop as well as mobile. */
dialog.production-dialog[data-kind="fusion"] .fusion-material-scroll-hint{display:block;margin:0 2px 7px;color:#617354;font:11px/1.5 Arial,'Microsoft YaHei',sans-serif}
@media(min-width:651px){
 dialog.production-dialog[data-kind="fusion"] .fusion-library #fusionChoices{grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(640px,max(180px,calc(100dvh - 260px)));overflow-x:hidden;overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-gutter:stable;padding:2px 5px 5px 2px}
}

/* One next step, from confirmed production state; no continuously flashing cards. */
.production-next-step{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;box-sizing:border-box;width:100%;margin:0 0 22px;padding:20px 22px;border:1px solid var(--line,#353d49);border-left:3px solid var(--gold,#f0b90b);border-radius:8px;background:var(--panel,#181a20);color:var(--txt,#eaecef)}
.production-next-step-label{display:block;margin-bottom:7px;color:var(--gold,#f0b90b);font:700 10px/1.5 ui-monospace,monospace;letter-spacing:1px}
.production-next-step h3{margin:0 0 7px;font-size:18px;line-height:1.4}
.production-next-step p{margin:0;font-size:13px;line-height:1.7;color:var(--txt,#eaecef);overflow-wrap:anywhere}
.production-next-step small{display:block;max-width:760px;margin-top:7px;font-size:11px;line-height:1.65;color:var(--dim,#9da6b5)}
.production-next-step small:empty{display:none}
.production-next-step-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;max-width:230px;min-width:168px}
.production-next-step-actions button{width:100%;min-height:44px;white-space:normal;font-size:13px;line-height:1.5}
.production-next-step-actions a{font-size:12px;line-height:1.5;text-align:center;color:var(--gold,#f0b90b)}
.production-next-step-actions a[hidden]{display:none}
.production-next-step.is-updated{animation:production-state-confirm .65s ease-out 1}
#worldSwitcher .resource-state-tag::before,#worldSwitcher .resource-card-meter>span,.resource-card .resource-state-tag::before,.resource-card .resource-card-meter>span{animation:none!important}
@keyframes production-state-confirm{0%{box-shadow:0 0 0 3px #f0b90b55}100%{box-shadow:0 0 0 0 #f0b90b00}}
.production-background .production-next-step,.production-background .role-work-light,.production-background .affinity-light,.production-background .time-panel .tp-fill,.production-background .time-panel .tp-bar{animation:none!important}
@media(prefers-reduced-motion:reduce){.production-next-step.is-updated{animation:none}}
@media(max-width:680px){.production-next-step{grid-template-columns:1fr;gap:14px;padding:16px;margin-bottom:16px}.production-next-step h3{font-size:16px}.production-next-step-actions{max-width:none;min-width:0}.production-next-step-actions a{padding:6px}}
