:root{--navy:#0B2545;--navy-700:#15355f;--ink:#0A0F1A;--coral:#D9482F;--coral-strong:#bf3c26;--coral-tint:#FFEAE3;--cyan:#13C2C2;--cyan-ink:#0a7d7d;--green:#15a36b;--cream:#FBF7F1;--s700:#334155;--s500:#64748B;--s200:#E7E9EF;--s100:#F2F4F8;--shadow-lg:0 16px 50px rgba(11,37,69,.18);}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:"Inter",system-ui,sans-serif;color:var(--ink);background:var(--cream);min-height:100dvh;display:grid;place-items:center;padding:24px;}
h1{font-family:"Plus Jakarta Sans";color:var(--navy);letter-spacing:-.02em;font-size:24px;margin-bottom:4px;}
.card{background:#fff;border:1px solid var(--s200);border-radius:20px;box-shadow:var(--shadow-lg);padding:30px;width:100%;max-width:420px;}
.logo{display:flex;align-items:center;gap:9px;margin-bottom:20px;}
.logo .mk{width:30px;height:30px;border-radius:9px;background:var(--navy);display:grid;place-items:center;color:#fff;font-size:13px;font-family:"Plus Jakarta Sans";}
.logo .wm{font-family:"Plus Jakarta Sans";font-weight:800;font-size:20px;color:var(--navy);}
.logo .wm i{color:var(--coral);font-style:normal;}
.sub{color:var(--s500);font-size:14px;margin-bottom:18px;}
label{font-family:"Plus Jakarta Sans";font-weight:700;font-size:12.5px;color:var(--navy);display:block;margin:13px 0 6px;}
input[type=text],input[type=email],input[type=password],input[type=tel]{width:100%;border:1.5px solid var(--s200);border-radius:11px;padding:12px 13px;font-family:"Inter";font-size:14.5px;outline:none;}
input:focus{border-color:var(--cyan);}
.btn{width:100%;display:inline-flex;align-items:center;justify-content:center;font-family:"Plus Jakarta Sans";font-weight:700;font-size:15px;border:none;border-radius:12px;padding:13px;margin-top:18px;cursor:pointer;background:var(--coral);color:#fff;min-height:46px;}
.btn:hover{background:var(--coral-strong);}
.err{background:var(--coral-tint);color:var(--coral-strong);border-radius:11px;padding:11px 14px;font-size:13.5px;font-weight:600;margin-bottom:6px;}
.alt{text-align:center;font-size:13.5px;color:var(--s500);margin-top:16px;}
.alt a{color:var(--cyan-ink);font-weight:600;text-decoration:none;}
.roles{display:flex;gap:9px;margin-top:6px;}
.roles label{flex:1;margin:0;border:1.5px solid var(--s200);border-radius:11px;padding:11px;text-align:center;cursor:pointer;font-size:13.5px;color:var(--s700);}
.roles input{display:none;}
.roles input:checked+span{color:var(--coral-strong);}
.roles label:has(input:checked){border-color:var(--coral);background:var(--coral-tint);}
.ll{display:none;}
body:has(#role-landlord:checked) .ll{display:block;}
