.gate,.gate *{box-sizing:border-box;margin:0}
body.gate-body{margin:0;font-family:Pretendard,sans-serif;background:#F2F4F6;color:#191F28;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.gate{width:100%;max-width:720px;text-align:center}
.gate-logo{width:96px;height:96px;border-radius:24px;display:block;margin:0 auto 20px}
.gate-title{font-size:28px;font-weight:700;letter-spacing:-.5px}
.gate-sub{font-size:15px;color:#8B95A1;margin-top:8px}
.gate-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:36px}
.gate-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:12px;background:#fff;border:1px solid #E5E8EB;border-radius:20px;padding:28px;cursor:pointer;text-decoration:none;color:inherit;transition:transform .1s,border-color .15s,box-shadow .15s}
.gate-card:hover{border-color:#3182F6;box-shadow:0 6px 20px rgba(49,130,246,.12)}
.gate-card:active{transform:scale(.94)}
.gate-ic{width:56px;height:56px;border-radius:16px;background:#E8F3FF;display:flex;align-items:center;justify-content:center}
.gate-ic svg{width:30px;height:30px;stroke:#3182F6;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gate-cname{font-size:22px;font-weight:700}
.gate-cdesc{font-size:15px;color:#4E5968;line-height:1.5}
.gate-go{margin-top:auto;font-size:14px;font-weight:600;color:#3182F6}
.gate-card:hover .gate-go{color:#1B64DA}
.gate-foot{margin-top:28px;font-size:13px;color:#8B95A1}
/* password */
.pw-box{max-width:400px;margin:0 auto;background:#fff;border:1px solid #E5E8EB;border-radius:20px;padding:32px 28px;text-align:center}
.pw-back{display:inline-block;font-size:14px;color:#4E5968;text-decoration:none;margin-bottom:16px}
.pw-input{width:100%;height:52px;margin-top:24px;border:1px solid #E5E8EB;border-radius:16px;background:#F2F4F6;font:inherit;font-size:18px;text-align:center;letter-spacing:6px;outline:none}
.pw-input:focus{border-color:#3182F6;background:#fff}
.pw-btn{width:100%;height:52px;margin-top:12px;border:0;border-radius:16px;background:#3182F6;color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:transform .1s}
.pw-btn:hover{background:#1B64DA}.pw-btn:active{transform:scale(.94)}
.pw-hint{font-size:13px;color:#8B95A1;margin-top:12px}
@media(max-width:560px){.gate-cards{grid-template-columns:1fr}.gate-title{font-size:24px}.gate-logo{width:80px;height:80px}.gate-card{padding:22px}}

/* error / lockout message: plain <p> rendered by nas_boot.py between input and button */
.pw-box>p:not([class]){margin:12px 0 0;padding:10px 14px;border-radius:10px;background:#FFEEEE;color:#F04452;font-size:14px;font-weight:600;line-height:1.45;text-align:center;word-break:keep-all}
