.auth-container{min-height:calc(100vh - 76px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--paper)}.auth-container:after{content:"";background-image:url(/images/interior-bg.png);background-size:cover;background-position:50%;border-left:1px solid var(--line)}.auth-card{width:100%;max-width:27rem;margin:0 auto;align-self:center;padding:clamp(2.5rem,6vw,4rem) clamp(1.25rem,4vw,2rem)}.auth-header{margin-bottom:2rem}.auth-title{font-family:var(--font-display),Georgia,serif;font-size:clamp(1.9rem,3.4vw,2.5rem);font-weight:400;letter-spacing:-.02em;line-height:1.1;color:var(--ink);margin-bottom:.6rem}.auth-subtitle{color:var(--ink-soft);font-size:.95rem;line-height:1.6;font-style:normal;max-width:34ch}.form-group{margin-bottom:1.25rem;position:relative}.form-label{display:block;margin-bottom:.45rem;color:var(--ink-faint);font-size:.66rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}.form-input{width:100%;padding:.85rem .9rem;border:1px solid var(--line-strong);border-radius:var(--r-xs);font-size:.95rem;font-family:var(--font-lexend),sans-serif;color:var(--ink);background-color:var(--surface);transition:border-color var(--t-fast),box-shadow var(--t-fast);outline:none}.form-input:hover{border-color:var(--ink-faint)}.form-input:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(106,130,88,.14)}.form-input::placeholder{color:var(--ink-faint);font-style:normal}.password-input-wrapper{position:relative}.password-input-wrapper .form-input{padding-right:3rem}.password-toggle{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--ink-faint);padding:.5rem;border-radius:var(--r-xs);transition:color var(--t-fast);display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px}.password-toggle:hover{color:var(--forest)}.submit-button{width:100%;padding:1rem;background:var(--forest);color:var(--ruana-white);border:1px solid var(--forest);border-radius:var(--r-xs);font-size:.95rem;font-family:var(--font-lexend),sans-serif;font-weight:500;cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast);margin-top:1rem;min-height:48px}.submit-button:hover:not(:disabled){background:var(--forest-deep);border-color:var(--forest-deep)}.submit-button:disabled{opacity:.5;cursor:not-allowed}.error-message,.message,.success-message{display:flex;align-items:flex-start;gap:.6rem;padding:.85rem .9rem;border-radius:var(--r-xs);font-size:.88rem;line-height:1.55;text-align:left}.error-message svg,.message svg{flex-shrink:0;margin-top:.15rem}.error-message{background-color:rgba(179,38,30,.07);color:var(--ruana-error);border-left:2px solid var(--ruana-error);margin-bottom:1.25rem}.message{margin:1.25rem 0 0}.message.success,.success-message{background-color:rgba(61,107,69,.09);color:var(--ruana-success);border-left:2px solid var(--ruana-success)}.success-message{margin-bottom:1.25rem}.message.error{background-color:rgba(179,38,30,.07);color:var(--ruana-error);border-left:2px solid var(--ruana-error)}.message.info{margin:0 0 1.25rem;background-color:rgba(106,130,88,.09);color:var(--forest-deep);border-left:2px solid var(--forest)}.field-error{display:flex;align-items:flex-start;gap:.4rem;margin:.45rem 0 0;color:var(--ruana-error);font-size:.8rem;line-height:1.45}.field-error svg{flex-shrink:0;margin-top:.1rem}.field-hint{display:block;margin-top:.4rem;color:var(--ink-faint);font-size:.78rem;line-height:1.5}.form-input.has-error{border-color:var(--ruana-error);background-color:rgba(179,38,30,.03)}.form-input.has-error:focus{border-color:var(--ruana-error);box-shadow:0 0 0 3px rgba(179,38,30,.12)}.auth-link{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.9rem}.auth-link a{color:var(--ink);text-decoration:none;font-weight:500;border-bottom:1px solid var(--line-strong);transition:color var(--t-fast),border-color var(--t-fast)}.auth-link a:hover{color:var(--forest);border-bottom-color:var(--forest)}.resend-verification{background:rgba(180,132,42,.08);border-left:2px solid var(--ruana-warning);border-radius:var(--r-xs);padding:1rem;margin:1.25rem 0}.resend-verification p{color:var(--ruana-warning);margin-bottom:.75rem;font-size:.88rem}.resend-button{background:transparent;color:var(--ink);border:1px solid var(--ink);padding:.6rem 1rem;border-radius:var(--r-xs);font-size:.85rem;font-weight:500;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.resend-button:hover:not(:disabled){background:var(--ink);color:var(--paper)}.resend-button:disabled{opacity:.5;cursor:not-allowed}.verification-status{padding:.5rem 0}.verification-status h3{font-family:var(--font-display),Georgia,serif;margin:1rem 0 .5rem;font-size:1.5rem;font-weight:400;color:var(--ink)}.verification-status>p{color:var(--ink-soft);font-size:.95rem;line-height:1.6;margin-bottom:.5rem}.verification-icon.success{color:var(--ruana-success)}.verification-icon.error{color:var(--ruana-error)}.verification-hint{font-size:.82rem;color:var(--ink-faint);line-height:1.55}.verification-link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:auto;padding:.9rem 1.75rem;text-decoration:none;margin-top:1.25rem}.verification-resend{margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--line)}.verification-resend .submit-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.verification-status .loading-spinner{margin:0 0 1rem}@media (max-width:900px){.auth-container{grid-template-columns:1fr;grid-template-rows:clamp(9rem,26vw,14rem) auto}.auth-container:after{grid-row:1;border-left:0;border-bottom:1px solid var(--line)}.auth-card{grid-row:2;max-width:30rem;padding:clamp(2rem,7vw,3rem) clamp(1.25rem,5vw,2rem) 3rem}}@media (max-width:480px){.auth-container{min-height:calc(100vh - 64px);grid-template-rows:8rem auto}.auth-title{font-size:1.7rem}.form-group{margin-bottom:1rem}}@media (pointer:coarse){.form-input{min-height:46px}.password-toggle{min-width:44px;min-height:44px}.submit-button{min-height:48px}}@media (max-height:560px) and (orientation:landscape){.auth-container{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto;min-height:0}.auth-container:after{grid-row:auto;border-left:1px solid var(--line);border-bottom:0}.auth-card{grid-row:auto;padding:2rem 1.5rem}.auth-header{margin-bottom:1.25rem}}