.login-page{min-height:100dvh;color:var(--gyeol-ink);background:radial-gradient(circle at 12% 8%, #ff84c138, transparent 28rem), radial-gradient(circle at 88% 82%, #8db9ff38, transparent 26rem), var(--gyeol-bg)}.login-nav,.login-shell,.login-footer{width:min(1040px,100% - 40px);margin-inline:auto}.login-nav{align-items:center;padding:24px 0;display:flex}.login-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.login-brand span{color:#fff;background:var(--gyeol-gradient);width:38px;height:38px;box-shadow:var(--gyeol-shadow-glow);border-radius:14px;place-items:center;font-weight:850;display:grid}.login-brand strong{letter-spacing:.02em;font-size:15px}.login-shell{grid-template-columns:minmax(0,1fr) minmax(360px,440px);align-items:center;gap:80px;min-height:calc(100dvh - 180px);padding:30px 0 60px;display:grid}.login-intro>p{color:var(--gyeol-primary);letter-spacing:.17em;margin:0 0 18px;font-size:11px;font-weight:900}.login-intro h1{letter-spacing:-.06em;margin:0;font-size:clamp(44px,5vw,70px);line-height:1.08}.login-intro>span{color:var(--gyeol-muted);margin-top:24px;font-size:15px;display:block}.login-card{border:1px solid var(--gyeol-line);box-shadow:var(--gyeol-shadow);background:#fffffff0;border-radius:28px;padding:30px}.login-tabs{background:var(--gyeol-surface-soft);border-radius:14px;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:24px;padding:5px;display:grid}.login-tabs button{min-height:42px;color:var(--gyeol-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;font-size:14px;font-weight:750}.login-tabs button[aria-selected=true]{color:#fff;background:var(--gyeol-gradient);box-shadow:0 7px 20px -14px #5b7eb594}.login-card form>label{color:var(--gyeol-ink);gap:8px;margin-top:16px;font-size:13px;font-weight:750;display:grid}.login-card input[type=email],.login-card input[type=password],.login-card input[type=text]{border:1px solid var(--gyeol-control-line);width:100%;min-height:52px;color:var(--gyeol-ink);font:inherit;background:#fff;border-radius:13px;padding:0 14px}.login-consents{gap:10px;margin-top:20px;display:grid}.login-consents label{color:var(--gyeol-muted);cursor:pointer;grid-template-columns:20px 1fr;align-items:start;gap:8px;font-size:12px;line-height:1.5;display:grid}.login-consents input{width:18px;height:18px;accent-color:var(--gyeol-primary);margin:0}.login-consents a{color:var(--gyeol-primary-deep);font-weight:750}.login-submit{color:#fff;background:var(--gyeol-gradient);width:100%;min-height:54px;box-shadow:var(--gyeol-shadow-glow);font:inherit;cursor:pointer;border:0;border-radius:16px;margin-top:24px;font-weight:850}.login-submit:disabled{cursor:not-allowed;filter:grayscale(.3);opacity:.5}.login-error{color:#ad2448;margin:16px 0 0;font-size:13px;line-height:1.5}.login-security{color:#918b95;text-align:center;margin:14px 0 0;font-size:11px;line-height:1.5}.login-help{color:var(--gyeol-muted);margin:16px 0 0;font-size:12px;line-height:1.6}.login-success{color:#287258;margin:16px 0 0;font-size:13px;line-height:1.5}.login-recovery-links{justify-content:center;gap:18px;margin-top:16px;display:flex}.login-recovery-links a,.login-back{color:var(--gyeol-primary-deep);font-size:12px;font-weight:750;text-decoration:none}.login-back{text-align:center;margin-top:15px;display:block}.login-link-button{color:var(--gyeol-primary-deep);font:inherit;cursor:pointer;background:0 0;border:0;margin:14px auto 0;font-size:12px;font-weight:750;display:block}.login-footer{gap:18px;padding:0 0 26px;display:flex}.login-footer a{min-height:44px;color:var(--gyeol-muted);align-items:center;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}@media (max-width:760px){.login-nav{padding-top:18px}.login-shell{grid-template-columns:1fr;gap:30px;min-height:auto;padding:48px 0}.login-intro{text-align:center}.login-intro h1{font-size:43px}.login-card{border-radius:22px;padding:22px 18px}.login-footer{justify-content:center}}.login-card input[type=email],.login-card input[type=password],.login-card input[type=text]{color:var(--gyeol-ink);background:#fff}.login-card input::placeholder{color:#8e99b1}
