:root{--auth-page: #ffe6c9;--auth-left: #f5f7fc;--auth-right: #ffffff;--auth-text: #0d0d0d;--auth-muted: #5d5d5d;--auth-border: #dbdbdb;--auth-field-bg: #f9f9f9;--auth-accent: #2563eb;--auth-accent-hover: #1d4ed8;--auth-danger: #dc2626;--auth-focus: rgba(37, 99, 235, .2);--auth-status-bg: rgba(22, 163, 74, .1);--auth-status-border: rgba(22, 163, 74, .38)}*,*:before,*:after{box-sizing:border-box}html,body,body.login-page{height:100%;min-height:100vh}body.login-page{margin:0;padding:clamp(.55rem,1.4vw,1.2rem);display:grid;place-items:center;color:var(--auth-text);background:var(--auth-page);font-family:Figtree,Noto Sans,sans-serif;overflow:hidden}body.login-page a{color:inherit;text-decoration:none}body.login-page a:focus-visible,body.login-page button:focus-visible,body.login-page input:focus-visible{outline:2px solid var(--auth-accent);outline-offset:2px}.auth-page{width:min(1240px,100%);height:min(770px,calc(100svh - clamp(1.1rem,2.5vw,2.4rem)));transition:opacity .18s ease}.auth-page.is-switching{opacity:.45;pointer-events:none}.auth-layout{height:100%;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(370px,.95fr);border:12px solid #ffffff;border-radius:24px;background:#fff;overflow:hidden}.auth-visual{background:var(--auth-left);min-height:0}.auth-visual>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.auth-panel{min-height:0;background:var(--auth-right);padding:clamp(.9rem,2.2vh,2rem) clamp(1rem,1.9vw,1.8rem);display:flex;justify-content:center}.auth-panel-inner{width:min(420px,100%);min-height:100%;display:flex;flex-direction:column;padding-top:clamp(.18rem,2.9vh,2.1rem)}.auth-page--verify .auth-panel-inner{padding-top:0}.auth-panel-inner--utility{justify-content:center;gap:.78rem}.auth-logo{display:inline-flex;align-self:flex-start;line-height:0;margin:0 0 clamp(.3rem,.95vh,.9rem)}.auth-logo img{width:72px;height:auto;display:block}.auth-title{width:100%;margin:0;font-size:clamp(1.42rem,1.9vw,1.95rem);line-height:1.16;font-weight:650}.auth-title--verify{font-size:clamp(1.34rem,1.78vw,1.74rem)}.auth-subtitle{width:100%;margin:.28rem 0 clamp(.45rem,1.2vh,.9rem);color:var(--auth-muted);font-size:.9rem;line-height:1.35}.auth-subtitle--verify{margin:.08rem 0 .42rem}.auth-google{width:100%;height:42px;border-radius:8px;border:1px solid var(--auth-border);background:#fafafa;color:#66656c;font-size:.86rem;font-weight:600;gap:.45rem;cursor:not-allowed;margin-bottom:clamp(.3rem,.85vh,.7rem)}.auth-google,.auth-google-mark{display:inline-flex;align-items:center;justify-content:center}.auth-google-mark{width:20px;height:20px;border-radius:50%;border:1px solid var(--auth-border);background:#fff;color:var(--auth-accent);font-size:.78rem;font-weight:700}.auth-divider{width:100%;margin:0 0 clamp(.4rem,1vh,.8rem);display:grid;align-items:center;text-align:center;color:#8c8b92;font-size:.76rem;position:relative}.auth-divider:before{content:"";height:1px;background:var(--auth-border);position:absolute;left:0;right:0;top:50%}.auth-divider span{padding:0 .7rem;background:var(--auth-right);position:relative;z-index:1;justify-self:center}.auth-status{width:100%;border:1px solid var(--auth-status-border);border-radius:8px;background:var(--auth-status-bg);color:#0f5a2d;padding:.5rem .68rem;font-size:.8rem;margin-bottom:clamp(.35rem,.95vh,.72rem)}.auth-note{width:100%;margin:0;color:var(--auth-muted);font-size:.85rem;line-height:1.45}.auth-note--verify{margin-top:.08rem;font-size:.79rem;line-height:1.38}.auth-form{width:100%;display:grid;gap:clamp(.35rem,.95vh,.78rem)}.auth-form--verify{gap:.54rem}.auth-code-grid{width:100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.52rem}.auth-code-digit{width:100%;height:56px;border:1px solid var(--auth-border);border-radius:10px;background:var(--auth-field-bg);color:#0d0d0d;font-size:1.52rem;font-weight:700;line-height:1;text-align:center;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.auth-code-digit:focus{outline:none;border-color:var(--auth-accent);background:#fff;box-shadow:0 0 0 3px var(--auth-focus)}.auth-code-digit[data-filled="1"]{border-color:#b7cdfc;background:#fff}.auth-field{display:grid;gap:.25rem}.auth-field span{font-size:.8rem;font-weight:650;color:var(--auth-muted)}.auth-field input{width:100%;height:clamp(37px,4.8vh,42px);padding:0 .75rem;border:1px solid var(--auth-border);border-radius:8px;background:var(--auth-field-bg);color:#0d0d0d;font-size:.88rem;transition:border-color .14s ease,box-shadow .14s ease}.auth-field input::placeholder{color:#8d8d8d}.auth-field input:focus{outline:none;border-color:var(--auth-accent);box-shadow:0 0 0 3px var(--auth-focus)}.auth-input-error{margin:0;color:var(--auth-danger);list-style:none;padding-left:0;font-size:.74rem}.auth-input-error li{line-height:1.28}.auth-input-error--code{margin-top:.08rem}.auth-honeypot{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.auth-meta{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.48rem;margin-top:.06rem;flex-wrap:wrap}.auth-remember{display:inline-flex;align-items:center;gap:.4rem;color:var(--auth-muted);font-size:.82rem;-webkit-user-select:none;user-select:none;cursor:pointer}.auth-remember input{width:14px;height:14px;accent-color:var(--auth-accent)}.auth-link{color:var(--auth-accent);font-size:.8rem;font-weight:600;transition:color .14s ease}.auth-link:hover{color:var(--auth-accent-hover)}.auth-submit{width:100%;height:clamp(38px,5vh,44px);margin-top:.12rem;border:1px solid var(--auth-accent-hover);border-radius:8px;background:var(--auth-accent);color:#f8fbff;font-size:.9rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s ease}.auth-submit:hover{background:var(--auth-accent-hover)}.auth-submit:disabled{opacity:.82;cursor:progress}.auth-submit--secondary{border-color:var(--auth-border);background:#fff;color:var(--auth-accent)}.auth-submit--secondary:hover{border-color:var(--auth-accent);background:#f4f8ff}.auth-actions{width:100%;display:grid;gap:.52rem}.auth-actions--verify{gap:.16rem;justify-items:start}.auth-action-form{width:100%}.auth-action-form--compact{width:auto}.auth-action-form--resend{display:inline-flex;align-items:center;gap:.5rem}.auth-secondary{border:0;background:transparent;color:var(--auth-accent);font-size:.86rem;font-weight:600;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.auth-secondary:hover{color:var(--auth-accent-hover)}.auth-secondary:disabled{opacity:.6;cursor:not-allowed;text-decoration:none}.auth-resend-timer{color:var(--auth-muted);font-size:.8rem}.auth-bottom{width:100%;margin-top:auto;padding-top:clamp(.3rem,1vh,.85rem);text-align:center;color:#5d5d5d;font-size:.87rem}.auth-bottom a{color:var(--auth-accent);font-weight:600;margin-left:.22rem;transition:color .14s ease}.auth-bottom--single a{margin-left:0}.auth-bottom a:hover{color:var(--auth-accent-hover)}@media(max-width:980px){body.login-page{padding:.45rem}.auth-page{width:min(811px,100%);height:calc(100svh - .9rem)}.auth-layout{grid-template-columns:1fr;border-width:10px;border-radius:18px}.auth-visual{display:none}.auth-panel{padding:clamp(.7rem,1.8vh,1.2rem) clamp(.7rem,1.8vw,1.2rem)}.auth-panel-inner{padding-top:clamp(.1rem,1.9vh,1.2rem)}.auth-logo img{width:58px}.auth-title{font-size:clamp(1.34rem,2.1vw,1.62rem)}.auth-subtitle{font-size:.84rem;margin-bottom:.45rem}.auth-google{height:38px}.auth-field input{height:35px}.auth-code-digit{height:50px;font-size:1.34rem}.auth-submit{height:37px}}@media(max-width:640px){.auth-layout{border-width:8px;border-radius:14px}.auth-page{height:calc(100svh - .65rem)}.auth-panel-inner{width:100%}.auth-logo img{width:52px}.auth-meta{flex-direction:column;align-items:flex-start;gap:.3rem}.auth-code-grid{gap:.36rem}.auth-code-digit{height:46px;font-size:1.18rem}.auth-bottom{font-size:.78rem}.auth-bottom a{margin-left:.12rem}}
