:root{--forest:#365d49;--deep:#203f32;--sage:#abc8b2;--mint:#e4efe5;--ivory:#f8f7f1;--ink:#263d33;--muted:#738075;--line:#d9e4d9;--danger:#a84340}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,"Segoe UI",system-ui,sans-serif}body{background:var(--ivory);color:var(--ink)}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(365px,1.07fr) minmax(360px,.93fr)}
.identity-panel{position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:clamp(44px,7vw,108px);background:radial-gradient(ellipse at 20% 12%,#d7ead9 0,transparent 55%),linear-gradient(145deg,#e5f0e2,#cadfcc);color:var(--deep)}
.identity-panel:after{content:"";position:absolute;width:460px;height:460px;border:1px solid #a9c8ae;border-radius:50%;right:-225px;bottom:-150px;box-shadow:0 0 0 72px #accbb21b,0 0 0 144px #accbb215;pointer-events:none}
.identity-content,.version{z-index:1;position:relative}.mirovale-mark{height:74px;width:74px;border-radius:20px;box-shadow:0 12px 35px #31533c18;margin-bottom:42px}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.19em;text-transform:uppercase;color:#547662;margin:0 0 16px}
h1{font-size:clamp(58px,7.3vw,108px);letter-spacing:-.075em;line-height:1;margin:0;font-weight:680}.accent{color:#9ab99f}
.identity-copy{font-size:clamp(17px,2vw,22px);line-height:1.65;max-width:540px;color:#536e5b;margin:30px 0}
.feature-pills{display:flex;gap:9px;flex-wrap:wrap}.feature-pills span{border:1px solid #aec9b4;border-radius:50px;padding:9px 14px;font-size:12px;letter-spacing:.02em;color:#45624e;background:#f8fff77a}
.version{position:absolute;bottom:36px;font-size:11px;color:#62816c;letter-spacing:.04em}
.form-panel{display:grid;place-items:center;padding:50px 36px}.login-card{width:min(430px,100%)}h2{font-size:clamp(30px,3.6vw,45px);letter-spacing:-.045em;line-height:1.16;margin:0;font-weight:650;color:var(--deep)}
.form-intro{font-size:15px;color:var(--muted);line-height:1.6;margin:17px 0 36px}
label{display:block;color:#506454;font-size:12px;font-weight:750;margin:20px 0 8px}
input{width:100%;height:52px;padding:0 15px;border:1px solid #cedcd0;background:#fff;border-radius:10px;font-size:15px;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}
input:focus{border-color:#658e72;box-shadow:0 0 0 4px #93b9a334}
button{margin-top:27px;height:54px;display:flex;justify-content:center;align-items:center;gap:10px;width:100%;border:0;background:var(--forest);color:white;border-radius:10px;font-weight:750;font-size:15px;cursor:pointer;transition:background .15s,transform .15s}
button:hover{background:var(--deep);transform:translateY(-1px)}button:disabled{opacity:.62;cursor:wait}.error-message{min-height:18px;color:var(--danger);font-size:12px;margin-top:12px}
.demo-note{font-size:12px;color:var(--muted);line-height:1.6;text-align:center;margin:24px 0 0}
@media(max-width:800px){.login-shell{grid-template-columns:1fr}.identity-panel{min-height:300px;padding:42px 30px}.mirovale-mark{height:52px;width:52px;margin-bottom:20px}h1{font-size:60px}.identity-copy{margin:13px 0 20px}.version{display:none}.form-panel{padding:56px 28px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}