/*
Theme Name: TrainingHub.au Portal
Theme URI: https://traininghub.au
Author: TrainingHub.au
Description: Clean corporate TrainingHub.au landing and portal login theme.
Version: 1.0.1
License: GPLv2 or later
Text Domain: traininghub-au
*/

:root{--navy:#061a49;--blue:#006bff;--text:#10244d;--muted:#486082;--line:#d9e3f0;--soft:#f3f8ff;--white:#fff}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--text);background:linear-gradient(135deg,#fff 0%,#f6fbff 55%,#eaf4ff 100%);min-height:100vh}.th-page{min-height:100vh;display:flex;flex-direction:column;position:relative;overflow:hidden}.th-bg{position:absolute;inset:auto -10% 0 -10%;height:42%;background:radial-gradient(ellipse at 20% 100%,rgba(0,107,255,.16),transparent 55%),linear-gradient(165deg,transparent 40%,rgba(0,107,255,.09));clip-path:polygon(0 34%,18% 58%,42% 74%,68% 54%,100% 20%,100% 100%,0 100%);z-index:0}.th-main{width:min(1360px,92vw);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;min-height:calc(100vh - 154px);padding:68px 0 60px;position:relative;z-index:1}.th-logo{width:min(520px,90%);height:auto;display:block;margin-bottom:74px}.th-hero h1{font-size:clamp(42px,5vw,68px);line-height:1.08;margin:0 0 28px;font-weight:800;letter-spacing:-.04em;color:var(--navy)}.th-hero h1 span{color:var(--blue)}.th-rule{width:72px;height:5px;border-radius:8px;background:var(--blue);margin:0 0 34px}.th-copy{font-size:22px;line-height:1.55;color:#31486d;max-width:650px;margin:0 0 54px}.th-points{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:780px}.th-point{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:start}.th-icon{width:58px;height:58px;border-radius:50%;background:#dcecff;display:grid;place-items:center;color:var(--blue)}.th-icon svg{width:32px;height:32px;stroke:currentColor;stroke-width:2;fill:none}.th-point strong{display:block;color:var(--blue);font-size:20px;margin:4px 0 8px}.th-point p{margin:0;color:#31486d;font-size:16px;line-height:1.45}.th-login-card{background:rgba(255,255,255,.88);backdrop-filter:blur(10px);border:1px solid rgba(216,226,240,.9);border-radius:22px;box-shadow:0 22px 55px rgba(6,26,73,.13);padding:48px;max-width:520px;justify-self:center;width:100%}.th-login-icon{width:86px;height:86px;border:4px solid #cfe0ff;border-radius:50%;margin:0 auto 22px;display:grid;place-items:center;color:var(--blue)}.th-login-icon svg{width:52px;height:52px;stroke:currentColor;stroke-width:2;fill:none}.th-login-card h2{text-align:center;color:var(--navy);font-size:28px;margin:0 0 12px}.th-login-card .sub{text-align:center;color:#405a80;font-size:18px;margin:0 0 42px}.th-field{margin-bottom:22px}.th-field label{display:block;font-weight:700;color:#0f2148;margin-bottom:10px}.th-input{display:flex;align-items:center;gap:12px;border:1px solid #cfd9e6;border-radius:8px;background:white;height:56px;padding:0 16px;color:#45617f}.th-input input{border:0;outline:none;width:100%;font-size:16px;color:var(--text);background:transparent}.th-row{display:flex;justify-content:space-between;align-items:center;margin:18px 0 26px;font-size:15px}.th-row a,.th-support a{color:var(--blue);text-decoration:none}.th-check{display:flex;gap:9px;align-items:center}.th-check span{width:20px;height:20px;border:1px solid #b8c6d8;border-radius:4px;background:white}.th-button{display:block;width:100%;height:56px;border:0;border-radius:8px;background:linear-gradient(90deg,#006bff,#005df0);color:#fff;font-size:18px;font-weight:700;cursor:pointer;text-align:center;text-decoration:none;line-height:56px}.th-or{display:flex;align-items:center;gap:18px;color:#657895;margin:28px 0}.th-or:before,.th-or:after{content:"";height:1px;background:#d8e0ec;flex:1}.th-support{text-align:center;font-size:17px}.th-footer{background:linear-gradient(90deg,#061a49,#06245e);color:white;position:relative;z-index:1;padding:28px 0 18px}.th-footer-inner{width:min(1360px,92vw);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.th-foot{display:grid;grid-template-columns:48px 1fr;gap:14px}.th-foot .th-icon{width:48px;height:48px;background:transparent;border:0;color:#006bff}.th-foot strong{display:block;margin:0 0 8px}.th-foot p{margin:0;color:#d8e6ff;line-height:1.45}.th-copyr{text-align:center;color:#d8e6ff;margin-top:24px}@media(max-width:980px){.th-main{grid-template-columns:1fr;gap:36px;padding:36px 0}.th-logo{margin-bottom:36px}.th-points,.th-footer-inner{grid-template-columns:1fr}.th-login-card{justify-self:stretch}.th-footer{padding-bottom:26px}}@media(max-width:560px){.th-main{width:90vw}.th-login-card{padding:30px 22px}.th-points{gap:20px}.th-hero h1{font-size:40px}.th-copy{font-size:18px}.th-row{font-size:14px}}

.th-otp-divider{display:flex;align-items:center;gap:14px;color:#657895;margin:24px 0 20px;font-size:14px}.th-otp-divider:before,.th-otp-divider:after{content:"";height:1px;background:#d8e0ec;flex:1}.th-button-secondary{background:linear-gradient(90deg,#061a49,#0a2d73);margin-top:8px}.th-resend{text-align:center;margin:18px 0 28px}.th-resend button{border:0;background:transparent;color:var(--blue);font-weight:700;cursor:pointer;font-size:15px}.th-otp-form{margin-bottom:26px}
