[hidden]{display:none!important}
.player-photo{width:180px;max-width:100%;height:132px;object-fit:contain;background:#f6f7f2;border-radius:12px;margin-bottom:20px}.profile-facts{display:grid;grid-template-columns:max-content 1fr;gap:5px 20px}.profile-facts dd{margin:0;overflow-wrap:anywhere}
.help-button{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--green);font-size:15px;vertical-align:middle;cursor:pointer}
.help-button::first-letter{border:1px solid currentColor;border-radius:50%}
.help-button{background:radial-gradient(circle, #e9efdc 12px, transparent 13px)}
.help-button:hover{background:radial-gradient(circle, #d6e5bd 14px, transparent 15px)}
.help-button:focus-visible,.menu-toggle:focus-visible{outline:3px solid var(--green)}
#page-help{border:1px solid var(--line);border-radius:16px;padding:28px;max-width:700px;width:calc(100% - 32px);max-height:85dvh;overflow:auto;color:var(--ink)}
#page-help::backdrop{background:#102e29a8}
.help-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.help-heading h2{margin:6px 0}
#page-help li{margin-bottom:16px;line-height:1.65}#page-help ol{padding-left:24px}
.menu-toggle{display:none}.topbar>.help-button{margin-left:auto}
.panel,.list-row>div,.account-nav,form{min-width:0}.panel p,.list-row,.notice,.source-line{overflow-wrap:anywhere}
input:not([type=checkbox]):not([type=radio]),select,textarea,.form-control{font-size:16px;max-width:100%}
.button,.btn,.text-button,.star-button,summary,.tabs a{min-height:44px}.star-button{min-width:44px}
.inline-form{flex-wrap:wrap}.table-scroll{max-width:100%;overscroll-behavior-x:contain}
@media(max-width:1100px){
 .app-shell{display:block}.sidebar{position:static;width:100%;padding:16px 24px;display:block}.brand{margin:0;display:inline-flex}.sidebar>.nav-caption,.sidebar-footer{display:none}
 .menu-toggle{display:block;float:right;color:white!important;border-color:#8ba69b!important;min-width:72px}
 .sidebar nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px;white-space:normal;overflow:visible;clear:both}
 .sidebar nav .nav-caption{display:none}.sidebar nav>a{font-size:14px;min-height:44px;white-space:normal}.sidebar nav svg{display:block}
 .js .menu-toggle[aria-expanded=false]+nav{display:none}
 .main-shell{width:100%;margin-left:0}.topbar{height:auto;min-height:64px;padding:8px 24px}.content{padding:28px 24px}.topbar>.help-button{margin-left:0;margin-right:auto}
 .columns{grid-template-columns:1fr}.account-nav{gap:14px;flex-wrap:wrap;justify-content:flex-end}.account-name{max-width:45vw}
 .row>.col-md-3,.row>.col-md-6,.row>.col-md-9{width:100%}.nav-pills{flex-direction:row!important;flex-wrap:wrap;gap:6px;margin-bottom:20px}.nav-pills .nav-link{min-height:44px}
}
@media(max-width:600px){
 .sidebar{padding:14px 16px}.sidebar nav{grid-template-columns:1fr 1fr}.sidebar nav>a{padding:10px 8px;font-size:13px}.sidebar nav svg{width:16px}
 .topbar{padding:8px 16px;gap:8px}.account-nav{gap:10px;font-size:13px}.account-name{max-width:38vw}.content{padding:24px 16px 40px}
 .panel{padding:20px}.table-panel{padding:0}.filters{align-items:stretch}.filters>input,.filters>select{width:100%;flex-basis:100%;min-width:0!important}
 .stack .button{width:100%}.card-bottom{flex-wrap:wrap}.stats{grid-template-columns:1fr;gap:10px}.stat{padding:14px 18px}.stat strong{font-size:28px}.stat small,.stat span{font-size:12px}
 .auth-panel{padding:20px}.footer{padding:20px 16px}.list-row>form{max-width:100%}input[type=file]{width:100%}
 #page-help{padding:20px;width:calc(100% - 20px);max-height:90dvh}.help-heading{align-items:center}.help-heading h2{font-size:21px}
}
@media(pointer:coarse){.check{min-height:44px}.check input{width:22px;height:22px}.button,.btn{padding:12px 18px}.tabs a{padding:14px 4px}.table-scroll{scrollbar-width:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Dense, single-line research lists. Horizontal scrolling preserves usable column widths. */
table.compact-players td { padding: 1px 7px; height: 24px; line-height: 20px; white-space: nowrap; font-size: 12px; }
table.compact-players th { padding: 5px 7px; white-space: nowrap; }
table.compact-players .position-badge { padding: 0 3px; line-height: 18px; font-size: 11px; }
table.compact-players .star-button { min-height: 20px; height: 20px; min-width: 24px; padding: 0; line-height: 18px; font-size: 15px; }
table.compact-players form { margin: 0; }
.status-code { font-size: 11px; }.status-code.unavailable { color: #b42318; font-weight: 700; }
.column-icon { display: inline-flex; align-items: center; justify-content: center; min-width: 19px; min-height: 22px; width: 19px; height: 22px; padding: 0; border: 0; background: transparent; color: #47655b; cursor: pointer; }
.column-icon svg { width: 13px; height: 13px; }.column-icon.selected { background: #d9edb2; }
.column-filter { max-width: min(440px,90vw); border: 1px solid #ccd8d0; border-radius: 12px; padding: 20px; }
.column-filter input { width: 100%; margin-bottom: 12px; }.column-filter .button { margin: 4px; }
.column-filter .check input { width: 20px; height: 20px; margin: 0 10px 0 0; }
.column-filter { max-height: 85dvh; overflow-y: auto; }
.column-selector { margin: 8px; font-size: 12px; padding: 6px 12px; }
table [hidden] { display: none !important; }

/* Compact workspace density, including research, scoring and history tables. */
.content { padding: 18px 24px 28px; }
.topbar { height: 52px; padding: 0 24px; }
h1 { font-size: clamp(25px,2.4vw,32px); margin: 3px 0 6px; letter-spacing: -.7px; }
h2 { font-size: 19px; margin-bottom: 8px; } h3 { font-size: 15px; margin: 8px 0; }
p { margin-bottom: 8px; }
.lede { margin-bottom: 10px; font-size: 13px; }
.page-heading { gap: 12px; margin-bottom: 8px; }
.panel { padding: 12px 15px; margin-bottom: 12px; border-radius: 9px; }
.columns,.card-grid { gap: 12px; align-items: start; }
.filters { gap: 8px; margin: 9px 0; font-size: 13px; }
.source-line { margin: 8px 0 12px; } .hint,.source-line { line-height: 1.45; }
.tabs { gap: 20px; } .tabs a { padding: 7px 0; min-height: 32px; }
.button,.btn,.text-button,summary { min-height: 32px; }
.button,.btn { padding: 6px 11px; } summary { padding: 3px 0; }
input:not([type=checkbox]):not([type=radio]):not(.form-control),select,textarea { padding: 5px 9px; font-size: 14px; }
.stack { gap: 5px; } .stack label { margin-top: 4px; } .stack .button { margin-top: 5px; }
.stats { gap: 12px; margin-bottom: 14px; } .stat { padding: 12px 16px; }
.stat strong { font-size: 27px; margin: 2px 0; }
.mini-stats { flex-wrap: wrap; gap: 12px 24px; padding: 7px 0 12px; }
.mini-stats strong { font-size: 22px; }
.notice { padding: 8px 12px; margin-bottom: 12px; }
.list-row,.news-row { padding: 7px 0; } .section-heading { margin: 12px 0 8px; }
.position-depth { gap: 6px; } .position-depth>div { padding: 4px 8px; }
.card-bottom,.table-panel .card-bottom { padding: 8px 12px; }
.table-panel { padding: 0; } hr { margin: 12px 0; }
.player-photo { width: 130px; height: 100px; margin-bottom: 10px; }
.manual-analysis .stack { max-width: 700px; }
.manual-analysis>summary { font-size: 14px; font-weight: 600; }
.manual-analysis>p { margin-top: 8px; max-width: 950px; }
table td,table tbody th,table.compact-players td { padding: 1px 7px; height: 24px; line-height: 20px; white-space: nowrap; font-size: 12px; }
table thead th,table.compact-players th { padding: 3px 7px; white-space: nowrap; }
table .badge,table .position-badge { padding: 0 3px; line-height: 18px; }
table form { margin: 0; } table p { margin: 0; }
table .button,table .btn,table .star-button { min-height: 20px; height: 20px; padding: 0 4px; line-height: 18px; }
.brand { margin-bottom: 16px; } .sidebar { padding-top: 20px; }
.nav-caption { margin-top: 14px; margin-bottom: 5px; } .sidebar nav>a { padding-top: 7px; padding-bottom: 7px; }
@media(max-width:600px) {
 .content { padding: 12px 12px 24px; } .panel { padding: 10px 12px; } .table-panel { padding: 0; }
 .page-heading { margin-bottom: 10px; } .page-heading .lede { margin-bottom: 8px; }
 input:not([type=checkbox]):not([type=radio]),select,textarea { font-size: 16px!important; }
 .topbar { padding: 4px 12px; } .mini-stats { gap: 10px 16px; }
}
@media(pointer:coarse) { .filters .button,.stack .button,select { min-height: 40px; } }
.ranking-scope { display: inline-block; margin: 0 3px; }
.ranking-scope select { font-size: 11px!important; padding: 1px 3px; min-height: 24px; max-width: 94px; }

.filter-values { max-height: 40vh; overflow: auto; margin: 8px 0; }
.filter-values .check { display:flex; align-items:center; padding:3px; overflow-wrap:anywhere; }
.filter-values [hidden] { display:none!important; }
.home-league-summary { display:grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr) auto; gap:20px; }
.home-counts,.home-season { padding-top:12px; }
.home-counts small,.home-season small { letter-spacing:1.5px; }
.home-counts strong { font-size:28px; margin-right:10px; }
.home-season strong { display:block; font-size:30px; }
.home-season { text-align:right; }
.home-leagues .section-heading { margin-top:0; }
.home-site { display:flex; justify-content:flex-end; margin-bottom:8px; }
.home-leagues + .callout { padding:20px; margin-top:20px; }
@media(max-width:900px) { .home-league-summary { grid-template-columns:1fr; gap:4px; } .home-counts { display:flex; flex-wrap:wrap; gap:16px; } .home-season { text-align:left; } }

.player-overview-grid { display:grid; grid-template-columns:minmax(230px,1fr) minmax(0,2.5fr); gap:24px; }
.player-overview-grid>div { min-width:0; }
.player-overview-details { display:grid; gap:14px; align-content:start; }
.player-overview .mini-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.player-overview .league-points { border-top:1px solid #dce4de; padding-top:12px; }
.player-overview .profile-facts { grid-template-columns:auto minmax(0,1fr); }
.player-overview .profile-facts dd { overflow-wrap:anywhere; }
@media(max-width:700px) { .player-overview-grid { grid-template-columns:1fr; gap:12px; } .player-overview .mini-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }

.owner-transaction td { background-color: var(--bs-tertiary-bg, #e6eee8); font-weight: 600; }
html[data-theme="Dark"] .owner-transaction td { background-color:#30343a; color:#f1f3f5; }

.live-situation-grid{display:flex;flex-wrap:wrap;gap:12px 28px}.live-situation-grid dd{margin:0;font-size:1.15rem}.owner-matchup{border-left:3px solid var(--accent,#18735c);padding-left:8px}#live-games h3,#live-matchups h3{font-size:1rem;margin:12px 0 5px}#live-games details{margin:8px 0}#live-games meter{width:min(400px,100%)}#live-games .table-scroll,#live-matchups .table-scroll{max-width:100%;overflow:auto}

.live-matchup-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.live-matchup-card>h2{grid-column:1/-1}.live-matchup-card>div{min-width:0}.live-matchup-card[hidden]{display:none}@media(max-width:900px){.live-matchup-card{grid-template-columns:minmax(0,1fr)}}
