/* Shared detail rhythm. Existing dialogs keep their own widths and behavior. */
body.detail-polish.game-ui dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overscroll-behavior:contain;scroll-padding-block:100px 24px}
body.detail-polish.game-ui dialog .dp-header{display:flex!important;align-items:center;gap:14px;position:sticky;top:0;z-index:8;background:linear-gradient(135deg,#24465b,#132d3e);border-bottom:1px solid #55758b;padding:18px 20px;isolation:isolate}
body.detail-polish.game-ui dialog .dp-header>:is(h2,div):not(.gear-dialog-actions):not(.dialog-actions):not(.dialog-more){min-width:0;flex:1}
body.detail-polish.game-ui dialog .dp-header h2{font-size:20px;line-height:1.35;margin:0;overflow-wrap:anywhere;color:#eef6fb}
body.detail-polish.game-ui dialog .dp-header :is(#detail-art,#technology-icon){flex:0 0 auto}
body.detail-polish.game-ui dialog .dp-header :is(.gear-dialog-actions,.dialog-actions){margin-inline-start:auto;display:flex;align-items:center;gap:10px;flex:0 0 auto}
body.detail-polish.game-ui dialog .dp-header button{flex:0 0 auto;min-width:44px;min-height:44px;align-self:center}
body.detail-polish.game-ui dialog .dp-header :is(#close,#technology-close,#loot-close,[id$="-close"],[data-close]){margin-inline-start:auto}
body.detail-polish.game-ui dialog .dp-header :is(.sub,p){margin:5px 0 0;color:#b4c9d8;line-height:1.45}
body.detail-polish.game-ui dialog :is(.detail-tabs,.aw-tabs,.ht-detail-tabs){display:flex;flex-wrap:wrap;gap:7px;margin-block:0 18px;padding-bottom:10px;border-bottom:1px solid #3d5b6d}
body.detail-polish.game-ui dialog :is(.detail-tabs,.aw-tabs,.ht-detail-tabs) button{min-height:44px;flex:1 1 auto;padding:10px 13px;background:#193242;border:1px solid #456b7c;color:#d4e6ef;border-radius:8px}
body.detail-polish.game-ui dialog :is(.detail-tabs,.aw-tabs,.ht-detail-tabs) button[aria-pressed=true]{background:linear-gradient(180deg,#31586a,#203e4e)!important;border-color:#83c7d9!important;color:#eefaff!important;box-shadow:inset 0 -2px #81ddeb}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels){margin-block:16px;border:1px solid #496b7e;border-radius:10px;background:#112735;overflow:clip}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>summary{min-height:48px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;font-weight:650;line-height:1.45;color:#dcecf5;background:#1b3749;list-style:none}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>summary::-webkit-details-marker{display:none}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>summary::after{content:'›';font-size:23px;line-height:1;transition:transform .15s}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)[open]>summary{border-bottom:1px solid #496b7e;background:#254a5c}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)[open]>summary::after{transform:rotate(90deg)}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>:not(summary){margin-inline:14px}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>:last-child{margin-bottom:14px}
body.detail-polish.game-ui .dp-upgrade-result{margin:18px 0;padding:18px;border:1px solid #659b97;border-radius:11px;background:linear-gradient(135deg,#204843,#153638);color:#dff3ec;box-shadow:inset 0 1px #c3f2de20}
body.detail-polish.game-ui .dp-upgrade-result>p{font-weight:650;margin:0 0 14px;color:#dff3ec;line-height:1.5}
body.detail-polish.game-ui .dp-number{display:block;font-size:27px;line-height:1.3;overflow-wrap:anywhere;letter-spacing:-.015em;font-variant-numeric:tabular-nums}
body.detail-polish.game-ui .dp-number+span{display:block;font-size:13px;line-height:1.6;color:#b9d8d0;margin-top:5px}
body.detail-polish.game-ui .dp-upgrade-result details{margin-top:14px;border:1px solid #618b92;border-radius:8px;overflow:clip}
body.detail-polish.game-ui .dp-upgrade-result details>summary{min-height:44px;padding:12px 14px;color:#dcebf5;cursor:pointer;line-height:1.5;background:#1b394a}
body.detail-polish.game-ui .dp-upgrade-result details>:not(summary){padding:10px 12px}
body.detail-polish.game-ui .dp-selected-upgrade .upgrade-cost{padding:0;display:grid;gap:10px}
body.detail-polish.game-ui .dp-selected-upgrade .upgrade-cost>strong{font-size:27px}
body.detail-polish.game-ui .dp-selected-upgrade .cost-chips{display:grid;gap:10px}
body.detail-polish.game-ui .dp-selected-upgrade .upgrade-gold{font-size:15px;color:#cde8de}
body.detail-polish.game-ui .dp-merge-effect{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #507d77;line-height:1.6}
body.detail-polish.game-ui #detail .dp-merge-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:end}
body.detail-polish.game-ui #detail .dp-merge-controls>label{display:grid;gap:8px;min-width:0;font-size:13px;line-height:1.5}
body.detail-polish.game-ui #detail .dp-merge-controls select{width:100%;min-width:0;min-height:44px}
body.detail-polish.game-ui #gear-detail .upgrade-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
body.detail-polish.game-ui #gear-detail .upgrade-controls label{min-width:0}
body.detail-polish.game-ui #gear-detail .upgrade-controls select{width:100%;min-height:44px}
body.detail-polish.game-ui #beast-detail .formation-controls{align-items:end;gap:14px}
body.detail-polish.game-ui #beast-detail .formation-controls:has(#target-level){display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
body.detail-polish.game-ui #beast-detail .formation-field{min-width:0}
body.detail-polish.game-ui #beast-detail .formation-field select{width:100%;min-width:0}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels) .table-wrap{max-width:calc(100% - 28px);overflow:auto}
body.detail-polish.game-ui .dp-upgrade-result .formation-cost{color:#d7eee7}
body.detail-polish.game-ui :is(button,summary,a,select,input):focus-visible{outline:2px solid #a4eaf2;outline-offset:3px}
body.detail-polish.game-ui[data-game-surface=planner] dialog .dp-header{padding:0 0 12px;background:none;position:static;z-index:auto}
@media(max-width:600px){
 body.detail-polish.game-ui dialog .dp-header{padding:12px;gap:8px}
 body.detail-polish.game-ui dialog .dp-header h2{font-size:17px}
 body.detail-polish.game-ui dialog .dp-header :is(.gear-dialog-actions,.dialog-actions){flex-direction:column-reverse;align-items:flex-end;gap:6px}
 body.detail-polish.game-ui dialog .dp-header .price-controls:not([hidden]){flex-basis:100%}
 body.detail-polish.game-ui .dp-upgrade-result{padding:14px}
 body.detail-polish.game-ui #gear-detail .upgrade-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.detail-polish.game-ui #gear-detail .upgrade-controls label:has(#gear-quality){grid-column:1/-1}
 body.detail-polish.game-ui #detail .dp-merge-controls{gap:10px}
 body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>summary{padding:12px;font-size:14px}
 body.detail-polish.game-ui .dp-upgrade-result .trait-row{gap:12px;align-items:start}
}
@media(prefers-reduced-motion:reduce){body.detail-polish.game-ui .dp-disclosure>summary::after,body.detail-polish.game-ui .dp-all-levels>summary::after{transition:none}}
@media(forced-colors:active){body.detail-polish.game-ui :is(.dp-upgrade-result,.dp-disclosure,.dp-all-levels,.dp-header){background:Canvas;color:CanvasText;border-color:CanvasText}body.detail-polish.game-ui :is(.dp-upgrade-result,.dp-disclosure,.dp-all-levels) :is(p,span,strong,summary){color:CanvasText;background:Canvas}}

body.detail-polish.game-ui dialog .dp-header h2:focus{outline:none}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>summary::before{content:none!important}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>summary::after{position:static!important;background:none!important;border:0!important;width:auto;height:auto;flex:0 0 auto;transform:none}
body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)[open]>summary::after{transform:rotate(90deg)}
body.detail-polish.game-ui #beast-detail .trooper-callout h3{font-size:13px;line-height:1.5;margin:12px 0 5px;color:#bfd7e3}
body.detail-polish.game-ui #beast-detail .trooper-callout h3:first-child{margin-top:0}
body.detail-polish.game-ui #beast-detail .trooper-callout p{margin:0 0 8px;line-height:1.6}

body.detail-polish.game-ui :is(.dp-disclosure,.dp-all-levels)>summary:focus-visible{outline-offset:-3px}

/* Keep compact action clusters intrinsic: a title must yield before Close does. */
body.detail-polish.game-ui dialog .dp-header>.compact-detail-actions{flex:0 0 auto;min-width:0;margin-inline-start:auto}
@media(max-width:600px){body.detail-polish.game-ui dialog .dp-header>.compact-detail-actions{flex-direction:column-reverse;align-items:flex-end;gap:5px}}
body.detail-polish.game-ui #hero-awakening{background:#122b3b;color:#e0edf4;border-color:#52758a}
body.detail-polish.game-ui #hero-awakening .aw-head{background:linear-gradient(135deg,#24465b,#132d3e);color:#eef6fb;border-color:#52758a}
body.detail-polish.game-ui #hero-awakening .aw-head h2{color:#eef6fb;min-width:0}
body.detail-polish.game-ui #hero-awakening :is(a,.aw-effects strong){color:#a4e5ee}
body.detail-polish.game-ui #hero-awakening :is(.aw-note,.aw-control>span,.aw-table-wrap small){color:#b8cedc}
body.detail-polish.game-ui #hero-awakening :is(button,select){background:#203e50;color:#e0edf4;border-color:#577b8f;min-height:44px}
body.detail-polish.game-ui #hero-awakening :is(.aw-unlock,.aw-next,.aw-current){background:#1a3748;border-color:#496b7e}
body.detail-polish.game-ui #hero-awakening .aw-summary{background:linear-gradient(135deg,#204843,#153638);color:#dff3ec;border-color:#659b97}
body.detail-polish.game-ui #hero-awakening :is(.aw-table-wrap,.aw-table-wrap th,.aw-table-wrap td){border-color:#496b7e}
body.detail-polish.game-ui #hero-awakening .aw-table-wrap thead th{background:#203e50;color:#dcecf5}
body.detail-polish.game-ui #hero-awakening .aw-milestone{background:#274c60!important;color:#dcecf5;min-height:44px!important}
body.detail-polish.game-ui #hero-awakening .aw-table-wrap summary{min-height:44px;display:flex;align-items:center}
body.detail-polish.game-ui #hero-awakening .aw-table-wrap{margin-top:14px;max-width:calc(100% - 28px)}
body.detail-polish.game-ui #hero-awakening :is(.aw-skill-tabs,.aw-wall-tabs) button[aria-pressed=true]{background:#31586a!important;border-color:#83c7d9!important;color:#eefaff!important}
body.detail-polish.game-ui #hero-awakening .aw-unlock>summary{line-height:1.6;min-height:44px}
@media(max-width:600px){body.detail-polish.game-ui #hero-awakening .aw-head{flex-wrap:wrap}body.detail-polish.game-ui #hero-awakening .aw-head h2{flex:1 1 calc(100% - 80px)}body.detail-polish.game-ui #hero-awakening #aw-language{order:3;flex-basis:100%}}
body.detail-polish.game-ui #gear-detail .upgrade-controls select{max-width:none}
body.detail-polish.game-ui #gear-detail .dp-selected-upgrade .cost-chip{min-height:44px;gap:10px}
body.detail-polish.game-ui #gear-detail .dp-selected-upgrade .cost-chip-name{font-size:14px;line-height:1.5}
body.detail-polish.game-ui #gear-detail .dp-selected-upgrade .cost-chip-name small{font-size:12px}
body.detail-polish.game-ui #gear-detail .dp-selected-upgrade .cost-chip strong{font-size:16px}
