/* Student-built auth surfaces, matching the approved GawangPinas landing pages. */
@font-face{font-family:'GP Helvetica';src:url('../assets/fonts/HelveticaNeueRoman.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:'GP Helvetica';src:url('../assets/fonts/HelveticaNeueBold.otf') format('opentype');font-weight:600 900;font-display:swap}
:root{--font-family:'GP Helvetica',Helvetica,Arial,sans-serif;--color-primary:#A34326;--color-primary-hover:#87371F;--color-primary-active:#A34326;--color-primary-light:#FBE8DF;--color-primary-border:#D9B5A5;--color-bg:#FDFBF7;--color-surface:#FDFBF7;--color-surface-subtle:#F4F1EB;--color-surface-hover:#EEEAE2;--color-border:#DDD8CF;--color-border-strong:#334155;--color-border-input:#8B796D;--color-text:#20242B;--color-text-secondary:#334155;--color-text-muted:#526174;--color-text-faint:#526174;--focus-outline-color:#A34326;--radius-xs:3px;--radius-sm:3px;--radius-md:4px;--radius-lg:4px;--shadow-sm:none;--shadow-card:none}
body.login-page,body.register-page,body.recovery-page{font-family:var(--font-family);color:var(--color-text-secondary);background:var(--color-bg)}
.auth-site-header{border-top:0;border-bottom:1px solid #DDD8CF;background:#FDFBF7}
.auth-site-header>div{max-width:1100px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.auth-site-brand{display:flex;align-items:center;gap:10px;color:#20242B;font-size:18px;font-weight:700;text-decoration:none}
.auth-site-brand:hover{color:#A34326;text-decoration:none}
.auth-site-brand img{display:block;width:36px;height:36px}
.auth-site-brand small{display:block;font-size:11px;font-weight:400;line-height:1.5;color:#526174}
.auth-home-link{font-size:13px;text-decoration:underline;text-underline-offset:3px}
body .auth-page{min-height:calc(100svh - 80px);padding:40px 24px;background:var(--color-bg);display:block}
body.login-page .auth-container,body.register-page .auth-container{max-width:1040px;width:100%;display:grid;grid-template-columns:minmax(0,540px) minmax(0,1fr);gap:64px;align-items:start}
body .login-story{grid-column:2;grid-row:1;min-height:0;border:0;border-top:2px solid #D9B5A5;border-radius:0;padding:24px 0;background:transparent;gap:0;color:#20242B;margin-top:8px}
body .login-story h2{font-size:23px;line-height:1.3;color:#A34326;letter-spacing:-.015em;max-width:28ch}
body .login-story-description{font-size:14px;line-height:1.65;color:#334155;max-width:40ch;margin-top:14px}
body .login-panel,body .register-panel{grid-column:1;grid-row:1}
body.login-page .auth-card,body.register-page .auth-card,body.recovery-page .auth-card{padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}
body .auth-header{display:none!important}
body.login-page .auth-title,body.register-page .auth-title,body.recovery-page .auth-title{color:#A34326;font-size:26px;line-height:1.25;letter-spacing:-.02em;font-weight:700;margin-bottom:10px}
body .auth-desc,body.login-page .auth-desc,body.register-page .auth-desc{font-size:14px;line-height:1.6;color:#334155}
body .auth-intro{margin-bottom:24px;text-align:left}
body .auth-form{gap:18px}
body .form-label,body.login-page .form-label,body.register-page .form-label{font-size:14px;color:#20242B}
body .form-input,body.login-page .form-input,body.register-page .form-input{height:46px;min-height:46px;border-color:#8B796D;border-radius:3px;font-size:16px;background:#FDFBF7;color:#20242B;font-family:var(--font-family)}
body .form-input::placeholder{color:#526174;opacity:1}
body .form-input:focus,body.login-page .form-input:focus,body.register-page .form-input:focus{border-color:#A34326;box-shadow:none;outline:2px solid #A34326;outline-offset:2px}
body .form-input.error,body .form-input[aria-invalid=true]{border-color:var(--color-danger)}
body .password-toggle-btn,body.login-page .password-toggle-btn,body.register-page .password-toggle-btn{height:46px;min-height:46px;color:#526174}
body .checkbox-custom,body.login-page .checkbox-custom,body.register-page .checkbox-custom{accent-color:#A34326}
body .form-forgot-link,body.login-page .form-forgot-link{color:#A34326;font-size:13px;text-decoration:underline;text-underline-offset:3px}
body .btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:46px;height:auto;line-height:1.3;padding:12px 16px;border-radius:4px;font-family:var(--font-family);box-shadow:none}
body.login-page #submit-btn,body.register-page #reg-submit-btn,body.register-page #otp-verify-btn,body.recovery-page .btn-primary{height:auto;min-height:46px;background:#A34326;border-color:#A34326;font-size:14px;font-weight:700;border-radius:4px}
body.login-page #submit-btn:hover:not(:disabled),body.register-page #reg-submit-btn:hover:not(:disabled),body.register-page #otp-verify-btn:hover:not(:disabled),body.recovery-page .btn-primary:hover:not(:disabled){background:#87371F}
body .form-divider{font-size:13px;margin:24px 0 18px;color:#526174}
body.login-page .auth-reg-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
body.login-page .btn-reg-option{border:1px solid #D9B5A5;background:transparent;border-radius:3px;padding:12px;min-height:66px;justify-content:center}
body.login-page .btn-reg-option:hover{border-color:#334155;background:#FBE8DF}
body .btn-reg-option-title{color:#A34326;font-size:13px}
body .btn-reg-option-sub{color:#526174;font-size:12px}
body .auth-footer,body.login-page .auth-footer,body.register-page .auth-footer{margin-top:26px;padding-top:18px;border-top:1px solid #DDD8CF;font-size:12px;text-align:left;color:#526174}
body.register-page .biz-role-card{border-radius:3px;padding:12px;background:#FDFBF7}
body.register-page .biz-role-card.active,body.register-page .biz-role-card:has(input[type=radio]:checked){padding:11px;border-color:#334155;background:#FBE8DF}
body .otp-digit{border-radius:3px;background:#FDFBF7;caret-color:#A34326}
body .otp-digit:focus{border-color:#A34326;box-shadow:none;outline:2px solid #A34326;outline-offset:2px}
body.recovery-page .auth-container{max-width:520px}
body .register-step-progress{color:#526174!important}
::selection{background:#E8642D;color:#A34326}
input{caret-color:#A34326}
@media(max-width:767px){.auth-site-header>div{padding:14px 16px;gap:12px}.auth-site-brand{font-size:17px}.auth-home-link{font-size:12px}body .auth-page,body.login-page .auth-page,body.register-page .auth-page{padding:28px 20px;min-height:calc(100svh - 80px)}body.login-page .auth-container,body.register-page .auth-container{display:block;max-width:520px}body .login-story{display:none}body.login-page .auth-card,body.register-page .auth-card{padding:0}body.login-page .auth-title,body.register-page .auth-title{font-size:24px}body.register-page .auth-footer{display:block}body .register-step-actions .btn{border-radius:4px}body.login-page .btn-reg-option{padding:12px 8px}}
@media(max-width:360px){.auth-site-header>div{padding-inline:12px}.auth-home-link{max-width:80px;text-align:right}body .auth-page,body.login-page .auth-page,body.register-page .auth-page{padding-inline:16px}body .auth-reg-options{gap:8px}body .otp-boxes{gap:6px}}
/* Override the earlier page-specific canvas and type declarations as well as the root tokens. */
body.login-page,body.register-page,body.recovery-page{--font-family:'GP Helvetica',Helvetica,Arial,sans-serif}
body.login-page .auth-page,body.register-page .auth-page,body.recovery-page .auth-page{background:#FDFBF7}
body.register-page .register-step-actions .btn{border-radius:4px}

/* Approved 16 October 2026 palette: orange / slate / terracotta / ivory. */
:root,[data-theme=light]{--gp-primary:#E8642D;--gp-primary-hover:#F07846;--gp-primary-active:#A34326;--gp-primary-light:#FBE8DF;--gp-primary-border:#C46946;--primary:#E8642D;--primary-hover:#F07846;--primary-dark:#F07846;--primary-deep:#A34326;--primary-active:#A34326;--primary-light:#FBE8DF;--primary-soft:#FBE8DF;--primary-border:#C46946;--color-primary:#E8642D;--color-primary-hover:#F07846;--color-primary-active:#A34326;--color-primary-light:#FBE8DF;--color-primary-border:#C46946;--gp-border-focus:#A34326;--focus-outline-color:#A34326;--gp-caret-color:#A34326;--gp-selection-bg:#FBE8DF;--gp-selection-text:#87371F}
[data-theme=dark]{--gp-primary:#E8642D;--gp-primary-hover:#F07846;--gp-primary-active:#F07846;--gp-primary-light:#493329;--gp-primary-border:#C46946;--primary:#E8642D;--primary-hover:#F07846;--primary-dark:#F07846;--primary-active:#F07846;--primary-light:#493329;--primary-soft:#493329;--primary-border:#C46946;--color-primary:#E8642D;--color-primary-hover:#F07846;--color-primary-light:#493329}
body a{color:#A34326}
body a:hover{color:#87371F}
body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary){background:#E8642D;border-color:#E8642D;color:#20242B}
body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary):hover:not(:disabled){background:#F07846;border-color:#F07846;color:#20242B}
[data-theme=dark] body a{color:#F59B74}
body :focus-visible{outline-color:#A34326}
::selection{background:#FBE8DF;color:#87371F}
body.login-page #submit-btn,body.register-page #reg-submit-btn,body.register-page #otp-verify-btn,body.recovery-page .btn-primary{background:#E8642D;border-color:#E8642D;color:#20242B}
body.login-page #submit-btn:hover:not(:disabled),body.register-page #reg-submit-btn:hover:not(:disabled),body.register-page #otp-verify-btn:hover:not(:disabled),body.recovery-page .btn-primary:hover:not(:disabled){background:#F07846;border-color:#F07846;color:#20242B}
body.login-page .auth-title,body.register-page .auth-title,body.recovery-page .auth-title,body .login-story h2{color:#334155}

/* Approved white labels on filled orange actions, including hover and dark mode. */
body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary),#submit-btn,#reg-submit-btn,#otp-verify-btn{color:#fff!important}

/* Pale and outlined actions retain readable labels. */
body :is(.btn-outline,.btn--outline,.btn-secondary,.btn--secondary,.btn--subtle,.gp-btn--secondary){color:#A34326!important}
[data-theme=dark] body :is(.btn-outline,.btn--outline,.btn-secondary,.btn--secondary,.btn--subtle,.gp-btn--secondary){color:#F59B74!important}
