/* 5G Prime Portal — public website visual system
   Shared presentation layer only. Portal behavior and permissions remain unchanged. */
:root{
  --red:#ed1c24;
  --red-dark:#bd1118;
  --black:#090a0c;
  --ink:#111317;
  --soft:#f4f4f2;
  --white:#fff;
  --muted:#666b73;
  --line:#e2e2df;
  --green:#2fb65e;
  --portal-shadow:0 24px 60px rgba(0,0,0,.10);
  --portal-shadow-soft:0 14px 36px rgba(0,0,0,.07);
}
*{box-sizing:border-box}
html{background:var(--black)}
body{
  background:var(--soft)!important;
  color:var(--ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
::selection{background:rgba(237,28,36,.18);color:var(--ink)}

/* Authentication */
.auth{background:#fff}
.auth-brand{
  background-image:linear-gradient(90deg,rgba(5,6,7,.88),rgba(5,6,7,.55)),linear-gradient(0deg,rgba(5,6,7,.66),transparent 60%),url("assets/login-team-background.jpg")!important;
}
.auth-brand:after{height:3px;background:var(--red);box-shadow:0 0 26px rgba(237,28,36,.62)}
.auth-logo{position:relative;isolation:isolate}
.auth-logo img{filter:drop-shadow(0 0 6px rgba(255,255,255,.7)) drop-shadow(0 0 16px rgba(237,28,36,.22))}
.auth-brand-copy span,.auth-kicker{color:var(--red)!important;text-transform:uppercase;font-weight:900;letter-spacing:.18em}
.auth-brand-copy h2{
  color:#fff;
  font-size:clamp(3rem,5vw,5.7rem);
  line-height:.88;
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.auth-brand-copy p{color:#e2e4e8;font-size:1rem}
.auth-trust{color:#fff}
.auth-panel{background:linear-gradient(145deg,#fff 0%,#f4f4f2 100%)}
.auth-card{
  border:1px solid var(--line);
  border-top:4px solid var(--red);
  border-radius:5px;
  box-shadow:var(--portal-shadow);
}
.auth-card h1{
  color:var(--ink);
  font-size:clamp(2.4rem,4vw,4.15rem);
  line-height:.92;
  letter-spacing:-.05em;
  text-transform:uppercase;
}
.auth-lead{color:var(--muted);font-size:.96rem}
.auth-card label{color:#353941;font-size:.75rem;letter-spacing:.055em;text-transform:uppercase}
.auth-card input,.auth-card select{
  min-height:50px;
  border:1px solid #c9ccd1!important;
  border-radius:3px!important;
  background:#fff!important;
  color:var(--ink)!important;
  padding:13px 14px!important;
}
.auth-card input:focus,.auth-card select:focus{
  border-color:var(--red)!important;
  box-shadow:0 0 0 3px rgba(237,28,36,.11)!important;
}
.auth-submit{
  min-height:50px;
  border:1px solid var(--red);
  border-radius:3px!important;
  background:var(--red)!important;
  box-shadow:0 10px 24px rgba(237,28,36,.20)!important;
  color:#fff;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
  transition:.2s ease;
}
.auth-submit:hover{background:var(--black)!important;border-color:var(--black);transform:translateY(-2px)}
.auth-switch button,.auth-back,.auth-forgot button{color:var(--red)!important}
.auth-help a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}

/* Main shell */
.app{background:var(--soft)!important;min-height:100vh}
aside[data-portal-sidebar]{
  width:230px;
  padding:22px 16px 18px;
  background:linear-gradient(180deg,#090a0c 0%,#111317 100%)!important;
  border-right:1px solid #24262b;
  box-shadow:10px 0 34px rgba(0,0,0,.10);
}
.app{margin-left:230px}
aside[data-portal-sidebar] .portal-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:118px;
  margin:0 0 12px;
}
aside[data-portal-sidebar] .portal-logo img{
  width:126px;
  max-height:98px;
  object-fit:contain;
  filter:drop-shadow(0 0 5px rgba(255,255,255,.72)) drop-shadow(0 0 14px rgba(237,28,36,.20));
  transition:transform .2s ease;
}
aside[data-portal-sidebar] .portal-logo:hover img{transform:scale(1.035)}
aside[data-portal-sidebar] nav{display:grid;gap:3px;margin-top:6px}
aside[data-portal-sidebar] nav a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:43px;
  margin:0;
  padding:10px 13px;
  border:1px solid transparent;
  border-radius:3px;
  color:#c9ccd2;
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.045em;
  text-transform:uppercase;
  transition:.18s ease;
}
aside[data-portal-sidebar] nav a:hover{background:#1b1e23;color:#fff;transform:translateX(2px)}
aside[data-portal-sidebar] nav a.active{
  border-color:var(--red);
  border-left:4px solid #fff;
  background:var(--red);
  color:#fff;
  box-shadow:0 9px 22px rgba(237,28,36,.22);
}
.portal-signout{
  min-height:42px;
  margin-top:auto!important;
  padding:11px 13px!important;
  border:1px solid #34373d;
  border-radius:3px!important;
  color:#fff!important;
  font-size:.76rem;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.portal-signout:hover{border-color:var(--red);background:var(--red);color:#fff!important}
.mobile-mental-banner{display:none}

.app>header{
  min-height:76px;
  height:auto;
  padding:12px 34px;
  border-top:4px solid var(--red);
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.98);
  box-shadow:0 8px 25px rgba(0,0,0,.04);
  backdrop-filter:blur(12px);
}
.app>header small{
  color:var(--red)!important;
  font-size:.66rem!important;
  font-weight:900!important;
  letter-spacing:.16em!important;
  text-transform:uppercase;
}
.app>header select{
  min-width:230px;
  min-height:38px;
  border:0;
  border-bottom:2px solid var(--ink)!important;
  border-radius:0!important;
  background:#fff!important;
  color:var(--ink)!important;
  font-size:.86rem!important;
  font-weight:900!important;
}
.app>header>span{color:#555b63!important;font-size:.8rem!important;font-weight:750!important}

.content{
  width:min(1480px,100%);
  max-width:1480px;
  margin:0 auto;
  padding:38px 34px 64px;
}
.content>h1{
  position:relative;
  margin:0 0 27px;
  padding:0 0 15px;
  color:var(--ink);
  font-size:clamp(2.25rem,4vw,4.25rem);
  font-weight:950;
  line-height:.9;
  letter-spacing:-.05em;
  text-transform:uppercase;
}
.content>h1:after{content:"";position:absolute;left:0;bottom:0;width:62px;height:4px;background:var(--red)}

/* Shared cards */
.content .panel,.content article{
  border-color:var(--line);
}
.content .panel{
  border:1px solid var(--line)!important;
  border-radius:5px!important;
  background:#fff!important;
  box-shadow:var(--portal-shadow-soft)!important;
}
.content .panel:hover{border-color:#d4d4d0!important}
.content .panel h2,.content .panel h3{
  color:var(--ink);
  font-weight:900;
  letter-spacing:-.025em;
}
.content .panel h2{text-transform:uppercase}
.content .panel>p,.content .panel small,.content .muted{color:var(--muted)}
.content .form.panel,.content form.panel{
  padding:26px!important;
  border-top:4px solid var(--red)!important;
}
.content .form.panel>h2,.content form.panel>h2{font-size:1.35rem;line-height:1.05}

/* Metrics */
.metrics{gap:14px}
.metrics article{
  position:relative;
  min-height:126px;
  padding:24px;
  overflow:hidden;
  border:1px solid var(--line)!important;
  border-radius:5px!important;
  background:#fff!important;
  box-shadow:var(--portal-shadow-soft)!important;
}
.metrics article:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--red)}
.metrics article:first-child{border-color:var(--black)!important;background:var(--black)!important;color:#fff}
.metrics article:first-child:before{background:var(--red)}
.metrics article b{font-size:2.35rem;line-height:1;font-weight:950;letter-spacing:-.04em}
.metrics article span{margin-top:11px;color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.055em}
.metrics article:first-child span{color:#c8cbd0}

/* Forms */
.content form label:has(>input:not([type=hidden]):not([type=checkbox]):not([type=radio])),
.content form label:has(>select),
.content form label:has(>textarea){
  color:#353941!important;
  font-size:.75rem!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
  text-transform:uppercase;
}
.content input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]),
.content select,
.content textarea{
  border:1px solid #c9ccd1!important;
  border-radius:3px!important;
  background:#fff!important;
  color:#15181d!important;
  font-size:.95rem!important;
  box-shadow:none!important;
}
.content input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]),
.content select{min-height:49px!important;padding:11px 14px!important}
.content textarea{min-height:120px!important;padding:13px 14px!important}
.content input[type=file]{
  min-height:52px;
  padding:13px!important;
  border:1px dashed #aeb2b8!important;
  border-radius:3px!important;
  background:#fff!important;
}
.content input:focus,.content select:focus,.content textarea:focus{
  border-color:var(--red)!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(237,28,36,.11)!important;
}
.content input[type=checkbox],.content input[type=radio]{accent-color:var(--red)}
.content fieldset{border:1px solid var(--line)!important;border-radius:4px!important;background:#fafaf8!important}
.content legend{color:#353941!important;font-size:.72rem!important;font-weight:900!important;letter-spacing:.06em;text-transform:uppercase}

/* Buttons */
.content button,.content input[type=submit],.content a.button,
.content .field-request-link,.content .tryout-manage-link,.content .lineup-button{
  min-height:46px!important;
  padding:11px 17px!important;
  border-radius:3px!important;
  font-size:.74rem!important;
  font-weight:900!important;
  letter-spacing:.065em!important;
  text-transform:uppercase;
  transition:.2s ease!important;
}
.content button:not(.secondary):not(.danger):not(.groupme-create):not([disabled]),
.content input[type=submit]{
  border:1px solid var(--red)!important;
  background:var(--red)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(237,28,36,.18)!important;
}
.content button:not(.secondary):not(.danger):not(.groupme-create):not([disabled]):hover,
.content input[type=submit]:hover{
  border-color:var(--black)!important;
  background:var(--black)!important;
  color:#fff!important;
  transform:translateY(-2px)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
.content button.secondary,.content .secondary,.content a.button.secondary{
  border:1px solid #bfc1c5!important;
  background:#fff!important;
  color:var(--ink)!important;
  box-shadow:none!important;
}
.content button.secondary:hover,.content .secondary:hover{
  border-color:var(--black)!important;
  background:var(--black)!important;
  color:#fff!important;
}
.content button.danger,.content .danger{
  border:1px solid var(--red)!important;
  background:#fff!important;
  color:var(--red-dark)!important;
  box-shadow:none!important;
}
.content button.danger:hover,.content .danger:hover{background:var(--red-dark)!important;color:#fff!important}
.content button:focus-visible,.content a:focus-visible,.content input:focus-visible,
.content select:focus-visible,.content textarea:focus-visible{
  outline:3px solid rgba(237,28,36,.2)!important;
  outline-offset:2px!important;
}

/* Dashboard and team cards */
.my-teams{padding:27px!important}
.my-teams>h2{font-size:1.55rem}
.team-search{max-width:620px}
.team-access-grid{gap:14px}
.team-access-grid a,.team-hub-grid>a,.stats-team-grid>a{
  position:relative;
  border:1px solid var(--line)!important;
  border-radius:5px!important;
  background:#fff!important;
  color:var(--ink)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.055)!important;
  transition:.2s ease!important;
}
.team-access-grid a:after,.team-hub-grid>a:after,.stats-team-grid>a:after{
  content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;background:var(--red);transition:right .22s ease;
}
.team-access-grid a:hover,.team-hub-grid>a:hover,.stats-team-grid>a:hover{
  border-color:#c9c9c5!important;
  transform:translateY(-3px)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.10)!important;
}
.team-access-grid a:hover:after,.team-hub-grid>a:hover:after,.stats-team-grid>a:hover:after{right:0}
.team-access-grid a.current{border:2px solid var(--red)!important;box-shadow:0 0 0 3px rgba(237,28,36,.09)!important}
.team-card-icon{border-radius:4px!important}
.uniform-icon{background:var(--red)!important}
.player-icon,.stats-icon,.staff-icon{background:var(--black)!important}
.team-hub-head{border-left:5px solid var(--red)!important}
.team-hub-head span,.uniforms-head>div:first-child>span,.stats-heading>div>span,
.stats-team-intro>span,.gamechanger-import>span{color:var(--red)!important;letter-spacing:.16em!important;text-transform:uppercase}
.team-hub-head h2,.uniforms-head h2,.stats-heading h2,.stats-team-intro h2{
  font-weight:950!important;letter-spacing:-.04em!important;text-transform:uppercase;
}

/* Branded special panels */
.leader-grid article,.message-compose-head,.month-calendar-head{
  border-radius:4px!important;
  background:linear-gradient(135deg,var(--black),#1b1e23)!important;
  color:#fff!important;
}
.leader-grid article{border-bottom:4px solid var(--red)!important}
.message-compose{border-radius:5px!important}
.message-form-section,.message-recipients{border-radius:4px!important}
.message-section-title>span,.message-recipients legend>span{background:var(--black)!important}
.message-send-bar{background:#fafaf8!important}
.groupme-create,.groupme-open{
  border-color:#00aff0!important;
  background:#00aff0!important;
  color:#fff!important;
}
.groupme-create:hover,.groupme-open:hover{border-color:#008fc5!important;background:#008fc5!important;color:#fff!important}
.team-groupme-banner{border-left:5px solid #00aff0!important}
.gamechanger-icon{background:#00a86b!important}

/* Tables and rows */
.content table{width:100%;border-collapse:collapse;background:#fff}
.content table thead th{
  padding:12px 13px!important;
  border-bottom:0!important;
  background:var(--black)!important;
  color:#fff!important;
  font-size:.68rem!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase;
}
.content table thead th a{color:#fff!important}
.content table tbody td{
  padding:13px!important;
  border-bottom:1px solid #ecece8!important;
  color:#2a2e34;
  font-size:.8rem;
}
.content table tbody tr:hover td{background:#fafaf8}
.content .table{overflow:hidden}
.content .table>div{border-top-color:#ecece8}
.content .table>div:hover{background:#fafaf8}
.stats-table,.uniform-table-wrap,.tryout-table-wrap{border-radius:5px!important}
.stat-tabs{padding:4px;border-radius:4px!important;background:#e8e8e5!important}
.stat-tabs a{border-radius:2px!important;text-transform:uppercase;letter-spacing:.055em}
.stat-tabs a.active{background:var(--black)!important;color:#fff!important}
.tryout-toolbar,.stats-toolbar{border-radius:5px!important}

/* Calendar */
.month-calendar{border-radius:5px!important}
.month-calendar-head{border-bottom:4px solid var(--red)}
.month-calendar-nav a{border-radius:3px!important}
.month-day{border-radius:0!important}
.month-day:hover{background:#fff5f5!important}
.calendar-key{background:#fff}
.day-number{border-radius:3px!important}
.month-day.today .day-number{background:var(--black)!important}
.month-day.selected .day-number{background:var(--red)!important}

/* Status and feedback */
.notice{
  padding:14px 16px;
  border:1px solid rgba(47,182,94,.35);
  border-left:5px solid var(--green);
  border-radius:4px!important;
  background:#effaf2;
  color:#126b3b;
  font-size:.86rem;
  font-weight:750;
}
.notice.error{border-color:rgba(237,28,36,.28);border-left-color:var(--red);background:#fff0f1;color:#9f1119}
.content .status,.content [class*="status"],.content .badge,
.super-admin-badge{border-radius:999px!important}
.uniform-status:not(.warning),.request-status.approved{background:#eaf8ef!important;color:#18703a!important}
.empty-state{border:1px dashed #c9c9c5!important;background:#fff!important}

/* Account and permission areas */
.account-list{border-radius:5px!important}
.account-list-head{background:linear-gradient(135deg,var(--black),#1b1e23)!important;color:#fff}
.account-list-head h2{color:#fff!important;text-transform:uppercase}
.account-list-head p{color:#bfc3ca!important}
.account-list-head>div>span{color:#ff5860!important}
.permission-checks label{border-radius:3px!important;background:#fafaf8!important}
.permission-list>form{border-top-color:#ecece8}

/* Messages inbox, including notification-launched view */
.portal-inbox{
  min-height:100vh;
  background:var(--soft)!important;
  color:var(--ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.portal-inbox .top{border-bottom:4px solid var(--red)!important;background:var(--black)!important}
.portal-inbox .top-actions a{border-radius:3px!important;text-transform:uppercase;font-size:.72rem!important;font-weight:900!important;letter-spacing:.05em}
.portal-inbox .top-actions a.compose{border-color:var(--red)!important;background:var(--red)!important}
.portal-inbox .panel,.portal-inbox .card{
  border:1px solid var(--line)!important;
  border-radius:5px!important;
  box-shadow:var(--portal-shadow-soft)!important;
}
.portal-inbox .card{border-top:4px solid var(--red)!important;background:#fff!important;color:var(--ink)!important}
.portal-inbox .card h1{text-transform:uppercase;letter-spacing:-.04em}
.portal-inbox .card p{color:var(--muted)!important}
.portal-inbox .card input{border-radius:3px!important;background:#fff!important;color:var(--ink)!important}
.portal-inbox .card button{border-radius:3px!important;background:var(--red)!important;text-transform:uppercase;font-weight:900!important;letter-spacing:.05em}
.portal-inbox .panelhead{border-bottom:3px solid var(--red)!important}
.portal-inbox .message-item:hover{background:#fafaf8!important}

/* Responsive portal header/navigation */
@media(max-width:1100px){
  .content{padding:30px 24px 52px}
  .content>h1{font-size:clamp(2.1rem,5vw,3.2rem)}
}
@media(max-width:820px){
  body{background:#fff!important}
  aside[data-portal-sidebar]{
    position:sticky!important;
    top:0;
    z-index:100;
    width:100%!important;
    min-height:72px;
    height:auto;
    padding:10px 14px!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:10px!important;
    background:rgba(9,10,12,.98)!important;
    border-right:0;
    border-bottom:3px solid var(--red);
  }
  aside[data-portal-sidebar]>.mobile-nav-toggle{
    grid-column:1!important;
    grid-row:1!important;
    min-width:44px!important;
    width:44px!important;
    height:44px!important;
    padding:0!important;
    justify-content:center;
    border:1px solid #44474d!important;
    border-radius:3px!important;
    background:#17191e!important;
  }
  .mobile-nav-toggle>b{display:none}
  .mobile-mental-banner{
    grid-column:2!important;
    grid-row:1!important;
    display:flex!important;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-width:0;
    color:#fff;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.06em;
    text-align:center;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .mobile-mental-banner img{width:23px!important;height:28px!important;object-fit:contain;filter:none!important}
  aside[data-portal-sidebar]>.portal-logo{
    grid-column:3!important;
    grid-row:1!important;
    min-height:0!important;
    width:62px!important;
    height:48px!important;
    margin:0!important;
    justify-content:flex-end!important;
  }
  aside[data-portal-sidebar]>.portal-logo img{
    width:62px!important;
    height:46px!important;
    object-fit:contain!important;
    filter:drop-shadow(0 0 4px rgba(255,255,255,.7))!important;
  }
  aside[data-portal-sidebar] nav,
  aside[data-portal-sidebar]>.portal-signout{
    grid-column:1/-1!important;
  }
  aside[data-portal-sidebar] nav{
    max-height:calc(100vh - 112px);
    margin-top:10px!important;
    padding:9px 0 3px!important;
    border-top:1px solid #34373d;
  }
  aside[data-portal-sidebar] nav a{min-height:47px;padding:12px 14px!important;font-size:.87rem!important}
  .portal-signout{margin-top:5px!important}
  .app{margin-left:0!important}
  .app>header{
    min-height:76px;
    padding:12px 17px!important;
    gap:12px;
    align-items:center;
  }
  .app>header form{min-width:0;flex:1}
  .app>header select{width:100%;min-width:0;font-size:.8rem!important}
  .app>header>span{max-width:42%;text-align:right;font-size:.72rem!important}
  .content{padding:27px 17px 48px!important;background:#fff}
  .content>h1{margin-bottom:22px;padding-bottom:12px}
  .content .panel{box-shadow:0 10px 27px rgba(0,0,0,.065)!important}
  .metrics{grid-template-columns:1fr!important}
  .metrics article{min-height:104px}
  .grid{grid-template-columns:1fr}
  .team-hub-head{align-items:flex-start}
  .content table thead th{font-size:.7rem!important}
}
@media(max-width:600px){
  .auth-brand{min-height:300px}
  .auth-brand-copy h2{font-size:2.8rem}
  .auth-card{padding:28px 21px}
  .auth-card h1{font-size:2.55rem}
  .content input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
  .content select,.content textarea{font-size:16px!important}
  .content .form.panel,.content form.panel{padding:20px!important}
  .team-hub-grid{grid-template-columns:1fr}
  .team-access-grid a{padding:14px}
  .mobile-mental-banner{font-size:.64rem;letter-spacing:.04em}
  .portal-inbox .topin{align-items:flex-start;flex-wrap:wrap}
  .portal-inbox .top-actions{width:100%;margin-left:0}
  .portal-inbox .top-actions a{flex:1;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}


/* Compact Users screen — v2 */
.user-create-form{
  max-width:none!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
  padding:24px!important;
  border-top:4px solid var(--red)!important;
}
.user-create-form>h2{
  grid-column:1/-1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0 0 4px!important;
  font-size:1.45rem!important;
  line-height:1.18!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
}
.user-create-form>h2 .super-admin-note{
  flex:0 0 auto;
  margin:0!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#fff1f3!important;
  color:var(--red)!important;
  font-size:.67rem!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.user-create-form>label{
  grid-column:span 2!important;
  min-width:0!important;
  gap:7px!important;
  color:#454b54!important;
  font-size:.76rem!important;
  line-height:1.2!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
.user-create-form>label[data-initial-team],
.user-create-form>label[data-commissioner-area]{grid-column:span 3!important}
.user-create-form input,
.user-create-form select{
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 14px!important;
  border:1px solid #d7dbe1!important;
  border-radius:10px!important;
  background:#fbfcfd!important;
  color:#17191d!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:normal!important;
}
.user-create-form input:focus,
.user-create-form select:focus{
  border-color:var(--red)!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(226,29,47,.10)!important;
}
.user-create-form>button{
  grid-column:1/-1!important;
  min-height:50px!important;
  margin-top:2px!important;
  border-radius:10px!important;
  font-size:.88rem!important;
  letter-spacing:.025em!important;
  text-transform:none!important;
}
@media(max-width:700px){
  .user-create-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:13px 10px!important;
    padding:17px 16px 16px!important;
    border-radius:14px!important;
  }
  .user-create-form>h2{
    display:grid!important;
    grid-column:1/-1!important;
    justify-content:start!important;
    gap:7px!important;
    margin-bottom:2px!important;
    font-size:1.35rem!important;
  }
  .user-create-form>h2 .super-admin-note{
    justify-self:start!important;
    padding:0!important;
    background:transparent!important;
    font-size:.68rem!important;
  }
  .user-create-form>label{
    grid-column:span 1!important;
    min-width:0!important;
    font-size:.69rem!important;
  }
  .user-create-form>label[data-initial-team],
  .user-create-form>label[data-commissioner-area],
  .user-create-form>label:has([data-user-role]){grid-column:span 1!important}
  .user-create-form input,
  .user-create-form select{
    height:48px!important;
    min-height:48px!important;
    padding:0 12px!important;
  }
  .user-create-form>button{
    grid-column:1/-1!important;
    min-height:48px!important;
    margin-top:1px!important;
  }
}
@media(max-width:340px){
  .user-create-form>label{grid-column:1/-1!important}
}


/* Compact current team permissions list — v1 */
@media(max-width:700px){
  .permission-list{
    padding:16px!important;
  }
  .permission-list>h2{
    margin:0 0 8px!important;
    font-size:1.3rem!important;
  }
  .permission-list>form{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr)) auto!important;
    gap:7px!important;
    align-items:center!important;
    padding:12px 0!important;
    border-top:1px solid #e5e7eb!important;
  }
  .permission-list>form>span{
    grid-column:1/4!important;
    grid-row:1!important;
    min-width:0!important;
    gap:2px!important;
  }
  .permission-list>form>span strong{
    overflow:hidden!important;
    font-size:.88rem!important;
    line-height:1.2!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .permission-list>form>span small{
    overflow:hidden!important;
    font-size:.68rem!important;
    line-height:1.2!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .permission-list>form>label{
    grid-row:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    min-height:38px!important;
    padding:5px 4px!important;
    gap:4px!important;
    border:1px solid #e1e4e8!important;
    border-radius:8px!important;
    background:#f8f9fa!important;
    color:#3f454d!important;
    font-size:.62rem!important;
    font-weight:800!important;
    line-height:1.05!important;
    text-align:center!important;
  }
  .permission-list>form>label:nth-of-type(1){grid-column:1!important}
  .permission-list>form>label:nth-of-type(2){grid-column:2!important}
  .permission-list>form>label:nth-of-type(3){grid-column:3!important}
  .permission-list>form input[type="checkbox"]{
    flex:0 0 auto!important;
    width:15px!important;
    height:15px!important;
    margin:0!important;
    accent-color:var(--red)!important;
  }
  .permission-list>form>button{
    grid-column:4!important;
    grid-row:1/3!important;
    align-self:stretch!important;
    min-width:58px!important;
    min-height:100%!important;
    padding:7px 8px!important;
    border-radius:8px!important;
    font-size:.65rem!important;
  }
}
/* Wide desktop add-user workflow — v3 */
@media(min-width:1280px){
  .user-create-form{
    grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr) minmax(0,1.15fr) minmax(0,1.5fr) minmax(104px,.75fr)!important;
    align-items:end!important;
  }
  .user-create-form>label,
  .user-create-form>label[data-initial-team],
  .user-create-form>label[data-commissioner-area]{
    grid-column:auto!important;
  }
  .user-create-form>button{
    grid-column:auto!important;
    min-width:0!important;
    margin:0!important;
    white-space:nowrap!important;
  }
}
/* Standard desktop add-user workflow — v4 */
@media(min-width:821px) and (max-width:1279px){
  .user-create-form{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:end!important}
  .user-create-form>label{grid-column:auto!important}
  .user-create-form>label[data-initial-team],
  .user-create-form>label[data-commissioner-area]{grid-column:span 3!important}
  .user-create-form>button{grid-column:span 1!important;min-width:0!important;margin:0!important;white-space:nowrap!important}
}


/* Mobile player uniform cards: visible field labels and clear player separation. */
@media (max-width:700px){
  body .content .uniform-bulk-form .uniform-table-wrap:has(.uniform-table:not(.coach-uniform-table)){
    overflow:visible!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table){
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border-collapse:separate!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) thead{
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) thead{
    display:none!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) tbody{
    display:grid!important;
    gap:18px!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) tr[data-uniform-row]{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(90px,.42fr)!important;
    gap:13px 11px!important;
    margin:0!important;
    padding:17px!important;
    border:1px solid #d9dee4!important;
    border-left:5px solid #ed1c24!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 7px 20px rgba(15,18,23,.07)!important;
    overflow:hidden!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) tr[data-uniform-row].uniform-incomplete{
    border-left-color:#d97706!important;
    background:#fffdfa!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td{
    display:block!important;
    min-width:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(3),
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(7){
    grid-column:1/-1!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(4),
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(5),
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(6){
    grid-column:span 1!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(4){
    grid-column:1/-1!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td::before{
    display:block!important;
    margin:0 0 6px!important;
    color:#5f6873!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1.2!important;
    letter-spacing:.07em!important;
    text-transform:uppercase!important;
  }
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(1)::before{content:"Player name"}
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(2)::before{content:"Jersey number"}
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(3)::before{content:"Jersey colors"}
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(4)::before{content:"Jersey size"}
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(5)::before{content:"Hat size"}
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(6)::before{content:"Helmet size"}
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) td:nth-child(7)::before{content:"Uniform status"}
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) input:not([type=checkbox]),
  body .content .uniform-bulk-form .uniform-table:not(.coach-uniform-table) select{
    width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    box-sizing:border-box!important;
    font-size:16px!important;
  }
  body .content .uniform-bulk-form .uniform-color-picks.compact{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    min-width:0!important;
    width:100%!important;
    gap:7px!important;
  }
  body .content .uniform-bulk-form .uniform-color-picks.compact label{
    min-width:0!important;
    min-height:64px!important;
    padding:7px 4px!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:3px!important;
    font-size:12px!important;
  }
  body .content .uniform-bulk-form .uniform-status{
    min-width:0!important;
    width:100%!important;
    padding:9px 11px!important;
    border-radius:8px!important;
    background:#e8f5ef!important;
    color:#16724c!important;
    font-size:13px!important;
  }
  body .content .uniform-bulk-form .uniform-status.warning{
    background:#fff1dc!important;
    color:#a95508!important;
  }
}
