:is(#challenge-out,.hj-challenge-out){min-height:220px}
:is(#challenge-out,.hj-challenge-out) .who-cell{gap:11px}
:is(#challenge-out,.hj-challenge-out) .who-cell>.av{width:42px;height:42px;flex:0 0 42px;border-width:2px}
:is(#challenge-out,.hj-challenge-out) .challenge-live-card .who-cell>.av{width:48px;height:48px;flex-basis:48px}
.lms-view{position:relative;container-type:inline-size;container-name:lms;margin-bottom:28px}
.lms-zoom{display:none;position:absolute;top:8px;right:8px;z-index:4;gap:4px;margin:0}
.lms-zoom button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:999px;background:#fffffff2;box-shadow:0 1px 3px #14324f22;color:var(--navy);font:700 12px/1 var(--sans);cursor:pointer;transition:background .2s,color .2s,border-color .2s;touch-action:manipulation}
.lms-zoom button[aria-pressed="true"]{background:var(--navy);color:var(--paper);border-color:var(--navy)}
.lms-zoom button:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.lms-zoom button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lms-stage{position:relative;margin:0;overflow-x:auto;scrollbar-width:none;border:1px solid var(--line);border-radius:16px;background:radial-gradient(ellipse at 50% 95%,#dfc88938,transparent 65%),linear-gradient(180deg,#fffdf6,var(--paper-dim));box-shadow:inset 0 1px 0 #fff;isolation:isolate}
.lms-stage::-webkit-scrollbar{display:none}
.lms-stage:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.lms-lineup{--lms-top:26px;position:relative;display:flex;align-items:flex-end;justify-content:space-around;min-width:800px;padding:var(--lms-top) 20px 44px;gap:0}
.lms-lineup:after{content:"";position:absolute;left:20px;right:20px;bottom:calc(44px + (100% - var(--lms-top) - 44px)*.071);height:2px;background:linear-gradient(90deg,transparent,#b38b36 5%,#b38b36 95%,transparent);z-index:-1;box-shadow:0 8px 18px #a9883830}
.lms-figure{position:relative;flex:1 1 0;max-width:120px;min-width:0;filter:drop-shadow(0 3px 2px #142c4210);transition:filter .5s ease}
.lms-name{position:absolute;top:calc(100% + 4px);left:0;width:100%;text-align:center;white-space:nowrap;font:800 10px/1.4 var(--sans);letter-spacing:.025em;color:var(--navy)}
.lms-figure>.lms-art{display:block;width:100%;height:auto;overflow:visible}
.lms-elimination-week{display:block;margin-top:2px;font-size:.9em;line-height:1.4;letter-spacing:0;color:var(--verdict-red)}
@container lms (max-width:801px){
 .lms-zoom{display:flex}
 .lms-lineup{--lms-top:64px;min-width:0;width:800px;transition:width .5s cubic-bezier(.22,.7,.2,1)}
 .lms-view.is-fit .lms-lineup{width:100%}
 .lms-name{transition:font-size .5s cubic-bezier(.22,.7,.2,1)}
 .lms-view.is-fit .lms-name{font-size:clamp(5px,1.15cqi,10px)}
}
.lms-shadow{fill:#9d8140;opacity:.13}
.lms-upper{transform:translateY(0);transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.lms-seated-legs{opacity:0;transition:opacity .3s ease}
.lms-standing-legs{opacity:1;transition:opacity .3s ease}
.lms-figure.is-eliminated{filter:drop-shadow(0 3px 2px #142c4210);opacity:1}
.lms-figure.is-eliminated .lms-upper{transform:translateY(57px)}
.lms-figure.is-eliminated .lms-standing-legs{opacity:0}
.lms-figure.is-eliminated .lms-seated-legs{opacity:1}
@media(max-width:600px){:is(#challenge-out,.hj-challenge-out) .who-cell>.av{width:36px;height:36px;flex-basis:36px}:is(#challenge-out,.hj-challenge-out) .challenge-live-card .who-cell>.av{width:40px;height:40px;flex-basis:40px}.lms-feed-week{padding:15px;gap:14px;grid-template-columns:1fr}.lms-feed-meta{flex-direction:row;justify-content:space-between;align-items:center}.lms-feed-result>strong{font-size:24px}.lms-feed-result .who-cell{font-size:14px}}
@media(prefers-reduced-motion:reduce){.lms-upper,.lms-figure,.lms-standing-legs,.lms-seated-legs,.lms-lineup,.lms-name,.lms-zoom button{transition:none}}
/* Shared fitted lineup (raffle tickets, titty bars): the Last Man Standing shell with zoom buttons, double tap and scroll stage. */
.lineup-view{margin-bottom:18px}
.lineup{--lineup-pad:20px;--lineup-width:100cqi;--lineup-figure:min(120px,(var(--lineup-width) - 2px - 2*var(--lineup-pad))/var(--lineup-count));padding:22px var(--lineup-pad) 52px}
.lineup-row{position:relative;display:flex;align-items:flex-end;justify-content:space-around;gap:0}
.lineup-row:after{content:"";position:absolute;left:0;right:0;bottom:calc(var(--lineup-figure)*.1417);height:2px;background:linear-gradient(90deg,transparent,#b38b36 5%,#b38b36 95%,transparent);z-index:-1;box-shadow:0 8px 18px #a9883830}
.lineup-figure{position:relative;display:flex;flex-direction:column;align-items:center;flex:1 1 0;max-width:120px;min-width:0;filter:drop-shadow(0 3px 2px #142c4210)}
.lineup-figure .lms-art{display:block;width:100%;height:auto;overflow:visible;position:relative;z-index:2}
.lineup-bar-wrap{position:relative;z-index:1}
.lineup-label{position:absolute;top:calc(100% + 4px);left:-8%;width:116%;display:flex;flex-direction:column;align-items:center;gap:1px;text-align:center;white-space:nowrap}
.lineup-name{font:800 10px/1.4 var(--sans);letter-spacing:.025em;color:var(--navy)}
.lineup-stat{font:700 10.5px/1.4 var(--mono);letter-spacing:.04em;font-variant-numeric:tabular-nums;color:#8c7138}
.lineup-stat.is-bold{font:900 17px/1.2 var(--sans);letter-spacing:0;color:var(--navy)}
@container lms (max-width:801px){
 .lineup{--lineup-width:800px;width:800px;padding-top:64px!important;transition:width .5s cubic-bezier(.22,.7,.2,1)}
 .lms-view.is-fit .lineup{--lineup-width:100cqi;width:100%}
 .lineup-name,.lineup-stat{transition:font-size .5s cubic-bezier(.22,.7,.2,1)}
 .lms-view.is-fit .lineup-name{font-size:clamp(5px,1.15cqi,10px)}
 .lms-view.is-fit .lineup-stat{font-size:clamp(5px,1.1cqi,10.5px)}
 .lms-view.is-fit .lineup-stat.is-bold{font-size:clamp(7px,2cqi,17px)}
 .lineup-bar-wrap{transition:font-size .5s cubic-bezier(.22,.7,.2,1)}
 .lms-view.is-fit .lineup-bar-wrap{font-size:clamp(6px,1.9cqi,15px)}
}
.raffle-stack{display:flex;flex-direction:column-reverse;width:96%;margin-bottom:5%}
.raffle-ticket{display:block;width:100%;height:auto;overflow:visible;margin-top:3%;--raffle-tilt:-2.5deg;transform:rotate(var(--raffle-tilt));animation:raffle-float 3.6s ease-in-out var(--raffle-delay,0s) infinite alternate;filter:drop-shadow(0 1px 1px #5a3f0d2e)}
.raffle-ticket:nth-child(even){--raffle-tilt:2.5deg;animation-duration:4.1s}
.raffle-ticket-body{fill:#f2d98a;stroke:#9a7122;stroke-width:1.5}
.raffle-ticket-trim{fill:none;stroke:#9a7122;stroke-width:.8;stroke-dasharray:1.5 1.5;opacity:.7}
.raffle-ticket-perf{fill:none;stroke:#9a7122;stroke-width:1;stroke-dasharray:2 2.2;opacity:.8}
.raffle-ticket-stub{font:700 6.5px/1 var(--mono);letter-spacing:.14em;fill:#9a7122;text-anchor:middle;dominant-baseline:middle}
.raffle-ticket-week{font:700 8.5px/1 var(--mono);letter-spacing:.12em;fill:#6b4d12;text-anchor:middle}
.raffle-ticket-score{font:800 15px/1 var(--sans);fill:var(--navy);text-anchor:middle;font-variant-numeric:tabular-nums}
.raffle-empty{color:#738497;font:500 12px/1.5 var(--sans)}
@keyframes raffle-float{from{transform:rotate(var(--raffle-tilt)) translateY(0)}to{transform:rotate(var(--raffle-tilt)) translateY(-4%)}}
/* Titty Special: live season-total bars above each head, crown on the leader, heatmap and expandable weekly rows. */
.lineup-bar-wrap{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;width:100%;height:calc(var(--lineup-figure)*1.3 + 1.4em);margin-bottom:9%;font-size:15px}
.lineup-bar-value{display:block;margin-bottom:.15em;font:900 1em/1.2 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--navy)}
.lineup-bar{position:relative;width:54%;height:calc(var(--lineup-figure)*1.3*var(--titty-pct,0)/100);border-radius:3px 3px 0 0;background:linear-gradient(180deg,var(--brass-bright),var(--brass) 70%,#9a7122);box-shadow:inset 0 1px 0 #fff6,0 2px 6px #5a3f0d2e;transition:height .9s cubic-bezier(.2,.7,.2,1)}
.lineup-bar-inner{position:absolute;top:1em;left:0;right:0;text-align:center;font:500 .66em/1 var(--sans);font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 0 2px #3a2806,0 0 4px #3a2806cc,0 1px 2px #000000a6;white-space:nowrap;pointer-events:none}
.lineup-bar.is-short .lineup-bar-inner{display:none}
.lineup-bar-inner em{display:block;margin-top:.3em;font:700 .72em/1 var(--mono);font-style:normal;letter-spacing:.14em;text-transform:uppercase}
.lineup-bar.is-pos{background:linear-gradient(180deg,#9ad6a7,#5faa78 60%,#2e7d4f)}
.lineup-bar.is-neg{background:linear-gradient(180deg,#e3968f,#c9584d 60%,#9e2c24)}
.lineup-figure.is-leader .lineup-bar.is-pos{background:linear-gradient(180deg,#b5e3bf,#6cb886 55%,#2e7d4f)}
.lineup-figure.is-leader .lineup-bar.is-neg{background:linear-gradient(180deg,#eeaaa3,#cf6459 55%,#9e2c24)}
.lineup-bar.is-pos .lineup-bar-inner{text-shadow:0 0 2px #0f3a22,0 0 4px #0f3a22cc,0 1px 2px #000000a6}
.lineup-bar.is-neg .lineup-bar-inner{text-shadow:0 0 2px #4a1410,0 0 4px #4a1410cc,0 1px 2px #000000a6}
.lineup-bar-value.is-pos{color:#2e7d4f}
.lineup-bar-value.is-neg{color:var(--verdict-red)}
.lineup-figure.is-leader .lineup-bar{background:linear-gradient(180deg,#f0cd5a,var(--brass-bright) 60%,var(--brass))}
.lineup-figure.is-scored .lineup-bar{animation:lineup-scored 1.2s ease-out}
@keyframes lineup-scored{0%{filter:brightness(1)}30%{filter:brightness(1.45) drop-shadow(0 0 6px #d9a93f)}100%{filter:brightness(1)}}
.lms-crown{filter:drop-shadow(0 1px 1px #0004)}
/* A soft brass glow follows the current leader's silhouette in every lineup graphic. */
.lineup-figure.is-leader .lms-art{filter:drop-shadow(0 0 5px rgba(217,169,63,.6)) drop-shadow(0 0 18px rgba(217,169,63,.34))}
.titty-view .aw-sub.challenge-sub,.over-view .aw-sub.challenge-sub,.opt-view .aw-sub.challenge-sub{margin:22px 0 10px;font-size:17px}
.titty-view .heat-wrap,.over-view .heat-wrap,.opt-view .heat-wrap{margin-bottom:0;width:max-content;max-width:100%}
.titty-view table.heat,.over-view table.heat,.opt-view table.heat{width:auto;min-width:0}
.titty-view table.heat td.nm,.over-view table.heat td.nm,.opt-view table.heat td.nm{padding-right:28px}
.titty-view table.heat th.wk,.titty-view table.heat td,.over-view table.heat th.wk,.over-view table.heat td,.opt-view table.heat th.wk,.opt-view table.heat td{min-width:46px}
.titty-view table.heat th:nth-child(2),.titty-view table.heat td.tot,.over-view table.heat th:nth-child(2),.over-view table.heat td.tot,.opt-view table.heat th:nth-child(2),.opt-view table.heat td.tot{min-width:64px;padding-left:12px;padding-right:12px}
.titty-view table.heat th,.over-view table.heat th,.opt-view table.heat th{position:static}
.titty-view table.heat .who-cell,.over-view table.heat .who-cell,.opt-view table.heat .who-cell{gap:8px}
:is(#challenge-out,.hj-challenge-out) .titty-view table.heat .who-cell>.av,:is(#challenge-out,.hj-challenge-out) .over-view table.heat .who-cell>.av,:is(#challenge-out,.hj-challenge-out) .opt-view table.heat .who-cell>.av{width:30px;height:30px;flex-basis:30px;border-width:1.5px}
.titty-view table.heat td.is-missing,.over-view table.heat td.is-missing,.opt-view table.heat td.is-missing{color:#b5bcc4}
.titty-view .legend,.over-view .legend,.opt-view .legend{margin-bottom:14px}
/* Weekly tables sized like the heatmap: compact rows, small portraits, hugging their content. */
:is(#challenge-out,.hj-challenge-out) .titty-weeks .who-cell>.av{width:30px;height:30px;flex-basis:30px;border-width:1.5px}
/* MVP Special: one horizontally scrolling row of award cards per week, headshots rising out of the card top. */
.mvp-week .mvp-cards{display:flex;gap:12px;overflow-x:auto;padding:46px 14px 14px;scroll-snap-type:x proximity;scrollbar-width:thin;-webkit-overflow-scrolling:touch;background:var(--paper-dim)}
.mvp-card{position:relative;flex:0 0 150px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:3px;padding:44px 10px 14px;border:1px solid #ffffff1f;border-radius:16px;background:linear-gradient(180deg,var(--navy-ink) 0%,var(--navy) 45%,var(--navy-deep) 100%);color:var(--paper);text-align:center;box-shadow:0 8px 20px #0c223833,inset 0 1px 0 #ffffff1a;overflow:visible}
.mvp-card.is-overall{background:linear-gradient(180deg,#8a6a24 0%,#4d3d17 30%,var(--navy-deep) 100%);border-color:var(--brass)}
.mvp-card-photo{position:absolute;top:-36px;left:50%;transform:translateX(-50%);width:74px;height:74px;padding:0;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 50% 35%,#2a4a6b,var(--navy-deep));border:3px solid var(--brass-bright);box-shadow:0 4px 12px #0c223866;display:flex;align-items:center;justify-content:center;cursor:pointer}
.mvp-card-photo:before{content:attr(data-pos);font:800 13px/1 var(--mono);letter-spacing:.06em;color:var(--brass-bright)}
.mvp-card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;background:#fff}
.mvp-card-photo.is-logo img{object-fit:contain;padding:12px;object-position:center;background:var(--paper)}
.mvp-card.is-overall .mvp-card-photo{border-color:#f3d266;box-shadow:0 0 0 3px #f3d26640,0 4px 12px #0c223866}
.mvp-card-photo:focus-visible,.mvp-card-name:focus-visible,.mvp-card-owner:focus-visible{outline:2px solid var(--brass-bright);outline-offset:2px}
.mvp-card-pos{font:700 9.5px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--brass-bright)}
.mvp-card.is-overall .mvp-card-pos{color:var(--navy-deep);background:var(--brass-bright);padding:2px 8px;border-radius:999px}
.mvp-card-name{appearance:none;border:0;background:none;padding:0;cursor:pointer;font:800 13.5px/1.25 var(--sans);color:var(--paper);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mvp-card-name:hover{color:var(--brass-bright)}
.mvp-card-owner{display:flex;flex-direction:column;align-items:center;gap:2px;margin:3px 0 7px;min-height:46px;justify-content:flex-start;cursor:pointer;border-radius:8px;padding:2px 6px}
.mvp-card-owner:hover{background:#ffffff12}
.mvp-card-owner b{font:700 10px/1.3 var(--sans);letter-spacing:.05em;color:var(--paper)}
:is(#challenge-out,.hj-challenge-out) .mvp-card-owner>.av.mvp-card-av{width:28px;height:28px;flex-basis:28px;border:1.5px solid var(--brass-bright);background:var(--paper)}
.mvp-card-owner.is-status{justify-content:center;font:700 9px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#c9c2ae}
.mvp-card-owner.is-status:not(.manager-profile-trigger){cursor:default}
.mvp-card-owner.is-status:not(.manager-profile-trigger):hover{background:none}
.mvp-card-points{font:800 23px/1.1 var(--sans);font-variant-numeric:tabular-nums;color:#fff}
.mvp-card-opp{font:600 11px/1.3 var(--sans);color:#c9c2ae}
.mvp-week>p{padding:12px}
.titty-player{appearance:none;border:0;background:none;padding:0;cursor:pointer;font:inherit;color:inherit;text-align:left}
.titty-player:hover{color:var(--brass);text-decoration:underline}
.lineup-name.manager-profile-trigger,.lms-name.manager-profile-trigger{cursor:pointer;pointer-events:auto}
.lineup-figure .lms-art,.lms-figure .lms-art{cursor:pointer}
@media(max-width:600px){.mvp-card{flex-basis:136px;padding:40px 8px 12px}.mvp-card-photo{width:64px;height:64px;top:-32px}.mvp-card-points{font-size:20px}.mvp-week .mvp-cards{padding:40px 10px 10px;gap:10px}}
/* Overachiever lineup: the ground line is the projection. Over it, a manager rises on a gold pedestal; under it, he sinks into a pit. */
/* Sinking figures must not create a vertical scroll/bounce area. */
.over-view .lms-stage{overflow-y:hidden;overscroll-behavior-y:none}
.over-view .lineup{padding-top:40px;padding-bottom:66px}
.over-view .lineup-row:after{bottom:calc(var(--lineup-figure)*.025)}
.over-figure{--over-px:calc(var(--lineup-figure)*.9*var(--over-shift,0));--sink:0px;justify-content:flex-end;font-size:15px}
.over-figure.is-neg{--sink:var(--over-px)}
.over-figure>.lineup-bar-value{position:absolute;left:-12%;right:-12%;top:calc(-1.5em + var(--sink));margin:0;text-align:center;z-index:2;transition:top .9s cubic-bezier(.2,.7,.2,1)}
.over-body{position:relative;z-index:1;width:100%;height:calc(var(--lineup-figure)*1.8833);clip-path:inset(-40% -12% 0 -12%);transition:margin-bottom .9s cubic-bezier(.2,.7,.2,1)}
.over-figure.is-leader>.lineup-bar-value{top:calc(-2.15em + var(--sink))}
.over-body .lms-art{display:block;width:100%;height:auto;overflow:visible;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.over-figure.is-pos .over-body{margin-bottom:var(--over-px)}
.over-figure.is-neg .over-body .lms-art{transform:translateY(var(--sink))}
.over-pedestal{position:absolute;left:23%;right:23%;bottom:calc(var(--lineup-figure)*.025 - 1px);height:calc(var(--over-px) + var(--lineup-figure)*.05);z-index:0;border-radius:2px 2px 0 0;background:linear-gradient(90deg,#9a7122,#d9a93f 40%,#e8c766 55%,#b98a2e);box-shadow:inset 0 -6px 10px #5a3f0d33,0 3px 6px #5a3f0d2e;transition:height .9s cubic-bezier(.2,.7,.2,1)}
.over-pedestal:before{content:"";position:absolute;left:-8%;right:-8%;top:calc(var(--lineup-figure)*-.03);height:calc(var(--lineup-figure)*.06);border-radius:50%;background:linear-gradient(180deg,#f3d266,#d9a93f);border:1px solid #8a6414}
.over-pit{position:absolute;left:6%;right:6%;bottom:calc(var(--lineup-figure)*.025 - var(--lineup-figure)*.06);height:calc(var(--lineup-figure)*.12);z-index:0;border-radius:50%;background:radial-gradient(ellipse at 50% 45%,#4a3416,#1b1206 72%);box-shadow:inset 0 3px 5px #000c,0 1px 0 #ffffff66}
.over-figure.is-pos .over-pit,.over-figure.is-neg .over-pedestal{display:none}
.over-behind{display:flex;flex-direction:column;align-items:center;line-height:1.25;white-space:nowrap;color:#8c7138}
.over-behind b{font:800 11px/1.25 var(--sans);font-variant-numeric:tabular-nums;color:var(--navy)}
.over-behind em{font:700 8px/1.3 var(--mono);font-style:normal;letter-spacing:.12em;text-transform:uppercase}
.over-figure.is-leader .over-behind{color:var(--brass)}
.over-figure.no-motion,.over-figure.no-motion .over-body,.over-figure.no-motion .lms-art,.over-figure.no-motion .over-pedestal,.over-figure.no-motion>.lineup-bar-value{transition:none}
@container lms (max-width:801px){
 .lms-view.is-fit .over-figure{font-size:clamp(6px,1.9cqi,15px)}
 .lms-view.is-fit .over-behind b{font-size:clamp(5px,1.2cqi,11px)}
 .lms-view.is-fit .over-behind em{font-size:clamp(4px,.85cqi,8px)}
}
/* Optimizer: everyone sits on one long bench; bars above the heads count points left behind. */
.lms-bench-legs{opacity:0}
.lineup-figure.is-seated .lms-upper{transform:translateY(30px)}
.lineup-figure.is-seated .lms-standing-legs,.lineup-figure.is-seated .lms-shadow{opacity:0}
.lineup-figure.is-seated .lms-bench-legs{opacity:1}
.opt-view .lineup-bar-wrap{margin-bottom:calc(var(--lineup-figure)*-.21)}
.opt-view .lineup{padding-top:30px}
.opt-bench{position:absolute;left:0;right:0;bottom:0;top:0;z-index:-1;pointer-events:none}
.opt-bench-seat,.opt-bench-leg{position:absolute;background:linear-gradient(180deg,#d4b070,#b08748 50%,#85602a);border:1px solid #5e401a;box-shadow:inset 0 1px 0 #fff6}
.opt-bench-seat{left:1%;right:1%;bottom:calc(var(--lineup-figure)*.383);height:calc(var(--lineup-figure)*.11);border-radius:4px;background-image:linear-gradient(180deg,#d9b877,#b08748 45%,#85602a),repeating-linear-gradient(90deg,transparent 0 38px,#00000012 38px 40px);background-blend-mode:multiply}
.opt-bench-leg{width:calc(var(--lineup-figure)*.06);bottom:calc(var(--lineup-figure)*.017);height:calc(var(--lineup-figure)*.38);transform:translateX(-50%);border-radius:0 0 3px 3px}
.opt-view .lineup-row:after{display:none}
/* Weekly tables under the Raffle and Last Man Standing lineups. */
.week-table td>b{color:var(--navy)}
.lms-result{display:inline-block;padding:3px 9px;border-radius:999px;font:700 9.5px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;background:var(--paper-dim);color:#5f8a6b}
tr.is-eliminated .lms-result{background:#f3e0de;color:var(--verdict-red)}
tr.is-eliminated .av{filter:grayscale(1)}
tr.is-pending .lms-result{background:#f5ead0;color:#8c7138}
/* Clickable grid cells with one sliding breakdown row (Titty, Overachiever, Optimizer). */
.opt-swaps.is-simple li{grid-template-columns:52px minmax(0,1fr) 72px}
.opt-swaps.is-simple .opt-gain{color:var(--brass-bright)}
.ch-detail-total.is-over{justify-content:flex-start}
.ch-detail-total .opt-gain.is-pos{color:#9ad6a7}
.ch-detail-total .opt-gain.is-neg{color:#e3968f}
/* Optimizer gap grid with a sliding breakdown row. */
.opt-heat td.tot{white-space:nowrap}
.ch-heat td:has(>.ch-cell){padding:0}
.opt-heat td.is-perfect{background:#e6f1e8!important}
.ch-cell{display:block;width:100%;min-width:58px;padding:9px 6px;margin:0;border:0;background:transparent;font:inherit;color:inherit;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ch-cell:hover,.ch-cell:focus-visible{box-shadow:inset 0 0 0 2px var(--brass);outline:none}
.ch-cell.is-open{box-shadow:inset 0 0 0 2px var(--navy);font-weight:700}
tr.ch-detail>td{padding:0!important;border-top:0!important;background:transparent!important}
.ch-detail-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.2,.7,.2,1)}
.ch-detail-wrap.is-open{grid-template-rows:1fr}
.ch-detail-inner{min-height:0;overflow:hidden}
.ch-detail-panel{position:sticky;left:0;width:var(--panel-w,100%);max-width:100%;box-sizing:border-box;margin:10px 0 12px;padding:14px 16px 12px;background:var(--navy);color:var(--paper);border-radius:10px;box-shadow:0 8px 20px #0c223840;--arrow-x:24px}
.ch-detail-panel:before{content:"";position:absolute;top:-6px;left:var(--arrow-x);width:12px;height:12px;background:var(--navy);transform:translateX(-50%) rotate(45deg);border-radius:2px}
.ch-detail-title{display:flex;align-items:center;gap:10px;margin-bottom:10px;font:800 13px/1.3 var(--sans);color:var(--paper)}
.ch-detail-title .who-cell{gap:8px;color:var(--paper)}
:is(#challenge-out,.hj-challenge-out) .ch-detail-title .who-cell>.av{width:28px;height:28px;flex-basis:28px;border:1.5px solid var(--brass-bright)}
.ch-detail-title>span{font:700 10.5px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--brass-bright)}
.opt-swaps{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.opt-swaps li{display:grid;grid-template-columns:52px minmax(0,1fr) 22px minmax(0,1fr) 72px;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;background:#ffffff0f}
.opt-slot{font:700 9.5px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-bright)}
.opt-out,.opt-in{display:flex;align-items:baseline;gap:7px;min-width:0}
.opt-out{color:#c9c2ae}
.opt-out .opt-player{text-decoration:line-through;text-decoration-color:#e3968f;text-decoration-thickness:1.5px}
.opt-player{appearance:none;border:0;background:none;padding:0;cursor:pointer;font:700 13px/1.3 var(--sans);color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.opt-in .opt-player{color:#fff}
.opt-player:hover{color:var(--brass-bright)}
.opt-pts{font:600 12px/1.3 var(--mono);font-variant-numeric:tabular-nums}
.opt-in .opt-pts{color:#b5e3bf}
.opt-empty{font:600 11px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#c9c2ae}
.opt-arrow{text-align:center;color:var(--brass-bright);font-weight:700}
.opt-gain{text-align:right;font:800 13.5px/1.3 var(--sans);font-variant-numeric:tabular-nums;color:#9ad6a7}
.ch-detail-total{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:10px;padding-top:9px;border-top:1px solid #ffffff22;font:600 12px/1.3 var(--sans);color:#c9c2ae}
.ch-detail-total b{color:#fff;font-weight:800}
.ch-detail-total .opt-gain{font-size:15px;margin-left:auto;color:var(--brass-bright)}
.ch-detail-perfect{margin:0;font:700 13px/1.4 var(--sans);color:#9ad6a7}
.ch-detail-perfect b{color:#fff}
.ch-detail-note{margin:0;font:500 12px/1.4 var(--sans);color:#c9c2ae}
@media(max-width:600px){
 .opt-swaps li{grid-template-columns:40px minmax(0,1fr) 62px;grid-template-areas:"slot out gain" "slot in gain";gap:3px 8px;padding:7px 9px}
 .opt-slot{grid-area:slot;align-self:center}.opt-out{grid-area:out}.opt-in{grid-area:in}.opt-gain{grid-area:gain;align-self:center}
 .opt-swaps .opt-arrow{display:none}
 .opt-in:before{content:"→";color:var(--brass-bright);font-weight:700;margin-right:2px}
 .opt-player{font-size:12.5px;white-space:normal;overflow:visible}
 .opt-pts{font-size:11px}.ch-detail-panel{padding:12px}
 .ch-detail-total{flex-wrap:wrap;justify-content:flex-start;gap:6px 8px}
}
@media(prefers-reduced-motion:reduce){.ch-detail-wrap{transition:none}}
/* Overachiever over/under chart: every cell is a button that opens one small projection card. */
.over-heat{position:relative}
.over-heat td.tot,.over-heat td.nm .who-cell b{white-space:nowrap}
.over-heat td.tot.is-pos{color:#2e7d4f}
.over-heat td.tot.is-neg{color:var(--verdict-red)}
@media(prefers-reduced-motion:reduce){.over-body,.over-body .lms-art,.over-pedestal,.over-figure>.lineup-bar-value{transition:none}}
@media(max-width:600px){.lineup{--lineup-pad:10px;padding-top:16px;padding-bottom:44px}}
@media(prefers-reduced-motion:reduce){.raffle-ticket{animation:none}.lineup,.lineup-name,.lineup-stat,.lineup-bar,.lineup-bar-wrap{transition:none}.lineup-figure.is-scored .lineup-bar{animation:none}}
.challenge-live-status{margin:0 0 12px;padding:9px 12px;border-left:3px solid var(--win-green);background:var(--paper-dim);color:var(--navy);font:600 11px/1.5 var(--sans)}
.challenge-live-status.is-delayed,.challenge-live-warning{border-left:3px solid var(--brass);padding:9px 12px;background:var(--paper-dim)}
.challenge-live-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}
.challenge-live-card{min-width:0;padding:16px;border:1px solid var(--line);border-top:3px solid var(--brass);border-radius:9px;background:var(--navy);color:var(--paper);display:flex;flex-direction:column;gap:10px}
.challenge-live-card>span,.challenge-mvp-grid>div>span{font:700 10px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brass-bright)}
.challenge-live-card>strong{font:800 24px/1.2 var(--sans)}
.challenge-live-card>small{font:500 11px/1.4 var(--sans);opacity:.8}
.challenge-live-card .who-cell{color:var(--paper);font:800 17px/1.2 var(--sans)}
.challenge-live-table{margin-bottom:14px;overflow-x:auto}
.challenge-live-table table{width:100%;white-space:nowrap}
.challenge-live-table td{vertical-align:middle}
.challenge-live-details{border:1px solid var(--line);border-radius:8px;margin:9px 0;overflow:hidden;background:#fff}
.challenge-live-details summary{padding:12px 14px;cursor:pointer;font:700 12px/1.5 var(--sans);color:var(--navy);background:var(--paper-dim)}
.challenge-live-details summary span{float:right;color:#738497;font-size:10px}
.challenge-live-details .tbl-wrap{margin-bottom:0;border:0}
.challenge-live-details>p,.challenge-live-note{padding:8px 2px;font:500 12px/1.5 var(--sans);color:#738497}
.challenge-live-details>p{padding:12px}
.challenge-missing{display:block;color:#94621b;font:500 10px/1.4 var(--sans);margin-top:4px}
.challenge-mvp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0 16px}
.challenge-mvp-grid>div{border:1px solid var(--line);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:9px;min-width:0;background:var(--paper-dim)}
.challenge-mvp-grid{padding:12px;margin:0}
.challenge-mvp-grid>div>strong{font:800 23px/1.2 var(--sans);color:var(--navy)}
.challenge-mvp-grid small{color:#738497;font-size:11px}
@media(max-width:600px){.challenge-live-cards{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.challenge-live-card{padding:12px}.challenge-live-card>strong{font-size:20px}.challenge-live-card .who-cell{font-size:13px}.challenge-mvp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.challenge-live-table th,.challenge-live-table td{padding:10px 8px}}
/* Sitewide: keep phone browsers from auto-inflating some text lines, and keep a player's game line and stat line the same size. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.hj-game-context .hj-game-status,.hj-game-context .hj-game-stats{font-size:inherit!important;line-height:inherit!important}

/* Season Challenges header: sticky two-line tab rail, title, prize stamp and rules card. */
#challenges .ch-top{position:sticky;top:var(--hj-nav-h,42px);z-index:30;background:var(--paper);margin:-10px -20px 0;padding:0 20px;border-bottom:1px solid var(--line)}
#challenges .ch-rail{display:flex;align-items:stretch;gap:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
#challenges .ch-rail::-webkit-scrollbar{display:none}
#challenges .ch-rail button{appearance:none;flex:1 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:96px;padding:7px 12px 6px;background:none;border:0;border-bottom:3px solid transparent;margin:0;border-radius:0;font:700 10.5px/1.1 var(--mono);letter-spacing:.12em;text-transform:uppercase;text-align:center;color:#6f8090;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}
#challenges .ch-rail button span{display:block}
#challenges .ch-rail button:first-child{margin-left:auto}#challenges .ch-rail button:last-child{margin-right:auto}
#challenges .ch-rail button:hover{color:var(--navy)}
#challenges .ch-rail button[aria-selected="true"]{color:var(--navy);border-bottom-color:var(--brass)}
#challenges .ch-rail button:focus-visible{outline:2px solid var(--brass-bright);outline-offset:-2px}
#challenges .ch-card{padding:12px 0 2px;margin-bottom:10px}
#challenges .ch-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
#challenges .ch-title{margin:0;font:900 22px/1.1 var(--serif);color:var(--navy);letter-spacing:-.01em}
#challenges .ch-stamp{flex:0 0 auto;display:inline-block;transform:rotate(-8deg);padding:4px 10px;border:2px solid var(--brass);border-radius:6px;box-shadow:inset 0 0 0 1.5px var(--paper),inset 0 0 0 2.5px var(--brass);color:var(--brass);font:800 16px/1.2 var(--mono);letter-spacing:.06em;opacity:.92;background:transparent;user-select:none}
#challenges .ch-rules{margin:9px 0 0;max-width:760px;font:400 13px/1.55 var(--sans);color:#4a5d70}
#challenges .ch-rules-toggle{display:none;appearance:none;background:none;border:0;padding:8px 0 0;font:700 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--brass);cursor:pointer}
#challenges .ch-rules-toggle::after{content:" ▾";font-size:11px}
#challenges .ch-rules-toggle[aria-expanded="true"]::after{content:" ▴"}
@media (max-width:640px){
 #challenges .ch-top{margin:-8px -20px 0;padding:0 8px}
 #challenges .ch-rail button{min-width:0;flex:1 0 calc(100%/3.5);padding:6px 6px 5px;font-size:9.5px;letter-spacing:.09em;gap:2px}
 #challenges .ch-card{padding-top:11px}
 #challenges .ch-title{font-size:20px}
 #challenges .ch-stamp{font-size:14.5px;padding:3px 8px}
 #challenges .ch-rules{font-size:12.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 #challenges .ch-rules.is-open{display:block;-webkit-line-clamp:unset;overflow:visible}
 #challenges .ch-rules-toggle{display:inline-block}
}

/* Brief entrances, scoped to challenge changes rather than background score refreshes. */
.ch-enter .lms-stage{animation:challenge-stage-glow 1200ms ease-out}
.ch-enter .over-pedestal{animation:lineup-scored 1200ms ease-out var(--ch-enter-delay,0ms)}
.ch-enter .over-pit{animation:challenge-pit-glow 1100ms ease-out var(--ch-enter-delay,0ms)}
@keyframes challenge-stage-glow{
 0%,100%{box-shadow:inset 0 1px 0 #fff}
 35%{box-shadow:inset 0 1px 0 #fff,inset 0 -20px 32px -20px #d9a93f88}
}
@keyframes challenge-pit-glow{
 0%,100%{box-shadow:inset 0 3px 5px #000c,0 1px 0 #ffffff66}
 35%{box-shadow:inset 0 3px 5px #000c,0 0 9px 3px #d9a93f99}
}
@media(prefers-reduced-motion:reduce){
 .ch-enter .lms-stage,.ch-enter .over-pedestal,.ch-enter .over-pit{animation:none}
}


/* LMS uses the raffle's exact shared figure sizing in fitted and zoomed views. */
.lms-survival-view .lms-stage{overflow-y:hidden}
/* Keep the shared raffle table typography, white/cream stripes and rounded shell. */
:is(#challenge-out,.hj-challenge-out) .lms-week-table{overflow:hidden;container-type:inline-size}
:is(#challenge-out,.hj-challenge-out) .lms-week-table table{width:100%;min-width:0;table-layout:fixed;white-space:normal}
:is(#challenge-out,.hj-challenge-out) .lms-week-table th,:is(#challenge-out,.hj-challenge-out) .lms-week-table td{padding:10px 14px;vertical-align:middle;white-space:normal;overflow-wrap:break-word}
:is(#challenge-out,.hj-challenge-out) .lms-week-table th:nth-child(1){width:16%}
:is(#challenge-out,.hj-challenge-out) .lms-week-table th:nth-child(2){width:44%}
:is(#challenge-out,.hj-challenge-out) .lms-week-table th:nth-child(3){width:40%}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-score-group{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-score-group+.lms-score-group{margin-top:10px}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .who-cell{display:inline-flex;align-items:center;min-width:0;gap:11px;white-space:normal}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .who-cell>.av{width:42px;height:42px;flex:0 0 42px}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-score-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1.35}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-score-copy b{font-size:inherit;font-weight:700;color:var(--navy)}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-result{max-width:100%;box-sizing:border-box;white-space:normal;letter-spacing:.025em}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-result.is-eliminated{background:#f3e0de;color:var(--verdict-red)}
/* Apply the elimination treatment to every eliminated result, including future weeks. */
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-score-group:has(.lms-result.is-eliminated) .who-cell>.av{border-color:var(--verdict-red)}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-score-group:has(.lms-result.is-eliminated) .lms-score-copy b{color:var(--verdict-red)}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-result.is-already-out{background:var(--paper-dim);color:#6f8090}
:is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-result.is-pending{background:#f5ead0;color:#8c7138}
@media(max-width:600px){
 :is(#challenge-out,.hj-challenge-out) .lms-week-table th,:is(#challenge-out,.hj-challenge-out) .lms-week-table td{padding:10px 8px}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table th{font-size:9px;letter-spacing:.025em}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table th:nth-child(1){width:16%}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table th:nth-child(2){width:42%}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table th:nth-child(3){width:42%}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-week-label{display:none}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-score-group{flex-direction:column;align-items:flex-start;gap:6px}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table .who-cell{gap:8px}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table .who-cell>.av{width:36px;height:36px;flex-basis:36px}
 :is(#challenge-out,.hj-challenge-out) .lms-week-table .lms-result{font-size:9px;padding:3px 7px}
}


