/* Trade review: one hierarchy shared by results, saved trades, and comparisons. */
html body.sketch-app .review-outcomes{border-top:1px solid var(--sk-line);padding-top:14px}
html body.sketch-app .review-evidence{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;color:var(--sk-muted);font-size:11px;line-height:1.5;margin-bottom:12px}
html body.sketch-app .review-caution{color:var(--sk-accent)}
html body.sketch-app .review-impact{display:grid;grid-template-columns:minmax(110px,1.5fr) 1fr 1fr;gap:8px 12px;align-items:baseline;font-variant-numeric:tabular-nums;margin:0 0 12px}
html body.sketch-app .review-impact>span{font-size:12px;color:var(--sk-muted)}
html body.sketch-app .review-impact>span:nth-child(2),html body.sketch-app .review-impact>span:nth-child(3){font-size:11px;text-align:right}
html body.sketch-app .review-impact>strong{font-size:21px;font-weight:600;letter-spacing:-.04em;text-align:right;line-height:1.3}
html body.sketch-app .review-impact>strong:nth-last-child(-n+2){font-size:15px;letter-spacing:0}
html body.sketch-app .review-impact abbr{border:0;text-decoration:underline dotted;text-underline-offset:3px;cursor:help}
html body.sketch-app details.review-details{border:0;border-top:1px solid var(--sk-line);border-radius:0;background:none;padding:0;margin:12px 0 0;box-shadow:none}
html body.sketch-app details.review-details>summary{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:8px 0;font-size:12px;font-weight:500;cursor:pointer;list-style:none}
html body.sketch-app details.review-details>summary::-webkit-details-marker{display:none}
html body.sketch-app details.review-details[open]>summary>span{transform:rotate(45deg)}
html body.sketch-app .review-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--sk-line);padding-top:10px;margin-top:0}
html body.sketch-app .review-card-footer .trade-option-notes{border:0;margin:0;padding:0;flex:1;min-width:0;font-size:11px}
html body.sketch-app .review-compare{font-size:12px;min-height:44px;white-space:nowrap;padding:8px 12px!important;display:flex;gap:7px;align-items:center}
html body.sketch-app .review-compare[aria-pressed=true]{border-color:var(--sk-accent);color:var(--sk-accent);background:color-mix(in srgb,var(--sk-accent) 8%,var(--sk-panel))}
html body.sketch-app #reviewCompareTray{position:sticky;bottom:12px;z-index:15;display:flex;gap:12px;align-items:center;margin:20px auto 0;padding:10px 14px;border:1px solid var(--sk-line);border-radius:12px;background:var(--sk-panel);box-shadow:0 6px 28px #0003;max-width:600px}
html body.sketch-app #reviewCompareTray[hidden]{display:none}
html body.sketch-app #reviewCompareTray>span{font-size:12px;margin-right:auto}
html body.sketch-app #reviewCompareTray button{min-height:44px;font-size:12px}
html body.sketch-app #reviewComparison{width:min(1080px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:24px;border:1px solid var(--sk-line);border-radius:18px;background:var(--sk-panel);color:var(--sk-ink);overflow:auto}
html body.sketch-app #reviewComparison::backdrop{background:#080d0bc9;backdrop-filter:blur(8px)}
html body.sketch-app #reviewComparison>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}
html body.sketch-app #reviewComparison h2{font-size:20px;margin:0 0 6px}
html body.sketch-app #reviewComparison p{font-size:12px;color:var(--sk-muted);margin:0}
html body.sketch-app #reviewComparison .sketch-close{min-width:44px;min-height:44px;font-size:24px;padding:0!important}
html body.sketch-app .review-comparisons{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:18px}
html body.sketch-app .review-comparisons>article{min-width:0;display:flex;flex-direction:column;padding:16px;border:1px solid var(--sk-line);border-radius:12px}
html body.sketch-app .review-comparisons header>span{font-size:10px;color:var(--sk-accent)}
html body.sketch-app .review-comparisons h3{font-size:16px;margin:6px 0 16px}
html body.sketch-app .review-compare-package{min-height:140px;border-top:1px solid var(--sk-line);padding-top:12px;margin-bottom:12px}
html body.sketch-app .review-compare-package>small{display:block;font-size:11px;color:var(--sk-muted);margin-bottom:12px}
html body.sketch-app .review-compare-package .player-card{display:flex;align-items:center;gap:8px;margin:10px 0;min-width:0}
html body.sketch-app .review-compare-package .headshot{width:40px;height:40px;flex:0 0 40px}
html body.sketch-app .review-compare-package .player-card-copy{min-width:0}
html body.sketch-app .review-compare-package .player-full-name{overflow-wrap:anywhere}
html body.sketch-app .review-comparisons .review-impact{grid-template-columns:minmax(90px,1.5fr) 1fr 1fr;gap:8px}
html body.sketch-app .review-comparisons .review-impact strong{font-size:18px}
html body.sketch-app .review-comparisons [data-compare-report]{margin-top:auto;min-height:44px;font-size:13px}
html body.sketch-app #reviewComparison .review-comparison-note{margin-top:18px;line-height:1.6}
html body.sketch-app #sketchResume{min-height:44px;margin-top:16px}
html body.sketch-app .report-navigation{gap:8px;flex-wrap:wrap}
html body.sketch-app .report-navigation button{min-height:44px}
html body.sketch-app .trade-option-header>button{min-height:44px;height:44px}
html body.sketch-app .trade-option:focus-within{border-color:color-mix(in srgb,var(--sk-accent) 50%,var(--sk-line))}
@media(max-width:700px){
 html body.sketch-app #reviewComparison{padding:16px}
 html body.sketch-app .review-comparisons{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:12px}
 html body.sketch-app .review-comparisons>article{flex:0 0 88%;scroll-snap-align:start}
 html body.sketch-app .review-compare-package{min-height:0}
 html body.sketch-app #reviewCompareTray{bottom:max(8px,env(safe-area-inset-bottom));gap:8px;padding:8px}
 html body.sketch-app #reviewCompareTray>span{font-size:11px}
 html body.sketch-app #reviewCompareTray button{padding:8px!important;font-size:11px}
 html body.sketch-app .review-impact{grid-template-columns:minmax(110px,1.5fr) 1fr 1fr;gap:8px}
 html body.sketch-app .trade-option .inbox-player{align-content:start}
 html body.sketch-app .report-navigation{position:relative}
}

html body.sketch-app #reviewSources{border:0;background:none;margin:0 0 16px;padding:0;border-radius:0;font-size:11px;box-shadow:none;color:var(--sk-muted)}
html body.sketch-app #reviewSources>summary{min-height:32px;padding:4px 0;cursor:pointer;font-size:11px}
html body.sketch-app #reviewSources dl{display:flex;flex-wrap:wrap;gap:14px 28px;padding:12px 0;margin:0;border-top:1px solid var(--sk-line)}
html body.sketch-app #reviewSources dt{color:var(--sk-ink);margin-bottom:4px}
html body.sketch-app #reviewSources dd{margin:0}
html body.sketch-app #reviewSources p{font-size:11px;margin:4px 0 12px;line-height:1.6}
html body.sketch-app .fictional-headshot>svg{width:80%;height:80%;padding:2px;display:block;margin:auto}
html body.sketch-app .review-comparisons .player-card-name{flex-wrap:wrap}
html body.sketch-app .review-comparisons [data-compare-report]{background:var(--sk-ink);color:var(--sk-panel);border-radius:9px}

/* Shared review controls: touch explanations, provenance and recovery. */
html body.sketch-app .review-impact{grid-template-columns:minmax(130px,1.4fr) minmax(75px,1fr) minmax(75px,1fr);max-width:540px;margin-left:auto;margin-right:auto;gap:10px 20px}
html body.sketch-app .review-help{display:inline-flex;gap:6px;align-items:center;min-height:32px;border:0;background:none;color:inherit;font:inherit;padding:0!important;text-align:left;box-shadow:none}
html body.sketch-app .review-help>span{border:1px solid var(--sk-muted);border-radius:50%;font:10px/14px sans-serif;min-width:14px;text-align:center}
html body.sketch-app .review-help:hover{color:var(--sk-ink)}
html body.sketch-app .review-dialog{width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;box-sizing:border-box;padding:24px;border:1px solid var(--sk-line);border-radius:16px;background:var(--sk-panel);color:var(--sk-ink)}
html body.sketch-app .review-dialog::backdrop{background:#080d0bc9;backdrop-filter:blur(8px)}
html body.sketch-app .review-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px}
html body.sketch-app .review-dialog h2{font-size:19px;margin:0}
html body.sketch-app .review-dialog p{font-size:14px;line-height:1.7;color:var(--sk-muted)}
html body.sketch-app .review-dialog footer{display:flex;justify-content:flex-end;gap:12px}
html body.sketch-app .review-dialog button{min-height:44px}
html body.sketch-app .ftb-close{flex-shrink:0;min-width:44px;min-height:44px;display:inline-grid;place-items:center;border:1px solid var(--sk-line);border-radius:10px;background:none;color:var(--sk-ink);padding:8px!important}
html body.sketch-app .review-data{border:0;border-radius:0;box-shadow:none;padding:0;margin:8px 0 14px;background:none;font-size:12px;color:var(--sk-muted)}
html body.sketch-app .review-data summary{min-height:36px;cursor:pointer;padding:8px 0;box-sizing:border-box}
html body.sketch-app .review-data dl{display:flex;flex-wrap:wrap;gap:12px 24px;margin:12px 0}
html body.sketch-app .review-data dt{color:var(--sk-ink);margin-bottom:4px}
html body.sketch-app .review-data dd{margin:0;font-size:11px}
html body.sketch-app .review-data p{font-size:12px;line-height:1.6}
html body.sketch-app #reviewUndo{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:100;display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 24px);box-sizing:border-box;padding:10px 14px;border:1px solid var(--sk-line);border-radius:12px;background:var(--sk-panel);box-shadow:0 8px 32px #0005;font-size:13px}
html body.sketch-app #reviewUndo[hidden]{display:none}
html body.sketch-app #reviewUndo button{min-height:44px}
html body.sketch-app .trade-family-alternates{flex-wrap:wrap}
html body.sketch-app .review-probability-range{display:block;font-size:11px;color:var(--sk-muted);margin:4px 0}
html body.sketch-app .ftbm-impact .review-help{font-size:11px}
html body.sketch-app #sketchLeftTeam .ftb-select-value,html body.sketch-app #sketchRightTeam .ftb-select-value{white-space:normal;overflow-wrap:anywhere;text-overflow:clip}
html body.sketch-app .saved-league-options{overflow-wrap:anywhere}
html body.sketch-app :is(button,summary):focus-visible{outline:2px solid var(--sk-accent);outline-offset:3px}
@media(max-width:700px){html body.sketch-app .review-impact{grid-template-columns:minmax(105px,1.3fr) 1fr 1fr;gap:8px;max-width:100%}html body.sketch-app .review-impact>strong{font-size:19px}html body.sketch-app .review-help{min-height:44px}html body.sketch-app .review-dialog{padding:18px}}
@media(max-width:380px){
 html body.sketch-app .sketch-pair{grid-template-columns:minmax(0,1fr)!important;gap:10px}
 html body.sketch-app .sketch-exchange{height:24px;transform:rotate(90deg);margin:0 auto}
 html body.sketch-app .sketch-side{min-height:0;padding:16px}
 html body.sketch-app .sketch-side header{display:flex!important;align-items:center;gap:12px;min-height:52px}
 html body.sketch-app .sketch-side .sketch-team-photo{width:44px;height:44px;flex:0 0 44px}
 html body.sketch-app .sketch-side .sketch-players{min-height:0!important;padding-top:8px}
 html body.sketch-app .sketch-add-empty{min-height:76px!important;width:100%}
 html body.sketch-app .sketch-player-row{display:flex;align-items:center;gap:8px}
 html body.sketch-app .sketch-player-row .player-card{display:flex!important;align-items:center;gap:10px;min-width:0}
 html body.sketch-app .sketch-side[data-side=right] .player-card{flex-direction:row-reverse}
 html body.sketch-app .sketch-side[data-side=right] .player-card-copy{text-align:right}
 html body.sketch-app .sketch-player-row .headshot{width:44px;height:44px;flex:0 0 44px}
 html body.sketch-app .sketch-player-row .sketch-remove{position:static;min-width:36px;min-height:44px}
 html body.sketch-app #sketchPeriodHome .ftb-select-trigger{min-width:80px}
 html body.sketch-app #reviewUndo{gap:8px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){html body.sketch-app *,html body.sketch-app *::before,html body.sketch-app *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
html body.sketch-app .review-data-stamp{font-size:10px;color:var(--sk-muted);margin-left:10px}
html body.sketch-app .ftb-close svg{width:20px;height:20px}
html body.sketch-app .review-comparisons .review-data-stamp{display:block;margin-left:0}
@media(max-width:380px){html body.sketch-app #sketchPositionTabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}html body.sketch-app #sketchPositionTabs button{min-width:0;padding:8px 2px!important;font-size:12px}html body.sketch-app #sketchPlayerPicker{overflow-x:hidden}html body.sketch-app .sketch-side .sketch-add-empty{min-height:80px!important}}
/* ADD / OR choices are portrait-only; the button retains its accessible name. */
html body.sketch-app .trade-family-choice{width:46px!important;height:46px!important;min-width:46px;min-height:46px;display:inline-flex!important;align-items:center;justify-content:center;padding:2px!important;border:1px solid var(--sk-line)!important;border-radius:50%!important;background:var(--sk-panel);overflow:hidden;flex:0 0 46px;box-shadow:none!important}
html body.sketch-app .trade-family-choice>.headshot{width:40px!important;height:40px!important;flex:0 0 40px;border:0!important;margin:0!important;box-shadow:none!important}
html body.sketch-app .trade-family-choice .portrait-crop{width:100%;height:100%;border-radius:50%;overflow:hidden}
html body.sketch-app .trade-family-choice:hover{border-color:var(--sk-accent)!important}
html body.sketch-app .trade-family-choice:focus-visible{outline:2px solid var(--sk-accent);outline-offset:3px}
html body.sketch-app .trade-family-none-label{display:none}

/* Desktop cards only. Original DOM, mobile rules and all action handlers remain intact. */
@media(min-width:1100px){
 html body.sketch-app .trade-options-list>.trade-option{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);column-gap:24px;row-gap:0;padding:16px 20px}
 html body.sketch-app .trade-options-list>.trade-option>header{grid-column:1/-1;grid-row:1;margin:0 0 16px;padding:0 0 14px}
 html body.sketch-app .trade-options-list>.trade-option>.trade-option-body{grid-column:1;grid-row:2/4;gap:18px;padding:0 24px 16px 0;border-right:1px solid var(--sk-line);margin-bottom:0}
 html body.sketch-app .trade-options-list>.trade-option .trade-option-players{gap:8px}
 html body.sketch-app .trade-options-list>.trade-option .trade-option-label{margin-bottom:10px}
 html body.sketch-app .trade-options-list>.trade-option>.review-outcomes{display:contents}
 html body.sketch-app .trade-options-list>.trade-option>.review-outcomes>.review-impact{grid-column:2;grid-row:2;grid-template-columns:minmax(110px,1.4fr) minmax(55px,1fr) minmax(55px,1fr);gap:8px 12px;width:100%;max-width:none;margin:0;align-self:start}
 html body.sketch-app .trade-options-list>.trade-option>.review-outcomes>.review-evidence{grid-column:2;grid-row:3;align-self:end;margin:12px 0 16px;padding-top:10px;border-top:1px solid var(--sk-line);gap:5px 10px;font-size:10px}
 html body.sketch-app .trade-options-list>.trade-option>.review-outcomes>.review-details{grid-column:1/-1;grid-row:4;margin:0;padding:0;border-top:1px solid var(--sk-line);min-width:0}
 html body.sketch-app .trade-options-list>.trade-option>.review-outcomes>.review-details>summary{width:62%;min-height:54px;padding:8px 0;justify-content:flex-start;gap:8px}
 html body.sketch-app .trade-options-list>.trade-option>.review-card-footer{grid-column:2;grid-row:4;align-self:start;min-height:54px;z-index:1;margin:0;padding:5px 0;border-top:1px solid var(--sk-line);background:var(--sk-panel)}
 html body.sketch-app .trade-options-list>.trade-option>.review-data{grid-column:1/-1;grid-row:5;margin:0}
 html body.sketch-app .trade-options-list>.trade-option .trade-family-alternates{margin-top:8px}
}
@media(min-width:1100px){html body.sketch-app .trade-options-list>.trade-option>.review-card-footer .review-compare{margin-left:auto}}
