@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  color-scheme:light;
  --hub-bg:#eef1f0;
  --hub-bg-2:#e7ebea;
  --hub-surface:#ffffff;
  --hub-surface-2:#f7f9f8;
  --hub-surface-3:#edf4f3;
  --hub-ink:#151a1b;
  --hub-ink-2:#293031;
  --hub-muted:#697473;
  --hub-muted-2:#8b9493;
  --hub-line:#d8dfdd;
  --hub-line-strong:#c7d0ce;
  --hub-nav:#202627;
  --hub-nav-2:#171c1d;
  --hub-nav-line:#343b3c;
  --hub-aqua:#54d9d3;
  --hub-aqua-strong:#2fc5bf;
  --hub-aqua-soft:#dcf8f6;
  --hub-aqua-ink:#0b5552;
  --hub-green:#2ba86f;
  --hub-green-soft:#def5e9;
  --hub-red:#d75656;
  --hub-red-soft:#fbe5e5;
  --hub-amber:#e7a338;
  --hub-amber-soft:#fff1d8;
  --hub-blue:#4b80e8;
  --hub-blue-soft:#e6eefc;
  --hub-shadow:0 1px 2px rgba(20,27,27,.05),0 10px 28px rgba(20,27,27,.055);
  --hub-shadow-lg:0 22px 60px rgba(12,18,18,.16);
  --hub-radius-xs:8px;
  --hub-radius-sm:12px;
  --hub-radius:16px;
  --hub-radius-lg:22px;
  --hub-shell:1220px;
  --hub-header-h:68px;
}

html[data-theme="dark"]{
  color-scheme:dark;
  --hub-bg:#111617;
  --hub-bg-2:#0d1112;
  --hub-surface:#1a2021;
  --hub-surface-2:#202728;
  --hub-surface-3:#1d2929;
  --hub-ink:#f7f9f8;
  --hub-ink-2:#d8dfde;
  --hub-muted:#9ca8a6;
  --hub-muted-2:#7b8584;
  --hub-line:#303839;
  --hub-line-strong:#3b4545;
  --hub-nav:#0d1112;
  --hub-nav-2:#090c0d;
  --hub-nav-line:#2a3132;
  --hub-aqua-soft:#163d3b;
  --hub-aqua-ink:#a8efeb;
  --hub-green-soft:#17372a;
  --hub-red-soft:#402123;
  --hub-amber-soft:#41321a;
  --hub-blue-soft:#1e2d4b;
  --hub-shadow:0 1px 2px rgba(0,0,0,.2),0 12px 30px rgba(0,0,0,.18);
  --hub-shadow-lg:0 26px 70px rgba(0,0,0,.42);
}

*{box-sizing:border-box}
html{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--hub-bg);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
body{margin:0;background:var(--hub-bg);color:var(--hub-ink);font-family:inherit;font-size:15px;line-height:1.45;min-height:100vh;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
svg{display:block;flex:0 0 auto}
[hidden]{display:none!important}

.hub-app{min-height:100vh;background:var(--hub-bg)}
.hub-shell{width:min(var(--hub-shell),calc(100% - 40px));margin:0 auto}
.hub-main{padding:30px 0 82px;min-height:calc(100vh - var(--hub-header-h))}

/* Splash-inspired app chrome */
.hub-header{position:sticky;top:0;z-index:100;background:var(--hub-nav);border-bottom:1px solid var(--hub-nav-line);height:var(--hub-header-h);color:#f6f8f8}
.hub-header-inner{width:min(1320px,calc(100% - 36px));height:100%;margin:0 auto;display:flex;align-items:center;gap:26px}
.hub-brand{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:9px;padding:6px 10px;height:43px;min-width:170px;box-shadow:0 1px 0 rgba(255,255,255,.08)}
.hub-brand img{width:auto;height:30px;max-width:160px;object-fit:contain}
.hub-nav{height:100%;display:flex;align-items:stretch;gap:2px;flex:1;min-width:0}
.hub-nav a{position:relative;display:flex;align-items:center;padding:0 15px;color:#b7c0bf;font-size:14px;font-weight:650;white-space:nowrap;transition:.16s ease}
.hub-nav a:hover{color:#fff;background:rgba(255,255,255,.035)}
.hub-nav a.is-active{color:#fff}
.hub-nav a.is-active:after{content:"";position:absolute;left:15px;right:15px;bottom:-1px;height:3px;background:var(--hub-aqua);border-radius:3px 3px 0 0}
.hub-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.hub-create-btn,.hub-icon-btn,.hub-account-btn{border:1px solid var(--hub-nav-line);background:#252c2d;color:#f7f9f8}
.hub-create-btn{height:40px;border-radius:9px;padding:0 13px;display:flex;align-items:center;gap:7px;font-size:13px;font-weight:750;white-space:nowrap}
.hub-create-btn:hover{border-color:#566060;background:#2a3233}
.hub-icon-btn{width:40px;height:40px;border-radius:9px;display:grid;place-items:center;cursor:pointer;padding:0}
.hub-icon-btn:hover{border-color:#566060;background:#2a3233}
.hub-icon-btn svg{width:18px;height:18px}
.hub-account{position:relative}
.hub-account-btn{height:44px;border-radius:10px;display:flex;align-items:center;gap:9px;padding:4px 9px 4px 5px;cursor:pointer;max-width:230px}
.hub-account-btn:hover{border-color:#566060;background:#2a3233}
.hub-account-btn>svg{width:15px;height:15px;color:#929d9c}
.hub-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(145deg,#687373,#404949);display:grid;place-items:center;overflow:hidden;color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em;flex:0 0 auto;border:1px solid rgba(255,255,255,.16)}
.hub-avatar img{width:100%;height:100%;object-fit:cover}
.hub-account-copy{display:flex;flex-direction:column;min-width:0;text-align:left;line-height:1.17}
.hub-account-copy strong{font-size:12.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:125px}
.hub-account-copy span{font-size:10.5px;color:#9ba6a5;margin-top:3px}
.hub-menu{position:absolute;right:0;top:52px;width:276px;border:1px solid var(--hub-line);border-radius:14px;background:var(--hub-surface);box-shadow:var(--hub-shadow-lg);padding:8px;color:var(--hub-ink);display:none;z-index:220}
.hub-menu.is-open{display:block;animation:hub-menu-in .13s ease-out}
@keyframes hub-menu-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.hub-menu-user{display:flex;align-items:center;gap:10px;padding:10px 9px 12px;margin-bottom:5px;border-bottom:1px solid var(--hub-line)}
.hub-menu-user .hub-avatar{width:40px;height:40px}
.hub-menu-user>div{display:flex;flex-direction:column;min-width:0}
.hub-menu-user strong{font-size:13px}
.hub-menu-user span{font-size:11px;color:var(--hub-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hub-menu>a,.hub-menu-item{width:100%;display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 10px;border:0;border-radius:8px;background:none;color:var(--hub-ink-2);font-size:12.5px;font-weight:600;text-align:left;cursor:pointer}
.hub-menu>a:hover,.hub-menu-item:hover{background:var(--hub-surface-2);color:var(--hub-ink)}
.hub-menu>a svg,.hub-menu-item svg{width:17px;height:17px;color:var(--hub-muted)}
.hub-menu>a.is-danger{color:var(--hub-red)}
.hub-menu>a.is-danger svg{color:currentColor}
.hub-menu-sep{height:1px;background:var(--hub-line);margin:6px 4px}

.hub-mobile-nav{display:none}

/* Page rhythm */
.hub-page-head,.hub-manage-hero,.hub-picks-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}
.hub-page-head>div:first-child,.hub-manage-hero>div:first-child,.hub-picks-hero>div:first-child{min-width:0}
.hub-page-head h1,.hub-manage-hero h1,.hub-picks-hero h1,.hub-contest-hero h1,.auth-title{margin:5px 0 6px;font-size:30px;line-height:1.08;letter-spacing:-.035em;font-weight:800;color:var(--hub-ink)}
.hub-page-head p,.hub-manage-hero p,.hub-picks-hero p,.hub-contest-hero p{margin:0;color:var(--hub-muted);font-size:13.5px;max-width:680px}
.hub-page-kicker{display:flex;align-items:center;gap:7px;color:var(--hub-muted);font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.hub-page-kicker .dot{width:7px;height:7px;border-radius:50%;background:var(--hub-aqua)}
.hub-page-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.hub-section{margin-top:24px}
.hub-section:first-child{margin-top:0}
.hub-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:11px}
.hub-section-head h2{font-size:17px;line-height:1.2;letter-spacing:-.015em;margin:0;color:var(--hub-ink);font-weight:760}
.hub-section-head p{margin:4px 0 0;color:var(--hub-muted);font-size:12.5px}
.hub-text-link{display:inline-flex;align-items:center;gap:5px;color:var(--hub-ink-2);font-size:12px;font-weight:700;white-space:nowrap}
.hub-text-link:hover{color:var(--hub-aqua-strong)}
.hub-text-link svg{width:15px;height:15px}

/* App tabs */
.hub-tabs{display:inline-flex;align-items:center;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:10px;padding:3px;box-shadow:0 1px 1px rgba(17,23,23,.03)}
.hub-tab{border:0;background:transparent;border-radius:7px;min-height:32px;padding:6px 13px;color:var(--hub-muted);font-size:12px;font-weight:700;cursor:pointer}
.hub-tab:hover{color:var(--hub-ink)}
.hub-tab.is-active{background:var(--hub-nav);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.12)}

/* Buttons */
.hub-btn{min-height:40px;border:1px solid var(--hub-line-strong);border-radius:9px;background:var(--hub-surface);color:var(--hub-ink);display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 14px;font-size:12.5px;font-weight:750;cursor:pointer;transition:.15s ease;white-space:nowrap}
.hub-btn:hover{transform:translateY(-1px);border-color:#aeb9b7;box-shadow:0 4px 12px rgba(18,25,25,.07)}
.hub-btn svg{width:16px;height:16px}
.hub-btn-primary,.hub-btn-brand{background:var(--hub-aqua);border-color:var(--hub-aqua);color:#0a2b2a}
.hub-btn-primary:hover,.hub-btn-brand:hover{background:#63e4de;border-color:#63e4de}
.hub-btn-ghost{background:transparent}
.hub-btn-danger{background:var(--hub-red);border-color:var(--hub-red);color:#fff}
.hub-btn-sm{min-height:34px;padding:6px 11px;font-size:11.5px;border-radius:8px}
.hub-btn-block{width:100%}
.hub-create-fab{position:fixed;right:22px;bottom:28px;z-index:90}

/* Shared cards */
.hub-card,.hub-panel{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow)}
.hub-card{padding:18px}
.hub-panel{padding:15px}
.hub-card-heading{font-size:16px;font-weight:750;margin:0 0 5px}
.hub-card-sub{font-size:12.5px;color:var(--hub-muted);margin:0}
.hub-card-icon{width:36px;height:36px;border-radius:10px;background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);display:grid;place-items:center;margin-bottom:12px}
.hub-card-icon svg{width:18px;height:18px}
.hub-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.hub-panel-head h3{font-size:13px;margin:0;font-weight:750}
.hub-panel-head>span{font-size:10.5px;color:var(--hub-muted);background:var(--hub-surface-2);border:1px solid var(--hub-line);border-radius:999px;padding:4px 7px}

/* Needs action */
.hub-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hub-action-card{min-height:78px;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:13px;padding:11px 11px 11px 12px;display:flex;align-items:center;gap:11px;box-shadow:0 1px 2px rgba(18,25,25,.035)}
.hub-action-card.is-urgent{border-left:4px solid var(--hub-aqua);padding-left:9px}
.hub-action-card:hover{border-color:var(--hub-line-strong)}
.hub-action-icon{width:36px;height:36px;border-radius:9px;background:var(--hub-surface-3);display:grid;place-items:center;color:var(--hub-ink-2);flex:0 0 auto}
.hub-action-card.is-urgent .hub-action-icon{background:var(--hub-aqua-soft);color:var(--hub-aqua-ink)}
.hub-action-icon svg{width:18px;height:18px}
.hub-action-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.hub-action-copy strong{font-size:12.5px;font-weight:750;line-height:1.25}
.hub-action-copy span{font-size:11.5px;color:var(--hub-muted);line-height:1.35}
.hub-action-go{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--hub-surface-2);color:var(--hub-muted)}
.hub-action-go svg{width:15px;height:15px}

/* Contest hub cards */
.hub-contest-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;align-items:start}
.hub-contest-list{display:grid;gap:9px}
.hub-contest-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(18,25,25,.04);position:relative;transition:.16s ease}
.hub-contest-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}
.hub-contest-card:hover{border-color:#bec8c6;box-shadow:0 8px 24px rgba(18,25,25,.07);transform:translateY(-1px)}
.hub-contest-card.is-celebrate:before{background:var(--hub-green)}
.hub-contest-card-inner{display:grid;grid-template-columns:48px minmax(0,1fr) minmax(160px,220px) auto;gap:13px;align-items:center;padding:14px 15px;color:inherit}
.hub-sport-mark{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:#1b2223;color:#fff}
.hub-sport-mark svg{width:20px;height:20px}
.hub-sport-mark.is-football{background:#173c35;color:#7ae4c6}
.hub-sport-mark.is-basketball{background:#4a3020;color:#f3b26f}
.hub-sport-mark.is-hockey{background:#1e3444;color:#84c7ef}
.hub-sport-mark.is-nascar{background:#1d2325;color:#f2b64a}
.hub-contest-meta{min-width:0}
.hub-contest-labels{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:3px;color:var(--hub-muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.055em}
.hub-status-dot{display:inline-flex;align-items:center;gap:5px}
.hub-status-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--hub-muted-2)}
.hub-status-dot.is-live:before{background:var(--hub-green);box-shadow:0 0 0 3px var(--hub-green-soft)}
.hub-status-dot.is-upcoming:before{background:var(--hub-blue)}
.hub-status-dot.is-final:before{background:var(--hub-muted-2)}
.hub-contest-title{font-size:14.5px;font-weight:760;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-contest-sub{font-size:11.5px;color:var(--hub-muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-contest-progress{min-width:0}
.hub-contest-progress strong{display:block;font-size:11.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-contest-progress span{display:block;color:var(--hub-muted);font-size:10.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-progress{height:5px;background:var(--hub-bg-2);border-radius:999px;overflow:hidden;margin-top:7px}
.hub-progress>span{height:100%;display:block;background:var(--hub-aqua);border-radius:inherit}
.hub-progress-text{margin-top:4px;color:var(--hub-muted);font-size:9.5px}
.hub-contest-right{display:flex;align-items:center;gap:9px;justify-content:flex-end;text-align:right}
.hub-rank{min-width:54px}
.hub-rank strong{display:block;font-size:15px;font-weight:800;letter-spacing:-.02em}
.hub-rank span{font-size:9.5px;color:var(--hub-muted)}
.hub-rank-change{display:inline-flex;align-items:center;gap:2px;font-size:10px;font-weight:800;margin-top:2px}
.hub-rank-change.is-up{color:var(--hub-green);animation:hub-rank-pop .7s ease-out}
.hub-rank-change.is-down{color:var(--hub-red)}
@keyframes hub-rank-pop{0%{transform:translateY(4px);opacity:.2}55%{transform:translateY(-2px)}100%{transform:none;opacity:1}}

/* Sidebar feeds */
.hub-side-stack{display:grid;gap:12px}
.hub-feed{display:grid}
.hub-feed-item{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;padding:11px 0;border-top:1px solid var(--hub-line)}
.hub-feed-item:first-child{border-top:0;padding-top:2px}
.hub-feed-icon{width:30px;height:30px;border-radius:8px;background:var(--hub-surface-2);display:grid;place-items:center;color:var(--hub-muted)}
.hub-feed-icon svg{width:15px;height:15px}
.hub-feed-copy{min-width:0}
.hub-feed-copy strong{display:block;font-size:11.5px;font-weight:720;line-height:1.3}
.hub-feed-copy p{margin:2px 0 0;color:var(--hub-muted);font-size:10.5px;line-height:1.45}
.hub-feed-copy time{display:block;margin-top:4px;color:var(--hub-muted-2);font-size:9.5px}
.hub-announcement{padding:10px 0;border-top:1px solid var(--hub-line)}
.hub-announcement:first-of-type{border-top:0}
.hub-announcement small{display:block;color:var(--hub-muted);font-size:9.5px;margin-bottom:3px}
.hub-announcement strong{font-size:11.5px;display:block}
.hub-announcement p{font-size:10.5px;color:var(--hub-muted);margin:3px 0 0;line-height:1.45}

/* Discover */
.hub-filter-row,.hub-chip-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.hub-chip{min-height:34px;border-radius:999px;border:1px solid var(--hub-line);background:var(--hub-surface);padding:6px 11px;font-size:11.5px;font-weight:700;color:var(--hub-muted);cursor:pointer;display:inline-flex;align-items:center;gap:5px}
.hub-chip:hover,.hub-chip.is-active{color:var(--hub-ink);border-color:#9ea9a7;background:var(--hub-surface-2)}
.hub-chip.is-active{box-shadow:inset 0 0 0 1px var(--hub-ink)}
.hub-discover-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.hub-discover-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:14px;padding:14px;display:flex;flex-direction:column;min-height:185px;box-shadow:0 1px 2px rgba(18,25,25,.035)}
.hub-discover-card:hover{border-color:#b6c1bf;box-shadow:0 8px 22px rgba(18,25,25,.06)}
.hub-discover-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.hub-discover-card h3{font-size:14px;line-height:1.25;margin:12px 0 4px;font-weight:760}
.hub-discover-card p{font-size:11px;line-height:1.5;color:var(--hub-muted);margin:0;flex:1}
.hub-discover-stat{font-size:10px;color:var(--hub-muted);padding:4px 7px;border-radius:999px;background:var(--hub-surface-2);border:1px solid var(--hub-line)}
.hub-discover-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:13px;padding-top:10px;border-top:1px solid var(--hub-line);font-size:10.5px;color:var(--hub-muted)}

/* Contest destination */
.hub-back-row{margin-bottom:11px}
.hub-back-link{display:inline-flex;align-items:center;gap:6px;color:var(--hub-muted);font-size:11.5px;font-weight:650}
.hub-back-link:hover{color:var(--hub-ink)}
.hub-back-link svg{width:15px;height:15px}
.hub-contest-hero{background:var(--hub-nav);color:#fff;border-radius:18px 18px 0 0;border:1px solid var(--hub-nav-line);padding:22px 22px 0;overflow:hidden;position:relative}
.hub-contest-hero:after{content:"";position:absolute;width:250px;height:250px;right:-100px;top:-120px;border-radius:50%;background:radial-gradient(circle,rgba(84,217,211,.19),rgba(84,217,211,0) 68%);pointer-events:none}
.hub-contest-hero-main{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;position:relative;z-index:1;padding-bottom:20px}
.hub-contest-hero-title{display:flex;align-items:flex-start;gap:13px;min-width:0}
.hub-contest-hero .hub-sport-mark{background:#2b3334;border:1px solid #3a4445}
.hub-contest-hero h1{color:#fff;margin:3px 0 5px;font-size:27px}
.hub-contest-hero p{color:#aeb8b7;font-size:12px}
.hub-contest-hero .hub-page-kicker{color:#8f9a99}
.hub-contest-hero-actions{display:flex;gap:8px;align-items:center;position:relative;z-index:1}
.hub-contest-hero .hub-btn-ghost{color:#fff;border-color:#4a5555;background:#272e2f}
.hub-contest-tabs{display:flex;align-items:center;gap:4px;position:relative;z-index:1;overflow-x:auto;scrollbar-width:none}
.hub-contest-tabs::-webkit-scrollbar{display:none}
.hub-contest-tabs a{position:relative;color:#9ba6a5;font-size:11.5px;font-weight:700;padding:12px 11px 13px;white-space:nowrap}
.hub-contest-tabs a:hover{color:#fff}
.hub-contest-tabs a.is-active{color:#fff}
.hub-contest-tabs a.is-active:after{content:"";position:absolute;left:9px;right:9px;bottom:0;height:3px;background:var(--hub-aqua);border-radius:3px 3px 0 0}
.hub-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;margin-top:14px;align-items:start}
.hub-manage-action{background:var(--hub-surface-2);border:1px solid var(--hub-line);border-radius:11px;padding:11px;display:flex;flex-direction:column;gap:2px}
.hub-manage-action .hub-action-icon{width:30px;height:30px;margin-bottom:5px}
.hub-manage-action strong{font-size:13.5px}
.hub-manage-action span{font-size:10.5px;color:var(--hub-muted)}
.hub-status{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:999px;font-size:9.5px;font-weight:800;background:var(--hub-surface-2);border:1px solid var(--hub-line);color:var(--hub-muted)}
.hub-status.is-live{background:var(--hub-green-soft);border-color:transparent;color:var(--hub-green)}
.hub-status.is-open{background:var(--hub-aqua-soft);border-color:transparent;color:var(--hub-aqua-ink)}
.hub-status.is-final{background:var(--hub-surface-2);color:var(--hub-muted)}

/* Podium / leaders */
.hub-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end;margin-top:13px}
.hub-podium-place{border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:11px;min-height:112px;padding:11px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}
.hub-podium-place.is-first{min-height:128px;background:linear-gradient(180deg,var(--hub-aqua-soft),var(--hub-surface));border-color:#bdebe8}
.hub-podium-avatar,.hub-champion-avatar{width:38px;height:38px;border-radius:50%;background:var(--hub-nav);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;margin-bottom:7px}
.hub-podium-place strong{font-size:11.5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hub-podium-place>span:not(.hub-podium-rank){font-size:10px;color:var(--hub-muted)}
.hub-podium-rank{position:absolute;top:7px;right:7px;font-size:9px;font-weight:800;color:var(--hub-muted)}
.hub-podium-place.is-first .hub-podium-rank{color:var(--hub-aqua-ink)}

/* Lists / standings */
.hub-list{border-top:1px solid var(--hub-line)}
.hub-list-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;border-bottom:1px solid var(--hub-line);padding:8px 2px}
.hub-list-rank{font-size:12px;font-weight:800;color:var(--hub-muted)}
.hub-list-name{min-width:0}
.hub-list-name strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-list-name span{display:block;font-size:10px;color:var(--hub-muted);margin-top:2px}
.hub-list-value{text-align:right}
.hub-list-value strong{display:block;font-size:12px}
.hub-list-value span{display:block;font-size:9.5px;color:var(--hub-muted);margin-top:2px}

/* Picks */
.hub-picks-hero{align-items:flex-end}
.hub-week-strip{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px;margin-bottom:13px;scrollbar-width:none}
.hub-week-strip::-webkit-scrollbar{display:none}
.hub-week{min-width:98px;border:1px solid var(--hub-line);background:var(--hub-surface);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}
.hub-week strong{font-size:10.5px}
.hub-week span{font-size:9px;color:var(--hub-muted)}
.hub-week.is-active{border-color:var(--hub-nav);box-shadow:inset 0 0 0 1px var(--hub-nav)}
.hub-pick-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:14px;align-items:start}
.hub-matchups{display:grid;gap:9px}
.hub-matchup{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:13px;padding:12px;box-shadow:0 1px 2px rgba(18,25,25,.03)}
.hub-matchup-head{display:flex;justify-content:space-between;gap:10px;color:var(--hub-muted);font-size:9.5px;font-weight:650;margin-bottom:8px}
.hub-team-choice{display:grid;grid-template-columns:39px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--hub-line);border-radius:10px;padding:9px 10px;margin-top:6px;cursor:pointer;transition:.12s ease;background:var(--hub-surface)}
.hub-team-choice:hover{border-color:#aeb9b7}
.hub-team-choice.is-selected{border-color:var(--hub-aqua-strong);background:var(--hub-aqua-soft);box-shadow:inset 0 0 0 1px var(--hub-aqua-strong)}
.hub-team-choice.is-disabled{opacity:.55;cursor:default}
.hub-team-logo{width:36px;height:36px;border-radius:8px;background:var(--hub-nav);color:#fff;display:grid;place-items:center;font-size:9px;font-weight:800}
.hub-team-info{display:flex;flex-direction:column;min-width:0}
.hub-team-info strong{font-size:11.5px}
.hub-team-info span{font-size:9.5px;color:var(--hub-muted);margin-top:2px}
.hub-radio{width:18px;height:18px;border:1.5px solid var(--hub-line-strong);border-radius:50%;display:grid;place-items:center;background:var(--hub-surface)}
.hub-team-choice.is-selected .hub-radio{border:5px solid var(--hub-aqua-strong)}
.hub-confidence{margin-top:8px;display:flex;justify-content:flex-end}
.hub-confidence label{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--hub-muted)}
.hub-confidence .hub-input{width:74px}
.hub-sticky-card{position:sticky;top:calc(var(--hub-header-h) + 16px)}
.hub-mini-rule{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--hub-line);padding:9px 0;font-size:10.5px}
.hub-mini-rule span{color:var(--hub-muted)}
.hub-mini-rule strong{text-align:right}
.hub-lock-seal{display:flex;align-items:center;gap:7px;color:var(--hub-muted);font-size:10px;margin-top:10px}
.hub-used-chip{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background:var(--hub-surface-2);color:var(--hub-muted);font-size:9.5px;font-weight:700}

/* Bracket */
.hub-bracket-wrap{overflow-x:auto;padding-bottom:10px}
.hub-bracket{display:flex;gap:24px;min-width:max-content;align-items:stretch}
.hub-bracket-round{width:218px;display:flex;flex-direction:column;justify-content:space-around;gap:13px}
.hub-bracket-round-head{position:sticky;top:0;font-size:11px;font-weight:800;color:var(--hub-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--hub-bg);padding:3px 0 7px;z-index:2}
.hub-bracket-game{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:10px;overflow:hidden;box-shadow:0 1px 1px rgba(18,25,25,.03)}
.hub-bracket-team{display:flex;align-items:center;gap:7px;padding:8px 9px;border-top:1px solid var(--hub-line);font-size:10.5px;cursor:pointer;min-height:38px}
.hub-bracket-team:first-child{border-top:0}
.hub-bracket-team:hover{background:var(--hub-surface-2)}
.hub-bracket-team.is-selected{background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);font-weight:800}
.hub-bracket-seed{width:18px;color:var(--hub-muted);font-size:9px;text-align:center}

/* Football squares */
.hub-squares-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}
.hub-square-grid-wrap{overflow:auto;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:14px;padding:10px}
.hub-square-grid{display:grid;grid-template-columns:42px repeat(10,minmax(54px,1fr));min-width:660px;border-left:1px solid var(--hub-line);border-top:1px solid var(--hub-line)}
.hub-square-cell{min-height:54px;border-right:1px solid var(--hub-line);border-bottom:1px solid var(--hub-line);display:flex;align-items:center;justify-content:center;text-align:center;padding:4px;font-size:9.5px;position:relative;background:var(--hub-surface)}
.hub-square-cell.is-head{background:var(--hub-nav);color:#fff;font-weight:800;font-size:11px}
.hub-square-cell.is-available{cursor:pointer;background:var(--hub-surface)}
.hub-square-cell.is-available:hover{background:var(--hub-aqua-soft)}
.hub-square-cell.is-selected{background:var(--hub-aqua);color:#102a29;font-weight:800}
.hub-square-cell.is-mine{background:var(--hub-green-soft);color:#136441;font-weight:800}
.hub-square-cell.is-taken{background:var(--hub-surface-2);color:var(--hub-muted)}
.hub-square-cell input{position:absolute;opacity:0;pointer-events:none}

/* Commissioner hub */
.hub-manage-hero{align-items:center;background:var(--hub-nav);border-radius:16px;padding:20px 21px;color:#fff;border:1px solid var(--hub-nav-line);margin-bottom:14px}
.hub-manage-hero h1{color:#fff;font-size:25px;margin-top:4px}
.hub-manage-hero p{color:#aab5b4}
.hub-manage-hero .hub-page-kicker{color:#8f9a99}
.hub-manage-hero .hub-btn-ghost{color:#fff;border-color:#4b5656;background:#272f30}
.hub-manage-nav{display:flex;gap:4px;overflow-x:auto;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:11px;padding:4px;margin-bottom:20px;scrollbar-width:none}
.hub-manage-nav::-webkit-scrollbar{display:none}
.hub-manage-nav a{display:flex;align-items:center;gap:6px;min-height:34px;padding:6px 11px;border-radius:8px;color:var(--hub-muted);font-size:11.5px;font-weight:700;white-space:nowrap}
.hub-manage-nav a svg{width:15px;height:15px}
.hub-manage-nav a.is-active{background:var(--hub-nav);color:#fff}
.hub-manage-contest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.hub-manage-contest{display:grid;grid-template-columns:40px minmax(0,1fr) 28px;align-items:center;gap:10px;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:12px;padding:11px;min-height:76px}
.hub-manage-contest:hover{border-color:#b6c1bf}
.hub-manage-contest .hub-sport-mark{width:38px;height:38px;border-radius:9px}
.hub-manage-contest-copy{display:flex;flex-direction:column;min-width:0}
.hub-manage-contest-copy small{font-size:8.5px;color:var(--hub-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.hub-manage-contest-copy strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.hub-manage-contest-copy span{font-size:9.5px;color:var(--hub-muted);margin-top:2px}
.hub-count-pill{min-width:25px;height:25px;border-radius:999px;display:grid;place-items:center;background:var(--hub-nav);color:#fff;font-size:10px;font-weight:800}
.hub-activity-list{display:grid}
.hub-activity-row{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;padding:10px 0;border-top:1px solid var(--hub-line)}
.hub-activity-row:first-child{border-top:0}
.hub-activity-copy{min-width:0}
.hub-activity-meta{display:flex;justify-content:space-between;gap:12px;color:var(--hub-muted);font-size:9px;margin-bottom:2px}
.hub-activity-copy strong{font-size:11px;display:block}
.hub-activity-copy p{font-size:10px;color:var(--hub-muted);margin:2px 0 0}

/* Create contest wizard */
.hub-wizard{display:grid;grid-template-columns:260px minmax(0,1fr);gap:16px;align-items:start}
.hub-wizard-side{position:sticky;top:calc(var(--hub-header-h) + 16px)}
.hub-wizard-steps{display:grid;gap:4px}
.hub-wizard-step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;align-items:center;border-radius:9px;padding:7px 8px;color:var(--hub-muted)}
.hub-wizard-step span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--hub-surface-2);border:1px solid var(--hub-line);font-size:9px;font-weight:800}
.hub-wizard-step strong{font-size:11px}
.hub-wizard-step.is-active{background:var(--hub-aqua-soft);color:var(--hub-aqua-ink)}
.hub-wizard-step.is-active span{background:var(--hub-aqua);border-color:var(--hub-aqua);color:#0b3836}
.hub-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.hub-format-option{border:1px solid var(--hub-line);background:var(--hub-surface);border-radius:12px;padding:13px;cursor:pointer;display:flex;align-items:flex-start;gap:10px;transition:.12s ease}
.hub-format-option:hover,.hub-format-option.is-selected{border-color:var(--hub-aqua-strong);box-shadow:inset 0 0 0 1px var(--hub-aqua-strong)}
.hub-format-option.is-selected{background:var(--hub-aqua-soft)}
.hub-format-option input{position:absolute;opacity:0}
.hub-format-option strong{font-size:12px;display:block}
.hub-format-option p{font-size:10.5px;color:var(--hub-muted);margin:3px 0 0;line-height:1.4}
.hub-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hub-field{display:grid;gap:5px}
.hub-field.is-full{grid-column:1/-1}
.hub-field>label,.hub-field>span{font-size:10.5px;font-weight:750;color:var(--hub-ink-2)}
.hub-field small{font-size:9.5px;color:var(--hub-muted)}
.hub-input,.hub-select,.hub-textarea{width:100%;border:1px solid var(--hub-line-strong);background:var(--hub-surface);border-radius:9px;min-height:40px;padding:9px 10px;font-size:12px;outline:none}
.hub-textarea{min-height:92px;resize:vertical}
.hub-input:focus,.hub-select:focus,.hub-textarea:focus{border-color:var(--hub-aqua-strong);box-shadow:0 0 0 3px rgba(84,217,211,.18)}
.hub-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid var(--hub-line)}
.hub-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:10px;padding:10px}
.hub-switch-row strong{font-size:11px;display:block}
.hub-switch-row span{font-size:9.5px;color:var(--hub-muted);display:block;margin-top:2px}
.hub-switch{position:relative;width:38px;height:22px;flex:0 0 auto}
.hub-switch input{position:absolute;opacity:0}
.hub-switch i{position:absolute;inset:0;border-radius:999px;background:#bfc8c6;transition:.15s}
.hub-switch i:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.hub-switch input:checked+i{background:var(--hub-aqua-strong)}
.hub-switch input:checked+i:after{transform:translateX(16px)}

/* Schedule & results */
.hub-period-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:13px;overflow:hidden;margin-bottom:10px}
.hub-period-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;background:var(--hub-surface-2);border-bottom:1px solid var(--hub-line)}
.hub-period-head strong{font-size:12px}
.hub-period-head span{font-size:9.5px;color:var(--hub-muted)}
.hub-event-admin{display:grid;grid-template-columns:minmax(0,1fr) 110px 90px auto;gap:9px;align-items:center;padding:10px 13px;border-top:1px solid var(--hub-line)}
.hub-event-admin:first-child{border-top:0}
.hub-event-admin strong{font-size:11px;display:block}
.hub-event-admin small{font-size:9px;color:var(--hub-muted)}
.hub-score-box{display:flex;gap:5px;align-items:center}
.hub-score-box input{width:42px;text-align:center;padding-left:4px;padding-right:4px}

/* Champions */
.hub-champion-hero{background:linear-gradient(135deg,var(--hub-nav),#253332);border:1px solid var(--hub-nav-line);border-radius:18px;padding:22px;color:#fff;display:flex;justify-content:space-between;gap:18px;align-items:center;overflow:hidden;position:relative}
.hub-champion-hero h1{font-size:26px;margin:4px 0 5px;letter-spacing:-.03em}
.hub-champion-hero p{color:#aeb8b7;margin:0;font-size:12px}
.hub-champion-crown{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;background:rgba(84,217,211,.12);color:var(--hub-aqua)}
.hub-champion-crown svg{width:42px;height:42px}
.hub-champion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.hub-champion-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:13px;padding:14px;text-align:center}
.hub-champion-rank{font-size:9.5px;font-weight:800;color:var(--hub-muted);text-transform:uppercase;letter-spacing:.05em}

/* Alerts, empty states, notes */
.hub-alert{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--hub-line);background:var(--hub-surface);border-radius:11px;padding:10px 12px;margin-bottom:12px}
.hub-alert>svg{width:18px;height:18px;margin-top:1px}
.hub-alert>div{display:flex;flex-direction:column;gap:2px}
.hub-alert strong{font-size:11.5px}
.hub-alert span{font-size:10.5px;color:var(--hub-muted)}
.hub-alert.is-success{background:var(--hub-green-soft);border-color:transparent;color:#186a48}
.hub-alert.is-error{background:var(--hub-red-soft);border-color:transparent;color:#9f3030}
.hub-alert.is-warning{background:var(--hub-amber-soft);border-color:transparent;color:#805715}
.hub-empty{text-align:center;border:1px dashed var(--hub-line-strong);background:var(--hub-surface);border-radius:13px;padding:30px 18px}
.hub-empty-compact{padding:15px}
.hub-empty-icon{width:40px;height:40px;border-radius:10px;background:var(--hub-surface-2);color:var(--hub-muted);display:grid;place-items:center;margin:0 auto 9px}
.hub-empty-icon svg{width:19px;height:19px}
.hub-empty h3{font-size:13px;margin:0 0 4px}
.hub-empty p{max-width:520px;margin:0 auto;color:var(--hub-muted);font-size:11px;line-height:1.5}
.hub-empty .hub-btn{margin-top:12px}
.hub-note{border-left:3px solid var(--hub-aqua);background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);border-radius:0 9px 9px 0;padding:9px 11px;font-size:10.5px}
.hub-toast{position:fixed;right:20px;bottom:20px;z-index:300;background:var(--hub-nav);color:#fff;border:1px solid var(--hub-nav-line);border-radius:10px;padding:10px 12px;box-shadow:var(--hub-shadow-lg);font-size:11px;max-width:340px;animation:hub-toast .18s ease-out}
@keyframes hub-toast{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Celebration: intentionally restrained */
.hub-celebration{position:relative;overflow:hidden;border:1px solid #bdebe8;background:linear-gradient(100deg,var(--hub-aqua-soft),var(--hub-surface));border-radius:13px;padding:13px 14px;display:flex;align-items:center;gap:11px}
.hub-celebration-icon{width:38px;height:38px;border-radius:10px;background:var(--hub-aqua);color:#0b3836;display:grid;place-items:center}
.hub-celebration strong{font-size:12.5px;display:block}
.hub-celebration span{font-size:10.5px;color:var(--hub-muted)}
.hub-celebration[data-celebrate="1"]:after{content:"";position:absolute;right:18px;top:-22px;width:86px;height:86px;border:2px dashed rgba(47,197,191,.35);border-radius:50%;animation:hub-ring 1.2s ease-out both}
@keyframes hub-ring{from{transform:scale(.5) rotate(0);opacity:1}to{transform:scale(1.4) rotate(25deg);opacity:0}}

/* Rivalries */
.hub-rivalry-hero{display:grid;grid-template-columns:1fr auto 1fr;gap:13px;align-items:center;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:14px;padding:16px}
.hub-rival-player{text-align:center}
.hub-rival-avatar{width:50px;height:50px;border-radius:50%;background:var(--hub-nav);color:#fff;display:grid;place-items:center;margin:0 auto 7px;font-weight:800}
.hub-rival-player strong{display:block;font-size:12px}
.hub-rival-player span{display:block;font-size:10px;color:var(--hub-muted)}
.hub-versus{font-size:9px;font-weight:850;color:var(--hub-muted);letter-spacing:.1em}

/* Auth */
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.85fr) minmax(520px,1.15fr);background:var(--hub-bg)}
.auth-brand-pane{background:var(--hub-nav);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:40px;position:relative;overflow:hidden}
.auth-brand-pane:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-260px;top:-170px;background:radial-gradient(circle,rgba(84,217,211,.19),rgba(84,217,211,0) 68%)}
.auth-brand{position:relative;z-index:1;background:#fff;border-radius:10px;padding:7px 12px;display:inline-flex;width:max-content}
.auth-brand img{height:31px;width:auto}
.auth-brand-copy{position:relative;z-index:1;max-width:470px}
.auth-brand-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#8fa09e;font-weight:800}
.auth-brand-copy h2{font-size:38px;line-height:1.05;letter-spacing:-.045em;margin:9px 0 12px}
.auth-brand-copy p{font-size:14px;line-height:1.65;color:#aeb9b7;margin:0}
.auth-brand-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px}
.auth-brand-feature{border:1px solid #394344;background:rgba(255,255,255,.025);border-radius:10px;padding:10px;font-size:11px;color:#dce3e2;display:flex;gap:8px;align-items:center}
.auth-brand-feature svg{color:var(--hub-aqua);width:17px;height:17px}
.auth-form-pane{display:flex;align-items:center;justify-content:center;padding:40px 24px}
.auth-card{width:min(430px,100%)}
.auth-title{font-size:29px}
.auth-subtitle{font-size:12.5px;color:var(--hub-muted);margin:0 0 22px}
.auth-form{display:grid;gap:11px}
.auth-divider{display:flex;align-items:center;gap:10px;color:var(--hub-muted);font-size:9.5px;margin:4px 0}
.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--hub-line);flex:1}
.auth-foot{font-size:11px;color:var(--hub-muted);text-align:center;margin-top:16px}
.auth-foot a{color:var(--hub-ink);font-weight:750}

/* Legacy/admin compatibility: new skin without resurrecting dashboard visuals */
.mnp-section{margin-top:20px}.mnp-panel{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow)}
.mnp-panel-head{padding:14px 16px;border-bottom:1px solid var(--hub-line);display:flex;justify-content:space-between;gap:10px;align-items:center}.mnp-panel-body{padding:16px}
.mnp-panel-title,.mnp-section-heading h2{font-size:15px;font-weight:750;margin:0}.mnp-panel-subtitle,.mnp-section-heading p{font-size:11px;color:var(--hub-muted);margin:3px 0 0}
.mnp-section-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin-bottom:10px}.mnp-eyebrow{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:var(--hub-muted);font-weight:800}
.mnp-grid{display:grid;gap:10px}.mnp-grid-2,.mnp-admin-two{grid-template-columns:repeat(2,minmax(0,1fr))}.mnp-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.mnp-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mnp-chip{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background:var(--hub-surface-2);border:1px solid var(--hub-line);font-size:9px;font-weight:750;color:var(--hub-muted)}.mnp-chip.is-live{background:var(--hub-green-soft);color:var(--hub-green);border-color:transparent}
.mnp-admin-table-wrap{overflow:auto}.mnp-admin-table{width:100%;border-collapse:collapse;font-size:11px}.mnp-admin-table th,.mnp-admin-table td{padding:9px 8px;border-bottom:1px solid var(--hub-line);text-align:left}.mnp-admin-table th{font-size:9px;color:var(--hub-muted);text-transform:uppercase;letter-spacing:.05em}
.mnp-admin-nav{display:flex;gap:5px;overflow:auto;margin:10px 0 18px}.mnp-admin-nav a{padding:7px 10px;border-radius:8px;font-size:10.5px;font-weight:700;color:var(--hub-muted);background:var(--hub-surface);border:1px solid var(--hub-line)}.mnp-admin-nav a.is-active{background:var(--hub-nav);color:#fff}
.mnp-form-stack{display:grid;gap:11px}.mnp-setting-row,.mnp-permission-option{border:1px solid var(--hub-line);border-radius:10px;padding:10px;background:var(--hub-surface-2)}
.mnp-text-link{font-size:11px;font-weight:700;color:var(--hub-aqua-ink)}

/* Responsive */
@media(max-width:1080px){
  .hub-shell{width:min(var(--hub-shell),calc(100% - 28px))}
  .hub-header-inner{width:calc(100% - 24px);gap:13px}
  .hub-brand{min-width:150px}.hub-brand img{max-width:140px}
  .hub-nav a{padding:0 10px;font-size:12.5px}
  .hub-account-copy{display:none}
  .hub-account-btn{max-width:none;padding-right:7px}
  .hub-contest-layout,.hub-detail-grid{grid-template-columns:minmax(0,1fr) 285px}
  .hub-manage-contest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:860px){
  :root{--hub-header-h:60px}
  .hub-header{height:var(--hub-header-h)}
  .hub-header-inner{width:calc(100% - 20px);gap:8px}
  .hub-brand{height:39px;min-width:132px;padding:5px 8px}.hub-brand img{height:27px;max-width:120px}
  .hub-nav{display:none}
  .hub-create-btn{display:none}
  .hub-header-actions{margin-left:auto}
  .hub-main{padding:20px 0 92px}
  .hub-shell{width:calc(100% - 22px)}
  .hub-mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:9px;right:9px;bottom:max(8px,env(safe-area-inset-bottom));z-index:120;background:var(--hub-nav);border:1px solid var(--hub-nav-line);border-radius:14px;padding:6px;box-shadow:0 14px 40px rgba(0,0,0,.28)}
  .hub-mobile-nav a{display:flex;flex-direction:column;align-items:center;gap:3px;justify-content:center;min-height:48px;border-radius:9px;color:#8e9998;font-size:8.5px;font-weight:700}
  .hub-mobile-nav a svg{width:18px;height:18px}
  .hub-mobile-nav a.is-active{background:#2b3334;color:#fff}
  .hub-mobile-nav a.is-active svg{color:var(--hub-aqua)}
  .hub-page-head,.hub-picks-hero{align-items:flex-start}.hub-page-head h1,.hub-picks-hero h1{font-size:26px}
  .hub-page-actions{justify-content:flex-start}
  .hub-contest-layout,.hub-detail-grid,.hub-pick-layout,.hub-squares-shell{grid-template-columns:1fr}
  .hub-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hub-sticky-card{position:static}
  .hub-contest-card-inner{grid-template-columns:44px minmax(0,1fr) auto}.hub-contest-progress{display:none}
  .hub-action-grid,.hub-discover-row{grid-template-columns:1fr}
  .hub-manage-contest-grid{grid-template-columns:1fr 1fr}
  .hub-wizard{grid-template-columns:1fr}.hub-wizard-side{position:static}.hub-wizard-steps{display:flex;overflow:auto}.hub-wizard-step{min-width:max-content;grid-template-columns:24px auto}.hub-wizard-step span{width:22px;height:22px}
  .auth-shell{grid-template-columns:1fr}.auth-brand-pane{display:none}.auth-form-pane{min-height:100vh;padding:28px 20px}
}

@media(max-width:600px){
  body{font-size:14px}
  .hub-header-actions>.hub-icon-btn:first-of-type{display:none}
  .hub-account-btn>svg{display:none}
  .hub-account-btn{border:0;background:transparent;padding:0}.hub-account-btn:hover{background:transparent}.hub-account-btn .hub-avatar{width:36px;height:36px}
  .hub-menu{position:fixed;left:10px;right:10px;top:66px;width:auto}
  .hub-page-head,.hub-manage-hero,.hub-picks-hero{flex-direction:column;gap:13px;margin-bottom:18px}
  .hub-page-head h1,.hub-picks-hero h1{font-size:24px}.hub-contest-hero h1{font-size:22px}
  .hub-page-head p,.hub-picks-hero p{font-size:12px}
  .hub-tabs{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
  .hub-tab{padding:6px 7px}
  .hub-section{margin-top:20px}.hub-section-head{align-items:flex-start}.hub-section-head h2{font-size:16px}.hub-section-head p{font-size:11.5px}
  .hub-action-card{padding:10px;min-height:70px}.hub-action-card .hub-btn{display:none}.hub-action-copy strong{font-size:12px}.hub-action-copy span{font-size:10.5px}
  .hub-contest-card-inner{grid-template-columns:38px minmax(0,1fr) auto;padding:12px 11px;gap:9px}.hub-sport-mark{width:36px;height:36px}.hub-sport-mark svg{width:18px;height:18px}.hub-contest-title{font-size:12.5px}.hub-contest-sub{font-size:10px}.hub-contest-labels{font-size:8.5px}.hub-rank strong{font-size:13px}.hub-rank{min-width:42px}
  .hub-side-stack{grid-template-columns:1fr}
  .hub-discover-card{min-height:160px}
  .hub-contest-hero{border-radius:14px 14px 0 0;padding:15px 14px 0}.hub-contest-hero-main{flex-direction:column;padding-bottom:12px}.hub-contest-hero-title{gap:9px}.hub-contest-hero-actions{width:100%}.hub-contest-hero-actions .hub-btn{flex:1}.hub-contest-tabs a{padding:10px 9px 11px;font-size:10.5px}
  .hub-card{padding:14px}.hub-detail-grid{margin-top:10px}.hub-podium{gap:5px}.hub-podium-place{padding:8px;min-height:102px}.hub-podium-place.is-first{min-height:116px}.hub-podium-avatar{width:32px;height:32px}
  .hub-manage-hero{padding:15px;border-radius:13px}.hub-manage-hero h1{font-size:21px}.hub-manage-hero .hub-page-actions{width:100%}.hub-manage-hero .hub-page-actions .hub-btn{flex:1}
  .hub-manage-contest-grid{grid-template-columns:1fr}
  .hub-form-grid,.hub-format-grid{grid-template-columns:1fr}.hub-field.is-full{grid-column:auto}
  .hub-event-admin{grid-template-columns:minmax(0,1fr) auto}.hub-event-admin>:nth-child(2),.hub-event-admin>:nth-child(3){grid-row:2}
  .hub-rivalry-hero{grid-template-columns:1fr}.hub-versus{margin:-3px 0}
  .hub-champion-grid{grid-template-columns:1fr}.hub-champion-hero{padding:17px}.hub-champion-crown{width:62px;height:62px}.hub-champion-crown svg{width:30px;height:30px}
}

/* Ground-up management/detail utilities */
.hub-form-stack{display:grid;gap:10px;margin-top:14px}
.hub-score-form{display:grid;grid-template-columns:64px 64px auto;gap:6px;align-items:center}
.hub-score-form .hub-input{min-height:34px;padding:6px 7px}
.hub-score-box{flex-direction:column;align-items:flex-start;gap:0}
.hub-score-box strong{font-size:13px}.hub-score-box span{font-size:9px;color:var(--hub-muted)}
.hub-copy-row{display:flex;gap:6px;margin-top:12px}.hub-copy-row .hub-input{min-width:0}
.hub-inline-form{display:flex;align-items:center;gap:6px}.hub-inline-form .hub-input{min-height:34px;padding:6px 8px;width:auto;min-width:120px}
.hub-member-list{display:grid}.hub-member-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--hub-line)}.hub-member-row:first-child{border-top:0}.hub-member-row>.hub-avatar{width:34px;height:34px}.hub-member-row>div:nth-child(2){display:grid;min-width:0}.hub-member-row>div:nth-child(2)>strong{font-size:12px}.hub-member-row>div:nth-child(2)>span{font-size:10px;color:var(--hub-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hub-member-stats{display:flex!important;align-items:center;gap:7px!important}.hub-member-stats>span:not(.hub-status){font-size:10px;color:var(--hub-muted)}
.hub-settings-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12px}.hub-settings-grid>.is-full{grid-column:1/-1}.hub-settings-grid .hub-switch-row+.hub-switch-row{margin-top:7px}
.hub-bracket-score{display:grid;grid-template-columns:50px 50px auto;gap:5px;padding:7px;border-top:1px solid var(--hub-line)}.hub-bracket-score .hub-input{min-height:31px;padding:5px;text-align:center}
.hub-period-head>div{display:grid;gap:2px}.hub-period-head h3{font-size:13px;margin:0}.hub-period-head>div>small{text-transform:uppercase;letter-spacing:.05em;font-size:8.5px;color:var(--hub-muted)}
.hub-period-card.hub-card{padding:0}.hub-matchups{display:grid}
.hub-form-actions form{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.hub-note{font-size:10px;color:var(--hub-muted);line-height:1.45}

/* Clean data list/table treatment used by People and Delivery Center */
.hub-data-table{width:100%;border-collapse:collapse}.hub-data-table th{text-align:left;color:var(--hub-muted);font-size:9px;text-transform:uppercase;letter-spacing:.055em;font-weight:800;padding:9px 10px;border-bottom:1px solid var(--hub-line);white-space:nowrap}.hub-data-table td{padding:10px;border-bottom:1px solid var(--hub-line);font-size:11px;vertical-align:middle}.hub-data-table tr:last-child td{border-bottom:0}.hub-data-table strong{font-size:11.5px}.hub-data-sub{display:block;color:var(--hub-muted);font-size:9.5px;margin-top:2px}.hub-table-wrap{overflow:auto;border:1px solid var(--hub-line);border-radius:12px;background:var(--hub-surface)}
.hub-metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.hub-metric{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:11px;padding:11px}.hub-metric span{font-size:9.5px;color:var(--hub-muted);display:block}.hub-metric strong{font-size:20px;letter-spacing:-.035em;display:block;margin-top:3px}.hub-metric small{font-size:9px;color:var(--hub-muted)}

/* Browser/account forms */
.hub-profile-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:12px}.hub-profile-avatar{width:78px;height:78px;border-radius:50%;overflow:hidden;background:var(--hub-nav);color:#fff;display:grid;place-items:center;font-size:24px;font-weight:800}.hub-profile-avatar img{width:100%;height:100%;object-fit:cover}.hub-profile-head{display:flex;gap:14px;align-items:center;margin-bottom:16px}.hub-profile-head h2{margin:0;font-size:18px}.hub-profile-head p{margin:3px 0 0;color:var(--hub-muted);font-size:11px}

/* Ground-up authentication shell */
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);background:var(--hub-bg)}
.auth-brand-pane{position:relative;overflow:hidden;background:var(--hub-nav);color:#fff;padding:44px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.auth-brand-pane:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(84,217,211,.22),rgba(84,217,211,0) 68%);right:-180px;top:10%;pointer-events:none}.auth-brand{position:relative;z-index:1;display:inline-flex;background:#fff;border-radius:10px;padding:8px 11px;width:max-content}.auth-brand img{height:34px;width:auto}.auth-brand-copy{position:relative;z-index:1;max-width:460px}.auth-brand-copy small{color:var(--hub-aqua);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.auth-brand-copy h1{font-size:44px;letter-spacing:-.05em;line-height:1.02;margin:10px 0 14px}.auth-brand-copy p{font-size:14px;color:#aeb8b7;max-width:420px}.auth-brand-features{display:grid;gap:8px;margin-top:22px}.auth-brand-feature{display:flex;align-items:center;gap:8px;font-size:12px;color:#dce1e0}.auth-brand-feature span{width:26px;height:26px;border-radius:8px;background:rgba(84,217,211,.13);color:var(--hub-aqua);display:grid;place-items:center}.auth-brand-feature svg{width:14px;height:14px}.auth-form-pane{display:grid;place-items:center;padding:42px 28px}.auth-card{width:min(100%,480px);background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:20px;padding:30px;box-shadow:var(--hub-shadow)}.auth-card.is-wide{width:min(100%,680px)}.auth-title{font-size:28px}.auth-subtitle{color:var(--hub-muted);font-size:12.5px;margin:0 0 22px}.auth-form{display:grid;gap:12px}.auth-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-options{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10.5px;color:var(--hub-muted)}.auth-options label{display:flex;align-items:center;gap:6px}.auth-options a,.auth-foot a{color:var(--hub-aqua-ink);font-weight:700}.auth-foot{text-align:center;color:var(--hub-muted);font-size:11px;margin-top:17px}.auth-legal{display:flex;justify-content:center;gap:15px;font-size:9.5px;color:var(--hub-muted-2);margin-top:16px}.auth-choice{border:1px solid var(--hub-line);background:var(--hub-surface-2);padding:10px;border-radius:10px;display:flex;gap:8px;align-items:flex-start;font-size:10.5px;color:var(--hub-muted)}

@media(max-width:880px){.hub-settings-grid,.hub-profile-layout{grid-template-columns:1fr}.hub-metric-strip{grid-template-columns:repeat(2,1fr)}.hub-member-row{grid-template-columns:34px minmax(0,1fr) auto}.hub-member-stats{display:none!important}.hub-member-row>.hub-inline-form{grid-column:2/-1}.auth-shell{grid-template-columns:1fr}.auth-brand-pane{display:none}.auth-form-pane{padding:24px 16px;min-height:100vh}.auth-card,.auth-card.is-wide{width:min(100%,620px)}}
@media(max-width:600px){.hub-score-form{grid-template-columns:1fr 1fr}.hub-score-form .hub-btn{grid-column:1/-1}.hub-inline-form{grid-column:1/-1!important;margin-left:44px}.hub-metric-strip{grid-template-columns:1fr 1fr}.hub-settings-grid{gap:10px}.auth-card{padding:20px;border-radius:16px}.auth-form-row{grid-template-columns:1fr}}

/* =========================================================
   Public Pool Hub - same visual system as the signed-in app
   ========================================================= */
.pool-public-app{min-height:100vh;background:var(--hub-bg);color:var(--hub-ink)}
.pool-public-header{height:68px;background:var(--hub-nav);border-bottom:1px solid var(--hub-nav-line);color:#fff;position:sticky;top:0;z-index:120}
.pool-public-header-inner{width:min(1320px,calc(100% - 36px));height:100%;margin:0 auto;display:flex;align-items:center;gap:26px}
.pool-public-brand{height:43px;min-width:170px}
.pool-public-nav{display:flex;align-items:stretch;height:100%;gap:2px}
.pool-public-nav a{display:flex;align-items:center;padding:0 14px;color:#b7c0bf;font-size:13.5px;font-weight:650}
.pool-public-nav a:hover{color:#fff;background:rgba(255,255,255,.035)}
.pool-public-actions{margin-left:auto;display:flex;align-items:center;gap:8px}
.pool-public-actions .hub-icon-btn{background:#252c2d}
.pool-public-signin{background:transparent;border-color:#465051;color:#fff}
.pool-public-signin:hover{color:#fff;background:#2a3233}
.pool-public-hero{width:min(1220px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);gap:54px;align-items:center;padding:72px 0 62px}
.pool-public-hero-copy{max-width:560px}
.pool-public-kicker{display:flex;align-items:center;gap:8px;color:var(--hub-muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.075em}
.pool-public-kicker span{width:8px;height:8px;border-radius:50%;background:var(--hub-aqua);box-shadow:0 0 0 4px var(--hub-aqua-soft)}
.pool-public-hero h1{margin:15px 0 16px;font-size:clamp(42px,5.1vw,72px);line-height:.97;letter-spacing:-.058em;font-weight:800;max-width:620px}
.pool-public-hero-copy>p{margin:0;color:var(--hub-muted);font-size:16px;line-height:1.68;max-width:550px}
.pool-public-hero-actions{display:flex;gap:9px;align-items:center;margin-top:25px}
.pool-public-hero-actions .hub-btn{min-height:47px;padding:10px 17px;font-size:13px}
.pool-public-hero-secondary{background:var(--hub-surface)}
.pool-public-trust-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:23px;color:var(--hub-muted);font-size:10.5px;font-weight:650}
.pool-public-trust-row span{display:inline-flex;align-items:center;gap:6px}.pool-public-trust-row svg{width:14px;height:14px;color:var(--hub-aqua-ink)}
.pool-public-preview{position:relative;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:20px;padding:17px;box-shadow:0 24px 70px rgba(23,31,31,.13);overflow:hidden}
.pool-public-preview:before{content:"";position:absolute;right:-80px;top:-110px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(84,217,211,.2),rgba(84,217,211,0) 68%);pointer-events:none}
.pool-public-preview-top,.pool-public-preview-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pool-public-preview-top>div,.pool-public-preview-card-head>div{display:grid;gap:2px}.pool-public-preview-top small,.pool-public-preview-card-head small{color:var(--hub-muted);font-size:9px;font-weight:800;letter-spacing:.07em}.pool-public-preview-top strong,.pool-public-preview-card-head strong{font-size:13px}
.pool-live-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hub-line);border-radius:999px;background:var(--hub-surface-2);padding:5px 8px;color:var(--hub-muted);font-size:9.5px;font-weight:750}.pool-live-pill i{width:6px;height:6px;border-radius:50%;background:var(--hub-green);box-shadow:0 0 0 3px var(--hub-green-soft)}
.pool-public-preview-actions{display:grid;gap:8px;margin-top:13px}
.pool-public-preview-actions>div{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid var(--hub-line);border-radius:12px;padding:10px;background:var(--hub-surface)}
.pool-public-preview-actions>div>span{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;background:#1d2325;color:#f2b64a}.pool-public-preview-actions>div>span.is-football{background:#173c35;color:#7ae4c6}.pool-public-preview-actions svg{width:18px;height:18px}
.pool-public-preview-actions p{display:grid;gap:2px;margin:0;min-width:0}.pool-public-preview-actions strong{font-size:12px}.pool-public-preview-actions small{font-size:10px;color:var(--hub-muted)}.pool-public-preview-actions b{font-size:12px}
.pool-public-preview-card{margin-top:11px;border-radius:13px;background:var(--hub-nav);color:#fff;padding:13px}
.pool-public-preview-card-head small{color:#99a5a4}.pool-public-preview-card-head>span{border-radius:999px;background:rgba(84,217,211,.12);color:#8be5e0;padding:5px 7px;font-size:9px;font-weight:750}
.pool-public-preview-row{display:grid;grid-template-columns:31px minmax(0,1fr) 27px;gap:9px;align-items:center;padding:10px 0;border-top:1px solid #343b3c}.pool-public-preview-row:first-of-type{margin-top:8px}.pool-public-preview-row i{width:29px;height:29px;border-radius:8px;background:#2a3233;display:grid;place-items:center;color:#a8efeb}.pool-public-preview-row i svg,.pool-public-preview-row em svg{width:14px;height:14px}.pool-public-preview-row div{display:grid}.pool-public-preview-row strong{font-size:10.5px}.pool-public-preview-row small{font-size:9.5px;color:#9aa5a4}.pool-public-preview-row em{width:27px;height:27px;border-radius:8px;background:#252c2d;display:grid;place-items:center;color:#9aa5a4}
.pool-public-section{width:min(1220px,calc(100% - 40px));margin:0 auto;padding:44px 0}
.pool-public-section-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,.7fr);gap:60px;align-items:end;margin-bottom:20px}.pool-public-section-head small,.pool-public-cta small{display:block;color:var(--hub-muted);font-size:9.5px;font-weight:800;letter-spacing:.085em;margin-bottom:6px}.pool-public-section-head h2,.pool-public-cta h2{margin:0;font-size:clamp(28px,3vw,40px);line-height:1.05;letter-spacing:-.04em}.pool-public-section-head p{margin:0;color:var(--hub-muted);font-size:12.5px;line-height:1.6}
.pool-public-pool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pool-public-pool-card{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:260px;border:1px solid var(--hub-line);border-radius:18px;background:var(--hub-surface);overflow:hidden;box-shadow:var(--hub-shadow)}
.pool-public-pool-art{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;color:#fff;background:#1d2325;overflow:hidden}.pool-public-pool-art:after{content:"";position:absolute;width:170px;height:170px;border:28px solid rgba(255,255,255,.045);border-radius:50%;right:-72px;top:-50px}.pool-public-pool-card.is-football .pool-public-pool-art{background:#173c35}.pool-public-pool-art>span{position:absolute;left:19px;top:19px;width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.1);display:grid;place-items:center;color:#f2b64a}.pool-public-pool-card.is-football .pool-public-pool-art>span{color:#7ae4c6}.pool-public-pool-art svg{width:21px;height:21px}.pool-public-pool-art small{font-size:9px;letter-spacing:.09em;color:#aeb7b6;font-weight:800}.pool-public-pool-art strong{font-size:33px;line-height:1;font-weight:800;letter-spacing:-.045em;margin-top:4px}
.pool-public-pool-body{padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}.pool-public-tag{display:inline-flex;border-radius:999px;background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);font-size:9px;font-weight:800;padding:5px 7px;text-transform:uppercase;letter-spacing:.05em}.pool-public-pool-body h3{font-size:18px;margin:10px 0 5px;letter-spacing:-.02em}.pool-public-pool-body p{font-size:11.5px;line-height:1.55;color:var(--hub-muted);margin:0}.pool-public-pool-body ul{display:flex;gap:6px;flex-wrap:wrap;list-style:none;margin:0;padding:0}.pool-public-pool-body li{border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:999px;padding:5px 7px;color:var(--hub-muted);font-size:9.5px;font-weight:650}
.pool-public-open-section{padding-top:28px}.pool-public-live-list{display:grid;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:16px;overflow:hidden;box-shadow:var(--hub-shadow)}.pool-public-live-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto 24px;gap:12px;align-items:center;padding:13px 15px;border-top:1px solid var(--hub-line)}.pool-public-live-row:first-child{border-top:0}.pool-public-live-row:hover{background:var(--hub-surface-2)}.pool-public-live-row>div{min-width:0}.pool-public-live-row small{display:block;color:var(--hub-muted);font-size:9px;text-transform:uppercase;letter-spacing:.055em;font-weight:750}.pool-public-live-row strong{display:block;font-size:12.5px;margin-top:2px}.pool-public-live-row p{margin:2px 0 0;font-size:10px;color:var(--hub-muted)}.pool-public-live-row>svg{width:15px;height:15px;color:var(--hub-muted)}
.pool-public-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pool-public-steps>div{position:relative;min-height:188px;border:1px solid var(--hub-line);border-radius:15px;background:var(--hub-surface);padding:16px;box-shadow:0 1px 2px rgba(18,25,25,.035)}.pool-public-steps>div>span{position:absolute;right:14px;top:13px;color:var(--hub-line-strong);font-size:23px;font-weight:800;letter-spacing:-.04em}.pool-public-steps i{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);font-style:normal}.pool-public-steps i svg{width:18px;height:18px}.pool-public-steps strong{display:block;margin-top:27px;font-size:13px}.pool-public-steps p{margin:5px 0 0;color:var(--hub-muted);font-size:10.5px;line-height:1.5}
.pool-public-cta{width:min(1220px,calc(100% - 40px));margin:36px auto 54px;border:1px solid var(--hub-nav-line);border-radius:19px;background:var(--hub-nav);color:#fff;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;overflow:hidden;position:relative}.pool-public-cta:after{content:"";position:absolute;width:260px;height:260px;right:-80px;top:-130px;border-radius:50%;background:radial-gradient(circle,rgba(84,217,211,.2),rgba(84,217,211,0) 68%)}.pool-public-cta>div,.pool-public-cta>a{position:relative;z-index:1}.pool-public-cta small{color:#8fa09e}.pool-public-cta h2{color:#fff;font-size:32px}.pool-public-cta p{margin:7px 0 0;color:#aeb9b8;font-size:11.5px}.pool-public-cta .hub-btn{min-height:45px}
.pool-public-footer{width:min(1220px,calc(100% - 40px));margin:0 auto;padding:0 0 30px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--hub-muted);font-size:10px}.pool-public-footer>div{display:flex;gap:14px}.pool-public-footer a:hover{color:var(--hub-ink)}
@media(max-width:980px){.pool-public-nav{display:none}.pool-public-hero{grid-template-columns:1fr;gap:34px;padding-top:46px}.pool-public-hero-copy{max-width:720px}.pool-public-pool-card{grid-template-columns:150px minmax(0,1fr)}.pool-public-section-head{grid-template-columns:1fr;gap:10px}.pool-public-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pool-public-header-inner{width:calc(100% - 22px)}.pool-public-brand{min-width:0;padding:5px 8px}.pool-public-brand img{max-width:138px}.pool-public-actions .hub-icon-btn{display:none}.pool-public-signin{display:none}.pool-public-actions .hub-btn-primary{padding-inline:11px}.pool-public-hero,.pool-public-section,.pool-public-cta,.pool-public-footer{width:calc(100% - 24px)}.pool-public-hero{padding:34px 0 34px}.pool-public-hero h1{font-size:44px}.pool-public-hero-copy>p{font-size:14px}.pool-public-trust-row{gap:10px}.pool-public-pool-grid{grid-template-columns:1fr}.pool-public-pool-card{grid-template-columns:118px minmax(0,1fr);min-height:240px}.pool-public-pool-art{padding:14px}.pool-public-pool-art>span{left:13px;top:13px}.pool-public-pool-art strong{font-size:25px}.pool-public-pool-body{padding:15px}.pool-public-live-row{grid-template-columns:42px minmax(0,1fr) 22px}.pool-public-live-row>.hub-status{display:none}.pool-public-steps{grid-template-columns:1fr}.pool-public-steps>div{min-height:145px}.pool-public-cta{align-items:flex-start;flex-direction:column;padding:22px}.pool-public-footer{align-items:flex-start;flex-direction:column}.pool-public-preview{padding:12px}}

/* --------------------------------------------------------------------------
   Pool UX pass · unified icon system + native NASCAR / Football workspaces
   -------------------------------------------------------------------------- */
:root{
  --hub-icon:#2fc5bf;
  --hub-icon-soft:#dcf8f6;
  --hub-icon-ink:#0b5552;
}
html[data-theme="dark"]{
  --hub-icon:#63e4de;
  --hub-icon-soft:#163d3b;
  --hub-icon-ink:#a8efeb;
}

/* One icon language across every sport/pool. Status colors remain semantic. */
.hub-sport-mark,
.hub-sport-mark.is-football,
.hub-sport-mark.is-basketball,
.hub-sport-mark.is-hockey,
.hub-sport-mark.is-nascar,
.hub-action-icon,
.hub-card-icon,
.hub-feed-icon,
.hub-empty-icon,
.pool-public-preview-actions>div>span,
.pool-public-preview-actions>div>span.is-football,
.pool-public-pool-art>span,
.pool-public-pool-card.is-football .pool-public-pool-art>span,
.pool-public-steps i{
  background:var(--hub-icon-soft)!important;
  color:var(--hub-icon-ink)!important;
}
.hub-header .hub-icon-btn svg,
.hub-header .hub-create-btn svg,
.hub-mobile-nav svg,
.hub-menu>a svg,
.hub-menu-item svg{
  color:var(--hub-icon)!important;
}
.hub-btn:not(.hub-btn-danger) svg,
.hub-text-link svg,
.hub-back-link svg,
.hub-action-go svg{
  color:var(--hub-icon-ink);
}
.hub-btn-primary svg,.hub-btn-brand svg{color:currentColor}
.pool-public-preview-actions>div>span svg,
.pool-public-pool-art>span svg{color:currentColor}
.pool-public-pool-art,
.pool-public-pool-card.is-football .pool-public-pool-art{background:#1d2325}

/* Pool-first naming is reflected visually in compact workspace heads. */
.hub-pool-workspace-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0 0 18px}
.hub-pool-workspace-head>div:first-child{min-width:0}
.hub-pool-workspace-head h1{margin:5px 0 6px;font-size:31px;line-height:1.05;letter-spacing:-.04em;font-weight:800}
.hub-pool-workspace-head p{margin:0;color:var(--hub-muted);font-size:13px;max-width:720px}

/* Football season experience */
.hub-football-game-card{background:var(--hub-nav);color:#fff;border:1px solid var(--hub-nav-line);border-radius:18px;overflow:hidden;box-shadow:var(--hub-shadow);margin-bottom:14px}
.hub-football-game-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-bottom:1px solid var(--hub-nav-line)}
.hub-week-switcher{display:flex;align-items:center;gap:13px}
.hub-week-switcher>div{display:grid;gap:2px;min-width:180px;text-align:center}
.hub-week-switcher small{font-size:9px;letter-spacing:.08em;font-weight:800;color:#93a09f}
.hub-week-switcher strong{font-size:11.5px;color:#fff}
.hub-week-arrow{width:34px;height:34px;border:1px solid #3b4445;border-radius:9px;display:grid;place-items:center;color:var(--hub-icon);background:#252c2d}
.hub-week-arrow:hover{border-color:#5a6666;background:#2b3334}
.hub-week-arrow.is-disabled{opacity:.28;pointer-events:none}
.hub-week-arrow svg{width:15px;height:15px}
.hub-week-select-wrap{display:flex;align-items:center;gap:8px}.hub-week-select-wrap label{font-size:9.5px;color:#93a09f}.hub-week-select-wrap .hub-input{min-height:34px;width:116px;background:#252c2d;border-color:#3b4445;color:#fff}
.hub-football-matchup{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:14px;align-items:center;padding:22px 24px}
.hub-team-card{display:flex;align-items:center;gap:12px;min-width:0}.hub-team-card.is-right{flex-direction:row-reverse;text-align:right}
.hub-team-badge{width:52px;height:52px;border-radius:14px;border:1px solid #3b4546;background:#252c2d;color:var(--hub-icon);display:grid;place-items:center;font-size:13px;font-weight:850;letter-spacing:.02em;flex:0 0 auto}
.hub-team-card>div{display:grid;min-width:0}.hub-team-card small{font-size:8.5px;letter-spacing:.08em;font-weight:800;color:#8d9998}.hub-team-card strong{font-size:18px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-team-card>b{font-size:31px;letter-spacing:-.04em;margin-left:auto}.hub-team-card.is-right>b{margin-left:0;margin-right:auto}
.hub-matchup-vs{display:grid;place-items:center;text-align:center}.hub-matchup-vs span{width:44px;height:44px;border-radius:50%;background:var(--hub-icon);color:#0b2e2d;display:grid;place-items:center;font-size:11px;font-weight:900}.hub-matchup-vs small{margin-top:6px;color:#8d9998;font-size:8px;letter-spacing:.07em;font-weight:800}
.hub-football-game-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--hub-nav-line);background:#1b2122}
.hub-football-game-meta>div{display:flex;align-items:center;gap:9px;padding:11px 14px;border-left:1px solid var(--hub-nav-line)}.hub-football-game-meta>div:first-child{border-left:0}.hub-football-game-meta>div>svg{width:16px;height:16px;color:var(--hub-icon)}.hub-football-game-meta span{display:grid}.hub-football-game-meta small{font-size:8px;letter-spacing:.065em;color:#83908f;text-transform:uppercase;font-weight:800}.hub-football-game-meta strong{font-size:11px;margin-top:1px;color:#fff}

.hub-payment-callout{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:13px;padding:11px 12px;margin:0 0 14px}.hub-payment-callout>div:nth-child(2){display:grid}.hub-payment-callout strong{font-size:12px}.hub-payment-callout span{font-size:10.5px;color:var(--hub-muted);margin-top:2px}
.hub-square-board-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:16px;padding:16px;box-shadow:var(--hub-shadow);min-width:0}
.hub-square-board-head{margin-bottom:12px}.hub-board-legend{display:flex;align-items:center;gap:6px;white-space:nowrap;color:var(--hub-muted);font-size:9px}.hub-board-legend span{width:9px;height:9px;border-radius:3px;border:1px solid var(--hub-line)}.hub-board-legend span.is-mine{background:var(--hub-icon-soft);border-color:var(--hub-icon)}.hub-board-legend span.is-open{background:#fff}.hub-board-legend span.is-taken{background:var(--hub-bg-2)}
.hub-square-grid-wrap{position:relative;padding:30px 0 0 34px;overflow:auto}.hub-football-axis-top{position:absolute;left:34px;right:0;top:0;height:24px;display:grid;place-items:center;color:var(--hub-muted);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.hub-football-axis-left{position:absolute;left:0;top:30px;bottom:0;width:28px;display:grid;place-items:center;overflow:hidden}.hub-football-axis-left span{writing-mode:vertical-rl;transform:rotate(180deg);color:var(--hub-muted);font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.hub-square-grid{min-width:720px;display:grid;grid-template-columns:42px repeat(10,minmax(58px,1fr));border:1px solid var(--hub-line);border-radius:12px;overflow:hidden;background:var(--hub-line);gap:1px}
.hub-square-cell{height:57px;background:var(--hub-surface);display:grid;place-items:center;position:relative;color:var(--hub-muted);font-size:9px;font-weight:750;cursor:default;transition:.12s ease}.hub-square-cell.is-head{height:39px;background:var(--hub-nav);color:#fff;font-size:12px}.hub-square-cell.is-head svg{width:15px;height:15px;color:var(--hub-icon)}.hub-square-cell input{position:absolute;opacity:0;pointer-events:none}.hub-square-cell.is-available{cursor:pointer;background:var(--hub-surface)}.hub-square-cell.is-available:hover,.hub-square-cell.is-selected{box-shadow:inset 0 0 0 2px var(--hub-icon);background:var(--hub-icon-soft);color:var(--hub-icon-ink)}.hub-square-cell.is-mine{background:var(--hub-icon-soft);color:var(--hub-icon-ink);box-shadow:inset 0 0 0 1px rgba(47,197,191,.5)}.hub-square-cell.is-mine span{font-size:8px;font-weight:900}.hub-square-cell.is-taken{background:var(--hub-surface-2);color:var(--hub-muted-2)}
.hub-entry-card h3{margin:0 0 4px;font-size:15px}.hub-entry-card .hub-card-sub{margin-bottom:12px}.hub-rules-check{margin:10px 0}.hub-entry-rules-link{margin-top:12px;justify-content:center;width:100%}

.hub-week-list{display:grid;border:1px solid var(--hub-line);border-radius:14px;background:var(--hub-surface);overflow:hidden}
.hub-week-row{display:grid;grid-template-columns:58px minmax(210px,1.5fr) minmax(105px,.55fr) minmax(150px,.8fr) 30px;gap:12px;align-items:center;padding:11px 12px;border-top:1px solid var(--hub-line);min-height:68px}.hub-week-row:first-child{border-top:0}.hub-week-row:hover,.hub-week-row.is-current{background:var(--hub-surface-2)}.hub-week-row.is-current{box-shadow:inset 3px 0 0 var(--hub-icon)}
.hub-week-number{display:grid;text-align:center;border-right:1px solid var(--hub-line);padding-right:10px}.hub-week-number small,.hub-week-payout small{font-size:7.5px;color:var(--hub-muted);letter-spacing:.08em;font-weight:850}.hub-week-number strong{font-size:18px;line-height:1}.hub-week-game{display:grid;min-width:0}.hub-week-game strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-week-game strong span{color:var(--hub-muted);font-weight:550}.hub-week-game small{font-size:9.5px;color:var(--hub-muted);margin-top:3px}.hub-week-payout{display:grid}.hub-week-payout strong{font-size:11.5px}.hub-week-payout span{font-size:8.5px;color:var(--hub-muted);margin-top:2px}.hub-week-result{display:grid;min-width:0}.hub-week-result strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-week-result small{font-size:8.5px;color:var(--hub-muted);margin-top:2px}.hub-week-row>.hub-action-go{justify-self:end}
.hub-pool-next-game{display:grid;grid-template-columns:62px minmax(0,1fr) 100px 32px;gap:13px;align-items:center;border:1px solid var(--hub-line);border-radius:12px;padding:12px;background:var(--hub-surface-2)}.hub-pool-next-game>div:nth-child(2){display:grid}.hub-pool-next-game>div:nth-child(2)>small{font-size:9px;color:var(--hub-muted)}.hub-pool-next-game>div:nth-child(2)>strong{font-size:13px;margin-top:3px}.hub-pool-next-game>div:nth-child(2)>strong span{color:var(--hub-muted);font-weight:500}.hub-pool-next-payout{display:grid;text-align:right}.hub-pool-next-payout small{font-size:8px;letter-spacing:.07em;color:var(--hub-muted);font-weight:800}.hub-pool-next-payout strong{font-size:13px}

/* NASCAR driver roster */
.hub-driver-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:18px}.hub-driver-summary-strip>div{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:9px;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:12px;padding:10px 11px}.hub-driver-summary-strip .hub-action-icon{width:34px;height:34px}.hub-driver-summary-strip p{display:grid;margin:0;min-width:0}.hub-driver-summary-strip small{font-size:7.5px;letter-spacing:.075em;font-weight:850;color:var(--hub-muted)}.hub-driver-summary-strip strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.hub-driver-roster-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.hub-driver-roster-card{background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:14px;overflow:hidden;box-shadow:0 1px 2px rgba(18,25,25,.035);transition:.15s ease}.hub-driver-roster-card:hover{border-color:var(--hub-line-strong);transform:translateY(-1px);box-shadow:0 8px 22px rgba(18,25,25,.06)}.hub-driver-roster-card.is-mine{box-shadow:inset 0 0 0 1px var(--hub-icon);border-color:var(--hub-icon)}
.hub-driver-roster-photo{height:148px;background:linear-gradient(180deg,var(--hub-surface-3),var(--hub-bg-2));position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}.hub-driver-roster-photo>img{height:140px;width:auto;max-width:100%;object-fit:contain;object-position:center bottom}.hub-driver-roster-photo>span:not(.hub-driver-roster-number):not(.hub-driver-roster-picked){margin:auto;color:var(--hub-icon)}.hub-driver-roster-number{position:absolute;left:9px;top:9px;border-radius:8px;background:var(--hub-nav);color:#fff;padding:4px 7px;font-size:10px;font-weight:850}.hub-driver-roster-picked{position:absolute;right:8px;top:8px;display:inline-flex;align-items:center;gap:4px;border-radius:999px;background:var(--hub-icon-soft);color:var(--hub-icon-ink);padding:4px 7px;font-size:8.5px;font-weight:850}.hub-driver-roster-picked svg{width:11px;height:11px}
.hub-driver-roster-body{padding:11px}.hub-driver-roster-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.hub-driver-roster-top>div{display:grid;min-width:0}.hub-driver-roster-top strong{font-size:12px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-roster-top>div>span{font-size:9px;color:var(--hub-muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-group-chip{border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:999px;padding:3px 6px;color:var(--hub-muted);font-size:8px;font-weight:750;white-space:nowrap}.hub-driver-roster-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;border-top:1px solid var(--hub-line);margin-top:10px;padding-top:9px}.hub-driver-roster-stats>div{display:grid}.hub-driver-roster-stats small{font-size:7.5px;color:var(--hub-muted)}.hub-driver-roster-stats strong{font-size:9.5px;margin-top:2px}

@media(max-width:980px){
  .hub-pool-workspace-head{align-items:flex-start;flex-direction:column}
  .hub-football-game-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-football-game-meta>div:nth-child(3){border-left:0;border-top:1px solid var(--hub-nav-line)}.hub-football-game-meta>div:nth-child(4){border-top:1px solid var(--hub-nav-line)}
  .hub-driver-roster-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-driver-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hub-week-row{grid-template-columns:52px minmax(180px,1fr) 90px minmax(120px,.7fr) 26px}
}
@media(max-width:720px){
  .hub-football-game-top{align-items:stretch;flex-direction:column}.hub-week-switcher{justify-content:space-between}.hub-week-switcher>div{min-width:0}.hub-week-select-wrap{justify-content:space-between}.hub-week-select-wrap .hub-input{width:140px}
  .hub-football-matchup{grid-template-columns:1fr;gap:12px;padding:18px}.hub-team-card,.hub-team-card.is-right{flex-direction:row;text-align:left}.hub-team-card.is-right>b{margin-left:auto;margin-right:0}.hub-matchup-vs{grid-template-columns:auto 1fr;justify-content:center;gap:8px}.hub-matchup-vs span{width:36px;height:36px}.hub-matchup-vs small{margin:0;text-align:left}
  .hub-football-game-meta{grid-template-columns:1fr 1fr}.hub-football-game-meta>div{padding:10px}.hub-square-board-card{padding:11px}.hub-square-board-head{align-items:flex-start;flex-direction:column}.hub-square-grid-wrap{padding-left:28px}.hub-football-axis-left{width:22px}.hub-square-grid{min-width:650px;grid-template-columns:38px repeat(10,minmax(54px,1fr))}.hub-square-cell{height:52px}
  .hub-week-row{grid-template-columns:45px minmax(0,1fr) 28px;gap:9px;padding:10px}.hub-week-payout,.hub-week-result{grid-column:2}.hub-week-payout{grid-row:2}.hub-week-result{grid-row:3}.hub-week-row>.hub-action-go{grid-column:3;grid-row:1/4;align-self:center}.hub-week-number{grid-row:1/4;align-self:stretch;justify-content:center}.hub-week-game strong{white-space:normal}.hub-pool-next-game{grid-template-columns:48px minmax(0,1fr) 28px}.hub-pool-next-payout{grid-column:2;text-align:left}.hub-pool-next-game>.hub-action-go{grid-column:3;grid-row:1/3}
  .hub-driver-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-driver-summary-strip{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .hub-driver-roster-grid{grid-template-columns:1fr 1fr;gap:7px}.hub-driver-roster-photo{height:126px}.hub-driver-roster-photo>img{height:120px}.hub-driver-roster-body{padding:9px}.hub-driver-roster-stats{grid-template-columns:1fr 1fr}.hub-driver-roster-stats>div:last-child{display:none}
  .hub-driver-summary-strip{grid-template-columns:1fr}.hub-football-game-meta{grid-template-columns:1fr 1fr}
}

/* Pool UX pass: payment actions stay inside the Football pool experience. */
.hub-payment-callout{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid var(--hub-line);background:var(--hub-surface);border-radius:13px;padding:11px 12px;margin:0 0 14px}.hub-payment-copy{display:grid;min-width:0}.hub-payment-copy strong{font-size:11.5px}.hub-payment-copy span{font-size:9.5px;color:var(--hub-muted);margin-top:2px}.hub-payment-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.hub-payment-actions form{margin:0}.hub-payment-actions .hub-btn svg{color:var(--hub-icon)}
@media(max-width:720px){.hub-payment-callout{grid-template-columns:38px minmax(0,1fr)}.hub-payment-actions{grid-column:1/-1;justify-content:stretch}.hub-payment-actions form{flex:1}.hub-payment-actions .hub-btn{width:100%;justify-content:center}}

/* NASCAR pool UX: group the field the same way players make their picks. */
.hub-driver-groups{display:grid;gap:18px}.hub-driver-group-section{display:grid;gap:9px}.hub-driver-group-head{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:0 2px}.hub-driver-group-head>div:first-child{display:grid}.hub-driver-group-head small{font-size:8px;letter-spacing:.08em;color:var(--hub-muted);font-weight:850}.hub-driver-group-head h3{margin:2px 0 0;font-size:14px}.hub-driver-group-meta{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--hub-muted)}.hub-driver-group-meta strong{color:var(--hub-icon-ink);background:var(--hub-icon-soft);border-radius:999px;padding:4px 7px;font-size:8.5px}
@media(max-width:600px){.hub-driver-group-head{align-items:flex-start;flex-direction:column;gap:5px}.hub-driver-group-meta{width:100%;justify-content:space-between}}

/* --------------------------------------------------------------------------
   Complete internal UI pass · commissioner operations, reports, pool people
   -------------------------------------------------------------------------- */
.hub-page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0 0 18px}.hub-page-intro>div:first-child{min-width:0}.hub-page-intro h1{margin:5px 0 6px;font-size:31px;line-height:1.05;letter-spacing:-.04em;font-weight:800}.hub-page-intro p{margin:0;max-width:760px;color:var(--hub-muted);font-size:13px;line-height:1.55}
.hub-manage-hero-main{display:flex;align-items:center;gap:12px;min-width:0}.hub-manage-hero-main>div{min-width:0}.hub-manage-hero-main .hub-sport-mark{flex:0 0 auto;background:#273031!important;border:1px solid #394445!important;color:var(--hub-icon)!important}.hub-manage-tabs{display:flex;align-items:center;gap:3px;margin:0 0 18px;padding:4px;border:1px solid var(--hub-line);border-radius:12px;background:var(--hub-surface);overflow:auto;scrollbar-width:none}.hub-manage-tabs::-webkit-scrollbar{display:none}.hub-manage-tabs a{white-space:nowrap;border-radius:8px;padding:8px 11px;color:var(--hub-muted);font-size:10.5px;font-weight:760}.hub-manage-tabs a:hover{background:var(--hub-surface-2);color:var(--hub-ink)}.hub-manage-tabs a.is-active{background:var(--hub-nav);color:#fff}
.hub-management-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.hub-management-kpis>div{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center;border:1px solid var(--hub-line);background:var(--hub-surface);border-radius:13px;padding:11px;box-shadow:0 1px 2px rgba(18,25,25,.025)}.hub-management-kpis .hub-action-icon{width:36px;height:36px}.hub-management-kpis p{display:grid;margin:0;min-width:0}.hub-management-kpis small{font-size:7.5px;letter-spacing:.075em;font-weight:850;color:var(--hub-muted)}.hub-management-kpis strong{font-size:16px;line-height:1.05;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-management-kpis p span{margin-top:3px;color:var(--hub-muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-priority-action{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:12px;padding:12px}.hub-priority-action>div:nth-child(2){display:grid;min-width:0}.hub-priority-action strong{font-size:12px}.hub-priority-action span{margin-top:3px;color:var(--hub-muted);font-size:10px;line-height:1.45}
.hub-quick-links{display:grid;border:1px solid var(--hub-line);border-radius:12px;overflow:hidden}.hub-quick-links>a{display:grid;grid-template-columns:32px minmax(0,1fr) 22px;gap:9px;align-items:center;padding:10px;border-top:1px solid var(--hub-line)}.hub-quick-links>a:first-child{border-top:0}.hub-quick-links>a:hover{background:var(--hub-surface-2)}.hub-quick-links>a>svg:first-child{width:16px;height:16px;color:var(--hub-icon)}.hub-quick-links>a>span{display:grid}.hub-quick-links strong{font-size:10.5px}.hub-quick-links small{font-size:8.5px;color:var(--hub-muted);margin-top:2px}.hub-quick-links .hub-action-go{color:var(--hub-icon-ink)}
.hub-admin-week-preview{display:grid;border:1px solid var(--hub-line);border-radius:12px;overflow:hidden}.hub-admin-week-line{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(110px,.55fr);gap:10px;align-items:center;padding:10px;border-top:1px solid var(--hub-line)}.hub-admin-week-line:first-child{border-top:0}.hub-admin-week-line.is-complete{background:var(--hub-surface-2)}.hub-week-badge{width:38px;height:32px;border-radius:8px;background:var(--hub-icon-soft);color:var(--hub-icon-ink);display:grid;place-items:center;font-size:9px;font-weight:850}.hub-admin-week-line>div{display:grid;min-width:0}.hub-admin-week-line>div:nth-child(2) strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-admin-week-line>div:nth-child(2) strong span{color:var(--hub-muted);font-weight:550}.hub-admin-week-line small{font-size:8.5px;color:var(--hub-muted);margin-top:2px}.hub-admin-week-line>div:last-child{text-align:right}.hub-admin-week-line>div:last-child strong{font-size:9.5px}
.hub-admin-schedule-list{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden}.hub-admin-schedule-row{display:grid;grid-template-columns:70px minmax(135px,1fr) minmax(135px,1fr) minmax(180px,.9fr) 105px;gap:9px;align-items:end;padding:11px;border-top:1px solid var(--hub-line);background:var(--hub-surface)}.hub-admin-schedule-row:first-child{border-top:0}.hub-admin-schedule-row.is-complete{background:var(--hub-surface-2)}.hub-admin-schedule-row .hub-field{margin:0}.hub-admin-schedule-row .hub-input{min-height:38px;font-size:10px}.hub-admin-schedule-week{display:grid;align-self:center;text-align:center}.hub-admin-schedule-week>small,.hub-admin-schedule-payout>small{font-size:7px;letter-spacing:.08em;color:var(--hub-muted);font-weight:850}.hub-admin-schedule-week>strong{font-size:19px;line-height:1}.hub-admin-schedule-week .hub-status{margin-top:5px;justify-self:center}.hub-admin-schedule-payout{display:grid;align-self:center;text-align:right}.hub-admin-schedule-payout strong{font-size:11px}.hub-admin-schedule-payout span{font-size:8px;color:var(--hub-muted);margin-top:2px}.hub-form-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.hub-form-footer>span{font-size:9.5px;color:var(--hub-muted)}
.hub-payment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:12px}.hub-payment-summary>div{display:grid;border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:10px;padding:9px 10px}.hub-payment-summary small{font-size:7px;letter-spacing:.075em;color:var(--hub-muted);font-weight:850}.hub-payment-summary strong{font-size:14px;margin-top:2px}.hub-football-member-row{grid-template-columns:34px minmax(180px,1fr) 105px minmax(180px,.75fr) 38px}.hub-football-member-row .hub-avatar{width:32px;height:32px}.hub-football-member-row .hub-avatar img,.hub-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.hub-member-money{display:grid;text-align:right}.hub-member-money>strong{font-size:10.5px}.hub-member-money .hub-status{justify-self:end;margin-top:3px}.hub-danger-icon{color:var(--hub-red)!important;background:var(--hub-red-soft)!important;border-color:transparent!important}.hub-danger-icon svg{color:currentColor!important}
.hub-winner-history{display:grid;border:1px solid var(--hub-line);border-radius:12px;overflow:hidden}.hub-winner-row{display:grid;grid-template-columns:45px minmax(0,1fr) 120px;gap:10px;align-items:center;padding:11px;border-top:1px solid var(--hub-line)}.hub-winner-row:first-child{border-top:0}.hub-winner-row>div{display:grid;min-width:0}.hub-winner-row>div:nth-child(2)>strong{font-size:11px}.hub-winner-row>div:nth-child(2)>span{font-size:9px;color:var(--hub-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-winner-row>div:last-child{text-align:right}.hub-winner-row>div:last-child>strong{font-size:11px}.hub-winner-row>div:last-child>small{font-size:8px;color:var(--hub-muted);margin-top:2px}.hub-score-entry{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hub-settings-stat{display:grid;align-content:center;border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:10px;padding:10px}.hub-settings-stat small{font-size:7px;letter-spacing:.075em;color:var(--hub-muted);font-weight:850}.hub-settings-stat strong{font-size:16px;margin-top:2px}.hub-settings-stat span{font-size:8.5px;color:var(--hub-muted);margin-top:2px}.hub-input-money{position:relative}.hub-input-money>span{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--hub-muted);z-index:2}.hub-input-money .hub-input{padding-left:23px}
.hub-football-player-list{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden}.hub-football-player-card{display:grid;grid-template-columns:35px 34px minmax(0,1fr) 100px 100px;gap:10px;align-items:center;padding:11px 12px;border-top:1px solid var(--hub-line)}.hub-football-player-card:first-child{border-top:0}.hub-football-player-card.is-me{background:var(--hub-icon-soft)}.hub-football-player-copy{display:grid;min-width:0}.hub-football-player-copy strong{font-size:11px}.hub-football-player-copy span{font-size:9px;color:var(--hub-muted);margin-top:2px}.hub-football-player-stat{display:grid;text-align:right}.hub-football-player-stat strong{font-size:11px}.hub-football-player-stat span{font-size:8px;color:var(--hub-muted);margin-top:2px}

/* Scoring audit */
.hub-report-filter{display:flex;align-items:flex-end;gap:8px;border:1px solid var(--hub-line);background:var(--hub-surface);border-radius:13px;padding:10px;margin-bottom:12px}.hub-report-filter .hub-field{margin:0;min-width:160px}.hub-report-filter .hub-btn{min-height:39px}.hub-proof-person{display:flex;align-items:center;gap:10px}.hub-proof-person .hub-avatar{width:42px;height:42px}.hub-proof-person h2{margin:1px 0;font-size:17px}.hub-proof-person p{margin:0;color:var(--hub-muted);font-size:9px}.hub-proof-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:14px}.hub-proof-summary>div{display:grid;border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:10px;padding:10px}.hub-proof-summary small{font-size:7px;letter-spacing:.075em;color:var(--hub-muted);font-weight:850}.hub-proof-summary strong{font-size:15px;margin-top:2px}.hub-proof-races{display:grid;gap:9px}.hub-proof-race{border:1px solid var(--hub-line);border-radius:12px;overflow:hidden}.hub-proof-race>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;background:var(--hub-surface-2);border-bottom:1px solid var(--hub-line)}.hub-proof-race>header>div:first-child{display:grid}.hub-proof-race>header small{font-size:7.5px;letter-spacing:.06em;color:var(--hub-muted);font-weight:800}.hub-proof-race>header strong{font-size:11.5px;margin-top:2px}.hub-proof-race>header span{font-size:8.5px;color:var(--hub-muted);margin-top:2px}.hub-proof-points{display:grid;text-align:right}.hub-proof-points strong{font-size:18px}.hub-proof-drivers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--hub-line);gap:1px}.hub-proof-drivers>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:8px;align-items:center;background:var(--hub-surface);padding:10px}.hub-driver-number{width:32px;height:32px;border-radius:8px;background:var(--hub-nav);color:#fff;display:grid;place-items:center;font-size:8.5px;font-weight:850}.hub-proof-drivers p{display:grid;margin:0;min-width:0}.hub-proof-drivers p strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-proof-drivers p small{font-size:7.5px;color:var(--hub-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-proof-driver-result{text-align:right}.hub-audit-list{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden}.hub-audit-row{display:grid;grid-template-columns:36px 34px minmax(0,1fr) 50px 85px 24px;gap:9px;align-items:center;padding:10px 11px;border-top:1px solid var(--hub-line)}.hub-audit-row:first-child{border-top:0}.hub-audit-row:hover{background:var(--hub-surface-2)}.hub-audit-row>div:nth-child(3){display:grid;min-width:0}.hub-audit-row>div:nth-child(3)>strong{font-size:10.5px}.hub-audit-row>div:nth-child(3)>span{font-size:8.5px;color:var(--hub-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-audit-move{display:flex;align-items:center;justify-content:center;gap:2px;color:var(--hub-muted);font-size:9px}.hub-audit-move svg{width:12px;height:12px}.hub-audit-move.is-up{color:var(--hub-green)}.hub-audit-move.is-down{color:var(--hub-red)}.hub-audit-points{display:grid;text-align:right}.hub-audit-points strong{font-size:11px}.hub-audit-points span{font-size:7.5px;color:var(--hub-muted)}.hub-generated-hash{margin-top:18px;padding-top:16px;border-top:1px solid var(--hub-line)}.hub-generated-hash .hub-copy-row{align-items:stretch}.hub-generated-hash .hub-copy-row textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;line-height:1.45}

@media(max-width:1050px){
  .hub-management-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hub-admin-schedule-row{grid-template-columns:60px 1fr 1fr}.hub-admin-schedule-row .hub-field:nth-of-type(3){grid-column:2/4}.hub-admin-schedule-payout{grid-column:2/4;text-align:left}
  .hub-proof-drivers{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-proof-drivers>div:last-child:nth-child(odd){grid-column:1/-1}
  .hub-football-member-row{grid-template-columns:34px minmax(0,1fr) 100px}.hub-football-member-row .hub-inline-form{grid-column:2/4}.hub-football-member-row>form:last-child{grid-column:3;grid-row:1}
}
@media(max-width:760px){
  .hub-page-intro{align-items:flex-start;flex-direction:column}.hub-page-intro .hub-page-actions{width:100%}.hub-page-intro .hub-page-actions .hub-btn{flex:1}
  .hub-manage-tabs{margin-left:-2px;margin-right:-2px;border-radius:10px}.hub-management-kpis{grid-template-columns:1fr 1fr}.hub-priority-action{grid-template-columns:38px minmax(0,1fr)}.hub-priority-action>form,.hub-priority-action>.hub-btn{grid-column:1/-1;width:100%;justify-content:center}
  .hub-admin-week-line{grid-template-columns:40px minmax(0,1fr)}.hub-admin-week-line>div:last-child{grid-column:2;text-align:left}
  .hub-admin-schedule-row{grid-template-columns:52px minmax(0,1fr)}.hub-admin-schedule-row .hub-field{grid-column:2}.hub-admin-schedule-row .hub-field:nth-of-type(3),.hub-admin-schedule-payout{grid-column:2}.hub-form-footer{align-items:stretch;flex-direction:column}.hub-form-footer .hub-btn{width:100%;justify-content:center}
  .hub-payment-summary{grid-template-columns:1fr 1fr}.hub-payment-summary>div:last-child{grid-column:1/-1}.hub-score-entry{grid-template-columns:1fr}
  .hub-football-player-card{grid-template-columns:30px 32px minmax(0,1fr) 80px}.hub-football-player-stat:last-child{grid-column:3/5;text-align:left}.hub-football-player-card.is-me .hub-football-player-stat:last-child{display:grid}
  .hub-report-filter{align-items:stretch;flex-direction:column}.hub-report-filter .hub-field{min-width:0}.hub-proof-summary{grid-template-columns:1fr 1fr}.hub-proof-race>header{align-items:flex-start}.hub-proof-drivers{grid-template-columns:1fr}.hub-proof-drivers>div:last-child:nth-child(odd){grid-column:auto}.hub-audit-row{grid-template-columns:30px 32px minmax(0,1fr) 62px 22px}.hub-audit-move{display:none}.hub-audit-points{grid-column:4}.hub-audit-row>.hub-action-go{grid-column:5}.hub-audit-row>div:nth-child(3)>span{white-space:normal}
}
@media(max-width:480px){
  .hub-management-kpis{grid-template-columns:1fr}.hub-payment-summary{grid-template-columns:1fr}.hub-payment-summary>div:last-child{grid-column:auto}.hub-winner-row{grid-template-columns:40px minmax(0,1fr)}.hub-winner-row>div:last-child{grid-column:2;text-align:left}.hub-football-player-card{grid-template-columns:28px 32px minmax(0,1fr)}.hub-football-player-card .hub-football-player-stat{grid-column:3;text-align:left}.hub-proof-summary{grid-template-columns:1fr 1fr}.hub-audit-row{grid-template-columns:28px 32px minmax(0,1fr) 22px}.hub-audit-points{grid-column:3;text-align:left}.hub-audit-row>.hub-action-go{grid-column:4;grid-row:1/3}
}

@media print{
  .hub-header,.hub-mobile-nav,.hub-back-row,.hub-page-actions,.hub-report-filter,.hub-footer{display:none!important}
  .hub-main{padding:0!important}.hub-shell{width:100%!important;max-width:none!important}.hub-card,.hub-proof-race{box-shadow:none!important;break-inside:avoid}
}

/* ============================================================
   Complete internal operations UI — Pool Hub native
   ============================================================ */
.hub-operation-grid,.hub-report-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.hub-operation-card{display:grid;grid-template-columns:42px minmax(0,1fr) 24px;gap:11px;align-items:center;min-height:104px;padding:13px;border:1px solid var(--hub-line);border-radius:13px;background:var(--hub-surface);box-shadow:0 1px 2px rgba(18,25,25,.025);transition:.15s ease}
.hub-operation-card:hover{transform:translateY(-1px);border-color:#aebbb9;box-shadow:0 8px 24px rgba(18,25,25,.055)}
.hub-operation-card .hub-card-icon{margin:0;width:40px;height:40px;border-radius:10px}
.hub-operation-card>div{display:grid;min-width:0}.hub-operation-card small{font-size:7.5px;letter-spacing:.08em;color:var(--hub-muted);font-weight:850}.hub-operation-card strong{font-size:12.5px;margin-top:2px}.hub-operation-card p{margin:3px 0 0;font-size:9.5px;line-height:1.45;color:var(--hub-muted)}
.hub-operation-card .hub-action-go{color:var(--hub-icon-ink);display:grid;place-items:center}.hub-operation-card .hub-action-go svg{width:16px;height:16px}
.hub-race-snapshot{display:grid;margin:14px 0}.hub-race-snapshot small{font-size:7px;letter-spacing:.08em;font-weight:850;color:var(--hub-muted)}.hub-race-snapshot strong{font-size:15px;margin-top:4px;line-height:1.25}.hub-race-snapshot span,.hub-race-snapshot time{font-size:9.5px;color:var(--hub-muted);margin-top:4px}.hub-race-snapshot time{font-weight:720;color:var(--hub-ink-2)}

.hub-admin-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:13px;align-items:start}.hub-admin-workspace.has-editor{grid-template-columns:minmax(0,1fr) 340px}.hub-admin-workspace>section{min-width:0}.hub-editor-card{position:sticky;top:88px;padding:14px}
.hub-admin-toolbar-native{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.hub-search-control{position:relative;display:flex;align-items:center;flex:1;max-width:470px}.hub-search-control>svg{position:absolute;left:11px;width:15px;height:15px;color:var(--hub-icon);pointer-events:none}.hub-search-control input{width:100%;min-height:39px;border:1px solid var(--hub-line-strong);border-radius:10px;background:var(--hub-surface);color:var(--hub-ink);font:inherit;font-size:11px;padding:8px 11px 8px 34px;outline:none}.hub-search-control input:focus{border-color:var(--hub-aqua-strong);box-shadow:0 0 0 3px rgba(84,217,211,.16)}
.hub-row-actions{display:flex;justify-content:flex-end;gap:5px}.hub-row-actions form{margin:0}.hub-row-actions .hub-icon-btn{width:33px;height:33px;background:var(--hub-surface);border-color:var(--hub-line)}.hub-row-actions .hub-icon-btn:hover{background:var(--hub-icon-soft);color:var(--hub-icon-ink)}

.hub-driver-admin-list,.hub-race-admin-list{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden;background:var(--hub-surface)}
.hub-driver-admin-row{display:grid;grid-template-columns:46px minmax(0,1fr) 75px 75px 74px;gap:10px;align-items:center;padding:10px 11px;border-top:1px solid var(--hub-line);min-height:68px}.hub-driver-admin-row:first-child{border-top:0}.hub-driver-admin-row:hover{background:var(--hub-surface-2)}
.hub-driver-admin-photo{width:42px;height:42px;border-radius:10px;overflow:hidden;background:var(--hub-icon-soft);color:var(--hub-icon-ink);display:grid;place-items:center}.hub-driver-admin-photo img{width:100%;height:100%;object-fit:cover}.hub-driver-admin-photo svg{width:18px;height:18px}
.hub-driver-admin-main{display:grid;min-width:0}.hub-driver-admin-main small{font-size:7px;letter-spacing:.07em;color:var(--hub-muted);font-weight:850}.hub-driver-admin-main strong{font-size:11.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-admin-main span{font-size:9px;color:var(--hub-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-admin-points{display:grid;text-align:right}.hub-driver-admin-points strong{font-size:12px}.hub-driver-admin-points span{font-size:7.5px;color:var(--hub-muted);margin-top:1px}

.hub-editor-head{display:grid;grid-template-columns:40px minmax(0,1fr) 32px;gap:9px;align-items:center;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--hub-line)}.hub-editor-head .hub-card-icon{margin:0;width:38px;height:38px}.hub-editor-head>div:nth-child(2){display:grid;min-width:0}.hub-editor-head small{font-size:7px;letter-spacing:.08em;color:var(--hub-muted);font-weight:850}.hub-editor-head h2{font-size:14px;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-editor-head>a:last-child{font-size:20px;line-height:1;color:var(--hub-muted)}
.hub-toggle-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:flex-start;border:1px solid var(--hub-line);border-radius:10px;padding:10px;background:var(--hub-surface-2);cursor:pointer}.hub-toggle-row input{width:16px;height:16px;margin:1px 0 0;accent-color:var(--hub-aqua)}.hub-toggle-row span{display:grid}.hub-toggle-row strong{font-size:10.5px}.hub-toggle-row small{font-size:8.5px;line-height:1.4;color:var(--hub-muted);margin-top:2px}
.hub-editor-secondary-actions{padding-top:12px;margin-top:12px;border-top:1px solid var(--hub-line)}.hub-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding:11px;border:1px solid #efcaca;border-radius:10px;background:var(--hub-red-soft)}.hub-danger-zone>div{display:grid;min-width:0}.hub-danger-zone strong{font-size:10px;color:#8f2c2c}.hub-danger-zone span{font-size:8px;line-height:1.4;color:#a85b5b;margin-top:2px}

.hub-race-admin-row{display:grid;grid-template-columns:54px minmax(0,1fr) 130px 74px;gap:11px;align-items:center;padding:11px;border-top:1px solid var(--hub-line);min-height:76px}.hub-race-admin-row:first-child{border-top:0}.hub-race-admin-row:hover{background:var(--hub-surface-2)}.hub-race-admin-row.is-complete{background:color-mix(in srgb,var(--hub-surface-2) 70%,var(--hub-surface))}
.hub-race-week{display:grid;text-align:center;border-right:1px solid var(--hub-line);padding-right:10px}.hub-race-week small{font-size:6.5px;letter-spacing:.08em;color:var(--hub-muted);font-weight:850}.hub-race-week strong{font-size:17px;line-height:1;margin-top:3px}.hub-race-admin-main{display:grid;min-width:0}.hub-race-admin-main small{font-size:7px;letter-spacing:.07em;color:var(--hub-muted);font-weight:850}.hub-race-admin-main strong{font-size:11.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-race-admin-main span{font-size:9px;color:var(--hub-muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-race-status-stack{display:grid;justify-items:start}.hub-race-status-stack small{font-size:7.5px;color:var(--hub-muted);margin-top:3px}

.hub-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hub-import-card{display:flex;flex-direction:column}.hub-import-card .hub-form-stack{margin-top:14px;flex:1}.hub-import-card .hub-form-stack>.hub-btn{margin-top:auto}
.hub-file-control{position:relative;display:block;cursor:pointer}.hub-file-control input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.hub-file-control>span{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;align-items:center;border:1px dashed var(--hub-line-strong);border-radius:10px;padding:10px;background:var(--hub-surface-2)}.hub-file-control svg{grid-row:1/3;width:18px;height:18px;color:var(--hub-icon)}.hub-file-control strong{font-size:10px}.hub-file-control small{font-size:8px;color:var(--hub-muted)}.hub-file-control:hover>span{border-color:var(--hub-aqua-strong);background:var(--hub-icon-soft)}
.hub-import-history{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden;background:var(--hub-surface)}.hub-import-row{display:grid;grid-template-columns:38px minmax(0,1fr) 94px 22px;gap:10px;align-items:center;padding:11px;border-top:1px solid var(--hub-line)}.hub-import-row:first-child{border-top:0}.hub-import-row:hover{background:var(--hub-surface-2)}.hub-import-row .hub-card-icon{width:36px;height:36px;margin:0}.hub-import-main{display:grid;min-width:0}.hub-import-main small{font-size:7px;letter-spacing:.06em;color:var(--hub-muted);font-weight:800}.hub-import-main strong{font-size:11px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-import-main span{font-size:8.5px;color:var(--hub-muted);margin-top:2px}.hub-import-row .hub-action-go{color:var(--hub-icon-ink)}

.hub-import-review-list{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden;background:var(--hub-surface)}.hub-import-review-row{display:grid;grid-template-columns:74px minmax(170px,1fr) 80px 100px minmax(200px,1.15fr) minmax(150px,.8fr) 116px;gap:8px;align-items:end;padding:10px;border-top:1px solid var(--hub-line)}.hub-import-review-row:first-child{border-top:0}.hub-import-review-row.needs-attention{background:var(--hub-amber-soft)}.hub-import-review-row .hub-field{margin:0;min-width:0}.hub-import-review-row .hub-input,.hub-import-review-row .hub-select{width:100%;min-width:0;min-height:36px;padding:7px 8px;font-size:10px}.hub-import-position{display:grid;gap:5px;min-width:0}.hub-import-position small{font-size:7px;font-weight:850;letter-spacing:.07em;color:var(--hub-muted)}.hub-import-position .hub-input{text-align:center;font-weight:800}

.hub-report-winners{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.hub-report-winners article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center;border:1px solid var(--hub-line);border-radius:12px;background:var(--hub-surface);padding:10px}.hub-report-winners .hub-card-icon{width:36px;height:36px;margin:0}.hub-report-winners article>div{display:grid;min-width:0}.hub-report-winners small{font-size:7px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-report-winners strong{font-size:10.5px;margin-top:2px}.hub-report-winners span{font-size:8px;color:var(--hub-muted);margin-top:2px}

/* Keep every internal icon in the same Pool Hub family. Sport is conveyed by shape/content, not color. */
.hub-operation-card .hub-card-icon,.hub-driver-admin-photo,.hub-import-row .hub-card-icon,.hub-report-winners .hub-card-icon,.hub-editor-head .hub-card-icon{background:var(--hub-icon-soft)!important;color:var(--hub-icon-ink)!important}

@media(max-width:1050px){
  .hub-admin-workspace.has-editor{grid-template-columns:minmax(0,1fr) 310px}
  .hub-driver-admin-row{grid-template-columns:44px minmax(0,1fr) 70px 70px}.hub-driver-admin-row>.hub-status{display:none}
  .hub-import-review-row{grid-template-columns:68px 90px minmax(180px,1fr) 120px}.hub-import-position{grid-column:1}.hub-import-driver{grid-column:2/5}.hub-import-car{grid-column:1}.hub-import-points{grid-column:2}.hub-import-roster{grid-column:3/5}.hub-import-credit{grid-column:1/4}.hub-import-status{grid-column:4}
}
@media(max-width:820px){
  .hub-operation-grid,.hub-report-library,.hub-import-grid{grid-template-columns:1fr}
  .hub-admin-workspace.has-editor{grid-template-columns:1fr}.hub-editor-card{position:static;grid-row:1}
  .hub-race-admin-row{grid-template-columns:48px minmax(0,1fr) 72px}.hub-race-status-stack{display:none}
  .hub-report-winners{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .hub-admin-toolbar-native{align-items:stretch}.hub-search-control{max-width:none}.hub-admin-toolbar-native .hub-count-pill{display:none}
  .hub-driver-admin-row{grid-template-columns:40px minmax(0,1fr) 62px;gap:8px;padding:10px}.hub-driver-admin-photo{width:38px;height:38px}.hub-driver-admin-points{grid-column:3;grid-row:1}.hub-driver-admin-row>.hub-status{display:none}.hub-driver-admin-row>.hub-row-actions{grid-column:2/4;justify-content:flex-start;padding-top:7px;border-top:1px solid var(--hub-line)}
  .hub-race-admin-row{grid-template-columns:42px minmax(0,1fr);gap:9px}.hub-race-week{padding-right:7px}.hub-race-admin-row>.hub-row-actions{grid-column:2;justify-content:flex-start;padding-top:7px;border-top:1px solid var(--hub-line)}
  .hub-import-row{grid-template-columns:36px minmax(0,1fr) 22px}.hub-import-row>.hub-status{grid-column:2;justify-self:start}.hub-import-row .hub-action-go{grid-column:3;grid-row:1/3}
  .hub-import-review-list{border:0;overflow:visible;background:transparent;gap:9px}.hub-import-review-row{grid-template-columns:64px minmax(0,1fr) 110px;gap:8px;border:1px solid var(--hub-line);border-radius:12px;background:var(--hub-surface);padding:10px}.hub-import-review-row:first-child{border-top:1px solid var(--hub-line)}.hub-import-position{grid-column:1}.hub-import-driver{grid-column:2/4}.hub-import-car{grid-column:1}.hub-import-points{grid-column:2}.hub-import-status{grid-column:3}.hub-import-roster,.hub-import-credit{grid-column:1/4!important}
  .hub-report-winners{grid-template-columns:1fr}.hub-danger-zone{align-items:flex-start;flex-direction:column}.hub-danger-zone .hub-btn{width:100%}
}
@media(max-width:430px){
  .hub-operation-card{grid-template-columns:38px minmax(0,1fr) 20px;padding:11px;min-height:96px}.hub-operation-card .hub-card-icon{width:36px;height:36px}.hub-operation-card p{font-size:8.8px}
  .hub-editor-card{padding:12px}.hub-editor-head{grid-template-columns:36px minmax(0,1fr) 30px}.hub-editor-head .hub-card-icon{width:34px;height:34px}
  .hub-import-review-row{grid-template-columns:70px minmax(0,1fr)}.hub-import-position{grid-column:1}.hub-import-driver{grid-column:2}.hub-import-car{grid-column:1}.hub-import-points{grid-column:2}.hub-import-roster,.hub-import-credit,.hub-import-status{grid-column:1/3!important}
}

/* ---------------------------------------------------------
   Account recovery + legal pages — Pool Hub native
   --------------------------------------------------------- */
.auth-recovery-card{width:min(100%,500px)}
.auth-code-fieldset{border:0;padding:0;margin:0;display:grid;gap:8px}
.auth-code-fieldset legend{font-size:10px;font-weight:750;color:var(--hub-ink);margin-bottom:2px}
.auth-code-boxes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.auth-code-input{width:100%;height:58px;border:1px solid var(--hub-line-strong);border-radius:12px;background:var(--hub-surface);color:var(--hub-ink);font:800 21px/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center;outline:0;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.auth-code-input:focus{border-color:var(--hub-aqua);box-shadow:0 0 0 3px var(--hub-aqua-soft)}
.auth-code-input.is-invalid,.hub-input.is-invalid{border-color:var(--hub-red)!important;box-shadow:0 0 0 3px rgba(214,75,75,.08)!important}
.auth-field-error{display:block;color:var(--hub-red);font-size:10px;text-align:center}
.auth-code-boxes.is-shaking{animation:hubShake .32s ease-in-out}
@keyframes hubShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-3px)}}
.auth-password-control{position:relative}
.auth-password-control .hub-input{padding-right:46px;width:100%}
.auth-password-control button{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:var(--hub-muted);display:grid;place-items:center;cursor:pointer}
.auth-password-control button:hover{background:var(--hub-surface-2);color:var(--hub-aqua-ink)}
.auth-password-control button svg{width:17px;height:17px}
.auth-card .hub-alert{margin:0 0 14px}
.auth-foot a{display:inline-flex;align-items:center;gap:5px}.auth-foot a svg{width:13px;height:13px}

.pool-legal-shell{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:64px 0 58px}
.pool-legal-heading{max-width:730px;margin-bottom:28px}
.pool-legal-heading h1{font-size:clamp(38px,5vw,62px);line-height:.98;letter-spacing:-.055em;margin:13px 0 14px;color:var(--hub-ink)}
.pool-legal-heading>p{font-size:15px;line-height:1.65;color:var(--hub-muted);margin:0;max-width:670px}
.pool-legal-meta{display:inline-flex;margin-top:15px;border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:999px;padding:6px 9px;color:var(--hub-muted);font-size:10px;font-weight:700}
.pool-legal-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;align-items:start}
.pool-legal-nav{position:sticky;top:92px;display:grid;gap:2px;border:1px solid var(--hub-line);border-radius:14px;background:var(--hub-surface);padding:10px;box-shadow:var(--hub-shadow)}
.pool-legal-nav strong{font-size:9px;text-transform:uppercase;letter-spacing:.075em;color:var(--hub-muted);padding:7px 9px 8px}
.pool-legal-nav a{padding:8px 9px;border-radius:8px;font-size:10.5px;color:var(--hub-muted);font-weight:650}
.pool-legal-nav a:hover{background:var(--hub-aqua-soft);color:var(--hub-aqua-ink)}
.pool-legal-card{border:1px solid var(--hub-line);border-radius:18px;background:var(--hub-surface);box-shadow:var(--hub-shadow);padding:4px 30px}
.pool-legal-card section{position:relative;padding:27px 0 28px 48px;border-top:1px solid var(--hub-line);scroll-margin-top:92px}
.pool-legal-card section:first-child{border-top:0}
.pool-legal-card section>span{position:absolute;left:0;top:28px;width:30px;height:30px;border-radius:9px;background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);display:grid;place-items:center;font-size:9px;font-weight:800}
.pool-legal-card h2{font-size:17px;letter-spacing:-.02em;margin:0 0 8px;color:var(--hub-ink)}
.pool-legal-card p,.pool-legal-card li{font-size:12.5px;line-height:1.72;color:var(--hub-muted)}
.pool-legal-card p{margin:0 0 9px}.pool-legal-card p:last-child{margin-bottom:0}
.pool-legal-card ul{margin:7px 0 0;padding-left:18px;display:grid;gap:6px}
.pool-legal-card a{color:var(--hub-aqua-ink);font-weight:700;text-decoration:underline;text-decoration-color:rgba(47,197,191,.35);text-underline-offset:2px}

@media(max-width:760px){
  .auth-code-boxes{gap:5px}.auth-code-input{height:52px;border-radius:10px;font-size:19px}
  .pool-legal-shell{width:calc(100% - 24px);padding:38px 0 40px}.pool-legal-layout{grid-template-columns:1fr;gap:12px}.pool-legal-nav{position:static;display:flex;overflow-x:auto;white-space:nowrap;padding:7px}.pool-legal-nav strong{display:none}.pool-legal-nav a{flex:0 0 auto}.pool-legal-card{padding:3px 18px}.pool-legal-card section{padding:23px 0 24px 42px}.pool-legal-card section>span{top:24px}.pool-legal-heading h1{font-size:40px}.pool-legal-heading>p{font-size:13.5px}
}
@media(max-width:430px){.auth-code-input{height:48px;font-size:17px}.auth-code-boxes{gap:4px}.pool-legal-card{padding:2px 14px}.pool-legal-card section{padding-left:39px}.pool-legal-card p,.pool-legal-card li{font-size:12px}}
@media(prefers-reduced-motion:reduce){.auth-code-boxes.is-shaking{animation:none}}

/* --------------------------------------------------------------------------
   Mobile QA pass 7 — restore sport identity, fix management cards, and
   tighten iPhone layouts without changing the Pool Hub product language.
   -------------------------------------------------------------------------- */
:root{
  --sport-nascar:#f2b64a;
  --sport-nascar-soft:#fff3d9;
  --sport-nascar-ink:#75500a;
  --sport-football:#63d8b2;
  --sport-football-soft:#e2f7f0;
  --sport-football-ink:#145a4c;
  --sport-basketball:#efad68;
  --sport-basketball-soft:#fff0e1;
  --sport-basketball-ink:#754016;
  --sport-hockey:#83c8ef;
  --sport-hockey-soft:#e6f3fb;
  --sport-hockey-ink:#225779;
}
html[data-theme="dark"]{
  --sport-nascar-soft:#3b301b;
  --sport-nascar-ink:#ffd887;
  --sport-football-soft:#17382f;
  --sport-football-ink:#9cf0d4;
  --sport-basketball-soft:#3f2c1d;
  --sport-basketball-ink:#ffc892;
  --sport-hockey-soft:#1b3342;
  --sport-hockey-ink:#a9dcf8;
}

/* Sport marks carry sport identity. Generic/system icons keep the Hub palette. */
.hub-sport-mark.is-nascar{background:#1d2325!important;color:var(--sport-nascar)!important}
.hub-sport-mark.is-football{background:#173c35!important;color:#7ae4c6!important}
.hub-sport-mark.is-basketball{background:#4a3020!important;color:#f3b26f!important}
.hub-sport-mark.is-hockey{background:#1e3444!important;color:#84c7ef!important}
.hub-action-icon{background:var(--hub-surface-3)!important;color:var(--hub-ink-2)!important}
.hub-card-icon{background:var(--hub-aqua-soft)!important;color:var(--hub-aqua-ink)!important}
.hub-feed-icon{background:var(--hub-surface-2)!important;color:var(--hub-muted)!important}
.hub-empty-icon{background:var(--hub-surface-2)!important;color:var(--hub-muted)!important}

/* Inside an individual pool, supporting icons use that pool's accent. */
.hub-pool-theme.is-football{--hub-icon:var(--sport-football);--hub-icon-soft:var(--sport-football-soft);--hub-icon-ink:var(--sport-football-ink)}
.hub-pool-theme.is-nascar{--hub-icon:var(--sport-nascar);--hub-icon-soft:var(--sport-nascar-soft);--hub-icon-ink:var(--sport-nascar-ink)}
.hub-pool-theme.is-basketball{--hub-icon:var(--sport-basketball);--hub-icon-soft:var(--sport-basketball-soft);--hub-icon-ink:var(--sport-basketball-ink)}
.hub-pool-theme.is-hockey{--hub-icon:var(--sport-hockey);--hub-icon-soft:var(--sport-hockey-soft);--hub-icon-ink:var(--sport-hockey-ink)}
.hub-pool-theme .hub-action-icon,
.hub-pool-theme .hub-card-icon,
.hub-pool-theme .hub-feed-icon,
.hub-pool-theme .hub-empty-icon{background:var(--hub-icon-soft)!important;color:var(--hub-icon-ink)!important}
.hub-pool-theme .hub-contest-tabs a.is-active:after{background:var(--hub-icon)}
.hub-pool-theme.is-football .hub-contest-hero:after{background:radial-gradient(circle,rgba(99,216,178,.2),rgba(99,216,178,0) 68%)}
.hub-pool-theme.is-nascar .hub-contest-hero:after{background:radial-gradient(circle,rgba(242,182,74,.18),rgba(242,182,74,0) 68%)}

/* Platform management: actual card layout instead of unstyled inline rows. */
.hub-filter-row>a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border:1px solid var(--hub-line);border-radius:999px;background:var(--hub-surface);color:var(--hub-muted);font-size:11.5px;font-weight:750;white-space:nowrap}
.hub-filter-row>a:hover{color:var(--hub-ink);border-color:var(--hub-line-strong);background:var(--hub-surface-2)}
.hub-filter-row>a.is-active{background:var(--hub-nav);border-color:var(--hub-nav);color:#fff}
.hub-admin-contest-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.hub-admin-contest-row{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 24px;gap:11px;align-items:center;min-height:94px;padding:14px;background:var(--hub-surface);border:1px solid var(--hub-line);border-radius:14px;box-shadow:0 1px 2px rgba(18,25,25,.035);overflow:hidden;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.hub-admin-contest-row:hover{border-color:var(--hub-line-strong);transform:translateY(-1px);box-shadow:0 8px 24px rgba(18,25,25,.06)}
.hub-admin-contest-row>.hub-sport-mark{width:42px;height:42px}
.hub-admin-contest-row>svg:last-child{width:17px;height:17px;color:var(--hub-muted)}
.hub-admin-contest-main{display:grid;gap:8px;min-width:0}
.hub-admin-contest-main>div:first-child{display:grid;min-width:0}
.hub-admin-contest-main small{color:var(--hub-muted);font-size:9px;font-weight:750;letter-spacing:.055em;text-transform:uppercase}
.hub-admin-contest-main strong{margin-top:2px;font-size:13.5px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-admin-contest-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.hub-admin-contest-meta>span:not(.hub-status){display:inline-flex;align-items:center;min-height:25px;padding:4px 7px;border-radius:999px;background:var(--hub-surface-2);border:1px solid var(--hub-line);color:var(--hub-muted);font-size:9.5px;font-weight:650}

/* Segmented tabs used by Activity and similar two-view screens. */
.hub-tabs>a{border:0;background:transparent;border-radius:7px;min-height:32px;padding:6px 13px;color:var(--hub-muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.hub-tabs>a:hover{color:var(--hub-ink)}
.hub-tabs>a.is-active{background:var(--hub-nav);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.hub-tabs-two{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.hub-feed-page{display:grid;gap:12px}
.hub-feed-page>.hub-activity-list>.hub-empty{padding:34px 20px}

/* Champion empty state should look intentional instead of exposing a raw SVG. */
.hub-champion-hero h2{margin:4px 0 5px;font-size:26px;line-height:1.08;letter-spacing:-.03em;color:#fff}
.hub-trophy-empty{display:grid;justify-items:start;gap:9px;margin-top:14px;padding:16px;border:1px dashed var(--hub-line-strong);border-radius:13px;background:var(--hub-surface-2);color:var(--hub-muted)}
.hub-trophy-empty>svg{width:34px;height:34px;padding:8px;border-radius:10px;background:var(--hub-aqua-soft);color:var(--hub-aqua-ink)}
.hub-trophy-empty p{margin:0;color:var(--hub-ink);font-size:12px;font-weight:650}

/* Discover cards: readable metric pills and commissioner/action row. */
.hub-discover-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important}
.hub-discover-stat{display:flex;align-items:baseline;justify-content:center;gap:3px;min-width:0;text-align:center;white-space:nowrap}
.hub-discover-stat strong{font-size:10.5px;color:var(--hub-ink)}
.hub-discover-stat span{font-size:9px;color:var(--hub-muted)}
.hub-discover-actions{align-items:center}
.hub-discover-commissioner{display:flex;align-items:baseline;gap:4px;min-width:0;color:var(--hub-muted)}
.hub-discover-commissioner strong{font-size:10.5px;color:var(--hub-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.hub-discover-commissioner span{font-size:9px}

/* Individual Pool hero: icon + copy + actions, without crushing the title on mobile. */
.hub-contest-hero-main{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:start;gap:13px;padding-bottom:20px}
.hub-contest-hero-title{display:grid!important;gap:0!important;min-width:0}
.hub-contest-hero-title .hub-contest-labels{margin:1px 0 3px}
.hub-contest-hero-title h1{min-width:0;overflow-wrap:anywhere}
.hub-contest-hero-title p{max-width:680px;line-height:1.5}
.hub-contest-hero-actions{align-self:center}
.hub-personal-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}

/* Keep mobile bottom navigation from covering the final card in Safari. */
@media(max-width:860px){
  .hub-main{padding-bottom:calc(132px + env(safe-area-inset-bottom))}
}

@media(max-width:760px){
  .hub-admin-contest-list{grid-template-columns:1fr}
  .hub-admin-contest-row{min-height:88px;padding:12px}
}

@media(max-width:600px){
  .hub-page-head{gap:11px}
  .hub-page-actions{width:100%}
  .hub-page-actions>.hub-btn:only-child{width:100%}
  .hub-manage-nav{margin-bottom:16px;padding:4px;scroll-snap-type:x proximity}
  .hub-manage-nav a{scroll-snap-align:start;min-height:36px;padding:6px 10px}
  .hub-filter-row{gap:6px}
  .hub-filter-row>a{min-height:32px;padding:5px 10px;font-size:10.5px}
  .hub-admin-contest-row{grid-template-columns:40px minmax(0,1fr) 20px;gap:10px;border-radius:13px}
  .hub-admin-contest-row>.hub-sport-mark{width:40px;height:40px}
  .hub-admin-contest-main{gap:7px}
  .hub-admin-contest-main strong{font-size:13px}
  .hub-admin-contest-meta{gap:5px}
  .hub-admin-contest-meta>span:not(.hub-status){font-size:9px}

  .hub-tabs-two{width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hub-tabs-two>a{min-height:36px;padding:6px 8px}
  .hub-feed-page>.hub-activity-list>.hub-empty{padding:28px 16px}

  .hub-champion-hero{align-items:flex-start;gap:14px}
  .hub-champion-hero h2{font-size:22px}
  .hub-champion-hero>div:last-child>span{font-size:10px;color:#aeb8b7}
  .hub-trophy-empty{justify-items:center;text-align:center}

  .hub-discover-metrics{gap:5px!important}
  .hub-discover-stat{padding:5px 6px;font-size:9px}
  .hub-discover-stat strong{font-size:10px}
  .hub-discover-stat span{font-size:8.5px}
  .hub-discover-actions{align-items:stretch;flex-direction:column;gap:9px!important}
  .hub-discover-commissioner{width:100%;justify-content:flex-start;padding:0 2px}
  .hub-discover-commissioner strong{max-width:220px}
  .hub-discover-actions>div:last-child{width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:7px!important}
  .hub-discover-actions>div:last-child>.hub-btn:only-child{grid-column:1/-1;width:100%}
  .hub-discover-actions form,.hub-discover-actions form .hub-btn{width:100%}

  .hub-contest-hero{padding:14px 13px 0}
  .hub-contest-hero-main{grid-template-columns:40px minmax(0,1fr);gap:10px;padding-bottom:14px}
  .hub-contest-hero-main>.hub-sport-mark{width:40px;height:40px}
  .hub-contest-hero-title{grid-column:2}
  .hub-contest-hero-title h1{font-size:23px!important;line-height:1.06;margin:2px 0 5px}
  .hub-contest-hero-title p{font-size:11px!important;line-height:1.45}
  .hub-contest-hero-title .hub-contest-labels{font-size:8.5px;line-height:1.35;letter-spacing:.05em}
  .hub-contest-hero-actions{grid-column:1/-1;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .hub-contest-hero-actions>.hub-btn,.hub-contest-hero-actions>form,.hub-contest-hero-actions>form>.hub-btn{width:100%}
  .hub-contest-hero-actions>.hub-btn:only-child{grid-column:1/-1}
  .hub-contest-tabs{margin:0 -2px;padding-right:18px;scroll-snap-type:x proximity}
  .hub-contest-tabs a{scroll-snap-align:start;padding:10px 10px 11px;font-size:10px}
  .hub-personal-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
  .hub-personal-stats .hub-manage-action{min-height:104px}

  .hub-mobile-nav{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));padding:6px 5px}
}

/* ========================================================================
   Pool Hub final consistency + NASCAR experience pass (2026-08-25)
   ======================================================================== */
:root{
  --hub-ui-icon:#2f6e6b;
  --hub-ui-icon-soft:#e1f3f1;
  --hub-ui-icon-line:#c8e4e1;
  --hub-ui-icon-muted:#72807e;
}
html[data-theme="dark"]{
  --hub-ui-icon:#b2d9d6;
  --hub-ui-icon-soft:#263a39;
  --hub-ui-icon-line:#36504e;
  --hub-ui-icon-muted:#9aa6a5;
}

/* One visual system for pool icon tiles. Sports are identified by content/icon,
   not by switching the application into unrelated sport color palettes. */
.hub-pool-theme,
.hub-pool-theme.is-football,
.hub-pool-theme.is-nascar,
.hub-pool-theme.is-basketball,
.hub-pool-theme.is-hockey{
  --hub-icon:var(--hub-ui-icon);
  --hub-icon-soft:var(--hub-ui-icon-soft);
  --hub-icon-ink:var(--hub-ui-icon);
}
.hub-sport-mark,
.hub-sport-mark.is-football,
.hub-sport-mark.is-nascar,
.hub-sport-mark.is-basketball,
.hub-sport-mark.is-hockey,
.hub-pool-theme .hub-sport-mark,
.hub-pool-theme .hub-action-icon,
.hub-pool-theme .hub-card-icon,
.hub-pool-theme .hub-feed-icon,
.hub-pool-theme .hub-empty-icon,
.hub-action-icon,
.hub-card-icon{
  background:var(--hub-ui-icon-soft)!important;
  color:var(--hub-ui-icon)!important;
  border-color:var(--hub-ui-icon-line)!important;
}
.hub-feed-icon,.hub-empty-icon{color:var(--hub-ui-icon)!important}
.hub-pool-theme .hub-contest-tabs a.is-active:after{background:var(--hub-aqua)!important}
.hub-pool-theme.is-football .hub-contest-hero:after,
.hub-pool-theme.is-nascar .hub-contest-hero:after,
.hub-pool-theme.is-basketball .hub-contest-hero:after,
.hub-pool-theme.is-hockey .hub-contest-hero:after{
  background:radial-gradient(circle,rgba(84,217,211,.13),rgba(84,217,211,0) 68%)!important;
}

/* Header/mobile navigation icons stay neutral. Aqua is an interaction accent,
   not the default stroke color for every icon in the chrome. */
.hub-header .hub-icon-btn svg,
.hub-account-btn>svg,
.hub-menu>a svg,
.hub-menu-item svg{color:#a7b1b0!important}
.hub-mobile-nav a,.hub-mobile-nav a svg{color:#8e9998!important}
.hub-mobile-nav a.is-active{color:#fff!important}
.hub-mobile-nav a.is-active svg{color:#fff!important}

/* NASCAR tabs: purpose-built field/pick/result layouts. */
.hub-tab-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:2px 0 16px}
.hub-tab-intro>div{min-width:0}
.hub-tab-intro h2{margin:5px 0 5px;font-size:23px;line-height:1.08;letter-spacing:-.03em}
.hub-tab-intro p{margin:0;max-width:720px;color:var(--hub-muted);font-size:12.5px;line-height:1.5}

.hub-pick-cycle-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 16px}
.hub-pick-cycle-strip>div{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center;min-height:72px;padding:10px 11px;border:1px solid var(--hub-line);border-radius:12px;background:var(--hub-surface);box-shadow:0 1px 2px rgba(18,25,25,.025)}
.hub-pick-cycle-strip .hub-card-icon{width:36px;height:36px;margin:0;border-radius:10px;display:grid;place-items:center;border:1px solid var(--hub-ui-icon-line)}
.hub-pick-cycle-strip .hub-card-icon svg{width:17px;height:17px}
.hub-pick-cycle-strip p{display:grid;gap:2px;margin:0;min-width:0}
.hub-pick-cycle-strip small{font-size:8px;line-height:1.2;letter-spacing:.065em;color:var(--hub-muted);font-weight:800}
.hub-pick-cycle-strip strong{font-size:11.5px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.hub-lineup-card{overflow:hidden}
.hub-lock-seal{display:inline-flex;align-items:center;gap:5px;margin:0;padding:5px 8px;border-radius:999px;background:var(--hub-surface-2);border:1px solid var(--hub-line);font-size:9px;font-weight:800;color:var(--hub-muted)}
.hub-lock-seal svg{width:12px;height:12px}
.hub-lineup-modern{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.hub-lineup-driver{min-width:0;border:1px solid var(--hub-line);border-radius:12px;background:var(--hub-surface-2);padding:9px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px;align-items:center}
.hub-lineup-photo{width:42px;height:42px;border-radius:10px;overflow:hidden;background:var(--hub-ui-icon-soft);display:grid;place-items:center;color:var(--hub-ui-icon)}
.hub-lineup-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hub-lineup-photo svg{width:17px;height:17px}
.hub-lineup-copy{display:grid;min-width:0}
.hub-lineup-copy small{font-size:7.5px;color:var(--hub-muted);font-weight:800;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-lineup-copy strong{font-size:10.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-lineup-copy span{font-size:8px;color:var(--hub-muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-lineup-points{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;padding-top:7px;border-top:1px solid var(--hub-line)}
.hub-lineup-points strong{font-size:10px}.hub-lineup-points span{font-size:7.5px;color:var(--hub-muted)}

.hub-nascar-pick-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.62fr);gap:12px;align-items:start}
.hub-nascar-group-stack{display:grid;gap:10px}
.hub-nascar-pick-group{padding:0;overflow:hidden}
.hub-nascar-group-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-bottom:1px solid var(--hub-line);background:var(--hub-surface-2)}
.hub-nascar-group-title>div{display:grid;min-width:0}.hub-nascar-group-title span{font-size:7.5px;letter-spacing:.07em;color:var(--hub-muted);font-weight:850}.hub-nascar-group-title h3{margin:2px 0 0;font-size:12px}
.hub-nascar-group-title>strong{max-width:48%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--hub-muted);font-size:9px;font-weight:750}
.hub-nascar-pick-group.has-selection .hub-nascar-group-title>strong{color:var(--hub-ui-icon)}
.hub-driver-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.hub-driver-choice{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:70px;padding:9px 11px;border-top:1px solid var(--hub-line);cursor:pointer;background:var(--hub-surface);transition:background .12s ease,box-shadow .12s ease}
.hub-driver-choice:nth-child(-n+2){border-top:0}
.hub-driver-choice:nth-child(odd){border-right:1px solid var(--hub-line)}
.hub-driver-choice:hover:not(.is-unavailable){background:var(--hub-surface-2)}
.hub-driver-choice.is-selected{background:var(--hub-ui-icon-soft);box-shadow:inset 3px 0 0 var(--hub-ui-icon)}
.hub-driver-choice>input{position:absolute;opacity:0;pointer-events:none}
.hub-driver-choice-photo{width:46px;height:50px;border-radius:9px;overflow:hidden;background:var(--hub-surface-3);display:grid;place-items:center;color:var(--hub-ui-icon)}
.hub-driver-choice-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hub-driver-choice-main{display:grid;min-width:0}.hub-driver-choice-main small{font-size:7.5px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-choice-main strong{font-size:11px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-choice-main span{font-size:8px;color:var(--hub-muted);margin-top:2px}
.hub-choice-check{width:24px;height:24px;border:1px solid var(--hub-line-strong);border-radius:50%;display:grid;place-items:center;color:transparent;background:var(--hub-surface)}
.hub-choice-check svg{width:13px;height:13px}
.hub-driver-choice.is-selected .hub-choice-check{border-color:var(--hub-ui-icon);background:var(--hub-ui-icon);color:#fff}
.hub-driver-choice.is-unavailable{cursor:not-allowed;opacity:.52;background:var(--hub-surface-2)}
.hub-used-chip{font-size:7.5px;white-space:nowrap;padding:4px 6px}
.hub-pick-summary-modern{position:sticky;top:calc(var(--hub-header-h) + 14px);display:grid;gap:10px}
.hub-pick-summary-modern>.hub-card-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;border:1px solid var(--hub-ui-icon-line)}
.hub-pick-summary-modern h3{font-size:14px;margin:0}.hub-pick-summary-modern>p{font-size:10px;color:var(--hub-muted);margin:0 0 3px;line-height:1.5}
.hub-btn-block{width:100%}

.hub-cycle-races{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden;background:var(--hub-surface)}
.hub-cycle-race{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border-top:1px solid var(--hub-line)}
.hub-cycle-race:first-child{border-top:0}.hub-cycle-race>div{display:grid;min-width:0}.hub-cycle-race strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-cycle-race span:not(.hub-status):not(.hub-cycle-week){font-size:8px;color:var(--hub-muted);margin-top:2px}
.hub-cycle-week{width:34px;height:30px;border-radius:8px;background:var(--hub-ui-icon-soft);color:var(--hub-ui-icon);display:grid;place-items:center;font-size:8.5px;font-weight:850}

/* Driver directory */
.hub-driver-browser{display:grid;gap:0}
.hub-driver-filter-row{display:flex;align-items:center;gap:6px;overflow:auto;scrollbar-width:none;margin:0 0 4px;padding:2px 0 5px}
.hub-driver-filter-row::-webkit-scrollbar{display:none}
.hub-driver-filter-row button{border:1px solid var(--hub-line);border-radius:999px;background:var(--hub-surface);color:var(--hub-muted);min-height:32px;padding:5px 10px;font-size:9.5px;font-weight:750;white-space:nowrap;cursor:pointer}
.hub-driver-filter-row button:hover{color:var(--hub-ink);border-color:var(--hub-line-strong)}
.hub-driver-filter-row button.is-active{background:var(--hub-nav);border-color:var(--hub-nav);color:#fff}
.hub-driver-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hub-driver-directory-card{position:relative;display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:center;min-height:88px;border:1px solid var(--hub-line);border-radius:12px;padding:9px;background:var(--hub-surface);overflow:hidden}
.hub-driver-directory-card:hover{border-color:var(--hub-line-strong);box-shadow:0 6px 18px rgba(18,25,25,.045)}
.hub-driver-directory-card.is-mine{border-color:var(--hub-ui-icon-line);background:linear-gradient(90deg,var(--hub-ui-icon-soft),var(--hub-surface) 60%)}
.hub-driver-directory-photo{position:relative;width:64px;height:68px;border-radius:10px;overflow:hidden;background:var(--hub-surface-3);display:grid;place-items:center;color:var(--hub-ui-icon)}
.hub-driver-directory-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hub-driver-directory-photo>span{position:absolute;left:5px;bottom:5px;min-width:24px;border-radius:6px;background:rgba(20,26,27,.88);color:#fff;padding:3px 5px;text-align:center;font-size:8px;font-weight:850}
.hub-driver-directory-main{display:grid;min-width:0;padding-right:2px}.hub-driver-directory-main>small{font-size:7.5px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-directory-main>strong{font-size:11.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-directory-main>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:5px}.hub-driver-directory-main>div span{font-size:8px;color:var(--hub-muted)}
.hub-driver-directory-status{grid-column:2;min-width:0;margin-top:-3px}.hub-driver-directory-status>span:not(.hub-status){font-size:8px;color:var(--hub-muted)}

/* NASCAR results */
.hub-race-result-stack{display:grid;gap:9px}
.hub-race-result-card{border:1px solid var(--hub-line);border-radius:13px;background:var(--hub-surface);overflow:hidden}
.hub-race-result-head{display:grid;grid-template-columns:50px minmax(0,1fr) 105px auto;gap:10px;align-items:center;padding:11px 12px;background:var(--hub-surface-2);border-bottom:1px solid var(--hub-line)}
.hub-race-title{display:grid;min-width:0}.hub-race-title small{font-size:7.5px;color:var(--hub-muted);font-weight:800;letter-spacing:.05em}.hub-race-title h3{font-size:12px;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-race-title>span{font-size:8px;color:var(--hub-muted);margin-top:1px}
.hub-race-score{display:grid;text-align:right}.hub-race-score small{font-size:7px;color:var(--hub-muted);font-weight:800}.hub-race-score strong{font-size:15px;line-height:1.1}.hub-race-score span{font-size:7.5px;color:var(--hub-muted);margin-top:2px}
.hub-picked-driver-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
.hub-picked-driver{display:grid;grid-template-columns:36px minmax(0,1fr);gap:7px;align-items:center;padding:9px;border-left:1px solid var(--hub-line)}
.hub-picked-driver:first-child{border-left:0}.hub-picked-driver-photo{width:36px;height:40px;border-radius:8px;overflow:hidden;background:var(--hub-surface-3);display:grid;place-items:center;color:var(--hub-ui-icon)}.hub-picked-driver-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.hub-picked-driver>div:last-child{display:grid;min-width:0}.hub-picked-driver small{font-size:6.5px;color:var(--hub-muted);font-weight:800}.hub-picked-driver strong{font-size:9px;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-picked-driver span{font-size:7px;color:var(--hub-muted);margin-top:2px}
.hub-race-field-list{display:grid;border:1px solid var(--hub-line);border-radius:12px;overflow:hidden}
.hub-race-field-row{display:grid;grid-template-columns:38px minmax(0,1fr) 90px auto;gap:10px;align-items:center;padding:9px 10px;border-top:1px solid var(--hub-line);background:var(--hub-surface)}.hub-race-field-row:first-child{border-top:0}.hub-race-field-row.is-picked{background:var(--hub-ui-icon-soft)}
.hub-race-position{width:31px;height:31px;border-radius:8px;background:var(--hub-surface-2);display:grid;place-items:center;font-size:10px;font-weight:850}
.hub-driver-mini{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.hub-driver-mini>img,.hub-driver-mini>span{width:36px;height:36px;border-radius:8px;object-fit:cover;background:var(--hub-surface-3)}.hub-driver-mini>span{display:grid;place-items:center;color:var(--hub-ui-icon)}.hub-driver-mini>div{display:grid;min-width:0}.hub-driver-mini strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-driver-mini small{font-size:7.5px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-race-points{display:grid;text-align:right}.hub-race-points strong{font-size:11px}.hub-race-points span{font-size:7px;color:var(--hub-muted)}

/* The previous mobile-polish release intentionally added extra iOS clearance.
   Restore the tighter original Hub spacing requested for this build. */
@media(max-width:860px){
  .hub-main{padding-bottom:92px!important}
  .hub-mobile-nav{bottom:max(8px,env(safe-area-inset-bottom))!important}
}

@media(max-width:900px){
  .hub-lineup-modern{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hub-nascar-pick-layout{grid-template-columns:1fr}
  .hub-pick-summary-modern{position:static}
  .hub-driver-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hub-picked-driver-row{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-picked-driver:nth-child(4){border-left:0;border-top:1px solid var(--hub-line)}.hub-picked-driver:nth-child(n+4){border-top:1px solid var(--hub-line)}
}

@media(max-width:600px){
  .hub-tab-intro{align-items:flex-start;margin-bottom:13px}.hub-tab-intro h2{font-size:20px}.hub-tab-intro p{font-size:11px}.hub-tab-intro>.hub-status{margin-top:2px}
  .hub-pick-cycle-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.hub-pick-cycle-strip>div{grid-template-columns:32px minmax(0,1fr);min-height:64px;padding:8px}.hub-pick-cycle-strip .hub-card-icon{width:31px;height:31px;border-radius:9px}.hub-pick-cycle-strip strong{font-size:10px}.hub-pick-cycle-strip small{font-size:6.8px}
  .hub-lineup-modern{grid-template-columns:1fr}.hub-lineup-driver{grid-template-columns:44px minmax(0,1fr) auto}.hub-lineup-points{grid-column:3;display:grid;text-align:right;padding:0;border:0}.hub-lineup-points span{white-space:nowrap}
  .hub-driver-choice-list{grid-template-columns:1fr}.hub-driver-choice{border-right:0!important;border-top:1px solid var(--hub-line)!important;grid-template-columns:46px minmax(0,1fr) auto;min-height:68px;padding:8px 10px}.hub-driver-choice:first-child{border-top:0!important}.hub-driver-choice:nth-child(2){border-top:1px solid var(--hub-line)!important}.hub-nascar-group-title{padding:10px}.hub-nascar-group-title>strong{max-width:52%}
  .hub-pick-summary-modern{padding:13px}.hub-pick-summary-modern>.hub-card-icon{width:36px;height:36px}.hub-pick-summary-modern h3{font-size:13px}
  .hub-driver-filter-row{margin:0 -1px 2px}.hub-driver-directory-grid{grid-template-columns:1fr}.hub-driver-directory-card{grid-template-columns:58px minmax(0,1fr) auto;min-height:78px;padding:8px}.hub-driver-directory-photo{width:58px;height:61px}.hub-driver-directory-status{grid-column:3;grid-row:1;align-self:start;margin:0}.hub-driver-directory-main{grid-column:2;grid-row:1}.hub-driver-directory-main>strong{font-size:11px}
  .hub-race-result-head{grid-template-columns:42px minmax(0,1fr) 74px;gap:7px;padding:9px}.hub-race-result-head>.hub-btn{grid-column:1/-1;width:100%;min-height:32px}.hub-race-score strong{font-size:13px}.hub-picked-driver-row{grid-template-columns:1fr}.hub-picked-driver{border-left:0!important;border-top:1px solid var(--hub-line)}.hub-picked-driver:first-child{border-top:0}.hub-picked-driver{grid-template-columns:40px minmax(0,1fr);padding:8px 10px}.hub-picked-driver-photo{width:40px;height:43px}.hub-picked-driver strong{font-size:9.5px}
  .hub-race-field-row{grid-template-columns:32px minmax(0,1fr) auto;gap:7px}.hub-race-field-row>.hub-status{grid-column:2}.hub-race-points{grid-column:3;grid-row:1}.hub-race-position{width:28px;height:28px}.hub-driver-mini{grid-template-columns:32px minmax(0,1fr)}.hub-driver-mini>img,.hub-driver-mini>span{width:32px;height:34px}
}
.hub-champion-avatar{overflow:hidden}.hub-champion-avatar img{width:100%;height:100%;object-fit:cover}

/* Pool-perfect NASCAR chase data: preserves the useful legacy Race Targets in the new UI. */
.hub-race-target-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(120px,.65fr));gap:12px;align-items:stretch}
.hub-race-target-primary,.hub-race-target-mini,.hub-race-target-projection{border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:18px;padding:16px}
.hub-race-target-primary{display:flex;align-items:center;gap:14px;grid-row:span 2}
.hub-race-target-primary>div:last-child,.hub-race-target-projection>div:last-child{min-width:0;display:grid;gap:4px}
.hub-race-target-primary small,.hub-race-target-mini small,.hub-race-target-projection small{color:var(--hub-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.hub-race-target-primary strong,.hub-race-target-projection strong{font-size:1rem;line-height:1.25}
.hub-race-target-primary span,.hub-race-target-projection span,.hub-race-target-mini span{color:var(--hub-muted);font-size:.84rem;line-height:1.35}
.hub-race-target-mini{display:grid;gap:4px;align-content:center}
.hub-race-target-mini strong{font-size:1.35rem;line-height:1}
.hub-race-target-projection{grid-column:2/-1;display:flex;align-items:center;gap:12px}
@media(max-width:760px){
  .hub-race-target-grid{grid-template-columns:1fr 1fr}
  .hub-race-target-primary{grid-column:1/-1;grid-row:auto}
  .hub-race-target-projection{grid-column:1/-1}
}

/* ========================================================================
   Unified Pool Hub design system + gameplay polish (2026-08-25 streamline9)
   Final override layer: typography, rhythm, aqua depth, mobile and game UX.
   ======================================================================== */
:root{
  --hub-aqua-grad:linear-gradient(135deg,#75e6e1 0%,#54d9d3 48%,#35c8c2 100%);
  --hub-aqua-wash:linear-gradient(135deg,rgba(84,217,211,.13),rgba(84,217,211,.035) 48%,rgba(255,255,255,0) 78%);
  --hub-aqua-wash-strong:linear-gradient(135deg,rgba(84,217,211,.2),rgba(84,217,211,.07) 54%,rgba(255,255,255,0) 86%);
  --hub-card-shadow:0 1px 2px rgba(18,25,25,.045),0 10px 28px rgba(18,25,25,.05);
  --hub-card-shadow-hover:0 15px 36px rgba(18,25,25,.085);
  --hub-type-xs:.72rem;
  --hub-type-sm:.82rem;
  --hub-type-base:.92rem;
  --hub-type-lg:1.08rem;
}
html[data-theme="dark"]{
  --hub-aqua-wash:linear-gradient(135deg,rgba(84,217,211,.09),rgba(84,217,211,.025) 48%,rgba(0,0,0,0) 78%);
  --hub-aqua-wash-strong:linear-gradient(135deg,rgba(84,217,211,.15),rgba(84,217,211,.04) 54%,rgba(0,0,0,0) 86%);
  --hub-card-shadow:0 1px 2px rgba(0,0,0,.22),0 12px 28px rgba(0,0,0,.16);
  --hub-card-shadow-hover:0 18px 42px rgba(0,0,0,.24);
}

/* Core type and page rhythm */
body{font-size:14px;line-height:1.5;letter-spacing:-.005em}
.hub-main{padding-top:28px}
.hub-page-head,.hub-manage-hero,.hub-picks-hero{margin-bottom:20px;align-items:flex-end}
.hub-page-head h1,.hub-manage-hero h1,.hub-picks-hero h1{font-size:29px;line-height:1.06;margin:4px 0 7px}
.hub-page-head p,.hub-manage-hero p,.hub-picks-hero p{font-size:13px;line-height:1.55}
.hub-page-kicker{font-size:10px;letter-spacing:.105em}
.hub-section{margin-top:20px}
.hub-section-head{margin-bottom:10px;align-items:flex-end}
.hub-section-head h2,.hub-card-heading{font-size:17px;line-height:1.15;letter-spacing:-.02em}
.hub-section-head p,.hub-card-sub{font-size:12px;line-height:1.48}
.hub-tab-intro{margin-bottom:14px}
.hub-tab-intro h2{font-size:22px;line-height:1.08}
.hub-tab-intro p{font-size:12px;line-height:1.5}

/* Cards should feel like one app. Keep the light canvas, add subtle aqua depth. */
.hub-card,.hub-panel,.hub-discover-card,.hub-contest-card,.hub-action-card,.hub-manage-action,
.hub-driver-directory-card,.hub-race-result-card,.hub-week-list,.hub-square-board-card{
  box-shadow:var(--hub-card-shadow);
}
.hub-card,.hub-panel,.hub-discover-card,.hub-action-card,.hub-manage-action,.hub-driver-directory-card{
  background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface),var(--hub-surface));
  background-repeat:no-repeat;
}
.hub-card,.hub-panel{border-color:var(--hub-line);border-radius:15px}
.hub-card{padding:17px}
.hub-panel{padding:14px}
.hub-discover-card,.hub-contest-card,.hub-driver-directory-card,.hub-action-card{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.hub-discover-card:hover,.hub-contest-card:hover,.hub-driver-directory-card:hover,.hub-action-card[href]:hover{box-shadow:var(--hub-card-shadow-hover);border-color:#b8cfcc}

/* Icon tile system: same visual family, richer than flat mint. Global chrome stays neutral. */
.hub-card-icon,.hub-action-icon,.hub-sport-mark,.hub-feed-icon,.hub-empty-icon,
.hub-driver-summary-strip .hub-action-icon,.hub-management-kpis .hub-action-icon{
  background:linear-gradient(145deg,#effcfb 0%,#d8f4f1 52%,#c7eeeb 100%)!important;
  color:#246965!important;
  border:1px solid #c7e8e5!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 4px 12px rgba(37,119,113,.055);
}
html[data-theme="dark"] .hub-card-icon,
html[data-theme="dark"] .hub-action-icon,
html[data-theme="dark"] .hub-sport-mark,
html[data-theme="dark"] .hub-feed-icon,
html[data-theme="dark"] .hub-empty-icon,
html[data-theme="dark"] .hub-driver-summary-strip .hub-action-icon,
html[data-theme="dark"] .hub-management-kpis .hub-action-icon{
  background:linear-gradient(145deg,#29403f,#213333)!important;
  color:#a8e7e3!important;
  border-color:#345250!important;
  box-shadow:none;
}
.hub-header .hub-icon-btn,.hub-account-btn{background:#252c2d}
.hub-header .hub-icon-btn svg,.hub-account-btn>svg,.hub-menu>a svg,.hub-menu-item svg{color:#a7b1b0!important}

/* Primary aqua is strongest on deliberate actions and selected states. */
.hub-btn-primary,.hub-btn-brand{background:var(--hub-aqua-grad);border-color:#48cec8;color:#0b3331;box-shadow:0 5px 16px rgba(47,197,191,.16)}
.hub-btn-primary:hover,.hub-btn-brand:hover{background:linear-gradient(135deg,#86ebe7,#5ee0da 55%,#3dcfc9);border-color:#54d9d3}
.hub-chip.is-active{background:linear-gradient(180deg,var(--hub-surface),var(--hub-surface-2));border-color:#8ba5a2;box-shadow:inset 0 0 0 1px var(--hub-ink),0 3px 10px rgba(18,25,25,.04)}

/* My Pools progress: percentage must actually size the bar. */
.hub-progress{height:7px;background:linear-gradient(180deg,var(--hub-bg-2),var(--hub-surface-3));border:1px solid rgba(133,153,150,.13);border-radius:999px;overflow:hidden;margin-top:8px}
.hub-progress>span{height:100%;width:var(--hub-progress-value,0%);display:block;background:var(--hub-aqua-grad);border-radius:inherit;box-shadow:0 0 10px rgba(84,217,211,.24);transition:width .55s cubic-bezier(.2,.8,.2,1)}
.hub-contest-progress strong{font-size:12px}.hub-contest-progress span{font-size:10px}

/* Dashboard pool cards: stronger hierarchy without becoming analytics tiles. */
.hub-contest-card{border-radius:15px;background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface),var(--hub-surface))}
.hub-contest-card-inner{grid-template-columns:50px minmax(0,1fr) minmax(190px,260px) 88px;gap:15px;padding:15px 16px}
.hub-contest-title{font-size:15.5px;letter-spacing:-.015em}
.hub-contest-sub{font-size:11.5px}
.hub-contest-labels{font-size:9.5px;letter-spacing:.075em}
.hub-rank strong{font-size:17px}.hub-rank span{font-size:9px}

/* Activity should feel intentionally empty, not like an unfinished page. */
.hub-feed-page{display:grid;gap:14px;max-width:900px}
.hub-feed-page>.hub-activity-list>.hub-empty{padding:26px 20px;min-height:190px;display:grid;align-content:center;justify-items:center;background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface),var(--hub-surface))}
.hub-feed-page>.hub-activity-list>.hub-empty h3{font-size:15px}
.hub-feed-page>.hub-activity-list>.hub-empty p{font-size:12px;max-width:560px}

/* Discover: card scale and spacing should match the rest of the hub. */
.hub-discover-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,370px));gap:12px;align-items:stretch}
.hub-discover-card{min-height:220px;padding:15px;border-radius:15px}
.hub-discover-card h3{font-size:15px;letter-spacing:-.015em;margin:10px 0 4px}
.hub-discover-card p{font-size:11.5px}
.hub-discover-stat{background:rgba(247,249,248,.72)}
html[data-theme="dark"] .hub-discover-stat{background:rgba(32,39,40,.8)}
.hub-discover-foot{font-size:10.5px}

/* Champion cards were visually collapsing because their inner content had no layout. */
.hub-champion-grid{grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:12px}
.hub-champion-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 28px;gap:12px;align-items:center;text-align:left;padding:15px;border-radius:15px;background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface),var(--hub-surface));box-shadow:var(--hub-card-shadow)}
.hub-champion-card>.hub-champion-avatar{width:46px;height:46px;margin:0}
.hub-champion-card>div:nth-child(2){display:grid;gap:2px;min-width:0}
.hub-champion-card small{font-size:9px;color:var(--hub-muted);font-weight:750;letter-spacing:.055em;text-transform:uppercase;white-space:normal}
.hub-champion-card strong{font-size:14px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
.hub-champion-card span{font-size:11px;color:var(--hub-muted);line-height:1.35}
.hub-champion-card .hub-champion-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:linear-gradient(145deg,#effcfb,#d4f2ef);color:#276b67;margin:0}
.hub-champion-card .hub-champion-rank svg{width:16px;height:16px}

/* This-is-you badge: visual cue instead of literal “You”. */
.hub-me-badge{display:inline-grid!important;place-items:center;width:23px;height:23px;margin-left:7px;border-radius:8px;background:var(--hub-aqua-grad);color:#0a4946;vertical-align:middle;box-shadow:0 4px 10px rgba(47,197,191,.16)}
.hub-me-badge svg{width:14px;height:14px;stroke-width:1.8}
.hub-list-name>strong,.hub-football-player-copy>strong{display:flex;align-items:center;gap:2px;min-width:0}

/* Standings: give each player a clean row and make rival tracking feel intentional. */
.hub-standing-row{grid-template-columns:44px minmax(0,1fr) auto 42px!important;min-height:62px;padding:10px 12px!important}
.hub-standing-row:has(.hub-me-badge){background-image:var(--hub-aqua-wash-strong),linear-gradient(var(--hub-surface),var(--hub-surface))}
.hub-standing-rival-action{display:flex;justify-content:flex-end;align-items:center}
.hub-rival-toggle{width:34px;height:34px;border-radius:10px;border:1px solid var(--hub-line);background:var(--hub-surface-2);color:var(--hub-muted);display:grid;place-items:center;cursor:pointer;padding:0;transition:.15s ease}
.hub-rival-toggle:hover,.hub-rival-toggle.is-active,.hub-rival-toggle.is-tracked{background:linear-gradient(145deg,#effcfb,#d7f4f1);border-color:#b7e3df;color:#246965;transform:translateY(-1px)}
.hub-rival-toggle svg{width:17px;height:17px}

/* NASCAR weekly performance is the player’s useful pulse: score, movement, field range, five drivers. */
.hub-performance-pulse{overflow:hidden}
.hub-performance-grid{display:grid;grid-template-columns:1.45fr repeat(3,minmax(0,.85fr));gap:9px}
.hub-performance-card{min-height:106px;display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid var(--hub-line);border-radius:13px;background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface-2),var(--hub-surface-2))}
.hub-performance-card.is-featured{background-image:linear-gradient(135deg,rgba(84,217,211,.18),rgba(84,217,211,.045) 60%),linear-gradient(var(--hub-surface),var(--hub-surface));border-color:#c4e5e2}
.hub-performance-card>.hub-card-icon{width:36px;height:36px;margin:0}
.hub-performance-card>div{display:grid;gap:2px;min-width:0}
.hub-performance-card small{font-size:7.5px;color:var(--hub-muted);font-weight:850;letter-spacing:.09em}
.hub-performance-card strong{font-size:14px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-performance-card span{font-size:9.5px;color:var(--hub-muted);line-height:1.35}
.hub-driver-score-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid var(--hub-line)}
.hub-driver-score-mini{display:grid;grid-template-columns:43px minmax(0,1fr);gap:8px;align-items:center;min-width:0;border:1px solid var(--hub-line);border-radius:11px;background:var(--hub-surface-2);padding:7px}
.hub-driver-score-photo{width:43px;height:47px;border-radius:9px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,#effcfb,#d9f3f1);color:#246965}
.hub-driver-score-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hub-driver-score-photo svg{width:18px;height:18px}
.hub-driver-score-mini>div{display:grid;min-width:0;gap:1px}
.hub-driver-score-mini small{font-size:6.5px;color:var(--hub-muted);font-weight:850;letter-spacing:.07em}
.hub-driver-score-mini strong{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-driver-score-mini span{font-size:7.5px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Personal rivals: user-curated competition instead of generic closest/top-5 targets. */
.hub-rival-watch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.hub-rival-watch-card{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--hub-line);border-radius:12px;background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface-2),var(--hub-surface-2));transition:.15s ease}
.hub-rival-watch-card:hover{border-color:#b8d8d5;transform:translateY(-1px)}
.hub-rival-watch-card>.hub-avatar{width:36px;height:36px}
.hub-rival-watch-card>div{display:grid;min-width:0}
.hub-rival-watch-card strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-rival-watch-card span{font-size:9px;color:var(--hub-muted)}
.hub-rival-watch-card>em{font-style:normal;text-align:right;font-size:10px;font-weight:800;color:var(--hub-ink)}
.hub-rival-watch-card>em span{display:block;font-size:8px;font-weight:600;color:var(--hub-muted)}
.hub-rival-empty{padding:14px;border-radius:12px;background:var(--hub-surface-2)}

/* Driver tab is reference only. Picks live on Picks. */
.hub-driver-overview-strip{margin-bottom:14px}
.hub-driver-filter-row{position:sticky;top:calc(var(--hub-header-h) + 8px);z-index:25;display:flex;gap:6px;overflow-x:auto;padding:7px;background:rgba(238,241,240,.92);backdrop-filter:blur(10px);border:1px solid var(--hub-line);border-radius:12px;scrollbar-width:none}
html[data-theme="dark"] .hub-driver-filter-row{background:rgba(17,22,23,.92)}
.hub-driver-filter-row::-webkit-scrollbar{display:none}
.hub-driver-filter-row button{min-height:32px;padding:6px 11px;border-radius:999px;border:1px solid var(--hub-line);background:var(--hub-surface);color:var(--hub-muted);font-size:10px;font-weight:750;white-space:nowrap;cursor:pointer}
.hub-driver-filter-row button.is-active{background:var(--hub-nav);border-color:var(--hub-nav);color:#fff}
.hub-driver-reference-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.hub-driver-reference-grid .hub-driver-directory-card{grid-template-columns:58px minmax(0,1fr);min-height:82px;padding:8px}
.hub-driver-reference-grid .hub-driver-directory-photo{width:58px;height:62px}
.hub-driver-reference-grid .hub-driver-directory-main>strong{font-size:11px}
.hub-driver-reference-grid .hub-driver-directory-main>div span{font-size:7.5px}

/* Football board: header digits and side digits use exactly the same square geometry. */
.hub-square-grid-wrap{padding:32px 0 0 38px}
.hub-football-axis-top{left:38px}
.hub-football-axis-left{width:30px;top:32px}
.hub-square-grid{
  --hub-square-size:72px;
  width:max-content;
  min-width:0!important;
  display:grid;
  grid-template-columns:repeat(11,var(--hub-square-size))!important;
  grid-auto-rows:var(--hub-square-size);
  gap:1px;
}
.hub-square-cell,.hub-square-cell.is-head{
  width:var(--hub-square-size);
  min-width:var(--hub-square-size);
  height:var(--hub-square-size)!important;
  min-height:var(--hub-square-size)!important;
  padding:4px;
}
.hub-square-cell.is-head{background:var(--hub-nav);color:#fff;font-size:13px;font-weight:850}
.hub-square-cell.is-mine{background:linear-gradient(145deg,#e8fbf9,#d1f2ef)!important;border-color:#75dcd6!important;color:#165c58}
html[data-theme="dark"] .hub-square-cell.is-mine{background:linear-gradient(145deg,#213b39,#18312f)!important;color:#a7e9e4}

/* Weekly payout labels: projected is a word, not a tilde that reads like a negative sign. */
.hub-week-payout small{font-size:7px;letter-spacing:.09em}.hub-week-payout strong{font-size:12px}

/* Create Pool: keep the wizard readable and touch-friendly across desktop/mobile. */
.hub-wizard{gap:14px}.hub-wizard>div{min-width:0}
.hub-wizard .hub-card{padding:18px}
.hub-format-grid{gap:10px}
.hub-format-option{min-height:92px;border-radius:13px;background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface-2),var(--hub-surface-2))}
.hub-format-option.is-selected{border-color:#8fd8d3;box-shadow:inset 0 0 0 1px rgba(84,217,211,.38),0 7px 20px rgba(28,104,99,.06)}
.hub-inline-note{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;border:1px solid var(--hub-line);background:var(--hub-surface-2);border-radius:12px;padding:10px}
.hub-inline-note .hub-action-icon{width:36px;height:36px}
.hub-inline-note>div{display:grid;gap:2px}.hub-inline-note strong{font-size:11px}.hub-inline-note small{font-size:9.5px;color:var(--hub-muted);line-height:1.45}

/* Schedule/results/management rows: normalize text weight and card edges. */
.hub-week-row,.hub-list-row,.hub-football-player-card,.hub-race-field-row{font-size:12px}
.hub-week-list{border-radius:14px}
.hub-week-row{min-height:64px}
.hub-week-game strong{font-size:11.5px}.hub-week-game small{font-size:9.5px}
.hub-count-pill{font-size:9px;font-weight:800}

/* Mobile: deliberately compose, do not merely shrink desktop. */
@media(max-width:900px){
  .hub-contest-card-inner{grid-template-columns:48px minmax(0,1fr) 78px;gap:11px}
  .hub-contest-progress{grid-column:2/4}.hub-contest-right{grid-column:3;grid-row:1}
  .hub-performance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hub-performance-card.is-featured{grid-column:1/-1}
  .hub-driver-score-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hub-driver-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:760px){
  .hub-main{padding-top:20px}
  .hub-page-head,.hub-manage-hero,.hub-picks-hero{margin-bottom:17px}
  .hub-page-head h1,.hub-manage-hero h1,.hub-picks-hero h1{font-size:27px}
  .hub-page-head p,.hub-manage-hero p,.hub-picks-hero p{font-size:12px}
  .hub-section{margin-top:17px}
  .hub-card{padding:14px;border-radius:14px}
  .hub-section-head{align-items:flex-start}
  .hub-section-head h2{font-size:16px}.hub-section-head p{font-size:11px}
  .hub-discover-row{grid-template-columns:1fr}
  .hub-discover-card{min-height:0}
  .hub-driver-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hub-rival-watch-grid{grid-template-columns:1fr}
  .hub-square-grid{--hub-square-size:60px}
}

@media(max-width:600px){
  .hub-shell{width:calc(100% - 24px)}
  .hub-page-head h1,.hub-manage-hero h1,.hub-picks-hero h1{font-size:25px}
  .hub-page-kicker{font-size:9px}
  .hub-card,.hub-panel{padding:13px}

  .hub-contest-card-inner{grid-template-columns:42px minmax(0,1fr) auto;gap:9px;padding:12px}
  .hub-contest-card .hub-sport-mark{width:40px;height:40px}
  .hub-contest-title{font-size:14px}
  .hub-contest-sub{font-size:10px;white-space:normal;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .hub-contest-labels{font-size:8px;gap:5px}
  .hub-contest-progress{grid-column:2/4;margin-top:1px}
  .hub-contest-progress strong{font-size:10px}.hub-progress{height:6px;margin-top:6px}
  .hub-rank strong{font-size:15px}.hub-rank span{font-size:8px}

  .hub-performance-grid{grid-template-columns:1fr 1fr;gap:7px}
  .hub-performance-card{grid-template-columns:32px minmax(0,1fr);min-height:88px;padding:9px;gap:8px}
  .hub-performance-card.is-featured{grid-column:1/-1;min-height:82px}
  .hub-performance-card>.hub-card-icon{width:31px;height:31px}
  .hub-performance-card small{font-size:6.5px}.hub-performance-card strong{font-size:12px}.hub-performance-card span{font-size:8.5px}
  .hub-driver-score-strip{display:flex;overflow-x:auto;gap:7px;margin-right:-13px;padding-right:13px;scroll-snap-type:x proximity;scrollbar-width:none}
  .hub-driver-score-strip::-webkit-scrollbar{display:none}
  .hub-driver-score-mini{min-width:185px;scroll-snap-align:start}

  .hub-standing-row{grid-template-columns:34px minmax(0,1fr) auto 36px!important;gap:7px!important;padding:9px 8px!important}
  .hub-me-badge{width:21px;height:21px;margin-left:5px}.hub-me-badge svg{width:13px;height:13px}
  .hub-rival-toggle{width:31px;height:31px}

  .hub-driver-filter-row{top:calc(var(--hub-header-h) + 5px);margin:0 -3px}
  .hub-driver-reference-grid{grid-template-columns:1fr}
  .hub-driver-reference-grid .hub-driver-directory-card{grid-template-columns:56px minmax(0,1fr);min-height:76px}
  .hub-driver-reference-grid .hub-driver-directory-photo{width:56px;height:59px}

  .hub-square-grid-wrap{padding:29px 0 0 31px}
  .hub-football-axis-top{left:31px;height:22px}.hub-football-axis-left{width:24px;top:29px}
  .hub-square-grid{--hub-square-size:56px}
  .hub-square-cell,.hub-square-cell.is-head{font-size:10px}

  .hub-champion-grid{grid-template-columns:1fr}
  .hub-champion-card{grid-template-columns:44px minmax(0,1fr) 26px;padding:12px;gap:9px}
  .hub-champion-card>.hub-champion-avatar{width:42px;height:42px}
  .hub-champion-card strong{font-size:13px}.hub-champion-card span{font-size:10px}.hub-champion-card small{font-size:8px}

  .hub-feed-page{max-width:none}.hub-feed-page>.hub-activity-list>.hub-empty{min-height:160px;padding:22px 14px}

  .hub-wizard .hub-card{padding:14px}
  .hub-chip-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.hub-chip-row::-webkit-scrollbar{display:none}
  .hub-chip{flex:0 0 auto;min-height:36px}
  .hub-format-option{min-height:82px}
  .hub-inline-note{grid-template-columns:34px minmax(0,1fr);padding:9px}.hub-inline-note .hub-action-icon{width:32px;height:32px}
}

/* Driver standings: informational reference only; no pick/availability duplication. */
.hub-driver-standing-card{grid-template-columns:30px 58px minmax(0,1fr)!important;gap:8px!important}
.hub-driver-season-rank{width:28px;height:28px;border-radius:9px;background:var(--hub-nav);color:#fff;display:grid;place-items:center;font-size:9px;font-weight:850}
.hub-driver-standing-card .hub-driver-directory-photo{width:58px;height:62px}
@media(max-width:600px){
  .hub-driver-standing-card{grid-template-columns:28px 54px minmax(0,1fr)!important}
  .hub-driver-season-rank{width:26px;height:26px;font-size:8px}
  .hub-driver-standing-card .hub-driver-directory-photo{width:54px;height:58px}
}

/* Lift micro-copy to a consistent readable scale on detailed sports screens. */
.hub-race-title small,.hub-driver-directory-main>small,.hub-week-number small,.hub-week-payout small,.hub-picked-driver small,.hub-race-score small{font-size:8px}
.hub-race-title>span,.hub-driver-directory-main>div span,.hub-picked-driver span,.hub-race-score span{font-size:8.5px}
.hub-race-title h3{font-size:12.5px}.hub-picked-driver strong{font-size:10px}
.hub-week-number strong{font-size:18px}.hub-week-game strong{font-size:12px}.hub-week-game small{font-size:9.5px}
.hub-driver-directory-main>strong{font-size:11.5px}
.hub-race-range{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-top:1px solid var(--hub-line);background:linear-gradient(90deg,rgba(84,217,211,.06),transparent);color:var(--hub-muted);font-size:8.5px}
.hub-race-range b{color:var(--hub-ink);font-weight:800;margin-right:3px}
@media(max-width:600px){.hub-race-range{align-items:flex-start;flex-direction:column;gap:3px;font-size:8px}}
.hub-chip svg{width:16px;height:16px;color:#2f6e6b}
.hub-chip.is-active svg{color:#2f6e6b}
html[data-theme="dark"] .hub-chip svg{color:#a7dedb}

/* ================================================================
   2026-08-25 Pool Hub refinement — restrained aqua + one UI system
   ================================================================ */
:root{
  --hub-type-caption:10px;
  --hub-type-small:11.5px;
  --hub-type-body:13.5px;
  --hub-type-card:15px;
  --hub-type-section:19px;
  --hub-type-page:30px;
}

/* Aqua is an accent, not a default surface. */
.hub-card,.hub-panel,.hub-action-card,.hub-manage-action,.hub-contest-card,
.hub-discover-card,.hub-format-option,.hub-performance-card,.hub-rival-watch-card,
.hub-champion-card,.hub-driver-directory-card,.hub-operation-card,.hub-builder-card{
  background:var(--hub-surface)!important;
  background-image:none!important;
}
html[data-theme="dark"] .hub-card,html[data-theme="dark"] .hub-panel,
html[data-theme="dark"] .hub-action-card,html[data-theme="dark"] .hub-manage-action,
html[data-theme="dark"] .hub-contest-card,html[data-theme="dark"] .hub-format-option,
html[data-theme="dark"] .hub-performance-card,html[data-theme="dark"] .hub-rival-watch-card,
html[data-theme="dark"] .hub-champion-card,html[data-theme="dark"] .hub-driver-directory-card,
html[data-theme="dark"] .hub-operation-card,html[data-theme="dark"] .hub-builder-card{
  background:var(--hub-surface)!important;
}

/* Keep the beautiful wash only where it communicates selection / identity. */
.hub-performance-card.is-featured,.hub-driver-directory-card.is-mine,
.hub-race-field-row.is-picked,.hub-standing-row.is-me,
.hub-square-cell.is-mine,.hub-team-choice.is-selected,.hub-bracket-team.is-selected,
.hub-format-option.is-selected,.hub-rival-toggle.is-tracked,.hub-me-badge{
  background-image:linear-gradient(135deg,rgba(84,217,211,.18),rgba(84,217,211,.035) 66%)!important;
  background-color:var(--hub-surface)!important;
}
.hub-btn-primary,.hub-btn-brand,.hub-progress>span{background:linear-gradient(135deg,#7de7e2,#54d9d3 56%,#3fcac5)!important}
.hub-card-icon,.hub-action-icon,.hub-feed-icon,.hub-empty-icon{
  background:var(--hub-aqua-soft)!important;
  background-image:none!important;
  color:var(--hub-aqua-ink)!important;
  border:1px solid color-mix(in srgb,var(--hub-aqua) 22%,var(--hub-line));
}
.hub-header .hub-icon-btn,.hub-account-btn,.hub-menu>a svg,.hub-menu-item svg{color:#a7b1b0!important}

/* Pool pages are one white workspace attached to the dark pool identity header. */
.hub-pool-workspace{
  background:var(--hub-surface);
  border:1px solid var(--hub-line);
  border-top:0;
  border-radius:0 0 18px 18px;
  box-shadow:var(--hub-shadow);
  padding:20px;
  min-height:420px;
}
.hub-pool-workspace>.hub-detail-grid,.hub-pool-workspace>.hub-contest-layout{margin-top:0}
.hub-pool-workspace .hub-card,.hub-pool-workspace .hub-panel{
  box-shadow:none;
  border-color:var(--hub-line);
}
.hub-pool-workspace .hub-card{background:var(--hub-surface)!important}
.hub-pool-workspace .hub-manage-action,.hub-pool-workspace .hub-performance-card,
.hub-pool-workspace .hub-driver-score-mini,.hub-pool-workspace .hub-rival-watch-card,
.hub-pool-workspace .hub-inline-note{background:var(--hub-surface-2)!important}

/* Consistent type scale across app surfaces. */
body{font-size:var(--hub-type-body)}
.hub-page-head h1,.hub-manage-hero h1,.hub-picks-hero h1{font-size:var(--hub-type-page);letter-spacing:-.035em}
.hub-section-head h2,.hub-tab-intro h2{font-size:var(--hub-type-section);line-height:1.2;letter-spacing:-.02em}
.hub-card-heading,.hub-section-head h3,.hub-panel-head h3{font-size:var(--hub-type-card)}
.hub-page-head p,.hub-manage-hero p,.hub-picks-hero p,.hub-tab-intro p,.hub-section-head p,.hub-card-sub{font-size:var(--hub-type-small);line-height:1.48}
.hub-page-kicker,.hub-contest-labels,.hub-performance-card small,.hub-driver-score-mini small,
.hub-management-kpis small,.hub-driver-summary-strip small,.hub-week-number small,.hub-week-payout small,
.hub-race-title small,.hub-driver-directory-main>small,.hub-picked-driver small,.hub-race-score small{
  font-size:var(--hub-type-caption)!important;
  letter-spacing:.07em;
}
.hub-mini-rule,.hub-list-row,.hub-week-row,.hub-football-player-card,.hub-race-field-row{font-size:12.5px}
.hub-list-name strong,.hub-week-game strong,.hub-driver-directory-main>strong{font-size:12.5px}
.hub-list-name span,.hub-week-game small,.hub-driver-directory-main>div span{font-size:10.5px}

/* Splash-style Discover — pool identity, participation, money, one action. */
.hub-discover-page{max-width:none}
.hub-discover-toolbar{margin-bottom:14px}
.hub-discover-list{display:grid;gap:12px}
.hub-discover-pool-card{
  display:grid;
  grid-template-columns:112px minmax(250px,1.35fr) minmax(350px,.95fr) 132px;
  gap:18px;
  align-items:center;
  min-height:128px;
  padding:16px 17px;
  background:var(--hub-surface);
  border:1px solid var(--hub-line);
  border-radius:16px;
  box-shadow:0 1px 2px rgba(20,27,27,.035),0 8px 22px rgba(20,27,27,.035);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.hub-discover-pool-card:hover{border-color:var(--hub-line-strong);box-shadow:0 3px 18px rgba(20,27,27,.075);transform:translateY(-1px)}
.hub-discover-brand-block{align-self:stretch;display:grid;place-items:center;min-height:94px;border-radius:13px;background:#f4f7f6;border:1px solid var(--hub-line);overflow:hidden}
html[data-theme="dark"] .hub-discover-brand-block{background:#202728}
.hub-discover-cover{width:100%;height:100%;object-fit:cover}
.hub-discover-sport-logo{display:grid;place-items:center;gap:7px;text-align:center;color:var(--hub-ink)}
.hub-discover-sport-logo svg{width:30px;height:30px;color:var(--hub-aqua-ink)}
.hub-discover-sport-logo span{font-size:11px;font-weight:800;letter-spacing:.035em}
.hub-discover-pool-main{min-width:0;display:grid;align-content:center;gap:5px}
.hub-discover-pool-eyebrow{display:flex;align-items:center;gap:6px;color:var(--hub-muted);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.055em}
.hub-discover-pool-main h2{margin:0;font-size:19px;line-height:1.15;letter-spacing:-.025em}
.hub-discover-pool-main p{margin:0;color:var(--hub-muted);font-size:11.5px;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.hub-discover-joined{display:flex;align-items:center;gap:8px;margin-top:4px;color:var(--hub-muted);font-size:10.5px}
.hub-avatar-stack{display:flex;padding-left:4px}.hub-avatar-stack .hub-avatar-sm{width:25px;height:25px;margin-left:-5px;border:2px solid var(--hub-surface);font-size:8px}
.hub-discover-pool-stats{display:grid;grid-template-columns:repeat(4,minmax(70px,1fr));border-left:1px solid var(--hub-line);border-right:1px solid var(--hub-line);min-width:0}
.hub-discover-pool-stats>div{display:grid;gap:4px;padding:8px 13px;border-left:1px solid var(--hub-line);min-width:0}
.hub-discover-pool-stats>div:first-child{border-left:0}
.hub-discover-pool-stats span{font-size:9px;color:var(--hub-muted);font-weight:700;letter-spacing:.045em;text-transform:uppercase}
.hub-discover-pool-stats strong{font-size:13px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-discover-pool-action{display:grid;justify-items:stretch;gap:9px;min-width:0}
.hub-discover-pool-action .hub-status{justify-self:end}
.hub-discover-pool-action .hub-btn{width:100%;justify-content:center;white-space:nowrap}

/* Commissioner builder / settings are clean sections, not a stack of unrelated boxes. */
.hub-builder-card,.hub-form-section{background:var(--hub-surface)!important}
.hub-form-section{border:1px solid var(--hub-line);border-radius:13px;padding:14px;display:grid;gap:13px}
.hub-form-section-head{display:grid;gap:3px}.hub-form-section-head strong{font-size:14px}.hub-form-section-head span{font-size:11px;color:var(--hub-muted)}
.hub-form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hub-check-row{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--hub-line);border-radius:11px;padding:10px;background:var(--hub-surface-2)}
.hub-check-row input{margin-top:3px}.hub-check-row>span{display:grid;gap:2px}.hub-check-row strong{font-size:11.5px}.hub-check-row small{font-size:10px;color:var(--hub-muted)}
.hub-input-suffix{position:relative}.hub-input-suffix>span{position:absolute;right:11px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--hub-muted)}.hub-input-suffix .hub-input{padding-right:30px}
.hub-group-assignment-list{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden}
.hub-group-assignment-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;align-items:center;padding:9px 11px;border-top:1px solid var(--hub-line)}
.hub-group-assignment-row:first-child{border-top:0}.hub-group-assignment-row>div{display:grid;gap:2px}.hub-group-assignment-row strong{font-size:11.5px}.hub-group-assignment-row span{font-size:10px;color:var(--hub-muted)}

/* Brackets now live inside the same white pool workspace. */
.hub-pool-workspace .hub-bracket-wrap{margin-top:12px}.hub-pool-workspace .hub-bracket{padding-bottom:4px}

@media(max-width:1050px){
  .hub-discover-pool-card{grid-template-columns:94px minmax(0,1fr) minmax(320px,.9fr);}
  .hub-discover-pool-action{grid-column:2/4;grid-template-columns:auto 160px;justify-content:end;align-items:center;border-top:1px solid var(--hub-line);padding-top:10px}
  .hub-discover-pool-action .hub-status{justify-self:end}
}
@media(max-width:760px){
  .hub-pool-workspace{padding:14px;border-radius:0 0 14px 14px}
  .hub-pool-workspace .hub-card{padding:13px}
  .hub-discover-pool-card{grid-template-columns:72px minmax(0,1fr);gap:11px;padding:12px;min-height:0}
  .hub-discover-brand-block{min-height:72px;height:72px}
  .hub-discover-sport-logo svg{width:24px;height:24px}.hub-discover-sport-logo span{font-size:9px}
  .hub-discover-pool-main h2{font-size:16px}.hub-discover-pool-main p{font-size:10.5px}
  .hub-discover-pool-stats{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--hub-line);border-radius:11px;overflow:hidden}
  .hub-discover-pool-stats>div{padding:8px 10px;border-left:0;border-top:1px solid var(--hub-line)}
  .hub-discover-pool-stats>div:nth-child(-n+2){border-top:0}.hub-discover-pool-stats>div:nth-child(even){border-left:1px solid var(--hub-line)}
  .hub-discover-pool-action{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(130px,1fr);padding-top:0;border-top:0;align-items:center}
  .hub-discover-pool-action .hub-status{justify-self:start}
  .hub-form-grid-4,.hub-form-grid-3{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  :root{--hub-type-page:26px;--hub-type-section:18px}
  .hub-pool-workspace{margin:0;padding:12px}
  .hub-form-grid-4,.hub-form-grid-3{grid-template-columns:1fr}
  .hub-group-assignment-row{grid-template-columns:minmax(0,1fr) 112px;gap:8px;padding:8px}
  .hub-discover-pool-action{grid-template-columns:1fr}.hub-discover-pool-action .hub-status{display:none}
}

/* ========================================================================
   2026-08-25 refine11 — restrained aqua, unified typography, single Pool canvas
   ======================================================================== */
:root{
  --hub-type-caption:10px;
  --hub-type-small:11.5px;
  --hub-type-body:13.5px;
  --hub-type-card:15px;
  --hub-type-section:19px;
  --hub-type-page:30px;
}

/* Aqua is reserved for interaction, ownership and wins — not every surface. */
.hub-feed-page>.hub-activity-list>.hub-empty,
.hub-champion-card,.hub-contest-card,.hub-discover-card,.hub-format-option,
.hub-rival-watch-card,.hub-performance-card,.hub-driver-directory-card,
.hub-race-range,.hub-aqua-wash{
  background:var(--hub-surface)!important;
  background-image:none!important;
}
.hub-football-player-card,.hub-driver-score-mini,.hub-week-row,
.hub-race-result-card,.hub-period-card,.hub-square-board-card{
  background:var(--hub-surface)!important;
  background-image:none!important;
}
.hub-standing-row.is-me,.hub-football-player-card.is-me,
.hub-driver-directory-card.is-mine,.hub-race-field-row.is-picked,
.hub-square-cell.is-mine,.hub-team-choice.is-selected,.hub-bracket-team.is-selected,
.hub-format-option.is-selected,.hub-rival-toggle.is-tracked,.hub-performance-card.is-featured{
  background-color:var(--hub-surface)!important;
  background-image:linear-gradient(135deg,rgba(84,217,211,.13),rgba(84,217,211,.025) 68%)!important;
}
.hub-me-badge{
  background:var(--hub-aqua-soft)!important;
  background-image:none!important;
  color:var(--hub-aqua-ink)!important;
}

/* One typography system across player + commissioner screens. */
.hub-app,.hub-app button,.hub-app input,.hub-app select,.hub-app textarea{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.hub-app{font-size:var(--hub-type-body);line-height:1.48}
.hub-page-head h1,.hub-manage-hero h1,.hub-picks-hero h1,.hub-pool-workspace-head h1{
  font-size:var(--hub-type-page)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:800!important;
}
.hub-tab-intro h2,.hub-section-head h2,.hub-card>h2,.hub-panel>h2{
  font-size:var(--hub-type-section)!important;line-height:1.18!important;letter-spacing:-.02em!important;font-weight:800!important;
}
.hub-section-head h3,.hub-panel-head h3,.hub-card-heading,.hub-card h3{
  font-size:var(--hub-type-card)!important;line-height:1.22!important;letter-spacing:-.012em!important;font-weight:750!important;
}
.hub-page-head p,.hub-manage-hero p,.hub-picks-hero p,.hub-tab-intro p,.hub-section-head p,.hub-card-sub,.hub-pool-workspace-head p{
  font-size:var(--hub-type-small)!important;line-height:1.5!important;
}
.hub-app small,.hub-page-kicker,.hub-contest-labels,
.hub-performance-card small,.hub-driver-score-mini small,.hub-management-kpis small,
.hub-driver-summary-strip small,.hub-week-number small,.hub-week-payout small,
.hub-race-title small,.hub-driver-directory-main>small,.hub-picked-driver small,
.hub-race-score small,.hub-proof-summary small,.hub-proof-race>header small,
.hub-proof-drivers p small,.hub-audit-row>div:nth-child(3)>span,.hub-audit-points span{
  font-size:10px!important;line-height:1.35!important;letter-spacing:.055em;
}
.hub-btn{font-size:12.5px!important;font-weight:750}
.hub-chip{font-size:11.5px!important}
.hub-status{font-size:10px!important}
.hub-contest-tabs a{font-size:12px!important;padding:12px 12px 13px}
.hub-manage-tabs a{font-size:11.5px!important;padding:9px 12px}
.hub-mini-rule,.hub-list-row,.hub-week-row,.hub-football-player-card,.hub-race-field-row{font-size:12.5px!important}
.hub-list-name strong,.hub-week-game strong,.hub-driver-directory-main>strong,
.hub-proof-drivers p strong,.hub-audit-row>div:nth-child(3)>strong{font-size:12.5px!important}
.hub-list-name span,.hub-week-game small,.hub-driver-directory-main>div span{font-size:10.5px!important;letter-spacing:0}

/* The dark Pool identity bar sits on top of one clean white workspace. */
.hub-pool-workspace{padding:22px 22px 26px;background:var(--hub-surface)!important}
.hub-pool-workspace>section.hub-card,
.hub-pool-workspace>section.hub-section.hub-card,
.hub-pool-workspace>.hub-card.hub-section,
.hub-pool-workspace>.hub-card{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.hub-pool-workspace>section.hub-card+section,
.hub-pool-workspace>.hub-card+section{margin-top:22px}
.hub-pool-workspace .hub-panel,
.hub-pool-workspace .hub-manage-action,
.hub-pool-workspace .hub-driver-score-mini,
.hub-pool-workspace .hub-rival-watch-card,
.hub-pool-workspace .hub-nascar-pick-group{
  background:var(--hub-surface-2)!important;
  background-image:none!important;
}
.hub-pool-workspace .hub-performance-card.is-featured,
.hub-pool-workspace .hub-driver-directory-card.is-mine,
.hub-pool-workspace .hub-rival-watch-card.is-me{
  background-image:linear-gradient(135deg,rgba(84,217,211,.13),rgba(84,217,211,.02) 72%)!important;
}

/* Icon tiles remain a recognizable Pool Hub element without becoming gradients everywhere. */
.hub-card-icon,.hub-action-icon,.hub-feed-icon,.hub-empty-icon,.hub-sport-mark{
  background:var(--hub-aqua-soft)!important;
  background-image:none!important;
  color:var(--hub-aqua-ink)!important;
  border-color:color-mix(in srgb,var(--hub-aqua) 18%,var(--hub-line))!important;
  box-shadow:none!important;
}
.hub-mobile-nav a{color:#8e9998!important}
.hub-mobile-nav a svg{color:currentColor!important}
.hub-mobile-nav a.is-active{color:#fff!important;background:#2b3334!important}
.hub-mobile-nav a.is-active svg{color:var(--hub-aqua)!important}

/* Splash-style Discover: wide pool rows, not tiny marketplace cards. */
.hub-discover-page{width:100%;max-width:1160px;margin-left:auto;margin-right:auto}
.hub-discover-list{gap:14px}
.hub-discover-pool-card{min-height:136px;border-radius:17px;padding:17px 18px;box-shadow:0 1px 2px rgba(20,27,27,.04),0 8px 24px rgba(20,27,27,.045)}
.hub-discover-brand-block{min-height:100px;background:var(--hub-surface-2)}
.hub-discover-pool-main h2{font-size:18px;font-weight:800}
.hub-discover-pool-main p{font-size:11.5px}
.hub-discover-pool-stats span{font-size:9.5px!important;letter-spacing:.045em}
.hub-discover-pool-stats strong{font-size:13.5px}
.hub-discover-pool-action .hub-btn{min-height:42px}

/* Public front page now presents the three supported pool families evenly. */
.pool-public-pool-grid{grid-template-columns:repeat(3,minmax(0,1fr));}

@media(max-width:1050px){
  .pool-public-pool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .hub-pool-workspace{padding:16px 14px 20px}
  .hub-contest-tabs a{font-size:11px!important;padding:10px 10px 11px}
  .hub-manage-tabs a{font-size:11px!important}
  .hub-page-head h1,.hub-manage-hero h1,.hub-picks-hero h1,.hub-pool-workspace-head h1{font-size:26px!important}
  .hub-discover-pool-card{padding:12px;min-height:0}
  .hub-discover-pool-main h2{font-size:16px}
  .pool-public-pool-grid{grid-template-columns:1fr}
}

/* Create Pool is one commissioner workspace, not a stack of giant floating cards. */
.hub-wizard-main{
  min-width:0;
  background:var(--hub-surface);
  border:1px solid var(--hub-line);
  border-radius:17px;
  box-shadow:var(--hub-shadow);
  padding:0 20px 18px;
  overflow:hidden;
}
.hub-wizard-main>.hub-builder-card{
  border:0!important;
  border-top:1px solid var(--hub-line)!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:20px 0!important;
  margin:0!important;
  background:transparent!important;
}
.hub-wizard-main>.hub-builder-card:first-child{border-top:0!important}
.hub-wizard-main>.hub-form-actions{margin-top:0;padding-top:18px;border-top:1px solid var(--hub-line)}
.hub-wizard-side{padding:4px 2px}
.hub-wizard-side h2{font-size:19px;line-height:1.18;letter-spacing:-.02em;margin:7px 0}
.hub-wizard-side>p{font-size:11.5px;line-height:1.5;color:var(--hub-muted)}

@media(max-width:760px){
  .hub-wizard-main{padding:0 14px 14px;border-radius:14px}
  .hub-wizard-main>.hub-builder-card{padding:17px 0!important}
  .hub-wizard-side{padding:0}
}

/* --------------------------------------------------------------------------
   Phase 2 readability + desktop workspace pass · Aug 25 2026
   -------------------------------------------------------------------------- */
:root{
  /* Keep aqua as the brand accent, but use darker ink/muted values for text. */
  --hub-muted:#55615f;
  --hub-muted-2:#707b79;
  --hub-aqua-ink:#074f4b;
}
html[data-theme="dark"]{
  --hub-muted:#b6c1bf;
  --hub-muted-2:#96a29f;
  --hub-aqua-ink:#b9f4f0;
}
.hub-note{color:var(--hub-aqua-ink)!important}
.hub-standings-check{margin-bottom:10px}

/* Stage bonus editor lives inside the normal race-result review workflow. */
.hub-stage-bonus-editor{
  margin:0 0 16px;
  padding:14px;
  border:1px solid var(--hub-line);
  border-radius:13px;
  background:var(--hub-surface-2);
}
.hub-stage-bonus-editor>.hub-section-head{margin-bottom:11px}
.hub-stage-bonus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hub-stage-card{border:1px solid var(--hub-line);border-radius:12px;background:var(--hub-surface);padding:11px}
.hub-stage-card-head{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px;align-items:center;margin-bottom:10px}
.hub-stage-card-head .hub-action-icon{width:34px;height:34px;margin:0}
.hub-stage-card-head>div{display:grid;min-width:0}
.hub-stage-card-head small{font-size:8.5px;letter-spacing:.07em;color:var(--hub-muted);font-weight:850}
.hub-stage-card-head strong{font-size:13px;margin-top:1px}
.hub-stage-podium-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hub-stage-podium-grid .hub-field{margin:0}
.hub-stage-note{margin-top:10px}

/* Wide screens should feel like a desktop product, not a stretched mobile page. */
@media(min-width:1060px){
  :root{
    --hub-shell:1500px;
    --hub-type-caption:11px;
    --hub-type-small:13px;
    --hub-type-body:14.5px;
    --hub-type-card:16px;
    --hub-type-section:20px;
    --hub-type-page:32px;
  }
  .hub-shell{width:min(var(--hub-shell),calc(100% - 48px))}
  .hub-header-inner{width:min(1540px,calc(100% - 48px))}
  .hub-discover-page{max-width:none}
  .hub-contest-layout{grid-template-columns:minmax(0,1fr) 380px;gap:18px}
  .hub-detail-grid{grid-template-columns:minmax(0,1fr) 360px;gap:18px}
  .hub-pick-layout{grid-template-columns:minmax(0,1fr) 340px;gap:18px}
  .hub-squares-shell{grid-template-columns:minmax(0,1fr) 340px;gap:18px}
  .hub-wizard{grid-template-columns:300px minmax(0,1fr);gap:20px}
  .hub-admin-workspace.has-editor{grid-template-columns:minmax(0,1fr) 380px}

  /* Lift the smallest commissioner labels out of the 7–9px range. */
  .hub-app small{font-size:11px!important;line-height:1.4!important}
  .hub-status{font-size:10.5px!important}
  .hub-data-table th,.mnp-admin-table th{font-size:10px}
  .hub-data-table td,.mnp-admin-table{font-size:12px}
  .hub-management-kpis small,
  .hub-driver-admin-main small,
  .hub-driver-admin-points span,
  .hub-race-week small,
  .hub-race-admin-main small,
  .hub-race-status-stack small,
  .hub-import-main small,
  .hub-import-position small,
  .hub-file-control small,
  .hub-report-winners small,
  .hub-editor-head small,
  .hub-admin-schedule-week>small,
  .hub-admin-schedule-payout>small,
  .hub-payment-summary small{font-size:10.5px!important;line-height:1.35!important}

  .hub-management-kpis p span{font-size:11px}
  .hub-management-kpis strong{font-size:17px}
  .hub-priority-action strong{font-size:13px}
  .hub-priority-action span{font-size:11.5px}
  .hub-driver-admin-row{grid-template-columns:52px minmax(0,1fr) 92px 92px 84px;min-height:74px;padding:11px 13px}
  .hub-driver-admin-photo{width:46px;height:46px}
  .hub-driver-admin-main strong{font-size:13px}
  .hub-driver-admin-main span{font-size:11px}
  .hub-driver-admin-points strong{font-size:14px}
  .hub-race-admin-main strong{font-size:13px}
  .hub-race-admin-main span{font-size:11px}
  .hub-import-main strong{font-size:13px}
  .hub-import-main span{font-size:10.5px}
  .hub-import-review-row .hub-input,.hub-import-review-row .hub-select{font-size:12px;min-height:39px}
  .hub-field>label,.hub-field>span{font-size:11.5px}
  .hub-inline-note strong{font-size:12.5px}
  .hub-inline-note small{font-size:11px}
}

@media(max-width:720px){
  .hub-stage-bonus-editor{padding:11px}
  .hub-stage-bonus-grid{grid-template-columns:1fr}
  .hub-stage-podium-grid{grid-template-columns:1fr}
}

/* ========================================================================
   Phase 2 Round 3 — player readability, football board + NASCAR polish
   ======================================================================== */

/* Public home uses the same generous desktop canvas as the signed-in hub. */
@media(min-width:1060px){
  .pool-public-header-inner{width:min(1540px,calc(100% - 48px))}
  .pool-public-hero,.pool-public-section,.pool-public-cta,.pool-public-footer{width:min(1500px,calc(100% - 48px))}
  .pool-public-hero{grid-template-columns:minmax(0,.86fr) minmax(560px,1.14fr);gap:68px}
}

/* Full-width Community / Notifications workspace. */
.hub-feed-page{width:100%;max-width:none!important}

/* Football board: smaller number headers and a board that fits the desktop canvas. */
@media(min-width:761px){
  .hub-square-grid-wrap{padding:30px 0 0 34px;overflow:auto}
  .hub-football-axis-top{left:34px}
  .hub-football-axis-left{width:27px;top:30px}
  .hub-square-grid{--hub-square-size:60px!important;grid-auto-rows:60px!important}
  .hub-square-cell{width:60px!important;min-width:60px!important;height:60px!important;min-height:60px!important}
  .hub-square-cell.is-head{height:44px!important;min-height:44px!important;align-self:center;font-size:12px!important}
}
.hub-pool-theme.is-football .hub-card-icon,
.hub-pool-theme.is-football .hub-action-icon{
  background:var(--hub-aqua-grad)!important;
  color:#0b3331!important;
  border-color:#62d7d1!important;
}
.hub-square-board-card,.hub-football-game-card{border-color:#c7d3d1!important}
.hub-square-board-head h2,.hub-football-game-card h2{color:var(--hub-ink)!important}

/* NASCAR driver cards: aqua card surface; only the actual driver portrait frame is dark. */
:root{
  --hub-driver-card-grad:linear-gradient(135deg,#e8fbfa 0%,#c9f2ef 48%,#f7fbfa 100%);
  --hub-driver-card-grad-active:linear-gradient(135deg,#d9f8f6 0%,#a8e9e5 52%,#effaf8 100%);
  --hub-driver-card-ink:#153332;
  --hub-driver-card-muted:#4f6967;
  --hub-driver-avatar-grad:linear-gradient(155deg,#344042 0%,#20292a 50%,#111718 100%);
}
html[data-theme="dark"]{
  --hub-driver-card-grad:linear-gradient(135deg,rgba(84,217,211,.34) 0%,#203a39 50%,#1b2425 100%);
  --hub-driver-card-grad-active:linear-gradient(135deg,rgba(84,217,211,.48) 0%,#27514e 54%,#1d2929 100%);
  --hub-driver-card-ink:#f4fbfa;
  --hub-driver-card-muted:#b7cbc9;
}
.hub-pool-theme.is-nascar .hub-lineup-driver,
.hub-pool-theme.is-nascar .hub-driver-choice,
.hub-pool-theme.is-nascar .hub-picked-driver,
.hub-pool-theme.is-nascar .hub-driver-score-mini{
  background:var(--hub-driver-card-grad)!important;
  background-image:var(--hub-driver-card-grad)!important;
  border-color:#abdeda!important;
  color:var(--hub-driver-card-ink)!important;
  box-shadow:0 1px 1px rgba(25,72,69,.025);
}
html[data-theme="dark"] .hub-pool-theme.is-nascar .hub-lineup-driver,
html[data-theme="dark"] .hub-pool-theme.is-nascar .hub-driver-choice,
html[data-theme="dark"] .hub-pool-theme.is-nascar .hub-picked-driver,
html[data-theme="dark"] .hub-pool-theme.is-nascar .hub-driver-score-mini{border-color:#35615e!important}
.hub-pool-theme.is-nascar .hub-driver-choice:hover:not(.is-unavailable),
.hub-pool-theme.is-nascar .hub-driver-choice.is-selected{
  background:var(--hub-driver-card-grad-active)!important;
  background-image:var(--hub-driver-card-grad-active)!important;
  box-shadow:inset 3px 0 0 var(--hub-aqua-strong),0 3px 12px rgba(47,197,191,.08)!important;
}
.hub-pool-theme.is-nascar .hub-lineup-copy strong,
.hub-pool-theme.is-nascar .hub-driver-choice-main strong,
.hub-pool-theme.is-nascar .hub-picked-driver strong,
.hub-pool-theme.is-nascar .hub-driver-score-mini strong{color:var(--hub-driver-card-ink)!important}
.hub-pool-theme.is-nascar .hub-lineup-copy small,
.hub-pool-theme.is-nascar .hub-lineup-copy span,
.hub-pool-theme.is-nascar .hub-driver-choice-main small,
.hub-pool-theme.is-nascar .hub-driver-choice-main span,
.hub-pool-theme.is-nascar .hub-picked-driver small,
.hub-pool-theme.is-nascar .hub-picked-driver span,
.hub-pool-theme.is-nascar .hub-driver-score-mini small,
.hub-pool-theme.is-nascar .hub-driver-score-mini span{color:var(--hub-driver-card-muted)!important}
.hub-pool-theme.is-nascar .hub-lineup-points strong{color:#0b625d!important;font-size:15px}
.hub-pool-theme.is-nascar .hub-lineup-points span{color:var(--hub-driver-card-muted)!important}
html[data-theme="dark"] .hub-pool-theme.is-nascar .hub-lineup-points strong{color:#7be6e0!important}
.hub-pool-theme.is-nascar .hub-driver-choice.is-unavailable{opacity:.55}

/* Portraits/avatars stay dark so transparent NASCAR driver cutouts have contrast. */
.hub-pool-theme.is-nascar .hub-lineup-photo,
.hub-pool-theme.is-nascar .hub-driver-choice-photo,
.hub-pool-theme.is-nascar .hub-picked-driver-photo,
.hub-pool-theme.is-nascar .hub-driver-score-photo{
  background:var(--hub-driver-avatar-grad)!important;
  color:#78e5df!important;
  border:1px solid rgba(117,230,225,.18);
}
.hub-pool-theme.is-nascar .hub-lineup-photo img,
.hub-pool-theme.is-nascar .hub-driver-choice-photo img,
.hub-pool-theme.is-nascar .hub-picked-driver-photo img,
.hub-pool-theme.is-nascar .hub-driver-score-photo img,
.hub-pool-theme.is-nascar .hub-driver-mini>img{
  background:var(--hub-driver-avatar-grad)!important;
}
.hub-pool-theme.is-nascar .hub-driver-mini>span{
  background:var(--hub-driver-avatar-grad)!important;
  color:#78e5df!important;
}

/* Round completion badge is two-line and cannot collapse into “4 / 5 complete”. */
.hub-round-progress-badge{display:grid;justify-items:end;gap:1px;min-width:96px;padding:7px 10px;border:1px solid #b9dedb;border-radius:10px;background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);line-height:1.1}
.hub-round-progress-badge strong{font-size:12px;font-weight:850}
.hub-round-progress-badge small{font-size:10px!important;letter-spacing:.025em!important;text-transform:none;color:inherit!important}

/* Race date badges replace internal R23-style identifiers. */
.hub-race-date-badge{min-width:50px}
.hub-race-date-badge small{font-size:10px!important;letter-spacing:.08em!important}
.hub-race-date-badge strong{font-size:18px!important;margin-top:2px}
.hub-cycle-week.hub-race-date-badge{display:grid;place-items:center;align-content:center;gap:1px;width:48px;min-width:48px;height:48px;border:1px solid var(--hub-line);border-radius:10px;background:var(--hub-surface-2);color:var(--hub-ink)}
.hub-cycle-week.hub-race-date-badge small{color:var(--hub-muted)}

/* Schedule state hierarchy: completed recedes, next race is unmistakable. */
.hub-nascar-schedule .hub-week-row{grid-template-columns:64px minmax(220px,1fr) 130px!important;transition:.14s ease}
.hub-nascar-schedule .hub-week-row.is-completed{opacity:.62;background:var(--hub-surface-2)!important}
.hub-nascar-schedule .hub-week-row.is-next{opacity:1;background-image:linear-gradient(90deg,rgba(84,217,211,.16),rgba(84,217,211,.025))!important;box-shadow:inset 3px 0 0 var(--hub-aqua)}
.hub-nascar-schedule .hub-week-row.is-upcoming{opacity:.92}
.hub-nascar-schedule .hub-week-result{justify-items:end}

/* Standings movement is semantic. No neutral “No rank change” text is rendered. */
.hub-standing-movement{display:inline-flex!important;align-items:center;gap:4px;margin-top:3px;font-size:10.5px!important;font-weight:750}
.hub-standing-movement svg{width:13px;height:13px}
.hub-standing-movement.is-up{color:var(--hub-aqua-ink)!important}
.hub-standing-movement.is-down{color:#c64242!important}

/* Results hierarchy: driver > team, and avatars remain consistently framed. */
.hub-driver-mini strong{font-size:13.5px!important;font-weight:800!important;line-height:1.2}
.hub-driver-mini small{font-size:10.5px!important;margin-top:2px;color:var(--hub-muted)!important}
.hub-driver-mini>img,.hub-driver-mini>span{width:42px!important;height:44px!important;border-radius:9px!important;object-fit:cover!important;object-position:center top!important}
.hub-driver-mini{grid-template-columns:42px minmax(0,1fr)!important}
.hub-lineup-copy strong,.hub-driver-choice-main strong,.hub-driver-score-mini strong{font-size:13px!important;line-height:1.2!important}
.hub-lineup-copy small,.hub-driver-choice-main small,.hub-driver-score-mini small{font-size:10px!important}
.hub-lineup-copy span,.hub-driver-choice-main span,.hub-driver-score-mini span{font-size:10.5px!important}
.hub-picked-driver strong{font-size:12.5px!important}
.hub-picked-driver small,.hub-picked-driver span{font-size:10px!important}

/* Admin user control workspace. */
.hub-admin-users-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}
.hub-admin-user-list{display:grid;border:1px solid var(--hub-line);border-radius:14px;overflow:hidden;background:var(--hub-surface)}
.hub-admin-user-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border-top:1px solid var(--hub-line);color:var(--hub-ink)}
.hub-admin-user-row:first-child{border-top:0}.hub-admin-user-row:hover,.hub-admin-user-row.is-active{background:var(--hub-surface-2)}
.hub-admin-user-row.is-active{box-shadow:inset 3px 0 0 var(--hub-aqua)}
.hub-admin-user-row>.hub-avatar{width:38px;height:38px}
.hub-admin-user-row>div{display:grid;min-width:0}.hub-admin-user-row strong{font-size:13px}.hub-admin-user-row span{font-size:10.5px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-admin-user-editor{position:sticky;top:calc(var(--hub-header-h) + 18px)}
.hub-handle-input{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;border:1px solid var(--hub-line);border-radius:10px;background:var(--hub-surface);overflow:hidden}
.hub-handle-input>span{padding:0 0 0 11px;font-weight:800;color:var(--hub-muted)}.hub-handle-input .hub-input{border:0!important;box-shadow:none!important;padding-left:3px}
.hub-admin-secondary-action{margin-top:9px;padding-top:9px;border-top:1px solid var(--hub-line)}
.hub-member-row-admin{grid-template-columns:36px minmax(0,1fr) auto auto!important}
.hub-member-row-admin>.hub-inline-form{margin:0}

@media(max-width:900px){
  .hub-admin-users-layout{grid-template-columns:1fr}.hub-admin-user-editor{position:static}
}
@media(max-width:760px){
  .hub-nascar-schedule .hub-week-row{grid-template-columns:50px minmax(0,1fr)!important}
  .hub-nascar-schedule .hub-week-result{grid-column:2;justify-items:start}
  .hub-member-row-admin{grid-template-columns:34px minmax(0,1fr) auto!important}
  .hub-member-row-admin>.hub-member-stats{display:none!important}.hub-member-row-admin>.hub-inline-form{grid-column:2/-1!important}
}

/* Admin People rows: real name is primary; email is secondary. Commissioner usernames are not used as player display names. */
.hub-admin-user-copy{display:grid;min-width:0;gap:2px}
.hub-admin-user-copy strong{font-size:13px;line-height:1.2;color:var(--hub-ink)}
.hub-admin-user-copy small{font-size:10.5px!important;line-height:1.35!important;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-admin-user-meta{display:grid;justify-items:end;line-height:1.1}
.hub-admin-user-meta strong{font-size:13px;color:var(--hub-ink)}
.hub-admin-user-meta small{font-size:9px!important;color:var(--hub-muted)}
.hub-admin-user-row{grid-template-columns:42px minmax(0,1fr) auto auto!important}
@media(max-width:620px){
  .hub-admin-user-row{grid-template-columns:38px minmax(0,1fr) auto!important}
  .hub-admin-user-meta{display:none}
  .hub-admin-user-row>.hub-status{grid-column:3}
}

/* Production guard: pool progress cards must always size to their content. */
.hub-contest-card,.hub-contest-card-inner{height:auto!important;min-height:0!important}
.hub-contest-progress{align-self:center;min-height:0}

/* NASCAR season setup final pass: predictable forms and reusable season templates. */
.hub-form-grid{align-items:start}
.hub-field{align-content:start;min-width:0}
.hub-form-grid>.is-full{grid-column:1/-1}
.hub-field-help{margin:0;font-size:10.5px;color:var(--hub-muted);line-height:1.45}
.hub-admin-workspace.has-editor .hub-editor-card .hub-form-grid{grid-template-columns:1fr}
.hub-admin-workspace.has-editor .hub-editor-card .hub-form-grid>.hub-field{grid-column:auto}
.hub-locked-context{margin:12px 0 0}

.hub-reuse-panel{padding:0;overflow:hidden}
.hub-reuse-panel>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:42px minmax(0,1fr) 24px;gap:11px;align-items:center;padding:14px 16px}
.hub-reuse-panel>summary::-webkit-details-marker{display:none}
.hub-reuse-panel>summary>span:nth-child(2){display:grid;gap:3px}
.hub-reuse-panel>summary strong{font-size:13px}
.hub-reuse-panel>summary small{font-size:10.5px;color:var(--hub-muted);line-height:1.45}
.hub-reuse-panel[open]>summary{border-bottom:1px solid var(--hub-line);background:var(--hub-surface-2)}
.hub-reuse-panel[open]>summary .hub-action-go{transform:rotate(180deg)}
.hub-reuse-panel-body{display:grid;gap:13px;padding:14px 16px 16px}
.hub-template-season-form{align-items:end;max-width:520px}
.hub-template-season-form .hub-field{min-width:260px;margin:0}
.hub-template-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10.5px;color:var(--hub-muted)}
.hub-template-toolbar>div{display:flex;gap:10px}
.hub-text-btn{border:0;background:transparent;color:var(--hub-aqua-ink);font:inherit;font-size:10.5px;font-weight:800;cursor:pointer;padding:4px}
.hub-template-picker-list{display:grid;border:1px solid var(--hub-line);border-radius:12px;overflow:auto;max-height:420px;background:var(--hub-surface)}
.hub-template-picker-row{display:grid;grid-template-columns:18px 48px minmax(0,1fr);gap:9px;align-items:center;padding:9px 11px;border-top:1px solid var(--hub-line);cursor:pointer}
.hub-template-picker-row:first-child{border-top:0}
.hub-template-picker-row:hover{background:var(--hub-surface-2)}
.hub-template-picker-row input{width:15px;height:15px;accent-color:var(--hub-aqua);margin:0}
.hub-template-picker-row>span:last-child{display:grid;min-width:0;gap:2px}
.hub-template-picker-row strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-template-picker-row small{font-size:10px!important;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-template-number{font-size:10px;font-weight:850;color:var(--hub-aqua-ink);text-align:center;padding:5px 4px;border-radius:7px;background:var(--hub-aqua-soft)}
.hub-driver-template-list .hub-template-number{min-width:38px}

@media(max-width:760px){
  .hub-reuse-panel>summary{grid-template-columns:36px minmax(0,1fr) 20px;padding:12px}
  .hub-reuse-panel-body{padding:12px}
  .hub-template-toolbar{align-items:flex-start;flex-direction:column}
  .hub-template-picker-row{grid-template-columns:18px 42px minmax(0,1fr);padding:9px}
  .hub-template-season-form{max-width:none;width:100%}.hub-template-season-form .hub-field{min-width:0;width:100%}
}

/* ========================================================================== 
   2026-08-26 FINAL PRODUCTION UI CONSISTENCY PASS
   These overrides intentionally live last so shared components stay identical
   across NASCAR, Football, brackets, admin, activity and authentication.
   ========================================================================== */

/* Calm the NASCAR driver cards while keeping the portrait well dark. */
:root{
  --hub-driver-card-grad:linear-gradient(135deg,#fbfefd 0%,#eef9f7 52%,#f8fcfb 100%);
  --hub-driver-card-grad-active:linear-gradient(135deg,#f4fcfb 0%,#dcf3f0 52%,#f8fcfb 100%);
}
html[data-theme="dark"]{
  --hub-driver-card-grad:linear-gradient(135deg,rgba(84,217,211,.09) 0%,#202d2d 52%,#1b2425 100%);
  --hub-driver-card-grad-active:linear-gradient(135deg,rgba(84,217,211,.15) 0%,#24403e 52%,#1c2828 100%);
}
.hub-driver-avatar,
.hub-driver-photo,
.hub-driver-score-photo,
.hub-picked-driver-photo,
.hub-lineup-driver-photo{
  background:linear-gradient(145deg,#273031,#161c1d)!important;
  background-image:linear-gradient(145deg,#273031,#161c1d)!important;
}

/* Every sport icon uses the same NASCAR-style aqua tile treatment. */
.hub-sport-mark,
.hub-sport-mark.is-nascar,
.hub-sport-mark.is-football,
.hub-sport-mark.is-basketball,
.hub-sport-mark.is-hockey,
.hub-pool-theme .hub-sport-mark{
  background:linear-gradient(145deg,#effcfb,#d9f4f1)!important;
  background-image:linear-gradient(145deg,#effcfb,#d9f4f1)!important;
  color:#176e69!important;
  border:1px solid #b9e4e0!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .hub-sport-mark,
html[data-theme="dark"] .hub-pool-theme .hub-sport-mark{
  background:linear-gradient(145deg,#263c3a,#1d302f)!important;
  background-image:linear-gradient(145deg,#263c3a,#1d302f)!important;
  color:#7be1dc!important;
  border-color:#355c59!important;
}
.hub-discover-sport-logo svg{
  box-sizing:content-box;
  width:24px!important;
  height:24px!important;
  padding:10px;
  border-radius:12px;
  background:linear-gradient(145deg,#effcfb,#d9f4f1)!important;
  color:#176e69!important;
  border:1px solid #b9e4e0!important;
}
html[data-theme="dark"] .hub-discover-sport-logo svg{
  background:linear-gradient(145deg,#263c3a,#1d302f)!important;
  color:#7be1dc!important;
  border-color:#355c59!important;
}

/* Status badges on Discover stay inside the aqua brand family. */
.hub-discover-pool-action .hub-status,
.hub-discover-card .hub-status{
  background:var(--hub-aqua-soft)!important;
  color:var(--hub-aqua-ink)!important;
  border-color:rgba(84,217,211,.34)!important;
}

/* My Pools rank movement sits beside the overall rank instead of beneath it. */
.hub-rank-wrap{display:flex;align-items:center;justify-content:flex-end;gap:11px;min-width:0}
.hub-rank-wrap .hub-rank-change{position:static!important;margin:0!important;align-self:center;white-space:nowrap}
.hub-rank-wrap .hub-rank{min-width:66px}

/* Counts are content-sized pills, never tiny black circles with clipped text. */
.hub-count-pill{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  min-height:28px!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  line-height:1!important;
  font-size:10px!important;
  font-weight:800!important;
  background:var(--hub-surface-2)!important;
  color:var(--hub-ink)!important;
  border:1px solid var(--hub-line)!important;
}

/* Payment guidance after joining a paid non-square pool. */
.hub-payment-callout{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  margin:0 0 16px;
  padding:15px 17px;
  border:1px solid rgba(84,217,211,.42);
  border-radius:15px;
  background:linear-gradient(135deg,#f4fcfb 0%,#e5f8f5 58%,#f9fdfc 100%);
}
.hub-payment-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--hub-aqua-soft);color:var(--hub-aqua-ink);border:1px solid #bee8e4}
.hub-payment-icon svg{width:20px;height:20px}
.hub-payment-callout>div{min-width:0}
.hub-payment-callout small{display:block;font-size:9px;font-weight:850;letter-spacing:.08em;color:var(--hub-aqua-ink);margin-bottom:2px}
.hub-payment-callout h2{font-size:18px;line-height:1.2;margin:0 0 3px}
.hub-payment-callout p{font-size:11.5px;line-height:1.5;color:var(--hub-muted);margin:0;max-width:760px}
html[data-theme="dark"] .hub-payment-callout{background:linear-gradient(135deg,#1e3432,#1d2929);border-color:#355f5b}

/* Participant administration: identity, status and controls stay on one clean row. */
.hub-member-row-admin{
  display:grid!important;
  grid-template-columns:42px minmax(220px,1fr) auto minmax(330px,auto)!important;
  gap:14px!important;
  align-items:center!important;
  padding:13px 0!important;
}
.hub-member-row-admin .hub-avatar{width:40px;height:40px;overflow:hidden}
.hub-member-row-admin .hub-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.hub-member-main{display:grid;gap:3px;min-width:0}
.hub-member-main strong{font-size:12px}
.hub-member-main span{font-size:10px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-member-row-admin>.hub-member-stats{display:flex!important;align-items:center;gap:8px!important;white-space:nowrap}
.hub-member-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.hub-member-actions .hub-inline-form{display:flex;align-items:center;gap:7px;margin:0!important}
.hub-member-actions .hub-inline-form .hub-input{min-width:122px;width:auto}
.hub-member-actions form{margin:0}

/* Activity and notifications use a bounded readable feed instead of scattered rows. */
.hub-feed-page{width:100%;max-width:none}
.hub-feed-card{padding:0!important;overflow:hidden}
.hub-feed-card .hub-feed-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--hub-line);margin:0}
.hub-feed-card .hub-feed-toolbar h2{font-size:18px;margin:0 0 3px}
.hub-feed-card .hub-feed-toolbar p{font-size:11px;color:var(--hub-muted);margin:0}
.hub-feed-card .hub-activity-list{display:grid;padding:0!important}
.hub-feed-card .hub-activity-row{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 22px!important;
  gap:12px!important;
  align-items:center!important;
  padding:14px 18px!important;
  border-top:1px solid var(--hub-line)!important;
  color:inherit;
  text-decoration:none;
}
.hub-feed-card .hub-activity-row:first-child{border-top:0!important}
.hub-feed-card .hub-activity-row:hover{background:var(--hub-surface-2)}
.hub-feed-card .hub-activity-row.is-unread{background:linear-gradient(90deg,rgba(84,217,211,.09),rgba(84,217,211,.025))}
.hub-feed-card .hub-feed-icon{width:38px;height:38px;border-radius:11px}
.hub-feed-card .hub-activity-copy{display:grid;gap:3px;min-width:0}
.hub-feed-card .hub-activity-copy strong{font-size:12.5px;line-height:1.35}
.hub-feed-card .hub-activity-copy p{font-size:10.5px;line-height:1.45;color:var(--hub-muted);margin:0}
.hub-feed-card .hub-activity-meta{display:flex;align-items:center;gap:8px;min-width:0;font-size:9.5px;color:var(--hub-muted-2)}
.hub-feed-card .hub-activity-meta time{margin-left:auto;white-space:nowrap}
.hub-feed-card .hub-activity-row>svg{width:16px;height:16px;color:var(--hub-muted-2);justify-self:end}
.hub-feed-card .hub-empty{margin:18px}

/* Champions need enough card width on desktop to avoid unnecessary wrapping. */
@media(min-width:761px){
  .hub-champion-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))!important}
  .hub-champion-card small{white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}
}

/* Admin People editor: keep two-column fields balanced and secondary text separated. */
.hub-admin-users-layout{grid-template-columns:minmax(0,1fr) minmax(430px,470px)!important;gap:18px!important}
.hub-admin-user-editor .hub-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;align-items:start!important}
.hub-admin-user-editor .hub-field{align-self:start}
.hub-admin-user-editor .hub-field small{font-size:9.5px;line-height:1.4}
.hub-admin-secondary-action{display:grid!important;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:10px!important}
.hub-admin-secondary-action>span{display:block;font-size:10px;line-height:1.4;color:var(--hub-muted)}
.hub-admin-user-row .hub-avatar{overflow:hidden}
.hub-admin-user-row .hub-avatar img{width:100%;height:100%;object-fit:cover;display:block}

/* Delivery Center can show the exact rendered email without leaving the page. */
.hub-email-preview-card{margin:16px 0;overflow:hidden}
.hub-email-preview-meta{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.hub-email-preview-meta span{padding:5px 8px;border-radius:999px;background:var(--hub-surface-2);border:1px solid var(--hub-line);font-size:9px;font-weight:750;color:var(--hub-muted)}
.hub-email-preview-frame{display:block;width:100%;height:620px;border:1px solid var(--hub-line);border-radius:12px;background:#fff}
.hub-table-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;white-space:nowrap}
.hub-table-actions form{margin:0}

/* Aqua notification dot replaces the old red indicator. */
.hub-notification-dot{position:absolute;right:5px;top:5px;width:9px;height:9px;border:2px solid var(--hub-nav);border-radius:50%;background:var(--hub-aqua);box-shadow:0 0 0 2px rgba(84,217,211,.13)}

/* Restore the white Commissioner Setup card in the pool builder. */
.hub-wizard-side{
  background:var(--hub-surface)!important;
  border:1px solid var(--hub-line)!important;
  border-radius:17px!important;
  box-shadow:var(--hub-shadow)!important;
  padding:20px!important;
  align-self:start;
}

/* Consistent action notifications: fixed, readable, self-dismissing. */
.hub-toast,
.hub-alert.hub-toast{
  position:fixed!important;
  right:22px!important;
  bottom:var(--hub-toast-offset,22px)!important;
  z-index:800!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
  width:min(440px,calc(100vw - 28px))!important;
  max-width:none!important;
  margin:0!important;
  padding:13px 15px!important;
  border:1px solid #354142!important;
  border-radius:14px!important;
  background:#202829!important;
  color:#fff!important;
  box-shadow:0 18px 48px rgba(9,15,16,.24)!important;
  animation:hub-toast .2s ease-out!important;
  cursor:default;
}
.hub-toast>svg,.hub-alert.hub-toast>svg{width:22px!important;height:22px!important;margin:1px 0 0!important;color:var(--hub-aqua)!important}
.hub-toast>div,.hub-alert.hub-toast>div{display:grid!important;gap:2px!important;min-width:0}
.hub-toast strong,.hub-alert.hub-toast strong{display:block;font-size:12.5px!important;line-height:1.35;color:#fff!important}
.hub-toast span,.hub-alert.hub-toast span{display:block;font-size:10.5px!important;line-height:1.45;color:#bdc7c6!important}
.hub-toast.is-leaving{opacity:0!important;transform:translateY(7px)!important;transition:opacity .2s ease,transform .2s ease!important;pointer-events:none}

/* Login: all three benefit tiles share one desktop row. */
@media(min-width:881px){
  .auth-brand-copy{max-width:570px!important}
  .auth-brand-features{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
  .auth-brand-feature{min-width:0;font-size:10.5px!important;padding:9px 8px;border:1px solid rgba(255,255,255,.1);border-radius:9px}
}

/* Register: remove the empty second-column slot and keep labels aligned. */
.auth-card.is-wide{width:min(100%,720px)!important}
.auth-form-row{align-items:start}
.auth-form-row-single{grid-template-columns:1fr!important}
.auth-form-row-single>.hub-field{max-width:calc(50% - 5px)}

/* Public home: 3-up pool cards keep readable art/body proportions. */
@media(min-width:1051px){
  .pool-public-pool-card{grid-template-columns:minmax(128px,35%) minmax(0,1fr)!important;min-width:0!important}
  .pool-public-pool-art{min-width:0!important;padding:16px!important}
  .pool-public-pool-art strong{font-size:29px!important;max-width:100%;overflow-wrap:anywhere}
  .pool-public-pool-body{min-width:0!important;padding:18px 16px!important}
  .pool-public-pool-body>div,.pool-public-pool-body ul{min-width:0}
  .pool-public-pool-body li{white-space:normal!important;overflow-wrap:anywhere}
  .pool-public-pool-body h3{font-size:18px!important}
  .pool-public-pool-body p{font-size:10.5px!important;line-height:1.5}
}

@media(max-width:1100px){
  .hub-member-row-admin{grid-template-columns:40px minmax(0,1fr) auto!important}
  .hub-member-actions{grid-column:2/-1;justify-content:flex-start;flex-wrap:wrap}
  .hub-admin-users-layout{grid-template-columns:1fr!important}
  .hub-admin-user-editor{position:static!important}
}
@media(max-width:760px){
  .hub-payment-callout{grid-template-columns:38px minmax(0,1fr);padding:13px;gap:10px}
  .hub-payment-callout>.hub-btn{grid-column:1/-1;width:100%}
  .hub-member-row-admin{grid-template-columns:36px minmax(0,1fr)!important;gap:10px!important}
  .hub-member-row-admin>.hub-member-stats{grid-column:2;justify-content:flex-start!important}
  .hub-member-actions{grid-column:1/-1!important;display:grid;grid-template-columns:1fr!important;width:100%}
  .hub-member-actions .hub-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%}
  .hub-member-actions .hub-inline-form .hub-input{width:100%;min-width:0}
  .hub-feed-card .hub-feed-toolbar{align-items:flex-start;flex-direction:column;padding:14px}
  .hub-feed-card .hub-activity-row{grid-template-columns:38px minmax(0,1fr) 18px!important;padding:12px!important;gap:9px!important}
  .hub-feed-card .hub-activity-meta{flex-wrap:wrap}
  .hub-feed-card .hub-activity-meta time{width:100%;margin-left:0}
  .hub-wizard-side{position:static!important;padding:16px!important;border-radius:14px!important}
  .auth-form-row-single>.hub-field{max-width:none}
  .hub-email-preview-frame{height:520px}
  .hub-toast,.hub-alert.hub-toast{right:14px!important;bottom:var(--hub-toast-offset,14px)!important;width:calc(100vw - 28px)!important}
}
.hub-rank-change.is-up{color:var(--hub-aqua-ink)!important}
.hub-rank-change.is-down{color:#c64242!important}
.hub-football-player-card{grid-template-columns:38px minmax(0,1fr) 100px 100px!important}
@media(max-width:760px){.hub-football-player-card{grid-template-columns:34px minmax(0,1fr)!important}.hub-football-player-card .hub-football-player-stat{grid-column:2!important;text-align:left!important}}
.hub-contest-card .hub-contest-labels span + span::before{content:"·";display:inline-block;margin-right:7px;color:var(--hub-muted-2)}
@media(min-width:1101px){.hub-contest-card-inner{grid-template-columns:50px minmax(0,1fr) minmax(190px,260px) minmax(120px,auto)!important}}

/* ========================================================================
   FINAL PRODUCTION POLISH — Aug 26, 2026
   Scoped to the requested status, dashboard, NASCAR and public-home fixes.
   ======================================================================== */

/* Semantic pool status indicators: upcoming is orange, draft is neutral grey. */
.hub-status-dot.is-upcoming:before{
  background:#e99a3b!important;
  box-shadow:0 0 0 3px rgba(233,154,59,.13)!important;
}
.hub-status-dot.is-draft:before{
  background:#98a3a2!important;
  box-shadow:none!important;
}
.hub-status.is-upcoming{
  background:#fff5e8!important;
  color:#a85b08!important;
  border-color:#efc58e!important;
}
.hub-status.is-draft{
  background:#f2f4f3!important;
  color:#6f7b7a!important;
  border-color:#d7dddc!important;
}
html[data-theme="dark"] .hub-status.is-upcoming{
  background:rgba(233,154,59,.14)!important;
  color:#f2b76d!important;
  border-color:rgba(233,154,59,.28)!important;
}
html[data-theme="dark"] .hub-status.is-draft{
  background:#252d2e!important;
  color:#aeb8b7!important;
  border-color:#394344!important;
}
/* Discover keeps Open/Complete in the aqua family, but Upcoming/Draft stay semantic. */
.hub-discover-pool-action .hub-status.is-live,
.hub-discover-pool-action .hub-status.is-open,
.hub-discover-pool-action .hub-status.is-final,
.hub-discover-card .hub-status.is-live,
.hub-discover-card .hub-status.is-open,
.hub-discover-card .hub-status.is-final{
  background:var(--hub-aqua-soft)!important;
  color:var(--hub-aqua-ink)!important;
  border-color:rgba(84,217,211,.34)!important;
}
.hub-discover-pool-action .hub-status.is-upcoming,
.hub-discover-card .hub-status.is-upcoming{
  background:#fff5e8!important;
  color:#a85b08!important;
  border-color:#efc58e!important;
}
.hub-discover-pool-action .hub-status.is-draft,
.hub-discover-card .hub-status.is-draft{
  background:#f2f4f3!important;
  color:#6f7b7a!important;
  border-color:#d7dddc!important;
}

/* Dashboard progress fills sit fully inside the rounded track. */
.hub-progress{
  box-sizing:border-box!important;
  padding:0!important;
  overflow:hidden!important;
}
.hub-progress>span{
  display:block!important;
  height:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-radius:999px!important;
  line-height:0!important;
}

/* The Needs action count remains the original charcoal treatment. */
.hub-count-pill-dark{
  background:var(--hub-nav)!important;
  color:#fff!important;
  border-color:var(--hub-nav)!important;
}
html[data-theme="dark"] .hub-count-pill-dark{
  background:#101617!important;
  border-color:#344041!important;
}

/* NASCAR dashboard title already carries the year; hide the repeated season chip on phones. */
@media(max-width:760px){
  .hub-contest-card .hub-season-label{display:none!important}
  .hub-contest-card .hub-season-label + span::before{content:none!important;margin:0!important}
}

/* NASCAR cards retain the aqua identity, but as a subtle wash rather than a saturated gradient. */
:root{
  --hub-driver-card-grad:linear-gradient(135deg,#ffffff 0%,#f7fbfa 52%,#fbfdfd 100%);
  --hub-driver-card-grad-active:linear-gradient(135deg,#fbfdfd 0%,#eef8f6 52%,#ffffff 100%);
}
html[data-theme="dark"]{
  --hub-driver-card-grad:linear-gradient(135deg,#202829 0%,#21302f 52%,#202829 100%);
  --hub-driver-card-grad-active:linear-gradient(135deg,#202b2b 0%,#233735 52%,#202829 100%);
}
.hub-pool-theme.is-nascar .hub-lineup-driver,
.hub-pool-theme.is-nascar .hub-driver-choice,
.hub-pool-theme.is-nascar .hub-picked-driver,
.hub-pool-theme.is-nascar .hub-driver-score-mini{
  border-color:#c8e7e4!important;
  box-shadow:none!important;
}
.hub-pool-theme.is-nascar .hub-driver-choice:hover:not(.is-unavailable),
.hub-pool-theme.is-nascar .hub-driver-choice.is-selected{
  box-shadow:inset 3px 0 0 var(--hub-aqua),0 2px 9px rgba(47,197,191,.045)!important;
}

/* Race snapshot: score, weekly mover, weekly loser and the next race. */
.hub-performance-grid.is-four{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.hub-performance-grid.is-four .hub-performance-card.is-featured{
  grid-column:auto!important;
}
.hub-next-race-card strong{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.hub-next-race-card span{display:block}
@media(max-width:900px){
  .hub-performance-grid.is-four{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){
  .hub-performance-grid.is-four{grid-template-columns:1fr!important}
}


/* Real profile photos use the same circular avatar frame; missing photos stay initials. */
.hub-rival-avatar,.hub-podium-avatar{overflow:hidden}
.hub-rival-avatar img,.hub-podium-avatar img{width:100%;height:100%;object-fit:cover;display:block}

/* Standings movement is a compact + 1 / - 1 value. */
.hub-standing-movement{
  margin-top:2px!important;
  font-size:10.5px!important;
  font-weight:850!important;
  letter-spacing:.01em;
}
.hub-standing-movement.is-up{color:var(--hub-aqua-ink)!important}
.hub-standing-movement.is-down{color:#c64242!important}

/* Public home: keep the right-side explainer text intentionally right aligned on desktop. */
@media(min-width:981px){
  .pool-public-section-head>p{
    justify-self:end!important;
    text-align:right!important;
    max-width:640px;
  }
}
@media(max-width:980px){
  .pool-public-section-head>p{justify-self:start!important;text-align:left!important;max-width:none}
}

/* Brackets must always read as one word and keep breathing room on every breakpoint. */
.pool-public-pool-card.is-bracket .pool-public-pool-art strong{
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  font-size:26px!important;
  letter-spacing:-.055em!important;
}
@media(max-width:680px){
  .pool-public-pool-card{grid-template-columns:128px minmax(0,1fr)!important}
  .pool-public-pool-art{padding:14px 12px!important}
  .pool-public-pool-art strong{font-size:22px!important;white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important}
  .pool-public-pool-card.is-bracket .pool-public-pool-art strong{font-size:20px!important}
  .pool-public-pool-body{padding:14px!important;gap:13px!important}
  .pool-public-pool-body h3{font-size:16px!important}
  .pool-public-pool-body p{font-size:10px!important;line-height:1.48!important}
  .pool-public-pool-body li{font-size:8.75px!important;padding:4px 6px!important}
}

/* ========================================================================
   PRODUCTION POLISH ROUND 3 — requested contest/rivalry/football fixes only
   ======================================================================== */

/* Standings movement stays beside the player's name so every row aligns. */
.hub-standing-name-row{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.hub-standing-name-row>strong{
  display:flex!important;
  align-items:center;
  gap:4px;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hub-standing-name-row>.hub-standing-movement{
  display:inline-flex!important;
  align-items:center;
  flex:0 0 auto;
  margin:0!important;
  line-height:1;
}

/* Race-level Upcoming badges are intentionally neutral; pool-level Upcoming
   status remains orange everywhere else. */
.hub-status.is-scheduled{
  background:#f1f4f3!important;
  color:#697574!important;
  border-color:#d7dedc!important;
}
html[data-theme="dark"] .hub-status.is-scheduled{
  background:#252d2e!important;
  color:#aeb8b7!important;
  border-color:#394344!important;
}

/* Football Pool Home uses the exact same restrained icon treatment as NASCAR. */
.hub-pool-theme.is-football .hub-personal-stats .hub-action-icon,
.hub-pool-theme.is-football .hub-manage-action .hub-action-icon{
  background:var(--hub-ui-icon-soft)!important;
  color:var(--hub-ui-icon)!important;
  border:1px solid var(--hub-ui-icon-line)!important;
  box-shadow:none!important;
}
.hub-pool-theme.is-football .hub-personal-stats .hub-manage-action{
  background:var(--hub-surface-2)!important;
  border-color:var(--hub-line)!important;
}

/* Football Squares: board fills its card on desktop while keeping the number
   headers compact. Mobile retains horizontal scrolling instead of crushing cells. */
@media(min-width:761px){
  .hub-square-grid-wrap{
    padding:30px 0 0 34px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }
  .hub-football-axis-top{left:34px!important}
  .hub-football-axis-left{width:27px!important;top:30px!important}
  .hub-square-grid{
    width:100%!important;
    min-width:680px!important;
    grid-template-columns:44px repeat(10,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
  }
  .hub-square-cell{
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
  }
  .hub-square-cell:not(.is-head){
    aspect-ratio:1 / 1;
    min-height:54px!important;
  }
  .hub-square-cell.is-corner,
  .hub-square-cell.is-top-head{
    height:42px!important;
    min-height:42px!important;
    align-self:stretch!important;
    font-size:11px!important;
  }
  .hub-square-cell.is-side-head{
    height:auto!important;
    min-height:54px!important;
    align-self:stretch!important;
    font-size:11px!important;
  }
}
@media(max-width:760px){
  .hub-square-grid{
    width:max-content!important;
    min-width:0!important;
    grid-template-columns:38px repeat(10,56px)!important;
    grid-auto-rows:56px!important;
  }
  .hub-square-cell{
    width:auto!important;
    min-width:0!important;
    height:56px!important;
    min-height:56px!important;
  }
  .hub-square-cell.is-corner,
  .hub-square-cell.is-top-head{
    height:38px!important;
    min-height:38px!important;
  }
  .hub-square-cell.is-side-head{height:56px!important;min-height:56px!important}
}

/* Rivalry = head-to-head bragging rights, not generic "period" reporting. */
.hub-rivalry-board{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,.72fr) minmax(0,1fr);
  gap:12px;
  align-items:stretch;
  margin-bottom:12px;
}
.hub-rivalry-player,
.hub-rivalry-scoreboard{
  border:1px solid var(--hub-line);
  border-radius:16px;
  background:var(--hub-surface);
  box-shadow:var(--hub-shadow);
}
.hub-rivalry-player{
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px;
  min-width:0;
}
.hub-rivalry-player.is-rival{flex-direction:row-reverse;text-align:right}
.hub-rivalry-player>div:last-child{display:grid;min-width:0}
.hub-rivalry-player small,
.hub-rivalry-scoreboard>small,
.hub-rivalry-kpis small,
.hub-rivalry-event small,
.hub-rivalry-battle-score small{
  color:var(--hub-muted);
  font-size:9px;
  font-weight:850;
  letter-spacing:.075em;
}
.hub-rivalry-player h1{
  margin:2px 0 7px;
  font-size:20px;
  line-height:1.08;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.hub-rivalry-player strong{font-size:16px;line-height:1.1}
.hub-rivalry-player span{margin-top:2px;color:var(--hub-muted);font-size:10.5px}
.hub-rivalry-avatar{
  width:62px;
  height:62px;
  flex:0 0 62px;
  border-radius:50%;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:linear-gradient(145deg,#667170,#414a4a);
  color:#fff;
  font-size:18px;
  font-weight:850;
  border:1px solid rgba(255,255,255,.16);
}
.hub-rivalry-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.hub-rivalry-scoreboard{
  display:grid;
  place-items:center;
  align-content:center;
  text-align:center;
  padding:16px;
  background-image:var(--hub-aqua-wash),linear-gradient(var(--hub-surface-2),var(--hub-surface-2));
}
.hub-rivalry-scoreboard>.hub-card-icon{width:38px;height:38px;margin-bottom:7px}
.hub-rivalry-scoreboard>strong{font-size:15px;line-height:1.15}
.hub-rivalry-scoreboard>b{font-size:28px;line-height:1;margin:7px 0 5px;letter-spacing:-.045em}
.hub-rivalry-scoreboard>b i{font-style:normal;color:var(--hub-muted);font-weight:500}
.hub-rivalry-scoreboard>span:last-child{font-size:9.5px;line-height:1.4;color:var(--hub-muted);max-width:250px}
.hub-rivalry-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px;
}
.hub-rivalry-kpis>article{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:12px;
  border:1px solid var(--hub-line);
  border-radius:13px;
  background:var(--hub-surface);
}
.hub-rivalry-kpis .hub-card-icon{width:36px;height:36px}
.hub-rivalry-kpis>article>div{display:grid;min-width:0}
.hub-rivalry-kpis strong{font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-rivalry-kpis span{font-size:9.5px;color:var(--hub-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-rivalry-history{padding:16px}
.hub-rivalry-battle-list{display:grid;border:1px solid var(--hub-line);border-radius:13px;overflow:hidden}
.hub-rivalry-battle{
  display:grid;
  grid-template-columns:minmax(220px,1fr) 82px 120px 82px;
  align-items:center;
  gap:10px;
  min-height:72px;
  padding:10px 12px;
  border-top:1px solid var(--hub-line);
  background:var(--hub-surface);
}
.hub-rivalry-battle:first-child{border-top:0}
.hub-rivalry-event{display:grid;min-width:0}
.hub-rivalry-event strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-rivalry-event span{font-size:9.5px;color:var(--hub-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.hub-rivalry-battle-score{display:grid;text-align:center;min-width:0}
.hub-rivalry-battle-score strong{font-size:16px;line-height:1.05}
.hub-rivalry-battle-score span{font-size:8.5px;color:var(--hub-muted);margin-top:2px}
.hub-rivalry-outcome{display:grid;justify-items:center;text-align:center}
.hub-rivalry-outcome span{display:inline-flex;min-height:25px;align-items:center;padding:4px 8px;border-radius:999px;background:#f1f4f3;border:1px solid var(--hub-line);color:var(--hub-muted);font-size:9.5px;font-weight:800;white-space:nowrap}
.hub-rivalry-outcome small{font-size:8.5px;color:var(--hub-muted);margin-top:3px}
.hub-rivalry-battle.is-you .hub-rivalry-outcome span{background:var(--hub-aqua-soft);border-color:rgba(84,217,211,.35);color:var(--hub-aqua-ink)}
.hub-rivalry-battle.is-rival .hub-rivalry-outcome span{background:#fff1f0;border-color:#f1cac6;color:#a13d36}
html[data-theme="dark"] .hub-rivalry-battle.is-rival .hub-rivalry-outcome span{background:rgba(198,66,66,.13);border-color:rgba(198,66,66,.28);color:#ed9a94}

@media(max-width:980px){
  .hub-rivalry-board{grid-template-columns:1fr 1fr}
  .hub-rivalry-scoreboard{grid-column:1/-1;grid-row:2}
  .hub-rivalry-kpis{grid-template-columns:1fr 1fr}
  .hub-rivalry-battle{grid-template-columns:minmax(0,1fr) 72px 100px 72px}
}
@media(max-width:620px){
  .hub-rivalry-board{grid-template-columns:1fr}
  .hub-rivalry-scoreboard{grid-column:auto;grid-row:auto}
  .hub-rivalry-player.is-rival{flex-direction:row;text-align:left}
  .hub-rivalry-kpis{grid-template-columns:1fr 1fr}
  .hub-rivalry-battle{
    grid-template-columns:minmax(0,1fr) 62px 62px;
    gap:8px;
    padding:11px;
  }
  .hub-rivalry-event{grid-column:1/-1;padding-bottom:8px;border-bottom:1px solid var(--hub-line)}
  .hub-rivalry-outcome{grid-column:2;grid-row:2}
  .hub-rivalry-battle-score.is-you{grid-column:1;grid-row:2;text-align:left}
  .hub-rivalry-battle-score.is-rival{grid-column:3;grid-row:2;text-align:right}
}

/* ========================================================================
   PRODUCTION MOBILE POLISH — Aug 26, 2026
   Scoped only to the 10 requested mobile / Football Squares corrections.
   ======================================================================== */

/* 1 + 3: mobile page headings always start on the same left edge as content. */
@media(max-width:760px){
  .hub-page-head{
    align-items:stretch!important;
    justify-content:flex-start!important;
    text-align:left!important;
    width:100%!important;
  }
  .hub-page-head>div:first-child{width:100%!important}
  .hub-page-head .hub-page-actions{width:100%!important;justify-content:flex-start!important}
}

/* 2: keep the Hall of Champions crown tile perfectly circular on narrow screens. */
.hub-champion-crown{flex:0 0 88px;aspect-ratio:1/1}
@media(max-width:760px){
  .hub-champion-crown{width:62px!important;height:62px!important;flex-basis:62px!important;min-width:62px!important;min-height:62px!important;border-radius:50%!important}
  .hub-champion-crown svg{width:30px!important;height:30px!important;flex:0 0 30px!important}
}

/* 4: Notification Settings owns delivery choices; give the Profile CTA breathing room. */
.hub-stay-card .hub-btn{margin-top:14px}

/* 5: the dashboard celebration/unread-style rail stays in the aqua brand family. */
.hub-contest-card.is-celebrate:before{background:var(--hub-aqua)!important}
@media(max-width:760px){
  /* NASCAR cards use the same clean three-line rhythm as Football cards. */
  .hub-contest-card .hub-contest-labels{
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    gap:5px!important;
  }
  .hub-contest-card .hub-contest-labels>span{flex:0 0 auto;min-width:0}
  .hub-contest-card .hub-contest-title{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .hub-contest-card .hub-contest-sub{
    display:block!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    -webkit-line-clamp:unset!important;
  }
}

/* 6: compact the Pool identity header on phones without changing desktop. */
@media(max-width:760px){
  .hub-contest-hero{padding:14px 14px 0!important}
  .hub-contest-hero-main{
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:10px!important;
    padding-bottom:12px!important;
  }
  .hub-contest-hero-main>.hub-sport-mark{width:36px!important;height:36px!important;border-radius:10px!important}
  .hub-contest-hero-title{grid-column:2!important;min-width:0!important}
  .hub-contest-hero-title h1{font-size:20px!important;line-height:1.08!important;margin:2px 0 4px!important}
  .hub-contest-hero-title .hub-contest-labels{font-size:8px!important;line-height:1.25!important;margin:0 0 3px!important;white-space:nowrap!important;overflow:hidden!important}
  .hub-contest-hero-description,.hub-contest-hero-sep{display:none!important}
  .hub-contest-hero-meta{display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .hub-contest-hero-title p{font-size:10.5px!important;line-height:1.35!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .hub-contest-hero-actions{
    grid-column:1/-1!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(auto-fit,minmax(138px,1fr))!important;
    gap:7px!important;
  }
  .hub-contest-hero-actions .hub-btn{width:100%!important;min-height:40px!important;padding:7px 10px!important}
}

/* 7: raise contrast on the selected Football matchup and money glyphs. */
.hub-team-badge{
  color:#67e7e1!important;
  background:#293132!important;
  border-color:#465253!important;
}
.hub-week-arrow{color:#67e7e1!important;border-color:#465253!important}
.hub-matchup-vs span{background:var(--hub-aqua)!important;color:#0a3432!important}
.hub-football-game-meta>div>svg{color:#67e7e1!important;stroke-width:2.15!important}
.hub-payment-icon svg,
.hub-payment-callout .hub-action-icon svg{stroke-width:2.15!important}

/* 8: one predictable 10x10 Football board on desktop and mobile. */
.hub-square-grid-wrap{
  padding:28px 0 0 28px!important;
  overflow:hidden!important;
}
.hub-football-axis-top{left:28px!important;right:0!important;top:0!important;height:22px!important}
.hub-football-axis-left{left:0!important;top:28px!important;bottom:0!important;width:22px!important}
.hub-square-grid{
  width:100%!important;
  min-width:0!important;
  grid-template-columns:32px repeat(10,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  gap:1px!important;
}
.hub-square-cell{
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  padding:2px!important;
  font-size:8px!important;
}
.hub-square-cell:not(.is-head){aspect-ratio:1/1!important}
.hub-square-cell.is-corner,
.hub-square-cell.is-top-head{
  height:34px!important;
  min-height:34px!important;
  aspect-ratio:auto!important;
  font-size:9px!important;
}
.hub-square-cell.is-side-head{
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  align-self:stretch!important;
  font-size:9px!important;
}
.hub-square-cell.is-mine span{font-size:7px!important;line-height:1!important}
@media(max-width:760px){
  .hub-square-board-card{padding:11px!important}
  .hub-square-grid-wrap{padding:24px 0 0 24px!important;overflow:hidden!important}
  .hub-football-axis-top{left:24px!important;height:20px!important;font-size:8px!important}
  .hub-football-axis-left{top:24px!important;width:18px!important}
  .hub-football-axis-left span{font-size:8px!important}
  .hub-square-grid{grid-template-columns:28px repeat(10,minmax(0,1fr))!important}
  .hub-square-cell{font-size:7.5px!important}
  .hub-square-cell.is-corner,.hub-square-cell.is-top-head{height:30px!important;min-height:30px!important;font-size:8px!important}
  .hub-square-cell.is-side-head{font-size:8px!important}
  .hub-square-cell.is-head svg{width:13px!important;height:13px!important}
}

/* 9: selected week = aqua; Scheduled = the same neutral family as Upcoming race badges. */
.hub-week-row.is-current{
  background:linear-gradient(90deg,rgba(84,217,211,.16),rgba(84,217,211,.025) 76%)!important;
  box-shadow:inset 4px 0 0 var(--hub-aqua)!important;
}
.hub-status.is-scheduled{
  background:#f1f4f3!important;
  color:#697574!important;
  border-color:#d7dedc!important;
}
html[data-theme="dark"] .hub-status.is-scheduled{
  background:#252d2e!important;
  color:#aeb8b7!important;
  border-color:#394344!important;
}

/* 10: winnings remain a right-hand value on mobile; personal balance stays below. */
@media(max-width:760px){
  .hub-football-player-card{
    grid-template-columns:34px minmax(0,1fr) auto!important;
    column-gap:10px!important;
    row-gap:7px!important;
  }
  .hub-football-player-card>.hub-avatar{grid-column:1;grid-row:1}
  .hub-football-player-copy{grid-column:2;grid-row:1}
  .hub-football-player-card .hub-football-player-stat.is-winnings{
    grid-column:3!important;
    grid-row:1!important;
    text-align:right!important;
    align-self:center!important;
    min-width:66px;
  }
  .hub-football-player-card .hub-football-player-stat.is-balance{
    grid-column:2/4!important;
    grid-row:2!important;
    text-align:left!important;
  }
}

/* ========================================================================
   LAUNCH POLISH — Aug 26, 2026
   Scoped only to the four requested final mobile corrections.
   ======================================================================== */

/* 1. My Pools: keep movement on the same line as the overall rank. */
.hub-rank-line{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}
.hub-rank-line .hub-rank-change{margin:0!important;position:static!important;flex:0 0 auto}
.hub-rank-line+span{display:block}

/* 3. Pool Home: next-race icon alignment and initials must stay readable. */
.hub-next-race-card>.hub-card-icon{align-self:center!important;justify-self:center!important;margin:0!important}
.hub-rival-watch-card>.hub-avatar{color:#fff!important;font-size:11px!important;font-weight:800!important;line-height:1!important;letter-spacing:.02em!important}

@media(max-width:620px){
  /* 2. Rivalry: each race gets its own event row, score row, then result row. */
  .hub-rivalry-battle{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px 14px!important;
    padding:12px!important;
  }
  .hub-rivalry-event{grid-column:1/-1!important;grid-row:1!important;padding-bottom:9px!important}
  .hub-rivalry-battle-score.is-you{grid-column:1!important;grid-row:2!important;text-align:left!important}
  .hub-rivalry-battle-score.is-rival{grid-column:2!important;grid-row:2!important;text-align:right!important}
  .hub-rivalry-battle-score small{white-space:normal!important;line-height:1.15!important;overflow-wrap:anywhere}
  .hub-rivalry-outcome{grid-column:1/-1!important;grid-row:3!important;justify-items:center!important;padding-top:2px}
  .hub-rivalry-outcome span{max-width:100%!important;white-space:normal!important;text-align:center!important;justify-content:center!important}
  .hub-rivalry-outcome small{margin-top:4px!important}

  /* 3. Last-race driver cards stack instead of horizontal scrolling. */
  .hub-driver-score-strip{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:visible!important;
    margin-right:0!important;
    padding-right:0!important;
    scroll-snap-type:none!important;
  }
  .hub-driver-score-mini{min-width:0!important;width:100%!important;scroll-snap-align:none!important}

  /* 4. NASCAR schedule/results: restore breathing room on narrow screens. */
  .hub-nascar-schedule .hub-week-row{
    grid-template-columns:54px minmax(0,1fr)!important;
    column-gap:11px!important;
    row-gap:6px!important;
    padding:12px 10px!important;
  }
  .hub-nascar-schedule .hub-week-number{padding-right:10px!important}
  .hub-nascar-schedule .hub-week-result{grid-column:2!important;margin-top:1px!important;justify-items:start!important}
  .hub-nascar-schedule .hub-week-game small{line-height:1.4!important}

  .hub-race-result-head{
    grid-template-columns:54px minmax(0,1fr) 72px!important;
    gap:10px!important;
    padding:12px!important;
    align-items:start!important;
  }
  .hub-race-result-head .hub-race-date-badge{padding-right:10px!important;align-self:stretch!important}
  .hub-race-title{padding-top:1px!important}
  .hub-race-title small{line-height:1.25!important}
  .hub-race-title h3{margin-top:3px!important;line-height:1.25!important}
  .hub-race-title>span{margin-top:3px!important;line-height:1.35!important}
  .hub-race-score{padding-top:1px!important}
  .hub-race-result-head>.hub-btn{grid-column:1/-1!important;margin-top:2px!important}
}


/* ========================================================================
   PRODUCTION POLISH — Aug 27, 2026
   Scoped only to the 16 requested corrections in this round.
   ======================================================================== */

/* 1: dropdown avatar initials must remain readable inside the menu. */
.hub-menu-user>.hub-avatar{color:#fff!important;font-size:11px!important;font-weight:800!important;line-height:1!important}

/* 4 + 5: next-race icon/content and inline NASCAR rank movement. */
.hub-personal-rank-line{display:flex;align-items:center;gap:8px;white-space:nowrap}
.hub-personal-rank-line .hub-rank-change{position:static!important;margin:0!important;display:inline-flex!important;align-items:center;gap:2px}
.hub-next-race-card>.hub-card-icon{display:grid!important;place-items:center!important;align-self:center!important;justify-self:center!important;margin:0!important}
.hub-next-race-card>.hub-card-icon svg{display:block!important;margin:auto!important}
.hub-next-race-card .hub-next-race-track,.hub-next-race-card .hub-next-race-time{display:block!important;white-space:normal!important}
.hub-next-race-card .hub-next-race-track{color:var(--hub-ink)!important;font-weight:700!important;margin-top:2px}
.hub-next-race-card .hub-next-race-time{margin-top:1px}

/* 6 + 16: Upcoming/pending/scheduled-style badges are neutral grey. Status dots remain semantic. */
.hub-status.is-upcoming,
.hub-discover-pool-action .hub-status.is-upcoming,
.hub-discover-card .hub-status.is-upcoming{
  background:#f1f4f3!important;
  color:#697574!important;
  border-color:#d7dedc!important;
}
html[data-theme="dark"] .hub-status.is-upcoming,
html[data-theme="dark"] .hub-discover-pool-action .hub-status.is-upcoming,
html[data-theme="dark"] .hub-discover-card .hub-status.is-upcoming{
  background:#252d2e!important;
  color:#aeb8b7!important;
  border-color:#394344!important;
}

/* 7: crown and copy stay together; crown never distorts on mobile. */
.hub-champion-hero{justify-content:flex-start!important}
.hub-champion-crown{flex:0 0 88px!important;min-width:88px!important;min-height:88px!important;aspect-ratio:1/1!important}
@media(max-width:600px){
  .hub-champion-crown{flex-basis:62px!important;min-width:62px!important;min-height:62px!important;width:62px!important;height:62px!important}
}

/* 8: the notification bell is available to players on mobile too. */
@media(max-width:600px){
  .hub-header-actions>.hub-icon-btn:first-of-type{display:grid!important}
}

/* 9: mobile pool-header actions align with the title column instead of sitting under the sport icon. */
@media(max-width:760px){
  .hub-contest-hero-main{grid-template-columns:40px minmax(0,1fr)!important}
  .hub-contest-hero-actions{grid-column:2!important;grid-template-columns:1fr!important;justify-self:stretch!important}
}

/* 11: compact paid state in Football Players. */
.hub-football-paid{display:inline-flex!important;align-items:center;gap:5px;color:var(--hub-aqua-ink)!important}
.hub-football-paid svg{width:15px;height:15px}

/* 15: rectangular Football grid while preserving the existing fitted 10x10 board. */
.hub-square-cell:not(.is-head){aspect-ratio:1.35/1!important}
@media(max-width:760px){
  .hub-square-cell:not(.is-head){aspect-ratio:1.28/1!important}
}

/* Production round 7 — scoped dashboard action emphasis + mobile header control. */
.hub-needs-action .hub-count-pill-dark{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  padding:0!important;
  background:var(--hub-nav)!important;
  border:2px solid var(--hub-amber)!important;
  color:#fff!important;
  box-shadow:0 0 0 1px rgba(231,163,56,.12)!important;
}
.hub-needs-action .hub-action-card.is-urgent{
  border-left-color:var(--hub-amber)!important;
}
.hub-needs-action .hub-action-card.is-urgent .hub-action-icon{
  background:var(--hub-amber-soft)!important;
  color:#925f08!important;
}
.hub-needs-action .hub-action-go{color:#a76a08!important}
.hub-needs-action .hub-action-copy strong{
  color:var(--hub-ink)!important;
  font-size:12.5px!important;
  font-weight:750!important;
  line-height:1.25!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}
.hub-needs-action .hub-action-meta{
  color:var(--hub-muted)!important;
  font-size:11.5px!important;
  font-weight:400!important;
  line-height:1.35!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}
html[data-theme="dark"] .hub-needs-action .hub-count-pill-dark{
  background:#101617!important;
  border-color:var(--hub-amber)!important;
  color:#fff!important;
}
html[data-theme="dark"] .hub-needs-action .hub-action-card.is-urgent .hub-action-icon{
  background:var(--hub-amber-soft)!important;
  color:#f1bd63!important;
}
@media(max-width:860px){
  .hub-header-theme-toggle{display:none!important}
}
@media(max-width:600px){
  .hub-needs-action .hub-action-copy strong{font-size:12px!important;letter-spacing:normal!important}
  .hub-needs-action .hub-action-meta{font-size:10.5px!important;letter-spacing:normal!important}
}

/* Production mobile containment — keep pool navigation and long copy inside every card. */
.hub-contest-mobile-tabs{display:none}
@media(max-width:760px){
  .hub-contest-hero{
    overflow:visible!important;
    z-index:20!important;
  }
  .hub-contest-hero:after{display:none!important}
  .hub-pool-workspace{position:relative!important;z-index:1!important}
  .hub-contest-hero-main{
    grid-template-columns:42px minmax(0,1fr)!important;
    align-items:start!important;
    column-gap:11px!important;
  }
  .hub-contest-hero-main>.hub-sport-mark{
    grid-column:1!important;
    grid-row:1!important;
    align-self:start!important;
  }
  .hub-contest-hero-title{
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    width:100%!important;
  }
  .hub-contest-hero-actions{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
  }
  .hub-contest-hero-main,
  .hub-contest-hero-title,
  .hub-contest-hero-title>*,
  .hub-contest-hero-actions,
  .hub-pool-workspace,
  .hub-pool-workspace>*{min-width:0!important;max-width:100%!important}

  .hub-contest-hero-title h1,
  .hub-contest-hero-title p,
  .hub-contest-hero-title .hub-contest-labels,
  .hub-contest-hero-meta{
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .hub-contest-hero-actions .hub-btn{
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
  }

  .hub-contest-tabs{display:none!important}
  .hub-contest-mobile-tabs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
    position:relative;
    z-index:5;
    width:100%;
    min-height:42px;
  }
  .hub-contest-mobile-tabs>a,
  .hub-contest-mobile-more>summary{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-width:0;
    min-height:42px;
    padding:9px 3px 10px;
    color:#9ba6a5;
    font-size:10px;
    line-height:1.15;
    font-weight:750;
    text-align:center;
    white-space:nowrap;
    cursor:pointer;
    list-style:none;
  }
  .hub-contest-mobile-more>summary::-webkit-details-marker{display:none}
  .hub-contest-mobile-more>summary svg{width:13px;height:13px;transition:transform .16s ease}
  .hub-contest-mobile-more[open]>summary svg{transform:rotate(180deg)}
  .hub-contest-mobile-tabs>a:hover,
  .hub-contest-mobile-more>summary:hover,
  .hub-contest-mobile-tabs>a.is-active,
  .hub-contest-mobile-more.is-active>summary{color:#fff}
  .hub-contest-mobile-tabs>a.is-active:after,
  .hub-contest-mobile-more.is-active>summary:after{
    content:"";
    position:absolute;
    left:7px;
    right:7px;
    bottom:0;
    height:3px;
    border-radius:3px 3px 0 0;
    background:var(--hub-aqua);
  }
  .hub-contest-mobile-more{position:relative;min-width:0}
  .hub-contest-mobile-more[open]{z-index:60}
  .hub-contest-mobile-more:not([open]) .hub-contest-mobile-menu{display:none!important}
  .hub-contest-mobile-menu{
    position:absolute;
    right:0;
    top:calc(100% + 7px);
    bottom:auto;
    z-index:50;
    display:grid;
    width:min(220px,calc(100vw - 42px));
    padding:6px;
    border:1px solid #465253;
    border-radius:12px;
    background:#252d2e;
    box-shadow:0 14px 34px rgba(5,10,10,.34);
  }
  .hub-contest-mobile-menu a{
    display:flex;
    align-items:center;
    min-height:38px;
    padding:8px 10px;
    border-radius:8px;
    color:#b8c1c0;
    font-size:10.5px;
    font-weight:720;
    white-space:normal;
    overflow-wrap:anywhere;
  }
  .hub-contest-mobile-menu a:hover{background:#30393a;color:#fff}
  .hub-contest-mobile-menu a.is-active{background:rgba(84,217,211,.12);color:#fff}

  .hub-pool-workspace .hub-performance-card>div,
  .hub-pool-workspace .hub-manage-action,
  .hub-pool-workspace .hub-driver-score-mini>div,
  .hub-pool-workspace .hub-rival-watch-card>div,
  .hub-pool-workspace .hub-list-name,
  .hub-pool-workspace .hub-action-copy,
  .hub-pool-workspace .hub-section-head>div{
    min-width:0!important;
    max-width:100%!important;
  }
  .hub-pool-workspace .hub-performance-card strong,
  .hub-pool-workspace .hub-performance-card span,
  .hub-pool-workspace .hub-manage-action strong,
  .hub-pool-workspace .hub-manage-action span,
  .hub-pool-workspace .hub-driver-score-mini strong,
  .hub-pool-workspace .hub-driver-score-mini span,
  .hub-pool-workspace .hub-rival-watch-card strong,
  .hub-pool-workspace .hub-rival-watch-card span,
  .hub-pool-workspace .hub-list-name strong,
  .hub-pool-workspace .hub-list-name span,
  .hub-pool-workspace .hub-action-copy strong,
  .hub-pool-workspace .hub-action-copy span,
  .hub-pool-workspace .hub-section-head h2,
  .hub-pool-workspace .hub-section-head p{
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}
