/* Sports Analytics AI — Bulk 6 responsive/product layer */
:root{--app-sticky-offset:86px;--mobile-bottom-nav-height:0px}
.app-header{position:sticky;top:0;z-index:100;background:rgba(4,11,20,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(95,169,225,.09)}
.header-top{padding-top:max(10px,env(safe-area-inset-top))}
.desktop-navigation{width:min(1500px,calc(100% - 40px));margin:0 auto;padding:0 0 13px;display:flex;align-items:center;gap:8px;position:relative}
.desktop-nav-link,.nav-menu>summary{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 13px;border:1px solid rgba(102,160,211,.11);border-radius:11px;background:linear-gradient(145deg,rgba(11,31,55,.72),rgba(6,20,40,.9));color:#8da5bf;font-family:var(--font-display);font-size:9px;font-weight:800;letter-spacing:.025em;text-transform:uppercase;text-decoration:none;cursor:pointer;white-space:nowrap;transition:.16s ease}
.desktop-nav-link:hover,.nav-menu>summary:hover,.desktop-nav-link.active,.nav-menu[data-active="true"]>summary{color:#fff;border-color:rgba(86,202,255,.48);background:linear-gradient(145deg,rgba(20,115,194,.34),rgba(8,43,88,.94));box-shadow:0 0 18px rgba(31,174,255,.08)}
.nav-menu{position:relative}.nav-menu>summary{list-style:none}.nav-menu>summary::-webkit-details-marker{display:none}.nav-menu>summary span{font-size:12px}.nav-menu-panel{position:absolute;left:0;top:calc(100% + 8px);z-index:140;width:270px;padding:8px;display:grid;gap:4px;border:1px solid rgba(93,174,237,.2);border-radius:15px;background:rgba(5,17,31,.98);box-shadow:0 24px 70px rgba(0,0,0,.5)}.nav-menu-panel-right{left:auto;right:0}.nav-menu-panel a{display:flex;align-items:center;gap:11px;padding:10px;border-radius:10px;color:#adc0d4;text-decoration:none}.nav-menu-panel a:hover,.nav-menu-panel a.active{background:rgba(31,174,255,.11);color:#fff}.nav-menu-panel b{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:rgba(31,174,255,.08);color:#66d3ff}.nav-menu-panel span{display:grid}.nav-menu-panel strong{font-size:12px}.nav-menu-panel small{margin-top:2px;color:#718aa3;font-size:10px;font-weight:600}.mobile-menu-button,.mobile-bottom-nav,.mobile-drawer,.mobile-drawer-backdrop{display:none}
.install-app-button{color:#72dfff}
.verification-banner{margin:0 0 18px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(250,204,21,.22);border-radius:12px;background:rgba(112,77,5,.16);color:#f3d982;font-size:12px}.verification-banner form{margin:0}.verification-banner button{border:1px solid rgba(250,204,21,.28);border-radius:9px;background:rgba(250,204,21,.1);color:#ffe794;padding:8px 10px;font-weight:800;cursor:pointer}
/* Wide tables use native horizontal scrolling; sticky identifying columns remain. */
.rankings-table th:first-child,.rankings-table td:first-child,.weekly-table th:first-child,.weekly-table td:first-child{position:sticky;left:0;z-index:3;background:#061221}.rankings-table th:nth-child(2),.rankings-table td:nth-child(2){position:sticky;left:64px;z-index:3;background:#061221}.rankings-table th:first-child,.rankings-table th:nth-child(2),.weekly-table th:first-child{z-index:6}
/* Generic responsive safety net for legacy pages. */
.app-main{min-width:0}.panel,.card,.panel-card,.rankings-card,.weekly-table-card,.account-card,.context-card{max-width:100%}.gm-grid-two,.account-grid{min-width:0}.data-table,.profile-table,.season-table,.sim-table,.team-table,.draft-table{max-width:none}
input,select,textarea,button{max-width:100%}
@media(max-width:1180px){.desktop-nav-link,.nav-menu>summary{padding-inline:10px}.desktop-navigation{gap:6px}.system-status{display:none}}
@media(max-width:900px){
  :root{--app-sticky-offset:72px;--mobile-bottom-nav-height:72px}
  body{padding-bottom:calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom));overflow-x:hidden}
  .desktop-navigation{display:none}.mobile-menu-button{display:grid}.settings-button{display:none}.header-top,.app-main,.app-footer{width:calc(100% - 24px)!important}.header-league-form{max-width:180px}.header-league-select{max-width:180px}.brand-description{display:none}.app-main{padding-top:24px!important;padding-bottom:45px!important}
  .mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:150;height:calc(64px + env(safe-area-inset-bottom));padding:5px 8px max(5px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);gap:4px;border-top:1px solid rgba(90,164,221,.18);background:rgba(4,12,22,.96);backdrop-filter:blur(20px)}.mobile-bottom-nav a,.mobile-bottom-nav button{display:grid;place-items:center;align-content:center;gap:1px;border:0;border-radius:10px;background:transparent;color:#839bb3;text-decoration:none;cursor:pointer}.mobile-bottom-nav span{font-size:19px;color:#61d0ff}.mobile-bottom-nav small{font-size:9px;font-weight:800}.mobile-bottom-nav .active{background:rgba(31,174,255,.11);color:#fff}
  .mobile-drawer-backdrop{position:fixed;inset:0;z-index:170;background:rgba(0,0,0,.58);backdrop-filter:blur(3px)}.mobile-drawer-backdrop:not([hidden]){display:block}.mobile-drawer{position:fixed;top:0;right:0;bottom:0;z-index:180;width:min(88vw,360px);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .2s ease;background:#06111f;border-left:1px solid rgba(95,170,225,.18);box-shadow:-20px 0 60px rgba(0,0,0,.45);padding-top:env(safe-area-inset-top)}.mobile-drawer.open{transform:translateX(0)}.mobile-drawer-header{min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid rgba(95,170,225,.12);font-family:var(--font-display);font-size:12px}.mobile-drawer-header button{width:38px;height:38px;border:1px solid rgba(95,170,225,.15);border-radius:10px;background:#0a1d34;color:#fff;font-size:22px}.mobile-drawer-links{padding:10px;overflow-y:auto}.mobile-drawer-links a{display:flex;align-items:center;min-height:43px;padding:0 12px;border-radius:10px;color:#bed0e1;text-decoration:none;font-size:13px;font-weight:750}.mobile-drawer-links a:hover{background:rgba(31,174,255,.1);color:#fff}.mobile-drawer-label{margin:13px 10px 5px;color:#55718d;font-family:var(--font-display);font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
  .gm-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gm-grid-two{grid-template-columns:1fr!important}.rankings-controls{grid-template-columns:1fr 1fr!important}.page-title,.rankings-title{font-size:clamp(24px,8vw,36px)!important}
}
@media(max-width:620px){
  .header-top{min-height:66px}.brand-logo{width:40px!important;height:40px!important}.brand-name{font-size:13px!important}.header-account-button{display:none}.header-league-form{max-width:145px}.header-league-select{max-width:145px;font-size:10px}.header-league-empty{font-size:10px}.app-main{width:calc(100% - 18px)!important}.app-footer{display:none}
  .page-header,.rankings-card-header{align-items:flex-start!important;flex-direction:column!important}.page-description{font-size:13px!important}.panel,.card,.account-card,.rankings-hero,.rankings-card,.gm-metric,.panel-card{border-radius:15px!important}.panel{padding:15px!important}.gm-metric-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}.gm-metric,.panel-card{padding:14px!important}.gm-metric strong{font-size:21px!important}.gm-form-grid,.account-grid{grid-template-columns:1fr!important}.rankings-controls{grid-template-columns:1fr!important;padding:12px!important}.rankings-input,.rankings-button{grid-column:auto!important}.rankings-presets{padding:0 12px 12px!important}.verification-banner{align-items:flex-start;flex-direction:column}
.rankings-table-wrap,.weekly-table-scroll,.profile-table-wrap,.season-table-wrap,.sim-table-wrap,.team-table-scroll,.table-scroll,.draft-board-scroll,.draft-table-scroll{max-width:100vw}
}
@media(display-mode:standalone){.install-app-button{display:none!important}.app-header{padding-top:env(safe-area-inset-top)}}

/* Mobile/PWA production polish */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:#050b14}
body{-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}
button,a,select,input,textarea{touch-action:manipulation}
.app-loading-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(3,9,17,.58);backdrop-filter:blur(7px);opacity:0;visibility:hidden;transition:opacity .16s ease,visibility .16s ease}.app-loading-screen.visible{opacity:1;visibility:visible}.app-loading-card{min-width:min(330px,82vw);display:flex;align-items:center;gap:13px;padding:15px 17px;border:1px solid rgba(86,202,255,.22);border-radius:16px;background:rgba(5,18,33,.97);box-shadow:0 18px 70px rgba(0,0,0,.42)}.app-loading-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:rgba(31,174,255,.1);font-size:21px}.app-loading-card div:nth-child(2){display:grid;gap:3px;min-width:0;flex:1}.app-loading-card strong{font-family:var(--font-display);font-size:11px}.app-loading-card small{color:#829ab2;font-size:11px}.app-loading-spinner{width:20px;height:20px;border:2px solid rgba(92,198,244,.18);border-top-color:#5ed3ff;border-radius:50%;animation:sai-spin .7s linear infinite}@keyframes sai-spin{to{transform:rotate(360deg)}}
.app-toast{position:fixed;z-index:950;left:50%;bottom:22px;transform:translateX(-50%);max-width:min(440px,calc(100vw - 28px));display:flex;align-items:center;gap:12px;padding:11px 13px;border:1px solid rgba(91,195,239,.24);border-radius:13px;background:#091a2c;color:#dceeff;box-shadow:0 16px 50px rgba(0,0,0,.4);font-size:12px;font-weight:700}.app-toast[hidden]{display:none}.app-toast button{margin-left:auto;border:1px solid rgba(91,195,239,.3);border-radius:8px;background:#0e3453;color:#fff;padding:7px 10px;font-weight:800}.app-network-toast.offline{border-color:rgba(250,204,21,.28);color:#ffe58d}
.install-help{position:fixed;inset:0;z-index:1100;display:grid;place-items:end center;padding:20px 16px calc(20px + env(safe-area-inset-bottom));background:rgba(0,0,0,.55);backdrop-filter:blur(5px)}.install-help[hidden]{display:none}.install-help-card{position:relative;width:min(460px,100%);padding:21px;border:1px solid rgba(92,198,244,.2);border-radius:20px;background:#071625;box-shadow:0 24px 80px rgba(0,0,0,.5)}.install-help-card strong{font-family:var(--font-display);font-size:14px}.install-help-card p{margin:10px 30px 0 0;color:#9cb2c6;line-height:1.55;font-size:13px}.install-help-close{position:absolute;right:12px;top:11px;width:34px;height:34px;border:0;border-radius:9px;background:#0b2238;color:#fff;font-size:20px}
@media(max-width:900px){.app-toast{bottom:calc(76px + env(safe-area-inset-bottom))}.app-header{padding-top:0}.mobile-drawer-links{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.mobile-bottom-nav a,.mobile-bottom-nav button{min-height:50px}}
@media(display-mode:standalone){body{min-height:100dvh}.app-header{padding-top:0}.header-top{padding-top:max(10px,env(safe-area-inset-top))}.app-main{min-height:calc(100dvh - 150px)}}
@media(prefers-reduced-motion:reduce){.app-loading-spinner{animation-duration:1.4s}.app-loading-screen,.mobile-drawer{transition:none!important}}
