:root{color-scheme:dark;--login-gold:#d8b45f;--login-gold2:#f2d68f;--login-cyan:#72d8ef;--login-line:rgba(118,157,190,.28)}
body{font-family:"Pretendard","Noto Sans KR","Malgun Gothic",system-ui,sans-serif;background-position:center 34%}
body::before{background:radial-gradient(circle at 50% 42%,rgba(27,70,102,.08),transparent 30%),linear-gradient(180deg,rgba(1,7,14,.38),rgba(1,5,11,.88))}
.page{padding:clamp(22px,5vw,52px) 18px}
.card{position:relative;width:440px;padding:38px 36px 36px;border-radius:4px;border:1px solid rgba(216,180,95,.34);background:linear-gradient(145deg,rgba(10,23,36,.92),rgba(5,13,24,.94));box-shadow:0 32px 100px rgba(0,0,0,.62),inset 0 1px rgba(255,255,255,.025);overflow:hidden}
.card::before{content:"";position:absolute;top:-58px;right:-58px;width:132px;height:132px;border:1px solid rgba(216,180,95,.12);transform:rotate(45deg);pointer-events:none}
.eyebrow{margin-bottom:12px;color:var(--login-gold2);font-family:Georgia,serif;font-size:12px;letter-spacing:.18em}
h1{font-family:Georgia,"Noto Serif KR","Malgun Gothic",serif;font-size:32px;letter-spacing:-.035em;margin-bottom:12px}
p{margin-bottom:25px;color:#aab8c9;font-size:14px;font-weight:600}
input{height:56px;margin-bottom:13px;border-radius:3px;border-color:var(--login-line);background:rgba(4,13,25,.88);transition:border-color .18s ease,box-shadow .18s ease}
input:hover{border-color:rgba(216,180,95,.42)}
input:focus{outline:0;border-color:var(--login-cyan);box-shadow:0 0 0 3px rgba(114,216,239,.12)}
button{height:56px;border-radius:3px;background:linear-gradient(135deg,#b88b39,#e0bf72);color:#0b0b0a;box-shadow:0 10px 24px rgba(183,137,57,.18);transition:filter .18s ease,transform .18s ease}
button:hover{filter:brightness(1.08);transform:translateY(-1px)}
button:focus-visible,.topbar a:focus-visible{outline:2px solid var(--login-cyan);outline-offset:3px}
.err{border:1px solid rgba(226,103,96,.35);border-radius:3px;background:rgba(112,30,32,.34);color:#ffd2cf}
.topbar{top:20px;right:22px}
.topbar a{border-radius:3px;border-color:rgba(216,180,95,.28);background:rgba(5,14,25,.8);color:#e7d8bb}
@media(max-width:520px){body{background-attachment:scroll}.page{align-items:flex-start;padding-top:max(15vh,92px)}.card{padding:32px 24px 28px}.eyebrow{font-size:11px}h1{font-size:28px}p{font-size:13px}.topbar{top:calc(12px + env(safe-area-inset-top));right:12px}}
