@import url(https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css);*{font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,sans-serif}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container,.register-container,.reset-password-container{align-items:center;background:var(--bg-primary);display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:var(--space-lg);position:relative}.login-container:before,.register-container:before,.reset-password-container:before{background:radial-gradient(ellipse 80vw 40vh at 20% 30%,var(--accent-primary),#0000),radial-gradient(ellipse 60vw 30vh at 80% 70%,var(--accent-secondary),#0000);content:"";height:100%;left:0;opacity:.1;position:absolute;top:0;width:100%;z-index:0}.auth-form{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-xl);box-shadow:var(--shadow-3d);max-width:400px;padding:var(--space-2xl);position:relative;width:100%;z-index:1}.auth-logo{display:block;filter:invert(1) drop-shadow(0 4px 12px rgba(0,212,255,.2));height:auto;margin-bottom:var(--space-lg);margin-left:auto;margin-right:auto;max-width:100%;object-fit:contain;transition:all var(--transition-smooth);width:160px}.auth-logo:hover{filter:invert(1) drop-shadow(0 6px 16px rgba(0,212,255,.3));transform:scale(1.02)}[data-theme=light] .auth-logo{filter:drop-shadow(0 4px 12px rgba(0,212,255,.2))}[data-theme=light] .auth-logo:hover{filter:drop-shadow(0 6px 16px rgba(0,212,255,.3))}.auth-title{-webkit-text-fill-color:#0000;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin-bottom:var(--space-xl);text-align:center}.auth-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-input);border:1px solid #ffffff1a;border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);font-size:1rem;margin-bottom:var(--space-md);padding:var(--space-md) var(--space-lg);transition:all var(--transition-smooth);width:100%}.auth-input::placeholder{color:var(--text-muted)}.auth-input:focus{border-color:var(--accent-primary);box-shadow:var(--glow-primary);outline:none;transform:translateY(-1px)}.auth-input.input-error{border-color:var(--accent-secondary);box-shadow:0 0 20px #ff6b6b4d}.auth-button{background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font-size:1rem;font-weight:600;margin-top:var(--space-md);overflow:hidden;padding:var(--space-md) var(--space-lg);position:relative;transition:all var(--transition-smooth);width:100%}.auth-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left var(--transition-smooth);width:100%}.auth-button:hover:before{left:100%}.auth-button:hover{box-shadow:var(--glow-primary);transform:translateY(-2px)}.auth-button:active{transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.auth-error{background:#ff6b6b1a;border:1px solid #ff6b6b33;border-radius:var(--radius-sm);color:var(--accent-secondary);white-space:pre-line}.auth-error,.auth-success{font-size:.9rem;margin-top:var(--space-sm);padding:var(--space-sm) var(--space-md);text-align:center}.auth-success{background:#51cf661a;border:1px solid #51cf6633;border-radius:var(--radius-sm);color:var(--accent-success)}.switch-auth{color:var(--text-secondary);font-size:.95rem;margin-top:var(--space-lg);text-align:center}.link-button{background:none;border:none;border-radius:var(--radius-sm);color:var(--accent-primary);cursor:pointer;font-weight:600;padding:var(--space-xs) var(--space-sm);text-decoration:none;transition:all var(--transition-smooth)}.link-button:hover{background:#00d4ff1a;color:var(--accent-primary);transform:translateY(-1px)}.policy-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid #ffffff1a;border-radius:var(--radius-md);margin-top:var(--space-lg);padding:var(--space-md)}.policy-box-header{align-items:center;display:flex;gap:var(--space-xs);justify-content:space-between;margin-bottom:var(--space-sm)}.policy-box-header label{color:var(--text-primary);flex:1 1;font-size:.85rem;font-weight:500;white-space:nowrap}.policy-toggle-button{background:none;border:none;border-radius:var(--radius-sm);color:var(--accent-primary);cursor:pointer;flex-shrink:0;font-size:.75rem;font-weight:500;padding:var(--space-xs) var(--space-sm);transition:all var(--transition-smooth);white-space:nowrap}.policy-toggle-button:hover{background:#00d4ff1a}.policy-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-input);border:1px solid #ffffff1a;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.9rem;margin-top:var(--space-sm);max-height:200px;overflow-y:auto;padding:var(--space-sm)}.policy-content ul{margin:var(--space-xs) 0;padding-left:var(--space-lg)}.policy-content li{line-height:1.5;margin-bottom:var(--space-xs)}@media (max-width:480px){.auth-form{margin:var(--space-sm);max-width:calc(100% - 32px);padding:var(--space-lg)}.auth-logo{width:120px}.auth-title{font-size:1.5rem}.policy-content{max-height:150px}.policy-box-header label{font-size:.8rem}.policy-toggle-button{font-size:.7rem;padding:4px 8px}}.App{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-areas:"header" "main";grid-template-columns:1fr;grid-template-rows:auto 1fr;margin:0 auto;max-width:1200px;min-height:100vh;padding:var(--space-lg)}.app-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;grid-area:header;justify-content:space-between;overflow:hidden;padding:var(--space-md) var(--space-lg);position:relative}.app-header:before{animation:shimmer 3s infinite;background:linear-gradient(90deg,#0000,#00d4ff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}.logo-brand{-webkit-text-fill-color:#0000;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;gap:var(--space-sm)}.logo-brand,.logo-icon{align-items:center;display:flex}.logo-icon{animation:float 3s ease-in-out infinite;background:var(--accent-gradient);border-radius:var(--radius-sm);box-shadow:var(--glow-primary);height:32px;justify-content:center;width:32px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.header-controls{align-items:center;display:flex;gap:var(--space-sm)}.theme-toggle{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;padding:var(--space-sm);transition:all var(--transition-smooth)}.theme-toggle:hover{background:var(--bg-glass-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.logout-button{background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font-weight:600;overflow:hidden;padding:var(--space-sm) var(--space-lg);position:relative;transition:all var(--transition-smooth)}.logout-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left var(--transition-smooth);width:100%}.logout-button:hover:before{left:100%}.logout-button:hover{box-shadow:var(--glow-primary);transform:translateY(-2px)}.admin-button{background:linear-gradient(135deg,#ff6b6b,#ff8e8e);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font-weight:600;overflow:hidden;padding:var(--space-sm) var(--space-lg);position:relative;transition:all var(--transition-smooth)}.admin-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left var(--transition-smooth);width:100%}.admin-button:hover:before{left:100%}.admin-button:hover{box-shadow:var(--glow-secondary);transform:translateY(-2px)}.main-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-direction:column;grid-area:main;height:calc(100vh - 160px);overflow:hidden;position:relative}.main-section:after{background:var(--accent-gradient);content:"";height:100%;opacity:.3;position:absolute;right:0;top:0;width:1px}.chat-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid #ffffff1a;display:flex;flex-shrink:0;justify-content:space-between;padding:var(--space-lg)}.chat-title{color:var(--text-primary);font-size:1.1rem;font-weight:600}.chat-status{align-items:center;color:var(--accent-success);display:flex;font-size:.9rem;gap:var(--space-xs)}.chat-status .theme-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:.8rem;height:28px;justify-content:center;margin-left:var(--space-sm);min-width:32px;padding:var(--space-xs);transition:all var(--transition-smooth)}.chat-status .theme-toggle:hover{background:var(--bg-glass-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.status-dot{animation:pulse 2s infinite;background:var(--accent-success);border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-window{display:flex;flex:1 1;flex-direction:column;gap:var(--space-md);overflow-y:auto;padding:var(--space-lg);padding-bottom:200px;position:relative;scroll-behavior:smooth}.message{align-items:flex-start;animation:messageSlideIn .4s var(--transition-bounce);animation-fill-mode:forwards;display:flex;gap:var(--space-sm);opacity:0}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.message.user{align-self:flex-end;flex-direction:row-reverse}.message.bot,.message.user{justify-content:flex-start}.message-avatar{align-items:center;background:var(--accent-gradient);border-radius:50%;box-shadow:var(--glow-primary);color:var(--text-inverse);display:flex;flex-shrink:0;font-size:.8rem;font-weight:600;height:32px;justify-content:center;width:32px}.message-content{align-items:flex-end;display:flex;gap:var(--space-xs);max-width:75%!important;position:relative}.message.bot .message-content{max-width:85%!important}.message.user .message-content{flex-direction:row-reverse}.message.bot .message-content{flex-direction:row}.message-bubble{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff1a;border-radius:var(--radius-md);overflow-wrap:break-word;padding:var(--space-md);position:relative;transition:all var(--transition-smooth);word-break:keep-all}.message.bot .message-bubble{background:var(--bg-card);color:var(--text-primary)}.message.user .message-bubble{background:var(--accent-gradient);box-shadow:var(--glow-primary);box-sizing:border-box;color:var(--text-inverse);max-width:100%!important;overflow:hidden!important;overflow-wrap:anywhere!important;white-space:pre-wrap!important;width:max-content!important;word-break:break-all!important}.message.user .message-bubble:has(.long-text),.message.user .message-bubble[data-long=true]{overflow-wrap:break-word!important;white-space:normal!important;word-break:keep-all!important}.message.user .message-content{max-width:75vw!important;overflow:visible!important}.message.user .message-text{max-width:100%!important;overflow:visible!important;overflow-wrap:break-word!important;white-space:normal!important;word-break:keep-all!important}.message.bot .message-text ol,.message.bot .message-text ul{list-style-position:inside;margin:0;padding-left:var(--space-md)}.message.bot .message-text li{line-height:1.4;margin:0;padding:0}.message.bot .message-text h1,.message.bot .message-text h2,.message.bot .message-text h3,.message.bot .message-text h4,.message.bot .message-text h5,.message.bot .message-text h6{font-weight:600;line-height:1.3;margin:var(--space-xs) 0;padding:0}.message.bot .message-text p{line-height:1.4;margin:0;padding:0}.message.bot .message-text *{margin-bottom:0;margin-top:0}.message.bot .message-text b,.message.bot .message-text strong{font-weight:600}.message.bot .message-text em,.message.bot .message-text i{font-style:italic}.message.user .message-text h1,.message.user .message-text h2,.message.user .message-text h3,.message.user .message-text h4,.message.user .message-text h5,.message.user .message-text h6,.message.user .message-text li,.message.user .message-text ol,.message.user .message-text p,.message.user .message-text ul{margin:0;padding-left:0}.copy-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-glass);border:1px solid #fff3;border-radius:50%;cursor:pointer;display:flex;font-size:.8rem;height:24px;justify-content:center;opacity:0;position:absolute;right:-8px;top:-8px;transition:all var(--transition-smooth);width:24px}.message:hover .copy-button{opacity:1}.copy-button:hover{background:var(--accent-primary);color:var(--text-inverse);transform:scale(1.1)}.thinking-dots{display:flex;gap:4px;padding:var(--space-md)}.thinking-dots span{animation:thinking 1.4s ease-in-out infinite;background:var(--accent-primary);border-radius:50%;height:8px;width:8px}.thinking-dots span:nth-child(2){animation-delay:.2s}.thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes thinking{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.input-form{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:var(--bg-primary);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:2px solid #00d4ff80;bottom:0;box-shadow:0 -8px 32px #0000004d,0 -2px 8px #00d4ff33,inset 0 1px 0 #ffffff1a;left:0;padding:var(--space-lg);position:absolute;right:0;z-index:100}.input-wrapper{align-items:flex-end;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-input);border:1px solid #ffffff1a;border-radius:var(--radius-lg);display:flex;gap:var(--space-sm);padding:var(--space-sm);transition:all var(--transition-smooth)}.input-wrapper:focus-within{border-color:var(--accent-primary);box-shadow:var(--glow-primary);transform:translateY(-1px)}.message-input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:1rem;line-height:1.5;max-height:120px;min-height:44px;outline:none;padding:var(--space-sm);resize:none}.message-input::placeholder{color:var(--text-muted)}.send-button{align-items:center;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;display:flex;font-size:1.2rem;height:44px;justify-content:center;overflow:hidden;padding:var(--space-sm);position:relative;width:44px}.send-button,.send-button:before{transition:all var(--transition-smooth)}.send-button:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:0}.send-button:hover:before{height:100px;width:100px}.send-button:hover{box-shadow:var(--glow-primary);transform:translateY(-2px) scale(1.05)}.send-button:active{transform:translateY(0) scale(.95)}.quick-actions{display:flex;gap:var(--space-sm);margin-bottom:var(--space-md)}.quick-action{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid #ffffff1a;border-radius:var(--radius-lg);color:var(--text-secondary);cursor:pointer;font-size:.85rem;padding:var(--space-xs) var(--space-sm);transition:all var(--transition-smooth)}.quick-action:hover{background:var(--accent-primary);box-shadow:var(--glow-primary);color:var(--text-inverse);transform:translateY(-2px)}@media (max-width:1024px){.App{gap:var(--space-md);max-width:100%;padding:var(--space-md)}.main-section{height:calc(100vh - 140px)}}@media (max-width:768px){.App{gap:var(--space-sm);height:100vh;overflow:hidden;padding:var(--space-sm)}.main-section{height:calc(100vh - 80px)}.chat-window{padding-bottom:180px}.message-content{max-width:85%}.message.bot .message-content{max-width:95%!important}.message.bot .message-bubble,.message.bot .message-text{max-width:100%!important;overflow-wrap:break-word!important;white-space:normal!important;word-break:break-word!important}.message.user .message-text{overflow-wrap:anywhere!important}.message.user .message-bubble,.message.user .message-text{white-space:pre-wrap!important;word-break:break-all!important}.message.user .message-bubble{max-width:85vw!important;overflow:hidden!important;overflow-wrap:anywhere!important}.message.user .message-content{max-width:85vw!important;overflow:visible!important}.admin-button,.logout-button{font-size:.8rem;font-weight:500;min-width:auto;padding:var(--space-xs) var(--space-sm);white-space:nowrap}.theme-toggle{font-size:.9rem;padding:var(--space-xs)}.chat-window:after{bottom:100px;height:40px;position:fixed}[data-theme=dark] .chat-window:after{background:linear-gradient(180deg,#0000 0,#0a0a0b66 20%,#0a0a0bcc 50%,#0a0a0bf2 80%,#0a0a0b)}[data-theme=light] .chat-window:after{background:linear-gradient(180deg,#0000 0,#fafafa66 20%,#fafafacc 50%,#fafafaf2 80%,#fafafa)}.input-form{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:var(--bg-primary);border-radius:0;border-top:2px solid #00d4ff80;bottom:0;box-shadow:0 -8px 32px #0000004d,0 -2px 8px #00d4ff33,inset 0 1px 0 #ffffff1a;left:0;margin:0;padding:var(--space-md);position:fixed;right:0;z-index:100}.header-controls{flex-shrink:0;gap:var(--space-xs)}.app-header{height:60px;padding:var(--space-sm) var(--space-md)}}@media (max-width:480px){.App{height:100vh;overflow:hidden;padding:var(--space-xs)}.main-section{height:calc(100vh - 70px)}.chat-window{padding-bottom:200px}.message-content{max-width:90%}.message.bot .message-content{max-width:95%!important}.message.bot .message-text{white-space:pre-wrap!important}.message.bot .message-bubble,.message.bot .message-text{max-width:100%!important;overflow-wrap:break-word!important;word-break:break-word!important}.message.bot .message-bubble{white-space:normal!important}.message.bot .message-text *{margin-bottom:0!important;margin-top:0!important}.message.bot .message-text p{line-height:1.4!important;margin:0!important;padding:0!important}.message.bot .message-text ol,.message.bot .message-text ul{margin:0!important;padding-left:1rem!important}.message.bot .message-text li{line-height:1.4!important;margin:0!important;padding:0!important}.message.user .message-text{overflow-wrap:anywhere!important}.message.user .message-bubble,.message.user .message-text{white-space:pre-wrap!important;word-break:break-all!important}.message.user .message-bubble{max-width:90vw!important;overflow:hidden!important;overflow-wrap:anywhere!important}.message.user .message-content{max-width:90vw!important;overflow:visible!important}.input-form{padding:var(--space-sm)}.input-wrapper{border-radius:var(--radius-md)}.header-controls{gap:var(--space-xs)}.admin-button,.logout-button{font-size:.75rem;font-weight:500;padding:6px 8px}.theme-toggle{font-size:.85rem;padding:6px}.logo-brand img{height:32px}[data-theme=dark] .chat-window:after{background:linear-gradient(180deg,#0000 0,#0a0a0b99 10%,#0a0a0be6 40%,#0a0a0b)}[data-theme=light] .chat-window:after{background:linear-gradient(180deg,#0000 0,#fafafa99 10%,#fafafae6 40%,#fafafa)}}.main-logo{filter:invert(1) drop-shadow(0 2px 8px rgba(0,212,255,.3));height:40px;object-fit:contain;transition:all var(--transition-smooth);width:auto}.main-logo:hover{filter:invert(1) drop-shadow(0 4px 12px rgba(0,212,255,.5));transform:scale(1.05)}[data-theme=light] .main-logo{filter:drop-shadow(0 2px 8px rgba(0,212,255,.3))}[data-theme=light] .main-logo:hover{filter:drop-shadow(0 4px 12px rgba(0,212,255,.5))}.message-text a{color:var(--accent-primary);position:relative;text-decoration:none;transition:all var(--transition-smooth)}.message-text a:hover{color:var(--accent-secondary);text-decoration:underline}.message-text a:visited{color:#00d4ffcc}[data-theme=dark] .message-text a{color:#00d4ff}[data-theme=dark] .message-text a:hover{color:#33e0ff}[data-theme=dark] .message-text a:visited{color:#00a8cc}[data-theme=light] .message-text a{color:#06c}[data-theme=light] .message-text a:hover{color:#0052a3}[data-theme=light] .message-text a:visited{color:#7a4a85}.message-bubble:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.message-text{font-size:.95rem;line-height:1.5;overflow-wrap:break-word;white-space:pre-wrap;word-break:keep-all}.message.bot .message-text p{margin:var(--space-sm) 0;padding-left:var(--space-xs)}.message.bot .message-text,.message.bot .message-text p{overflow-wrap:break-word!important;white-space:pre-wrap!important;word-break:break-word!important}.message.bot .message-text{max-width:100%!important}.message.bot .message-bubble{max-width:100%!important;overflow-wrap:break-word!important;white-space:normal!important;word-break:break-word!important}.message.bot .message-text *{margin-bottom:0!important;margin-top:0!important}.message.bot .message-text p{line-height:1.4!important;margin:0!important;padding:0!important}.message.bot .message-text ol,.message.bot .message-text ul{margin:0!important;padding-left:1rem!important}.message.bot .message-text li{line-height:1.4!important;margin:0!important;padding:0!important}.admin-container{background:var(--bg-primary);min-height:100vh;padding:var(--space-lg);position:relative}.admin-container:before{background:radial-gradient(ellipse 80vw 40vh at 20% 30%,var(--accent-primary),#0000),radial-gradient(ellipse 60vw 30vh at 80% 70%,var(--accent-secondary),#0000);content:"";height:100%;left:0;opacity:.1;position:absolute;top:0;width:100%;z-index:0}.admin-content{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-rows:auto 1fr auto;margin:0 auto;max-width:1200px;position:relative;z-index:1}.admin-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex-wrap:nowrap;justify-content:space-between;overflow:hidden;padding:var(--space-lg);position:relative}.admin-header:before{animation:shimmer 3s infinite;background:linear-gradient(90deg,#0000,#00d4ff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shimmer{0%{left:-100%}to{left:100%}}.admin-title{-webkit-text-fill-color:#0000;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;font-size:1.8rem;font-weight:700;margin:0}.admin-back-button,.admin-title{position:relative;white-space:nowrap;z-index:1}.admin-back-button{background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font-weight:600;margin-left:15px;overflow:hidden;padding:var(--space-sm) var(--space-lg);transition:all var(--transition-smooth)}.admin-back-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left var(--transition-smooth);width:100%}.admin-back-button:hover:before{left:100%}.admin-back-button:hover{box-shadow:var(--glow-primary);transform:translateY(-2px)}.admin-stats{grid-gap:var(--space-sm);display:grid;gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:var(--space-md)}.stat-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;padding:var(--space-md);position:relative;transition:all var(--transition-smooth)}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.stat-card:before{background:var(--accent-gradient);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.stat-number{color:var(--accent-primary);font-size:1.5rem;font-weight:700;margin-bottom:var(--space-xs)}.stat-label{color:var(--text-secondary);font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.admin-section{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border:none;border-radius:0;box-shadow:none;margin-bottom:var(--space-lg);padding:0;position:relative}.section-title{-webkit-text-fill-color:#0000;align-items:center;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;display:flex;font-size:1.3rem;font-weight:700;gap:var(--space-sm);margin-bottom:var(--space-lg);padding:0 var(--space-sm)}.section-title:before{background:var(--accent-gradient);border-radius:var(--radius-sm);content:"";height:24px;opacity:.8;width:24px}.admin-table-container{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid #ffffff1a;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:2rem;overflow-x:auto;overflow:hidden;width:100%}.admin-table{border-collapse:collapse;font-size:.9rem;width:100%}.admin-table th{font-size:.95rem;font-weight:500;letter-spacing:.5px;padding:12px 15px;text-align:center;vertical-align:middle}.admin-table th,[data-theme=dark] .admin-table th,[data-theme=light] .admin-table th{background:#09c;color:#fff}.admin-table td{border-bottom:1px solid #ffffff1a;color:var(--text-primary);padding:12px 15px;text-align:center!important;vertical-align:middle}.admin-table tbody tr td:nth-child(2){padding:12px 8px;text-align:center!important;white-space:normal;word-break:keep-all}.admin-section:last-child .admin-table td{text-align:center!important}.admin-section:last-child .admin-table tbody tr td:nth-child(2){display:table-cell;text-align:center!important;vertical-align:middle}.admin-table tbody tr{position:relative;transition:all var(--transition-smooth)}.admin-table tbody tr:nth-child(odd){background-color:#ffffff05}.admin-table tbody tr:hover{background-color:#ffffff0d;transition:background-color .2s ease}.status-active{background-color:#d4edda;color:#155724}.status-active,.status-inactive{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:500;padding:5px 10px}.status-inactive{background-color:#f8d7da;color:#721c24}.admin-action-cell{align-items:center;display:flex;gap:8px;justify-content:center}.admin-toggle-button{background:#4169e1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.admin-toggle-button:hover{background:#6495ed;transform:translateY(-1px)}.admin-toggle-button.inactive{background:#6c757d}.admin-toggle-button.inactive:hover{background:#5a6268}.admin-delete-button{background:linear-gradient(135deg,#ff5c5c,#ff8080);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 12px;transition:all .2s ease;white-space:nowrap}.admin-delete-button:hover{background:linear-gradient(135deg,#e55252,#e57373);box-shadow:0 2px 5px #ff5c5c4d;transform:translateY(-1px)}.date-filter{align-items:flex-end;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid #ffffff1a;border-radius:var(--radius-md);display:flex;flex-wrap:nowrap;gap:var(--space-sm);margin-bottom:var(--space-lg);padding:var(--space-sm)}.date-item{display:flex;flex-direction:column;gap:var(--space-xs)}.date-item label{color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.date-item input[type=date]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-input);border:1px solid #ffffff1a;border-radius:var(--radius-sm);color:var(--text-primary);font-size:.8rem;padding:var(--space-xs) var(--space-sm);transition:all var(--transition-smooth)}.date-item input[type=date]:focus{border-color:var(--accent-primary);box-shadow:var(--glow-primary);outline:none;transform:translateY(-1px)}.date-item input[type=text]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-input);border:1px solid #ffffff1a;border-radius:var(--radius-sm);color:var(--text-primary);font-size:.8rem;min-width:180px;padding:var(--space-xs) var(--space-sm);transition:all var(--transition-smooth);width:200px}.date-item input[type=text]:focus{border-color:var(--accent-primary);box-shadow:var(--glow-primary);outline:none;transform:translateY(-1px)}.date-item input[type=text]::placeholder{color:var(--text-secondary);opacity:.7}[data-theme=light] .date-item input[type=text]{background:#fffc;border:1px solid #0000001a;color:var(--text-primary)}[data-theme=light] .date-item input[type=text]:focus{border-color:var(--accent-primary);box-shadow:var(--glow-primary)}[data-theme=light] .date-item input[type=text]::placeholder{color:#00000080}.date-search-button{background:var(--accent-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;min-width:50px;overflow:hidden;padding:var(--space-xs) var(--space-sm);position:relative;transition:all var(--transition-smooth);white-space:nowrap}.date-search-button.active{box-shadow:0 0 0 2px #00d4ff59 inset,var(--glow-primary);filter:saturate(1.2) brightness(1.05)}.date-search-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left var(--transition-smooth);width:100%}.date-search-button:hover:before{left:100%}.date-search-button:hover{box-shadow:var(--glow-primary);transform:translateY(-2px)}[data-theme=dark] .date-search-button,[data-theme=light] .date-search-button{background:var(--accent-primary);color:#fff}.pagination{align-items:center;background:var(--bg-card);border:1px solid #ffffff1a;border-radius:var(--radius-md);display:flex;gap:var(--space-md);justify-content:center;margin-top:var(--space-lg);padding:var(--space-md)}.pagination,.pagination button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pagination button{background:var(--bg-glass);border:1px solid #ffffff1a;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;padding:var(--space-sm) var(--space-md);transition:all var(--transition-smooth)}.pagination button:hover:not(:disabled){background:var(--accent-primary);box-shadow:var(--glow-primary);color:var(--text-inverse);transform:translateY(-2px)}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-glass);border-radius:var(--radius-sm);color:var(--text-primary);font-weight:600;padding:var(--space-sm) var(--space-md)}.email-cell{font-family:Courier New,monospace;font-size:.85rem}.email-address{align-items:center;-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border:none;border-radius:0;display:flex;flex-direction:column;line-height:1.2;padding:0}.email-id{color:var(--accent-primary);font-weight:600}.email-domain{color:var(--text-secondary)}.email-address:after{content:"";white-space:pre-wrap}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border-radius:var(--radius-lg);display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:10}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #00d4ff33;border-radius:50%;border-top:4px solid var(--accent-primary);height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1024px){.admin-container{padding:var(--space-md)}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.date-filter{flex-wrap:wrap}}@media (max-width:768px){.admin-header{flex-direction:row;gap:var(--space-sm);justify-content:space-between;padding:var(--space-md);text-align:left}.admin-logo{height:32px}.admin-back-button{font-size:.85rem;margin-left:0;padding:var(--space-xs) var(--space-sm)}.admin-title{font-size:1.4rem}.admin-stats{gap:var(--space-sm);grid-template-columns:repeat(2,1fr)}.admin-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table{font-size:.85rem;width:100%}.admin-table td,.admin-table th{padding:10px 8px;white-space:nowrap}.admin-table td.email-cell{line-height:1.3;white-space:normal}.email-address{align-items:center;background:#0000;border:none;display:flex;flex-direction:column;font-size:.75rem;line-height:1.2;padding:0}.email-domain,.email-id{line-height:1.1;white-space:nowrap}.admin-action-cell{align-items:center;display:flex;flex-direction:column;gap:8px}.admin-delete-button,.admin-toggle-button{align-items:center;display:flex;font-size:.8rem;justify-content:center;min-height:36px;padding:8px;width:90%}.pagination{flex-wrap:wrap;gap:var(--space-sm);justify-content:center}.date-filter{flex-wrap:wrap;gap:var(--space-xs);padding:var(--space-sm)}.date-search-button{font-size:.7rem;min-width:45px;padding:var(--space-xs)}}@media (max-width:480px){.admin-container{padding:1rem}.admin-header{padding:var(--space-sm)}.admin-logo{height:28px}.admin-title{font-size:1.3rem}.section-title{font-size:1rem}.date-filter{align-items:stretch;flex-direction:column}.date-item{width:100%}.admin-table-container{overflow-x:visible;width:100%}.admin-table{font-size:.75rem;min-width:0;min-width:auto;width:100%}.admin-table td,.admin-table th{font-size:.75rem;padding:6px 4px;white-space:nowrap;word-break:keep-all}.admin-table td.email-cell{line-height:1.2;max-width:100px;white-space:normal}.email-address{align-items:center;background:#0000;border:none;display:flex;flex-direction:column;font-size:.65rem;line-height:1.1;padding:0}.email-domain,.email-id{line-height:1;white-space:nowrap}.status-active,.status-inactive{font-size:.7rem;padding:3px 5px}.admin-action-cell{flex-direction:column;gap:10px}.admin-delete-button,.admin-toggle-button{align-items:center;display:flex;font-size:.7rem;justify-content:center;min-height:36px;padding:6px 8px;width:100%}.admin-back-button{font-size:.8rem;padding:var(--space-xs) var(--space-sm)}.stat-card{padding:var(--space-sm)}.stat-number{font-size:1.2rem}.stat-label{font-size:.7rem}.date-search-button{margin-top:var(--space-xs);width:100%}}.admin-logo{filter:invert(1) drop-shadow(0 2px 8px rgba(0,212,255,.3));height:40px;object-fit:contain;transition:all var(--transition-smooth);width:auto}.admin-logo:hover{filter:invert(1) drop-shadow(0 4px 12px rgba(0,212,255,.5));transform:scale(1.05)}[data-theme=light] .admin-logo{filter:drop-shadow(0 2px 8px rgba(0,212,255,.3))}[data-theme=light] .admin-logo:hover{filter:drop-shadow(0 4px 12px rgba(0,212,255,.5))}:root{--bg-primary:linear-gradient(135deg,#0a0a0b,#1a1a2e 50%,#16213e);--bg-secondary:#ffffff0d;--bg-glass:#ffffff14;--bg-glass-hover:#ffffff1f;--bg-card:#ffffff0f;--bg-input:#ffffff0a;--accent-primary:#00d4ff;--accent-secondary:#ff6b6b;--accent-success:#51cf66;--accent-warning:#ffd43b;--accent-gradient:linear-gradient(135deg,#00d4ff,#09c);--accent-glow:0 0 20px #00d4ff4d;--text-primary:#fff;--text-secondary:#ffffffb3;--text-muted:#ffffff80;--text-inverse:#1a1a2e;--shadow-sm:0 2px 8px #0000001a;--shadow-md:0 4px 20px #00000026;--shadow-lg:0 8px 32px #0003;--shadow-3d:0 8px 32px #0000004d,0 2px 8px #0000001a;--glow-primary:0 0 30px #00d4ff33;--glow-secondary:0 0 20px #ff6b6b33;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--transition-fast:0.2s cubic-bezier(0.4,0,0.2,1);--transition-smooth:0.3s cubic-bezier(0.25,0.46,0.45,0.94);--transition-bounce:0.4s cubic-bezier(0.68,-0.55,0.265,1.55)}[data-theme=light]{--bg-primary:linear-gradient(135deg,#fafafa,#f0f0f0 50%,#e8e8e8);--bg-secondary:#00000005;--bg-glass:#fffc;--bg-glass-hover:#ffffffe6;--bg-card:#ffffffb3;--bg-input:#fff9;--text-primary:#1a1a2e;--text-secondary:#1a1a2eb3;--text-muted:#1a1a2e80;--text-inverse:#fff;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 4px 20px #00000014;--shadow-lg:0 8px 32px #0000001f;--shadow-3d:0 8px 32px #00000026,0 2px 8px #0000000d}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#0a0a0b,#1a1a2e 50%,#16213e);background:var(--bg-primary);color:#fff;color:var(--text-primary);font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#00d4ff;background:var(--accent-primary);border-radius:3px;opacity:.3}::-webkit-scrollbar-thumb:hover{opacity:.6}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #00d4ff;outline:2px solid var(--accent-primary);outline-offset:2px}.loading{opacity:.6;pointer-events:none}.loading:after{animation:loading 1.5s infinite;background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:0;position:absolute;top:0;width:100%}@keyframes loading{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.success{border-color:#51cf66!important;border-color:var(--accent-success)!important;box-shadow:0 0 20px #51cf664d!important}.error{border-color:#ff6b6b!important;border-color:var(--accent-secondary)!important;box-shadow:0 0 20px #ff6b6b4d!important}.aurora{animation:aurora 20s ease-in-out infinite alternate;background:radial-gradient(ellipse 80vw 40vh at 20% 30%,#00d4ff,#0000),radial-gradient(ellipse 60vw 30vh at 80% 70%,#ff6b6b,#0000);background:radial-gradient(ellipse 80vw 40vh at 20% 30%,var(--accent-primary),#0000),radial-gradient(ellipse 60vw 30vh at 80% 70%,var(--accent-secondary),#0000);height:100vh;left:0;opacity:.3;pointer-events:none;position:fixed;top:0;width:100vw;z-index:-1}@keyframes aurora{0%{filter:hue-rotate(0deg);transform:scale(1) rotate(0deg)}to{filter:hue-rotate(180deg);transform:scale(1.1) rotate(1deg)}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none}.visible{display:block}.flex{display:flex}.flex-center{align-items:center;display:flex;justify-content:center}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
/*# sourceMappingURL=main.a8048ae7.css.map*/