.nhl-trade{min-width:0;padding:12px 0 28px}.nhl-trade-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;display:flex}.nhl-trade-heading h2{margin:0 0 10px;font-size:clamp(32px,4vw,44px);line-height:1.1}.nhl-trade-heading p{color:var(--secondary-text);margin:0}.nhl-trade-season{white-space:nowrap;color:var(--secondary-text);font-size:14px}.nhl-trade-settings{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.nhl-trade-settings label,.nhl-trade-weights label{gap:7px;font-size:14px;font-weight:600;display:grid}.nhl-trade select,.nhl-trade input{font:inherit;box-sizing:border-box;background:var(--surface);width:100%;min-height:44px;color:var(--text);border:1px solid var(--input,var(--border));border-radius:6px;padding:10px 12px}.nhl-trade-source-note{color:var(--secondary-text);margin:16px 0;font-size:13px;line-height:1.65}.nhl-trade-weights{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0;display:grid}.nhl-trade .nhl-method{margin:18px 0}.nhl-trade .nhl-method p,.nhl-trade .nhl-method li{max-width:75ch;line-height:1.65}.nhl-trade-sides{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:center;gap:16px;margin:28px 0 22px;display:grid}.nhl-trade-side{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-direction:column;align-self:stretch;min-width:0;padding:24px;display:flex}.nhl-trade-side-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding-bottom:18px;display:flex}.nhl-trade-side-heading h3{margin:0;font-size:25px}.nhl-trade-side-heading>span{color:var(--secondary-text);white-space:nowrap;font-size:13px}.nhl-trade-selected{flex:1;min-height:130px}.nhl-trade-empty{color:var(--secondary-text);padding:28px 0;font-size:14px}.nhl-trade-player{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:16px 0;display:flex}.nhl-trade-player>div{flex:1;min-width:0}.nhl-trade-player strong{overflow-wrap:anywhere;font-size:15px;line-height:1.4;display:block}.nhl-trade-player small{color:var(--secondary-text);font-size:12px;line-height:1.6;display:block}.nhl-trade-position{background:var(--surface-raised);width:34px;height:34px;color:var(--text);border-radius:6px;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid}.nhl-trade-player-value{text-align:right;flex-shrink:0}.nhl-trade-player-value b{font-variant-numeric:tabular-nums;font-size:18px}.nhl-trade-player .textbtn{place-items:center;min-width:36px;min-height:44px;padding:6px;display:grid}.nhl-trade-injury{font-weight:600}.nhl-trade-search{margin-top:18px;position:relative}.nhl-trade-search>label{margin-bottom:8px;font-size:13px;font-weight:600;display:block}.nhl-trade-search-field{position:relative}.nhl-trade-search-field>svg{color:var(--secondary-text);pointer-events:none;position:absolute;top:14px;left:12px}.nhl-trade-search-field input{padding-left:38px}.nhl-trade-options{z-index:30;background:var(--surface);border:1px solid var(--input,var(--border));border-radius:6px;max-height:340px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.nhl-trade-options button{text-align:left;background:var(--surface);width:100%;min-height:56px;color:var(--text);border-bottom:1px solid var(--border);font:inherit;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.nhl-trade-options button[aria-selected=true],.nhl-trade-options button:hover{background:var(--surface-raised)}.nhl-trade-options strong{font-size:14px}.nhl-trade-options small{color:var(--secondary-text);font-size:12px;line-height:1.6;display:block}.nhl-trade-options button>span:last-child{text-align:right;font-variant-numeric:tabular-nums}.nhl-trade-options>p{padding:14px;font-size:14px}.nhl-trade-side-total{border-top:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:7px;margin-top:20px;padding-top:18px;display:grid}.nhl-trade-side-total>strong{font-variant-numeric:tabular-nums;font-size:30px}.nhl-trade-side-total>small{color:var(--secondary-text);text-align:right;grid-column:1/-1;font-size:13px}.nhl-trade-swap{place-items:center;width:44px;min-width:44px;height:44px;padding:0;display:grid}.nhl-trade-actions{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.nhl-trade-actions>.primary{align-items:center;gap:10px;min-height:48px;padding-inline:28px;display:flex}.nhl-trade-error{border:1px solid var(--border);border-radius:6px;padding:16px}.nhl-trade-result{border-top:1px solid var(--border);margin-top:36px;padding-top:28px}.nhl-trade-result h3{margin:0 0 12px;font-size:30px;line-height:1.2}.nhl-trade-result-delta{font-size:22px;font-weight:600}.nhl-trade-result-delta small{color:var(--secondary-text);margin-top:7px;font-size:13px;font-weight:400;display:block}.nhl-trade-result-values{border-block:1px solid var(--border);grid-template-columns:1fr 30px 1fr;align-items:center;gap:20px;margin:24px 0;padding:22px 0;display:grid}.nhl-trade-result-values>div{gap:8px;display:grid}.nhl-trade-result-values>div:last-child{text-align:right}.nhl-trade-result-values strong{font-variant-numeric:tabular-nums;font-size:36px}.nhl-trade-result-values small{color:var(--secondary-text);font-size:13px}.nhl-trade-table{max-width:100%;margin-top:28px;overflow-x:auto}.nhl-trade-table table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:500px;font-size:14px}.nhl-trade-table caption{text-align:left;padding-bottom:16px;font-size:20px;font-weight:600}.nhl-trade-table th,.nhl-trade-table td{border-bottom:1px solid var(--border);text-align:right;padding:12px 14px}.nhl-trade-table th:first-child{text-align:left;padding-left:0}.nhl-trade-table thead th{background:var(--surface-raised);font-weight:600}.nhl-trade-table tbody th{font-weight:500}.nhl-trade-model-row{border-bottom:1px solid var(--border);padding-block:14px}.nhl-trade-model-row h4{margin:0 0 8px}.nhl-trade-model-row p{font-size:13px}:is(.nhl-trade button:focus-visible,.nhl-trade input:focus-visible,.nhl-trade select:focus-visible){outline:3px solid var(--focus,#468ab7);outline-offset:3px}.nhl-trade input:disabled{opacity:.6}.nhl-trade a{text-underline-offset:3px;text-decoration:underline}@media (max-width:760px){.nhl-trade-heading{flex-direction:column;align-items:flex-start;gap:12px}.nhl-trade-settings{grid-template-columns:1fr}.nhl-trade-sides{grid-template-columns:minmax(0,1fr);gap:12px}.nhl-trade-swap{justify-self:center}.nhl-trade-side{padding:18px}.nhl-trade-weights{grid-template-columns:repeat(2,minmax(0,1fr))}.nhl-trade-player{gap:8px}.nhl-trade-position{width:28px}.nhl-trade-player strong{font-size:14px}.nhl-trade-result-values{gap:12px}.nhl-trade-result-values strong{font-size:30px}.nhl-trade-result h3{font-size:26px}}.nhl-trade-context{border-block:1px solid var(--border);padding:18px 0}.nhl-trade-context summary{cursor:pointer;align-content:center;min-height:44px;font-weight:600}.nhl-context-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0;display:grid}.nhl-context-fields label,.nhl-context-teams>section>label{gap:8px;font-size:14px;font-weight:600;display:grid}.nhl-context-fields small{color:var(--secondary-text);font-weight:400;line-height:1.5}.nhl-context-teams,.nhl-outlook-balance{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:24px 0;display:grid}.nhl-context-teams>section{min-width:0}.nhl-context-teams h4,.nhl-player-outlook h4{margin:0 0 14px;font-size:22px}.nhl-context-players{flex-wrap:wrap;gap:8px;margin:8px 0 18px;padding:0;list-style:none;display:flex}.nhl-context-players li{border:1px solid var(--border);border-radius:6px;align-items:center;gap:8px;max-width:100%;padding:0 8px 0 12px;font-size:14px;display:flex}.nhl-context-players li>span{overflow-wrap:anywhere}.nhl-context-players button{place-items:center;min-width:36px;min-height:44px;padding:0;display:grid}.nhl-context-teams .nhl-context-check{align-items:center;margin:16px 0;font-weight:400;line-height:1.5;display:flex}.nhl-trade .nhl-context-check input{flex-shrink:0;width:20px;height:20px;min-height:20px}.nhl-impact-report{border-top:1px solid var(--border);margin-top:28px;padding-top:28px}.nhl-impact-report p{max-width:75ch;margin:14px 0;line-height:1.7}.nhl-impact-report .nhl-report-verdict{font-size:19px}.nhl-impact-report .nhl-trade-table small{color:var(--secondary-text);white-space:nowrap;margin-top:5px;font-size:12px;font-weight:400;display:block}.nhl-impact-report .nhl-trade-table table{min-width:680px}.nhl-report-section-title{margin:36px 0 12px;font-size:23px}.nhl-player-outlook{border-top:1px solid var(--border);padding:28px 0 18px}.nhl-player-outlook header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.nhl-player-outlook header>span{color:var(--secondary-text);font-size:13px}.nhl-outlook-balance h5{margin:0 0 8px;font:600 17px Barlow,sans-serif}.nhl-outlook-balance p{margin:0;font-size:14px}.nhl-insight-list{min-width:0;margin:0;padding:0;list-style:none}.nhl-insight-list li+li{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.nhl-insight-list li>strong{font-size:15px;font-weight:600;line-height:1.5;display:block}.nhl-outlook-balance .nhl-insight-list p{margin:7px 0 9px;line-height:1.7}.nhl-insight-list small{color:var(--secondary-text);overflow-wrap:anywhere;font-size:12px;line-height:1.6;display:block}.nhl-impact-report li{line-height:1.7}.nhl-impact-report summary{cursor:pointer;align-content:center;min-height:44px}.nhl-trade summary:focus-visible{outline:3px solid var(--focus,#468ab7);outline-offset:3px}@media (max-width:760px){.nhl-context-fields,.nhl-context-teams,.nhl-outlook-balance{grid-template-columns:minmax(0,1fr)}.nhl-context-teams,.nhl-outlook-balance{gap:24px}.nhl-player-outlook header{gap:0}.nhl-impact-report h3{font-size:26px}.nhl-context-fields{gap:14px}}.nhl-fairness{border-top:1px solid var(--border);min-width:0;margin-top:28px;padding:24px 0 0;scroll-margin-top:24px}.nhl-fairness-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 24px;display:flex}.nhl-fairness .nhl-fairness-heading h3{margin:0;font-size:24px;line-height:1.25}.nhl-fairness-heading p{margin:0;font-size:14px;line-height:1.6}.nhl-fairness-heading p>span{color:var(--secondary-text)}.nhl-fairness-meter{padding:44px 16px 12px}.nhl-fairness-track{background:var(--primary);border-radius:4px;height:20px;position:relative}.nhl-fairness-balance{opacity:.18;background:#fff;width:10%;height:100%;position:absolute;left:45%}.nhl-fairness-midpoint{background:var(--surface);width:2px;height:28px;position:absolute;top:-4px;left:50%;transform:translate(-1px)}.nhl-fairness-marker{left:var(--fairness-position);background:var(--text);outline:2px solid var(--surface);width:4px;height:32px;position:absolute;top:-6px;transform:translate(-2px)}.nhl-fairness-marker b{text-align:center;background:var(--text);min-width:34px;color:var(--surface);font-variant-numeric:tabular-nums;border-radius:4px;padding:4px 7px;font-size:17px;line-height:1.4;position:absolute;bottom:38px;left:2px;transform:translate(-50%)}.nhl-fairness-labels{color:var(--secondary-text);grid-template-columns:1fr 1fr 1fr;gap:10px;font-size:13px;line-height:1.5;display:grid}.nhl-fairness-labels>span:nth-child(2){text-align:center}.nhl-fairness-labels>span:last-child{text-align:right}.nhl-fairness-unavailable{min-height:60px;color:var(--secondary-text);align-content:center;font-size:14px;line-height:1.6}.nhl-fairness>p,.nhl-fairness details p,.nhl-fairness details li{max-width:75ch;line-height:1.7}.nhl-fairness details{margin-bottom:0!important}.nhl-fairness details summary{cursor:pointer;align-content:center;min-height:44px}.nhl-fairness .nhl-trade-table table{min-width:640px}@media (max-width:760px){.nhl-fairness-heading{display:block}.nhl-fairness-heading p{margin-top:10px}.nhl-fairness-labels{gap:8px;font-size:12px}.nhl-fairness .nhl-fairness-heading h3{font-size:23px}}.nhl-league-tools{min-width:0}.nhl-tabs [aria-haspopup=menu][aria-selected=true]{color:var(--text)}.nhl-tabs [aria-haspopup=menu][aria-selected=true]:after{content:"";background:var(--primary);opacity:1;height:3px;position:absolute;inset:auto 0 0}.nhl-league-tools>[hidden]{display:none}.nhl-league-menu[data-slot=dropdown-menu-content]{background:var(--surface);min-width:220px;max-width:calc(100vw - 32px);color:var(--text);border:1px solid var(--border);box-shadow:none;z-index:60;border-radius:8px;padding:6px;animation:none}.nhl-league-menu [role=menuitem]{min-height:44px;color:var(--text);cursor:pointer;border-radius:4px;outline:none;align-items:center;padding:10px 14px;font:600 14px/1.4 Barlow,sans-serif;display:flex}.nhl-league-menu [role=menuitem][data-highlighted]{background:var(--surface-raised);color:var(--text)}.nhl-league-subtabs[data-slot=tabs-list]{border-bottom:1px solid var(--border);background:0 0;border-radius:0;justify-content:flex-start;gap:4px;width:100%;height:auto;margin:0 0 20px;padding:0 0 12px;display:flex}.nhl-league-subtabs>[data-slot=tabs-trigger]{height:auto;min-height:44px;color:var(--secondary-text);box-shadow:none;white-space:normal;text-align:center;background:0 0;border:1px solid #0000;border-radius:6px;flex:0 auto;padding:10px 18px;font:600 14px/1.35 Barlow,sans-serif;transition:background-color .15s,color .15s}.nhl-league-subtabs>[data-slot=tabs-trigger]:hover{background:var(--surface-raised);color:var(--text)}.nhl-league-subtabs>[data-slot=tabs-trigger][data-state=active]{background:var(--surface-raised);border-color:var(--border);color:var(--text);box-shadow:none}.nhl-league-subtabs>[data-slot=tabs-trigger]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.nhl-league-tools>[data-slot=tabs-content][hidden]{display:none}.nhl-league-upcoming{max-width:65ch;padding:12px 0 40px}.nhl-league-upcoming h2{margin:0 0 16px;font-size:clamp(32px,4vw,44px);line-height:1.1}.nhl-league-upcoming p{color:var(--secondary-text);margin:0 0 22px;line-height:1.65}.nhl-league-upcoming .nhl-league-status{color:var(--text);margin-bottom:10px;font-weight:600}@media (max-width:520px){.nhl-league-subtabs>[data-slot=tabs-trigger]{flex:1 1 0;padding:10px 8px;font-size:13px}}.bw-import-panel{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:24px 0;padding:22px}.bw-import-panel h3,.bw-current-pool h3{margin-bottom:8px;font-size:20px;font-weight:750}.bw-import-panel h4{margin:12px 0;font-size:18px;font-weight:700}.bw-import-panel input:not([type=checkbox]),.bw-import-panel select{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);min-width:0;max-width:100%;min-height:44px;color:var(--text);border-radius:7px;padding:9px 10px;font-size:16px}.bw-import-panel label{font-size:14px}.bw-import-panel details>summary{cursor:pointer;padding:10px 0;font-weight:650}.bw-import-panel p,.bw-import-panel li{overflow-wrap:anywhere}.bw-import-panel ul{padding-left:20px;list-style:outside}.bw-import-panel input[type=checkbox],.bw-current-pool input[type=checkbox]{flex-shrink:0;width:19px;height:19px}.bw-import-methods{flex-wrap:wrap;gap:8px;display:flex}.bw-import-methods button{flex:1;min-width:160px}.bw-dropzone{background:var(--surface-raised);border:2px dashed #8ca2b5;border-radius:10px;gap:8px;padding:24px;display:grid}.bw-dropzone.is-dragging{background:#fff4f4;border-color:#b20c18}.bw-dropzone>span{color:var(--secondary-text);font-size:14px}.bw-dropzone label{gap:8px;display:grid}.bw-dropzone input{width:100%}.bw-import-links{flex-wrap:wrap;gap:14px;margin:16px 0;font-size:14px;display:flex}.bw-import-links span{color:var(--secondary-text)}.bw-import-preview{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.bw-import-counts{margin:16px 0;gap:12px!important}.bw-import-counts>div{min-width:90px}.bw-mapping-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:14px 0;display:grid}.bw-mapping-grid>label{gap:4px;min-width:0;display:grid}.bw-preview-list{border:1px solid var(--border);overscroll-behavior:contain;border-radius:8px;max-height:650px;overflow:auto}.bw-preview-row{border-bottom:1px solid var(--border);padding:16px}.bw-preview-row:last-child{border-bottom:0}.bw-preview-row.needs-attention{border-left:3px solid #b20c18}.bw-preview-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.bw-preview-heading label{align-items:center;gap:7px;display:flex}.bw-preview-row p{margin:8px 0}.bw-projection-edit{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bw-projection-edit input{width:230px}.bw-identity-results{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.bw-manual form{margin-top:16px}.bw-import-panel .nhl-alert button{margin-top:10px;display:block}.bw-import-panel button:disabled{opacity:.5;cursor:not-allowed}.bw-current-pool{margin:24px 0}.bw-player-table{max-height:560px;overflow:auto}.bw-player-table table{white-space:normal}.bw-player-table td{vertical-align:top;overflow-wrap:anywhere}.bw-player-table td:first-child{min-width:145px}.bw-player-table td:nth-child(4){min-width:160px;max-width:240px}.bw-player-table small{font-size:12px;line-height:1.5}.bw-player-table+button{margin-top:16px}.bw-current-pool .nhl-status button{margin:6px 12px 6px 0}@media (max-width:650px){.bw-import-panel{padding:16px}.bw-import-methods{grid-template-columns:1fr;display:grid}.bw-import-methods button{width:100%}.bw-dropzone{padding:16px}.bw-mapping-grid{grid-template-columns:1fr}.bw-import-panel .nhl-toolbar{align-items:stretch}.bw-import-panel .nhl-toolbar>label,.bw-import-panel .nhl-toolbar>button,.bw-import-panel .nhl-toolbar select{width:100%}.bw-preview-list{max-height:500px}.bw-projection-edit{display:grid}.bw-projection-edit input{width:100%}.bw-current-pool .nhl-toolbar{grid-template-columns:1fr;width:100%;display:grid}.bw-current-pool .nhl-toolbar input,.bw-current-pool .nhl-toolbar select{box-sizing:border-box;width:100%;min-width:0}.bw-player-table table,.bw-player-table tbody{width:100%;display:block}.bw-player-table thead{display:none}.bw-player-table tr{border-bottom:2px solid var(--border);grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.bw-player-table td{white-space:normal;display:block;border:0!important;min-width:0!important;max-width:none!important;padding:4px!important}.bw-player-table td:before{content:attr(data-label);color:var(--secondary-text);font-size:12px;font-weight:650;display:block}.bw-player-table td:first-child,.bw-player-table td:nth-child(5){grid-column:1/-1}.bw-player-table td:nth-child(4){font-size:14px}.bw-player-table{max-height:650px}.bw-player-table input{margin:6px 0}}.bw-validation-summary,.bw-constraint-summary{border:1px solid var(--border);background:var(--surface-raised);border-radius:10px;margin:16px 0;padding:16px}.bw-validation-summary h4{font-weight:750}.bw-validation-counts{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.bw-validation-counts button[aria-pressed=true]{color:#fff;background:#0c3049}.bw-validation-summary p,.bw-constraint-summary p{margin:8px 0;font-size:14px}.bw-eligibility-badge{color:#15364b;background:#eef5fa;border:1px solid #a2b8c5;border-radius:5px;padding:5px 8px;font-size:12px;font-weight:700;display:inline-block}.bw-eligibility-badge.ineligible{color:#8b1420;background:#fff0f1;border-color:#d5a2a6}.bw-eligibility-badge.attention{color:#704c04;background:#fff8e8;border-color:#d7c58e}.bw-eligibility-badge.excluded{color:#454545;background:#f0f0f0;border-color:#b9b9b9}.bw-eligibility-details{white-space:normal;min-width:180px;max-width:320px}.bw-eligibility-details summary,.bw-constraint-summary summary{cursor:pointer;padding:8px 0;font-size:14px;font-weight:650}.bw-eligibility-details p,.bw-eligibility-details li{overflow-wrap:anywhere;font-size:13px;line-height:1.5}.bw-eligibility-details ul,.bw-constraint-summary ul{padding-left:18px;list-style:outside}.bw-eligibility-details li{margin:12px 0}.bw-eligibility-actions{flex-wrap:wrap;gap:10px;margin:10px 0;display:flex}.bw-eligibility-actions button,.bw-eligibility-actions a{font-size:13px;text-decoration:underline}.bw-constraint-summary a{font-size:14px;text-decoration:underline}@media (max-width:650px){.bw-eligibility-details{min-width:0;max-width:100%}.bw-validation-counts button{flex:120px}.bw-current-pool details p{white-space:normal}}
