/* SportCV requester authentication styles.
   Consolidated from the former inline style layers. */

:root{
      --bg:#F5F8FD;
      --navy:#071833;
      --text:#12213A;
      --muted:#65748B;
      --blue:#2563EB;
      --sky:#0EA5E9;
      --card:#fff;
      --soft:#EEF6FF;
      --line:#D9E5F3;
      --max:1120px;
      
      --scv-header-bg:rgba(255,255,255,.92);
      --scv-border:#D9E5F3;
      --scv-navy:#071833;
      --scv-text:#44546E;
      --scv-blue:#2563EB;
      --scv-sky:#0EA5E9;
      --scv-soft:#EEF6FF;
    }
    *{box-sizing:border-box;}
    html{overflow-y:scroll;scrollbar-gutter:stable;min-height:100%;}
    body{margin:0;min-height:101vh;overflow-x:hidden;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
    a{text-decoration:none;color:inherit;}
    button, input{font:inherit;}

    
    
    
    
    
    
    
    
    
    
    
    
    

    .page{min-height:calc(100vh - var(--scv-header-height));display:grid;place-items:center;padding:32px 18px 10px;}
    .shell{width:min(var(--max),100%);display:grid;grid-template-columns:.9fr 1.1fr;gap:26px;align-items:stretch;}
    .panel{background:var(--card);border:1px solid var(--line);border-radius:30px;padding:30px;}
    .left{background:linear-gradient(135deg,#071833,#123D91 58%,#1765D8);color:#fff;overflow:hidden;position:relative;}
    .left:after{content:"";position:absolute;right:-120px;bottom:-140px;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.11);}
    .hero-panel-brand{display:flex;align-items:center;justify-content:flex-start;gap:0;margin-bottom:28px;position:relative;z-index:2;line-height:0;}
    .hero-panel-logo-img{display:block;width:auto;height:48px;max-width:214px;object-fit:contain;}
    .left h1{font-size:46px;line-height:1;letter-spacing:-.06em;margin:0 0 14px;position:relative;z-index:1;}
    .left p{color:#D6E5FF;line-height:1.65;margin:0 0 24px;position:relative;z-index:1;font-weight:650;}
    .benefits{display:grid;gap:12px;position:relative;z-index:1;}
    .benefit{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);font-weight:800;color:#EEF5FF;}
    .check{width:22px;height:22px;border-radius:999px;background:rgba(34,197,94,.22);display:grid;place-items:center;flex:0 0 auto;}
    .right{padding:32px;}
    .auth-panel-brand{display:flex;align-items:center;gap:0;margin-bottom:28px;line-height:0;}
    .auth-panel-logo-img{display:block;width:auto;height:56px;max-width:238px;object-fit:contain;}
    .topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;}
    .topline h2{margin:0;color:var(--navy);font-size:34px;letter-spacing:-.055em;line-height:1;}
    .topline a{font-weight:900;color:var(--blue);font-size:13px;}
    .tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:6px;border:1px solid var(--line);border-radius:999px;background:#F8FBFF;margin-bottom:22px;}
    .tab{border:0;border-radius:999px;background:transparent;min-height:46px;font-weight:950;color:#5B6A82;cursor:pointer;}
    .tab.active{background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;}
    .form{display:none;}.form.active{display:block;}
    .notice{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-radius:20px;background:var(--soft);border:1px solid #D6E6FF;color:#183B7A;font-weight:850;line-height:1.45;margin-bottom:20px;}
    .notice-icon{width:26px;height:26px;flex:0 0 26px;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;display:grid;place-items:center;font-size:13px;font-weight:950;box-shadow:0 8px 18px rgba(37,99,235,.20), inset 0 1px 0 rgba(255,255,255,.25);}
    .requester-invite-card{margin:0 0 18px;padding:15px 16px;border-radius:20px;background:linear-gradient(180deg,#FFFFFF 0%,#F8FBFF 100%);border:1px solid #D6E6FF;box-shadow:0 8px 20px rgba(16,42,91,.045);}
    .requester-invite-title{margin:0 0 6px;color:var(--navy);font-size:16px;line-height:1.18;letter-spacing:-.025em;font-weight:950;}
    .requester-invite-text{margin:0;color:#53657D;font-size:13px;line-height:1.55;font-weight:750;}
    .requester-pill-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px;}
    .requester-pill{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:6px 9px;border-radius:999px;background:#EEF6FF;border:1px solid #D6E6FF;color:#1D4ED8;font-size:11.5px;line-height:1;font-weight:950;white-space:nowrap;}
    .requester-pill.green{background:#ECFDF5;border-color:#BBF7D0;color:#166534;}
    .grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
    .field{margin-bottom:14px;}
    .field label{display:block;margin-bottom:8px;color:#52627A;font-size:12px;font-weight:950;letter-spacing:.07em;text-transform:uppercase;}
    .input{width:100%;height:58px;border:1px solid var(--line);border-radius:18px;background:#fff;padding:0 16px;color:#21314D;font-weight:800;outline:none;}
    .input:focus{border-color:#9CC3FF;box-shadow:0 0 0 4px rgba(37,99,235,.09);}
    .input.is-valid{border-color:#86EFAC;box-shadow:0 0 0 4px rgba(22,163,74,.08);}
    .input.is-invalid{border-color:#FCA5A5;box-shadow:0 0 0 4px rgba(220,38,38,.08);}
    .helper{font-size:12px;color:var(--muted);font-weight:650;margin-top:7px;min-height:16px;}
    .helper.ok{color:#166534;}.helper.err{color:#B91C1C;}
    .password-wrap{position:relative;}
    .password-wrap .input{padding-right:54px;}
    .password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:40px;height:40px;border:1px solid transparent;border-radius:14px;background:#F8FBFF;color:#52627A;display:grid;place-items:center;cursor:pointer;font-size:17px;font-weight:950;line-height:1;transition:background .18s ease,border-color .18s ease,color .18s ease;}
    .password-toggle:hover{background:#EEF6FF;border-color:#D6E6FF;color:#1D4ED8;}
    .password-rules{display:grid;gap:5px;margin-top:8px;font-size:12px;font-weight:850;color:var(--muted);}
    .password-rules span.ok{color:#166534;}.password-rules span.err{color:#B91C1C;}.password-rules span{display:block;}
    .primary{width:100%;height:58px;border:0;border-radius:20px;background:linear-gradient(135deg,var(--blue),var(--sky));color:#fff;font-weight:950;cursor:pointer;}
    .primary:disabled{opacity:.55;cursor:not-allowed;}
    .divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:22px 0;color:#8A98AB;font-weight:950;font-size:12px;}
    .divider:before, .divider:after{content:"";height:1px;background:var(--line);}
    .google{width:100%;height:56px;border:1px solid var(--line);border-radius:19px;background:#fff;color:var(--navy);font-weight:950;cursor:pointer;}.google:disabled{opacity:.55;cursor:not-allowed;background:#F8FBFF;color:#7B8AA0;}.requester-invite-card.invite-missing{border-color:#FED7AA;background:#FFF7ED;}.requester-pill.amber{background:#FFF7ED;border-color:#FED7AA;color:#C2410C;}
    .account-route-switch .account-route-button{background:#9AC3EA;border-color:#73A5D3;color:#173A5E;box-shadow:0 6px 16px rgba(23,58,94,.10);transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .12s ease;}
    .account-route-switch .account-route-button:hover{background:#86B5E1;border-color:#6399CA;color:#102F4E;box-shadow:0 8px 18px rgba(23,58,94,.15);}
    .account-route-switch .account-route-button:focus-visible{outline:3px solid rgba(20,115,230,.30);outline-offset:2px;}
    .account-route-switch .account-route-button:active{background:#76A9D8;border-color:#568EC2;transform:translateY(1px);}
    .fineprint{font-size:12px;line-height:1.55;color:#738197;margin-top:16px;text-align:center;}
    .switch-note{text-align:center;margin-top:16px;color:#65748B;font-weight:750;}
    .switch-note button{border:0;background:transparent;color:var(--blue);font-weight:950;cursor:pointer;}
    .row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:2px 0 18px;}
    .remember{display:flex;gap:8px;align-items:center;color:#53657D;font-weight:800;font-size:13px;}
    .forgot{font-size:13px;color:var(--blue);font-weight:900;}

    .optional-label{color:var(--muted);font-size:12px;font-weight:800;text-transform:none;letter-spacing:0;}
    .success-box{display:none;margin-top:16px;padding:14px 16px;border-radius:18px;background:#ECFDF5;border:1px solid #BBF7D0;color:#166534;font-size:13px;font-weight:850;line-height:1.5;}
    .success-box.show{display:block;}

    .scv-global-footer{position:static;margin-top:44px;background:#06142B;color:#DCE8FF;}
    .scv-global-footer-inner{width:min(1180px,calc(100% - 72px));margin:0 auto;padding:34px 0;display:grid;grid-template-columns:1.1fr .9fr;align-items:start;gap:24px;}
    .scv-footer-logo{display:inline-flex;align-items:center;gap:0;line-height:0;text-decoration:none;}
    .scv-footer-logo-img{display:block;width:auto;height:34px;max-width:156px;object-fit:contain;}
    .scv-global-footer p{margin:10px 0 0;max-width:560px;color:#9FB4D8;font-size:15px;line-height:1.55;font-weight:650;}
    .scv-footer-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;}
    .scv-footer-links a{color:#C9D9F5;font-size:14px;font-weight:800;padding:8px 10px;border-radius:999px;text-decoration:none;}
    .scv-footer-links a:hover{background:rgba(255,255,255,.08);}

    
    @media (max-width:900px){
      .shell{grid-template-columns:1fr;}.left{display:none;}.right{padding:24px;}.topline h2{font-size:30px;}.auth-panel-logo-img{height:52px;max-width:220px;}.hero-panel-logo-img{height:46px;max-width:204px;}
    }
    @media (max-width:700px){
      
      
      .scv-global-footer-inner{width:min(100% - 24px,760px);grid-template-columns:1fr;padding:28px 0;}.scv-footer-links{justify-content:flex-start;}
    }
    @media (max-width:560px){
      .page{padding:14px;}.panel{border-radius:24px;padding:18px;}.grid{grid-template-columns:1fr;}.topline{display:block;}.topline a{display:inline-block;margin-top:10px;}.input, .primary, .google{height:54px;}.tabs{border-radius:20px;}.tab{border-radius:16px;}.auth-panel-logo-img{height:48px;max-width:204px;}.auth-panel-brand{margin-bottom:22px;}
    }
    @media (max-width:520px){
      .scv-footer-logo-img{height:31px;max-width:146px;}
    }

/* === SportCV soft navigation: keeps the fixed global header/footer from visually rebuilding === */
.scv-page-content{
  opacity:1;
  transform:none;
  transition:opacity .14s ease, transform .14s ease;
}
html.scv-soft-loading .scv-page-content{
  opacity:.18;
  transform:translateY(2px);
  pointer-events:none;
}
html.scv-soft-loading .scv-global-footer{
  opacity:1 !important;
  transform:none !important;
}

.scv-global-footer{contain:layout paint style;}
@media (prefers-reduced-motion: reduce){
  .scv-page-content{transition:none !important;}
}

/* === SportCV mobile footer polish: match the cleaner profile-page footer spacing === */
@media (max-width:640px){
  .scv-global-footer{
    margin-top:28px !important;
  }
  .scv-global-footer-inner{
    width:min(100% - 24px,760px) !important;
    padding:26px 0 !important;
    gap:18px !important;
  }
  .scv-global-footer p{
    margin-top:9px !important;
    font-size:13.5px !important;
    line-height:1.55 !important;
  }
  .scv-footer-links{
    justify-content:flex-start !important;
    gap:6px 14px !important;
  }
  .scv-footer-links a{
    padding:5px 0 !important;
    font-size:13px !important;
    border-radius:0 !important;
  }
}

/* === SportCV v21 mobile polish / small frontend cleanup === */
html, body{max-width:100%;overflow-x:hidden;}
img, video, iframe, canvas, svg{max-width:100%;}
input, textarea, button{max-width:100%;}
@media (max-width:700px){
  .container, .wrap, .nf-container, .page-wrap, .page-shell, .shell-wrap{
    width:min(100%,calc(100% - 24px)) !important;
  }
  main, .page, .section{overflow-x:hidden;}
  .page-head, .hero-grid, .results-shell, .dashboard-grid, .content-grid, .profile-grid, .cards-grid, .plan-grid, .plans-grid, .stats-grid, .media-grid, .grid{
    grid-template-columns:1fr !important;
  }
  .quick-search, .search-row, .filter-row, .results-toolbar, .toolbar-actions, .actions, .top-actions, .button-row, .cta-row, .form-actions, .profile-actions, .slug-link-row{
    flex-direction:column !important;
    align-items:stretch !important;
  }
  .quick-search{
    grid-template-columns:1fr !important;
    padding:12px !important;
    gap:10px !important;
  }
  .results-shell{gap:14px !important;}
  .filter-panel{position:static !important;padding:16px !important;border-radius:20px !important;}
  .results-card, .card, .panel, .profile-card, .pricing-card, .request-card, .message-card{
    border-radius:20px !important;
  }
  .results-toolbar{gap:10px !important;margin-bottom:12px !important;}
  .toolbar-actions{width:100% !important;gap:8px !important;}
  .toolbar-actions .btn, .quick-search .btn, .quick-search input{
    width:100% !important;
  }
  .athlete-card{
    grid-template-columns:64px minmax(0,1fr) !important;
    gap:12px !important;
    padding:12px !important;
    border-radius:20px !important;
  }
  .athlete-card .card-side, .card-side{
    grid-column:1 / -1 !important;
  }
  .avatar{
    width:64px !important;
    height:64px !important;
    border-radius:20px !important;
  }
  .fact-grid, .summary-grid, .detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }
  h1{font-size:clamp(30px,9vw,40px) !important;line-height:1.02 !important;}
  h2{line-height:1.12 !important;}
  .btn, .primary, .google, .profile-control-btn, .action-grid .btn{
    min-height:44px !important;
  }
  .btn-row .btn, .actions .btn, .button-row .btn, .form-actions .btn{
    width:100% !important;
  }
  .modal, .dialog, .popup, .sheet{
    width:min(100%,calc(100vw - 20px)) !important;
    max-width:calc(100vw - 20px) !important;
  }
  .mobile-tight-hidden{display:none !important;}
}
@media (max-width:430px){
  .container, .wrap, .nf-container, .page-wrap, .page-shell, .shell-wrap{
    width:min(100%,calc(100% - 18px)) !important;
  }
  .fact-grid, .summary-grid, .detail-grid{
    grid-template-columns:1fr !important;
  }
  .athlete-card{grid-template-columns:58px minmax(0,1fr) !important;padding:11px !important;}
  .avatar{width:58px !important;height:58px !important;border-radius:18px !important;}
  .tag-row, .chip-row, .active-filters{gap:6px !important;}
  .tag, .chip{font-size:11px !important;padding:5px 8px !important;}
}

/* === SportCV balanced premium footer v6 === */
.scv-global-footer.scv-footer-compact-v4{
  position:static !important;
  margin-top:32px !important;
  padding:0 !important;
  background:
    radial-gradient(circle at 16% 0%, rgba(37,99,235,.16), transparent 30%),
    radial-gradient(circle at 88% 8%, rgba(14,165,233,.12), transparent 26%),
    linear-gradient(135deg,#06142B 0%,#071A36 56%,#062640 100%) !important;
  color:#DCE8FF !important;
  border-top:1px solid rgba(148,178,220,.16) !important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
.scv-footer-compact-v4 .scv-footer-shell{
  width:min(1180px,calc(100% - 72px)) !important;
  margin:0 auto !important;
  padding:34px 0 18px !important;
}
.scv-footer-compact-v4 .scv-footer-main{
  display:grid !important;
  grid-template-columns:minmax(340px,.95fr) minmax(430px,1.05fr) !important;
  gap:56px !important;
  align-items:start !important;
}
.scv-footer-compact-v4 .scv-footer-brand-block{
  min-width:0 !important;
  max-width:620px !important;
}
.scv-footer-compact-v4 .scv-footer-logo{
  display:block !important;
  width:fit-content !important;
  line-height:0 !important;
  text-decoration:none !important;
  margin:0 0 12px !important;
}
.scv-footer-compact-v4 .scv-footer-logo-img{
  display:block !important;
  width:auto !important;
  height:38px !important;
  max-width:176px !important;
  object-fit:contain !important;
}
.scv-footer-compact-v4 .scv-footer-text{
  display:block !important;
  margin:0 !important;
  max-width:560px !important;
  color:#B8CBEA !important;
  font-size:13.8px !important;
  line-height:1.55 !important;
  font-weight:740 !important;
}
.scv-footer-compact-v4 .scv-footer-chips{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  margin-top:14px !important;
}
.scv-footer-compact-v4 .scv-footer-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  min-height:27px !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  border:1px solid rgba(170,199,236,.20) !important;
  background:rgba(255,255,255,.055) !important;
  color:#E0ECFF !important;
  font-size:10.7px !important;
  line-height:1 !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}
.scv-footer-compact-v4 .scv-footer-chip:before{
  content:"" !important;
  width:6px !important;
  height:6px !important;
  border-radius:999px !important;
  background:#22C55E !important;
  box-shadow:0 0 0 3px rgba(34,197,94,.11) !important;
}
.scv-footer-compact-v4 .scv-footer-nav{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:36px !important;
  align-items:start !important;
  padding-top:4px !important;
}
.scv-footer-compact-v4 .scv-footer-col{
  min-width:0 !important;
}
.scv-footer-compact-v4 .scv-footer-col h3{
  margin:0 0 11px !important;
  color:#FFFFFF !important;
  font-size:10.7px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.095em !important;
  text-transform:uppercase !important;
  opacity:.94 !important;
}
.scv-footer-compact-v4 .scv-footer-col a{
  display:block !important;
  width:fit-content !important;
  max-width:100% !important;
  margin:0 0 8px !important;
  padding:0 !important;
  border-radius:0 !important;
  color:#BFD2F1 !important;
  text-decoration:none !important;
  font-size:13.2px !important;
  line-height:1.2 !important;
  font-weight:850 !important;
  transition:color .16s ease, transform .16s ease !important;
}
.scv-footer-compact-v4 .scv-footer-col a:hover{
  color:#FFFFFF !important;
  transform:translateX(2px) !important;
}
.scv-footer-compact-v4 .scv-footer-bottom{
  margin-top:26px !important;
  padding-top:15px !important;
  border-top:1px solid rgba(170,199,236,.14) !important;
  color:#8FA8CE !important;
  font-size:12px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
}
.scv-footer-compact-v4 .scv-footer-bottom p{
  margin:0 !important;
  color:#8FA8CE !important;
  font-size:12px !important;
  font-weight:800 !important;
}
@media (max-width:900px){
  .scv-footer-compact-v4 .scv-footer-shell{
    width:min(100% - 28px,760px) !important;
    padding:28px 0 16px !important;
  }
  .scv-footer-compact-v4 .scv-footer-main{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
  .scv-footer-compact-v4 .scv-footer-nav{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:20px !important;
    padding-top:2px !important;
  }
  .scv-footer-compact-v4 .scv-footer-bottom{
    margin-top:22px !important;
  }
}
@media (max-width:640px){
  .scv-global-footer.scv-footer-compact-v4{margin-top:26px !important;}
  .scv-footer-compact-v4 .scv-footer-shell{
    width:min(100% - 24px,760px) !important;
    padding:24px 0 15px !important;
  }
  .scv-footer-compact-v4 .scv-footer-logo-img{
    height:34px !important;
    max-width:160px !important;
  }
  .scv-footer-compact-v4 .scv-footer-text{
    font-size:13px !important;
    line-height:1.48 !important;
  }
  .scv-footer-compact-v4 .scv-footer-chips{
    gap:6px !important;
    margin-top:12px !important;
  }
  .scv-footer-compact-v4 .scv-footer-chip{
    font-size:10.3px !important;
    min-height:24px !important;
    padding:5px 8px !important;
  }
  .scv-footer-compact-v4 .scv-footer-nav{
    grid-template-columns:1fr 1fr !important;
    gap:18px 24px !important;
  }
  .scv-footer-compact-v4 .scv-footer-col h3{
    margin-bottom:9px !important;
  }
  .scv-footer-compact-v4 .scv-footer-col a{
    font-size:12.8px !important;
    margin-bottom:8px !important;
  }
  .scv-footer-compact-v4 .scv-footer-bottom{
    margin-top:20px !important;
    padding-top:13px !important;
    font-size:11.8px !important;
  }
}

/* === SportCV homepage bottom/footer polish v41 ===
   Keeps the accepted dark SportCV footer, reduces the empty gap above it,
   and makes the phone footer cleaner with the same Platform / Safety / Legal structure.
*/
main > section.container.section-pad:last-of-type{
  padding-bottom:14px !important;
}
.scv-global-footer.scv-footer-compact-v4{
  margin-top:10px !important;
}
.scv-footer-compact-v4 .scv-footer-main{
  gap:44px !important;
}
.scv-footer-compact-v4 .scv-footer-nav{
  gap:0 !important;
}
.scv-footer-compact-v4 .scv-footer-col{
  min-width:0 !important;
}
.scv-footer-compact-v4 .scv-footer-col + .scv-footer-col{
  border-left:1px solid rgba(170,199,236,.15) !important;
  padding-left:30px !important;
}
.scv-footer-compact-v4 .scv-footer-bottom{
  margin-top:22px !important;
  padding-top:14px !important;
}

@media (max-width:900px){
  main > section.container.section-pad:last-of-type{
    padding-top:20px !important;
    padding-bottom:10px !important;
  }
  .scv-global-footer.scv-footer-compact-v4{
    margin-top:8px !important;
  }
  .scv-footer-compact-v4 .scv-footer-shell{
    padding:24px 0 14px !important;
  }
  .scv-footer-compact-v4 .scv-footer-main{
    gap:18px !important;
  }
  .scv-footer-compact-v4 .scv-footer-nav{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:0 !important;
    padding-top:16px !important;
    border-top:1px solid rgba(170,199,236,.10) !important;
  }
  .scv-footer-compact-v4 .scv-footer-col{
    padding-left:0 !important;
  }
  .scv-footer-compact-v4 .scv-footer-col + .scv-footer-col{
    border-left:1px solid rgba(170,199,236,.16) !important;
    padding-left:22px !important;
  }
  .scv-footer-compact-v4 .scv-footer-bottom{
    margin-top:18px !important;
    padding-top:13px !important;
  }
}

@media (max-width:640px){
  main > section.container.section-pad:last-of-type{
    padding-top:18px !important;
    padding-bottom:8px !important;
  }
  main > section.container.section-pad:last-of-type .final-cta{
    padding:18px 16px !important;
    border-radius:22px !important;
  }
  main > section.container.section-pad:last-of-type .final-cta h2{
    margin-bottom:8px !important;
    font-size:clamp(24px,7vw,30px) !important;
  }
  main > section.container.section-pad:last-of-type .final-cta p{
    margin-bottom:14px !important;
    font-size:13.2px !important;
    line-height:1.45 !important;
  }
  main > section.container.section-pad:last-of-type .final-cta .hero-actions{
    margin-top:0 !important;
    gap:8px !important;
  }

  .scv-global-footer.scv-footer-compact-v4{
    margin-top:8px !important;
  }
  .scv-footer-compact-v4 .scv-footer-shell{
    width:min(100% - 24px,760px) !important;
    padding:22px 0 13px !important;
  }
  .scv-footer-compact-v4 .scv-footer-main{
    gap:16px !important;
  }
  .scv-footer-compact-v4 .scv-footer-logo{
    margin-bottom:10px !important;
  }
  .scv-footer-compact-v4 .scv-footer-logo-img{
    height:34px !important;
    max-width:160px !important;
  }
  .scv-footer-compact-v4 .scv-footer-text{
    max-width:none !important;
    font-size:13.2px !important;
    line-height:1.50 !important;
    font-weight:680 !important;
  }
  .scv-footer-compact-v4 .scv-footer-chips{
    display:none !important;
  }
  .scv-footer-compact-v4 .scv-footer-nav{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:0 !important;
    padding-top:16px !important;
    border-top:1px solid rgba(170,199,236,.09) !important;
  }
  .scv-footer-compact-v4 .scv-footer-col{
    padding-left:0 !important;
  }
  .scv-footer-compact-v4 .scv-footer-col + .scv-footer-col{
    border-left:1px solid rgba(170,199,236,.16) !important;
    padding-left:18px !important;
  }
  .scv-footer-compact-v4 .scv-footer-col h3{
    margin-bottom:10px !important;
    font-size:10.8px !important;
    letter-spacing:.105em !important;
  }
  .scv-footer-compact-v4 .scv-footer-col a{
    margin-bottom:8px !important;
    font-size:12.8px !important;
    line-height:1.25 !important;
    font-weight:760 !important;
  }
  .scv-footer-compact-v4 .scv-footer-bottom{
    margin-top:17px !important;
    padding-top:13px !important;
    font-size:11.8px !important;
  }
  .scv-footer-compact-v4 .scv-footer-bottom p{
    font-size:11.8px !important;
    line-height:1.35 !important;
    font-weight:720 !important;
  }
}

@media (max-width:390px){
  .scv-footer-compact-v4 .scv-footer-shell{
    width:min(100% - 20px,760px) !important;
  }
  .scv-footer-compact-v4 .scv-footer-col + .scv-footer-col{
    padding-left:13px !important;
  }
  .scv-footer-compact-v4 .scv-footer-col a{
    font-size:12.2px !important;
  }
  .scv-footer-compact-v4 .scv-footer-col h3{
    font-size:10.3px !important;
  }
}

/* === SportCV requester auth: more compact, same accepted auth.html visual system === */
@media (min-width:901px){
  .page{
    min-height:calc(100vh - var(--scv-header-height)) !important;
    place-items:start center !important;
    padding:10px 18px 12px !important;
  }
  .shell{
    width:min(940px,100%) !important;
    grid-template-columns:.78fr .96fr !important;
    gap:14px !important;
    align-items:start !important;
  }
  .panel{
    border-radius:22px !important;
    padding:17px !important;
  }
  .right{
    padding:13px 19px 16px !important;
  }
  .left{
    min-height:460px !important;
  }
  .left h1{
    font-size:30px !important;
    line-height:1 !important;
    margin-bottom:8px !important;
    letter-spacing:-.05em !important;
  }
  .left p{
    font-size:13px !important;
    line-height:1.38 !important;
    margin-bottom:11px !important;
  }
  .benefits{
    gap:7px !important;
  }
  .benefit{
    padding:8px 10px !important;
    border-radius:14px !important;
    font-size:12.8px !important;
    line-height:1.24 !important;
  }
  .check{
    width:18px !important;
    height:18px !important;
    font-size:11px !important;
  }
  .left:after{
    width:270px !important;
    height:270px !important;
    right:-96px !important;
    bottom:-112px !important;
  }
}
.topline{
  align-items:flex-start !important;
  margin-bottom:7px !important;
}
.topline h2{
  padding-top:0 !important;
  font-size:24px !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}
.topline a{
  font-size:11.4px !important;
  font-weight:760 !important;
}
.tabs{
  margin-bottom:9px !important;
  padding:4px !important;
  gap:5px !important;
}
.tab{
  min-height:33px !important;
  font-size:13.2px !important;
  font-weight:760 !important;
}
.requester-invite-card{
  margin:0 0 7px !important;
  padding:7px 8px !important;
  border-radius:13px !important;
  box-shadow:none !important;
}
.requester-invite-title{
  margin:0 0 3px !important;
  font-size:12.8px !important;
  line-height:1.08 !important;
  letter-spacing:-.012em !important;
  font-weight:760 !important;
}
.requester-invite-text{
  font-size:10.9px !important;
  line-height:1.25 !important;
  font-weight:610 !important;
}
.requester-pill-row{
  gap:4px !important;
  margin-top:5px !important;
}
.requester-pill{
  min-height:20px !important;
  padding:4px 7px !important;
  font-size:9.6px !important;
  font-weight:720 !important;
}
.grid{
  gap:8px !important;
}
.field{
  margin-bottom:6px !important;
}
.field label{
  margin-bottom:3px !important;
  font-size:9.8px !important;
  letter-spacing:.055em !important;
  font-weight:720 !important;
}
.input{
  height:40px !important;
  border-radius:13px !important;
  padding-left:12px !important;
  padding-right:12px !important;
  font-size:13.2px !important;
}
.input::placeholder{
  font-size:13.2px !important;
}
.helper{
  margin-top:3px !important;
  min-height:12px !important;
  font-size:10px !important;
  line-height:1.18 !important;
  font-weight:560 !important;
}
.password-wrap .input{
  padding-right:40px !important;
}
.password-toggle{
  width:29px !important;
  height:29px !important;
  right:6px !important;
  border-radius:10px !important;
  font-size:14px !important;
}
.primary{
  height:41px !important;
  border-radius:14px !important;
  font-size:13.2px !important;
  font-weight:760 !important;
}
.google{
  height:39px !important;
  border-radius:14px !important;
  font-size:13px !important;
  font-weight:740 !important;
}
.divider{
  margin:8px 0 !important;
  gap:9px !important;
  font-size:10.2px !important;
}
.notice{
  padding:7px 9px !important;
  border-radius:13px !important;
  margin-bottom:7px !important;
  line-height:1.22 !important;
  font-size:12px !important;
}
.notice-icon{
  width:19px !important;
  height:19px !important;
  flex:0 0 19px !important;
  font-size:10px !important;
}
.row{
  margin:0 0 8px !important;
}
.remember, .forgot{
  font-size:11.8px !important;
}
.fineprint{
  margin-top:7px !important;
  font-size:10px !important;
  line-height:1.25 !important;
}
.switch-note{
  margin-top:7px !important;
  font-size:12px !important;
}
.optional-label{
  font-size:9.6px !important;
  font-weight:560 !important;
}
.success-box{
  margin-top:7px !important;
  padding:8px 9px !important;
  border-radius:12px !important;
  font-size:11px !important;
  line-height:1.28 !important;
}
.password-rules{
  gap:3px !important;
  margin-top:5px !important;
  font-size:10px !important;
}
@media (max-width:900px){
  .page{
    padding:8px 10px !important;
    place-items:start center !important;
  }
  .panel, .right{
    padding:13px !important;
    border-radius:18px !important;
  }
  .topline{margin-bottom:7px !important;}
  .topline h2{font-size:23px !important;}
  .tabs{margin-bottom:8px !important;}
}
@media (max-width:560px){
  .page{padding:6px !important;}
  .panel, .right{
    padding:12px !important;
    border-radius:17px !important;
  }
  .topline{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:8px !important;
    margin-bottom:7px !important;
  }
  .topline h2{font-size:22px !important;}
  .topline a{margin-top:0 !important;font-size:10.8px !important;}
  .tab{min-height:32px !important;border-radius:12px !important;font-size:12.6px !important;}
  .requester-invite-card{padding:6px 7px !important;border-radius:12px !important;}
  .requester-invite-title{font-size:12.2px !important;}
  .requester-invite-text{font-size:10.4px !important;line-height:1.22 !important;}
  .requester-pill-row{display:none !important;}
  .grid{gap:0 !important;}
  .field{margin-bottom:5px !important;}
  .field label{font-size:9.5px !important;}
  .input, .primary{height:39px !important;}
  .google{height:38px !important;}
  .notice{padding:7px 8px !important;font-size:11.6px !important;}
  .fineprint, .switch-note{margin-top:6px !important;}
}

/* No invite link: requester page is login-first. */
.tab:disabled{
  opacity:.54 !important;
  cursor:not-allowed !important;
}
.invite-required-note{
  color:#7D8A9A !important;
  font-size:10.6px !important;
  line-height:1.22 !important;
  font-weight:560 !important;
}
@media (max-width:560px){
  .invite-required-note{font-size:10.2px !important;}
}

/* === SportCV requester auth: lighter left panel + no Google button polish === */
@media (min-width:901px){
  .left h1{
    font-weight:700 !important;
    font-size:29px !important;
    letter-spacing:-.044em !important;
  }
  .left p{
    font-size:12.6px !important;
    line-height:1.36 !important;
    font-weight:500 !important;
    color:#D8E7FF !important;
  }
  .benefit{
    font-size:12.1px !important;
    line-height:1.22 !important;
    font-weight:640 !important;
    padding:7px 10px !important;
  }
}
.switch-note.invite-required-note{
  margin-top:8px !important;
  color:#8592A4 !important;
  font-size:9.8px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
}
@media (max-width:560px){
  .switch-note.invite-required-note{
    margin-top:7px !important;
    font-size:9.4px !important;
    line-height:1.18 !important;
  }
}

/* === SportCV remaining pages premium typography v504 ===
   CSS-only polish. No content, layout structure, IDs, forms, JS, API, or media logic changed.
   Goal: match the accepted cleaner premium direction across dashboards, profiles, forms, messages, and account flow pages.
*/
:root{
  --scv-v504-title-weight:720;
  --scv-v504-title-strong:760;
  --scv-v504-card-title:700;
  --scv-v504-ui:680;
  --scv-v504-label:660;
  --scv-v504-chip:620;
  --scv-v504-copy:560;
  --scv-v504-title-spacing:-.034em;
  --scv-v504-card-spacing:-.018em;
}
html, body{
  -webkit-font-smoothing:antialiased !important;
  text-rendering:optimizeLegibility !important;
}
body, button, input, textarea{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
}

/* Page titles and major hero headings: premium, not cartoon-heavy. */
h1, .hero h1, .hero-card h1, .left h1, .intro-card h1, .page-title h1, .topline h1, .topline h2, .header, .hero-name, .profile-title, .dashboard-title, .owner-title, .public-title, .create-title, .edit-title, #title{
  font-weight:var(--scv-v504-title-weight) !important;
  letter-spacing:var(--scv-v504-title-spacing) !important;
  text-shadow:none !important;
}

/* Section headings and card titles. */
h2, .card h2, .panel h2, .box h2, .section-head h2, .inbox-head h2, .form-head h2, .details-card h2, .flow-card h2, .summary-card h2, .request h3, .action-card h3, .media-card h3, .support-option h3, .safety-card h3, .notice h3, .athlete-mini h2, .parent-mini h2, .requester-invite-title, .requester-account-name, .thread-name, .athlete-name, .feature-title, .setting-row strong, .privacy-row h3, .safety-item strong, .flow-step strong, .later-modal h2, .success h3{
  font-weight:var(--scv-v504-card-title) !important;
  letter-spacing:var(--scv-v504-card-spacing) !important;
  text-shadow:none !important;
}

/* Numeric/stat emphasis: strong, but no ultra-bold effect. */
.media-count, .metric-number, .stat-number, .kpi-number, .hero-stat, .progress-top strong, .match-score, .badge{
  font-weight:var(--scv-v504-title-strong) !important;
  letter-spacing:-.03em !important;
}

/* Buttons and action links: still clear, visually lighter. */
button, .btn, a.btn, .primary, .secondary, .google, .return-btn, .profile-control-btn, .action-grid .btn, .settings-actions .btn, .request-actions .btn, .later-modal button, button[type="button"], button[type="submit"], input[type="button"], input[type="submit"]{
  font-weight:var(--scv-v504-ui) !important;
  letter-spacing:0 !important;
}

/* Labels and small UI captions. */
label, .field label, .filter-control label, .sort-wrap label, .request-target-label, .requester-account-kicker, .muted-title, .settings-subtitle, .athlete-settings-select label, .media-athlete-select label, .password-rules, .helper, .note, .char-counter, .range-note, .small, .footer-note{
  font-weight:var(--scv-v504-label) !important;
  letter-spacing:.012em !important;
}

/* Pills, chips, tags, badges: less bubbly and less loud. */
.pill, .eyebrow, .tag, .chip, .status-pill, .requester-pill, .requester-account-chip, .choice-pill, .preview-tag, .result-tag, .filter-chip, .live-pill, .helper.ok, .helper.err, .status-label, .status-value, .athlete-meta, .athlete-extra, .result-meta, .fact span, .fact strong, .mini-pill, [class*="pill"], [class*="chip"], [class*="tag"], [class*="badge"]{
  font-weight:var(--scv-v504-chip) !important;
  letter-spacing:0 !important;
}

/* Form controls: readable, lighter than the previous heavy weight. */
input, textarea, .input, .field, .textarea, .selector-button, .selector-option, .search-wrap input, .quick-search input{
  font-weight:560 !important;
  letter-spacing:0 !important;
}
input::placeholder, textarea::placeholder{
  font-weight:520 !important;
  color:#7A8799 !important;
  opacity:1 !important;
}

/* Body copy: slightly quieter; content unchanged. */
p, li, .notice, .notice p, .hero-card p, .intro-card p, .left p, .page-title p, .section-head p, .form-head p, .support-option p, .safety-card p, .request p, .action-card p, .media-card p, .empty-state p, .setting-row span, .privacy-row p, .flow-step span, .safety-item span, .requester-invite-text, .requester-account-email, .thread-preview, .message-text, .box ul, .fineprint, .switch-note{
  font-weight:var(--scv-v504-copy) !important;
  letter-spacing:normal !important;
}

/* Form/create/edit pages still need labels visible and clear. */
.card label, .field label{
  color:#52627A !important;
}
.card h2, .panel h2{
  color:#10233E !important;
}

/* Redirect fallback cards only: cleaner if the redirect is delayed. */
main.card, .card .hero{
  -webkit-font-smoothing:antialiased !important;
}
@media (max-width:700px){
  h1, .hero h1, .hero-card h1, .left h1, .intro-card h1, .page-title h1, .topline h1, .topline h2, .header, .hero-name, #title{
    font-weight:700 !important;
    letter-spacing:-.03em !important;
  }
  h2, .section-head h2, .form-head h2, .card h2, .panel h2{
    font-weight:690 !important;
    letter-spacing:-.016em !important;
  }
  label, .field label, .helper, .note, .small{
    font-weight:620 !important;
  }
}

/* === SportCV remaining pages footer premium polish v504 ===
   Footer typography only. Existing footer layout, links, colors, and structure are preserved.
*/
.scv-global-footer, .scv-global-footer.scv-footer-compact-v4{
  -webkit-font-smoothing:antialiased !important;
  text-rendering:optimizeLegibility !important;
}
.scv-global-footer p, .scv-global-footer .scv-footer-text, .scv-footer-compact-v4 .scv-footer-text{
  font-weight:520 !important;
  letter-spacing:0 !important;
}
.scv-global-footer .scv-footer-col h3, .scv-footer-compact-v4 .scv-footer-col h3{
  font-size:10.5px !important;
  line-height:1 !important;
  font-weight:760 !important;
  letter-spacing:.085em !important;
  opacity:.88 !important;
}
.scv-global-footer .scv-footer-col a, .scv-global-footer .scv-footer-links a, .scv-footer-compact-v4 .scv-footer-col a, .scv-footer-compact-v4 .scv-footer-links a{
  font-size:12.55px !important;
  line-height:1.24 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}
.scv-global-footer .scv-footer-chip, .scv-footer-compact-v4 .scv-footer-chip{
  font-size:10.25px !important;
  font-weight:590 !important;
  letter-spacing:0 !important;
}
.scv-global-footer .scv-footer-bottom, .scv-global-footer .scv-footer-bottom p, .scv-footer-compact-v4 .scv-footer-bottom, .scv-footer-compact-v4 .scv-footer-bottom p{
  font-weight:510 !important;
  letter-spacing:0 !important;
}
@media (max-width:640px){
  .scv-global-footer .scv-footer-col h3, .scv-footer-compact-v4 .scv-footer-col h3{
    font-size:10.15px !important;
    font-weight:740 !important;
  }
  .scv-global-footer .scv-footer-col a, .scv-global-footer .scv-footer-links a, .scv-footer-compact-v4 .scv-footer-col a, .scv-footer-compact-v4 .scv-footer-links a{
    font-size:11.9px !important;
    line-height:1.22 !important;
    font-weight:490 !important;
  }
  .scv-global-footer p, .scv-global-footer .scv-footer-text, .scv-footer-compact-v4 .scv-footer-text{
    font-weight:500 !important;
  }
  .scv-global-footer .scv-footer-bottom, .scv-global-footer .scv-footer-bottom p, .scv-footer-compact-v4 .scv-footer-bottom, .scv-footer-compact-v4 .scv-footer-bottom p{
    font-weight:500 !important;
  }
}

/* Green Roads LLC / SportCV legal acceptance controls */
.legal-acceptance, .profile-legal-certification{
  display:flex;align-items:flex-start;gap:10px;margin:14px 0;padding:13px 14px;border:1px solid #D9E5F3;border-radius:17px;background:#F8FBFF;color:#53657D;font-size:12.5px;font-weight:650;line-height:1.5;text-align:left;
}
.legal-acceptance input, .profile-legal-certification input{width:18px;height:18px;min-width:18px;margin:2px 0 0;accent-color:#2563EB;}
.legal-acceptance a, .profile-legal-certification a{color:#1D4ED8;font-weight:800;text-decoration:underline;text-underline-offset:2px;}
.legal-acceptance.is-invalid, .profile-legal-certification.is-invalid{border-color:#FCA5A5;background:#FFF7F7;color:#991B1B;}
.legal-operator-note{margin:9px 0 0;color:#738197;font-size:11.5px;line-height:1.5;text-align:center;}
@media (max-width:640px){.legal-acceptance, .profile-legal-certification{padding:12px;border-radius:15px;font-size:12px;}}

/* Authentication card sizing shared with auth.html. */
.page > .shell{
  margin-inline:auto !important;
}
body{
  min-height:100vh !important;
  min-height:100dvh !important;
  display:flex !important;
  flex-direction:column !important;
}
.scv-page-content{
  flex:1 0 auto !important;
  min-height:0 !important;
}
.page{
  min-height:0 !important;
}
@media (min-width:1181px){
  .page > .shell > .right{
    width:100% !important;
    max-width:640px !important;
  }
}
@media (min-width:641px) and (max-width:1366px){
  .page{
    place-items:start center !important;
    padding:12px 24px 0 !important;
  }
  .page > .shell{
    width:min(600px,100%) !important;
    max-width:600px !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:0 !important;
    align-items:start !important;
  }
  .page > .shell > .left{
    display:none !important;
  }
  .page > .shell > .right{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
}
@media (max-width:640px){
  .page > .shell{
    width:100% !important;
    max-width:none !important;
  }
  .page > .shell > .right{
    width:100% !important;
    max-width:none !important;
  }
}

/* === SportCV v502 cross-page premium typography ===
   CSS-only polish. Keeps page structure, content, icons, filters, forms, and scripts unchanged.
   Goal: match the quieter premium direction accepted on countries-list and sports-roles.
*/
html, body{
  -webkit-font-smoothing:antialiased !important;
  text-rendering:optimizeLegibility !important;
}

/* Main page headlines: strong but less heavy/cartoonish. */
:where(
  h1,
  .hero h1,
  .hero-card h1,
  .left h1,
  .page-head h1,
  .topline h2,
  .support-form-head h2,
  .final-cta h2
){
  font-weight:760 !important;
  letter-spacing:-.044em !important;
}

/* Section headings and card headings. */
:where(
  h2,
  .section-head h2,
  .section-title h2,
  .compare-head h2,
  .filter-title h2,
  .results-toolbar h2,
  .summary-card h2,
  .details-card h2,
  .flow-card h2,
  .large-card h2,
  .mission-card h2,
  .emotion-card h2,
  .safety-banner h2,
  .future-banner h2,
  .notice-banner h2
){
  font-weight:720 !important;
  letter-spacing:-.030em !important;
}
:where(
  h3,
  .info-card h3,
  .policy-card h3,
  .plan-card h3,
  .faq-item h3,
  .support-option h3,
  .requester-invite-title,
  .featured-name,
  .result-name,
  .athlete-name,
  .preview-card h3,
  .journey-point strong,
  .feature-row strong,
  .safety-item strong,
  .flow-step strong
){
  font-weight:710 !important;
  letter-spacing:-.016em !important;
}

/* Hero/body copy: readable and calm. */
:where(
  .hero-subtitle,
  .hero-card p,
  .lead,
  .section-head p,
  .support-form-head p,
  .info-card p,
  .policy-card p,
  .faq-item p,
  .summary,
  .large-card p,
  .mission-card p,
  .emotion-card p,
  .details-card p,
  .flow-step span,
  .safety-item span,
  .support-option p,
  .requester-invite-text,
  .feature-row span
){
  font-weight:560 !important;
  letter-spacing:0 !important;
}

/* Pills, chips, tags, badges: quieter directory/product feel. */
:where(
  .pill,
  .eyebrow,
  .chip,
  .tag,
  .filter-chip,
  .preview-tag,
  .live-pill,
  .requester-pill,
  .plan-icon,
  .notice-icon,
  .check,
  .mini-check,
  .step-num,
  .icon-box,
  .support-icon,
  .empty-icon,
  .plan-card.featured:before,
  .sports-count-badge,
  .launch-badge-under-banner
){
  font-weight:680 !important;
  letter-spacing:0 !important;
}
:where(.pill,.eyebrow,.chip,.tag,.filter-chip,.preview-tag,.requester-pill){
  box-shadow:none !important;
}
:where(.chip,.tag,.filter-chip,.preview-tag,.requester-pill){
  background:#FFFFFF !important;
  border-color:#E1EAF5 !important;
  color:#344763 !important;
}
:where(.chip:hover,.tag:hover,.filter-chip:hover,.preview-tag:hover,.requester-pill:hover){
  background:#F7FAFE !important;
  border-color:#CFE0F4 !important;
  color:#17345C !important;
}
:where(.tag.green,.live-pill,.btn-green,.requester-pill.green){
  background:#F4FBF7 !important;
  border-color:#D7F0DE !important;
  color:#2B6C42 !important;
}
:where(.tag.amber,.requester-pill.amber,.soon){
  background:#FFF8EF !important;
  border-color:#F8DFBE !important;
  color:#9A5A17 !important;
}
:where(.tag.red,.btn-danger,.danger){
  background:#FFF6F6 !important;
  border-color:#F3D1D1 !important;
  color:#9B2930 !important;
}

/* Buttons and navigation: still clickable, less thick. */




/* Forms and filters: lighter field text, better premium feel. */
:where(label,.field label,.filter-control label,.field-group label,.sort-wrap label){
  font-weight:660 !important;
  letter-spacing:.045em !important;
  color:#60718A !important;
}
:where(input,textarea,.input,.field,.textarea){
  font-weight:590 !important;
  letter-spacing:0 !important;
}
:where(input,textarea,.input,.field,.textarea)::placeholder{
  color:#7B8AA2 !important;
  font-weight:560 !important;
}

/* Card rows / benefits / notices: less blocky. */
:where(
  .benefit,
  .mission-item,
  .notice,
  .summary-list li,
  .feature-list li,
  .rule-list li,
  .support-status,
  .filter-note,
  .helper,
  .fineprint,
  .switch-note,
  .remember,
  .summary-row span:first-child,
  .compare-table td,
  .section p,
  .section li,
  .footer-note p
){
  font-weight:560 !important;
  letter-spacing:0 !important;
}
:where(.summary-row span:last-child,.fact strong,.price strong,.proof-item strong,.metric-number,.stat-number,.hero-stat,.match-score,.mini-stat strong,.value-item strong,.summary-card strong){
  font-weight:760 !important;
  letter-spacing:-.030em !important;
}
:where(.fact span,.mini-stat span,.proof-item span,.value-item span,.price span,.price-note,.plan-sub,.result-meta,.athlete-meta,.featured-meta,.featured-extra){
  font-weight:560 !important;
  letter-spacing:0 !important;
}

/* Search/result cards and small directory tags. */
:where(.result-tag,.result-facts,.fact,.match-top,.media-thumb,.save-check){
  font-weight:580 !important;
}
:where(.result-tag){
  background:#FFFFFF !important;
  border-color:#E1EAF5 !important;
  color:#344763 !important;
  box-shadow:none !important;
}

/* Pricing and legal details. */
:where(.compare-table th,.toc h2,.scv-footer-col h3){
  font-weight:700 !important;
  letter-spacing:.055em !important;
}
:where(.section strong,.rule-list b,.info-card strong){
  font-weight:680 !important;
}

@media (max-width:640px){
  :where(h1,.hero h1,.hero-card h1,.left h1,.page-head h1){
    letter-spacing:-.036em !important;
  }
  :where(.pill,.eyebrow,.chip,.tag,.filter-chip,.preview-tag,.requester-pill){
    font-weight:640 !important;
  }
}

/* === SportCV footer-only premium typography polish v503 ===
   CSS-only: keeps the accepted footer structure/layout, softens footer type,
   chips, hover states, and mobile footer readability across public pages. */
.scv-global-footer, .scv-global-footer.scv-footer-compact-v4{
  -webkit-font-smoothing:antialiased !important;
  text-rendering:optimizeLegibility !important;
}

/* Brand text: professional, readable, not heavy. */
.scv-global-footer .scv-footer-text, .scv-global-footer.scv-footer-compact-v4 .scv-footer-text, .scv-global-footer p{
  color:#B6C9E7 !important;
  font-size:13.35px !important;
  line-height:1.52 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}

/* Column headings: still clear, but less loud. */
.scv-global-footer .scv-footer-col h3, .scv-global-footer.scv-footer-compact-v4 .scv-footer-col h3{
  color:#F2F7FF !important;
  font-size:10.35px !important;
  line-height:1 !important;
  font-weight:720 !important;
  letter-spacing:.078em !important;
  text-transform:uppercase !important;
  opacity:.88 !important;
}

/* Footer links: premium quiet navigation instead of bold buttons. */
.scv-global-footer .scv-footer-col a, .scv-global-footer.scv-footer-compact-v4 .scv-footer-col a, .scv-global-footer .scv-footer-links a{
  color:#B9CBE7 !important;
  font-size:12.45px !important;
  line-height:1.25 !important;
  font-weight:480 !important;
  letter-spacing:0 !important;
  text-decoration:none !important;
  text-underline-offset:3px !important;
}
.scv-global-footer .scv-footer-col a:hover, .scv-global-footer.scv-footer-compact-v4 .scv-footer-col a:hover, .scv-global-footer .scv-footer-links a:hover{
  color:#FFFFFF !important;
  background:transparent !important;
  text-decoration:underline !important;
  transform:translateX(1px) !important;
}

/* Trust chips: softer, smaller, less badge-like. */
.scv-global-footer .scv-footer-chips, .scv-global-footer.scv-footer-compact-v4 .scv-footer-chips{
  gap:6px !important;
}
.scv-global-footer .scv-footer-chip, .scv-global-footer.scv-footer-compact-v4 .scv-footer-chip, .scv-global-footer .scv-footer-chip-v2, .scv-global-footer.scv-footer-compact-v4 .scv-footer-chip-v2{
  min-height:24px !important;
  padding:5px 8px !important;
  border-radius:999px !important;
  border-color:rgba(176,203,240,.16) !important;
  background:rgba(255,255,255,.045) !important;
  color:#D8E6FA !important;
  font-size:10.05px !important;
  line-height:1 !important;
  font-weight:540 !important;
  letter-spacing:0 !important;
}
.scv-global-footer .scv-footer-chip:before, .scv-global-footer.scv-footer-compact-v4 .scv-footer-chip:before, .scv-global-footer .scv-footer-chip-v2:before, .scv-global-footer.scv-footer-compact-v4 .scv-footer-chip-v2:before{
  width:5px !important;
  height:5px !important;
  box-shadow:0 0 0 2px rgba(34,197,94,.10) !important;
  opacity:.9 !important;
}

/* Bottom line: quieter legal/copyright line. */
.scv-global-footer .scv-footer-bottom, .scv-global-footer.scv-footer-compact-v4 .scv-footer-bottom, .scv-global-footer .scv-footer-bottom p, .scv-global-footer.scv-footer-compact-v4 .scv-footer-bottom p{
  color:#8DA7CD !important;
  font-size:11.55px !important;
  line-height:1.35 !important;
  font-weight:480 !important;
  letter-spacing:0 !important;
}

/* Small spacing refinement only; no column/layout rebuild. */
.scv-global-footer.scv-footer-compact-v4 .scv-footer-logo, .scv-global-footer .scv-footer-logo{
  margin-bottom:10px !important;
}
.scv-global-footer.scv-footer-compact-v4 .scv-footer-col a, .scv-global-footer .scv-footer-col a{
  margin-bottom:7px !important;
}

@media (max-width:640px){
  .scv-global-footer .scv-footer-text, .scv-global-footer.scv-footer-compact-v4 .scv-footer-text, .scv-global-footer p{
    font-size:12.7px !important;
    line-height:1.48 !important;
    font-weight:480 !important;
  }
  .scv-global-footer .scv-footer-col h3, .scv-global-footer.scv-footer-compact-v4 .scv-footer-col h3{
    font-size:10.1px !important;
    font-weight:700 !important;
    letter-spacing:.075em !important;
  }
  .scv-global-footer .scv-footer-col a, .scv-global-footer.scv-footer-compact-v4 .scv-footer-col a, .scv-global-footer .scv-footer-links a{
    font-size:11.8px !important;
    line-height:1.23 !important;
    font-weight:470 !important;
  }
  .scv-global-footer .scv-footer-chip, .scv-global-footer.scv-footer-compact-v4 .scv-footer-chip, .scv-global-footer .scv-footer-chip-v2, .scv-global-footer.scv-footer-compact-v4 .scv-footer-chip-v2{
    font-size:9.85px !important;
    min-height:23px !important;
    padding:5px 7px !important;
  }
  .scv-global-footer .scv-footer-bottom, .scv-global-footer.scv-footer-compact-v4 .scv-footer-bottom, .scv-global-footer .scv-footer-bottom p, .scv-global-footer.scv-footer-compact-v4 .scv-footer-bottom p{
    font-size:11.35px !important;
    font-weight:470 !important;
  }
}

/* Discovery signup polish only; shared dropdowns and other authentication pages stay unchanged. */
.scv-discovery-auth .page > .shell > .left{min-height:0!important;height:auto;align-self:start;}
.scv-discovery-auth .field label{font-family:inherit!important;font-size:12px!important;line-height:1.4!important;font-weight:600!important;letter-spacing:0!important;text-transform:none!important;}
.scv-discovery-auth .field .helper:empty{min-height:0!important;margin-top:0!important;}
.scv-discovery-auth .requester-invite-card[hidden],
.scv-discovery-auth .discovery-representative-heading[hidden]{display:none!important;}
.scv-discovery-auth .discovery-representative-heading{margin:12px 0 4px;font-size:14px!important;line-height:1.4;font-weight:650!important;color:#172840;}
.scv-discovery-auth #discoveryNameNote{margin:0 0 10px!important;line-height:1.45!important;}
.scv-discovery-auth .scv-combobox-button{min-height:48px!important;height:auto!important;padding:10px 40px 10px 12px!important;font-size:14px!important;font-weight:600!important;line-height:1.35!important;}
.scv-discovery-auth .scv-combobox-value{white-space:normal;overflow-wrap:break-word;}
.scv-discovery-auth .scv-combobox-menu{padding:6px;scroll-padding-block:6px;}
.scv-discovery-auth .scv-combobox.is-open .scv-combobox-menu{gap:2px;align-content:start;}
.scv-discovery-auth .scv-combobox-option{min-height:40px!important;height:auto!important;padding:8px 10px!important;font-size:14px!important;font-weight:550!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:break-word;}
.scv-discovery-auth .scv-combobox-option.is-active:not([aria-selected="true"]){background:#f2f7fd;color:#172840;box-shadow:inset 2px 0 #2563eb;}
.scv-discovery-auth .scv-combobox-option[aria-selected="true"]{background:#e8f2ff;color:#1d4ed8;font-weight:600!important;}
@media(pointer:coarse){.scv-discovery-auth .scv-combobox-option{min-height:44px!important;}}
