.auth-layout{flex-direction:column;min-height:100dvh;display:flex}.auth-visual{padding:16px var(--gutter) 64px;background:radial-gradient(ellipse 80% 70% at 0% 100%, #2a3c408c, transparent 60%), linear-gradient(160deg, var(--green) 0%, var(--green-deep) 100%);color:#fff;position:relative;overflow:hidden}.auth-visual:before{content:"";aspect-ratio:1;pointer-events:none;border:1.5px solid #f9ad3f38;border-radius:50%;width:120vw;max-width:900px;position:absolute;top:-40%;left:-50%;box-shadow:0 0 0 48px #ffffff08}.auth-topbar{justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.auth-topbar-link{border-radius:var(--radius-pill);background:#ffffff1f;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:.875rem;font-weight:500;transition:background-color .2s;display:inline-flex}.auth-topbar-link:hover{background:#ffffff38}.auth-visual .card-stage{width:min(78%,330px);margin-top:22px}.auth-visual .card-shadow{margin-top:14px}.auth-visual-copy{display:none}.auth-main{z-index:2;padding:32px var(--gutter) 40px;background:var(--paper);animation:panel-up .8s var(--ease-out) both;border-radius:28px 28px 0 0;flex:1;margin-top:-36px;position:relative}@keyframes panel-up{0%{opacity:0;transform:translateY(40px)}}.auth-panel{width:100%;max-width:440px;margin-inline:auto}.auth-panel h1{font-size:clamp(1.5rem,6vw,1.9rem);font-weight:700}.auth-panel>p{color:var(--ink-muted);margin-top:6px}.auth-switch{color:var(--ink-muted);text-align:center;margin-top:24px}.auth-switch a{color:var(--green);text-underline-offset:4px;font-weight:600;text-decoration:underline}@media (width>=960px){.auth-layout{grid-template-columns:minmax(420px,1fr) 1.05fr;height:100dvh;min-height:640px;display:grid}.auth-visual{flex-direction:column;order:2;padding:28px 48px 40px;display:flex}.auth-visual .card-stage{width:min(100%,440px);margin:auto}.auth-visual-copy{max-width:30em;display:block;position:relative}.auth-visual-copy h2{font-size:1.6rem;font-weight:700}.auth-visual-copy p{color:#ffffffbf;margin-top:8px}.auth-main{border-radius:0;align-items:center;margin-top:0;padding:48px;display:flex;overflow-y:auto}}.auth-form{grid-template-columns:minmax(0,1fr);gap:18px;margin-top:28px;display:grid}.field{gap:6px;display:grid}.field label{font-family:var(--font-display);font-size:.9rem;font-weight:500}.field label small{color:var(--ink-muted);font-family:var(--font-body);font-weight:400}.input-wrap{border:1.5px solid var(--line);border-radius:var(--radius-md);background:var(--surface);align-items:center;gap:10px;min-height:54px;padding:0 16px;transition:border-color .2s,box-shadow .2s;display:flex}.input-wrap>i{width:18px;color:var(--ink-muted);text-align:center;transition:color .2s}.input-wrap:focus-within{border-color:var(--green);box-shadow:0 0 0 4px #0568381f}.input-wrap:focus-within>i{color:var(--green)}.input-wrap input{background:0 0;border:0;outline:none;flex:1;width:0;min-width:0;height:52px;font-size:16px}.input-wrap input::placeholder{color:#9aa8a0}.input-ltr{text-align:right;direction:ltr}.input-ltr::placeholder{text-align:right}.field.invalid .input-wrap{border-color:var(--danger);animation:.35s shake}.field.invalid .input-wrap>i{color:var(--danger)}@keyframes shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.field-hint,.field-error{font-size:.82rem;line-height:1.5}.field-hint{color:var(--ink-muted)}.field-error{color:var(--danger);display:none}.field.invalid .field-error{display:block}.field.invalid .field-hint{display:none}.card-input{direction:ltr}.card-prefix{color:var(--green);font-family:var(--font-display);letter-spacing:.04em;font-weight:700}.card-input input{font-family:var(--font-display);letter-spacing:.08em;font-weight:600}.icon-button{width:40px;height:40px;color:var(--ink-muted);background:0 0;border:0;border-radius:50%;place-items:center;margin-inline-end:-8px;display:grid}.icon-button:hover{background:var(--paper);color:var(--ink)}.form-row{gap:18px;display:grid}@media (width>=520px){.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.submit-button{width:100%;min-height:54px;margin-top:4px;font-size:1rem}.submit-button:disabled{opacity:.75;cursor:progress}.spinner{border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form-alert{border-radius:var(--radius-sm);color:#9b1c1c;animation:rise .3s var(--ease-out);background:#fdecec;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;display:flex}.form-alert i{margin-top:4px}.form-alert a{font-weight:600;text-decoration:underline}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.form-note{color:var(--ink-muted);gap:10px;font-size:.85rem;display:flex}.form-note a{color:var(--green);text-underline-offset:4px;font-weight:600;text-decoration:underline}.form-note i{color:var(--green);margin-top:5px}.result-panel{text-align:center;animation:rise .5s var(--ease-out);justify-items:center;gap:10px;display:grid}.result-icon{background:var(--green);width:72px;height:72px;color:var(--gold);animation:pop .7s var(--ease-spring) .1s both;border-radius:50%;place-items:center;margin-bottom:8px;font-size:1.8rem;display:grid}@keyframes pop{0%{opacity:0;transform:scale(.4)}}.result-panel h1{font-size:1.6rem}.result-panel p{max-width:26em;color:var(--ink-muted)}.result-panel .button{width:100%;margin-top:14px}.status-badge{border-radius:var(--radius-pill);font-family:var(--font-display);align-items:center;gap:8px;padding:6px 14px;font-size:.875rem;font-weight:600;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}.status-pending{background:var(--gold-soft);color:#8a5a10}.status-pending:before{animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.status-active{background:var(--green-soft);color:var(--green)}.status-inactive{color:#4b5a60;background:#eceff0}.strength{grid-template-columns:repeat(3,1fr);gap:4px;margin-top:2px;display:grid}.strength span{background:var(--line);border-radius:4px;height:4px;transition:background-color .25s}.strength[data-score="1"] span:first-child{background:var(--danger)}.strength[data-score="2"] span:nth-child(-n+2){background:var(--gold)}.strength[data-score="3"] span{background:var(--green)}.spinner-dark{border-width:3px;border-color:var(--green-soft);border-top-color:var(--green);width:34px;height:34px}.result-tip{align-items:center;gap:8px;font-size:.85rem;display:flex}.result-icon-warn{background:var(--gold-soft);color:#a86b06}.result-panel button.button{width:100%;margin-top:14px}.result-panel button.button:disabled{opacity:.6;cursor:not-allowed}.forgot-link{color:var(--green);text-underline-offset:4px;justify-self:start;margin-top:-8px;font-size:.875rem;font-weight:600;text-decoration:underline}.consent{cursor:pointer;align-items:flex-start;gap:10px;line-height:1.7;display:flex;font-family:var(--font-body)!important;font-size:.9rem!important;font-weight:400!important}.consent input{width:20px;height:20px;accent-color:var(--green);flex-shrink:0;margin-top:3px}.consent a{color:var(--green);text-underline-offset:3px;font-weight:600;text-decoration:underline}.consent-field.invalid .consent input{outline:2px solid var(--danger);outline-offset:2px}.auth-contact{gap:10px;margin-top:18px;display:grid}.auth-contact .button{justify-content:center;align-items:center;gap:8px;margin-top:0;display:inline-flex}
