:root{color-scheme:dark;--ink:#f7fff6;--muted:#a9c0b2;--line:rgba(104,255,74,.32);--green:#78ff42;--panel:rgba(3,24,14,.92);--field:#071b11}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,"Segoe UI","Noto Sans KR",sans-serif}body{background:radial-gradient(circle at 18% 5%,#174b34 0,transparent 34%),radial-gradient(circle at 82% 90%,#092f35 0,transparent 30%),linear-gradient(145deg,#06131f,#03140c);color:var(--ink)}
.auth-page{min-height:100dvh;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom))}.auth-shell{width:min(100%,440px)}.back-link{display:inline-flex;margin:0 0 12px;color:#cce1d4;text-decoration:none;font-size:13px;font-weight:750}
.auth-card{position:relative;overflow:hidden;padding:26px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,rgba(9,38,23,.96),var(--panel));box-shadow:0 30px 90px #000a,inset 0 1px 0 rgba(255,255,255,.06)}.auth-card:before{content:"";position:absolute;width:190px;height:190px;right:-100px;top:-110px;border-radius:50%;background:#63ff3520;filter:blur(8px)}
.brand{position:relative;display:flex;gap:14px;align-items:center}.imo-logo{display:grid;place-items:center;flex:0 0 52px;height:52px;border-radius:17px;background:linear-gradient(135deg,var(--green),#2bd4c2);box-shadow:0 10px 30px #47ff4a33;color:#021208;font-weight:950;letter-spacing:-1px}.brand small,.eyebrow{color:var(--green);font-size:10px;font-weight:900;letter-spacing:.13em}.brand h1{font-size:25px;line-height:1.12;margin:4px 0 0;letter-spacing:-.04em}.lead{font-size:14px;line-height:1.58;color:var(--muted);margin:20px 0 16px}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:0 0 18px}.benefits span{padding:9px 5px;border:1px solid #245b38;border-radius:12px;background:#082317;color:#cce7d3;text-align:center;font-size:11px;font-weight:750}.benefits b{display:block;color:var(--green);font-size:15px;margin-bottom:2px}
.auth-form{display:grid;gap:11px}.field{display:grid;gap:7px;color:#d9ebe0;font-size:12px;font-weight:800}.field input{width:100%;height:54px;padding:0 16px;border:1px solid #326847;border-radius:15px;outline:0;background:var(--field);color:#fff;font-size:16px}.field input:focus{border-color:var(--green);box-shadow:0 0 0 3px #78ff421c}.field input::placeholder{color:#718a7a}
.primary,.secondary{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;border:1px solid transparent;border-radius:15px;text-decoration:none;font-weight:900;font-size:15px;cursor:pointer}.primary{background:linear-gradient(135deg,#57ee28,#9aff48);color:#031309;box-shadow:0 12px 30px #5bff2930}.secondary{margin-top:9px;border-color:#2b6240;background:#071d12;color:#dcece1}.primary:hover,.primary:focus-visible{filter:brightness(1.08);transform:translateY(-1px)}
.notice{margin:14px 0 0;padding:12px 14px;border:1px solid #357149;border-radius:14px;background:#0b2c1b;color:#d7eadc;font-size:12px;line-height:1.5}.notice.error{border-color:#ff6f7e;background:#421621;color:#ffe8eb}.notice.local{border-color:#c4a037;background:#332b0e;color:#fff3b4}.privacy{text-align:center;font-size:11px;line-height:1.45;color:#809f8b;margin:14px 0 0}.step{display:flex;gap:6px;margin:18px 0 14px}.step i{height:4px;flex:1;border-radius:9px;background:#254331}.step i.on{background:var(--green)}.email-value{padding:12px 14px;border-radius:13px;background:#0a2819;color:#dff2e4;font-size:13px}
@media(max-width:480px){.auth-page{align-items:end;padding:0}.auth-shell{width:100%}.back-link{margin:12px 18px}.auth-card{border-width:1px 0 0;border-radius:28px 28px 0 0;padding:23px 20px calc(22px + env(safe-area-inset-bottom));min-height:68dvh}.brand h1{font-size:23px}.benefits{gap:5px}.benefits span{font-size:10px}}@media(max-height:650px){.auth-card{padding-top:18px}.lead{margin:12px 0}.benefits{margin-bottom:12px}.field input,.primary,.secondary{min-height:47px;height:47px}}
