@import"https://fonts.googleapis.com/css2?family=Pretendard:wght@300;400;500;600;700;800&display=swap";.header[data-v-aca22745]{position:fixed;top:0;left:0;right:0;z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-top[data-v-aca22745]{background:#0f0f1a;border-bottom:1px solid rgba(255,255,255,.1);height:46px}@media(max-width:900px){.header-top[data-v-aca22745]{display:none}}.header-top-inner[data-v-aca22745]{max-width:1280px;margin:0 auto;padding:0 28px;height:100%;display:flex;align-items:center;justify-content:space-between}.top-left[data-v-aca22745]{display:flex;align-items:center;gap:12px}.site-slogan[data-v-aca22745]{font-size:14px;color:#ffffffa6;font-weight:500}.online-count[data-v-aca22745]{display:flex;align-items:center;gap:6px;font-size:13px;color:#ffffffb3}.online-dot[data-v-aca22745]{width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 6px #34d399;animation:pulse-aca22745 2s infinite}@keyframes pulse-aca22745{0%,to{opacity:1}50%{opacity:.4}}.top-links[data-v-aca22745]{display:flex;align-items:center;gap:12px}.top-link[data-v-aca22745]{font-size:13px;color:#fff;cursor:pointer;transition:color .2s;font-weight:600;opacity:.85}.top-link[data-v-aca22745]:hover{opacity:1}.top-divider[data-v-aca22745]{color:#ffffff59;font-size:13px}.theme-toggle[data-v-aca22745]{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:0;font-size:13px}.toggle-track[data-v-aca22745]{width:36px;height:18px;border-radius:9px;background:#fff3;position:relative;transition:background .3s}.toggle-track.dark[data-v-aca22745]{background:var(--accent)}.toggle-thumb[data-v-aca22745]{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .3s}.toggle-track.dark .toggle-thumb[data-v-aca22745]{transform:translate(18px)}.header-main[data-v-aca22745]{background:var(--header-bg);border-bottom:1px solid var(--border);height:64px;position:relative}.header-main-inner[data-v-aca22745]{max-width:1280px;margin:0 auto;padding:0 24px;height:100%;display:flex;align-items:center;gap:16px}.logo[data-v-aca22745]{display:flex;align-items:center;gap:10px;flex-shrink:0}.logo-icon[data-v-aca22745]{font-size:24px}.logo-title[data-v-aca22745]{font-size:20px;font-weight:800;color:var(--text-primary)}.main-nav[data-v-aca22745]{display:flex;align-items:center;gap:2px;flex-shrink:0}.nav-link[data-v-aca22745]{padding:8px 14px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;color:var(--text-secondary);transition:all .2s;white-space:nowrap}.nav-link[data-v-aca22745]:hover{color:var(--text-primary);background:var(--bg-hover)}.nav-link.active[data-v-aca22745]{color:var(--accent);background:var(--accent-dim)}.search-area[data-v-aca22745]{position:absolute;left:50%;transform:translate(-50%);width:360px}.search-inner[data-v-aca22745]{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1.5px solid var(--border-light);border-radius:24px;padding:0 14px;transition:border-color .2s,box-shadow .2s}.search-inner[data-v-aca22745]:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.search-ico[data-v-aca22745]{font-size:16px;flex-shrink:0;opacity:.7}.search-input[data-v-aca22745]{flex:1;background:none;border:none;outline:none;font-size:14px;color:var(--text-primary);padding:9px 0;font-family:inherit}.search-input[data-v-aca22745]::placeholder{color:var(--text-muted)}.search-clear[data-v-aca22745]{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;padding:2px;flex-shrink:0}.search-clear[data-v-aca22745]:hover{color:var(--text-primary)}.header-right[data-v-aca22745]{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto}.notif-wrap[data-v-aca22745]{position:relative}.icon-btn[data-v-aca22745]{position:relative;background:none;border:none;font-size:20px;cursor:pointer;padding:6px 8px;border-radius:var(--radius-sm);transition:background .15s,color .15s;line-height:1;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.icon-btn[data-v-aca22745]:hover{background:var(--bg-hover);color:var(--text-primary)}.notif-badge[data-v-aca22745]{position:absolute;top:2px;right:2px;min-width:16px;height:16px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px}.notif-dropdown[data-v-aca22745]{position:absolute;right:0;top:calc(100% + 8px);width:300px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:200;overflow:hidden}.notif-header[data-v-aca22745]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);font-size:14px;font-weight:700}.notif-read-all[data-v-aca22745]{font-size:12px;color:var(--accent);background:none;border:none;cursor:pointer}.notif-empty[data-v-aca22745]{padding:24px;text-align:center;color:var(--text-muted);font-size:13px}.notif-item[data-v-aca22745]{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border);transition:background .15s;cursor:pointer}.notif-item[data-v-aca22745]:last-child{border-bottom:none}.notif-item[data-v-aca22745]:hover{background:var(--bg-hover)}.notif-item.unread[data-v-aca22745]{background:var(--accent-dim)}.notif-icon[data-v-aca22745]{font-size:18px;flex-shrink:0}.notif-body[data-v-aca22745]{display:flex;flex-direction:column;gap:2px}.notif-text[data-v-aca22745]{font-size:13px;color:var(--text-primary);line-height:1.4}.notif-time[data-v-aca22745]{font-size:11px;color:var(--text-muted)}.dropdown-enter-active[data-v-aca22745],.dropdown-leave-active[data-v-aca22745]{transition:all .15s ease}.dropdown-enter-from[data-v-aca22745],.dropdown-leave-to[data-v-aca22745]{opacity:0;transform:translateY(-6px)}.header-user[data-v-aca22745]{display:flex;align-items:center;gap:10px}.avatar[data-v-aca22745]{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#a855f7);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0}.user-info[data-v-aca22745]{display:flex;flex-direction:column}.nickname[data-v-aca22745]{font-size:13px;font-weight:700;color:var(--text-primary);line-height:1.2}.grade-badge[data-v-aca22745]{font-size:10px;color:var(--accent);font-weight:600}.btn-login[data-v-aca22745]{padding:8px 16px;border-radius:var(--radius-sm);border:1px solid var(--border-light);color:var(--text-secondary);font-size:14px;font-weight:500;transition:all .2s;white-space:nowrap}.btn-login[data-v-aca22745]:hover{border-color:var(--accent);color:var(--accent)}.btn-register[data-v-aca22745]{padding:8px 16px;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-size:14px;font-weight:600;transition:all .2s;white-space:nowrap}.btn-register[data-v-aca22745]:hover{background:var(--accent-hover)}.hamburger[data-v-aca22745]{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;margin-left:auto}.hamburger span[data-v-aca22745]{display:block;width:22px;height:2px;background:var(--text-secondary);border-radius:2px}.mobile-search[data-v-aca22745]{padding:8px 8px 4px}.mobile-search-input[data-v-aca22745]{width:100%;background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 14px;font-size:14px;color:var(--text-primary);outline:none;font-family:inherit}.mobile-drawer[data-v-aca22745]{background:var(--header-bg);border-bottom:2px solid var(--border);padding:10px 16px;display:flex;flex-direction:column;gap:2px}.drawer-link[data-v-aca22745]{display:block;padding:12px 16px;border-radius:var(--radius-sm);font-size:15px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background .15s}.drawer-link[data-v-aca22745]:hover{background:var(--bg-hover);color:var(--text-primary)}.drawer-link.accent[data-v-aca22745]{color:var(--accent);font-weight:700}.drawer-link.danger[data-v-aca22745]{color:var(--danger)}.drawer-divider[data-v-aca22745]{height:1px;background:var(--border);margin:6px 0}.drawer-enter-active[data-v-aca22745],.drawer-leave-active[data-v-aca22745]{transition:all .2s ease}.drawer-enter-from[data-v-aca22745],.drawer-leave-to[data-v-aca22745]{opacity:0;transform:translateY(-8px)}.overlay[data-v-aca22745]{position:fixed;inset:0;z-index:99}@media(max-width:900px){.main-nav[data-v-aca22745],.header-right[data-v-aca22745],.search-area[data-v-aca22745]{display:none}.hamburger[data-v-aca22745]{display:flex}}.footer[data-v-b71b02c3]{background:var(--bg-secondary);border-top:1px solid var(--border)}.footer-inner[data-v-b71b02c3]{max-width:1280px;margin:0 auto;padding:48px 24px 32px}.footer-top[data-v-b71b02c3]{display:flex;justify-content:space-between;gap:48px;flex-wrap:wrap;margin-bottom:32px}.footer-brand[data-v-b71b02c3]{display:flex;flex-direction:column;gap:20px}.footer-logo[data-v-b71b02c3]{display:flex;align-items:center;gap:12px}.footer-logo-icon[data-v-b71b02c3]{font-size:36px}.footer-logo-title[data-v-b71b02c3]{font-size:20px;font-weight:800;color:var(--text-primary)}.footer-logo-sub[data-v-b71b02c3]{font-size:12px;color:var(--text-muted);margin-top:2px}.footer-contact[data-v-b71b02c3]{display:flex;flex-direction:column;gap:6px}.footer-contact span[data-v-b71b02c3]{font-size:13px;color:var(--text-secondary)}.footer-links[data-v-b71b02c3]{display:flex;gap:48px;flex-wrap:wrap}.footer-col[data-v-b71b02c3]{display:flex;flex-direction:column;gap:10px;min-width:100px}.footer-col h4[data-v-b71b02c3]{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.footer-col a[data-v-b71b02c3]{font-size:14px;color:var(--text-secondary);transition:color .2s}.footer-col a[data-v-b71b02c3]:hover{color:var(--accent)}.footer-divider[data-v-b71b02c3]{height:1px;background:var(--border);margin-bottom:24px}.footer-bottom[data-v-b71b02c3]{display:flex;flex-direction:column;gap:10px}.footer-biz[data-v-b71b02c3]{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.footer-biz span[data-v-b71b02c3],.footer-copy[data-v-b71b02c3]{font-size:12px;color:var(--text-muted)}.mobile-tabbar[data-v-b71b02c3]{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--header-bg);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);height:64px;z-index:100;grid-template-columns:repeat(4,1fr)}.tab-item[data-v-b71b02c3]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--text-muted);transition:color .2s;font-size:12px}.tab-item.active[data-v-b71b02c3]{color:var(--accent)}.tab-icon[data-v-b71b02c3]{font-size:20px}.tab-label[data-v-b71b02c3]{font-size:11px;font-weight:600}@media(max-width:768px){.mobile-tabbar[data-v-b71b02c3]{display:grid}.footer-inner[data-v-b71b02c3]{padding-bottom:80px}}.floating-menu[data-v-2f9de08c]{position:fixed;right:20px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;z-index:90;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:8px 6px;box-shadow:var(--shadow)}.float-item[data-v-2f9de08c]{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:all .2s;color:var(--text-muted);text-decoration:none;min-width:56px}.float-item[data-v-2f9de08c]:hover{background:var(--bg-hover);color:var(--text-primary)}.float-item.active[data-v-2f9de08c]{background:var(--accent-dim);color:var(--accent)}.float-icon[data-v-2f9de08c]{font-size:18px}.float-label[data-v-2f9de08c]{font-size:10px;font-weight:600;white-space:nowrap}.float-divider[data-v-2f9de08c]{height:1px;background:var(--border);margin:4px 6px}@media(max-width:1100px){.floating-menu[data-v-2f9de08c]{display:none}}.modal-overlay[data-v-a602b41f]{position:fixed;inset:0;z-index:9999;background:#0000008c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px}.modal-box[data-v-a602b41f]{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:36px 28px 28px;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:0 24px 60px #0006}.modal-icon-wrap[data-v-a602b41f]{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.modal-icon-wrap.alert[data-v-a602b41f]{background:#7c6aff26;color:var(--accent)}.modal-icon-wrap.confirm[data-v-a602b41f]{background:#fbbf2426;color:#f59e0b}.modal-title[data-v-a602b41f]{font-size:18px;font-weight:800;color:var(--text-primary);text-align:center}.modal-message[data-v-a602b41f]{font-size:14px;color:var(--text-secondary);text-align:center;line-height:1.7;white-space:pre-line}.modal-actions[data-v-a602b41f]{display:flex;gap:10px;width:100%;margin-top:8px}.btn-modal[data-v-a602b41f]{flex:1;padding:12px;border-radius:var(--radius-sm);font-size:15px;font-weight:700;cursor:pointer;transition:all .2s;border:none}.btn-cancel[data-v-a602b41f]{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary)}.btn-cancel[data-v-a602b41f]:hover{background:var(--bg-hover)}.btn-confirm.alert[data-v-a602b41f]{background:var(--accent);color:#fff}.btn-confirm.alert[data-v-a602b41f]:hover{background:var(--accent-hover)}.btn-confirm.confirm[data-v-a602b41f]{background:#f59e0b;color:#fff}.btn-confirm.confirm[data-v-a602b41f]:hover{background:#d97706}.modal-fade-enter-active[data-v-a602b41f],.modal-fade-leave-active[data-v-a602b41f]{transition:opacity .2s ease}.modal-fade-enter-from[data-v-a602b41f],.modal-fade-leave-to[data-v-a602b41f]{opacity:0}.modal-slide-enter-active[data-v-a602b41f],.modal-slide-leave-active[data-v-a602b41f]{transition:all .25s ease}.modal-slide-enter-from[data-v-a602b41f],.modal-slide-leave-to[data-v-a602b41f]{opacity:0;transform:translateY(20px) scale(.96)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--bg-primary: #0d0d14;--bg-secondary: #13131f;--bg-card: #1a1a2e;--bg-hover: #1f1f35;--header-bg: rgba(13,13,20,.95);--top-bar-bg: #0a0a10;--border: #2a2a45;--border-light: #353560;--accent: #7c6aff;--accent-hover: #9d8fff;--accent-dim: rgba(124,106,255,.15);--text-primary: #f0f0ff;--text-secondary: #9090b8;--text-muted: #5a5a80;--success: #34d399;--danger: #f87171;--warning: #fbbf24;--shadow: 0 4px 24px rgba(0,0,0,.4);--radius: 12px;--radius-sm: 8px}[data-theme=light]{--bg-primary: #f5f5f8;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-hover: #f0f0f5;--header-bg: rgba(255,255,255,.97);--top-bar-bg: #1e1e2e;--border: #e0e0ea;--border-light: #ccccdd;--accent: #6355e8;--accent-hover: #7c6aff;--accent-dim: rgba(99,85,232,.1);--text-primary: #1a1a2e;--text-secondary: #555570;--text-muted: #9090a8;--success: #10b981;--danger: #ef4444;--warning: #f59e0b;--shadow: 0 4px 24px rgba(0,0,0,.08)}html{font-size:16px;scroll-behavior:smooth}body{font-family:Pretendard,-apple-system,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;transition:background .3s,color .3s}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;padding-top:110px}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}@media(max-width:768px){.main-content{padding-top:64px;padding-bottom:64px}}
