/* Shared game controls. Card art, rarity and event colours remain independent. */
:root{--control-text:#e7e1d3;--control-muted:#aaa493;--control-gold:#d4b878;--control-line:#706b58;--control-fill:#090b0b;--line:#595747;--muted:#aaa99e}
.site-navigation a,.section-heading h1,.equipment-heading h2,.picker-header h2,.filter-heading h3,#filters legend,.catalog-heading,.context-label{font-family:MKRussian,Georgia,serif;font-weight:400}
.site-navigation{gap:32px;border-bottom-color:#8a806044}
.site-navigation a{font-size:20px;color:#d0cbbd;padding:16px 4px 13px;transition:color .15s,border-color .15s;text-shadow:0 1px 3px #000}
.site-navigation a:hover,.site-navigation a[aria-current=page]{color:var(--control-gold)}
.site-navigation a[aria-current=page]{border-bottom-color:var(--control-gold)}
.section-heading{gap:16px;align-items:center}.section-heading h1{font-size:30px}#team-count{border-color:var(--control-line);border-radius:0;color:var(--control-text);background:#080b0bd9}
#save-team,#copy-team,.catalog-sort button,.reset-filters,.close-button,.menu-back{border-radius:0;color:var(--control-text);font-family:MKRussian,Georgia,serif;transition:filter .15s,color .15s;box-shadow:none}
#save-team,#copy-team{position:relative;isolation:isolate;min-height:44px;min-width:140px;padding:8px 24px;border:0;background:transparent;font-size:21px;text-transform:uppercase}
#save-team::before,#copy-team::before{content:"";position:absolute;inset:0;z-index:-1;border:10px solid transparent;border-image:url('/img/controls/FlatButton_Fill_Full_01.png') 40 fill / 10px / 0 stretch;filter:brightness(.045)}
#save-team::after,#copy-team::after{content:"";position:absolute;inset:0;pointer-events:none;border:10px solid transparent;border-image:url('/img/controls/FlatButton_Frame_Full_01.png') 30 / 10px / 0 stretch;filter:sepia(.6) brightness(.72)}
#save-team:not(:disabled):hover,#copy-team:hover{background:transparent;color:#ffe4a5;filter:brightness(1.2)}
#save-team:disabled{opacity:.45;filter:grayscale(.5)}
.catalog-sort button,.reset-filters{min-height:36px;padding:6px 17px;border:0;background:url('/img/controls/CommonButtonLowBacker.png') center/100% 100% no-repeat;font-size:16px}
.catalog-sort button[aria-pressed=true]{color:var(--control-gold);filter:brightness(1.25)}
.catalog-sort button:hover,.reset-filters:hover{color:#ffe4a5;filter:brightness(1.25)}
.catalog-sort button:active,.reset-filters:active,#save-team:not(:disabled):active,#copy-team:active{filter:brightness(.8)}
.event-control{position:relative;max-width:100%}
.event-control::after{content:"✦";position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none;font:24px Georgia,serif;color:#c4bfad}
#team-event{appearance:none;width:300px;max-width:100%;height:44px;padding:8px 42px 8px 20px;border:0;border-radius:0;background:url('/img/controls/CommonButtonLowBacker.png') center/100% 100% no-repeat;color:var(--control-text);font:19px MKRussian,Georgia,serif;cursor:pointer}
#team-event option{background:#0b0d0d;color:#eee8db;font:16px Arial,sans-serif}
.language-picker summary{height:44px;padding:8px 18px;border:0;border-radius:0;background:url('/img/controls/CommonButtonLowBacker.png') center/100% 100% no-repeat;color:var(--control-text);font:18px MKRussian,Georgia,serif}
.language-picker summary:hover{filter:brightness(1.2)}
.language-options{background:#090c0c;border-color:var(--control-line);border-radius:0;padding:6px;box-shadow:0 8px 25px #000b}
.language-options button{border-radius:0;color:var(--control-text);min-height:42px}
.language-options button:hover{background:#c4a76a20}.language-options button[aria-pressed=true]{color:var(--control-gold)}
.language-chevron{color:#c4bfad}
.picker-header{padding: 0 0 12px 0}.picker-header h2{font-size:24px}
.close-button,.menu-back{min-width:36px;min-height:36px;background:#0b0e0e;border:1px solid var(--control-line);font-size:26px;line-height:1}
.close-button:hover,.menu-back:hover{color:var(--control-gold);border-color:var(--control-gold);background:#202018}
#filters{padding: 20px 15px 20px 0}
.filter-heading{gap:8px}.filter-heading h3{font-size:21px}.reset-filters{font-size:15px;padding:6px 12px}
#filters legend{font-size:19px;color:var(--control-text);margin-bottom:10px}
#filters fieldset{border-color:#706b5859}
#filters label{font-size:13px;color:#d2d0c5;min-height:34px;cursor:pointer}
#filters label:hover:not(:has(input:disabled)){color:#ffe4a5}
#filters input[type=checkbox],#filters input[type=radio]{appearance:none;display:grid;place-content:center;width:17px;height:17px;border:1px solid #8c8570;border-radius:0;background:#090d0e;flex:none;cursor:pointer}
#filters input[type=radio]{border-radius:50%}
#filters input:checked{border-color:var(--control-gold);background:#342c1b}
#filters input[type=checkbox]:checked::before{content:"";width:9px;height:5px;border-left:2px solid #efdab0;border-bottom:2px solid #efdab0;transform:rotate(-45deg) translateY(-1px)}
#filters input[type=radio]:checked::before{content:"";width:7px;height:7px;background:#efdab0;border-radius:50%}
#filters input:disabled{cursor:default}#filters label:has(input:disabled){cursor:default}
.catalog-heading{font-size:22px}.catalog-sort{color:var(--control-muted)}
#context-menu{background:#090e0e;border-color:var(--control-line);border-radius:0;box-shadow:0 12px 35px #000b}
#context-menu .context-label{font-size:19px;color:var(--control-text);font-weight:400}
#context-menu .menu-item{border-radius:0;min-height:40px;color:var(--control-text)}
#context-menu button:hover{background:#c4a76a20}#context-menu .danger{color:#e5aaaa}
.value-grid button{border-radius:0;background:#111614;border-color:#5d5b4b;color:var(--control-text)}
.value-grid button.selected{background:#40351d;color:#ffe4a5;border-color:var(--control-gold)}
#share-team input{background:#090e0e;border:1px solid var(--control-line);border-radius:0;color:var(--control-text)}
.equipment-heading h2{font-size:23px}.equipment-heading span{color:var(--control-muted)}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #e4c987;outline-offset:3px}
@media(max-width:760px){.site-navigation{gap:20px}.site-navigation a{font-size:18px}.event-control{margin-left:0;flex:1 1 220px}#team-event{width:100%}.section-heading h1{font-size:27px}#save-team{min-width:120px}.picker-header h2{font-size:21px}.language-picker summary{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.site-navigation a,#save-team,#copy-team,.catalog-sort button,.reset-filters,.close-button,.menu-back{transition:none}}
@media(forced-colors:active){#save-team,#copy-team,.catalog-sort button,.reset-filters,#team-event,.language-picker summary{border:1px solid ButtonText;background:Canvas;color:ButtonText}#filters input{appearance:auto}}
/* Fixed-size corner slices: only straight edges and centre expand. */
.catalog-sort button,.reset-filters,.language-picker summary{background:none;border:8px solid transparent;border-image:url('/img/controls/CommonButtonLowBacker.png') 24 fill / 8px / 0 stretch;padding:2px 10px}
.catalog-sort button,.reset-filters{min-height:36px}
.language-picker summary{padding:0 10px}
#filters input[type=checkbox],#filters input[type=radio]{width:28px;height:28px;border:0;border-radius:0;background:transparent center/contain no-repeat;appearance:none}
#filters input[type=checkbox]{background-image:url('/img/controls/RadioButton_CheckMark_Inactive.png')}
#filters input[type=checkbox]:checked{background-image:url('/img/controls/RadioButton_CheckMark_Active.png')}
#filters input[type=radio]{background-image:url('/img/controls/RadioButton_Dot_Inactive.png')}
#filters input[type=radio]:checked{background-image:url('/img/controls/RadioButton_Dot_Active.png')}
#filters input:checked{background-color:transparent}
#filters input[type=checkbox]:checked::before,#filters input[type=radio]:checked::before{content:none}
.game-select{width:300px;max-width:100%}.game-select::after{display:none}
.game-select-trigger{width:100%;height:44px;padding:0 34px 0 12px;position:relative;text-align:left;border:9px solid transparent;border-image:url('/img/tower-info/frame.png') 32 fill / 9px / 0 stretch;background:#080b09;background-clip:padding-box;color:var(--control-text);font:19px MKRussian,Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.game-select-trigger::after{content:'✦';position:absolute;right:4px;top:50%;transform:translateY(-50%);font:24px Georgia,serif;color:#b5af9d}

.game-select-list{position:fixed;z-index:100;overflow-y:auto;overscroll-behavior:contain;background:#080b09;border:1px solid #6d6958;padding:6px 12px;box-shadow:0 10px 30px #000a;color:var(--control-text);font:18px MKRussian,Georgia,serif;scrollbar-width:thin;scrollbar-color:#777262 #080b09}
.game-select-list [role=option]{min-height:40px;padding:10px 8px;border-bottom:1px solid #6d69583d;cursor:pointer}
.game-select-list [role=option]:last-child{border-bottom:0}
.game-select-list [role=option]:hover,.game-select-list .highlighted{background:#c4a76a18;color:#ecd197}
.game-select-list [aria-selected=true]{color:#ecd197}
@media(max-width:760px){.game-select{width:100%}}
@media(forced-colors:active){#filters input{appearance:auto}.game-select-trigger,.game-select-list{border:1px solid ButtonText;background:Canvas;color:CanvasText}}

.game-select-list{border:9px solid transparent;border-image:url("/img/tower-info/frame.png") 32 / 9px / 0 stretch;background-clip:padding-box;padding:2px 8px}

/* Fill up to the shaped border without painting outside its concave corners. */
.game-select-trigger,.game-select-list{background:
radial-gradient(circle at top left,transparent 6px,#080b09 6.5px) top left/51% 51% no-repeat,
radial-gradient(circle at top right,transparent 6px,#080b09 6.5px) top right/51% 51% no-repeat,
radial-gradient(circle at bottom left,transparent 6px,#080b09 6.5px) bottom left/51% 51% no-repeat,
radial-gradient(circle at bottom right,transparent 6px,#080b09 6.5px) bottom right/51% 51% no-repeat;background-origin:border-box;background-clip:border-box}
.game-select-trigger:focus-visible{outline:none;filter:brightness(1.35)}
@media(forced-colors:active){.game-select-trigger:focus-visible{outline:2px solid Highlight}.game-select-trigger,.game-select-list{background:Canvas}}
