/* DYNAPRO Performance UI System — material finish, without layout changes. */
:root{--dp-bg:#020812;--dp-bg-2:#03101e;--dp-bg-3:#05192b;--dp-surface:rgba(5,19,34,.92);--dp-surface-light:rgba(10,35,58,.88);--dp-surface-hover:rgba(10,46,76,.88);--dp-blue:#087cff;--dp-blue-bright:#169cff;--dp-cyan:#26d5ff;--dp-cyan-light:#8cecff;--dp-white:#fff;--dp-text:#eaf6ff;--dp-text-secondary:#9bb4c9;--dp-muted:#658097;--dp-border:rgba(82,174,255,.17);--dp-border-hover:rgba(56,202,255,.46);--dp-border-focus:rgba(67,213,255,.75);--dp-gradient-primary:linear-gradient(135deg,#37d8ff 0%,#118cff 35%,#075bd9 70%,#063795 100%);--dp-gradient-metal:linear-gradient(180deg,#fff 0%,#d9f3ff 38%,#8fbfe8 76%,#fff 100%);--dp-gradient-surface:linear-gradient(145deg,rgba(10,38,62,.94),rgba(4,20,36,.96) 48%,rgba(2,13,25,.98));--dp-shadow:0 18px 45px rgba(0,0,0,.28);--dp-shadow-hover:0 22px 55px rgba(0,0,0,.34);--dp-radius-sm:10px;--dp-radius:14px;--dp-radius-lg:20px;--dp-transition:220ms cubic-bezier(.2,.8,.2,1)}
html{background:var(--dp-bg)}
body{color:var(--dp-text);background-color:var(--dp-bg)!important;background-image:linear-gradient(rgba(2,8,18,.28),rgba(2,8,18,.4)),url('/public/dynapro-background.png?v=20260903-4')!important;background-position:center top!important;background-repeat:no-repeat!important;background-size:cover!important;background-attachment:scroll!important;min-height:100vh}
/* Cursor-reactive cards: restrained incident light over layered navy. */
.dp-card{--mouse-x:50%;--mouse-y:50%;border-color:var(--dp-border)!important;background-color:var(--dp-surface)!important;background-image:radial-gradient(420px circle at var(--mouse-x) var(--mouse-y),rgba(38,213,255,.075),rgba(8,124,255,.025) 38%,transparent 68%),var(--dp-gradient-surface)!important;box-shadow:inset 0 1px 0 rgba(177,230,255,.07),inset 0 -1px 0 rgba(0,0,0,.24),var(--dp-shadow)!important;transition:border-color var(--dp-transition),box-shadow var(--dp-transition),transform var(--dp-transition),background-color var(--dp-transition)!important}
.dp-card.dp-interactive:hover{border-color:var(--dp-border-hover)!important;box-shadow:inset 0 1px 0 rgba(211,243,255,.11),var(--dp-shadow-hover),0 0 24px rgba(0,145,255,.065)!important;transform:translateY(-1px)}
/* Multidimensional controls with a bright upper highlight and darker lower edge. */
:where(.dp-btn,.primary,.primary-button,.submit-button,.action-primary,.save-button,.well-submit,.login-submit,button[type="submit"]){position:relative;overflow:hidden;isolation:isolate;border-color:rgba(110,225,255,.52)!important;color:#fff!important;background-color:#0875ed!important;background-image:radial-gradient(circle at 22% 0%,rgba(255,255,255,.28),transparent 34%),linear-gradient(135deg,#30d3ff 0%,#1597ff 28%,#0875ed 58%,#0644a7 100%)!important;box-shadow:0 7px 20px rgba(0,113,255,.2),0 0 13px rgba(21,177,255,.1),inset 0 1px 0 rgba(255,255,255,.38),inset 0 -1px 0 rgba(0,43,110,.7)!important;text-shadow:0 1px 6px rgba(0,40,100,.55);transition:transform var(--dp-transition),box-shadow var(--dp-transition),filter var(--dp-transition),border-color var(--dp-transition)!important}
:where(.dp-btn,.primary,.primary-button,.submit-button,.action-primary,.save-button,.well-submit,.login-submit,button[type="submit"]):not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.08);border-color:#8cecff!important;box-shadow:0 10px 30px rgba(0,128,255,.28),0 0 20px rgba(38,213,255,.17),inset 0 1px 0 rgba(255,255,255,.46)!important}
:where(.dp-btn,.primary,.primary-button,.submit-button,.action-primary,.save-button,.well-submit,.login-submit,button[type="submit"]):active{transform:translateY(0) scale(.985)}
:where(.secondary,.secondary-button,.ghost,.ghost-button,.icon-button,.logout-button,.text-button,.btn-secondary){border-color:rgba(72,179,255,.22)!important;color:#d9f3ff;background-color:rgba(4,19,34,.86)!important;background-image:linear-gradient(145deg,rgba(10,38,62,.78),rgba(4,19,34,.9))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.15)!important;transition:border-color var(--dp-transition),background var(--dp-transition),box-shadow var(--dp-transition),color var(--dp-transition)!important}
:where(.secondary,.secondary-button,.ghost,.ghost-button,.icon-button,.logout-button,.text-button,.btn-secondary):not(:disabled):hover{color:#fff;border-color:rgba(61,211,255,.52)!important;background-image:linear-gradient(145deg,rgba(12,55,88,.88),rgba(5,27,46,.92))!important;box-shadow:0 0 16px rgba(0,156,255,.09),inset 0 1px 0 rgba(255,255,255,.06)!important}
button:disabled{opacity:.46!important;filter:saturate(.45)!important;cursor:not-allowed!important;box-shadow:none!important}
/* Blue-black glass inputs with a precise cyan focus edge. */
:where(.dp-input,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="time"],input[type="url"],textarea,select){color:var(--dp-text)!important;background-color:rgba(5,24,41,.94)!important;background-image:linear-gradient(145deg,rgba(11,36,57,.9),rgba(5,24,41,.94))!important;border-color:rgba(87,170,225,.2)!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.025),inset 0 -1px 4px rgba(0,0,0,.15)!important;transition:border-color var(--dp-transition),box-shadow var(--dp-transition),background var(--dp-transition)!important}
:where(input,textarea,select):hover{border-color:rgba(84,193,255,.3)!important}
:where(input,textarea,select):focus{outline:0!important;border-color:var(--dp-border-focus)!important;background-image:linear-gradient(145deg,rgba(10,43,70,.94),rgba(5,26,45,.98))!important;box-shadow:0 0 0 3px rgba(32,189,255,.08),0 0 18px rgba(0,153,255,.095),inset 0 0 12px rgba(11,108,181,.04)!important}
::placeholder{color:rgba(161,191,214,.52)!important}
/* Integrated sidebar and controlled cyan incident edge. */
:where(.dp-sidebar,.sidebar,.admin-sidebar,.platform-sidebar){background-color:#020d18!important;background-image:radial-gradient(circle at 50% 0%,rgba(0,131,255,.095),transparent 27%),linear-gradient(180deg,#020d18,#031423 48%,#020a12)!important;border-right-color:rgba(55,165,240,.14)!important;box-shadow:12px 0 40px rgba(0,0,0,.16),1px 0 0 rgba(29,179,255,.18),4px 0 18px rgba(35,190,255,.045)!important}
:where(.sidebar a,.sidebar .nav-item,.admin-sidebar a,.platform-sidebar a,.nav-link,.menu-item){position:relative;border-color:transparent;transition:transform var(--dp-transition),color var(--dp-transition),background var(--dp-transition),border-color var(--dp-transition),box-shadow var(--dp-transition)!important}
:where(.sidebar a,.sidebar .nav-item,.admin-sidebar a,.platform-sidebar a,.nav-link,.menu-item):hover{color:#fff!important;background-image:linear-gradient(90deg,rgba(0,154,255,.12),rgba(0,105,255,.035))!important;border-color:rgba(53,183,255,.14)!important}
:where(.sidebar a.active,.sidebar .nav-item.active,.admin-sidebar a.active,.platform-sidebar a.active,.nav-link.active,.menu-item.active,[aria-current="page"]){color:#fff!important;border-color:rgba(58,207,255,.34)!important;background-color:rgba(4,82,210,.15)!important;background-image:radial-gradient(circle at 15% 50%,rgba(55,221,255,.16),transparent 42%),linear-gradient(90deg,rgba(4,158,255,.26),rgba(4,82,210,.15))!important;box-shadow:0 0 18px rgba(0,143,255,.11),inset 0 1px 0 rgba(255,255,255,.05),inset 2px 0 0 #46dcff!important}
/* White-blue metal typography and translucent icon wells. */
:where(h1,.page-title,.hero-title,.dp-metal-title){color:#eaf6ff;background-image:var(--dp-gradient-metal);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none}
:where(.eyebrow,.section-label,.kicker,.overline){color:#65dcff!important;text-shadow:0 0 13px rgba(46,199,255,.18)}
:where(.dp-icon,.stat-icon,.metric-icon,.nav-icon,.kpi-icon){background-image:linear-gradient(145deg,rgba(15,129,255,.16),rgba(8,55,105,.1))!important;border-color:rgba(71,202,255,.16)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 0 14px rgba(0,145,255,.055)!important}
:where(.badge,.pill,.chip,.status-badge){border-color:rgba(67,190,255,.18)!important;background-color:rgba(10,73,117,.16)!important;background-image:linear-gradient(145deg,rgba(16,65,107,.42),rgba(7,34,59,.55))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
:where(table,thead,tr,td,th){border-color:rgba(75,160,220,.12)}
:where(tbody tr,.dp-row){transition:background var(--dp-transition),box-shadow var(--dp-transition)}
:where(tbody tr,.dp-row):hover{background-color:rgba(5,29,50,.91)!important;background-image:linear-gradient(90deg,rgba(10,50,81,.72),rgba(5,29,50,.76))!important;box-shadow:inset 2px 0 0 rgba(40,204,255,.5)}
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid rgba(83,218,255,.9)!important;outline-offset:3px!important}
*{scrollbar-width:thin;scrollbar-color:#14517b #020a12}*::-webkit-scrollbar{width:7px;height:7px}*::-webkit-scrollbar-track{background:#020a12}*::-webkit-scrollbar-thumb{border-radius:10px;background:linear-gradient(#164769,#0c3150)}*::-webkit-scrollbar-thumb:hover{background:linear-gradient(#1978b0,#11527e)}
body.light :where(.dp-card,.card,.panel){color:#09233a;border-color:rgba(16,112,190,.17)!important;background-color:#f5fbff!important;background-image:radial-gradient(420px circle at var(--mouse-x,50%) var(--mouse-y,50%),rgba(38,170,255,.09),transparent 65%),linear-gradient(145deg,#fff,#edf7ff)!important;box-shadow:0 16px 38px rgba(12,70,123,.1)!important}
body.light :where(input,select,textarea){color:#09233a!important;background-color:#fff!important;background-image:linear-gradient(145deg,#fff,#eff7fd)!important}

/* High-specificity bridge for legacy form and navigation skins. */
body :is(input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="time"],input[type="url"],input[type="search"],input[type="tel"],input[type="datetime-local"],textarea,select){color:var(--dp-text)!important;background-color:rgba(5,24,41,.94)!important;background-image:linear-gradient(145deg,rgba(11,36,57,.94),rgba(5,24,41,.98))!important;border:1px solid rgba(87,170,225,.24)!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.035),inset 0 -1px 5px rgba(0,0,0,.2)!important}
body :is(input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],input[type="time"],input[type="url"],input[type="search"],input[type="tel"],input[type="datetime-local"],textarea,select):focus{border-color:var(--dp-border-focus)!important;box-shadow:0 0 0 3px rgba(32,189,255,.09),0 0 18px rgba(0,153,255,.11),inset 0 1px 0 rgba(255,255,255,.04)!important}
body .sidebar,body #sidebar{background-color:#020d18!important;background-image:radial-gradient(circle at 50% 0%,rgba(0,131,255,.1),transparent 27%),linear-gradient(180deg,#020d18 0%,#031423 48%,#020a12 100%)!important;border-right:1px solid rgba(55,165,240,.2)!important;box-shadow:12px 0 40px rgba(0,0,0,.24),1px 0 0 rgba(38,213,255,.28),6px 0 24px rgba(35,190,255,.08)!important}
body .sidebar .nav-item,body #sidebar nav button{color:var(--dp-text-secondary)!important;border:1px solid transparent!important;background-color:transparent!important;background-image:none!important;box-shadow:none!important}
body .sidebar .nav-item:hover,body #sidebar nav button:hover{color:#fff!important;border-color:rgba(53,183,255,.16)!important;background-image:linear-gradient(90deg,rgba(0,154,255,.13),rgba(0,105,255,.04))!important}
body .sidebar .nav-item.active,body #sidebar nav button.active{color:#fff!important;border-color:rgba(73,218,255,.58)!important;background-color:rgba(4,82,210,.2)!important;background-image:radial-gradient(circle at 15% 50%,rgba(91,229,255,.23),transparent 45%),linear-gradient(90deg,rgba(4,158,255,.34),rgba(4,82,210,.17))!important;box-shadow:0 0 10px rgba(38,213,255,.2),0 0 24px rgba(0,126,255,.15),inset 0 1px 0 rgba(255,255,255,.09),inset 3px 0 0 #5ce3ff!important}
body .sidebar .nav-icon,body #sidebar nav i{color:#91abc2!important;background-color:transparent!important;background-image:none!important;border-color:transparent!important;box-shadow:none!important}
body .sidebar .nav-icon svg{stroke:currentColor!important;color:inherit!important}
body .sidebar .nav-item.active .nav-icon,body #sidebar nav button.active i{color:#8cecff!important;background-color:transparent!important;background-image:none!important;border-color:transparent!important;box-shadow:0 0 9px rgba(38,213,255,.2)!important}
body.light :is(input,textarea,select){color:#09233a!important;background-color:#fff!important;background-image:linear-gradient(145deg,#fff,#eff7fd)!important}
/* The search field is one continuous navy-glass control, not a nested blue input. */
body .dv-search{background-color:rgba(4,19,34,.92)!important;background-image:linear-gradient(145deg,rgba(10,38,62,.78),rgba(4,19,34,.94))!important;border-color:rgba(72,179,255,.25)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 7px 18px rgba(0,7,20,.14)!important}
body .dv-search input[type="search"]{background:transparent!important;border:0!important;box-shadow:none!important;color:var(--dp-text)!important}
body .dv-search:focus-within{border-color:var(--dp-border-focus)!important;box-shadow:0 0 0 3px rgba(32,189,255,.08),0 0 18px rgba(0,153,255,.1)!important}
/* Logout always remains in the non-scrolling footer of the Admin drawer. */
body .sidebar .sidebar-footer{display:grid!important;grid-template-columns:minmax(0,1fr)!important;flex:0 0 auto!important;width:100%!important;margin:0!important;padding:9px 3px 0!important;border-top:1px solid rgba(72,160,255,.14)!important;background-color:#020a12!important;position:relative!important;z-index:3!important}
body .sidebar .sidebar-footer .logout{display:flex!important;width:100%!important;min-width:0!important;justify-content:center!important;visibility:visible!important;opacity:1!important}
/* Athlete mobile: no dark top strip; the club crest floats over the page light. */
@media(max-width:760px){body:not(:has(#adminSidebar)) .topbar{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body:not(:has(#adminSidebar)) .club-crest-glow::before{inset:2px;background:rgba(41,181,255,.28);filter:blur(13px);box-shadow:0 0 20px rgba(54,202,255,.52),0 0 38px rgba(14,123,255,.3)}body:not(:has(#adminSidebar)) .club-crest-glow .brand-logo{filter:drop-shadow(0 0 8px rgba(129,229,255,.8)) drop-shadow(0 0 18px rgba(25,139,255,.55))}}
/* Admin desktop: the grid already reserves the sidebar; never reserve it twice. */
@media(min-width:1101px){body:has(#adminSidebar){grid-template-columns:240px minmax(0,1fr)!important}body:has(#adminSidebar)>main{margin-left:0!important;min-width:0!important}}
@media(hover:none),(pointer:coarse){.dp-card{background-image:var(--dp-gradient-surface)!important}.dp-card.dp-interactive:hover{transform:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
