/* Preserve the League framing while keeping controls legible at smaller sizes. */
#game{touch-action:none}
#touchControls{display:none}
.objective-art{display:none}
.rank-crop{position:relative;display:inline-block;overflow:hidden;flex-shrink:0}
.rank-crop img{position:absolute;max-width:none;object-fit:fill}
#modalCard .next-tier{display:flex;align-items:center;justify-content:center;gap:14px;font-size:22px}
#modalCard .next-tier>span:not(.rank-crop){line-height:1.15}
#modalCard .next-tier small{display:block;margin-top:3px;color:#c8aa6e;font:600 12px/1.2 Spiegel,sans-serif;letter-spacing:2px;text-transform:uppercase}
.objective-alert.out-of-bounds #objectiveClock{color:#ff5252;text-shadow:0 0 12px #b70000}
.objective-alert.out-of-bounds #objectiveInstruction{color:#ffd2ca}
.objective-alert.pit-timer{width:235px;display:flex;flex-direction:column;gap:0;padding:0;border:0;box-shadow:none;text-align:center;background:none!important;filter:drop-shadow(0 3px 5px #000);top:12px}
.pit-timer .objective-art{display:block;align-self:center;width:117.5px;height:99px;background-image:url('assets/objective-reference.webp');background-repeat:no-repeat;background-size:372.5px 137px;background-position:-60.5px 0}
.pit-timer[data-objective=dragon] .objective-art{background-position:-195.5px 0}
.pit-timer[data-objective=lane] .objective-art{position:relative;background:none;filter:drop-shadow(0 0 7px #009bc5)}
.pit-timer[data-objective=lane] .objective-art:before{content:'';position:absolute;left:19px;top:6px;width:80px;height:80px;border:3px solid #f2ca63;border-radius:50%;background:linear-gradient(#00334c22,#00152244),url('assets/rift/minimap.png') center/240px;box-shadow:0 0 0 2px #4a300c,0 0 0 4px #e7b54b,inset 0 0 9px #00111c}
.pit-timer[data-objective=lane] .objective-art:after{content:attr(data-title);position:absolute;bottom:1px;left:-10px;width:137.5px;padding:4px 1px;border:1px solid #b99244;border-radius:5px;background:linear-gradient(#172e36,#061923);color:#ffdf83;text-shadow:0 2px 2px #000;font:700 11px/1 Beaufort,serif;white-space:nowrap}
.pit-timer .objective-symbol,.pit-timer #objectiveTitle,.pit-timer #objectivePhase{display:none}
.pit-timer #objectiveClock{order:2;font:800 45px/.98 Spiegel,sans-serif;letter-spacing:1px;color:#fff;text-shadow:0 3px 2px #000;margin-top:-3px}
.pit-timer .objective-copy{order:3}.pit-timer #objectiveInstruction{font:16px/1.4 Spiegel,sans-serif;color:#fff;white-space:normal;text-shadow:0 2px 3px #000}
.pit-timer #objectiveMove{order:4;text-align:center;font-size:10px;padding:5px 10px;max-width:190px;margin:7px auto 0;background:#07161bbd}
.objective-alert.overtime #objectiveClock,.objective-alert.overtime #objectiveInstruction{color:#ff3a43;text-shadow:0 0 12px #d40025,0 2px 3px #000}
.objective-alert.overtime .objective-art{filter:drop-shadow(0 0 6px #d71429)}
@media(max-width:900px){.objective-alert.pit-timer{transform:translateX(-50%) scale(.74);transform-origin:top center}}
.touch-controls #touchControls{position:fixed;left:16px;bottom:145px;display:flex;align-items:center;gap:12px;max-width:320px;pointer-events:auto}
#touchControls span{font:12px/1.4 Spiegel,sans-serif;color:#e8e0cf;text-shadow:0 1px 3px #000}
#touchControls button{min-width:58px;min-height:46px;background:#071e2a;border:1px solid #c8aa6e;color:#f0dfaf;font:600 14px Beaufort,serif}
.touch-controls .ability{touch-action:none;min-width:48px;min-height:48px}
.touch-controls #notification{bottom:205px!important}
.touch-controls .home-rail button,.touch-controls .training-kind button{min-height:48px!important}
#modalCard{max-height:92dvh;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:1350px){#menu .location-panel .build-status{position:relative;inset:auto;align-self:flex-end;width:100px;height:30px;flex-shrink:0}}
@media(max-width:1350px){#menu .location-panel #startBtn{padding:12px 44px 12px 16px}#menu .home-rail button span{letter-spacing:.01em}#menu .home-rail button[data-shell=achievements] span{font-size:9px}}
@media(min-width:901px) and (max-width:1350px){
 :root{--u:clamp(.72px,min(calc(100vw / 1672),calc(100dvh / 941)),1px);--rail:76px;--right:clamp(335px,34vw,440px)}
 #menu header{height:56px;padding-left:100px}
 #menu header .brand{font-size:26px}#menu header .brand img{left:20px;top:7px;width:38px;height:42px}
 #menu .home-rail{top:56px;width:76px;padding-top:24px}#menu .home-rail button{min-height:78px}#menu .home-rail button span{font-size:11px}#menu .home-rail button[data-shell=achievements] span{font-size:9px}
 #menu .menu-grid{top:68px!important;bottom:28px!important}
 #menu .location-panel h2{font-size:28px!important}#menu .training-kind button{font-size:15px;min-height:42px}
 #menu .section-label{font-size:15px}#menu .session-metrics small{font-size:12px}#menu .tier-picker strong{font-size:29px}
 #menu #displayName{font-size:17px!important}#menu #earnedRankName{font-size:13px}
 #menu .location-panel #startBtn{min-height:54px;font-size:26px!important;margin-bottom:20px}
 #menu .champion-button b{font-size:12px!important}
}
@media(max-width:900px){
 :root{--u:.8px;--rail:0px;--right:100%}
 #menu{overflow-y:auto;overscroll-behavior:contain;padding:0}
 #menu header{position:fixed;inset:0 0 auto;height:58px;padding:0 16px 0 68px;z-index:6;background:#00101af5}
 #menu header .brand{font-size:24px;letter-spacing:1px}#menu header .brand img{left:15px;top:8px;width:35px;height:40px}
 #menu #rankProfile{gap:8px}#menu #profileAvatar{width:36px;height:36px}#menu #displayName{font-size:17px!important;max-width:110px}#menu .rank-crest{gap:5px;padding-left:8px}#menu #earnedBadge{width:35px;height:35px}#menu #earnedRankName{font-size:12px}
 #menu .home-rail{display:flex!important;position:fixed;inset:58px 0 auto;width:auto;height:60px;padding:0;flex-direction:row;z-index:6;border-right:0;border-bottom:1px solid #8e713e;background:#00101af5}
 #menu .home-rail button{flex:1;min-width:0;min-height:60px;height:60px;padding:7px 3px;gap:4px;border-left:0;border-bottom:2px solid transparent}
 #menu .home-rail button svg{width:22px;height:22px}#menu .home-rail button span{font-size:12px}#menu .home-rail button[data-shell=achievements] span{font-size:11px}#menu .home-rail button.active{border-bottom-color:#d7b36b}
 #menu .menu-grid{position:relative!important;inset:auto!important;height:auto!important;flex:none!important;margin:128px 16px 24px!important;padding:0!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;gap:14px!important;align-content:start}
 #menu .hero-info{position:relative;inset:auto;grid-row:1;height:clamp(340px,44dvh,490px);width:100%;min-height:0;pointer-events:auto;touch-action:pan-y}
 #menu .hero-card{padding:18px!important}#menu .hero-card h1{font-size:54px!important}#menu .hero-card>.eyebrow{font-size:14px!important}
 #menu .menu-spells .incoming-icon{width:46px!important;height:46px!important}#menu .menu-spells{gap:14px!important}#menu .incoming-icon kbd{font-size:16px;min-width:24px;height:23px}
 #menu .menu-summoners{gap:20px;margin-top:20px}#menu .menu-summoners img{width:33px;height:33px}#menu .menu-summoners b{font-size:12px}
 #menu .champion-panel{position:relative!important;inset:auto!important;grid-row:2;height:140px!important;width:100%;padding:10px!important;min-height:0}
 #menu #champions{height:108px!important;gap:12px!important}#menu .champion-button{flex:0 0 76px!important;min-width:76px!important;min-height:94px!important;height:94px!important;gap:8px!important}#menu .champion-button>span{line-height:14px}#menu .champion-button img{width:66px!important;height:66px!important}#menu .champion-button b{font-size:12px!important}
 #menu .location-panel{position:relative!important;inset:auto!important;grid-row:3;width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;padding:24px!important}
 #menu .location-panel h2{font-size:31px!important;margin-bottom:18px!important}#menu .training-kind{margin-bottom:22px}#menu .training-kind button{min-height:46px;font-size:17px}
 #menu .section-label{font-size:16px}#menu .tier-picker{min-height:64px;margin-bottom:22px}#menu .tier-picker strong{font-size:32px}#menu .tier-picker .tier-rank{width:62px;height:60px}
 #menu .pass-rules{margin-bottom:22px}#menu .session-metrics b{font-size:38px}#menu .session-metrics small{font-size:13px}
 #menu .arena-picker{min-height:74px;margin-bottom:24px}#menu .arena-picker img{width:120px;height:74px}#menu .arena-picker span{font-size:23px}
 #menu .location-panel #startBtn{min-height:64px;width:100%;font-size:31px!important;margin:0 0 16px!important}
 #menu footer{position:relative;inset:auto;margin:20px 16px;flex-wrap:wrap;gap:10px;font-size:11px}
 #modalCard.dialog-result{margin:0;width:94vw;padding:30px 22px}#modalCard.dialog-result .result-extra{position:static;margin-top:14px}
 #modalCard .result-metrics{gap:8px}#modalCard .result-metrics b{font-size:30px}#modalCard .dialog-actions{flex-wrap:wrap}
 .hud-bottom{max-width:calc(100vw - 24px);bottom:6px!important}.minimap{width:130px!important;height:152px!important;bottom:128px!important;right:10px!important}.minimap canvas{width:122px!important;height:122px!important}
 .tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shell-settings{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 #menu header .brand{font-size:19px}#menu #profileAvatar{display:none}#menu #displayName{max-width:76px}#menu .rank-crest{gap:3px}#menu #earnedRankName{font-size:10px}
 #menu .home-rail button span{font-size:10px}#menu .home-rail button[data-shell=achievements] span{font-size:9px}
 #menu .hero-info{height:350px}#menu .hero-card h1{font-size:43px!important}#menu .hero-card>.eyebrow{font-size:12px!important}
 #menu .location-panel{padding:20px!important}#menu .location-panel h2{font-size:27px!important}#menu .session-metrics small{font-size:10px}#menu .arena-picker img{width:90px}#menu .arena-picker span{font-size:19px}
 .shell-settings{grid-template-columns:1fr}.tier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .hud-bottom .portrait-wrap{display:none}.minimap{width:105px!important;height:126px!important}.minimap canvas{width:98px!important;height:98px!important}
 #touchControls{max-width:210px!important;bottom:132px!important}#touchControls span{font-size:10px}
}
@media(max-height:650px) and (min-width:901px){#menu .location-panel{overflow-y:auto!important}#menu .location-panel #startBtn{margin-top:12px!important}#menu .location-panel h2{font-size:24px!important}#menu .pass-rules,#menu .arena-picker,#menu .tier-picker{margin-bottom:16px}}
