
/* Reference art is sliced from the supplied 1505 x 1045 composition.
   A proportional desktop canvas preserves its geometry; mobile reflows the live controls. */
body{--lu:min(1px,calc(100vw / 1505))}
.marathon-ranking-link{display:flex;align-items:center;justify-content:center;gap:calc(12 * var(--lu));width:100%;min-height:calc(58 * var(--lu));background:transparent url(assets/lobby-v2/button-secondary.webp) center/100% 100% no-repeat;border:0;color:#fff0df;font:800 calc(20 * var(--lu)) Georgia,serif}.marathon-ranking-link img{width:calc(25 * var(--lu));filter:invert(95%)}.marathon-ranking-link:hover{background-color:transparent;filter:brightness(1.12)}
.marathon-screen.is-ladder{padding:0;overflow-x:hidden;background:#02121f url(assets/marathon-source-v1/left-cliffs.webp) left top/calc(38 * var(--lu)) calc(1045 * var(--lu)) repeat-y}
.is-ladder>.marathon-hero,.is-ladder>.marathon-intro,.is-ladder>.marathon-layout{display:none}
.marathon-ladder{position:relative;isolation:isolate;width:calc(1505 * var(--lu));height:calc(1045 * var(--lu));padding:calc(110 * var(--lu)) calc(35 * var(--lu)) calc(36 * var(--lu)) calc(40 * var(--lu));margin:0 auto;font-family:'Times New Roman',serif;background:url(assets/marathon-v1/route-3.webp) right top/calc(510 * var(--lu)) calc(237 * var(--lu)) no-repeat}
.marathon-ladder::before{content:'';position:absolute;inset:0 0 auto;height:calc(90 * var(--lu));background:#021322e8;border-bottom:calc(1 * var(--lu)) solid #2c596c;z-index:-1}
.marathon-ladder::after{content:'';position:absolute;left:calc(1094 * var(--lu));top:0;width:calc(180 * var(--lu));height:calc(235 * var(--lu));background:url(assets/marathon-source-v1/header-hourglass.webp) center/100% 100% no-repeat;z-index:-1}
body[data-screen=challenges]:has(.is-ladder) header{position:fixed;left:50%;right:auto;top:0;width:calc(1505 * var(--lu));max-width:none;height:calc(90 * var(--lu));transform:translateX(-50%);padding:0;border-bottom:0;gap:0;background:transparent}
body[data-screen=challenges]:has(.is-ladder) header .brand{position:absolute;left:calc(263 * var(--lu));top:calc(2 * var(--lu));margin:0;width:calc(141 * var(--lu));height:calc(84 * var(--lu))}
body[data-screen=challenges]:has(.is-ladder) .brand-logo{content:url(assets/marathon-source-v1/logo.webp);width:calc(141 * var(--lu));height:calc(84 * var(--lu));object-fit:contain}
body[data-screen=challenges]:has(.is-ladder) .tools{position:absolute;left:calc(1276 * var(--lu));top:calc(14 * var(--lu));gap:calc(15 * var(--lu));margin:0}
body[data-screen=challenges]:has(.is-ladder) .tools button{width:calc(84 * var(--lu));height:calc(73 * var(--lu));padding:calc(15 * var(--lu));border:calc(15 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/sound-frame.webp) 15 /calc(15 * var(--lu));background:#061b2b;border-radius:0}
body[data-screen=challenges]:has(.is-ladder) .tools img{width:calc(35 * var(--lu));height:calc(35 * var(--lu))}
body[data-screen=challenges]:has(.is-ladder) #settings{border-image-source:url(assets/marathon-source-v1/settings-frame.webp)}
.is-ladder .marathon-back{left:calc((100vw - calc(1505 * var(--lu)))/2 + calc(53 * var(--lu)));top:calc(14 * var(--lu));width:calc(193 * var(--lu));height:calc(70 * var(--lu));background:transparent url(assets/marathon-source-v1/back.webp) center/100% 100% no-repeat;border:0;padding:0}
.is-ladder .marathon-back>*{opacity:0}
.ladder-top{position:absolute;left:calc(419 * var(--lu));top:calc(9 * var(--lu));width:calc(624 * var(--lu));height:calc(76 * var(--lu))}.ladder-top h1{margin:0;line-height:0}.ladder-title-art{display:block;width:100%;height:100%}
.ladder-worlds{display:flex;align-items:center;gap:calc(10 * var(--lu));width:calc(1054 * var(--lu));height:calc(116 * var(--lu));overflow-x:auto;scrollbar-width:none;margin:0;padding:0}
.ladder-worlds button{position:relative;isolation:isolate;flex:0 0 calc(300 * var(--lu));width:calc(300 * var(--lu));height:calc(103 * var(--lu));border:0;border-radius:0;padding:0;margin:0;background:#031523;color:#e1effa;font:700 calc(28 * var(--lu))/calc(34 * var(--lu)) 'Times New Roman',serif;box-shadow:none;overflow:hidden}
.ladder-worlds button::after{content:'';position:absolute;inset:0;border:calc(12 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/world-frame.webp) 12 16 /calc(12 * var(--lu)) calc(16 * var(--lu));pointer-events:none;z-index:3}
.ladder-worlds button[aria-pressed=true]{flex-basis:calc(329 * var(--lu));width:calc(329 * var(--lu));height:calc(116 * var(--lu));color:#101820}
.ladder-worlds button[aria-pressed=true]::after{border-image:url(assets/marathon-source-v1/world-frame-selected.webp) 16 32 16 32 /calc(16 * var(--lu)) calc(32 * var(--lu))}
.ladder-worlds img{position:absolute;left:calc(16 * var(--lu));bottom:calc(10 * var(--lu));width:calc(100% - calc(32 * var(--lu)));height:calc(50 * var(--lu));object-fit:cover;z-index:-1;clip-path:none}
.ladder-worlds span{position:absolute;top:calc(10 * var(--lu));left:calc(20 * var(--lu));right:calc(20 * var(--lu));line-height:calc(34 * var(--lu));text-align:center;padding:0;color:inherit;white-space:nowrap;background:#031523}
.ladder-worlds [aria-pressed=true] span{top:calc(13 * var(--lu));left:calc(36 * var(--lu));right:calc(36 * var(--lu));height:calc(40 * var(--lu));background:#f4e5c7 url(assets/marathon-source-v1/parchment.webp) repeat}
.ladder-worlds button:hover{background-color:#031523;filter:brightness(1.08)}
.ladder-worlds .ladder-world-next{flex:0 0 calc(87 * var(--lu));width:calc(87 * var(--lu));height:calc(98 * var(--lu));margin-left:calc(4 * var(--lu));background:url(assets/marathon-source-v1/world-next.webp) center/100% 100% no-repeat}
.ladder-world-next::after{display:none}
.ladder-layout{display:grid;grid-template-columns:minmax(0,888fr) minmax(0,524fr);gap:calc(19 * var(--lu));align-items:start;margin-top:calc(8 * var(--lu))}
.ladder-main{min-width:0}.ladder-filters{display:grid;grid-template-columns:calc(390 * var(--lu)) minmax(0,468fr);gap:calc(25 * var(--lu));height:calc(60 * var(--lu));margin:0 0 calc(15 * var(--lu));position:relative;z-index:20;padding-right:calc(5 * var(--lu))}
.game-dropdown{position:relative;min-width:0}.game-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:calc(10 * var(--lu));width:100%;height:calc(60 * var(--lu));padding:0 calc(16 * var(--lu)) 0 calc(20 * var(--lu));border:calc(12 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/dropdown-frame.webp) 12 24 /calc(12 * var(--lu)) calc(24 * var(--lu));border-radius:0;box-shadow:none;background:#f3e1bb url(assets/marathon-source-v1/parchment.webp) repeat;color:#11191e;font:700 calc(27 * var(--lu))/calc(30 * var(--lu)) 'Times New Roman',serif;text-align:left}
.game-dropdown-trigger>span{min-width:0;white-space:nowrap}.game-dropdown-trigger>img{width:calc(20 * var(--lu));height:calc(20 * var(--lu));flex:none;transform:rotate(90deg)}
.game-dropdown-trigger[aria-expanded=true]>img{transform:rotate(-90deg)}
.game-dropdown-trigger:is(:hover,:active,[aria-expanded=true]){background:#f3e1bb url(assets/marathon-source-v1/parchment.webp) repeat;filter:brightness(1.04)}
.game-dropdown-list{position:absolute;top:calc(100% + calc(3 * var(--lu)));left:0;right:0;z-index:50;max-height:calc(320 * var(--lu));overflow-y:auto;overscroll-behavior:contain;padding:calc(7 * var(--lu)) calc(3 * var(--lu));border:calc(15 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/table-frame.webp) 20 /calc(15 * var(--lu));background:#031b2b;box-shadow:0 calc(8 * var(--lu)) calc(20 * var(--lu)) #000b;scrollbar-width:thin;scrollbar-color:#4bc6da #061e2d}
.game-dropdown-list[hidden]{display:none}.game-dropdown-list [role=option]{position:relative;display:flex;align-items:center;min-height:44px;padding:calc(10 * var(--lu)) calc(42 * var(--lu)) calc(10 * var(--lu)) calc(17 * var(--lu));margin:0;color:#d9edf3;font:700 max(16px,calc(24 * var(--lu)))/1.3 'Times New Roman',serif;cursor:pointer;overflow-wrap:normal;word-break:normal;border:1px solid transparent;border-bottom-color:#315568}
.game-dropdown-list [role=option]:last-child{border-bottom-color:transparent}
.game-dropdown-list [role=option]:is(:hover,.is-active){background:#123d50;border-color:#53d5e3;color:#fff3d9}.game-dropdown-list [role=option][aria-selected=true]{color:#8ef5f4;background:#103847;border-color:#3a9caa}
.game-dropdown-list [role=option][aria-selected=true]::after{content:'';position:absolute;right:10px;top:50%;width:21px;height:21px;transform:translateY(-50%);background:#8ef5f4;mask:url(assets/icons/check-circle.svg) center/contain no-repeat}
#ladder-group-control :is(.game-dropdown-trigger>span,[role=option]){white-space:nowrap}
.ladder-board{position:relative;height:calc(699 * var(--lu));padding:0;margin:0;border:0;border-radius:0;background:#031523;box-shadow:none}
.ladder-board::before,.ladder-personal::before{content:'';position:absolute;inset:0;border:calc(20 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/table-frame.webp) 20 /calc(20 * var(--lu));pointer-events:none;z-index:8}
.ladder-board-title{position:absolute;top:calc(12 * var(--lu));left:calc(38 * var(--lu));right:calc(18 * var(--lu));height:calc(93 * var(--lu));padding:0}.ladder-board-title h2{margin:0;padding:0;width:calc(590 * var(--lu));font:700 calc(42 * var(--lu))/calc(50 * var(--lu)) 'Times New Roman',serif;color:#fff0dc;letter-spacing:-.4px;white-space:nowrap}.ladder-board-title p{margin:0;font:700 calc(27 * var(--lu))/calc(32 * var(--lu)) 'Times New Roman',serif;color:#70f3f3}
#ladder-data-mode{position:absolute;right:0;top:calc(9 * var(--lu));display:flex;align-items:center;justify-content:center;gap:calc(7 * var(--lu));width:calc(241 * var(--lu));height:calc(38 * var(--lu));padding:0 calc(8 * var(--lu));border:calc(8 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/demo-badge-frame.webp) 8 /calc(8 * var(--lu));border-radius:0;background:#031523;color:#dbeaf6;font:calc(15 * var(--lu))/calc(18 * var(--lu)) 'Times New Roman',serif;box-shadow:none;white-space:nowrap}
#ladder-data-mode img{width:calc(22 * var(--lu));height:calc(22 * var(--lu))}
.ladder-board table{position:absolute;top:calc(105 * var(--lu));left:calc(19 * var(--lu));width:calc(100% - calc(38 * var(--lu)));border-collapse:collapse;table-layout:fixed;font:700 calc(25 * var(--lu))/calc(28 * var(--lu)) 'Times New Roman',serif;color:#f3f0ee}
.ladder-rank-col{width:calc(140 * var(--lu))}.ladder-time-col{width:calc(230 * var(--lu))}
.ladder-board th{height:calc(43 * var(--lu));border-top:calc(1 * var(--lu)) solid #517487;border-bottom:calc(1 * var(--lu)) solid #517487;padding:0 calc(10 * var(--lu));text-align:left;color:#cedcf4;font:400 calc(21 * var(--lu))/calc(25 * var(--lu)) 'Times New Roman',serif}
.ladder-board th:first-child{text-align:center}.ladder-board th:nth-child(2){padding-left:calc(96 * var(--lu))}.ladder-board th:last-child{text-align:right;padding-right:calc(69 * var(--lu))}
.ladder-board td{height:calc(58.5 * var(--lu));padding:0 calc(10 * var(--lu));border-bottom:calc(1 * var(--lu)) solid #385b71;vertical-align:middle;white-space:nowrap}
.ladder-board td:first-child{position:relative;text-align:center;font:calc(32 * var(--lu))/calc(36 * var(--lu)) 'Times New Roman',serif}.ladder-board td:last-child{text-align:right;padding-right:calc(50 * var(--lu));font:700 calc(28 * var(--lu))/calc(32 * var(--lu)) 'Times New Roman',serif;font-variant-numeric:lining-nums tabular-nums}
.ladder-avatar{display:inline-block;width:calc(56 * var(--lu));height:calc(56 * var(--lu));margin-right:calc(30 * var(--lu));vertical-align:middle;border:0;border-radius:50%;object-fit:contain}
.podium img{position:absolute;width:calc(98 * var(--lu));height:calc(62 * var(--lu));object-fit:contain;left:50%;top:50%;transform:translate(-50%,-50%)}
.ladder-board .is-you td{background:#07364a;color:#5cffff}.ladder-board .ladder-empty{height:calc(210 * var(--lu));white-space:normal;text-align:center;font-size:calc(24 * var(--lu));padding:calc(20 * var(--lu))}
.ladder-pagination{position:absolute;left:0;right:0;top:calc(557 * var(--lu));height:calc(52 * var(--lu));display:flex;align-items:center;justify-content:center;gap:calc(27 * var(--lu));font:calc(20 * var(--lu))/calc(26 * var(--lu)) 'Times New Roman',serif}
.ladder-pagination button{width:calc(44 * var(--lu));height:calc(38 * var(--lu));padding:0;border:0;border-radius:0;background:url(assets/marathon-source-v1/pagination-prev.webp) center/100% 100% no-repeat;box-shadow:none}.ladder-pagination #ladder-next{background-image:url(assets/marathon-source-v1/pagination-next.webp)}.ladder-pagination button img{opacity:0;width:calc(20 * var(--lu));height:calc(20 * var(--lu))}.ladder-pagination button:disabled{opacity:.6;cursor:default}
.ladder-you{position:absolute;left:calc(8 * var(--lu));right:calc(9 * var(--lu));top:calc(608 * var(--lu));height:calc(82 * var(--lu));padding:0;border:0;border-radius:0;outline:0;box-shadow:none;background:#043044;color:#4df6fc}
.ladder-you::after{content:'';position:absolute;inset:0;border:calc(12 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/self-frame.webp) 12 /calc(12 * var(--lu));pointer-events:none}
.ladder-local-rank{position:absolute;left:calc(40 * var(--lu));top:calc(19 * var(--lu));font:calc(36 * var(--lu))/calc(42 * var(--lu)) 'Times New Roman',serif}.ladder-local-avatar{position:absolute;left:calc(134 * var(--lu));top:calc(5 * var(--lu));width:calc(74 * var(--lu));height:calc(74 * var(--lu));object-fit:contain;border-radius:50%}.ladder-you strong{position:absolute;left:calc(225 * var(--lu));top:calc(23 * var(--lu));font:700 calc(25 * var(--lu))/calc(30 * var(--lu)) 'Times New Roman',serif}.ladder-you #ladder-local-time{position:absolute;left:calc(475 * var(--lu));top:calc(20 * var(--lu));margin:0;font:700 calc(30 * var(--lu))/calc(36 * var(--lu)) 'Times New Roman',serif;white-space:nowrap}
.ladder-you button{position:absolute;top:calc(16 * var(--lu));right:calc(10 * var(--lu));width:calc(214 * var(--lu));height:calc(50 * var(--lu));margin:0;padding:0 calc(10 * var(--lu));border:calc(10 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/position-frame.webp) 10 /calc(10 * var(--lu));border-radius:0;background:#031c2c;color:#d8f4ff;font:700 calc(18 * var(--lu))/calc(22 * var(--lu)) 'Times New Roman',serif}
.ladder-personal{position:relative;isolation:isolate;height:calc(772 * var(--lu));margin-top:calc(3 * var(--lu));padding:0;border:0;border-radius:0;background:#031523 url(assets/marathon-source-v1/panel-fill.webp) repeat;box-shadow:none;overflow:visible;text-align:center}
.ladder-personal::before{border-image-source:url(assets/marathon-source-v1/personal-frame.webp)}
.ladder-timer{position:absolute;top:calc(13 * var(--lu));left:calc(161 * var(--lu));width:calc(189 * var(--lu));height:calc(121 * var(--lu));visibility:visible;object-fit:contain}
.ladder-personal h2{position:absolute;left:0;right:0;top:calc(143 * var(--lu));margin:0;font:700 calc(32 * var(--lu))/calc(40 * var(--lu)) 'Times New Roman',serif;color:#3cf8fa}
#ladder-best{position:absolute;top:calc(178 * var(--lu));left:calc(30 * var(--lu));right:calc(30 * var(--lu));height:calc(86 * var(--lu));display:flex;justify-content:center;align-items:center;font:900 calc(65 * var(--lu))/calc(78 * var(--lu)) Georgia,serif;color:#fff0db;white-space:nowrap}
#ladder-best img{width:calc(356 * var(--lu));height:calc(74 * var(--lu));object-fit:contain}
.ladder-reference-local #ladder-best{font-size:calc(35 * var(--lu))}
#ladder-rank{position:absolute;left:0;right:0;top:calc(262 * var(--lu));margin:0;font:700 calc(30 * var(--lu))/calc(36 * var(--lu)) 'Times New Roman',serif;color:#a3f6f5}
.ladder-portal{position:absolute;left:calc(18 * var(--lu));top:calc(301 * var(--lu));width:calc(223 * var(--lu));height:calc(188 * var(--lu));object-fit:fill;z-index:1}
.ladder-character-window{position:absolute;left:calc(250 * var(--lu));top:calc(267 * var(--lu));width:calc(304 * var(--lu));height:calc(224 * var(--lu));z-index:2;overflow:visible}.ladder-personal-art{display:block;width:100%;height:100%;object-fit:fill;transform:none;visibility:visible}
.ladder-route{position:absolute;left:calc(17 * var(--lu));right:calc(16 * var(--lu));top:calc(487 * var(--lu));height:calc(130 * var(--lu));padding:0;border:0;background:#031523;isolation:isolate;text-align:left;overflow:hidden;z-index:4}
.ladder-route::after{content:'';position:absolute;inset:0;border:calc(10 * var(--lu)) solid transparent;border-image:url(assets/marathon-source-v1/route-frame.webp) 10 /calc(10 * var(--lu));pointer-events:none}
.ladder-route>img{position:absolute;left:calc(10 * var(--lu));top:calc(7 * var(--lu));right:calc(10 * var(--lu));width:calc(100% - calc(20 * var(--lu)));height:calc(57 * var(--lu));object-fit:cover;z-index:0;opacity:1}
.ladder-route h3{position:absolute;left:calc(26 * var(--lu));right:calc(10 * var(--lu));top:calc(69 * var(--lu));margin:0;font:700 calc(24 * var(--lu))/calc(29 * var(--lu)) 'Times New Roman',serif;color:#fff4e7;white-space:nowrap;text-shadow:none}
.ladder-route p{position:absolute;left:calc(26 * var(--lu));right:calc(10 * var(--lu));top:calc(96 * var(--lu));margin:0;font:calc(16 * var(--lu))/calc(21 * var(--lu)) 'Times New Roman',serif;color:#aeffff;white-space:nowrap}
.ladder-personal .marathon-play{position:absolute;left:calc(10 * var(--lu));right:calc(10 * var(--lu));top:calc(623 * var(--lu));width:calc(100% - calc(20 * var(--lu)));height:calc(98 * var(--lu));min-height:0;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:calc(20 * var(--lu));border:calc(22 * var(--lu)) solid transparent;border-left-width:calc(65 * var(--lu));border-right-width:calc(65 * var(--lu));border-image:url(assets/marathon-source-v1/play-frame.webp) 22 65 /calc(22 * var(--lu)) calc(65 * var(--lu));border-radius:0;background:#f4e3bf url(assets/marathon-source-v1/parchment.webp) repeat;box-shadow:none;color:#081b29;font:900 calc(26 * var(--lu))/calc(32 * var(--lu)) 'Times New Roman',serif;letter-spacing:-.6px;white-space:nowrap}
.ladder-personal .marathon-play img{width:calc(48 * var(--lu));height:calc(48 * var(--lu));flex:none}
.ladder-personal .marathon-play:is(:hover,:active){background:#f4e3bf url(assets/marathon-source-v1/parchment.webp) repeat;filter:brightness(1.06)}
.ladder-personal .ladder-disclaimer{position:absolute;left:calc(25 * var(--lu));right:calc(25 * var(--lu));bottom:calc(19 * var(--lu));margin:0;font:calc(15 * var(--lu))/calc(20 * var(--lu)) 'Times New Roman',serif;color:#c4def2}
.ladder-reference-local #ladder-best{font-size:calc(35 * var(--lu));white-space:normal;line-height:calc(42 * var(--lu))}

@media(max-width:760px){
 body{--lu:1px}
 .marathon-screen.is-ladder{background-size:38px auto}
 .marathon-ladder{width:100%;height:auto;min-height:100%;padding:90px 12px 24px;background-size:360px 250px;background-position:right top}
 .marathon-ladder::before{height:70px}.marathon-ladder::after{left:auto;right:0;width:150px;height:196px}
 body[data-screen=challenges]:has(.is-ladder) header{width:100%;height:70px}
 body[data-screen=challenges]:has(.is-ladder) header .brand{left:113px;top:4px;width:95px;height:57px}
 body[data-screen=challenges]:has(.is-ladder) .brand-logo{width:95px;height:57px}
 body[data-screen=challenges]:has(.is-ladder) .tools{left:auto;right:8px;top:10px;gap:6px}
 body[data-screen=challenges]:has(.is-ladder) .tools button{width:44px;height:44px;padding:3px;border-width:10px;border-image-width:10px}
 body[data-screen=challenges]:has(.is-ladder) .tools img{width:24px;height:24px}
 .is-ladder .marathon-back{left:7px;top:12px;width:105px;height:40px}
 .ladder-top{position:static;width:100%;height:auto;margin-bottom:18px}.ladder-title-art{height:auto;width:100%}
 .ladder-worlds{width:100%;height:98px;gap:7px;margin-bottom:12px}
 .ladder-worlds button,.ladder-worlds button[aria-pressed=true]{flex:0 0 230px;width:230px;height:94px;font-size:23px;line-height:28px}
 .ladder-worlds span,.ladder-worlds [aria-pressed=true] span{top:10px;left:25px;right:25px;line-height:28px;height:32px}
 .ladder-worlds img{left:13px;bottom:10px;width:calc(100% - 26px);height:43px}
 .ladder-worlds .ladder-world-next{flex-basis:55px;width:55px;height:80px}
 .ladder-layout{display:block;margin-top:0}.ladder-filters{display:flex;gap:8px;height:auto;margin-bottom:14px;padding:0}.ladder-filters .game-dropdown{flex:1;min-width:0}
 .game-dropdown-trigger{height:auto;min-height:56px;padding:0 5px;font-size:21px;line-height:26px;border-width:12px 24px}.game-dropdown-trigger>span{white-space:normal}.game-dropdown-trigger>img{width:16px;height:16px}
 .game-dropdown-list{max-height:260px;padding:4px 0;border-width:12px;border-image-width:12px}.game-dropdown-list [role=option]{min-height:48px;font-size:20px;line-height:26px;padding:10px 40px 10px 14px}
 .ladder-board{height:auto;padding:17px 16px 14px}.ladder-board::before{border-width:15px;border-image-width:15px}
 .ladder-board-title{position:static;height:auto;padding:0}.ladder-board-title h2{width:auto;white-space:normal;font-size:25px;line-height:30px;margin-bottom:4px}.ladder-board-title p{font-size:21px;line-height:27px}
 #ladder-data-mode{position:static;width:225px;height:30px;font-size:13px;line-height:17px;gap:5px;margin:5px 0 8px}#ladder-data-mode img{width:18px;height:18px}
 .ladder-board table{position:static;width:100%;margin-top:14px;font-size:17px;line-height:22px}.ladder-rank-col{width:50px}.ladder-time-col{width:96px}
 .ladder-board th{height:34px;font-size:15px;line-height:20px;padding:0 3px}.ladder-board th:nth-child(2){padding-left:48px}.ladder-board th:last-child{padding-right:0}
 .ladder-board td{height:58px;padding:0 3px}.ladder-board td:first-child{font-size:27px;line-height:32px}.ladder-board td:last-child{font-size:19px;line-height:24px;padding-right:0}
 .ladder-avatar{width:36px;height:36px;margin-right:8px}.podium img{width:58px;height:42px}.ladder-board .ladder-empty{font-size:20px;height:170px;padding:15px}
 .ladder-pagination{position:static;height:50px;margin-top:3px;gap:22px;font-size:19px}.ladder-pagination button{width:40px;height:35px}
 .ladder-you{position:relative;inset:auto;width:100%;height:135px;margin-top:4px}.ladder-you::after{border-width:10px;border-image-width:10px}
 .ladder-local-rank{left:9px;top:21px;font-size:26px;line-height:31px}.ladder-local-avatar{left:50px;top:10px;width:50px;height:50px}.ladder-you strong{left:108px;top:24px;font-size:20px;line-height:25px}.ladder-you #ladder-local-time{left:auto;right:12px;top:24px;font-size:22px;line-height:27px}
 .ladder-you button{left:12px;right:12px;bottom:10px;top:auto;width:auto;height:45px;font-size:18px}
 .ladder-personal{--lu:min(1px,calc((100vw - 24px) / 524));width:100%;height:calc(772 * var(--lu));margin-top:18px}
}
@media(max-width:760px){.ladder-filters{flex-direction:column}.ladder-filters .game-dropdown{width:100%;flex:auto}}
@media(max-width:360px){.ladder-rank-col{width:38px}.ladder-time-col{width:80px}.ladder-board table{font-size:15px}.ladder-avatar{width:31px;height:31px;margin-right:5px}.ladder-board th:nth-child(2){padding-left:39px}.ladder-board td:last-child{font-size:17px}.podium img{width:48px;height:38px}.ladder-local-avatar{left:43px;width:45px;height:45px}.ladder-you strong{left:93px;font-size:18px}.ladder-you #ladder-local-time{font-size:18px}}

#ladder-rank{left:calc(130 * var(--lu));right:auto;text-align:left}
.ladder-board::before{border-image-slice:20 20 8 20;border-image-width:calc(20 * var(--lu)) calc(20 * var(--lu)) calc(8 * var(--lu)) calc(20 * var(--lu))}
.ladder-you::after{border-image-slice:8 10 5 14;border-image-width:calc(8 * var(--lu)) calc(10 * var(--lu)) calc(5 * var(--lu)) calc(14 * var(--lu))}
.ladder-personal{background:#021322}
.marathon-ranking-link{gap:12px;min-height:58px;font:800 20px Georgia,serif}.marathon-ranking-link img{width:25px}
/* Final source-aligned seams and reference art strips. */
.marathon-ladder{background-image:url(assets/marathon-source-v1/header-lower.webp),url(assets/marathon-v1/route-3.webp);background-position:right calc(90 * var(--lu)),right top;background-size:calc(414 * var(--lu)) calc(147 * var(--lu)),calc(510 * var(--lu)) calc(237 * var(--lu));background-repeat:no-repeat}
body[data-screen=challenges]:has(.is-ladder) .tools button{display:grid;place-items:center;padding:0}
.ladder-personal{background:#021322;background-image:url(assets/marathon-source-v1/personal-top.webp),url(assets/marathon-source-v1/personal-left.webp),url(assets/marathon-source-v1/personal-right.webp);background-position:left top,left top,right top;background-size:100% calc(142 * var(--lu)),calc(86 * var(--lu)) calc(624 * var(--lu)),calc(80 * var(--lu)) calc(624 * var(--lu));background-repeat:no-repeat}
.game-dropdown-trigger,.game-dropdown-trigger:is(:hover,:active,[aria-expanded=true]),.game-dropdown-list [role=option][aria-selected=true],.ladder-worlds [aria-pressed=true] span,.ladder-personal .marathon-play,.ladder-personal .marathon-play:is(:hover,:active){background-size:100% 100%;background-repeat:no-repeat}
.ladder-worlds .ladder-world-portal{display:none}
.ladder-worlds [data-ladder-world="1"][aria-pressed=true] .ladder-world-portal{display:block;left:calc(19 * var(--lu));top:calc(11 * var(--lu));bottom:auto;width:calc(95 * var(--lu));height:calc(93 * var(--lu));z-index:1;object-fit:fill}
.ladder-worlds [data-ladder-world="1"][aria-pressed=true] span{left:calc(50 * var(--lu));right:calc(28 * var(--lu))}
.ladder-board tbody tr:nth-child(-n+4) td{height:calc(60 * var(--lu))}.ladder-board tbody tr:nth-child(n+5) td{height:calc(57 * var(--lu))}
@media(max-width:760px){.marathon-ladder{background-size:300px 107px,360px 250px;background-position:right 70px,right top}.ladder-worlds [data-ladder-world="1"][aria-pressed=true] .ladder-world-portal{width:76px;height:74px;left:14px;top:10px}.ladder-worlds [data-ladder-world="1"][aria-pressed=true] span{left:60px;right:15px}.ladder-board tbody tr:nth-child(n) td{height:58px}}

/* The supplied scene includes both the portal and Zig; keep it continuous
   behind the live stats instead of showing two rectangular copies. */
.ladder-personal:has(.ladder-idle-video) .ladder-portal{display:none}
.ladder-character-window:has(.ladder-idle-video){inset:0;width:100%;height:100%;z-index:-1;overflow:hidden}
.ladder-idle-video{object-fit:cover;object-position:center 140%;pointer-events:none}
.marathon-ladder::before{background:#021322e8 url(assets/marathon-source-v1/left-cliffs.webp) left top/calc(38 * var(--lu)) calc(1045 * var(--lu)) no-repeat}
.ladder-filters{grid-template-columns:calc(390 * var(--lu)) calc(468 * var(--lu));gap:calc(27 * var(--lu));padding-right:0}
.game-dropdown-trigger{border-left-width:calc(24 * var(--lu));border-right-width:calc(24 * var(--lu));padding-left:calc(24 * var(--lu));padding-right:calc(8 * var(--lu))}
.ladder-personal .marathon-play{justify-content:flex-start;padding-left:calc(12 * var(--lu));gap:calc(8 * var(--lu))}
.ladder-personal .marathon-play img{width:calc(58 * var(--lu));height:calc(62 * var(--lu))}
.marathon-ladder[data-demo=true] #ladder-play span{display:block;flex:none;width:calc(267 * var(--lu));height:calc(33 * var(--lu));font-size:0;background:url(assets/marathon-source-v1/play-label.webp) center/100% 100% no-repeat}
@media(max-width:760px){.ladder-filters{gap:8px}.game-dropdown-trigger{padding-left:8px;padding-right:4px}}
/* Keep the concurrent idle animation inside the character's source rectangle.
   The source portal and fallback portrait retain their reference coordinates. */
.ladder-personal:has(.ladder-idle-video) .ladder-portal{display:block}
.ladder-character-window:has(.ladder-idle-video){inset:auto;left:calc(250 * var(--lu));top:calc(267 * var(--lu));width:calc(304 * var(--lu));height:calc(224 * var(--lu));z-index:2;overflow:hidden}
.ladder-static-portrait{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:fill}
.ladder-character-window .ladder-idle-video{position:absolute;left:calc(-250 * var(--lu));top:calc(-357 * var(--lu));width:calc(524 * var(--lu));height:calc(772 * var(--lu));object-fit:cover;object-position:center bottom;transform:none;opacity:0}
.ladder-character-window .ladder-idle-video[src][data-ready=true]{opacity:1}
.ladder-motion-mask{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 9%,#000 91%,transparent);mask-composite:intersect}
@media(max-width:760px){.ladder-layout{container-type:inline-size}.ladder-personal{--lu:min(1px,calc(100cqw / 524))}}
@media(max-width:760px){.ladder-board{padding-left:22px;padding-right:22px}.ladder-rank-col{width:55px}.ladder-layout{overflow-x:clip}.ladder-board::before{border-image-width:15px 15px 8px 15px}}
@media(max-width:360px){.ladder-rank-col{width:44px}.podium img{width:46px}}
.marathon-ladder[data-demo=true] .ladder-worlds [data-ladder-world="1"][aria-pressed=true]{background:url(assets/marathon-source-v1/world-frame-selected.webp) center/100% 100% no-repeat}
.marathon-ladder[data-demo=true] .ladder-worlds [data-ladder-world="2"][aria-pressed=false]{background:url(assets/marathon-source-v1/world-tab-2.webp) center/100% 100% no-repeat}
.marathon-ladder[data-demo=true] .ladder-worlds [data-ladder-world="0"][aria-pressed=false]{background:url(assets/marathon-source-v1/world-tab-3.webp) center/100% 100% no-repeat}
.marathon-ladder[data-demo=true] .ladder-worlds :is([data-ladder-world="1"][aria-pressed=true],[data-ladder-world="2"][aria-pressed=false],[data-ladder-world="0"][aria-pressed=false])::after{display:none}
.marathon-ladder[data-demo=true] .ladder-worlds :is([data-ladder-world="1"][aria-pressed=true],[data-ladder-world="2"][aria-pressed=false],[data-ladder-world="0"][aria-pressed=false])>*{opacity:0}
.ladder-you button::before{content:'';display:inline-block;vertical-align:middle;width:calc(30 * var(--lu));height:calc(31 * var(--lu));margin-right:calc(6 * var(--lu));background:url(assets/marathon-source-v1/position-icon.webp) center/100% 100% no-repeat}
.game-dropdown-trigger>img{content:url(assets/marathon-source-v1/dropdown-arrow.webp);width:calc(29 * var(--lu));height:calc(27 * var(--lu));transform:none}
.game-dropdown-trigger[aria-expanded=true]>img{transform:rotate(180deg)}
@media(max-width:760px){.game-dropdown-trigger>img{width:22px;height:21px}.ladder-you button::before{width:26px;height:27px;margin-right:6px}}
/* Empty/loading/account messages need prose sizing, rather than the large timer digits. */
.ladder-personal #ladder-best.is-message{font-size:max(18px,calc(30 * var(--lu)));line-height:1.2;white-space:normal;overflow-wrap:anywhere;text-wrap:balance}
.ladder-personal #ladder-rank{left:calc(24 * var(--lu));right:calc(24 * var(--lu));top:calc(268 * var(--lu));margin:0;padding:2px 4px;text-align:center;font-size:max(14px,calc(21 * var(--lu)));line-height:1.25;z-index:3;background:#031523}
@media(max-width:760px){.ladder-personal .marathon-play span{min-width:0;white-space:normal;line-height:1.1;font-size:max(14px,calc(24 * var(--lu)))}}

/* The complete portrait clip has its own row; live text and actions never mask it. */
.marathon-ladder{height:auto;min-height:100dvh}
.ladder-personal{height:auto;min-height:0;padding:24px 20px;display:flex;flex-direction:column;align-items:center;gap:12px;background:#021322;overflow:hidden}
.ladder-personal .ladder-timer,.ladder-personal:has(.ladder-idle-video) .ladder-portal{display:none}
.ladder-personal h2{position:static;margin:0;font-size:clamp(20px,2.2vw,28px);line-height:1.2;letter-spacing:0}
.ladder-personal #ladder-best{position:static;inset:auto;width:100%;height:auto;display:block;margin:0;font-size:clamp(28px,3.2vw,48px);line-height:1.2}
.ladder-personal #ladder-best.is-message{font-size:clamp(18px,2.1vw,26px);line-height:1.2}
.ladder-personal #ladder-rank{position:static;inset:auto;width:100%;margin:0;padding:0;background:none;font-size:16px;line-height:1.3}
.ladder-character-window:has(.ladder-idle-video){position:relative;inset:auto;width:100%;height:auto;aspect-ratio:480/854;max-height:72svh;flex:none;z-index:1;overflow:hidden;border:1px solid #2d5364;background:#031523}
.ladder-character-window .ladder-static-portrait{object-fit:contain}
.ladder-character-window .ladder-idle-video{inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none;background:#031523}
.ladder-character-window:has(.ladder-idle-video[data-ready=true]) .ladder-static-portrait{visibility:hidden}
.ladder-character-window .ladder-motion-mask{mask-image:none}
.ladder-personal .ladder-route{position:relative;inset:auto;flex:none;width:100%;height:auto;padding:12px;display:flex;flex-direction:column;gap:8px}
.ladder-personal .ladder-route>img{position:static;width:100%;height:64px;object-fit:cover}
.ladder-personal .ladder-route h3,.ladder-personal .ladder-route p{position:static;margin:0;white-space:normal;line-height:1.25}
.ladder-personal .ladder-route h3{font-size:20px}
.ladder-personal .ladder-route p{font-size:15px}
.ladder-personal .marathon-play{position:relative;inset:auto;flex:none;width:100%;height:84px;min-height:72px;margin:0;padding:4px 10px;gap:8px;justify-content:center;border-width:16px 42px;border-image-width:16px 42px}
.ladder-personal .marathon-play img{width:40px;height:44px}
.ladder-personal .marathon-play span{flex:1;min-width:0;white-space:normal;text-wrap:balance;text-align:center;font-size:clamp(18px,2.2vw,24px);line-height:1.1}
.ladder-personal .ladder-disclaimer{position:static;inset:auto;margin:0;font-size:14px;line-height:1.4}
@media(max-width:360px){.ladder-personal{padding:22px 14px}.ladder-personal .marathon-play{border-left-width:32px;border-right-width:32px;border-image-width:16px 32px;padding:4px}.ladder-personal .marathon-play img{width:30px;height:36px}}
