/* Personalized dashboard v3, composed from the supplied dashboard handoff. */
.profile-view { --dashboard-line:#253143;--dashboard-line-soft:#1d2a3d; }
.profile-view button:focus-visible,.profile-view summary:focus-visible { outline:2px solid var(--lime);outline-offset:3px; }

.profile-view .profile-hero { min-height:342px;padding:42px 46px;grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);gap:42px;border-color:var(--dashboard-line);background:radial-gradient(circle at 84% 0%,color-mix(in srgb,var(--profile) 16%,transparent),transparent 42%),linear-gradient(120deg,#101723,#0a101a); }
.profile-view .profile-hero::after { content:"";position:absolute;inset:0;background:linear-gradient(108deg,transparent 51%,rgba(255,255,255,.025) 51.2%,transparent 72%);pointer-events:none; }
.profile-hero__strands { position:absolute;inset:0;overflow:hidden;pointer-events:none;opacity:.8; }
.profile-hero__strands i { position:absolute;right:-11%;width:64%;height:44%;border:2px solid transparent;border-top-color:var(--strand-1);border-radius:50%;transform:rotate(-7deg);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--strand-1) 35%,transparent)); }
.profile-hero__strands i:nth-child(1) { top:63%;border-top-color:var(--strand-1); }
.profile-hero__strands i:nth-child(2) { top:72%;right:-6%;border-top-color:var(--strand-2);transform:rotate(4deg); }
.profile-hero__strands i:nth-child(3) { top:82%;right:-16%;border-top-color:var(--strand-3);transform:rotate(-2deg); }
.profile-hero__strands i:nth-child(4) { top:88%;right:-3%;border-top-color:var(--strand-4);transform:rotate(7deg); }
.profile-view .profile-intro { gap:24px; }
.profile-view .large-avatar { width:88px;height:88px;flex:0 0 auto; }
.profile-view .large-avatar span { font-size:40px; }
.profile-view .profile-intro h1 { margin:10px 0 15px;font-size:clamp(54px,5vw,78px); }
.profile-view .profile-intro p { max-width:610px;color:#c0cad7;font-size:14px;line-height:1.6;text-wrap:pretty; }
.profile-view .profile-scoreboard { border-color:var(--dashboard-line);background:rgba(7,11,18,.62); }
.profile-view .profile-scoreboard>span { min-height:88px;padding:19px 22px;justify-content:center; }
.profile-view .profile-scoreboard small { color:#91a0b3;font-size:11px; }
.profile-view .profile-scoreboard strong { font-size:31px; }
.profile-view .manage-teams { margin-top:19px; }

.profile-view .team-switcher { margin:16px 0 24px;padding:0 0 4px;gap:10px; }
.profile-view .team-switcher button { min-width:220px;min-height:66px;padding:12px 14px;border-color:var(--dashboard-line);border-radius:12px;background:rgba(255,255,255,.018); }
.profile-view .team-switcher button[aria-selected="true"] { transform:none;border-color:color-mix(in srgb,var(--accent) 72%,white 8%);box-shadow:inset 0 -3px 0 var(--accent),0 8px 28px color-mix(in srgb,var(--accent) 10%,transparent); }
.profile-view .team-switcher strong { font-size:17px; }

.dashboard-section-label { display:flex;align-items:center;gap:11px;color:#8fa0b5;font-size:11px;font-weight:800;letter-spacing:.14em;line-height:1.25; }
.dashboard-section-label>b { color:var(--accent,var(--lime));font:900 16px var(--font-display);letter-spacing:0; }
.dashboard-watermark { position:absolute;right:22px;top:3px;color:color-mix(in srgb,var(--accent,var(--lime)) 7%,transparent);font:italic 900 150px/1 var(--font-display);letter-spacing:-.06em;pointer-events:none;z-index:0; }

.profile-view .dashboard-overview { margin-top:0;border-color:var(--dashboard-line);border-radius:20px;background:linear-gradient(150deg,rgba(17,24,39,.96),rgba(9,15,23,.98)); }
.profile-view .dashboard-overview-head { min-height:170px;padding:34px 38px 25px;align-items:flex-end;border-bottom:1px solid var(--dashboard-line-soft); }
.profile-view .dashboard-overview-head>div { position:relative;z-index:1; }
.profile-view .dashboard-overview-head h2 { margin:9px 0 10px;font-size:46px; }
.profile-view .dashboard-overview-head p { max-width:720px;color:#b9c4d2;font-size:13px;line-height:1.6; }
.profile-view .dashboard-overview-freshness { position:relative;z-index:2;font-size:11px; }
.profile-view .dashboard-lead { margin:0 38px;min-height:130px;border-color:var(--dashboard-line-soft);grid-template-columns:minmax(280px,1.35fr) minmax(150px,.55fr) minmax(210px,.8fr) auto; }
.profile-view .dashboard-lead small,.profile-view .dashboard-race-list small,.profile-view .dashboard-summary small { color:#8fa0b5;font-size:11px; }
.profile-view .dashboard-lead-team strong { font-size:27px; }
.profile-view .dashboard-lead-chance strong { font-size:47px; }
.profile-view .dashboard-lead-next strong { font-size:21px; }
.profile-view .dashboard-summary { margin:22px 38px 0;border-color:var(--dashboard-line); }
.profile-view .dashboard-summary>span { min-height:80px;padding:16px 20px; }
.profile-view .dashboard-summary strong { font-size:26px; }
.profile-view .dashboard-race-heading { margin:29px 38px 13px; }
.profile-view .dashboard-race-heading h3 { font-size:28px; }
.profile-view .dashboard-race-heading p { color:#8fa0b5;font-size:12px; }
.profile-view .dashboard-race-list { margin:0 38px 34px;border-color:var(--dashboard-line); }
.profile-view .dashboard-race-list>button { min-height:94px;border-color:var(--dashboard-line-soft);grid-template-columns:34px 46px minmax(150px,1fr) minmax(135px,.75fr) minmax(180px,1fr) minmax(100px,.5fr) 60px;padding:16px 20px; }
.profile-view .dashboard-team-name strong { font-size:22px; }

.dashboard-next-up { min-height:270px;padding:31px 38px 35px;border-top:1px solid var(--dashboard-line);background:linear-gradient(150deg,#101723,#0b111b);position:relative;overflow:hidden; }
.dashboard-next-up>header { display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:29px;position:relative;z-index:1; }
.dashboard-next-up h3 { margin:8px 0 0;font:900 34px/.9 var(--font-display); }
.dashboard-next-up header p { margin:0;color:#8fa0b5;font-size:12px; }
.dashboard-strand { position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:16px;z-index:1; }
.dashboard-strand::before { content:"";position:absolute;left:1%;right:1%;top:27px;height:2px;background:var(--strand-gradient);opacity:.6; }
.dashboard-strand button { min-width:0;border:0;background:transparent;padding:0;color:white;text-align:left;display:flex;flex-direction:column;cursor:pointer; }
.dashboard-strand button>i { width:14px;height:14px;margin:21px 0 16px;border:3px solid #0b111b;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 16px color-mix(in srgb,var(--accent) 45%,transparent);z-index:1; }
.dashboard-strand small { color:#8fa0b5;font-size:10px;font-weight:800;letter-spacing:.11em; }
.dashboard-strand strong { margin:6px 0 3px;font:800 26px/1 var(--font-display); }
.dashboard-strand em { color:#a3b0c0;font-size:12px;font-style:normal;line-height:1.4; }

.dashboard-team-hero { min-height:225px;margin:0 0 18px;padding:36px 40px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--dashboard-line));border-radius:20px;background:radial-gradient(circle at 82% 0%,color-mix(in srgb,var(--accent) 17%,transparent),transparent 46%),linear-gradient(120deg,#101723,#0a101a);display:flex;align-items:center;justify-content:space-between;gap:34px;position:relative;overflow:hidden; }
.dashboard-team-hero::before { content:"";position:absolute;left:0;top:0;width:42%;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent2),transparent); }
.dashboard-team-hero::after { content:attr(data-team);position:absolute;right:-18px;bottom:-58px;color:color-mix(in srgb,var(--accent) 7%,transparent);font:italic 900 210px/.75 var(--font-display);letter-spacing:-.08em;white-space:nowrap;pointer-events:none; }
.dashboard-team-hero__identity { min-width:0;display:flex;align-items:center;gap:24px;position:relative;z-index:1; }
.dashboard-team-hero__identity>span { min-width:0;display:flex;flex-direction:column; }
.dashboard-team-hero__identity small,.dashboard-team-hero__model small { color:#8fa0b5;font-size:11px;font-weight:800;letter-spacing:.13em; }
.dashboard-team-hero__identity h2 { margin:8px 0 10px;font:900 clamp(38px,4vw,61px)/.88 var(--font-display);letter-spacing:-.02em;white-space:nowrap; }
.dashboard-team-hero__identity h2 em { color:var(--accent);font-style:italic; }
.dashboard-team-hero__identity p { margin:0;color:#b9c4d2;font-size:13px; }
.dashboard-team-hero__model { flex:0 0 auto;display:flex;border:1px solid var(--dashboard-line);border-radius:13px;background:rgba(7,11,18,.58);overflow:hidden;position:relative;z-index:1; }
.dashboard-team-hero__model>span { min-width:135px;min-height:88px;padding:16px 20px;display:flex;justify-content:center;flex-direction:column; }
.dashboard-team-hero__model>span+span { border-left:1px solid var(--dashboard-line-soft); }
.dashboard-team-hero__model strong { margin-top:4px;font:800 22px/1 var(--font-display); }
.dashboard-team-hero__model>span:first-child strong { color:var(--accent);font-size:36px; }

.dashboard-stage { margin:18px 0;position:relative; }
.dashboard-stage>.dashboard-watermark { z-index:3; }
.dashboard-stage .record-shell,.dashboard-stage .playoff-scenario,.dashboard-stage .analytics-shell { margin:0;border-color:var(--dashboard-line);border-radius:20px; }
.dashboard-stage .record-shell { padding:29px 37px; }
.profile-view .team-feature { margin:18px 0;gap:18px; }
.profile-view .next-game-panel,.profile-view .playoff-panel { min-height:470px;padding:28px 31px;border-color:var(--dashboard-line);border-radius:20px; }
.profile-view .panel-top,.profile-view .panel-title { position:relative;z-index:2; }
.profile-view .analytics-shell.dashboard-numbered { padding:28px 37px; }
.profile-view .analytics-shell.dashboard-numbered .analytics-head { z-index:2; }

.dashboard-roster-strip { margin:18px 0;border:1px solid var(--dashboard-line);border-radius:20px;background:linear-gradient(150deg,#101723,#0b111b);padding:24px 38px;position:relative;overflow:hidden; }
.dashboard-roster-strip>header { min-height:70px;display:flex;align-items:center;gap:26px;position:relative;z-index:1; }
.dashboard-roster-strip>header>div:first-child { flex:0 0 auto; }
.dashboard-roster-strip h2 { margin:6px 0 0;font:900 28px/1 var(--font-display); }
.dashboard-roster-groups { min-width:220px;flex:1;display:flex;gap:8px;flex-wrap:wrap; }
.dashboard-roster-groups>span { border:1px solid var(--dashboard-line);border-radius:99px;padding:8px 13px;color:#c6cfdd;font-size:11px;font-weight:700; }
.dashboard-roster-groups b { margin-left:4px;color:#8fa0b5; }
.dashboard-roster-strip details { flex:0 0 auto; }
.dashboard-roster-strip summary { list-style:none;border:1px solid color-mix(in srgb,var(--accent) 55%,white 8%);border-radius:9px;padding:12px 16px;color:#e6ffb0;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap; }
.dashboard-roster-strip summary::-webkit-details-marker { display:none; }
.dashboard-roster-strip summary b { color:var(--accent);margin-left:5px; }
.dashboard-roster-strip details[open] { flex-basis:100%;width:100%; }
.dashboard-roster-strip details[open] summary { width:max-content;margin:0 0 16px auto; }
.dashboard-roster-directory { padding-top:18px;border-top:1px solid var(--dashboard-line-soft); }
.dashboard-roster-directory>label { width:min(320px,100%);height:44px;margin:0 0 14px auto;border:1px solid var(--dashboard-line);border-radius:9px;background:#0a1119;display:flex;align-items:center;gap:9px;padding:0 13px;color:#7e8da2; }
.dashboard-roster-directory input { width:100%;border:0;outline:0;background:transparent;color:white;font-size:16px; }
.dashboard-roster-strip .roster-player { margin-top:18px; }

.profile-view .profile-bottom { margin-top:20px;gap:20px;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr); }
.profile-view .news-stack,.profile-view .insight-card { min-height:300px;padding:28px 37px;border-color:var(--dashboard-line);border-radius:20px;background:linear-gradient(150deg,#101723,#0b111b); }
.profile-view .story-row { padding:16px 4px;border-color:var(--dashboard-line-soft);color:white; }
.profile-view .story-row>span,.profile-view .story-row small { color:var(--story,var(--profile)); }
.profile-view .story-row strong { font-size:18px;line-height:1.25; }
.profile-view .insight-card { background:radial-gradient(circle at 85% 16%,color-mix(in srgb,var(--profile) 22%,transparent),transparent 40%),linear-gradient(150deg,#111925,#0b111b); }
.profile-view .insight-card h3 { font-size:34px; }
.profile-view .insight-card p { color:#c6cfdd;font-size:13px;line-height:1.6; }

@media (max-width:1100px) {
  .profile-view .profile-hero { grid-template-columns:1fr;gap:28px; }
  .profile-view .profile-scoreboard { grid-template-columns:repeat(4,1fr); }
  .profile-view .profile-scoreboard>span { border-bottom:0!important;border-right:1px solid var(--dashboard-line); }
  .profile-view .dashboard-lead { grid-template-columns:minmax(260px,1fr) 145px 185px; }
  .profile-view .dashboard-lead>button { grid-column:1/4; }
  .dashboard-team-hero { align-items:flex-start;flex-direction:column; }
  .dashboard-team-hero__model { width:100%; }
  .dashboard-team-hero__model>span { flex:1; }
}

@media (max-width:720px) {
  .profile-view .profile-hero { min-height:0;padding:26px 20px;gap:24px;border-radius:16px; }
  .profile-view .profile-intro { align-items:flex-start;gap:15px; }
  .profile-view .large-avatar { width:67px;height:67px; }
  .profile-view .large-avatar span { font-size:30px; }
  .profile-view .profile-intro h1 { margin:9px 0 13px;font-size:49px; }
  .profile-view .profile-intro p { font-size:12px;line-height:1.55; }
  .profile-view .profile-scoreboard { grid-template-columns:1fr 1fr; }
  .profile-view .profile-scoreboard>span { min-height:74px;padding:14px 15px;border-bottom:1px solid var(--dashboard-line)!important; }
  .profile-view .profile-scoreboard>span:nth-child(2n) { border-right:0; }
  .profile-view .profile-scoreboard>span:nth-child(n+3) { border-bottom:0!important; }
  .profile-view .profile-scoreboard strong { font-size:24px; }
  .profile-view .team-switcher { margin-right:-12px;padding-right:12px; }
  .profile-view .team-switcher button { min-width:245px;flex:0 0 245px; }
  .dashboard-watermark { right:8px;font-size:104px; }

  .profile-view .dashboard-overview-head { padding:22px 18px; }
  .profile-view .dashboard-overview-head h2 { font-size:33px; }
  .profile-view .dashboard-overview-head p { font-size:11px; }
  .profile-view .dashboard-lead { margin:0 18px;padding:18px 0;grid-template-columns:1fr 100px;gap:17px; }
  .profile-view .dashboard-lead-team { grid-column:1/3; }
  .profile-view .dashboard-lead-chance { grid-column:1; }
  .profile-view .dashboard-lead-next { grid-column:2; }
  .profile-view .dashboard-lead>button { grid-column:1/3;margin:0;justify-self:stretch; }
  .profile-view .dashboard-summary { margin:18px;grid-template-columns:1fr 1fr; }
  .profile-view .dashboard-summary>span { min-height:70px;padding:13px; }
  .profile-view .dashboard-summary>span:nth-child(3) { border-left:0;border-top:1px solid var(--dashboard-line); }
  .profile-view .dashboard-summary>span:nth-child(4) { border-top:1px solid var(--dashboard-line); }
  .profile-view .dashboard-summary strong { font-size:20px; }
  .profile-view .dashboard-race-heading { margin:24px 18px 12px;align-items:flex-start;flex-direction:column;gap:7px; }
  .profile-view .dashboard-race-list { margin:0 18px 20px; }
  .profile-view .dashboard-race-list>button { min-height:160px;padding:14px;grid-template-columns:26px 42px minmax(0,1fr) auto;grid-template-rows:auto auto auto;gap:10px; }
  .profile-view .dashboard-rank { grid-column:1;grid-row:1; }
  .profile-view .dashboard-race-list .team-badge { grid-column:2;grid-row:1; }
  .profile-view .dashboard-team-name { grid-column:3;grid-row:1; }
  .profile-view .dashboard-team-odds { grid-column:4;grid-row:1; }
  .profile-view .dashboard-playoff-window { grid-column:2/4;grid-row:2; }
  .profile-view .dashboard-race-state { grid-column:2/5;grid-row:3; }
  .profile-view .dashboard-open { grid-column:4;grid-row:2;justify-self:end; }
  .profile-view .dashboard-team-name strong { font-size:18px; }
  .profile-view .dashboard-team-odds strong { font-size:21px; }

  .dashboard-next-up { min-height:0;padding:24px 18px 28px; }
  .dashboard-next-up>header { align-items:flex-start;flex-direction:column;margin-bottom:19px; }
  .dashboard-next-up h3 { font-size:29px; }
  .dashboard-strand { display:grid;grid-auto-flow:column;grid-auto-columns:190px;grid-template-columns:none;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory; }
  .dashboard-strand::before { right:auto;width:1100px; }
  .dashboard-strand button { scroll-snap-align:start; }

  .dashboard-team-hero { min-height:0;margin-bottom:12px;padding:24px 18px;gap:23px;border-radius:16px; }
  .dashboard-team-hero__identity { align-items:flex-start;gap:14px; }
  .dashboard-team-hero__identity .team-badge--lg { --sz:58px; }
  .dashboard-team-hero__identity h2 { white-space:normal;font-size:34px; }
  .dashboard-team-hero__model { display:grid;grid-template-columns:1fr 1fr; }
  .dashboard-team-hero__model>span { min-width:0;min-height:72px;padding:13px; }
  .dashboard-team-hero__model>span:nth-child(3) { grid-column:1/3;border-left:0;border-top:1px solid var(--dashboard-line-soft); }
  .dashboard-team-hero__model strong { font-size:18px; }
  .dashboard-team-hero__model>span:first-child strong { font-size:28px; }

  .dashboard-stage { margin:12px 0; }
  .dashboard-stage .record-shell,.profile-view .analytics-shell.dashboard-numbered { padding:20px 15px; }
  .profile-view .team-feature { margin:12px 0;grid-template-columns:1fr;gap:12px; }
  .profile-view .next-game-panel,.profile-view .playoff-panel { min-height:0;padding:22px 17px; }
  .profile-view .panel-top .dashboard-section-label { max-width:190px; }

  .dashboard-roster-strip { margin:12px 0;padding:21px 17px;border-radius:16px; }
  .dashboard-roster-strip>header { align-items:flex-start;flex-direction:column;gap:17px; }
  .dashboard-roster-groups { min-width:0;width:100%; }
  .dashboard-roster-strip details { width:100%; }
  .dashboard-roster-strip summary { width:100%;text-align:center; }
  .dashboard-roster-strip details[open] summary { width:100%; }
  .dashboard-roster-strip .roster-grid { grid-template-columns:1fr; }
  .dashboard-roster-strip .roster-player { grid-template-columns:auto minmax(0,1fr); }
  .dashboard-roster-strip .roster-player-status { grid-column:1/3;border-left:0;border-top:1px solid var(--dashboard-line);padding:14px 0 0; }

  .profile-view .profile-bottom { grid-template-columns:1fr;gap:12px; }
  .profile-view .news-stack,.profile-view .insight-card { min-height:0;padding:22px 18px;border-radius:16px; }
  .profile-view .insight-card { min-height:280px; }
  .profile-view .story-row strong { font-size:15px; }
}

@media (prefers-reduced-motion:reduce) {
  .profile-hero__strands i,.profile-view .team-switcher button,.dashboard-strand button { animation:none!important;transition:none!important; }
}
