:root { --accent: var(--green); --accent-dark: var(--green-dark); --accent-soft: var(--soft-green); }
#setup-section { display: none !important; }
.mobile-sheet-handle { display: none; }
.available-player-summary { display: block; margin-top: .2rem; color: var(--accent); font: .62rem 'DM Mono', monospace; white-space: normal; }
.mock-page { overflow: hidden; }
.section-number { color: var(--accent, #c56a2d); font-family: 'DM Mono', monospace; }
.mock-section { border-top: 1px solid var(--line); padding-top: 4rem; padding-bottom: 5rem; display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 2rem; }
.section-content { min-width: 0; }
.section-heading, .draft-header, .card-heading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; }
.section-note { max-width: 25rem; color: var(--muted); line-height: 1.5; }
.setup-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; margin-top: 2.5rem; }
.setup-grid > label, .slot-grid label { display: grid; gap: .45rem; color: var(--muted); font: .75rem 'DM Mono', monospace; text-transform: uppercase; letter-spacing: .04em; }
.setup-grid select, .setup-grid input, .player-filters input, .player-filters select { width: 100%; border: 1px solid var(--line); background: var(--surface); color: var(--ink); padding: .8rem; font: inherit; }
.player-search-toggle { border: 1px solid var(--line); background: var(--surface); color: var(--muted); width: 2.75rem; min-width: 2.75rem; padding: .55rem; font-size: 1rem; cursor: pointer; }
.player-search-toggle:hover, .player-search-toggle:focus-visible { border-color: var(--accent, #c56a2d); color: var(--accent, #c56a2d); }
.card-heading .player-search-toggle { flex: 0 0 2.75rem; align-self: center; }
.player-filters.search-collapsed { display: flex; }
.position-filter-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; }
.player-filters { display: flex; align-items: center; gap: .5rem; }
.position-filter-buttons { flex: 1 1 auto; min-width: 0; }
.player-filters input { flex: 1 1 12rem; min-width: 8rem; }
.player-filters select { flex: 0 0 100px; }
.position-filter-button { display: grid; place-items: center; width: 3.25rem; height: 3.25rem; padding: .2rem; border: 2px solid transparent; border-radius: 50%; color: #111; cursor: pointer; }
.position-filter-button strong { font: .65rem 'DM Mono', monospace; }
.position-filter-button span { font: .58rem 'DM Mono', monospace; }
.position-filter-button.position-all { background: var(--surface); border-color: var(--line); color: var(--muted); }
.position-filter-button.position-qb { background: #d7f3f0; }.position-filter-button.position-rb { background: #f1e4ff; }.position-filter-button.position-wr { background: #fff1b8; }.position-filter-button.position-te { background: #ffe0c2; }.position-filter-button.position-k { background: #e4e7ff; }.position-filter-button.position-dst { background: #e8e8e8; }.position-filter-button.position-flex, .position-filter-button.position-superflex { background: #d9ead3; }
.position-filter-button[aria-pressed="true"] { border-color: var(--ink); box-shadow: 0 0 0 2px var(--surface); }
.slot-field { grid-column: 1 / -1; border: 0; border-top: 1px solid var(--line); padding: 1.5rem 0 0; margin: .5rem 0 0; }
.slot-field legend { color: var(--muted); font: .75rem 'DM Mono', monospace; text-transform: uppercase; }
.slot-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }
.ranking-import { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; border: 1px solid var(--line); padding: 1rem 1.15rem; gap: 1rem; }
.saved-drafts-panel { grid-column: 1 / -1; display: grid; gap: 1rem; border: 1px solid var(--line); padding: 1rem 1.15rem; }
.saved-drafts-panel > div:first-child { display: grid; gap: .35rem; }
.saved-drafts-panel > div:first-child span { color: var(--muted); font-size: .85rem; }
.saved-drafts-list { display: grid; gap: .5rem; }
.saved-draft-row { display: flex; justify-content: space-between; align-items: center; gap: 1rem; border-top: 1px solid var(--line); padding-top: .65rem; }
.saved-draft-row.is-complete { border-left: 3px solid #2d8a59; padding-left: .75rem; }
.saved-draft-row.is-in-progress { border-left: 3px solid #c47a2c; padding-left: .75rem; }
.saved-draft-label { display: grid; gap: .25rem; min-width: 0; }
.saved-draft-label strong { overflow-wrap: anywhere; }
.saved-draft-status { width: max-content; padding: .2rem .4rem; font: .62rem 'DM Mono', monospace; text-transform: uppercase; letter-spacing: .03em; }
.saved-draft-current-pick { color: var(--muted); font: .68rem 'DM Mono', monospace; }
.is-complete .saved-draft-status { background: #d9f0df; color: #176238; }
.is-in-progress .saved-draft-status { background: #f8e7ce; color: #8a501c; }
.saved-draft-actions { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: flex-end; }
.saved-draft-delete { color: #9b3d2e; }
.draft-config-panel { grid-column: 1 / -1; display: grid; gap: 1rem; border: 1px solid var(--line); padding: 1rem 1.15rem; }
.draft-config-panel > div:first-child { display: grid; gap: .35rem; }
.draft-config-panel > div:first-child span { color: var(--muted); font-size: .85rem; }
.draft-config-controls { display: flex; flex-wrap: wrap; gap: .5rem; }
.draft-config-controls .saved-configs { display: flex; flex: 1 1 100%; flex-wrap: wrap; gap: .5rem; }
.draft-config-controls .saved-config-button { border: 1px solid var(--line); background: var(--surface); color: var(--ink); cursor: pointer; }
.draft-config-controls .saved-config-button.is-selected, .draft-config-controls .saved-config-button:hover, .draft-config-controls .saved-config-button:focus-visible { border-color: var(--green); background: var(--soft-green); color: var(--green-dark); }
.draft-config-controls .saved-config-empty { align-self: center; color: var(--muted); font: .65rem 'DM Mono', monospace; text-transform: uppercase; letter-spacing: .03em; }
.draft-config-controls select, .draft-config-controls input { min-width: 0; border: 1px solid var(--line); background: var(--surface); color: var(--ink); padding: .7rem; font: inherit; }
.draft-config-controls select { flex: 1 1 15rem; }
.draft-config-controls input { flex: 1 1 12rem; }
.draft-config-controls button { border: 1px solid var(--line); background: var(--surface); color: var(--ink); padding: .7rem .85rem; cursor: pointer; transition: background .2s, border-color .2s, color .2s; }
.draft-config-controls button:hover, .draft-config-controls button:focus-visible { border-color: var(--green); color: var(--green-dark); }
.draft-config-controls button.is-dirty { border-color: var(--green); background: var(--green); color: #fff; }
.draft-config-controls button.is-dirty:hover, .draft-config-controls button.is-dirty:focus-visible { background: var(--green-dark); border-color: var(--green-dark); color: #fff; }
.draft-config-controls button.is-clean { color: var(--muted); }
.draft-config-controls button:nth-of-type(3) { border-color: #b64a3a; color: #a43b2d; }
.draft-config-controls button:nth-of-type(3):hover, .draft-config-controls button:nth-of-type(3):focus-visible { background: #a43b2d; border-color: #a43b2d; color: #fff; }
.draft-action-dialog { width: min(440px, calc(100% - 2rem)); border: 1px solid var(--line); background: var(--surface); color: var(--ink); padding: 0; box-shadow: 10px 10px 0 var(--green); }
.draft-action-dialog::backdrop { background: rgb(20 32 26 / .52); backdrop-filter: blur(2px); }
.draft-action-dialog-form { display: grid; gap: .8rem; padding: 1.5rem; }
.draft-action-dialog-form h3, .draft-action-dialog-form p { margin: 0; }
.draft-action-dialog-form > p:not(.chart-overline) { color: var(--muted); line-height: 1.5; }
.draft-action-dialog-form label { display: grid; gap: .4rem; color: var(--muted); font: .7rem var(--mono); text-transform: uppercase; }
.draft-action-dialog-form input { border: 1px solid var(--line); background: var(--surface); color: var(--ink); padding: .75rem; font: inherit; }
.draft-action-dialog-actions { display: flex; justify-content: flex-end; gap: .6rem; margin-top: .5rem; }
.draft-action-dialog-actions button { border: 1px solid var(--line); padding: .7rem .9rem; cursor: pointer; }
.draft-action-dialog-actions .secondary-button { background: var(--surface); color: var(--ink); }
.draft-action-dialog-actions .primary-button { border-color: var(--green); background: var(--green); color: #fff; }
.draft-action-dialog-actions .primary-button:hover, .draft-action-dialog-actions .primary-button:focus-visible { background: var(--green-dark); border-color: var(--green-dark); }
.ranking-import div { display: grid; gap: .35rem; }.ranking-import span, .form-status { color: var(--muted); font-size: .85rem; }.import-button { position: relative; cursor: pointer; }.import-button input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.start-button { grid-column: 1 / -1; justify-self: start; }.form-status { grid-column: 1 / -1; min-height: 1.2rem; margin: 0; }
.draft-section { padding-bottom: 4rem; }.draft-actions { display: flex; align-items: center; gap: 1rem; }.draft-status { color: var(--muted); font: .75rem 'DM Mono', monospace; }.draft-layout { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 1.5rem; margin-top: 2rem; }.draft-sidebar { display: grid; gap: 1rem; align-content: start; }.draft-card { background: var(--surface); border: 1px solid var(--line); padding: 1rem; }.roster-list { display: grid; gap: .45rem; margin-top: 1rem; }.roster-slot { display: flex; justify-content: space-between; gap: .5rem; border-bottom: 1px solid var(--line); padding: .5rem 0; font-size: .85rem; }.roster-slot small { color: var(--muted); }.roster-player-image { width: 30px; height: 30px; margin-right: .35rem; vertical-align: middle; object-fit: contain; border-radius: 50%; }.player-filters { display: grid; grid-template-columns: 1fr 80px; gap: .5rem; margin: .75rem 0; }.available-list { max-height: 420px; overflow: auto; }.available-player { width: 100%; display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; gap: .65rem; align-items: center; border: 0; border-bottom: 1px solid var(--line); background: transparent; color: var(--ink); padding: .65rem 0; text-align: left; cursor: pointer; }.available-player:hover, .available-player:focus-visible { color: var(--accent, #c56a2d); }.available-player img { width: 32px; height: 32px; object-fit: contain; border-radius: 50%; }.available-player strong, .available-player span { display: block; }.available-player span { color: var(--muted); font-size: .75rem; }.available-player em { color: var(--accent, #c56a2d); font: normal .7rem 'DM Mono', monospace; }
.sort-status { display: block; margin-top: .35rem; color: var(--accent, #c56a2d); font: .65rem 'DM Mono', monospace; text-transform: uppercase; letter-spacing: .04em; }
.draft-board-wrap { min-width: 0; overflow: auto; }.draft-board { display: grid; grid-template-columns: repeat(var(--team-count), minmax(7rem, 1fr)); min-width: max(100%, calc(var(--team-count) * 7rem)); border: 1px solid var(--line); background: var(--surface); }.team-column { min-width: 0; border-right: 1px solid var(--line); }.team-column:last-child { border-right: 0; }.team-heading { padding: .8rem .65rem; border-bottom: 2px solid var(--ink); font: .7rem 'DM Mono', monospace; text-transform: uppercase; }.team-heading.is-user { color: var(--accent, #c56a2d); }.pick-cell { display: grid; grid-template-columns: minmax(0, 1fr); gap: .2rem; align-items: center; min-width: 0; min-height: 54px; padding: .55rem .5rem; border-bottom: 1px solid var(--line); }.pick-cell.is-current { outline: 2px solid var(--accent, #c56a2d); outline-offset: -2px; }.pick-cell.position-rb { background: #f1e4ff !important; }.pick-cell.position-wr { background: #fff1b8 !important; }.pick-cell.position-qb { background: #d7f3f0 !important; }.pick-cell.position-te { background: #ffe0c2 !important; }.pick-cell.position-k { background: #e4e7ff !important; }.pick-cell.position-dst { background: #e8e8e8 !important; }.pick-cell small { color: var(--muted); display: block; font: .65rem 'DM Mono', monospace; }.pick-cell strong { display: block; font-size: .78rem; overflow-wrap: anywhere; }.pick-cell em { color: var(--muted); font: normal .65rem 'DM Mono', monospace; text-transform: uppercase; }.pick-cell.empty { color: var(--muted); }.mobile-tabs { display: none; }
.result-section { border-top: 1px solid var(--line); padding-top: 4rem; padding-bottom: 6rem; display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 2rem; }.grade-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 1rem; margin-top: 2rem; }.grade-hero, .grade-category, .final-rosters { border: 1px solid var(--line); background: var(--surface); }.grade-hero { display: flex; align-items: center; gap: 1.5rem; padding: 1.5rem; }.grade-letter { display: grid; place-items: center; width: 112px; aspect-ratio: 1; background: var(--accent, #c56a2d); color: #fff; font: 4rem 'Space Grotesk', sans-serif; }.grade-hero h3 { margin: .35rem 0; }.grade-hero p:last-child { color: var(--muted); line-height: 1.5; }.grade-categories { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line); }.grade-category { padding: 1rem; }.grade-category strong { display: block; color: var(--accent, #c56a2d); font: 1.5rem 'Space Grotesk', sans-serif; }.grade-category span { color: var(--muted); font-size: .8rem; }.final-rosters { margin-top: 1rem; padding: 1.25rem; overflow: auto; }.final-rosters table { width: 100%; min-width: 640px; border-collapse: collapse; font-size: .82rem; }.final-rosters th, .final-rosters td { border-bottom: 1px solid var(--line); padding: .65rem; text-align: left; }.final-rosters th { font: .7rem 'DM Mono', monospace; text-transform: uppercase; color: var(--muted); }.final-rosters td:last-child { color: var(--muted); }.is-hidden { display: none !important; }
.result-tabs { display: none; }
@media (max-width: 800px) { .mock-section, .result-section { grid-template-columns: 1fr; gap: 1rem; padding-top: 2.5rem; }.section-number { order: -1; }.setup-grid { grid-template-columns: repeat(2, 1fr); }.slot-grid { grid-template-columns: repeat(4, 1fr); }.ranking-import { align-items: start; flex-direction: column; }.draft-layout { display: block; }.draft-sidebar { display: contents; }.draft-board-wrap { margin-top: 1rem; }.mobile-tabs { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: .75rem; }.mobile-tabs button { border: 1px solid var(--line); background: var(--surface); color: var(--muted); padding: .7rem; font: .7rem 'DM Mono', monospace; text-transform: uppercase; }.mobile-tabs button.is-selected { background: var(--ink); color: var(--surface); }.draft-card { margin-bottom: 1rem; }.draft-card.available-card { display: none; }.draft-card.available-card.is-mobile-visible, .draft-card:first-child.is-mobile-hidden { display: block; }.draft-card:first-child.is-mobile-hidden { display: none; }.draft-board { min-width: 620px; }.grade-layout { grid-template-columns: 1fr; }.grade-hero { align-items: flex-start; }.grade-letter { width: 84px; font-size: 3rem; flex: 0 0 auto; } }
@media (max-width: 480px) { .setup-grid { grid-template-columns: 1fr 1fr; }.slot-grid { grid-template-columns: repeat(3, 1fr); }.section-heading, .draft-header { align-items: start; flex-direction: column; }.draft-actions { width: 100%; justify-content: space-between; }.grade-categories { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .saved-draft-row { align-items: start; flex-direction: column; }.saved-draft-actions { justify-content: flex-start; } }
@media (max-width: 480px) { .draft-config-controls > * { width: 100%; flex-basis: 100%; } }

/* Mock draft interaction overrides */
.setup-grid > label small { font: .65rem 'DM Sans', sans-serif; text-transform: none; letter-spacing: 0; }
.draft-layout { grid-template-columns: 235px minmax(0, 1fr); }
.draft-sidebar { display: grid; grid-column: 1; grid-row: 1; }
.available-card { grid-column: 2; grid-row: 1; }
.draft-board-wrap { grid-column: 1 / -1; }
.draft-board { grid-template-columns: repeat(var(--team-count), minmax(7rem, 1fr)); min-width: max(100%, calc(var(--team-count) * 7rem)); }
.team-heading { padding: .65rem .4rem; font-size: .62rem; overflow-wrap: anywhere; }
.pick-cell { grid-template-columns: minmax(0, 1fr); gap: .15rem; min-width: 0; min-height: 58px; padding: .4rem; }
.pick-cell small { font-size: .58rem; }.pick-cell strong { font-size: .68rem; }
.pick-cell .pick-player { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.available-list { max-height: 380px; }
.player-filters { grid-template-columns: 1fr 100px; }
.available-player { grid-template-columns: 38px minmax(0, 1fr) auto auto; }
.available-player img { width: 38px; height: 38px; }
.player-info-trigger { min-width: 0; border: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; }
.draft-player-button { border: 1px solid var(--accent, #c56a2d); background: var(--accent, #c56a2d); color: #fff; padding: .5rem .7rem; font: .7rem 'DM Mono', monospace; text-transform: uppercase; cursor: pointer; }
.draft-player-button:hover { filter: brightness(1.1); }
.player-dialog { width: min(680px, calc(100% - 2rem)); height: min(760px, calc(100dvh - 2rem)); max-height: min(760px, calc(100dvh - 2rem)); align-self: start; margin: 1rem auto; overflow-y: auto; border: 1px solid var(--line); background: var(--surface); color: var(--ink); padding: 1rem; box-sizing: border-box; }
.player-dialog.is-mobile-open { position: fixed; right: 0; bottom: 0; left: 0; z-index: 1000; display: block; width: 100%; height: min(82dvh, 720px); max-height: min(82dvh, 720px); margin: 0; border-radius: 1rem 1rem 0 0; box-shadow: 0 -10px 30px rgb(15 20 18 / .2); }
body.has-mobile-player-dialog::after { position: fixed; inset: 0; z-index: 999; background: rgb(15 20 18 / .45); content: ""; }
.player-dialog::backdrop { background: rgb(15 20 18 / .55); }.dialog-close { position: absolute; top: .75rem; right: .75rem; border: 0; background: transparent; color: var(--muted); font-size: 1.5rem; cursor: pointer; }
.player-report { padding: 2rem; }.player-report-heading { display: flex; align-items: center; gap: 1rem; border-bottom: 1px solid var(--line); padding-bottom: 1.25rem; }.player-report-heading img { width: 72px; height: 72px; object-fit: contain; border-radius: 50%; }.player-report-heading h2 { margin: 0; }.player-report-heading p { margin: .25rem 0 0; color: var(--muted); }.report-grade-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line); margin-top: 1.25rem; }.report-grade { background: var(--surface); padding: 1rem; }.report-grade strong { display: block; color: var(--accent, #c56a2d); font: 1.5rem 'Space Grotesk', sans-serif; }.report-grade span { color: var(--muted); font-size: .8rem; }.report-note { color: var(--muted); font-size: .82rem; line-height: 1.5; }
@media (max-width: 800px) { .available-player { grid-template-columns: 34px minmax(0, 1fr) auto; }.available-player em { display: none; }.draft-player-button { padding: .55rem .65rem; }.player-report { padding: 1.5rem; } }
.mobile-draft-board { display: none; }
.result-mobile-board { display: none; }
.mobile-board-nav { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) 2.5rem; align-items: center; gap: .5rem; padding: .75rem; border-bottom: 1px solid var(--line); background: var(--ink); color: var(--surface); }
.mobile-board-nav button { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border: 1px solid rgb(255 255 255 / .3); background: transparent; color: inherit; font-size: 1.1rem; cursor: pointer; }
.mobile-board-nav button:disabled { opacity: .35; cursor: default; }
.mobile-board-nav div { display: grid; gap: .12rem; text-align: center; }
.mobile-board-nav span, .mobile-board-nav small { color: rgb(255 255 255 / .65); font: .58rem 'DM Mono', monospace; text-transform: uppercase; letter-spacing: .05em; }
.mobile-board-nav strong { font: 600 1rem 'Space Grotesk', sans-serif; }
.mobile-round-picks { background: var(--surface); }
.mock-report-card { border: 1px solid var(--line); background: var(--surface); }
.completed-draft { display: grid; gap: 1rem; margin-top: 2rem; }
.final-detail-heading { margin-top: 1.5rem; }.final-detail-heading h3 { margin: .25rem 0 0; }
.final-board { width: 100%; min-width: 640px; border-collapse: collapse; overflow: hidden; background: var(--surface); }.final-board caption { padding: .75rem; text-align: left; color: var(--muted); font: .65rem 'DM Mono', monospace; text-transform: uppercase; }.final-board th, .final-board td { padding: .65rem .75rem; border-bottom: 1px solid var(--line); text-align: left; }.final-board thead th { background: var(--ink); color: var(--surface); font: .65rem 'DM Mono', monospace; text-transform: uppercase; }.final-board tbody tr.position-rb > * { background: #f1e4ff; }.final-board tbody tr.position-wr > * { background: #fff1b8; }.final-board tbody tr.position-qb > * { background: #d7f3f0; }.final-board tbody tr.position-te > * { background: #ffe0c2; }.final-board tbody tr.position-k > * { background: #e4e7ff; }.final-board tbody tr.position-dst > * { background: #e8e8e8; }.final-board tbody tr.empty > * { color: var(--muted); }
.final-team-rosters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }.final-team-roster { border: 1px solid var(--line); background: var(--surface); }.final-team-roster.is-user { border-color: var(--accent, #c56a2d); }.final-team-roster header { display: flex; justify-content: space-between; gap: .75rem; align-items: baseline; padding: .85rem 1rem; border-bottom: 1px solid var(--line); }.final-team-roster h3 { margin: 0; }.final-team-roster header span { color: var(--muted); font: .65rem 'DM Mono', monospace; }.final-roster-row { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr) auto; gap: .5rem; padding: .55rem 1rem; border-bottom: 1px solid var(--line); font-size: .8rem; }.final-roster-row small { color: var(--muted); font: .62rem 'DM Mono', monospace; text-transform: uppercase; }.final-roster-row strong { font: .7rem 'DM Mono', monospace; }.final-roster-row.is-bench { background: color-mix(in srgb, var(--muted) 7%, transparent); }
.final-ranking tbody tr.is-user > * { background: color-mix(in srgb, var(--accent, #c56a2d) 24%, var(--surface)) !important; color: var(--ink); font-weight: 700; }.final-ranking tbody tr.is-user th { border-left: 4px solid var(--accent, #c56a2d); }
@media (max-width: 800px) { .pick-cell { grid-template-columns: 7rem minmax(0, 1fr) 3rem; gap: .45rem; }.final-team-rosters { grid-template-columns: 1fr; } }
@media (max-width: 800px) { .draft-section, .result-section { padding-inline: 1rem; } }
@media (max-width: 800px) { #final-rosters { min-width: 0; overflow: hidden; }.final-rosters .final-ranking, .final-rosters .final-board { width: 100%; max-width: 100%; min-width: 0; table-layout: fixed; font-size: .68rem; }.final-ranking th, .final-ranking td, .final-board th, .final-board td { padding: .5rem .35rem; overflow-wrap: anywhere; word-break: break-word; }.final-ranking th:nth-child(1) { width: 34%; }.final-ranking th:nth-child(2), .final-ranking th:nth-child(3), .final-ranking th:nth-child(4) { width: 22%; }.final-board th:nth-child(1) { width: 12%; }.final-board th:nth-child(2) { width: 24%; }.final-board th:nth-child(3) { width: 34%; }.final-board th:nth-child(4) { width: 18%; }.final-board th:nth-child(5) { width: 12%; } }
@media (max-width: 800px) {
	#final-rosters { padding: 0; border: 0; overflow: visible; }
	#final-rosters .completed-draft { width: 100%; margin-top: 0; }
	#final-rosters .final-team-rosters { width: 100%; min-width: 0; }
	#final-rosters .final-team-roster { width: 100%; min-width: 0; box-sizing: border-box; }
	.result-tabs { position: fixed; right: 0; bottom: 0; left: 0; z-index: 10; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 0; padding: .5rem .75rem calc(.5rem + env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: color-mix(in srgb, var(--surface) 94%, transparent); box-shadow: 0 -8px 24px rgb(15 20 18 / .08); backdrop-filter: blur(12px); }
	.result-tabs button { min-height: 2.5rem; border: 0; background: transparent; color: var(--muted); padding: .35rem .2rem; font: .58rem 'DM Mono', monospace; text-transform: uppercase; }
	.result-tabs button.is-selected { background: var(--ink); color: var(--surface); }
	#result-section[data-result-view="my-roster"] .final-ranking,
	#result-section[data-result-view="board"] .final-ranking,
	#result-section[data-result-view="league"] .final-board,
	#result-section[data-result-view="my-roster"] .final-board,
	#result-section[data-result-view="overview"] .final-board { display: none; }
	#result-section[data-result-view="overview"] .final-team-roster:not(.is-user),
	#result-section[data-result-view="my-roster"] .final-team-roster:not(.is-user),
	#result-section[data-result-view="league"] .final-team-rosters { display: none; }
	#result-section[data-result-view="board"] .final-team-rosters { display: none; }
	#result-section[data-result-view="league"] .final-team-roster.is-user { display: none; }
	#result-section[data-result-view="my-roster"] .grade-layout,
	#result-section[data-result-view="league"] .grade-layout,
	#result-section[data-result-view="board"] .grade-layout,
	#result-section[data-result-view="my-roster"] .method-note,
	#result-section[data-result-view="league"] .method-note,
	#result-section[data-result-view="board"] .method-note,
	#result-section[data-result-view="overview"] .final-detail-heading,
	#result-section[data-result-view="my-roster"] .final-detail-heading,
	#result-section[data-result-view="league"] .final-detail-heading { display: none; }
	#result-section[data-result-view="board"] .result-mobile-board { display: block; }
	#result-section[data-result-view="board"] .final-board { display: none; }
	#result-section[data-result-view="board"] .final-detail-heading { display: none; }
	#result-section[data-result-view="league"] .final-team-rosters { display: grid; }
	#result-section[data-result-view="league"] .final-team-roster.is-user { display: none; }
	#result-section[data-result-view="league"] details.final-team-roster > summary { cursor: pointer; list-style: none; }
	#result-section[data-result-view="league"] details.final-team-roster > summary::-webkit-details-marker { display: none; }
	#result-section[data-result-view="league"] details.final-team-roster > summary::after { content: "+"; float: right; color: var(--accent, #c56a2d); font: 1.1rem 'DM Mono', monospace; }
	#result-section[data-result-view="league"] details.final-team-roster[open] > summary::after { content: "−"; }
}
@media (max-width: 800px) { .final-roster-row { grid-template-columns: 3.5rem minmax(0, 1fr); align-items: start; }.final-roster-row > span { min-width: 0; overflow-wrap: anywhere; word-break: break-word; line-height: 1.2; }.final-roster-row > strong { display: none; }.final-team-roster .roster-slot { width: 100%; box-sizing: border-box; }.final-team-roster .roster-slot > span:last-child { flex: 0 0 auto; font-size: .68rem; white-space: nowrap; } }
.final-team-roster .roster-slot { min-width: 0; padding: .55rem .75rem; box-sizing: border-box; }
.final-team-roster .roster-slot-player { min-width: 0; display: flex; align-items: center; }
.final-team-roster .roster-player-name { min-width: 0; overflow-wrap: anywhere; }
.final-roster-value { display: grid; justify-items: end; gap: .1rem; flex: 0 0 auto; color: var(--muted); text-align: right; }
.final-roster-value strong { color: var(--ink); font: .72rem 'DM Mono', monospace; }
.final-roster-value small { font: .62rem 'DM Mono', monospace; white-space: nowrap; }
.mock-report-card .card-player { padding: 1.25rem; border-bottom: 1px solid var(--line); }
.mock-report-card .card-identity { display: flex; align-items: center; gap: 14px; min-width: 0; }
.mock-report-card .card-identity img, .mock-report-card .headshot-placeholder { display: grid; place-items: center; width: 72px; height: 72px; flex: 0 0 72px; object-fit: contain; background: var(--soft-green); color: var(--green); font: 20px 'Space Grotesk', sans-serif; border-radius: 0; }
.mock-report-card .card-identity h3 { overflow-wrap: anywhere; margin: 0 0 5px; font-size: 20px; }
.mock-report-card .card-identity p, .mock-report-card .sample-note { margin: 0; color: var(--muted); font: 10px 'DM Mono', monospace; }
.mock-report-card .sample-note { display: block; margin-top: 17px; }
.mock-report-card .grade-list { list-style: none; padding: 0; }
.mock-report-card .grade-list li { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 62px; border-bottom: 1px solid var(--line); }
.mock-report-card .grade-list li:last-child { border-bottom: 0; }
.mock-report-card .grade-list li span { display: block; font: 13px 'Space Grotesk', sans-serif; }
.mock-report-card .grade-list small { display: block; margin-top: 4px; color: var(--muted); font: 9px 'DM Mono', monospace; }
.mock-report-card .grade-list strong { display: grid; place-items: center; width: 42px; height: 32px; flex: 0 0 42px; font: 700 16px 'Space Grotesk', sans-serif; }
.mock-report-card .grade-Aplus, .mock-report-card .grade-A { background: #b7eac6; color: #0c5b38; }.mock-report-card .grade-Aminus { background: #d7f4df; color: #0c5b38; }
.mock-report-card .grade-Bplus, .mock-report-card .grade-B, .mock-report-card .grade-Bminus { background: #e7f0d2; color: #47612b; }.mock-report-card .grade-Cplus, .mock-report-card .grade-C, .mock-report-card .grade-Cminus { background: #f6edc8; color: #78631b; }
.mock-report-card .grade-Dplus, .mock-report-card .grade-D, .mock-report-card .grade-Dminus { background: #f5d9bd; color: #8b4d25; }.mock-report-card .grade-F, .mock-report-card .grade-NslashA { background: var(--paper); color: var(--muted); }
.mock-report-card .grade-row { cursor: pointer; }
.mock-report-card .grade-row:focus-visible { outline: 2px solid var(--accent, #c56a2d); outline-offset: -2px; }
.mock-report-card .grade-list .grade-calculation { display: none; line-height: 1.4; }
.mock-report-card .grade-row.is-expanded .grade-calculation { display: block; }
.detail-tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin: 0; border-bottom: 1px solid var(--line); background: var(--line); }
.detail-tabs button { border: 0; background: var(--surface); color: var(--muted); padding: .8rem .55rem; font: .68rem 'DM Mono', monospace; text-transform: uppercase; cursor: pointer; }
.detail-tabs button.is-selected { background: var(--ink); color: var(--surface); }
.detail-panel { display: none; }
.detail-panel.is-selected { display: block; }
.detail-panel h4 { margin: 1.25rem; font: 600 1rem 'Space Grotesk', sans-serif; }
.detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--line); }
.detail-metric { display: grid; gap: .25rem; min-height: 70px; padding: .8rem 1.25rem; background: var(--surface); }
.detail-metric span { color: var(--muted); font: .68rem 'DM Mono', monospace; text-transform: uppercase; }
.detail-metric strong { font: 1.15rem 'Space Grotesk', sans-serif; }
.detail-metric small { color: var(--muted); font-size: .7rem; }
.detail-note { margin: 1.25rem; color: var(--muted); font-size: .8rem; line-height: 1.5; }
.mock-report-card .grade-list { margin: 0; }
.mock-report-card .grade-list li { padding-left: 1.25rem; padding-right: 1.25rem; }
.roster-list { gap: 1rem; }
.roster-group { display: grid; gap: .35rem; }
.roster-group + .roster-group { padding-top: .65rem; border-top: 1px solid var(--line); }
.roster-group h4 { margin: 0; color: var(--muted); font: .65rem 'DM Mono', monospace; text-transform: uppercase; letter-spacing: .04em; }
.roster-slot-player { display: flex; align-items: center; flex: 1 1 auto; min-width: 0; gap: .4rem; overflow: hidden; }
.roster-slot-player > small { flex: 0 0 3rem; font: .68rem 'DM Mono', monospace; text-transform: uppercase; }
.roster-player-name { display: flex; align-items: center; min-width: 0; font-size: .92rem; font-weight: 600; overflow: hidden; }
.roster-player-details { display: grid; min-width: 0; gap: .1rem; }
.roster-player-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.roster-slot.is-recent-pick, .mobile-pick-row.is-recent-pick, .pick-cell.is-recent-pick { animation: recent-pick-flash 1.2s ease-out; }
@keyframes recent-pick-flash { 0%, 35% { background-color: color-mix(in srgb, var(--accent, #c56a2d) 32%, var(--surface)); } 100% { background-color: transparent; } }
@media (max-width: 800px) {
	.draft-sidebar { display: contents; }
	.draft-layout { display: block; }
	.draft-layout[data-mobile-view="board"] .available-card,
	.draft-layout[data-mobile-view="board"] .draft-sidebar > .draft-card,
	.draft-layout[data-mobile-view="players"] .draft-sidebar > .draft-card,
	.draft-layout[data-mobile-view="roster"] .available-card { display: none; }
	.draft-layout[data-mobile-view="players"] .draft-board,
	.draft-layout[data-mobile-view="roster"] .draft-board,
	.draft-layout[data-mobile-view="roster"] .mobile-draft-board { display: none; }
	.draft-layout[data-mobile-view="board"] .draft-board { display: grid; }
	.draft-layout[data-mobile-view="board"] .mobile-draft-board { display: block; }
	.draft-layout[data-mobile-view="players"] .draft-board-wrap,
	.draft-layout[data-mobile-view="roster"] .draft-board-wrap { margin-top: 0; }
	.draft-layout[data-mobile-view="players"] .available-card,
	.draft-layout[data-mobile-view="roster"] .draft-sidebar > .draft-card { display: block; }
	.draft-layout[data-mobile-view="players"] .available-card { padding-top: .75rem; }
	.draft-layout[data-mobile-view="players"] .player-filters { position: sticky; top: 10rem; z-index: 4; margin: .25rem -.75rem .75rem; padding: .65rem .75rem; background: var(--surface); border-bottom: 1px solid var(--line); backdrop-filter: blur(12px); }
	.draft-layout[data-mobile-view="players"] .available-list { max-height: none; overflow: visible; }
	.draft-layout[data-mobile-view="players"] .available-player { grid-template-columns: 64px minmax(0, 1fr) auto; min-height: 92px; box-sizing: border-box; gap: .75rem; padding: .75rem 0; }
	.draft-layout[data-mobile-view="players"] .available-player img { width: 64px; height: 64px; }
	.draft-layout[data-mobile-view="players"] .available-player strong { font-size: .95rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.draft-layout[data-mobile-view="players"] .available-player span { margin-top: .2rem; font-size: .72rem; }
	.draft-layout[data-mobile-view="players"] .draft-player-button { align-self: stretch; min-width: 4.5rem; padding-inline: .7rem; }
	.draft-layout[data-mobile-view="roster"] .roster-slot { min-height: 92px; box-sizing: border-box; }
	.draft-layout[data-mobile-view="roster"] .roster-player-image { width: 64px; height: 64px; }
	.draft-layout[data-mobile-view="roster"] .roster-slot { position: relative; display: block; padding: 0; overflow: hidden; background: #050505; }
	.draft-layout[data-mobile-view="roster"] .roster-slot-player { display: flex; align-items: center; min-height: 76px; margin: 8px 8px 8px 16px; padding: .35rem .7rem .35rem .4rem; border-radius: 6px; color: #111; box-sizing: border-box; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-qb .roster-slot-player { background: #a8c9a1; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-rb .roster-slot-player { background: #d98c8c; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-wr .roster-slot-player { background: #9bbfe3; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-te .roster-slot-player { background: #e3c66b; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-k .roster-slot-player { background: #c1a7d9; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-dst .roster-slot-player { background: #b7b9b5; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-flex .roster-slot-player,
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-superflex .roster-slot-player { background: #b7d5a8; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.position-bench .roster-slot-player { background: #d6d2c8; }
	.draft-layout[data-mobile-view="roster"] .roster-slot.empty .roster-slot-player { background: #d6d2c8 !important; color: #111; }
	.draft-layout[data-mobile-view="roster"] .roster-slot > span:last-child { position: absolute; top: 14px; right: 18px; display: grid; justify-items: end; color: #111; font: .68rem 'DM Mono', monospace; text-align: right; }
	.draft-layout[data-mobile-view="roster"] .roster-slot > span:last-child small { font: .58rem 'DM Mono', monospace; }
	.draft-layout[data-mobile-view="roster"] .roster-slot-player > small,
	.draft-layout[data-mobile-view="roster"] .roster-player-name,
	.draft-layout[data-mobile-view="roster"] .roster-player-name small { color: #111; }
	.draft-layout[data-mobile-view="roster"] .roster-slot-position { position: relative; z-index: 1; flex: 0 0 3.5rem; color: #111 !important; font-weight: 700; }
	.mobile-draft-board { border: 1px solid var(--line); background: var(--surface); }
	.mobile-board-nav { position: relative; }
	.mobile-pick-row { display: grid; grid-template-columns: 48px 34px minmax(0, 1fr) 28px; gap: .5rem; align-items: center; width: 100%; box-sizing: border-box; min-height: 48px; padding: .55rem .65rem; border-bottom: 1px solid var(--line); }
	.mobile-pick-row:last-child { border-bottom: 0; }
	.mobile-pick-row.is-current { background: color-mix(in srgb, var(--accent, #c56a2d) 12%, transparent); }
	.mobile-pick-row.is-user-pick { border-left: 3px solid var(--accent, #c56a2d); padding-left: calc(.65rem - 3px); }
	.mobile-pick-row small, .mobile-pick-row strong { font: .62rem 'DM Mono', monospace; text-transform: uppercase; }
	.mobile-pick-row small { color: var(--muted); }
	.mobile-pick-row strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.mobile-pick-row .pick-identity { color: var(--accent, #c56a2d); }
	.mobile-pick-row span { min-width: 0; overflow: hidden; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
	.mobile-pick-row em { color: var(--muted); font: normal .58rem 'DM Mono', monospace; text-transform: uppercase; }
	.mobile-pick-row > span:first-child { grid-column: 3; width: 100%; }
	.mobile-pick-row > span:first-child + em { grid-column: 4; }
	.mobile-pick-row.position-rb { background: #f1e4ff; }
	.mobile-pick-row.position-wr { background: #fff1b8; }
	.mobile-pick-row.position-qb { background: #d7f3f0; }
	.mobile-pick-row.position-te { background: #ffe0c2; }
	.mobile-pick-row.position-k { background: #e4e7ff; }
	.mobile-pick-row.position-dst { background: #e8e8e8; }
	.player-dialog { width: 100%; max-width: none; height: min(82dvh, 720px); max-height: min(82dvh, 720px); margin: auto 0 0; padding: .5rem; border-right: 0; border-bottom: 0; border-left: 0; border-radius: 1rem 1rem 0 0; }
	.player-dialog::backdrop { background: rgb(15 20 18 / .45); }
	.mock-report-card .grade-list li { padding-left: .85rem; padding-right: .85rem; }
	.detail-tabs button { padding: .75rem .25rem; font-size: .6rem; }
	.detail-metric { padding-left: .85rem; padding-right: .85rem; }
}
.grade-category { cursor: pointer; }
.grade-category:focus-visible { outline: 2px solid var(--accent, #c56a2d); outline-offset: -2px; }
.grade-category .grade-calculation { display: none; margin-top: .6rem; color: var(--muted); font-size: .72rem; line-height: 1.4; }
.grade-category.is-expanded .grade-calculation { display: block; }
.available-player-summary { color: var(--muted); }
.available-player-summary-value { color: var(--accent); }
.draft-player-button { border-color: var(--green-dark); background: var(--green-dark); }
.draft-player-button:hover { border-color: var(--green); background: var(--green); }
@media (max-width: 800px) {
	.mobile-tabs button.is-selected,
	body.is-drafting .mobile-tabs button.is-selected { background: var(--accent); color: #fff; }
	body.is-drafting .draft-layout[data-mobile-view="roster"] .roster-slot-player { gap: .15rem; }
	body.is-drafting .draft-layout[data-mobile-view="roster"] .roster-player-image { margin-right: 0; }
}

.pick-cell.position-rb,
.pick-cell.position-wr,
.pick-cell.position-qb,
.pick-cell.position-te,
.pick-cell.position-k,
.pick-cell.position-dst,
.mobile-pick-row.position-rb,
.mobile-pick-row.position-wr,
.mobile-pick-row.position-qb,
.mobile-pick-row.position-te,
.mobile-pick-row.position-k,
.mobile-pick-row.position-dst {
	color: #111;
}
@media (max-width: 800px) {
	.mobile-pick-row,
	.mobile-pick-row.position-qb,
	.mobile-pick-row.position-rb,
	.mobile-pick-row.position-wr,
	.mobile-pick-row.position-te,
	.mobile-pick-row.position-k,
	.mobile-pick-row.position-dst { position: relative; display: block; min-height: 76px; padding: 0; overflow: hidden; background: #050505 !important; }
	.mobile-pick-row.is-user-pick { border-left: 0; padding-left: 0; }
	.mobile-pick-pill { display: grid; grid-template-columns: 64px minmax(0, 1fr); column-gap: .4rem; align-items: center; min-height: 76px; margin: 8px 8px 8px 16px; padding: .35rem .7rem .35rem .4rem; border-radius: 6px; color: #111; box-sizing: border-box; }
	.mobile-pick-image { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; object-position: center top; }
	.mobile-pick-meta { display: grid; grid-column: 2; grid-template-columns: minmax(0, 1fr) auto auto; grid-template-rows: auto auto; column-gap: .25rem; align-items: center; min-width: 0; }
	.mobile-pick-meta small, .mobile-pick-meta strong, .mobile-pick-meta em { min-width: 0; overflow: hidden; font: .62rem 'DM Mono', monospace; text-transform: uppercase; white-space: nowrap; text-overflow: ellipsis; }
	.mobile-pick-meta small { grid-column: 2; grid-row: 1; }
	.mobile-pick-meta strong { grid-column: 2 / -1; grid-row: 2; text-align: right; }
	.mobile-pick-meta em { grid-column: 3; grid-row: 1; font-style: normal; }
	.mobile-pick-meta em::before { content: '•'; margin-right: .25rem; }
	.mobile-pick-meta span { grid-column: 1; grid-row: 1 / -1; min-width: 0; overflow: hidden; text-align: left; font: 600 .92rem 'Space Grotesk', sans-serif; white-space: nowrap; text-overflow: ellipsis; }
	.mobile-pick-row.position-qb .mobile-pick-pill { background: #a8c9a1; }
	.mobile-pick-row.position-rb .mobile-pick-pill { background: #d98c8c; }
	.mobile-pick-row.position-wr .mobile-pick-pill { background: #9bbfe3; }
	.mobile-pick-row.position-te .mobile-pick-pill { background: #e3c66b; }
	.mobile-pick-row.position-k .mobile-pick-pill { background: #c1a7d9; }
	.mobile-pick-row.position-dst .mobile-pick-pill { background: #b7b9b5; }
	.mobile-pick-row.empty .mobile-pick-pill { background: #d6d2c8; color: #4f4b43; }
}
.pick-cell.position-dst strong,
.pick-cell.position-rb .pick-player,
.pick-cell.position-wr .pick-player,
.pick-cell.position-qb .pick-player,
.pick-cell.position-te .pick-player,
.pick-cell.position-k .pick-player,
.pick-cell.position-dst .pick-player,
.mobile-pick-row.position-rb strong,
.mobile-pick-row.position-wr strong,
.mobile-pick-row.position-qb strong,
.mobile-pick-row.position-te strong,
.mobile-pick-row.position-k strong,
.mobile-pick-row.position-dst strong,
.mobile-pick-row.position-rb span,
.mobile-pick-row.position-wr span,
.mobile-pick-row.position-qb span,
.mobile-pick-row.position-te span,
.mobile-pick-row.position-k span,
.mobile-pick-row.position-dst span {
	color: #111 !important;
}
.pick-cell.position-rb small,
.pick-cell.position-wr small,
.pick-cell.position-qb small,
.pick-cell.position-te small,
.pick-cell.position-k small,
.pick-cell.position-dst small,
.pick-cell.position-rb em,
.pick-cell.position-wr em,
.pick-cell.position-qb em,
.pick-cell.position-te em,
.pick-cell.position-k em,
.pick-cell.position-dst em,
.mobile-pick-row.position-rb small,
.mobile-pick-row.position-wr small,
.mobile-pick-row.position-qb small,
.mobile-pick-row.position-te small,
.mobile-pick-row.position-k small,
.mobile-pick-row.position-dst small,
.mobile-pick-row.position-rb em,
.mobile-pick-row.position-wr em,
.mobile-pick-row.position-qb em,
.mobile-pick-row.position-te em,
.mobile-pick-row.position-k em,
.mobile-pick-row.position-dst em {
	color: #111 !important;
}

@media (max-width: 800px) {
	body.is-drafting .site-header,
	body.is-drafting .site-footer { display: none; }
	body.is-drafting .mock-page { overflow: visible; }
	body.is-drafting .draft-section { min-height: 100dvh; padding-top: 0; }
	body.is-drafting .draft-section > .section-number { display: none; }
	body.is-drafting .draft-section > .section-content { width: 100%; }
	body.is-drafting .draft-header { --draft-mobile-header-height: 6rem; position: sticky; top: 0; z-index: 5; display: flex; flex-direction: row; align-items: center; justify-content: space-between; min-height: var(--draft-mobile-header-height); margin-inline: -1rem; padding: .65rem 1rem; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--surface) 94%, transparent); backdrop-filter: blur(12px); }
	body.is-drafting .draft-header h2 { font-size: 1.35rem; letter-spacing: 0; }
	body.is-drafting .draft-actions { width: auto; gap: .4rem; justify-content: flex-end; }
	body.is-drafting .draft-status { color: var(--accent, #c56a2d); font-size: .72rem; font-weight: 700; line-height: 1.25; }
	body.is-drafting .draft-actions .secondary-button { padding: .45rem .55rem; font-size: .65rem; }
	body.is-drafting .draft-layout { padding-top: 0; }
	body.is-drafting .mobile-tabs { position: sticky; top: 6rem; z-index: 4; grid-template-columns: repeat(3, 1fr); margin: 0 0 .75rem; padding: .5rem .75rem; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); box-shadow: 0 8px 24px rgb(15 20 18 / .08); }
	body.is-drafting .mobile-tabs button { min-height: 2.75rem; border: 0; border-radius: 6px; background: transparent; }
	body.is-drafting .mobile-tabs button.is-selected { background: var(--ink); color: var(--surface); }
	body.is-drafting .draft-card,
	body.is-drafting .mobile-draft-board,
	body.is-drafting .draft-action-menu summary,
	body.is-drafting .player-filters input,
	body.is-drafting .player-filters select,
	body.is-drafting .draft-player-button { border-radius: 8px; }
	body.is-drafting .mobile-draft-board { overflow: hidden; }
	body.is-drafting .draft-layout { margin-top: 1rem; }
	body.is-drafting .draft-board-wrap { overflow: visible; }
}

.draft-action-menu { display: contents; }
.draft-action-menu summary { display: none; }
@media (min-width: 801px) {
	.draft-action-menu { display: flex; align-items: center; gap: .4rem; flex: 0 0 auto; }
	.draft-action-menu > button { display: inline-flex; width: auto; min-width: 0; flex: 0 0 auto; white-space: nowrap; }
}
@media (max-width: 800px) {
	body.is-drafting .draft-action-menu { position: relative; display: block; }
	body.is-drafting .draft-action-menu:not([open]) > button { display: none; }
	body.is-drafting .draft-action-menu summary { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border: 1px solid var(--line); background: var(--surface); color: var(--ink); cursor: pointer; font-size: 1.35rem; line-height: 1; list-style: none; }
	body.is-drafting .draft-action-menu summary::-webkit-details-marker { display: none; }
	body.is-drafting .draft-action-menu[open] summary { border-color: var(--accent, #c56a2d); color: var(--accent, #c56a2d); }
	body.is-drafting .draft-action-menu[open]::before { content: ""; position: absolute; top: 2.55rem; right: 0; z-index: 5; width: 10rem; height: 8rem; border: 1px solid var(--line); background: var(--surface); box-shadow: 0 8px 20px rgb(15 20 18 / .14); }
	body.is-drafting .draft-action-menu > button { width: max-content; }
	body.is-drafting .draft-action-menu[open] > button { display: inline-flex; }
	body.is-drafting .draft-action-menu[open] > button { position: absolute; right: .35rem; z-index: 6; min-width: 9.3rem; margin: 0; background: var(--surface); }
	body.is-drafting .draft-action-menu[open] > button:first-of-type { top: 2.75rem; }
	body.is-drafting .draft-action-menu[open] > button:nth-of-type(2) { top: 5.25rem; }
	body.is-drafting .draft-action-menu[open] > button:nth-of-type(3) { top: 7.75rem; }
}

/* Draft board polish */
.available-card { align-self: start; }
.available-list { max-height: 460px; }
.draft-board { grid-template-rows: auto repeat(var(--draft-rounds), minmax(58px, auto)); overflow: hidden; border-color: color-mix(in srgb, var(--ink) 18%, var(--line)); box-shadow: 0 12px 30px rgb(15 20 18 / .06); }
.team-heading { background: var(--ink); color: var(--surface); border-right: 1px solid rgb(255 255 255 / .18); border-bottom: 0; text-align: center; letter-spacing: .06em; }
.team-heading:last-of-type { border-right: 0; }
.team-heading.is-user { background: var(--accent, #c56a2d); color: #fff; }
.pick-cell { position: relative; min-height: 72px; grid-template-columns: 1fr; grid-template-rows: auto auto auto auto; align-content: center; gap: .18rem; border-right: 1px solid var(--line); padding: .65rem .55rem; transition: background-color .2s ease, transform .2s ease; }
.pick-cell:nth-child(12n + 13) { border-left: 0; }
.pick-cell small { font-size: .6rem; letter-spacing: .04em; }
.pick-cell strong { font-size: .72rem; line-height: 1.15; }
.pick-player { display: block; padding-right: 2.75rem; overflow: hidden; font-size: .8rem; font-weight: 600; line-height: 1.15; text-overflow: ellipsis; white-space: normal; }
.pick-first-name, .pick-last-name { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pick-player-image { position: absolute; right: .25rem; bottom: .2rem; width: 2.75rem; height: 2.75rem; object-fit: contain; border-radius: 50%; }
.pick-cell em { font-size: .58rem; }
.pick-cell.empty { background: color-mix(in srgb, var(--surface) 88%, var(--line)); }
.pick-cell.empty strong { color: var(--muted); font-weight: 500; }
.pick-cell.is-user-pick { box-shadow: inset 3px 0 0 var(--accent, #c56a2d); }
.pick-cell.is-current { z-index: 1; box-shadow: inset 0 0 0 2px var(--accent, #c56a2d); transform: translateY(-1px); }
.mobile-pick-row { min-height: 54px; }
.mobile-pick-row small { font-size: .68rem; }
.draft-board { position: relative; }
.team-heading { position: sticky; top: 0; z-index: 3; box-shadow: 0 2px 0 rgb(15 20 18 / .14); }
.pick-cell.round-even.empty { background: color-mix(in srgb, var(--surface) 92%, var(--accent, #c56a2d)); }

@media (min-width: 801px) {
	.draft-layout { grid-template-rows: auto auto; }
	.draft-layout > .draft-board-wrap { grid-column: 1 / -1; grid-row: 1; overflow: hidden; }
	.draft-sidebar { grid-column: 1; grid-row: 2; }
	.available-card { grid-column: 2; grid-row: 2; }
	.draft-board-wrap { overflow: hidden; }
	.draft-board { width: 100%; min-width: 0; grid-template-columns: repeat(var(--team-count), minmax(0, 1fr)); grid-template-rows: auto; grid-auto-rows: 72px; }
	.pick-cell { display: block; overflow: hidden; padding: .4rem; }
	.pick-cell .pick-player-image { width: 2rem; height: 2rem; }
	.pick-cell .pick-player { position: absolute; top: .4rem; right: .4rem; left: .4rem; padding-right: 1.9rem; font-size: .64rem; line-height: 1.05; white-space: normal; }
	.pick-cell .pick-cell-meta { position: absolute; right: .4rem; bottom: .4rem; left: .4rem; display: flex; align-items: center; gap: .3rem; padding-right: 1.8rem; font-size: .55rem; }
	.pick-cell .pick-cell-meta small { display: inline; }
	.pick-cell .pick-cell-meta em { display: inline-flex; align-items: center; gap: .2rem; }
	.pick-cell .pick-position-dot { width: .32rem; height: .32rem; border-radius: 50%; background: currentColor; }
	.pick-cell.empty small { position: absolute; bottom: .4rem; left: .4rem; }
}

@media (max-width: 800px) {
	body.is-drafting { --draft-mobile-header-height: 6rem; overflow: hidden; }
	body.is-drafting .mock-page { height: 100dvh; overflow: hidden; }
	body.is-drafting .draft-section { height: 100%; min-height: 100dvh; box-sizing: border-box; overflow: hidden; }
	body.is-drafting .draft-section > .section-content { height: 100%; }
	body.is-drafting .draft-layout { position: relative; min-height: calc(100dvh - var(--draft-mobile-header-height)); margin-top: 0; }
	body.is-drafting .draft-board-wrap { position: fixed; inset: var(--draft-mobile-header-height) 0 0; z-index: 1; overflow: auto; padding-bottom: 0; background: var(--surface); }
	body.is-drafting .draft-board { display: none; }
	body.is-drafting .draft-layout .draft-board { display: grid; width: max(100%, calc(var(--team-count) * 7rem)); min-width: 0; }
	body.is-drafting .mobile-draft-board { display: none !important; }
	body.is-drafting .draft-board-wrap::after { content: none; display: none; }
	body.is-drafting .draft-board { width: var(--draft-board-width); min-width: var(--draft-board-width); grid-template-columns: repeat(var(--team-count), 7rem); gap: .35rem; padding: .35rem; border: 0; background: transparent; box-sizing: border-box; }
	body.is-drafting .draft-board .team-heading,
	body.is-drafting .draft-board .pick-cell { border: 1px solid var(--line); border-radius: 8px; }
	body.is-drafting .draft-board .pick-cell { position: relative; display: block; overflow: hidden; padding: .2rem .45rem .45rem; }
	body.is-drafting .draft-board .pick-player { position: absolute; top: .2rem; right: .45rem; left: .45rem; display: block; padding-right: 2.75rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	body.is-drafting .draft-board .pick-first-name,
	body.is-drafting .draft-board .pick-last-name { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	body.is-drafting .draft-board .pick-cell-meta { position: absolute; right: .45rem; bottom: .4rem; left: .45rem; display: flex; align-items: center; gap: .3rem; padding-right: 2.2rem; }
	body.is-drafting .draft-board .pick-cell-meta small { display: inline; }
	body.is-drafting .draft-board .pick-cell-meta em { display: inline-flex; align-items: center; gap: .2rem; }
	body.is-drafting .draft-board .pick-position-dot { width: .32rem; height: .32rem; border-radius: 50%; background: currentColor; }
	body.is-drafting .draft-board .pick-player-image { position: absolute; right: .25rem; bottom: .2rem; width: 2.75rem; height: 2.75rem; object-fit: contain; border-radius: 50%; }
	body.is-drafting .draft-board .team-heading { border-bottom: 1px solid var(--line); }
	body.is-drafting .mobile-tabs { position: sticky; top: -.75rem; z-index: 11; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; height: auto; margin: -.5rem -1rem .35rem; padding: .5rem .75rem; border-bottom: 1px solid var(--line); background: var(--surface); box-shadow: 0 8px 20px rgb(15 20 18 / .08); backdrop-filter: blur(12px); }
	body.is-drafting .mobile-tabs button { min-height: 2.25rem; border: 0; border-radius: 6px; background: transparent; color: var(--muted); padding: .25rem .2rem; font: .62rem 'DM Mono', monospace; text-transform: uppercase; }
	body.is-drafting .mobile-tabs button.is-selected { background: var(--ink); color: var(--surface); }
	body.is-drafting .mobile-sheet-card .card-heading .chart-overline,
	body.is-drafting .mobile-sheet-card .card-heading h3 { display: none; }
	body.is-drafting .mobile-sheet-card .card-heading { display: none; }
	body.is-drafting .mobile-sheet-card .sort-status { display: none; }
	body.is-drafting .mobile-sheet-card .player-filters { gap: .3rem; }
	body.is-drafting .mobile-sheet-card .player-filters { position: sticky; top: 2.6rem; z-index: 12; margin: 0 -.75rem .35rem; padding: .25rem .75rem; background: var(--surface); backdrop-filter: blur(12px); }
	body.is-drafting .mobile-sheet-card .position-filter-buttons { flex-wrap: nowrap; gap: .2rem; overflow-x: auto; scrollbar-width: none; }
	body.is-drafting .mobile-sheet-card .position-filter-buttons::-webkit-scrollbar { display: none; }
	body.is-drafting .mobile-sheet-card .position-filter-button { flex: 0 0 2.35rem; width: 2.35rem; height: 2.35rem; padding: .1rem; border-width: 1px; }
	body.is-drafting .mobile-sheet-card .position-filter-button strong { font-size: .52rem; }
	body.is-drafting .mobile-sheet-card .position-filter-button span { font-size: .48rem; }
	body.is-drafting .mobile-sheet-card .player-search-toggle { width: 2.35rem; min-width: 2.35rem; height: 2.35rem; padding: .25rem; }
	body.is-drafting .mobile-sheet-card { position: fixed; top: calc(40dvh + 3.6rem); right: 0; bottom: 0; left: 0; z-index: 10; display: block !important; height: calc(60dvh - 3.6rem); max-height: none; margin: 0; overflow: auto; padding: 0 1rem calc(4.5rem + env(safe-area-inset-bottom)); border: 1px solid var(--line); border-bottom: 0; border-radius: 14px 14px 0 0; box-shadow: 0 -10px 30px rgb(15 20 18 / .14); transform: none; transition: top .22s ease, height .22s ease; }
	body.is-drafting .mobile-sheet-card[data-mobile-active="false"] { display: none !important; }
	body.is-drafting .draft-layout[data-sheet-state="half"] .draft-board-wrap { bottom: calc(60dvh - 3.6rem); }
	body.is-drafting .draft-layout[data-sheet-state="collapsed"] .draft-board-wrap { bottom: 4.35rem; }
	body.is-drafting .draft-layout[data-sheet-state="expanded"] .draft-board-wrap { bottom: calc(100dvh - var(--draft-mobile-header-height)); }
	body.is-drafting .draft-layout[data-sheet-state="collapsed"] .mobile-sheet-card { top: calc(100dvh - 4.35rem); }
	body.is-drafting .draft-layout[data-sheet-state="expanded"] .mobile-sheet-card { top: var(--draft-mobile-header-height); height: calc(100dvh - var(--draft-mobile-header-height)); }
	body.is-drafting .draft-layout[data-sheet-state="collapsed"] .mobile-sheet-card { height: 4.35rem; }
	body.is-drafting .mobile-sheet-card.is-dragging { transition: none; will-change: top, height; }
	body.is-drafting .mobile-sheet-handle { position: sticky; top: 0; z-index: 6; display: block; width: 100%; height: 2.1rem; min-height: 2.1rem; margin: 0 auto .15rem; padding: 0; border: 0; border-radius: 0; background: transparent; opacity: 1; cursor: grab; touch-action: none; }
	body.is-drafting .mobile-sheet-handle::after { content: ""; display: block; width: 3rem; height: .3rem; margin: auto; border-radius: 999px; background: var(--muted); opacity: .55; }
	body.is-drafting .mobile-sheet-handle:active { cursor: grabbing; }
	body.is-drafting .mobile-board-live { border: 0; background: transparent; color: var(--accent, #c56a2d); padding: 0; font: .58rem 'DM Mono', monospace; text-transform: uppercase; cursor: pointer; }
	body.is-drafting .draft-layout[data-mobile-view="players"] .available-list { max-height: none; overflow: visible; }
}

/* Stadium Utility position palette */
.pick-cell.position-qb,
.final-board tbody tr.position-qb > *,
.mobile-pick-row.position-qb { background: #a8c9a1 !important; }
.pick-cell.position-rb,
.final-board tbody tr.position-rb > *,
.mobile-pick-row.position-rb { background: #d98c8c !important; }
.pick-cell.position-wr,
.final-board tbody tr.position-wr > *,
.mobile-pick-row.position-wr { background: #9bbfe3 !important; }
.pick-cell.position-te,
.final-board tbody tr.position-te > *,
.mobile-pick-row.position-te { background: #e3c66b !important; }
.pick-cell.position-k,
.final-board tbody tr.position-k > *,
.mobile-pick-row.position-k { background: #c1a7d9 !important; }
.pick-cell.position-dst,
.final-board tbody tr.position-dst > *,
.mobile-pick-row.position-dst { background: #b7b9b5 !important; }
@media (max-width: 800px) {
	.mobile-pick-row.position-qb,
	.mobile-pick-row.position-rb,
	.mobile-pick-row.position-wr,
	.mobile-pick-row.position-te,
	.mobile-pick-row.position-k,
	.mobile-pick-row.position-dst { background: #050505 !important; }
}

/* Final mobile draft controls */
.available-player-summary { color: var(--muted) !important; }
.available-player-summary-value { display: inline !important; color: var(--accent) !important; }
.draft-player-button { border-color: #06452a !important; background: #06452a !important; }
.draft-player-button:hover { border-color: #0c5b38 !important; background: #0c5b38 !important; }
.draft-player-button:disabled { border-color: #06452a !important; background: #06452a !important; color: #fff !important; opacity: 1 !important; }
@media (max-width: 800px) {
	body.is-drafting .mobile-tabs button.is-selected { background: var(--accent) !important; color: #fff !important; }
	body.is-drafting .draft-layout[data-mobile-view="roster"] .roster-slot-player { gap: 0 !important; }
	body.is-drafting .draft-layout[data-mobile-view="roster"] .roster-slot-position { flex: 0 0 2.5rem !important; width: 2.5rem; margin-right: 0; white-space: nowrap; }
	body.is-drafting .draft-layout[data-mobile-view="roster"] .roster-player-image { margin-right: 0 !important; }
}
.roster-player-name .roster-bye { display: block; white-space: nowrap; }
.available-player-bye.bye-warning-red { color: #b42318 !important; font-weight: 700; }
.available-player-bye.bye-warning-yellow { color: #8a6500 !important; font-weight: 700; }
.player-context-ranks { display: grid; gap: .1rem; }
.player-context-history, .player-context-current { display: block; white-space: nowrap; }
.player-context-availability { display: block; margin-top: .15rem; color: var(--muted); }
.player-context-availability.availability-probably-available { color: #176238; }
.player-context-availability.availability-maybe { color: #8a6500; }
.player-context-availability.availability-probably-taken { color: #b42318; }

.recommendations-list { display: grid; gap: .35rem; }
.recommendation-row { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: .65rem; align-items: center; min-height: 4.35rem; padding: .55rem 0; border-bottom: 1px solid var(--line); }
.recommendation-row > img { width: 48px; height: 48px; object-fit: contain; border-radius: 50%; }
.recommendation-copy { display: grid; grid-template-columns: minmax(0, 1fr); gap: .12rem; min-width: 0; overflow: hidden; }
.recommendation-type { color: var(--accent); font: .56rem 'DM Mono', monospace; letter-spacing: .04em; text-transform: uppercase; }
.recommendation-player-trigger { display: grid; gap: .1rem; min-width: 0; padding: 0; border: 0; background: transparent; color: var(--ink); text-align: left; cursor: pointer; }
.recommendation-player-trigger strong { overflow: hidden; font: 600 .9rem 'Space Grotesk', sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.recommendation-player-trigger span { overflow: hidden; color: var(--muted); font: .64rem 'DM Mono', monospace; text-overflow: ellipsis; white-space: nowrap; }
.recommendation-player-trigger:hover strong { color: var(--accent); }
.recommendation-detail { color: var(--muted); font: .58rem 'DM Mono', monospace; white-space: nowrap; }
.recommendation-context { display: block; color: var(--muted); font: .58rem 'DM Mono', monospace; line-height: 1.35; white-space: normal; }
.recommendation-row.is-empty { grid-template-columns: minmax(0, 1fr); }
.recommendation-row.is-empty strong { font: 600 .84rem 'Space Grotesk', sans-serif; }
@media (min-width: 801px) {
	.draft-layout { grid-template-rows: auto auto auto; }
	.draft-layout > .draft-board-wrap { grid-column: 1 / -1; grid-row: 1; overflow: hidden; }
	.draft-sidebar { grid-column: 1; grid-row: 2 / 4; }
	.recommendations-card { grid-column: 2; grid-row: 2; }
	.available-card { grid-column: 2; grid-row: 3; }
	.recommendations-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .35rem; }
	.recommendation-row { min-width: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: .25rem .65rem; }
	.recommendation-row:nth-child(even) { border-right: 0; }
	.recommendation-row:nth-child(n + 3) { border-bottom: 0; }
}
@media (max-width: 800px) {
	body.is-drafting .recommendation-row { grid-template-columns: 64px minmax(0, 1fr) auto; gap: .75rem; min-height: 96px; box-sizing: border-box; padding: .75rem 0; }
	body.is-drafting .recommendation-row > img { width: 64px; height: 64px; }
	body.is-drafting .recommendation-player-trigger strong { font-size: .95rem; }
	body.is-drafting .recommendation-player-trigger span { margin-top: .2rem; font-size: .72rem; }
	body.is-drafting .recommendation-detail { display: none; }
	body.is-drafting .recommendation-row .draft-player-button { align-self: stretch; min-width: 4.5rem; padding-inline: .7rem; }
}

@media (max-width: 800px) {
	body.is-drafting { overflow: hidden; }
	body.is-drafting .mock-page { height: 100dvh; overflow: hidden; }
	body.is-drafting .draft-section { height: 100%; min-height: 100dvh; box-sizing: border-box; overflow: hidden; }
	body.is-drafting .draft-section > .section-content { height: 100%; }
	body.is-drafting .draft-header { position: fixed; inset: 0 0 auto; z-index: 20; box-sizing: border-box; height: var(--draft-mobile-header-height); min-height: 0; margin: 0; padding: .65rem 1rem; }
	body.is-drafting .draft-board .pick-player { padding-right: 0; }
}

/* Keep search separate from the position filters at every viewport width. */
.player-filters { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; }
.player-filters .player-search-toggle { grid-column: 1; grid-row: 1; display: inline-grid; place-items: center; width: auto; min-width: 4.5rem; height: 2.75rem; padding: .55rem .75rem; font: 500 .68rem 'DM Mono', monospace; letter-spacing: .03em; text-transform: uppercase; }
.player-filters .position-filter-buttons { grid-column: 2; grid-row: 1; min-width: 0; }
.player-filters input { grid-column: 1 / -1; grid-row: 2; min-width: 0; }
.player-filters.search-open { grid-template-columns: minmax(0, 1fr); }
.player-filters.search-open .player-search-toggle { display: none; }
.player-filters.search-open .position-filter-buttons { grid-column: 1; grid-row: 2; }
.player-filters.search-open input { grid-column: 1; grid-row: 1; }
@media (max-width: 800px) {
	body.is-drafting .mobile-sheet-card .player-search-toggle { width: auto; min-width: 4.25rem; height: 2.35rem; padding: .25rem .5rem; }
	body.is-drafting .mobile-sheet-card .player-filters { grid-template-columns: auto minmax(0, 1fr); gap: .35rem; }
	body.is-drafting .mobile-sheet-card .player-filters.search-open { grid-template-columns: minmax(0, 1fr); }
}
