/* Halaman login & daftar: latar panorama Balnus + kartu kaca di kanan */
.auth{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:flex-end;padding:24px 4.2vw;
  background:#cfdcf0 url("../img/login-bg.webp") center/cover no-repeat;font-family:"Plus Jakarta Sans",Inter,Arial,sans-serif;color:#13235b}
.auth-card{width:min(440px,100%);display:flex;flex-direction:column;gap:12px;padding:30px 32px 26px;border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(243,247,253,.66));border:1px solid rgba(255,255,255,.85);
  -webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);
  box-shadow:0 30px 70px rgba(16,37,92,.28),inset 0 1px 0 rgba(255,255,255,.9)}
.auth-brand{display:flex;align-items:center;gap:10px;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#4a5a7d}
.auth-brand img{height:30px;background:#fff;border-radius:7px;padding:3px 5px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.auth h1{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:800;letter-spacing:-.02em;color:#13235b}
.auth-sub{margin:0;font-size:17px;font-weight:600;color:#13235b;line-height:1.4}
.auth-sub+.auth-msg,.auth-sub+.auth-in{margin-top:14px}
.auth-tag{margin:2px 0 6px;text-align:center;font-size:13px;letter-spacing:.16em;color:#55607a;line-height:1.55}
.auth-msg{border-radius:12px;padding:9px 12px;font-size:13px;line-height:1.4}
.auth-msg.error{background:rgba(214,58,58,.12);color:#a32222;border:1px solid rgba(214,58,58,.25)}
.auth-msg.ok{background:rgba(29,154,91,.12);color:#11683c;border:1px solid rgba(29,154,91,.25)}
.auth-in{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dfe5ef;border-radius:13px;padding:0 14px;height:50px;box-shadow:0 1px 2px rgba(16,37,92,.05);transition:border-color .15s,box-shadow .15s}
.auth-in:focus-within{border-color:#2f6bea;box-shadow:0 0 0 3px rgba(47,107,234,.18)}
.auth-in>svg{width:19px;height:19px;flex:none;fill:none;stroke:#3b4664;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-in input,.auth-in select{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:inherit;font-size:15px;font-weight:500;color:#13235b;height:100%}
.auth-in input::placeholder{color:#7a849a}
.auth-in select{cursor:pointer}
.auth-eye,.auth-rf{flex:none;border:0;background:transparent;padding:6px;border-radius:8px;cursor:pointer;display:grid;place-items:center}
.auth-eye svg,.auth-rf svg{width:19px;height:19px;fill:none;stroke:#3b4664;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.auth-eye.on svg{stroke:#2f6bea}.auth-eye:hover,.auth-rf:hover{background:#eef3fb}
.auth-cap{display:flex;align-items:center;gap:8px}
.auth-cap img{flex:none;width:150px;height:46px;border-radius:10px;border:1px solid #dfe5ef;cursor:pointer;background:#eef3fb}
.auth-cap .auth-rf{background:#fff;border:1px solid #dfe5ef;width:46px;height:46px;border-radius:12px}
.auth-cap .auth-in{flex:1;min-width:0;height:46px}
.auth-cap .auth-in input{text-transform:uppercase;letter-spacing:.2em;font-weight:700}
.auth-cap .auth-in input::placeholder{text-transform:none;letter-spacing:0;font-weight:500}
.auth-row{display:flex;justify-content:space-between;align-items:center;font-size:14px}
.auth-chk{display:flex;align-items:center;gap:8px;cursor:pointer;color:#2b3550}
.auth-chk input{width:18px;height:18px;accent-color:#2f6bea}
.auth-link{border:0;background:none;padding:0;font:inherit;color:#1f5fe0;cursor:pointer}
.auth-link:hover,.auth-foot a:hover{text-decoration:underline}
.auth-info{margin:0;font-size:12.5px;line-height:1.45;color:#3b4664;background:rgba(255,255,255,.7);border:1px dashed #b9c6de;border-radius:10px;padding:8px 11px}
.auth-btn{position:relative;margin-top:4px;height:52px;border:0;border-radius:13px;cursor:pointer;color:#fff;font-family:inherit;font-size:17px;font-weight:700;letter-spacing:.01em;
  background:linear-gradient(180deg,#2f74f0,#1e57d6);box-shadow:0 10px 22px rgba(30,87,214,.35),inset 0 1px 0 rgba(255,255,255,.25)}
.auth-btn svg{position:absolute;right:20px;top:50%;width:22px;height:22px;transform:translateY(-50%);fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.auth-btn:hover{filter:brightness(1.06)}.auth-btn:active{transform:translateY(1px)}
.auth-foot{margin:2px 0 0;text-align:center;font-size:14px;color:#3b4664}
.auth-foot a{color:#1f5fe0;font-weight:700;text-decoration:none}
.auth-card.daftar h1{font-size:36px}
@media (max-width:860px){.auth{justify-content:center;background-position:28% center}.auth-card{padding:24px 20px 22px}.auth h1{font-size:36px}}
@media (max-width:400px){.auth-cap{flex-wrap:wrap}.auth-cap .auth-in{flex-basis:100%}}
