/* ── Player Intelligence page ──────────────────────────────────────── */

/* Hub container */
.player-hub{width:min(100%,960px)}

/* Brand header link */
.player-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ui-ink)}
.player-brand img{width:38px;height:46px;object-fit:contain}
.player-brand strong{display:block;margin-top:4px;font:600 13px var(--ui-font)}

/* Hero intro */
.player-intro{min-height:250px;margin-top:14px}
.player-intro h1{position:relative;z-index:1;font:500 clamp(40px,7vw,64px)/1.02 var(--ui-font);letter-spacing:-.065em;margin:25px 0 18px}
.player-intro h1 em{font-style:normal;color:var(--ui-mint)}
.player-hero-number{position:absolute;right:4%;top:12px;font:400 235px/1 Anton,sans-serif;color:rgba(var(--ui-mint-rgb),.13);transform:rotate(-10deg)}

/* ── Cards grid: reuses .home-cards / .home-card from home-studio.css ── */
.player-cards{margin:18px 0 35px}
.player-cards .home-card--roster{background:var(--ui-lilac)}

/* ── Unified Headers (matching model screens editor-header) ──────── */
.player-page .editor-header{
  isolation:isolate;
  background:transparent !important;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 44px;
  align-items:center;
  gap:12px;
  min-height:56px;
  margin-bottom:20px;
  padding:0;
  border:none !important;
  box-shadow:none !important;
}
.player-page .editor-header .editor-heading{
  min-width:0;
  text-align:center;
}
.player-page .editor-header .editor-heading .studio-eyebrow{
  color:var(--ui-muted) !important;
  font:600 8px/1.4 var(--ui-font);
  margin-bottom:4px;
  letter-spacing:.14em;
  text-transform:uppercase;
  display:block;
}
.player-page .editor-header .editor-title{
  color:var(--ui-ink) !important;
  font:600 16px/1.2 var(--ui-font) !important;
  letter-spacing:-.03em;
  margin:0;
}

/* Circular back and action buttons (exact match to .glass-back in models) */
.player-page .glass-back,
.player-page .profile-dots-btn{
  display:grid !important;
  place-items:center !important;
  width:44px !important;
  height:44px !important;
  border-radius:50% !important;
  border:1px solid rgba(var(--ui-ink-rgb), .16) !important;
  background:rgba(var(--ui-surface-rgb), .6) !important;
  backdrop-filter:blur(14px) saturate(130%) !important;
  -webkit-backdrop-filter:blur(14px) saturate(130%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 2px 8px rgba(var(--ui-ink-rgb), .04) !important;
  cursor:pointer !important;
  transition:transform var(--motion-fast),background var(--motion-fast) !important;
  text-decoration:none !important;
  color:var(--ui-ink) !important;
  padding:0 !important;
}
.player-page .glass-back img{
  width:20px !important;
  height:20px !important;
  filter:none !important;
  display:block !important;
}
.player-page .glass-back:active,
.player-page .profile-dots-btn:active{
  transform:scale(.94) !important;
  background:rgba(var(--ui-surface-rgb), .85) !important;
}
.player-page .glass-back:focus-visible,
.player-page .profile-dots-btn:focus-visible{
  outline:2px solid var(--ui-mint) !important;
  outline-offset:3px !important;
}

/* ── Subscreen state: hide main home header & bottom nav ─────────── */
body.in-subscreen-view{
  overflow:hidden !important;
}
body.in-subscreen-view .home-header,
body.in-subscreen-view [data-player-status],
body.in-subscreen-view .studio-bottom-nav{
  display:none !important;
}

/* ── Workspace: true full-screen overlay for Team Stats, Players, Trade ── */
.player-workspace{
  position:fixed;
  inset:0;
  width:100vw;
  height:100dvh;
  z-index:80;
  overflow-y:auto;
  overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
  background:var(--ui-bg) var(--home-background,none) center/cover fixed;
  padding:max(16px, env(safe-area-inset-top)) 20px max(32px, env(safe-area-inset-bottom));
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  animation:player-reveal 240ms cubic-bezier(.2,.8,.2,1) both;
}
.player-workspace.is-hidden{
  display:none !important;
}
.player-workspace > *{
  width:min(100%, 580px);
  margin-inline:auto;
}

/* Period toggle */
.player-period{display:flex;gap:5px;padding:5px;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:16px}
.player-period button{flex:1;min-height:42px;border:0;border-radius:12px;background:none;font:600 10px var(--ui-font);color:var(--ui-muted);cursor:pointer}
.player-period button[aria-pressed="true"]{background:var(--ui-shell);color:var(--ui-surface)}

/* Captions / labels */
.player-caption{font:400 11px/1.6 var(--ui-font);color:var(--ui-muted);margin:14px 0}
.player-label{display:flex;flex-direction:column;gap:8px;font:600 11px var(--ui-font)}
.player-label select{width:100%;min-height:46px;padding:12px;border:1px solid var(--ui-line);border-radius:13px;background:var(--ui-surface);color:var(--ui-ink);font:500 12px var(--ui-font)}

/* Metrics row */
.player-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}
.player-metric{padding:19px 12px;border-radius:18px;background:var(--ui-surface)}
.player-metric strong{display:block;font:400 30px Anton,sans-serif}
.player-metric span{font:500 9px var(--ui-font);color:var(--ui-muted)}

/* Player list rows */
.player-list{display:grid;gap:8px}
.player-row{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ui-ink);padding:12px;border:1px solid var(--ui-line);border-radius:18px;background:var(--ui-surface);transition:transform 160ms,border-color 160ms}
.player-row img,.trade-option img{width:47px;height:47px;object-fit:contain;border-radius:50%;background:var(--ui-mint)}
.player-row-info{flex:1;min-width:0}
.player-row-info strong{display:block;font:600 12px var(--ui-font)}
.player-row-info small{display:block;margin-top:5px;font:400 9px var(--ui-font);color:var(--ui-muted)}
.player-row-value{text-align:right;font:600 14px var(--ui-font)}
.player-row-value small{display:block;font-size:8px;color:var(--ui-muted);margin-top:5px}

/* Grade badge */
.player-grade{display:grid;place-items:center;width:35px;height:40px;border-radius:10px;background:var(--ui-mint);font:400 20px Anton,sans-serif}

/* Search bar */
.player-search{display:flex;align-items:center;gap:10px;padding:0 16px;border:1px solid var(--ui-line);border-radius:15px;background:var(--ui-surface)}
.player-search input{min-width:0;width:100%;padding:16px 0;background:none;border:0;color:var(--ui-ink);font:500 13px var(--ui-font)}
.player-search>span{font-size:26px}

/* Method / details */
.player-method{margin-top:25px;padding:18px;border:1px solid var(--ui-line);border-radius:18px;font:400 11px/1.7 var(--ui-font);color:var(--ui-muted)}
.player-method summary{cursor:pointer;color:var(--ui-ink);font-weight:600}

/* Status */
.player-status{font:500 12px/1.6 var(--ui-font);margin:12px 0;color:var(--ui-muted)}
.player-status a{color:var(--ui-ink)}

/* Empty state */
.player-empty{padding:32px 20px;border:1px dashed var(--ui-line);border-radius:20px;text-align:center;font:500 12px/1.7 var(--ui-font);color:var(--ui-muted)}

/* ── Trade machine ──────────────────────────────────────────────── */
.trade-machine{display:grid;grid-template-columns:1fr 30px 1fr;gap:12px;align-items:start}
.trade-machine fieldset{min-width:0;margin:0;padding:14px;border:1px solid var(--ui-line);border-radius:20px}
.trade-machine legend{padding:0 6px;font:600 11px var(--ui-font)}
.trade-exchange{align-self:center;text-align:center;font-size:26px}
.trade-options{display:grid;gap:6px;margin-top:12px;max-height:260px;overflow:auto}
.trade-option{display:flex;gap:7px;align-items:center;padding:7px;border-radius:12px;font:500 10px var(--ui-font);cursor:pointer}
.trade-option:has(input:checked){background:var(--ui-mint)}
.trade-option input{accent-color:var(--ui-ink)}
.trade-option img{width:32px;height:32px}

/* Primary button */
.player-primary{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:50px;margin:20px 0;border:0;border-radius:16px;background:var(--ui-shell);color:var(--ui-surface);padding:16px;font:600 12px var(--ui-font);cursor:pointer}
.player-error{font:500 12px/1.6 var(--ui-font);color:var(--ink)}

/* Trade result: always horizontal side-by-side */
.trade-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.trade-result-card{padding:16px;background:var(--ui-surface);border-radius:20px}
.trade-result-card h3{font:600 11px var(--ui-font);margin:0 0 6px}
.trade-result-card>strong{display:block;font:400 36px Anton,sans-serif}
.trade-result-card p{font:500 9px/1.6 var(--ui-font);margin:4px 0 0}
.trade-result-card.is-positive{background:var(--ui-mint)}

/* ── PLAYER PROFILE FULLSCREEN VIEW ────────────────────────────── */
body.in-profile-view{
  overflow:hidden!important;
}
body.in-profile-view .studio-bottom-nav{
  display:none!important;
}

.player-profile-screen{
  position:fixed;
  inset:0;
  width:100vw;
  height:100dvh;
  z-index:90;
  overflow:hidden;
  touch-action:none;
  /* Seamless full-screen background as requested */
  background:
    radial-gradient(ellipse at 30% 35%, rgba(var(--ui-mint-rgb),.5), transparent 65%),
    repeating-linear-gradient(135deg, transparent 0 22px, rgba(var(--ui-ink-rgb),.03) 22px 23px),
    var(--ui-surface);
  animation:player-reveal 240ms cubic-bezier(.2,.8,.2,1) both;
}
.player-profile-screen[hidden]{display:none!important}

/* Vertical pastel mint stripe running all the way down the screen */
.profile-bg-stripe{
  position:absolute;
  inset:0;
  left:50%;
  transform:translateX(-50%);
  width:min(280px, 68vw);
  background:linear-gradient(180deg, rgba(var(--ui-mint-rgb),.8) 0%, rgba(var(--ui-mint-rgb),.42) 100%);
  z-index:1;
  pointer-events:none;
}

/* Header floats at the top reaching the top of the screen */
.editor-header.profile-header{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:25;
  padding:max(14px, env(safe-area-inset-top)) 20px 0;
  margin:0;
}
.profile-header .editor-heading .studio-eyebrow{
  color:rgba(var(--ui-ink-rgb),.35);
}

/* 3-dot dropdown menu */
.profile-menu-wrap{position:relative}
.profile-dots-btn{
  font-size:22px;
  line-height:1;
  letter-spacing:-2px;
}
.profile-dropdown{
  position:absolute;
  right:0;
  top:100%;
  margin-top:8px;
  z-index:30;
  min-width:150px;
  padding:6px;
  border:1px solid var(--ui-line);
  border-radius:18px;
  background:rgba(var(--ui-surface-rgb),.94);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  box-shadow:0 12px 36px rgba(var(--ui-ink-rgb),.15);
  display:flex;
  flex-direction:column;
  gap:2px;
}
.profile-dropdown[hidden]{display:none}
.profile-dropdown button{
  display:block;
  width:100%;
  padding:12px 14px;
  border:0;
  border-radius:12px;
  background:none;
  text-align:left;
  font:600 11px var(--ui-font);
  color:var(--ui-muted);
  cursor:pointer;
}
.profile-dropdown button[aria-pressed="true"]{
  background:var(--ui-shell);
  color:var(--ui-surface);
}

/* Viewport for profile content */
.profile-viewport{
  position:absolute;
  inset:0;
  z-index:2;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
}

/* Huge jersey number behind player */
.player-profile-number{
  position:absolute;
  top:max(72px, calc(env(safe-area-inset-top) + 52px));
  left:50%;
  transform:translateX(-50%);
  font:400 clamp(160px, 42vw, 245px)/1 Anton, sans-serif;
  letter-spacing:-.06em;
  color:var(--ui-ink);
  z-index:2;
  pointer-events:none;
  user-select:none;
  text-shadow:0 4px 16px rgba(var(--ui-ink-rgb),.06);
}

/* Cutout player photo */
.player-profile-photo{
  position:absolute;
  bottom:240px;
  left:50%;
  transform:translateX(-50%);
  width:min(88%, 380px);
  height:clamp(280px, 48vh, 460px);
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 16px 28px rgba(var(--ui-ink-rgb),.2));
  z-index:3;
  pointer-events:none;
}

/* Bottom card: inspired by template image */
.player-profile-card{
  position:absolute;
  bottom:max(16px, env(safe-area-inset-bottom));
  left:16px;
  right:16px;
  margin:0 auto;
  width:calc(100% - 32px);
  max-width:480px;
  z-index:10;
  border-radius:32px;
  background:rgba(var(--ui-surface-rgb),.94);
  backdrop-filter:blur(30px) saturate(180%);
  -webkit-backdrop-filter:blur(30px) saturate(180%);
  box-shadow:0 18px 48px rgba(var(--ui-ink-rgb),.14), inset 0 1px 0 rgba(255,255,255,.9);
  padding:18px 22px;
  text-align:center;
}

/* Micro brand at top of card */
.profile-brand-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font:600 9px/1 var(--ui-font);
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ui-muted);
  margin-bottom:6px;
}
.profile-brand-logo{
  width:14px;
  height:16px;
  object-fit:contain;
}

/* Large bold player name */
.profile-player-name{
  margin:0 0 8px;
  font:700 clamp(24px, 6vw, 34px)/1.06 var(--ui-font);
  letter-spacing:-.045em;
  color:var(--ui-ink);
}

/* Points Avg badge */
.profile-ppg-badge{
  display:inline-block;
  padding:5px 18px;
  border-radius:999px;
  background:var(--ui-mint);
  color:var(--ui-ink);
  font:700 11px/1.2 var(--ui-font);
  margin-bottom:12px;
  letter-spacing:-.01em;
}

/* iOS Frosted Glass Buttons: NOTA, JOGOS, FPPG PROJ. */
.profile-glass-bar{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:8px;
  margin-bottom:14px;
}
.profile-glass-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:30px;
  padding:5px 8px;
  border-radius:12px;
  background:rgba(var(--ui-surface-rgb),.42);
  border:1px solid rgba(255, 255, 255, .75);
  backdrop-filter:blur(24px) saturate(190%);
  -webkit-backdrop-filter:blur(24px) saturate(190%);
  box-shadow:inset 0 1px 0 rgba(255, 255, 255, .9), 0 2px 8px rgba(var(--ui-ink-rgb),.04);
}
.profile-glass-btn .pg-val{
  font:700 13px/1 Anton, sans-serif;
  color:var(--ui-ink);
}
.profile-glass-btn .pg-lbl{
  font:600 8px/1 var(--ui-font);
  color:var(--ui-muted);
  letter-spacing:.06em;
}

/* Stats row: 29.0 POINTS, 11.9 ASSISTS, 9.0 REBS */
.profile-stat-row{
  display:flex;
  justify-content:space-around;
  align-items:center;
  gap:8px;
  padding-top:2px;
}
.profile-stat-col{
  display:flex;
  align-items:baseline;
  gap:5px;
}
.profile-stat-col .stat-num{
  font:700 20px/1 Anton, sans-serif;
  color:var(--ui-ink);
}
.profile-stat-col .stat-lbl{
  font:600 8px/1 var(--ui-font);
  color:var(--ui-muted);
  letter-spacing:.06em;
}

/* Injury tag */
.profile-injury-tag{
  margin-top:8px;
  font:600 9px/1.3 var(--ui-font);
  color:var(--ui-coral);
  letter-spacing:.04em;
}

/* ── Screen transitions (cards ↔ workspace) ─────────────────────── */
.player-page .home-intro.is-hidden,
.player-page .player-cards.is-hidden{display:none}

.player-workspace[data-workspace]{animation:player-reveal 220ms ease both}

/* Utility */
.player-page [hidden]{display:none!important}
.player-page .studio-bottom-nav{width:min(260px,calc(100% - 32px))}
.player-page :focus-visible{outline:2px solid var(--ui-ink);outline-offset:3px}
.player-workspace [data-view]{animation:player-reveal 220ms ease both}

@keyframes player-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ── Responsive ─────────────────────────────────────────────────── */
@media(hover:hover){
  .player-row:hover{transform:translateX(3px);border-color:var(--ui-muted)}
}
@media(max-width:600px){
  .trade-machine{grid-template-columns:1fr 30px 1fr}
  .trade-options{max-height:200px}
  .player-hub{display:block}
  .trade-result-card>strong{font-size:28px}
  .trade-result-card{padding:12px}
  .player-profile-photo{bottom:230px}
  .player-profile-card{padding:16px 18px}
}
@media(max-height:680px){
  .player-profile-number{font-size:130px;top:60px}
  .player-profile-photo{height:240px;bottom:210px}
  .player-profile-card{padding:14px 16px;bottom:8px}
  .profile-player-name{font-size:22px;margin-bottom:4px}
  .profile-ppg-badge{margin-bottom:8px;padding:3px 14px}
  .profile-glass-bar{margin-bottom:10px}
}
@media(prefers-reduced-motion:reduce){
  .player-row{transition:none}
  .player-workspace [data-view]{animation:none}
  .player-workspace[data-workspace]{animation:none}
  .player-profile-screen{animation:none}
}
/* Compact search controls and shared horizontal period menu. */
.player-search-tools{display:flex;align-items:center;gap:8px}.player-search-tools .player-search{flex:1;min-width:0}.player-tool{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-ink);cursor:pointer}.player-tool svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.player-tool[aria-expanded="true"]{background:var(--ui-mint)}.player-search-tools .profile-dropdown{top:52px;z-index:110;min-width:185px}.player-filter-dropdown{width:235px;padding:16px}.player-filter-dropdown>label{display:grid;gap:8px;font:600 11px var(--ui-font)}.player-filter-dropdown select{padding:10px;border-radius:10px;border:1px solid var(--ui-line);background:var(--ui-surface);color:var(--ui-ink);width:100%}.player-filter-dropdown fieldset{margin:14px 0 0;padding:12px 0 0;border:0;border-top:1px solid var(--ui-line);display:flex;flex-wrap:wrap;gap:12px;font:500 11px var(--ui-font)}.player-filter-dropdown legend{padding-top:10px;font-weight:600}.player-filter-dropdown fieldset label{display:flex;align-items:center;gap:3px}.player-filter-dropdown input{accent-color:var(--ui-ink)}
.player-profile-screen{--profile-team-rgb:146,150,157;--profile-team-color:#92969d;background:radial-gradient(ellipse at 30% 35%,rgba(var(--profile-team-rgb),.42),transparent 65%),repeating-linear-gradient(135deg,transparent 0 22px,rgba(var(--ui-ink-rgb),.03) 22px 23px),var(--ui-surface)}
.profile-bg-stripe{width:clamp(70px,26vw,155px);background:linear-gradient(180deg,rgba(var(--profile-team-rgb),.9),rgba(var(--profile-team-rgb),.35))}
.player-profile-number{display:flex;align-items:start;top:clamp(130px,25dvh,250px);left:54%;transform:translateX(-25%);font:italic 400 clamp(170px,42vw,290px)/.85 Georgia,'Times New Roman',serif;letter-spacing:-.1em}.profile-number-digit:nth-child(even){transform:translate(-.05em,.57em)}
.profile-glass-bar{position:absolute;top:max(100px,calc(env(safe-area-inset-top) + 85px));left:16px;right:16px;max-width:480px;margin:0 auto;z-index:12}.profile-glass-btn{background:rgba(255,255,255,.27);backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%)}
.player-profile-card{background:linear-gradient(120deg,rgba(255,255,255,.55),rgba(255,255,255,.3));border:1px solid rgba(255,255,255,.72);backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);padding:24px 18px;box-shadow:0 14px 35px rgba(var(--ui-ink-rgb),.1),inset 0 1px 0 rgba(255,255,255,.85)}
.profile-brand-logo{width:22px;height:24px}.profile-player-name{font:italic 400 clamp(26px,7.6vw,42px)/1.1 var(--team-heading-font,Anton),Impact,sans-serif;text-transform:uppercase;letter-spacing:-.025em;margin:14px 0 10px}.profile-ppg-badge{background:rgba(var(--profile-team-rgb),.5)}.profile-stat-row{padding-top:16px}.player-profile-photo{bottom:180px;height:clamp(280px,55dvh,530px);width:min(96%,460px)}
@media(max-height:650px){.profile-glass-bar{top:80px}.player-profile-number{top:140px;font-size:150px}.player-profile-photo{bottom:150px;height:48dvh}.player-profile-card{padding:12px 16px}.profile-player-name{margin:8px 0;font-size:24px}.profile-stat-row{padding-top:5px}}
