/*
 * Zenbox-safe visual overrides for the current login bundle.
 * This file is deliberately public and loaded after Vite assets: upload it by
 * SFTP/FTP to adjust login typography without rebuilding frontend assets.
 */
/*
 * Global FAM readability baseline.  The football UI historically used many
 * 0.5–0.7rem labels, which are not legible in a day-to-day club workflow.
 * Headings intentionally remain untouched; this raises only operational text.
 */
#app .fam-shell{font-size:16px}
#app .fam-shell :where(p,li,td,dd,input,select,textarea,label){font-size:.94rem!important;line-height:1.55}
#app .fam-shell :where(.fam-button,.button,.fam-tabs button,.fam-nav-item,.context-switcher,.season-switcher,.topbar-route strong,.account-menu strong,.sidebar-user strong){font-size:.84rem!important}
#app .fam-shell :where(th,small,.eyebrow,.nav-group-label,.topbar-route small,.account-menu small,.sidebar-user small,.badge,.status-badge,.chip,.mini-chip,.text-link,.back-link,.hub-back,.muted){font-size:.78rem!important;line-height:1.45}
#app .fam-shell :where(.section-card,.chart-container,.card,.table-card,.toolbar,.form-card,.profile-summary,.role-card,.request-card,.session-card,.metric-card,.match-panel,.quick-view,.day-card,.action-card,.message-preview,.announcement-card,.calendar-item,.notification-list) :where(span:not(:has(svg)),small,code){font-size:.78rem!important;line-height:1.45}
#app .fam-shell :where(.event-card,.activity-item,.document-row,.competition-entry,.module-list-row,.training-row,.calendar-event,.match-row,.callup-row,.lineup-list,.stats-row,.day-card,.action-card,.message-preview,.announcement-card,.calendar-item,.notification-list,.quick-view,.hero-data) strong{font-size:.86rem!important;line-height:1.3}
#app .fam-topbar .context-switcher>span{font-size:.78rem!important;color:var(--fam-text-2)}
#app .fam-topbar .context-switcher select{font-size:.84rem!important;color:var(--fam-text)!important}
#app .fam-topbar .context-switcher select option{background:#0b1620!important;color:#f3f7fa!important}
@media(max-width:760px){#app .fam-shell :where(p,li,td,dd,input,select,textarea,label){font-size:.9rem!important}#app .fam-shell :where(th,small,.eyebrow,.nav-group-label,.topbar-route small,.account-menu small,.sidebar-user small,.badge,.status-badge,.chip,.mini-chip,.text-link,.back-link,.hub-back,.muted){font-size:.75rem!important}}
.auth-page{grid-template-columns:minmax(0,1.08fr) minmax(460px,.92fr)}
.auth-story{padding:clamp(42px,6vw,78px) clamp(34px,7vw,112px);background-color:#06140f;background-image:linear-gradient(90deg,rgba(1,13,8,.98) 0%,rgba(1,15,10,.90) 39%,rgba(1,15,10,.40) 68%,rgba(1,15,10,.18) 100%),radial-gradient(circle at 79% 18%,color-mix(in srgb,var(--club-primary,#2f7df4) 25%,transparent),transparent 30%),url('/images/fam-login-football-hero-v1.png');background-position:center,center,center right;background-repeat:no-repeat;background-size:cover,cover,cover}
.auth-story:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(1,8,5,.10),rgba(1,8,5,.38)),linear-gradient(90deg,rgba(255,255,255,.055) 0 1px,transparent 1px);background-size:auto,9.5vw 100%;opacity:.42}
.auth-story:after{width:min(68vw,740px);height:min(68vw,740px);right:-340px;bottom:-415px;border-color:color-mix(in srgb,var(--club-accent,#62d8ff) 48%,transparent)}
.auth-story .brand,.auth-story .story-copy,.auth-story .story-stat{position:relative;z-index:1}
.auth-story .eyebrow.light,.auth-story .story-copy h1 em{color:var(--club-primary,#2f7df4)!important}
.auth-story .brand-mark{width:58px;height:58px;border-radius:14px;border:1px solid color-mix(in srgb,var(--club-accent,#62d8ff) 75%,#fff);box-shadow:0 10px 28px rgba(0,0,0,.24)}
.has-login-crest .auth-story .brand-mark{background:#f7faf8 var(--fam-login-crest) center/contain no-repeat;color:transparent}
.auth-story .brand strong{font-size:1.42rem}.auth-story .brand small{font-size:.73rem}.auth-story .eyebrow.light{font-size:1rem;letter-spacing:.16em}.auth-story .story-copy h1{font-size:clamp(3.15rem,5.5vw,5.75rem);margin:20px 0 24px}.auth-story .story-copy p{max-width:560px;font-size:1.12rem;line-height:1.65}.auth-story .story-stat strong{font-size:1rem}.auth-story .story-stat span{font-size:.87rem;margin-top:4px}
.auth-form-wrap{position:relative;isolation:isolate;overflow:hidden;padding:clamp(30px,5vw,84px);background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--club-primary,#2f7df4) 16%,transparent),transparent 34%),linear-gradient(135deg,#edf5f1,#f8fbfa 62%,#e8f2ee)}.auth-form-wrap:before{content:"";position:absolute;z-index:-1;width:min(72vh,700px);height:min(72vh,700px);right:-28%;bottom:-31%;border:2px solid color-mix(in srgb,var(--club-secondary,#142a46) 14%,transparent);border-radius:50%;box-shadow:0 0 0 56px color-mix(in srgb,var(--club-primary,#2f7df4) 5%,transparent),0 0 0 112px color-mix(in srgb,var(--club-primary,#2f7df4) 3%,transparent)}.auth-form-wrap:after{content:"";position:absolute;z-index:-1;inset:0;background:repeating-linear-gradient(90deg,transparent 0 79px,color-mix(in srgb,var(--club-secondary,#142a46) 4%,transparent) 80px,transparent 81px)}
.auth-form-wrap .auth-card{width:min(510px,100%);padding:clamp(30px,4vw,52px);gap:22px;border:1px solid #d2e1da;border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 24px 65px rgba(10,44,32,.16);color:#112b23}
.auth-card .eyebrow{font-size:.9rem;letter-spacing:.14em}.auth-card h2{color:#102a22!important;font-size:clamp(2.2rem,3vw,2.8rem);line-height:1;margin:10px 0 11px}.auth-card>div:first-child p,.auth-card>p{color:#587168!important;font-size:1rem;line-height:1.55}.auth-card label{color:#234238!important;gap:9px;font-size:1rem}.auth-card input{min-height:52px;padding:14px 15px;border-radius:11px;font-size:1rem}.auth-card .text-link{font-size:.92rem;color:var(--club-secondary,#142a46)}.auth-card .button{min-height:52px;padding:13px 18px;border-radius:11px;font-size:1rem}.auth-card .button.primary{background:var(--club-primary,#2f7df4)}.auth-card .button.ghost{color:#18352c!important;background:rgba(255,255,255,.72)!important;border-color:#8ea59c!important}.auth-card .divider{color:#71887f!important;font-size:.85rem}.auth-card .divider:before,.auth-card .divider:after{background:#b8c9c1}.auth-card .security-note{color:#5e776d!important;font-size:.88rem!important;line-height:1.5}
@media(max-width:1050px){.auth-page{grid-template-columns:1fr}.auth-story{display:flex;min-height:340px;padding:34px clamp(24px,7vw,74px)}.auth-story .story-copy h1{font-size:clamp(2.8rem,7vw,4.5rem)}.auth-form-wrap{padding:46px 24px}}
@media(max-width:600px){.auth-story{min-height:275px;padding:24px}.auth-story .brand-mark{width:48px;height:48px}.auth-story .brand strong{font-size:1.15rem}.auth-story .eyebrow.light{font-size:.78rem}.auth-story .story-copy h1{font-size:2.55rem;margin:14px 0 10px}.auth-story .story-copy p,.auth-story .story-stat{display:none}.auth-form-wrap{padding:20px 15px 32px}.auth-form-wrap .auth-card{padding:28px 22px;border-radius:18px;gap:19px}.auth-card h2{font-size:2.2rem}.auth-card>div:first-child p{font-size:.95rem}.auth-card label{font-size:.96rem}.auth-card .text-link{font-size:.9rem}}
