/* v1.43.16: clear boundaries, readable portraits, aligned matchup rosters.
   Clay remains on primary surfaces; fields and dense data have explicit edges. */
body.discovery-app :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select,textarea),
body.discovery-app :is(.team-picker,.partner-picker,.position-dropdown,.opportunity-picker,.saved-league-picker)>summary,
body.discovery-app button#locksSection.keep-launcher,
body.discovery-app #connectionCard :is(#provider,#connectionInput) {
 border:1px solid color-mix(in srgb,var(--muted) 42%,var(--line));
 background:var(--field);box-shadow:inset 0 1px 2px #00000012;
}
body.discovery-app :is(.team-picker,.partner-picker,.position-dropdown,.opportunity-picker)>summary:hover,
body.discovery-app :is(input,select,textarea):hover,body.discovery-app #locksSection.keep-launcher:hover{border-color:var(--muted)}
body.discovery-app .refine-search{background:var(--surface);border:1px solid var(--line);padding:16px;border-radius:16px;box-shadow:none}
body.discovery-app .refine-search>summary{color:var(--ink);font-size:14px;font-weight:700}
body.discovery-app .refine-search :is(.preference-group,.more-preferences){padding:16px 0;margin:0;border-top:1px solid var(--line)}
body.discovery-app .refine-search :is(.preference-group,.more-preferences):last-child{padding-bottom:0}
body.discovery-app .refine-search h3{font-size:12px;letter-spacing:.02em;margin:0 0 12px;color:var(--ink)}
body.discovery-app .refine-search .offer-preferences{gap:16px;align-items:end}
body.discovery-app .refine-search :is(select,#locksSection,.partner-picker>summary){background:var(--field);margin-top:6px}
body.discovery-app .refine-search .preference-check{padding:8px 10px;margin:0 8px 8px 0;border:1px solid var(--line);border-radius:9px;background:var(--field);vertical-align:top;min-height:38px;align-items:flex-start;gap:8px}
body.discovery-app .refine-search .preference-check:has(input:checked){border-color:var(--green);background:var(--mint)}
body.discovery-app .refine-search .preference-check input{accent-color:var(--green);flex-shrink:0;margin-top:2px}
body.discovery-app :is(.display-options-panel,.team-picker-menu,.partner-menu,.position-checkboxes,.opportunity-options,.saved-league-options){border:1px solid var(--line);box-shadow:0 10px 28px #00000030}
/* Every suggested offer reads as a distinct card, including saved offers. */
body.discovery-app :is(.trade-option,.saved-row.trade-option){border:1px solid color-mix(in srgb,var(--muted) 30%,var(--line));background:var(--surface);border-radius:18px;box-shadow:0 4px 12px #00000014,inset 0 1px 0 var(--clay-highlight);padding:20px}
body.discovery-app :is(.trade-options-grid,.results-list){gap:20px}
body.discovery-app .trade-option-header{border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:14px}
body.discovery-app .trade-partner-name{font-size:15px}
body.discovery-app .trade-option .package-player{gap:10px;margin:10px 0;font-size:14px;min-height:42px}
body.discovery-app .trade-option .package-player .headshot{width:44px;height:44px;flex-basis:44px;background:var(--field)}
/* Keep the intended zoomed face crop. A scoreboard rule used to shrink all photos. */
body.discovery-app .headshot .portrait-crop{display:block;position:relative;width:100%;height:100%;overflow:hidden;border-radius:inherit;background:var(--field)}
body.discovery-app .headshot:not(.team-photo):not(.league-photo) img{position:absolute;left:50%;top:-10%;width:180%;height:auto;max-width:none;transform:translateX(-50%);object-fit:initial}
body.discovery-app .headshot .portrait-initials{position:absolute;inset:0;display:grid;place-items:center;font-size:11px}
body.discovery-app .headshot.loaded>.portrait-crop{visibility:visible}
body.discovery-app .headshot.loaded .portrait-initials{visibility:hidden}
body.discovery-app .trade-option .family-choice .headshot{width:34px;height:34px;flex-basis:34px}
/* Inline icon + text, including the league settings action. */
body.discovery-app .saved-league-row>button.league-edit-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;min-width:76px;height:44px;padding:8px 12px;border:1px solid var(--line);font-size:13px}
body.discovery-app .league-edit-button svg{width:16px;height:16px;flex:none}
/* Keep footer dimensions/spacing and click targets; remove button decoration. */
body.discovery-app .site-footer button,body.discovery-app .site-footer button:active,body.discovery-app .site-footer button:hover{background:transparent;box-shadow:none;border-color:transparent;border-radius:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:2px}
/* Rankings: one bounded list with clear row hierarchy and an obvious drag handle. */
body.discovery-app #ftb-rank-preview .rk-board{border:1px solid var(--line);border-radius:12px;background:var(--field);scrollbar-gutter:stable;max-height:clamp(140px,calc(100dvh - 590px),360px)}
body.discovery-app #ftb-rank-preview .rk-ranking-row{grid-template-columns:30px 40px minmax(0,1fr) 76px 36px;gap:10px;min-height:66px;padding:8px 10px;background:var(--surface);border-bottom:1px solid var(--line)}
body.discovery-app #ftb-rank-preview .rk-ranking-row:nth-child(even){background:var(--field)}
body.discovery-app #ftb-rank-preview .rk-ranking-row:hover{background:color-mix(in srgb,var(--mint) 45%,var(--surface))}
body.discovery-app #ftb-rank-preview .rk-ranking-row>span:nth-child(3){min-width:0}
body.discovery-app #ftb-rank-preview .rk-place{font-size:13px;font-weight:650;color:var(--ink)}
body.discovery-app #ftb-rank-preview .rk-small-photo{width:40px;height:40px}
body.discovery-app #ftb-rank-preview .rk-row-name>b{font-size:14px}
body.discovery-app #ftb-rank-preview .rk-row-meta{font-size:11px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.discovery-app #ftb-rank-preview .rk-valuation{font-size:15px;line-height:1.35}
body.discovery-app #ftb-rank-preview .rk-value-delta{font-size:11px}
body.discovery-app #ftb-rank-preview button.rk-move{width:36px;height:40px;min-height:40px;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:none;color:var(--muted);font-size:21px}
body.discovery-app #ftb-rank-preview .rk-list-heading{font-size:10px;padding:12px 10px 8px;letter-spacing:.04em}
body.discovery-app #ftb-rank-preview .rk-board-actions{margin-top:12px;background:var(--surface);bottom:0;padding:12px 0}
body.discovery-app #ftb-rank-preview .rk-position-tabs{border:1px solid var(--line);padding:4px;border-radius:10px;gap:4px}
body.discovery-app #ftb-rank-preview .rk-position-tabs>button{border-radius:7px}
/* Preserve the scoreboard's compact height: same caption and identity line boxes. */
body.discovery-app .ftbm-week-nav{height:24px;min-height:24px;gap:12px;align-items:center}
body.discovery-app .ftbm-week-nav .ftbm-caption{display:flex;align-items:center;justify-content:center;height:24px;line-height:24px;font-size:11px;letter-spacing:.4px}
html[data-palette="matchday"] body.discovery-app .season-chart .ftbm-week-arrow{width:32px;height:24px;min-height:24px;border:1px solid var(--line);border-radius:7px;background:var(--field);color:var(--ink);box-shadow:0 1px 2px #0002;padding:0}
html[data-palette="matchday"] body.discovery-app .season-chart .ftbm-week-arrow:hover:not(:disabled){background:var(--mint);border-color:var(--green);color:var(--green)}
body.discovery-app .ftbm-week-arrow svg{width:18px;height:18px}
body.discovery-app .ftbm-name{font-size:14px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.discovery-app .ftbm-match>.ftbm-side{grid-template-columns:52px minmax(0,1fr)}
body.discovery-app .ftbm-match>.ftbm-side.ftbm-right{grid-template-columns:minmax(0,1fr) 52px}
body.discovery-app .ftbm-side .ftbm-avatar{width:52px;height:52px;box-shadow:none;border:1px solid var(--line)}
/* One emphasized, initially collapsed lineup view, fixed 48px slots on both sides. */
body.discovery-app .ftbm-lineups{border:1px solid var(--line);border-radius:12px;margin:12px 0 16px;background:var(--field);overflow:hidden}
body.discovery-app .ftbm-lineups>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;color:var(--ink);font-size:14px;font-weight:650;min-height:44px;padding:10px 12px;background:var(--surface);line-height:22px}
body.discovery-app .ftbm-lineups>summary::-webkit-details-marker{display:none}
body.discovery-app .ftbm-lineups>summary:hover{background:var(--mint)}
body.discovery-app .ftbm-lineup-heading{display:inline-flex;align-items:center;gap:8px}
body.discovery-app .ftbm-lineup-heading svg{width:18px;height:18px;color:var(--green);flex:none}
body.discovery-app .ftbm-lineup-chevron{font-size:20px;line-height:20px;transition:transform .15s}
body.discovery-app .ftbm-lineups[open] .ftbm-lineup-chevron{transform:rotate(180deg)}
body.discovery-app .ftbm-lineups[open]>summary{border-bottom:1px solid var(--line)}
body.discovery-app .ftbm-lineup-grid{gap:16px;margin:0;padding:0 10px 8px}
body.discovery-app .ftbm-lineup-team h4{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;height:38px;font-size:12px;border-bottom:1px solid var(--line)}
body.discovery-app .ftbm-lineup-team h4>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.discovery-app .ftbm-lineup-team h4>small{font-size:9px;letter-spacing:.08em;color:var(--muted);font-weight:500;flex:none}
body.discovery-app .ftbm-starter{box-sizing:border-box;height:48px;min-height:48px;max-height:48px;grid-template-columns:34px 32px minmax(0,1fr) 40px;grid-template-rows:1fr;gap:7px;padding:4px 5px;border-bottom:1px solid var(--line);line-height:16px}
body.discovery-app .ftbm-starter:nth-child(even){background:color-mix(in srgb,var(--surface) 70%,var(--field))}
body.discovery-app .ftbm-starter .headshot,body.discovery-app .ftbm-empty-photo{width:32px;height:32px;display:inline-grid;place-items:center;font-size:11px}
body.discovery-app .ftbm-player-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px;overflow:hidden}
body.discovery-app .ftbm-player-name{display:flex;align-items:center;gap:3px;min-width:0;white-space:nowrap;overflow:hidden;font-size:12px;line-height:17px;height:17px}
html[data-palette="matchday"] body.discovery-app .season-chart button.ftbm-player-link{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;line-height:17px;font-weight:600}
body.discovery-app .ftbm-player-name :is(.player-rank,.availability){margin:0;font-size:9px;flex:none}
body.discovery-app .ftbm-player-pickup{padding:0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:13px;height:13px}
body.discovery-app .ftbm-player-pickup.is-pickup{color:var(--positive)}
body.discovery-app .ftbm-player-points{font-size:13px;font-weight:650}
body.discovery-app .ftbm-slot.roster-slot{display:grid;place-items:center;width:34px;height:28px;padding:0;border-radius:6px;font-size:9px;font-weight:750;line-height:1;color:var(--slot-text);background:var(--slot-bn)}
body.discovery-app .ftbm-slot[data-slot="QB"]{background:var(--slot-qb)}
body.discovery-app .ftbm-slot[data-slot="RB"]{background:var(--slot-rb)}
body.discovery-app .ftbm-slot[data-slot="WR"]{background:var(--slot-wr)}
body.discovery-app .ftbm-slot[data-slot="TE"]{background:var(--slot-te)}
body.discovery-app .ftbm-slot[data-slot="K"]{background:var(--slot-k)}
body.discovery-app .ftbm-slot[data-slot="DEF"]{background:var(--slot-def)}
body.discovery-app .ftbm-slot[data-slot="IR"]{background:var(--slot-ir)}
body.discovery-app .ftbm-slot[data-slot="FLEX"]{background:linear-gradient(90deg,var(--slot-wr) 33%,var(--slot-rb) 33%,var(--slot-rb) 66%,var(--slot-te) 66%)}
body.discovery-app .ftbm-slot[data-slot="SUPER_FLEX"]{background:linear-gradient(90deg,var(--slot-qb) 25%,var(--slot-rb) 25%,var(--slot-rb) 50%,var(--slot-wr) 50%,var(--slot-wr) 75%,var(--slot-te) 75%)}
body.discovery-app .ftbm-slot[data-slot="WRRB_FLEX"]{background:linear-gradient(90deg,var(--slot-rb) 50%,var(--slot-wr) 50%)}
body.discovery-app .ftbm-slot[data-slot="REC_FLEX"]{background:linear-gradient(90deg,var(--slot-wr) 50%,var(--slot-te) 50%)}
body.discovery-app .season-partner-badge{fill:var(--clay-purple-bg,var(--field));stroke:var(--clay-purple,var(--muted));stroke-width:.7}
body.discovery-app .season-partner-label{fill:var(--clay-purple,var(--ink));font-weight:650;font-size:11px}
body.discovery-app .season-partner-guide{stroke-width:1.4;opacity:.85;stroke-dasharray:3 4}
@media(max-width:650px){
 body.discovery-app .ftbm-name{font-size:12px;line-height:14px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:30px}
 body.discovery-app .ftbm-match>.ftbm-side{grid-template-columns:30px minmax(0,1fr)}
 body.discovery-app .ftbm-match>.ftbm-side.ftbm-right{grid-template-columns:minmax(0,1fr) 30px}
 body.discovery-app .ftbm-side .ftbm-avatar,body.discovery-app .ftbm-side.ftbm-right .ftbm-avatar{width:30px;height:30px}
 body.discovery-app .ftbm-lineup-team h4{display:none}
 body.discovery-app .ftbm-lineup-tabs{margin:6px 10px;padding:3px;background:var(--surface);border:1px solid var(--line);border-radius:9px}
 body.discovery-app .ftbm-lineup-grid{padding:0 8px 8px}
 body.discovery-app .trade-option{padding:14px}
 body.discovery-app .trade-option .package-player{font-size:12px}
 body.discovery-app .trade-option .package-player .headshot{width:40px;height:40px;flex-basis:40px}
}
@media(max-width:520px){
 body.discovery-app #ftb-rank-preview .rk-ranking-row{grid-template-columns:22px 32px minmax(0,1fr) 56px 28px;gap:6px;padding:7px 4px}
 body.discovery-app #ftb-rank-preview .rk-small-photo{width:32px;height:32px}
 body.discovery-app #ftb-rank-preview .rk-row-name>b{font-size:12px}
 body.discovery-app #ftb-rank-preview .rk-valuation{font-size:13px}
 body.discovery-app #ftb-rank-preview button.rk-move{width:28px}
 body.discovery-app .saved-league-row>button.league-edit-button{min-width:64px;padding:8px}
}
@media(pointer:coarse){body.discovery-app .ftbm-week-nav{height:32px;min-height:32px}html[data-palette="matchday"] body.discovery-app .season-chart .ftbm-week-arrow{height:32px;min-height:32px;width:36px}}
@media(prefers-reduced-motion:reduce){body.discovery-app .ftbm-lineup-chevron{transition:none}}

body.discovery-app .trade-option .suggestion-player{min-height:44px;gap:10px}
body.discovery-app .trade-option .suggestion-player .headshot{width:42px;height:42px;flex-basis:42px}
body.discovery-app .portrait-crop.loaded .portrait-initials{visibility:hidden}
@media(max-width:650px){body.discovery-app .ftbm-side .ftbm-avatar,body.discovery-app .ftbm-side.ftbm-right .ftbm-avatar{margin-block:-2px}body.discovery-app .trade-option .suggestion-player .headshot{width:38px;height:38px;flex-basis:38px}}

/* v1.43.17 — quiet secondary controls and one consistent popup treatment. */
html body.discovery-app .constraint-chip,
html body.discovery-app .constraint-chip:is(:hover,:active){min-height:24px;height:auto;padding:3px 6px;border:0;border-radius:4px;box-shadow:none;background:transparent;color:var(--muted);font-size:11px;font-weight:400;line-height:18px;transform:none}
html body.discovery-app .constraint-chip:hover{background:var(--field);color:var(--ink)}
html body.discovery-app .constraint-chip>span{font-size:13px;color:var(--muted);margin-left:4px}
html body.discovery-app :is([data-view-trade],[data-open-saved]),
html body.discovery-app :is([data-view-trade],[data-open-saved]):hover:not(:disabled){background:var(--clay-gold);color:var(--clay-gold-ink);border-color:transparent;box-shadow:3px 4px 8px var(--clay-shadow-color),inset 2px 2px 3px var(--clay-gold-light),inset -2px -3px 5px var(--clay-gold-shade)}
html body.discovery-app .trade-family-alternates{flex-wrap:wrap;gap:7px;align-items:center}
html body.discovery-app button.trade-family-choice,
html body.discovery-app button.trade-family-choice:is(:hover,:active){display:inline-flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;min-height:36px;padding:0;border:1px solid var(--line);border-radius:50%;box-shadow:none;background:transparent;color:var(--muted);transform:none;gap:0}
html body.discovery-app button.trade-family-choice:hover{border-color:var(--green);background:var(--field)}
html body.discovery-app .trade-family-choice .headshot{width:34px;height:34px;flex-basis:34px;border:0;box-shadow:none}
html body.discovery-app .trade-family-none svg{display:block;width:17px;height:17px;flex:none}
html body.discovery-app .trade-family-none-label{font-size:8px;line-height:10px;margin-top:-3px;letter-spacing:0}
html body.discovery-app .trade-option-header .trade-partner-name{font-size:17px;gap:10px;min-height:44px}
html body.discovery-app .trade-option-header .team-photo{display:inline-block;width:40px;height:40px;flex-basis:40px}
/* Portraits use the full image source and a single, undistorted crop. */
html body.discovery-app #fadeListDialog .headshot img{inset:auto;left:50%;top:-8%;width:160%;height:auto;max-width:none;object-fit:initial;transform:translateX(-50%);image-rendering:auto}
/* Playoff color marks supplement opponent difficulty colors, rather than replacing them. */
html body.discovery-app .player-menu .wp-opponent.wp-playoff{border:1px solid var(--clay-gold);box-shadow:inset 0 3px 0 var(--clay-gold);position:relative}
html body.discovery-app .player-menu .wp-opponent>small{display:flex;justify-content:center;align-items:center;gap:3px}
html body.discovery-app .wp-playoff-tag{font-size:8px;font-weight:750;padding:1px 2px;border-radius:3px;background:var(--clay-gold);color:var(--clay-gold-ink);line-height:10px}
html body.discovery-app .wp-playoff-key{color:var(--green);font-weight:600}
html body.discovery-app .season-playoff-shade{fill:var(--clay-gold);opacity:.13;stroke:var(--clay-gold);stroke-width:1;stroke-opacity:.9}
html body.discovery-app .season-playoff-label{fill:var(--green);font-weight:750;font-size:11px}
html body.discovery-app [data-season-week][data-playoff="true"] [data-season-tick]{fill:var(--green);font-weight:750;text-decoration:underline;text-underline-offset:3px}
/* One SVG chevron; suppress older generic summary arrows. */
html body.discovery-app .ftbm-lineups>summary::after{content:none;display:none}
html body.discovery-app .ftbm-lineup-chevron{display:block;flex:none;width:18px;height:18px;color:var(--muted);margin:0}
html body.discovery-app .ftbm-lineup-heading>svg{width:19px;height:19px}
html body.discovery-app .ftbm-trade-change{box-shadow:inset 2px 0 0 color-mix(in srgb,var(--positive) 60%,transparent);background:color-mix(in srgb,var(--positive) 4%,transparent)}
html body.discovery-app .ftbm-moves{color:var(--muted);margin-left:auto;white-space:nowrap;letter-spacing:0!important;font-size:10px!important}
html body.discovery-app .ftbm-bench{margin:0 10px 8px;border-top:1px solid var(--line)}
html body.discovery-app .ftbm-bench>summary{display:flex;align-items:center;min-height:32px;font-size:11px;padding:6px 2px}
html body.discovery-app .ftbm-bench-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
html body.discovery-app .ftbm-bench-grid .ftbm-lineup-team h4{display:flex}
html body.discovery-app .ftbm-empty-bench{padding:10px 0;color:var(--muted);font-size:11px}
@media(max-width:650px){html body.discovery-app .ftbm-bench-grid{grid-template-columns:minmax(0,1fr);gap:10px}html body.discovery-app .trade-option-header .trade-partner-name{font-size:16px}html body.discovery-app .trade-option-header .team-photo{width:36px;height:36px;flex-basis:36px}}
/* Shared window tokens intentionally override legacy per-dialog glows and blur. */
:root{--popup-border:color-mix(in srgb,var(--muted) 38%,var(--line));--popup-shadow:0 18px 54px #00000050;--popup-backdrop:rgb(9 13 18 / .58)}
html body.discovery-app :is(dialog,[popover],.customization-panel,.display-options-panel,.team-picker-menu,.partner-menu,.position-checkboxes,.opportunity-options,.saved-league-options,.position-track-tooltip){border:1px solid var(--popup-border)!important;border-radius:16px!important;box-shadow:var(--popup-shadow)!important;background:var(--surface)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body.discovery-app :is(dialog,[popover])::backdrop{background:var(--popup-backdrop)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body.discovery-app .opportunity-popover.player-menu .wp-card{border:0;box-shadow:none;border-radius:inherit}

html body.discovery-app .ftb-playoff-tag{display:inline-block;margin-left:3px;border-radius:3px;padding:1px 3px;font-size:8px;line-height:11px;background:var(--clay-gold);color:var(--clay-gold-ink);vertical-align:middle}
html body.discovery-app .schedule-comparison .ftb-playoff-head{color:var(--green);font-weight:650}

html body.discovery-app .ftb-zoom-week.ftb-zoom-playoff{background:color-mix(in srgb,var(--clay-gold) 9%,transparent);border-inline:1px solid color-mix(in srgb,var(--clay-gold) 25%,transparent)}
html body.discovery-app .ftb-zoom-header.ftb-zoom-playoff{color:var(--green);font-weight:650;border-top:2px solid var(--clay-gold)}

/* v1.43.18 — one discreet scrollbar for pages, dialogs and nested panels.
   Keep native scrolling/keyboard behavior and let forced-colors use OS styling. */
:root{--scrollbar-thumb:color-mix(in srgb,var(--muted,#737b80) 50%,transparent);--scrollbar-thumb-hover:color-mix(in srgb,var(--muted,#737b80) 80%,transparent)}
html,body,body *{scrollbar-width:thin!important;scrollbar-color:var(--scrollbar-thumb) transparent!important}
@supports selector(::-webkit-scrollbar){
 html,body,body *{scrollbar-width:auto!important;scrollbar-color:auto!important}
 ::-webkit-scrollbar{width:10px;height:10px;background:transparent}
 ::-webkit-scrollbar-track{background:transparent;border:0;box-shadow:none}
 ::-webkit-scrollbar-thumb{min-height:28px;min-width:28px;border:2px solid transparent;border-radius:999px;background:var(--scrollbar-thumb);background-clip:padding-box;box-shadow:none}
 ::-webkit-scrollbar-thumb:hover,::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-hover)}
 ::-webkit-scrollbar-button{display:none;width:0;height:0}
 ::-webkit-scrollbar-corner{background:transparent}
}
@media(forced-colors:active){
 html,body,body *{scrollbar-width:auto!important;scrollbar-color:auto!important}
 ::-webkit-scrollbar-thumb{background:ButtonText;background-clip:padding-box}
 ::-webkit-scrollbar-thumb:hover,::-webkit-scrollbar-thumb:active{background-color:Highlight}
}

/* Shared menu dismissal: a classic X, with no raised clay container. */
:root{--close-target:36px}
html body.discovery-app button.ftb-close{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 var(--close-target)!important;box-sizing:border-box!important;width:var(--close-target)!important;height:var(--close-target)!important;min-width:var(--close-target)!important;min-height:var(--close-target)!important;max-width:var(--close-target)!important;padding:0!important;border:0!important;border-radius:9px!important;background:transparent!important;color:var(--muted)!important;box-shadow:none!important;text-shadow:none!important;text-decoration:none!important;line-height:1!important;transform:none!important;cursor:pointer;transition:background-color .15s,color .15s}
html body.discovery-app button.ftb-close svg{display:block!important;width:18px!important;height:18px!important;min-width:18px!important;flex:none!important;pointer-events:none}
html body.discovery-app button.ftb-close:not(:disabled):is(:hover,:active){background:color-mix(in srgb,var(--muted) 12%,transparent)!important;color:var(--ink)!important;box-shadow:none!important;transform:none!important}
html body.discovery-app button.ftb-close:focus-visible{outline:2px solid var(--clay-gold,var(--ink))!important;outline-offset:2px!important}
html body.discovery-app button.ftb-close:disabled{opacity:.45;cursor:default}
html body.discovery-app .rewind-nav{justify-content:flex-end}
html body.discovery-app .player-menu .wp-header{padding-right:var(--close-target)}
html body.discovery-app .player-menu .wp-price{padding-right:0}
html body.discovery-app .player-rank-popover .ftb-close,html body.discovery-app .weekly-week-dialog .ftb-close{float:right;margin:0 0 8px 12px}
html body.discovery-app .matchup-explanation h3{margin-right:var(--close-target)}
@media(pointer:coarse){:root{--close-target:44px}}
@media(prefers-reduced-motion:reduce){html body.discovery-app button.ftb-close{transition:none}}
@media(forced-colors:active){html body.discovery-app button.ftb-close{color:ButtonText!important}html body.discovery-app button.ftb-close:focus-visible{outline-color:Highlight!important}}

/* v1.43.19 — consistent settings, quiet reference popovers and intact artwork. */
html body.discovery-app #filters.refine-search .preference-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:8px}
html body.discovery-app #filters.refine-search .preference-check{display:flex;align-items:center;box-sizing:border-box;height:auto;min-height:48px;margin:0;padding:7px 12px;font-size:12px;line-height:1.3}
html body.discovery-app #filters.refine-search .preference-check input{margin:0;align-self:center}
html body.discovery-app #filters.refine-search :is(select,#locksSection,.partner-picker>summary,.position-dropdown>summary,#tolerance){box-sizing:border-box;height:48px;min-height:48px;margin-top:6px;border-radius:9px;font-size:13px}
html body.discovery-app #filters.refine-search :is(.partner-picker>summary,.position-dropdown>summary){display:flex;align-items:center}
html body.discovery-app #filters.refine-search #tolerance{width:100%;max-width:none}
html body.discovery-app #filters.refine-search .preference-help{margin:10px 0 0;line-height:1.5}
/* v1.43.22 — adapt to the menu width, including a desktop sidebar. */
html body.discovery-app #filters.refine-search .offer-preferences .partner-picker{margin-top:0!important}
html body.discovery-app #filters.refine-search .preference-check>span{min-width:0;white-space:normal;overflow-wrap:break-word}
html body.discovery-app #filters.refine-search .preference-check[hidden]{display:none}
html body.discovery-app #filters.refine-search .offer-preferences{grid-template-columns:repeat(auto-fit,minmax(min(100%,136px),1fr));gap:12px;align-items:end}
html body.discovery-app #filters.refine-search #moreOptions>.offer-preferences{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}
html body.discovery-app #filters.refine-search .offer-preferences>*,html body.discovery-app #filters.refine-search .offer-preferences>div>label{font-size:12px;line-height:1.4;font-weight:500;min-width:0}
html body.discovery-app #filters.refine-search .offer-preferences>label,html body.discovery-app #filters.refine-search .offer-preferences>div{display:flex;flex-direction:column;gap:6px}
html body.discovery-app #filters.refine-search .offer-preferences :is(.partner-field-label,.keep-field>label,.position-control>label){margin:0;font-size:12px;font-weight:500;line-height:1.4}
html body.discovery-app #filters.refine-search .offer-preferences :is(select,input[type=number],#locksSection,.partner-picker,.position-dropdown,.partner-picker>summary,.position-dropdown>summary){margin:0}
html body.discovery-app #filters.refine-search .offer-preferences :is(select,input[type=number],#locksSection,.partner-picker>summary,.position-dropdown>summary){width:100%}
html body.discovery-app #filters.refine-search .preference-help{font-size:11px;line-height:1.5;overflow-wrap:break-word}

/* A league is one surface. The name area remains a large open-league target. */
html body.discovery-app .saved-league-list{display:grid;gap:10px}
html body.discovery-app .saved-league-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--field);box-shadow:none}
html body.discovery-app .saved-league-row>[data-open-league]{display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:4px;align-items:center;min-width:0;text-align:left;padding:4px;border:0!important;border-radius:8px;background:transparent!important;box-shadow:none!important;transform:none!important}
html body.discovery-app .saved-league-row>[data-open-league]:hover:not(:disabled){background:color-mix(in srgb,var(--muted) 8%,transparent)!important}
html body.discovery-app .saved-league-row .league-photo{grid-row:1 / 3}
html body.discovery-app .saved-league-row .league-picker-name{grid-column:2;font-size:14px;line-height:1.35;font-weight:650;white-space:normal;overflow-wrap:anywhere}
html body.discovery-app .saved-league-row>[data-open-league]>small{grid-column:2;margin:0;color:var(--muted);font-size:11px;line-height:1.4;font-weight:400}
html body.discovery-app .saved-league-row>button:is(.league-edit-button,.league-remove-button){display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:68px;min-height:40px;height:40px;padding:8px 10px;font-size:12px;font-weight:600;line-height:1;border-radius:9px}
html body.discovery-app .saved-league-row .league-edit-button svg{width:14px;height:14px}
html body.discovery-app .saved-league-row>.league-remove-button{color:var(--red);background:color-mix(in srgb,var(--red) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--red) 26%,var(--line));box-shadow:none}
html body.discovery-app .saved-league-row>.league-remove-button:hover:not(:disabled){background:color-mix(in srgb,var(--red) 18%,var(--surface));color:var(--red)}
@media(max-width:520px){html body.discovery-app .saved-league-row{grid-template-columns:minmax(0,1fr) auto}html body.discovery-app .saved-league-row>[data-open-league]{grid-column:1 / -1}html body.discovery-app .saved-league-row>.league-edit-button{justify-self:end}html body.discovery-app .saved-league-row>button:is(.league-edit-button,.league-remove-button){min-height:44px;height:44px}}

/* Team/league artwork fills its frame without the face-only crop or flow offset. */
html body.discovery-app .headshot:is(.team-photo,.league-photo){--identity-size:28px;position:relative;display:inline-grid;place-items:center;box-sizing:border-box;width:var(--identity-size);height:var(--identity-size);min-width:var(--identity-size);max-width:var(--identity-size);min-height:var(--identity-size);max-height:var(--identity-size);flex:0 0 var(--identity-size)!important;padding:0;overflow:hidden;border-radius:50%;background:var(--field)}
html body.discovery-app .headshot:is(.team-photo,.league-photo)>span{position:absolute;inset:0;display:grid;place-items:center;line-height:1;align-self:stretch;justify-self:stretch}
html body.discovery-app .headshot:is(.team-photo,.league-photo) img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;margin:0;transform:none;object-fit:contain;object-position:center;border-radius:inherit}
html body.discovery-app .saved-league-row .headshot.league-photo{--identity-size:42px}
html body.discovery-app .trade-option-header .headshot.team-photo{--identity-size:40px}
html body.discovery-app :is(.selected-team-identity,.confirm-team-options) .headshot.team-photo{--identity-size:36px}
html body.discovery-app .ftbm-avatar img{object-fit:contain;object-position:center}
html body.discovery-app img[hidden]{display:none!important}

/* Fold Crystal Ball's close control into its existing header. */
html body.discovery-app #rewind-designs .r-header{padding:8px 16px;min-height:52px;gap:12px}
html body.discovery-app #rewind-designs .r-header [data-user-label]{margin-left:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body.discovery-app #rewind-designs .r-header .r-brand{flex-shrink:0}

/* Rank details are deliberately nonmodal: browsing stays visible and available. */
html body.discovery-app .player-rank-popover[popover]{box-sizing:border-box;max-width:min(300px,calc(100vw - 16px));max-height:calc(100dvh - 16px);overflow:auto;padding:14px;box-shadow:0 6px 20px #00000026!important}
html body.discovery-app .player-rank-popover[popover]::backdrop{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;pointer-events:none}
html body.discovery-app .player-rank:focus-visible{outline:2px solid var(--clay-gold);outline-offset:3px}

/* Playoff headings carry the emphasis; matchup cells keep their own colors. */
html body.discovery-app .ftb-zoom-week.ftb-zoom-playoff{background:transparent;border:0}
html body.discovery-app .ftb-zoom-header.ftb-zoom-playoff{border:0;color:var(--green);font-weight:650;text-decoration:none}
html body.discovery-app .schedule-comparison .ftb-playoff-start{border-left:0!important;padding-left:0!important}
html body.discovery-app .schedule-comparison .ftb-playoff-head{background:transparent;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--green) 55%,transparent);text-underline-offset:6px;text-decoration-thickness:2px}
html body.discovery-app .ftb-playoff-tag{background:transparent;color:var(--muted);padding:0;margin-left:4px;border-radius:0;font-size:8px;font-weight:500;text-decoration:none}

/* v1.43.20 — one ROS schedule vocabulary in reports and Player Insights. */
html body.discovery-app .ros-matchup{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:100%;height:44px;min-height:44px;padding:5px 2px;border:0;border-radius:6px;background:var(--field);color:var(--muted);box-shadow:none;font:400 11px/1.2 "Inter Tight",system-ui,sans-serif;transform:none;filter:none}
html body.discovery-app :is(.player-menu,.schedule-comparison) .ros-matchup[data-ros-rank]{background:light-dark(hsl(var(--ros-hue) 45% 92%),hsl(var(--ros-hue) 25% 23%));color:light-dark(hsl(var(--ros-hue) 65% 27%),hsl(var(--ros-hue) 65% 76%))}
html body.discovery-app .ros-matchup .ros-opponent{font-size:11px;font-weight:600;color:inherit;line-height:1.2}
html body.discovery-app .ros-matchup .ros-rank{font-size:10px;font-weight:400;color:inherit;line-height:1.2}
html body.discovery-app .ros-week{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:24px;color:var(--muted);font:400 11px/1.2 "Inter Tight",system-ui,sans-serif;white-space:nowrap}
html body.discovery-app .ros-week.ros-week-playoff{color:light-dark(#876018,#efbd54);font-weight:650;text-decoration:none}
html body.discovery-app .ros-week .ros-playoff-tag{font-size:8px;line-height:1;color:var(--muted);font-weight:500;background:transparent;border:0;padding:0}
html body.discovery-app .schedule-comparison :is(.ftb-playoff-head,.ftb-zoom-header.ftb-zoom-playoff){text-decoration:none}
html body.discovery-app .player-menu button.ros-week-button{width:100%;min-width:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;height:72px;min-height:72px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:none;transform:none;filter:none}
html body.discovery-app :is(button.ros-matchup:hover,button.ros-matchup[aria-expanded="true"],.ros-week-button:hover>.ros-matchup,.ros-week-button[aria-pressed="true"]>.ros-matchup){box-shadow:inset 0 0 0 1px currentColor;filter:none;transform:none}
html body.discovery-app :is(button.ros-matchup:focus-visible,.ros-week-button:focus-visible>.ros-matchup){outline:2px solid var(--green);outline-offset:2px}
html body.discovery-app .player-menu .wp-scroll{overflow-x:auto;padding:2px 2px 6px}
html body.discovery-app .player-menu .wp-schedule{display:grid;grid-template-columns:repeat(var(--wp-week-count,1),minmax(48px,1fr));gap:4px;width:100%;min-width:0}
html body.discovery-app .player-menu .cp-schedule{grid-template-columns:minmax(0,1fr);gap:8px}
html body.discovery-app .player-menu .wp-schedule-heading{grid-column:1/-1;margin:0}
html body.discovery-app .player-menu .wp-schedule-heading h4{white-space:nowrap}
html body.discovery-app .player-menu .wp-period-ratings{grid-column:1/-1}
html body.discovery-app .player-menu .wp-arrows{display:none}
html body.discovery-app .player-menu .wp-arrows:has(button:not(:disabled)){display:flex}
html body.discovery-app .ros-legend{display:flex;align-items:center;justify-content:space-between;gap:6px 14px;flex-wrap:wrap;color:var(--muted);font-size:11px;line-height:1.4}
html body.discovery-app .ros-key-scale{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
html body.discovery-app .ros-key-gradient{display:inline-block;width:76px;height:4px;border-radius:3px;background:linear-gradient(90deg,#d36363,#b6a745,#55b579)}
html body.discovery-app .ros-key-note{color:var(--muted)}
html body.discovery-app .player-menu .wp-opponent-detail{border-left:2px solid var(--green);background:var(--field);padding:10px 12px;border-radius:0;font-size:12px;line-height:1.5;color:var(--ink)}
html body.discovery-app .schedule-comparison .ftb-detail{border-left-color:var(--green);background:var(--field);color:var(--ink)}
html body.discovery-app .ros-matchup[data-ros-rank="1"]{--ros-hue:0.00}
html body.discovery-app .ros-matchup[data-ros-rank="2"]{--ros-hue:4.35}
html body.discovery-app .ros-matchup[data-ros-rank="3"]{--ros-hue:8.71}
html body.discovery-app .ros-matchup[data-ros-rank="4"]{--ros-hue:13.06}
html body.discovery-app .ros-matchup[data-ros-rank="5"]{--ros-hue:17.42}
html body.discovery-app .ros-matchup[data-ros-rank="6"]{--ros-hue:21.77}
html body.discovery-app .ros-matchup[data-ros-rank="7"]{--ros-hue:26.13}
html body.discovery-app .ros-matchup[data-ros-rank="8"]{--ros-hue:30.48}
html body.discovery-app .ros-matchup[data-ros-rank="9"]{--ros-hue:34.84}
html body.discovery-app .ros-matchup[data-ros-rank="10"]{--ros-hue:39.19}
html body.discovery-app .ros-matchup[data-ros-rank="11"]{--ros-hue:43.55}
html body.discovery-app .ros-matchup[data-ros-rank="12"]{--ros-hue:47.90}
html body.discovery-app .ros-matchup[data-ros-rank="13"]{--ros-hue:52.26}
html body.discovery-app .ros-matchup[data-ros-rank="14"]{--ros-hue:56.61}
html body.discovery-app .ros-matchup[data-ros-rank="15"]{--ros-hue:60.97}
html body.discovery-app .ros-matchup[data-ros-rank="16"]{--ros-hue:65.32}
html body.discovery-app .ros-matchup[data-ros-rank="17"]{--ros-hue:69.68}
html body.discovery-app .ros-matchup[data-ros-rank="18"]{--ros-hue:74.03}
html body.discovery-app .ros-matchup[data-ros-rank="19"]{--ros-hue:78.39}
html body.discovery-app .ros-matchup[data-ros-rank="20"]{--ros-hue:82.74}
html body.discovery-app .ros-matchup[data-ros-rank="21"]{--ros-hue:87.10}
html body.discovery-app .ros-matchup[data-ros-rank="22"]{--ros-hue:91.45}
html body.discovery-app .ros-matchup[data-ros-rank="23"]{--ros-hue:95.81}
html body.discovery-app .ros-matchup[data-ros-rank="24"]{--ros-hue:100.16}
html body.discovery-app .ros-matchup[data-ros-rank="25"]{--ros-hue:104.52}
html body.discovery-app .ros-matchup[data-ros-rank="26"]{--ros-hue:108.87}
html body.discovery-app .ros-matchup[data-ros-rank="27"]{--ros-hue:113.23}
html body.discovery-app .ros-matchup[data-ros-rank="28"]{--ros-hue:117.58}
html body.discovery-app .ros-matchup[data-ros-rank="29"]{--ros-hue:121.94}
html body.discovery-app .ros-matchup[data-ros-rank="30"]{--ros-hue:126.29}
html body.discovery-app .ros-matchup[data-ros-rank="31"]{--ros-hue:130.65}
html body.discovery-app .ros-matchup[data-ros-rank="32"]{--ros-hue:135.00}

/* v1.43.21 — approved faceted crystal icon, preserving the emoji slot. */
html body.discovery-app #openTradeRewind .crystal-ball-icon{display:block;width:1.25em;height:1.2em;flex:0 0 1.25em;overflow:visible;color:inherit}

/* v1.43.25 — responsive button widths, with every action visible. */
html body.discovery-app .top .header-tools>button{flex:1 1 auto}
@media(max-width:800px){
 html body.discovery-app .top .header-tools{display:flex;flex-wrap:nowrap;justify-content:stretch;align-items:center;gap:5px;box-sizing:border-box;min-width:0;width:100%;max-width:100%;margin:0;padding:4px 0;overflow:visible}
 html body.discovery-app .top .header-tools :is(#openTradeRewind,#openPersonalData,#changeLeague,#openGuide){flex:1.15 1 0;min-width:0;max-width:none;box-sizing:border-box;white-space:normal;overflow-wrap:normal;min-height:44px;height:44px;max-height:44px;padding:4px;font-size:11px;line-height:1.2;gap:3px;text-align:center}
 html body.discovery-app .top .header-tools #openGuide{flex-grow:.85}
 html body.discovery-app .top .header-tools #openGuide .control-icon{display:none}
 html body.discovery-app .top .header-tools .crystal-ball-icon{width:12px;height:12px;flex:0 0 12px}
 html body.discovery-app .top .header-tools .appearance-switch{flex:1.5 1 0;min-width:0;max-width:100%;height:44px;box-sizing:border-box;gap:0;padding:2px;flex-wrap:nowrap}
 html body.discovery-app .top .header-tools .appearance-switch>[data-mode-choice]{flex:1 1 0;min-width:0;width:0;padding:0 2px;height:40px;min-height:40px;max-height:40px;font-size:11px;line-height:1}
}
@media(max-width:350px){
 html body.discovery-app .top .header-tools{gap:4px}
 html body.discovery-app .top .header-tools :is(#openTradeRewind,#openPersonalData,#changeLeague,#openGuide,[data-mode-choice]){font-size:10px}
}

/* v1.43.27 — At a glance search requirements, using existing picker controls. */
html body.discovery-app #filters .refine-goals{width:100%;table-layout:fixed;border-collapse:collapse;margin:0;font-size:13px}
html body.discovery-app #filters .refine-goals th,html body.discovery-app #filters .refine-goals td{padding:8px 2px;vertical-align:middle;border:0;border-bottom:1px solid var(--line);background:none;white-space:normal;text-align:center}
html body.discovery-app #filters .refine-goals tr:last-child>*{border-bottom:0}
html body.discovery-app #filters .refine-goals thead th{font-size:12px;font-weight:500;color:var(--muted)}
html body.discovery-app #filters .refine-goals th:first-child{width:46%;text-align:left}
html body.discovery-app #filters .refine-goals tbody th{font-weight:600;line-height:1.3}
html body.discovery-app #filters .refine-goals small{display:block;font-size:11px;font-weight:400;color:var(--muted);line-height:1.45;margin-top:4px}
html body.discovery-app #filters .refine-radio{display:flex;justify-content:center;align-items:center;width:100%;min-height:44px;margin:0;padding:0}
html body.discovery-app #filters .refine-radio input{appearance:auto;accent-color:var(--green);width:18px;height:18px;min-height:0;padding:0;margin:0;box-shadow:none;flex:none}
html body.discovery-app #filters #suggestionControls .offer-preferences{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
html body.discovery-app #filters #moreOptions{padding:0;border-top:1px solid var(--line);background:transparent;border-radius:0;box-shadow:none}
html body.discovery-app #filters #moreOptions>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:12px 0;font-size:12px;font-weight:600;list-style:none;background:none;box-shadow:none}
html body.discovery-app #filters #moreOptions>summary:after{content:'';margin-left:auto;color:var(--muted)}
html body.discovery-app #filters #moreOptions[open]>summary:after{transform:rotate(180deg)}
html body.discovery-app #filters .refine-limits-summary{font-weight:400;font-size:11px;color:var(--muted)}
html body.discovery-app #filters #moreOptions>.offer-preferences{padding:4px 0;align-items:start}
html body.discovery-app #filters .refine-value-control{gap:6px}
html body.discovery-app #filters .refine-range-heading,html body.discovery-app #filters .refine-range-scale{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;color:var(--muted);font-weight:400}
html body.discovery-app #filters #toleranceValue{color:var(--ink);font-size:14px;font-weight:600;flex:none;font-variant-numeric:tabular-nums}
html body.discovery-app #filters #tolerance{appearance:auto;accent-color:var(--green);display:block;width:100%;height:32px;min-height:32px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
html body.discovery-app #filters #valueGapHelp{margin:0}
html body.discovery-app #filters .refine-actions{display:flex;justify-content:flex-start;padding-top:12px}
html body.discovery-app #filters #resetRefine{min-height:36px;padding:6px 0;border:0;background:transparent;box-shadow:none;color:var(--muted);font-size:12px}
html body.discovery-app #filters{container-type:inline-size}
@container(max-width:360px){
 html body.discovery-app #filters #suggestionControls .offer-preferences{grid-template-columns:minmax(0,1fr)}
 html body.discovery-app #filters .refine-goals th:first-child{width:43%}
 html body.discovery-app #filters .refine-goals thead th{font-size:11px}
}
