:root{--bg:#f4f7f5;--text:#123a2c;--muted:#52685d;--line:#d6e2da;--accent:#bbef36;--card:#fff;--danger:#a12b2b}
html{scroll-behavior:smooth}body{font-size:16px;line-height:1.5}.nav{padding:14px 24px;max-width:1200px;min-height:86px}.brand-link{display:block;width:112px;height:58px;overflow:hidden;background:white;border-radius:10px}.brand-link img{width:112px;height:75px;object-fit:cover;transform:translateY(-8px)}.nav-actions{flex-wrap:wrap}.ghost-btn{font-size:14px;background:#fff;font-weight:600}.ghost-btn:hover{border-color:#065334}main{max-width:1152px}.hero{margin:14px 24px 0;padding:44px 40px;background:#075438;border-radius:24px;color:white;position:relative}.hero .eyebrow{color:#cee4d7;font-size:12px}.hero h1{font-size:clamp(32px,5vw,60px);line-height:1.1;letter-spacing:-.045em;margin:18px 0}.hero h1 span{color:#c8f563}.hero p{color:#d7e8de;font-size:18px;margin:0}.hero-actions{margin-top:26px}.hero .secondary-btn{border-color:#8aad99;color:white}.hero .primary-btn{border-color:var(--accent);color:#153b22}.primary-btn:hover,.join-btn:hover{filter:brightness(.94)}.section{padding:36px 24px}.section h2{font-size:34px;line-height:1.2}.location{background:#e4ece7;padding:8px 14px;border-radius:999px;white-space:nowrap}.game-card{border-radius:18px;padding:24px;box-shadow:0 4px 18px #123a2c05}.game-card h3{line-height:1.25;margin-top:22px}.badge,.spots{font-size:14px}.badge{background:#edf6d8;color:#315a17}.join-btn{background:#075438;border-color:#075438}.status:not(:empty){background:white;border:1px dashed #bfcec4;border-radius:18px;padding:30px;margin-bottom:16px}.section.soft{background:#e7eee9;margin-top:4px;padding:30px}.section.soft h2{max-width:700px;font-size:28px}.features{margin-top:20px}footer{max-width:1152px;border-top:1px solid var(--line);display:flex;gap:20px;align-items:center;flex-wrap:wrap;padding-top:24px}footer .tiny{margin-left:auto}label,.z-panel-label,.z-rate-btn,.z-member-meta,.z-score small,.z-legend span{font-size:14px}.modal-title{font-size:30px;line-height:1.15}.modal{border-radius:20px}button:focus-visible,a:focus-visible{outline:3px solid #75af00;outline-offset:4px}button:disabled{cursor:wait;opacity:.6}.form-message{overflow-wrap:anywhere}.meta{overflow-wrap:anywhere}
@media(max-width:600px){.nav{padding:12px 18px}.nav-actions{gap:6px}.nav-actions button{padding:9px 12px}.brand-link{width:85px}.brand-link img{width:85px;object-fit:contain}.hero{margin:8px 14px 0;padding:30px 22px;border-radius:20px}.hero h1{font-size:34px}.hero p{font-size:16px}.hero-actions{gap:8px}.hero-actions button{padding:12px 16px;font-size:14px}.section{padding:28px 18px}.section h2{font-size:28px}.section-head{align-items:center}.location{font-size:12px;padding:6px 10px}.game-card{padding:20px}.section.soft{padding:24px}.section.soft h2{font-size:25px}footer{margin:0 18px;padding:20px 0;gap:8px 18px}footer .tiny{width:100%;margin:0}.modal{padding:26px 20px}.z-club-actions{justify-content:start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.app-notice{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:1500;max-width:calc(100% - 32px);width:max-content;background:#123a2c;color:white;padding:14px 22px;border-radius:14px;box-shadow:0 8px 30px #0003;font-size:16px}.club-description{white-space:pre-line;color:var(--muted);overflow-wrap:anywhere;max-width:550px}.form-message.error{padding:10px;border-radius:8px;background:#fff1f1}.z-my-identity small{font-size:14px}

/* Preserve bidirectional email/phone fields and numerical level references. */
html[dir="rtl"] body{text-align:right}html[dir="rtl"] input[type="email"],html[dir="rtl"] input[type="tel"],html[dir="rtl"] input[type="url"],html[dir="rtl"] input[type="number"],html[dir="rtl"] .level-dupr,html[dir="rtl"] .level-rating-range{direction:ltr;unicode-bidi:isolate}html[dir="rtl"] .assessment-deeper{text-align:right}

.language-quick{max-width:190px;min-width:0;font:inherit;font-size:14px;color:var(--text);border:1px solid var(--line);border-radius:999px;padding:10px 12px;background:#fff;cursor:pointer}.language-quick:focus-visible{outline:2px solid #075438;outline-offset:3px}@media(max-width:520px){.language-quick{max-width:155px;font-size:13px}}

/* Show the complete homepage logo without a background plate or cropping. */
.brand-link.home-logo{width:80px;height:80px;flex:0 0 80px;background:transparent;border-radius:0;overflow:visible}.brand-link.home-logo img{display:block;width:100%;height:100%;object-fit:contain;transform:none}@media(max-width:600px){.brand-link.home-logo{width:64px;height:64px;flex-basis:64px}}

.nav:has(.header-auth){flex-wrap:wrap;gap:4px 18px}.nav:has(.header-auth) .nav-actions{margin-inline-start:auto}.header-auth{flex:1 0 100%;display:flex;flex-direction:row;flex-wrap:wrap;align-items:end;justify-content:flex-end;gap:8px}.header-auth label{width:100px;max-width:100%;font-size:11px;gap:3px}.header-auth input{width:100%;height:34px;padding:6px 9px;min-width:0;font-size:13px;border-radius:10px}.header-auth button{padding:6px 12px;min-height:34px;font-size:13px;font-weight:600;line-height:20px}.header-auth .form-message{flex-basis:100%;text-align:end;margin:0;min-height:0}.header-auth .form-message:empty{display:none}@media(max-width:600px){.header-auth{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;max-width:100%}.header-auth label{width:100%}.header-auth input{height:44px;font-size:16px}.header-auth button{flex:0 0 auto;min-height:44px}.header-auth #headerNameField:not(.hidden){grid-column:1/-1}.header-auth .form-message{grid-column:1/-1;text-align:start}}

.language-coverage{max-width:1056px;margin:8px auto 16px;padding:12px 18px;border:1px solid #e1ddc6;border-radius:12px;background:#fffbed;font-size:14px;color:#5f583d}@media(max-width:1104px){.language-coverage{margin-inline:24px}}

/* Phone authentication: full-width fields, paired actions. */
@media(max-width:600px){
  .nav:has(.header-auth){gap:12px 8px}
  .header-auth{width:100%;min-width:0;gap:10px;margin:0}
  .header-auth label{grid-column:1/-1;min-width:0;font-size:12px;gap:5px}
  .header-auth input{height:46px;padding:10px 12px;font-size:16px;border-radius:12px}
  .header-auth button{width:100%;min-height:44px;font-size:14px;padding:10px 12px}
  .nav:has(.header-auth) .nav-actions{gap:5px;max-width:100%}
  .nav-language .language-quick{max-width:116px;min-width:0}
}

body[data-page="profile"] .nav{flex-wrap:wrap;gap:12px 8px}body[data-page="profile"] .nav-actions{margin-inline-start:auto;gap:5px;max-width:100%}

/* Compact homepage account entry; the existing modal owns email/password fields. */
.header-auth.header-auth-compact{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;width:100%;margin:0}.header-auth-compact button{width:auto;min-height:44px;padding:10px 18px;font-size:14px}.compact-social,.compact-social-buttons{display:flex;align-items:center;gap:8px}.compact-social{flex-wrap:wrap}.header-auth-compact .social-icon{display:grid;place-items:center;width:44px;height:44px;padding:0!important;background:#fff;border:1px solid #d8e1dd}.provider-mark{font-size:24px;font-weight:800;line-height:1;font-family:Arial,sans-serif}.provider-google{color:#4285f4}.provider-facebook{display:grid;place-items:center;background:#1877f2;color:white;border-radius:50%;width:26px;height:26px;padding-top:3px}.compact-social-status{font-size:12px;max-width:270px;margin:0}.compact-social-status:empty{display:none}@media(max-width:600px){.header-auth.header-auth-compact{justify-content:center;gap:10px}.header-auth-compact button{min-height:44px}.nav:has(.header-auth-compact){padding-bottom:12px}#authModal .modal{width:calc(100% - 24px);max-height:calc(100dvh - 32px);overflow-y:auto;margin:16px auto;padding:24px 20px}#authModal input{font-size:16px;min-width:0;width:100%}#authModal .modal-title{font-size:26px}}
.nav.home-nav{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:20px;padding-top:18px;padding-bottom:18px}.home-nav .brand-link.home-logo{width:104px;height:104px;flex-basis:auto}.home-nav .home-nav-right{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0;width:100%;margin:0}.home-account-row,.home-primary-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.home-nav .ghost-btn,.home-nav .primary-btn{min-height:38px;font-size:14px;padding:8px 13px;text-decoration:none;white-space:nowrap}.home-nav :is(#meNav,#sharedMe){min-width:0;overflow:hidden;text-overflow:ellipsis;max-width:300px}.home-nav .header-auth.header-auth-compact{display:flex;flex:0 0 auto;width:auto;gap:6px;flex-wrap:nowrap;justify-content:flex-end}.home-nav .header-auth .compact-social{display:none}.home-nav .nav-language{flex-shrink:0}.home-nav .language-quick{width:120px}.home-nav a[href="admin.html"]{font-size:0;width:30px;min-height:30px;padding:3px;flex-shrink:0;text-align:center}.home-nav a[href="admin.html"]::before{content:'⚙';font-size:18px}.home-nav [hidden]{display:none!important}@media(max-width:600px){.nav.home-nav{grid-template-columns:82px minmax(0,1fr);gap:8px;padding:14px 12px}.home-nav .brand-link.home-logo{width:82px;height:82px}.home-nav .home-nav-right{gap:8px}.home-account-row,.home-primary-row{gap:4px}.home-nav .ghost-btn,.home-nav .primary-btn{font-size:11px;min-height:34px;padding:7px 7px}.home-nav .language-quick{width:80px;padding:7px 5px}.home-nav .header-auth.header-auth-compact{gap:4px}.home-nav :is(#meNav,#sharedMe){flex:0 1 auto}.home-nav a[href="admin.html"]{width:22px;padding:0;min-height:28px}.home-nav .home-primary-row .ghost-btn{padding:7px 6px}}@media(max-width:359px){.nav.home-nav{grid-template-columns:64px minmax(0,1fr);gap:5px;padding-inline:8px}.home-nav .brand-link.home-logo{width:64px;height:78px}.home-nav .language-quick{width:69px}.home-nav .ghost-btn,.home-nav .primary-btn{padding-inline:5px}.home-account-row,.home-primary-row{gap:3px}}

.home-nav :is(#meNav,#sharedMe){display:inline-flex;align-items:center;gap:6px;padding-block:5px}.header-player-avatar{position:relative;display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;overflow:hidden;background:#e3eed9;color:#075438;font-weight:700}.header-player-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.header-player-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:600px){.header-player-avatar{width:22px;height:22px;flex-basis:22px}.home-nav :is(#meNav,#sharedMe){gap:4px;padding-inline:5px}}

.header-legacy{display:none!important}.shared-auth-dialog{width:min(440px,calc(100vw - 24px));max-height:90dvh;overflow:auto;border:1px solid #d6e2da;border-radius:22px;padding:24px}.shared-auth-dialog::backdrop{background:#123a2b66}.shared-auth-dialog h2{font-size:28px;margin:10px 0 20px}.shared-auth-dialog>button:first-child{float:right}.shared-auth-dialog input{font-size:16px}
.hero .hero-rating-intro{max-width:none;width:100%;container-type:inline-size}.hero .hero-rating-link{display:inline-block;white-space:nowrap;font-size:clamp(11px,6cqi,22px);font-weight:600;letter-spacing:-.2px;color:inherit;text-decoration:none;border-bottom:1px solid currentColor;line-height:1.5}.hero .hero-rating-link:hover{color:#c0f032}.hero .hero-rating-link:focus-visible{outline:2px solid #c0f032;outline-offset:5px}
.home-nav .brand-link.home-logo img{transform:scale(1.21);transform-origin:center;}
/* Keep the space below the shared header compact across pages. */
.nav.home-nav{padding-bottom:9px}.nav.home-nav~main.assessment-page{padding-top:12px}.nav.home-nav~main.game-page{padding-top:6px}.nav.home-nav~main.game-page>.directory-heading{margin-top:10px}.nav.home-nav~main.clubs-page,.nav.home-nav~main.community-page{margin-top:12px}.nav.home-nav~main.admin-page,.nav.home-nav~main.zr-page{margin-top:14px}.nav.home-nav~main.courts-page{padding-top:16px}.nav.home-nav~main>.hero{margin-top:7px}@media(max-width:600px){.nav.home-nav{padding-bottom:7px}.nav.home-nav~main>.hero{margin-top:4px}.nav.home-nav~main.courts-page{padding-top:8px}.nav.home-nav~main.zr-page{margin-top:10px}}
.home-primary-row{flex-wrap:wrap}.home-nav .ghost-btn,.home-nav .primary-btn{max-width:100%}.zr-page,.assessment-page,.clubs-page,.community-page,.game-page{overflow-wrap:anywhere}html[dir="rtl"] .home-account-row,html[dir="rtl"] .home-primary-row{justify-content:flex-start}html[dir="rtl"] .zr-precision th,html[dir="rtl"] .zr-precision td{text-align:right}@media(max-width:600px){.home-account-row{flex-wrap:wrap}.home-nav .nav-language{max-width:100%}}
.unified-login{width:100%;max-width:440px;margin:12px auto;clear:both}.unified-providers{display:grid;gap:10px}.unified-providers .oauth-login{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;font-size:15px}.oauth-login svg{width:20px;height:20px;flex-shrink:0}.unified-email{margin-top:16px}.unified-email summary{cursor:pointer;text-align:center;padding:12px;border:1px solid var(--line);border-radius:999px;font-size:14px}.unified-email-form{display:grid;gap:12px;margin-top:16px}.unified-email-form label{display:grid;gap:5px}.unified-email-form input{width:100%;min-height:46px;font-size:16px;box-sizing:border-box}.unified-email-form [hidden],#authForm[hidden]{display:none!important}.unified-login .form-message{font-size:14px}.unified-explore{display:block;text-align:center;font-size:14px;margin-top:18px;color:var(--text)}.onboarding-progress{font-size:13px;color:var(--muted);line-height:1.7}.unified-email-form button{min-height:44px}.hero-actions .secondary-btn{text-decoration:none}
#resultAuth[hidden],#gameAuthForm[hidden]{display:none!important}
