.gradient-waves-container{position:relative;width:100%;height:100%;overflow:hidden}@font-face{font-family:Pretendard Variable;src:url(/login/PretendardVariable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}*{box-sizing:border-box}body{margin:0;min-height:100svh;display:flex;flex-direction:column;font-family:var(--font-family);font-size:var(--font-body);line-height:var(--line-body);color:var(--color-text);background:var(--color-bg)}#login-background{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 80%,var(--color-login-glow),transparent 75%)}.site-header,main{position:relative;z-index:1}.site-header{width:min(var(--content-width),calc(100% - 80px));min-height:88px;margin:0 auto;padding:18px 0;display:flex;align-items:center;justify-content:space-between}.site-brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-size:var(--font-brand);font-weight:var(--weight-brand);line-height:var(--line-heading);letter-spacing:-.04em}.brand-spacer{width:20px;flex-shrink:0}#login-brand{display:inline-block}.theme-toggle{width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:var(--color-login-surface);color:var(--color-secondary);cursor:pointer}.theme-toggle:hover{background:var(--color-hover)}.theme-toggle svg{width:20px;height:20px}.sun{display:none}:root[data-theme=dark] .moon{display:none}:root[data-theme=dark] .sun{display:block}main{width:min(var(--content-width),calc(100% - 80px));margin:0 auto;flex:1;display:grid;place-items:center;padding:48px 0 112px}.login-card{width:100%;max-width:360px;padding:32px;border:0;border-radius:var(--radius-panel);background:var(--color-surface);box-shadow:var(--shadow-login)}@supports (backdrop-filter: blur(16px)){.login-card{background:var(--color-login-surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}}.login-heading{margin-bottom:28px}h1{margin:0;font-size:var(--font-page);font-weight:var(--weight-page);line-height:var(--line-heading);letter-spacing:-.04em}form{margin:0}label{display:block;margin-bottom:8px;color:var(--color-secondary);font-size:var(--font-control);font-weight:var(--weight-medium)}input,.submit{width:100%;min-height:48px;border-radius:var(--radius-control);font:inherit;font-size:var(--font-control)}input{padding:12px 14px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}input:hover{border-color:var(--color-border-strong)}input:focus{border-color:var(--color-login-accent);outline:none;box-shadow:none}.submit{margin-top:16px;padding:12px 16px;border:0;background:var(--color-login-accent);color:var(--color-login-on-accent);font-weight:var(--weight-medium);cursor:pointer}.submit:hover{background:var(--color-login-accent-hover)}button:focus-visible{outline:2px solid var(--color-login-accent);outline-offset:4px}.error{margin:12px 0 0;color:var(--color-danger);font-size:var(--font-secondary);word-break:keep-all}@media(max-width:600px){.site-header,main{width:calc(100% - 40px)}.login-card{padding:28px 24px}main{padding:32px 0 96px}}@media(max-height:520px){main{padding:20px 0 32px}}.brand-fold-text{position:relative;display:inline-block;white-space:nowrap;color:inherit;font:inherit;letter-spacing:inherit}.brand-fold-text .fold-text-sizing{visibility:hidden;display:block;padding:0;border:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit}.brand-fold-text .fold-text-visual{position:absolute;inset:0;display:flex;align-items:center;padding:0;border:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit}.brand-fold-text .fold-text-segment{display:inline-block;padding:0;border:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;perspective:700px;vertical-align:baseline}.brand-fold-text .fold-text-piece{display:inline-block;position:relative;padding:0;border:0;margin:0;color:inherit;font:inherit;letter-spacing:inherit;transform-origin:50% 0%;transform-style:preserve-3d;backface-visibility:hidden}.fold-text-piece:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:var(--fold-crease, 0);background:linear-gradient(180deg,var(--color-text),transparent)}@media(prefers-reduced-motion:reduce){.brand-fold-text .fold-text-piece{transform:none!important;opacity:1!important}.fold-text-piece:after{display:none}}
