html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;background-color:var(--bg-base);color:var(--text-primary)}#app{min-height:100vh}.toast{position:fixed;bottom:1.5rem;right:1.5rem;max-width:min(92vw,420px);color:var(--text-primary);background:#fff7fa;border:1px solid transparent;padding:.875rem 1rem;border-radius:.875rem;box-shadow:0 4px 16px #0000001a;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:.75rem}.toast.success{border-color:#bde7d4;background:#ecfaf3}.toast.error{border-color:#f7c6cf;background:#fff1f3}.toast.info{border-color:#cfe4ff;background:#eff6ff}.toast.warning{border-color:#f6dfb9;background:#fff8ea}.toast-close{background:transparent;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.toast-close:hover{color:var(--text-primary)}.slide-up-enter-active,.slide-up-leave-active{transition:opacity .3s ease,transform .3s ease}.slide-up-enter-from,.slide-up-leave-to{opacity:0;transform:translateY(10px)}@media(max-width:768px){.toast{left:1rem;right:1rem;bottom:1rem;max-width:none}}.layout[data-v-3af2a956]{display:flex;min-height:100vh}.sidebar[data-v-3af2a956]{width:248px;background:#ffffffe0;border-right:1px solid var(--border-soft);box-shadow:8px 0 24px #e88fb014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:50;transition:transform var(--dur-slow) ease}.sidebar.mobile[data-v-3af2a956]{transform:translate(-100%)}.sidebar.open[data-v-3af2a956]{transform:translate(0)}.sidebar-header[data-v-3af2a956]{padding:1.5rem 1.25rem;border-bottom:1px solid var(--border-soft);display:flex;justify-content:space-between;align-items:center}.logo[data-v-3af2a956]{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.125rem;color:var(--text-primary)}.logo-icon[data-v-3af2a956]{color:var(--pink-500)}.logo-text[data-v-3af2a956]{letter-spacing:.02em}.close-btn[data-v-3af2a956]{border:1px solid transparent;background:transparent;color:var(--text-secondary);padding:.375rem;border-radius:.625rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-fast),background-color var(--dur-base),color var(--dur-base),border-color var(--dur-base)}.close-btn[data-v-3af2a956]:hover{background:var(--pink-50);border-color:var(--border-soft);color:var(--pink-500);transform:translateY(-1px)}.sidebar-nav[data-v-3af2a956]{flex:1;padding:1rem .75rem;overflow-y:auto}.nav-list[data-v-3af2a956]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem}.nav-item[data-v-3af2a956]{display:flex;align-items:center;gap:.75rem;padding:.7rem .85rem;border-radius:.75rem;border:1px solid transparent;color:var(--text-secondary);cursor:pointer;transition:transform var(--dur-fast),border-color var(--dur-base),background-color var(--dur-base),color var(--dur-base)}.nav-item[data-v-3af2a956]:hover{background:var(--pink-50);border-color:var(--border-soft);color:var(--text-primary);transform:translate(2px)}.nav-item.active[data-v-3af2a956]{background:linear-gradient(135deg,#fff1f6,#ffe8f1);border-color:var(--border-strong);color:var(--pink-500);font-weight:600}.active-indicator[data-v-3af2a956]{margin-left:auto}.badge[data-v-3af2a956]{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--pink-500);color:#fff;font-size:.7rem;font-weight:600;display:flex;align-items:center;justify-content:center}.sidebar-footer[data-v-3af2a956]{padding:1rem 1.25rem;border-top:1px solid var(--border-soft)}.user-section[data-v-3af2a956]{position:relative}.user-info[data-v-3af2a956]{display:flex;align-items:center;gap:.625rem;padding:.5rem;border-radius:.625rem;cursor:pointer;transition:background-color var(--dur-fast)}.user-info[data-v-3af2a956]:hover{background:var(--pink-50)}.user-avatar[data-v-3af2a956]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--pink-500) 0%,var(--rose-500) 100%);display:flex;align-items:center;justify-content:center;color:#fff}.user-details[data-v-3af2a956]{flex:1;overflow:hidden}.user-name[data-v-3af2a956]{margin:0;font-size:.875rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email[data-v-3af2a956]{margin:0;font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu[data-v-3af2a956]{position:absolute;bottom:100%;left:0;right:0;margin-bottom:.5rem;background:#fff;border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-soft);overflow:hidden}.logout-btn[data-v-3af2a956]{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem;background:none;border:none;color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:background-color var(--dur-fast),color var(--dur-fast)}.logout-btn[data-v-3af2a956]:hover{background:var(--pink-50);color:var(--pink-500)}.sidebar-overlay[data-v-3af2a956]{position:fixed;inset:0;background:#2a1f2647;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40}.main-content[data-v-3af2a956]{flex:1;margin-left:248px;display:flex;flex-direction:column}@media(max-width:768px){.main-content[data-v-3af2a956]{margin-left:0}}.top-bar[data-v-3af2a956]{display:none;height:60px;background:#ffffffe6;border-bottom:1px solid var(--border-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;padding:0 1rem;gap:.75rem}.menu-btn[data-v-3af2a956]{border:1px solid transparent;background:transparent;color:var(--text-secondary);padding:.375rem;border-radius:.625rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform var(--dur-fast),background-color var(--dur-base),color var(--dur-base),border-color var(--dur-base)}.menu-btn[data-v-3af2a956]:hover{background:var(--pink-50);border-color:var(--border-soft);color:var(--pink-500);transform:translateY(-1px)}.top-bar-title[data-v-3af2a956]{font-weight:600;font-size:1rem;color:var(--text-primary)}@media(max-width:768px){.top-bar[data-v-3af2a956]{display:flex}}.page-content[data-v-3af2a956]{flex:1;padding:1.75rem;max-width:1240px;margin:0 auto;width:100%}@media(max-width:768px){.page-content[data-v-3af2a956]{padding:1rem}}.fade-enter-active[data-v-3af2a956],.fade-leave-active[data-v-3af2a956]{transition:opacity var(--dur-slow) ease}.fade-enter-from[data-v-3af2a956],.fade-leave-to[data-v-3af2a956]{opacity:0}.slide-up-enter-active[data-v-3af2a956],.slide-up-leave-active[data-v-3af2a956]{transition:opacity var(--dur-slow) ease,transform var(--dur-slow) ease}.slide-up-enter-from[data-v-3af2a956],.slide-up-leave-to[data-v-3af2a956]{opacity:0;transform:translateY(10px)}:root{--bg-base: #fffafc;--bg-elevated: #ffffff;--bg-soft: #fff2f7;--pink-50: #fff1f6;--pink-100: #ffe4ef;--pink-300: #f7b3ca;--pink-500: #e88fb0;--rose-500: #d9759a;--text-primary: #2a1f26;--text-secondary: #6f5b67;--border-soft: #f3dbe6;--border-strong: #e7bfd1;--shadow-soft: 0 8px 24px rgba(216, 136, 170, .14);--shadow-hover: 0 14px 32px rgba(216, 136, 170, .2);--shadow-focus: 0 0 0 4px rgba(232, 143, 176, .22);--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--dur-fast: .12s;--dur-base: .18s;--dur-slow: .24s;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-base);color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 10% -10%,#ffe3ef 0%,transparent 38%),radial-gradient(circle at 95% 0%,#ffeaf4 0%,transparent 32%),var(--bg-base);color:var(--text-primary)}a{color:inherit;text-decoration:none}img,svg,video{display:block;max-width:100%}#app{min-height:100vh;width:100%}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}
