/* Shared limited identity. Keep this separate from trait badges and their slot counts. */
.hl-limited-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;max-width:100%;padding:5px 8px;border:1px solid #ba9347;background:#fcf0c9;color:#71531b;box-shadow:inset 0 0 0 1px #fff9e3,2px 2px 0 #6e542b22;font-family:inherit;font-size:11px;font-weight:750;line-height:1.3;letter-spacing:.02em;vertical-align:middle;white-space:nowrap;isolation:isolate}
.hl-limited-badge__seal{position:relative;display:block;flex:0 0 11px;width:11px;height:13px;background:#a37a2c;clip-path:polygon(2px 0,9px 0,9px 2px,11px 2px,11px 8px,9px 8px,9px 10px,7px 10px,7px 12px,4px 12px,4px 10px,2px 10px,2px 8px,0 8px,0 2px,2px 2px)}
.hl-limited-badge__seal::before{position:absolute;content:"";inset:2px 3px 4px;background:#fbe8a0;clip-path:polygon(2px 0,3px 0,3px 2px,5px 2px,5px 3px,3px 3px,3px 6px,2px 6px,2px 3px,0 3px,0 2px,2px 2px)}
.hl-limited-badge::after{position:absolute;content:"";pointer-events:none;right:3px;top:2px;width:2px;height:2px;background:#fffef2;box-shadow:-3px 0 0 #d3ad5d,0 3px 0 #d3ad5d;opacity:.28;animation:hl-limited-spark 5s steps(1,end) infinite}
.hl-limited-badge__serial{padding-inline-start:6px;border-inline-start:1px solid #c4a565;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.hl-limited-badge--compact{gap:4px;padding:4px 6px;font-size:10px}
.hl-limited-badge--compact .hl-limited-badge__seal{flex-basis:9px;width:9px;transform:scale(.82);transform-origin:center}
.role-level-detail+.hl-limited-badge{margin-inline-start:8px}
.role-card-identity:has(>.role-limited-identity){flex-wrap:wrap}
.role-card-identity>.role-limited-identity{display:block;flex-basis:100%;margin-top:2px;text-align:center}
.market-card .card-identity:has(>.hl-limited-badge){height:auto;min-height:54px;flex-wrap:wrap}
.market-card .card-identity>.hl-limited-badge{flex-basis:100%;max-width:100%;box-sizing:border-box;overflow:visible;font:750 10px/1.3 Arial,'Microsoft YaHei',sans-serif;color:#71531b}
.sell-asset>.hl-limited-badge{max-height:none;overflow:visible;color:#71531b;line-height:1.3}
.fusion-complete-details>.hl-limited-badge,.fusion-result-identity+.hl-limited-badge,.trade-asset .hl-limited-badge,.card-identity .hl-limited-badge{margin-top:8px}
.fusion-choice .hl-limited-badge,.fusion-main-option .hl-limited-badge,.sell-asset .hl-limited-badge{margin-top:5px}
@keyframes hl-limited-spark{0%,68%,100%{opacity:.28}78%{opacity:.95}88%{opacity:.4}}
@media(prefers-reduced-motion:reduce){.hl-limited-badge::after{animation:none;opacity:.5}}
.hl-limited-badge.hl-limited-badge--action{appearance:none;cursor:pointer;min-height:28px;max-width:100%;padding:5px 8px;border:1px solid #ba9347;border-radius:0;background:#fcf0c9;color:#71531b;font-family:inherit;font-size:11px;font-weight:750;line-height:1.3;white-space:normal;text-align:center;touch-action:manipulation;transition:background-color .12s steps(2,end),transform .08s;}
.hl-limited-badge.hl-limited-badge--action.hl-limited-badge--compact{padding:4px 6px;font-size:10px}
.hl-limited-badge--action .hl-limited-badge__label{min-width:0;line-height:1.4}
.hl-limited-badge__more{font-size:16px;line-height:1;flex-shrink:0}
.hl-limited-badge.hl-limited-badge--action:hover{background:#ffe6a2;border-color:#92702b}
.hl-limited-badge.hl-limited-badge--action:active{transform:translateY(1px);box-shadow:inset 0 0 0 1px #e0bd68}
.hl-limited-badge--action:focus-visible{outline:2px solid #87641d;outline-offset:3px}
dialog.limited-bonus-dialog.production-dialog{width:min(560px,calc(100vw - 24px))!important;max-width:560px;padding:28px!important;color:#294031;background:#fffdf4;border:2px solid #a98a47;border-radius:4px}
.limited-bonus-dialog::backdrop{background:#172b2473}
dialog.limited-bonus-dialog.production-dialog h2{padding-right:26px;font-size:21px;margin:0 0 14px}
.limited-bonus-dialog .limited-bonus-intro{color:#73785e;font-size:12px;margin:0 0 20px}
.limited-bonus-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;font-variant-numeric:tabular-nums}
.limited-bonus-table th,.limited-bonus-table td{padding:11px 5px;border-bottom:1px solid #dfe4cf;text-align:right;overflow-wrap:anywhere}
.limited-bonus-table th:first-child{width:34%;text-align:left;font-weight:600}
.limited-bonus-table thead th{font-size:11px;color:#75806b;font-weight:500;background:#f0f3e7}
.limited-bonus-table small{display:block;font-size:10px;color:#8a927c;font-weight:400}
.limited-bonus-gain{color:#527934;font-weight:700}
.limited-bonus-dialog .limited-bonus-formula{padding:12px;margin:18px 0 10px;background:#f4eddb;border-left:3px solid #bb9745;font-size:12px;line-height:1.7}
.limited-bonus-dialog .limited-bonus-note{font-size:11px;color:#7e856c;line-height:1.7;margin:10px 0 0}
@media(max-width:400px){dialog.limited-bonus-dialog.production-dialog{padding:23px 15px!important}.limited-bonus-table{font-size:11px}.limited-bonus-table th,.limited-bonus-table td{padding:10px 3px}}
@media(prefers-reduced-motion:reduce){.hl-limited-badge--action{transition:none}.hl-limited-badge.hl-limited-badge--action:active{transform:none}}

/* The innate bonus occupies the same terrain-tag slot and dimensions. */
.role-affinities>.hl-limited-badge.hl-limited-badge--action{box-sizing:border-box;flex:1 1 auto;min-width:0;min-height:0;width:100%;align-self:stretch;justify-content:center;padding:4px 6px;border-radius:5px!important;font-size:11px;line-height:1.35;font-weight:500;white-space:nowrap;letter-spacing:0;}
.role-affinities>.hl-limited-badge--action .hl-limited-badge__label{white-space:nowrap;line-height:inherit;}
.role-affinities>.hl-limited-badge--action .hl-limited-badge__seal,.role-affinities>.hl-limited-badge--action .hl-limited-badge__more{display:none;}
:is(#collRow,.land-roster-grid) .role-affinities>.hl-limited-badge--action{grid-column:2;grid-row:1;margin-bottom:4px;}
@media(max-width:370px){:is(#collRow,.land-roster-grid) .role-affinities>.hl-limited-badge--action{grid-column:1;grid-row:2;}}
