:root{--color-ink: #0b0f14;--color-bg: #ffffff;--color-primary: #2e7d32;--color-primary-soft: #66bb6a;--color-danger: #c62828;--color-gray-100: #eceff1;--color-gray-300: #cdd7dc;--color-gray-500: #8b9ca5;--color-text-soft: #42535c;--font-body: "IBM Plex Sans", "Segoe UI", sans-serif;--font-head: "Space Grotesk", "IBM Plex Sans", "Segoe UI", sans-serif;--target-min: 44px;--radius-md: 14px;--radius-lg: 18px;--shadow-soft: 0 14px 40px rgba(11, 15, 20, .09)}*{box-sizing:border-box}body{margin:0;min-height:100vh;overflow-x:hidden;font-family:var(--font-body);color:var(--color-ink);background:radial-gradient(1000px 400px at -5% -15%,rgba(102,187,106,.22),transparent 55%),radial-gradient(900px 300px at 105% -10%,rgba(46,125,50,.18),transparent 55%),linear-gradient(180deg,#f4f8f4,#fff 45%)}a{color:inherit}.auth-shell{min-height:100vh;min-width:0;width:min(1160px,calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:1.4rem;padding:1.4rem 0}.info-panel,.form-panel{min-width:0;border:1px solid rgba(176,190,197,.68);border-radius:var(--radius-lg);background:#fffffff2;box-shadow:var(--shadow-soft)}.info-panel{padding:clamp(1.4rem,3vw,2.2rem);display:flex;flex-direction:column}.brand{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;width:fit-content}.brand-logo-frame{width:86px;height:86px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.brand-logo{width:100%;height:100%;object-fit:contain;transform:scale(1.7);transform-origin:center}.brand-text{font-family:var(--font-head);font-size:1.5rem;font-weight:800}.eyebrow{margin:1rem 0 .5rem;font-size:.79rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#2b5f2f}.info-panel h1{margin:0;max-width:16ch;font-family:var(--font-head);font-size:clamp(1.9rem,4.2vw,2.7rem);line-height:1.08}.intro{margin:.9rem 0 0;max-width:54ch;color:var(--color-text-soft);line-height:1.65}.feature-list{margin:1.3rem 0 0;padding:0;list-style:none;display:grid;gap:.65rem}.feature-list li{padding:.85rem .9rem;border-radius:var(--radius-md);border:1px solid rgba(176,190,197,.75);background:#fff;font-weight:600;color:var(--color-text-soft)}.feature-list li:before{content:"";display:inline-block;width:10px;height:10px;margin-right:.6rem;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 3px #2e7d3221}.form-panel{display:grid;place-items:center;padding:1rem}.auth-card{width:min(470px,100%);border:1px solid rgba(176,190,197,.75);border-radius:var(--radius-lg);background:linear-gradient(180deg,#fff,#f7fbf7);padding:clamp(1.1rem,3.1vw,1.8rem)}.auth-card header h2{margin:0;font-family:var(--font-head);font-size:clamp(1.5rem,3vw,1.95rem)}.auth-card header p{margin:.45rem 0 1.2rem;color:var(--color-text-soft)}.onboarding-steps{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.95rem}.onboarding-step{display:inline-flex;align-items:center;padding:.25rem .58rem;border-radius:999px;border:1px solid rgba(176,190,197,.75);background:#f7fbf8;color:#4f626a;font-size:.74rem;font-weight:700;letter-spacing:.02em}.form-section-title{margin:.25rem 0 .46rem;font-size:.79rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2b5f2f}.split-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.field{display:grid;gap:.36rem;margin-bottom:.8rem}.hidden{display:none!important}.register-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:0 0 .8rem;padding:.72rem .78rem .82rem;border:1px solid rgba(176,190,197,.8);border-radius:12px;background:#fff}.register-mode legend{grid-column:1 / -1;padding:0 .2rem;font-size:.82rem;font-weight:700;color:var(--color-text-soft)}.mode-option{position:relative;display:flex;align-items:center;gap:.52rem;min-height:42px;border:1px solid rgba(176,190,197,.82);border-radius:10px;padding:.45rem .58rem;background:#f9fbfa;font-size:.88rem;color:#41565f;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.mode-option input{margin:0;position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none}.mode-option.active{border-color:#2e7d329e;background:#e8f5e9b8;color:#1f5f24;box-shadow:0 0 0 2px #2e7d321f}.mode-option span{line-height:1.25}.field-hint{margin:0 0 .8rem;padding:.65rem .72rem;border:1px dashed rgba(176,190,197,.85);border-radius:10px;background:#f8fbf8;color:var(--color-text-soft);font-size:.84rem;line-height:1.35}.field-hint.compact{margin-top:-.15rem;padding:.54rem .64rem;font-size:.8rem}.field span{font-size:.86rem;font-weight:700;color:var(--color-text-soft)}.field input,.field select{width:100%;min-height:var(--target-min);border:1px solid var(--color-gray-300);border-radius:10px;background:#fff;color:var(--color-ink);font:inherit;font-size:.95rem;padding:.68rem .74rem}.field input:focus-visible,.field select:focus-visible{outline:2px solid rgba(46,125,50,.2);border-color:var(--color-primary)}.password-wrap{position:relative}.password-wrap input{padding-right:3rem}.toggle-password{position:absolute;right:.52rem;top:50%;transform:translateY(-50%);width:32px;min-width:32px;min-height:30px;border:0;border-radius:7px;background:transparent;color:#6f8089;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;opacity:.86;transition:background .18s ease,color .18s ease,opacity .18s ease}.toggle-password svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.toggle-password:hover{opacity:1;color:#37535f;background:#2e7d3214}.toggle-password:focus-visible{opacity:1;color:#1f5f24;background:#2e7d321f;outline:2px solid rgba(46,125,50,.2);outline-offset:1px}.checkbox-wrap{display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem;color:var(--color-text-soft);margin:.2rem 0 .95rem}.btn-primary{width:100%;min-height:var(--target-min);border:0;border-radius:10px;padding:.72rem 1rem;color:#fff;background:var(--color-primary);box-shadow:0 8px 20px #2e7d323d;font:inherit;font-size:.95rem;font-weight:700;cursor:pointer}.btn-primary:hover,.btn-primary:focus-visible{background:#27682a}.btn-primary[disabled]{opacity:.7;cursor:not-allowed}.btn-secondary{width:100%;min-height:var(--target-min);border:1px solid rgba(176,190,197,.88);border-radius:10px;padding:.72rem 1rem;background:#fff;color:var(--color-ink);font:inherit;font-size:.95rem;font-weight:700;cursor:pointer;text-decoration:none;text-align:center}.btn-secondary:hover,.btn-secondary:focus-visible{border-color:#2e7d3273;background:#66bb6a14}.status{margin:.75rem 0 0;min-height:1.2em;font-size:.9rem;color:var(--color-text-soft)}.status.error{color:var(--color-danger)}.status.success{color:var(--color-primary)}.auth-card-success{display:grid;gap:1rem}.success-kicker{margin:0 0 .35rem;font-size:.79rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2b5f2f}.success-email-box{display:grid;gap:.3rem;padding:.95rem 1rem;border:1px solid rgba(46,125,50,.2);border-radius:12px;background:linear-gradient(180deg,#e8f5e9eb,#fffffffa)}.success-email-box span{font-size:.8rem;font-weight:700;color:var(--color-text-soft)}.success-email-box strong{font-size:1rem;line-height:1.35;overflow-wrap:anywhere}.success-checklist{margin:0;padding-left:1.1rem;display:grid;gap:.55rem;color:var(--color-text-soft);line-height:1.45}.success-actions{display:grid;gap:.7rem}.success-link{display:inline-flex;align-items:center;justify-content:center}input,select,textarea,.btn-primary,.btn-secondary,.toggle-password,.link-muted{max-width:100%}.card-footer{margin:.9rem 0 0;font-size:.9rem;color:var(--color-text-soft)}.card-footer a{color:#2f6f34;text-decoration:none;font-weight:700}.card-footer a:hover,.card-footer a:focus-visible{text-decoration:underline}@media (max-width: 980px){.auth-shell{grid-template-columns:1fr;gap:.8rem}.form-panel{order:-1}}@media (max-width: 720px){.feature-list{display:none}.auth-shell{width:min(1160px,calc(100% - 1rem));padding:.55rem 0}.brand-logo-frame{width:70px;height:70px}.brand-text{font-size:1.32rem}.info-panel,.form-panel{padding:.86rem}.auth-card{width:100%}.split-row{grid-template-columns:1fr;gap:0}.register-mode{grid-template-columns:1fr}}@media (max-width: 480px){.form-panel{padding:.82rem}.auth-shell{width:min(1160px,calc(100% - .75rem))}.info-panel,.form-panel,.auth-card{border-radius:14px}.info-panel{padding:.92rem}.info-panel h1{max-width:none;font-size:clamp(1.45rem,8.2vw,1.9rem)}.intro{margin-top:.7rem}.feature-list{margin-top:1rem;gap:.45rem}.feature-list li{padding:.72rem .75rem;font-size:.9rem}.auth-card{padding:1rem .9rem}.toggle-password{width:30px;min-width:30px;min-height:28px}.toggle-password svg{width:15px;height:15px}}
