.toast-container[data-v-ee3a4eb7]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;max-width:400px}.toast[data-v-ee3a4eb7]{display:flex;align-items:flex-start;padding:16px;border-radius:var(--radius-md, 8px);background-color:var(--color-bg-secondary, #2a2a3e);box-shadow:0 4px 20px #0000004d;color:var(--color-text-primary, #fff);min-width:300px}.toast-icon[data-v-ee3a4eb7]{flex-shrink:0;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:12px;font-size:14px;font-weight:700}.toast-success .toast-icon[data-v-ee3a4eb7]{background-color:#10b981;color:#fff}.toast-error .toast-icon[data-v-ee3a4eb7]{background-color:#ef4444;color:#fff}.toast-warning .toast-icon[data-v-ee3a4eb7]{background-color:#f59e0b;color:#fff}.toast-info .toast-icon[data-v-ee3a4eb7]{background-color:var(--color-accent-primary, #a688fa);color:#fff}.toast-content[data-v-ee3a4eb7]{flex-grow:1}.toast-title[data-v-ee3a4eb7]{font-weight:600;margin-bottom:4px;font-size:.95rem}.toast-message[data-v-ee3a4eb7]{font-size:.9rem;color:var(--color-text-secondary, #a0a0b0);line-height:1.4}.toast-close[data-v-ee3a4eb7]{flex-shrink:0;background:none;border:none;color:var(--color-text-secondary, #a0a0b0);font-size:20px;cursor:pointer;padding:0;margin-left:12px;line-height:1;transition:color .2s}.toast-close[data-v-ee3a4eb7]:hover{color:var(--color-text-primary, #fff)}.toast-enter-active[data-v-ee3a4eb7]{animation:slideIn-ee3a4eb7 .3s ease-out}.toast-leave-active[data-v-ee3a4eb7]{animation:slideOut-ee3a4eb7 .3s ease-in}@keyframes slideIn-ee3a4eb7{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut-ee3a4eb7{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@media(max-width:480px){.toast-container[data-v-ee3a4eb7]{left:10px;right:10px;max-width:none}.toast[data-v-ee3a4eb7]{min-width:auto}}#app{text-align:center;color:var(--color-text-primary);padding-top:60px}footer{color:var(--color-text-secondary)}.page-footer{margin-top:50px;margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));display:flex;justify-content:center}.page-footer.no-sidebar{margin-left:0;width:100%}.page-footer .footer-inner{padding:16px 40px;width:100%;max-width:1200px;display:flex;justify-content:center;align-items:center;gap:12px;text-align:center;color:var(--color-text-secondary)}.login-container[data-v-6e59d3bb]{max-width:420px;margin:80px auto;padding:40px;box-sizing:border-box}.login-logo[data-v-6e59d3bb]{display:block;height:64px;max-width:70%;margin:0 auto 32px;object-fit:contain}.form-group[data-v-6e59d3bb]{margin-bottom:24px}label[data-v-6e59d3bb]{display:block;margin-bottom:8px;color:var(--color-text-secondary);font-size:.9rem;font-weight:500}button[data-v-6e59d3bb]{width:100%;margin-top:16px;padding:14px}button[data-v-6e59d3bb]:disabled{opacity:.6;cursor:not-allowed}.btn-link[data-v-6e59d3bb]{background:none;border:none;color:var(--color-text-secondary);font-size:.9rem;cursor:pointer;text-decoration:underline;padding:8px 0;margin-top:4px}.btn-link[data-v-6e59d3bb]:hover{color:var(--color-text-primary)}.totp-hint[data-v-6e59d3bb]{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:24px;line-height:1.5}.signup-link[data-v-6e59d3bb]{text-align:center;margin-top:24px;color:var(--color-text-secondary);font-size:.9rem}.signup-link a[data-v-6e59d3bb]{color:var(--color-accent-primary);text-decoration:none;font-weight:500}.signup-link a[data-v-6e59d3bb]:hover{text-decoration:underline}.reset-link[data-v-6e59d3bb]{text-align:center;margin-top:8px;color:var(--color-text-secondary);font-size:.9rem}.reset-link a[data-v-6e59d3bb]{color:var(--color-accent-primary);text-decoration:none;font-weight:500}.reset-link a[data-v-6e59d3bb]:hover{text-decoration:underline}@font-face{font-family:Poppins;src:url(/assets/Poppins-Regular-B2YTLo9r.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/assets/Poppins-Medium-1iPSBYoM.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/assets/Poppins-SemiBold-DVCj-rhG.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/assets/Poppins-Bold-CdT-0Mts.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/assets/Inter-Regular-VF2RPR_K.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}.text-deleted{color:var(--color-text-muted);font-style:italic}.post-actions button,.comment-actions button{padding:6px 14px!important;font-size:.92rem!important;min-height:32px!important;line-height:1.1!important}:root{--color-bg-primary: #15192A;--color-bg-secondary: #1E2235;--color-bg-tertiary: #252A40;--color-bg-gradient-start: #15192A;--color-bg-gradient-end: #2C294D;--color-accent-primary: #9162fa;--color-accent-hover: #a688fa;--color-accent-light: rgba(166, 136, 250, .1);--color-accent-secondary: #5C9184;--color-accent-danger: #E74C3C;--color-accent-warning: #F39C12;--color-text-primary: #FFFFFF;--color-text-secondary: #B8C5D0;--color-text-muted: #6B7A8F;--color-text-heading: #FFFFFF;--border-color: rgba(255, 255, 255, .1);--border-color-light: rgba(255, 255, 255, .05);--surface-glass: rgba(255, 255, 255, .03);--surface-glass-hover: rgba(255, 255, 255, .06);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 4px 8px rgba(0, 0, 0, .15);--shadow-md: 0 8px 24px rgba(0, 0, 0, .25);--shadow-lg: 0 16px 48px rgba(0, 0, 0, .3);--shadow-glow: 0 0 20px rgba(166, 136, 250, .3);--font-heading: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--sidebar-width: 180px}@media(max-width:1400px){:root{--sidebar-width: 0px}}*{box-sizing:border-box}html{background-color:#15171e}body{background:radial-gradient(50% 50% at 50% 0%,#1d2248,#15171e);background-attachment:fixed;color:var(--color-text-primary);font-family:var(--font-body);font-size:16px;line-height:1.6;margin:0;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover);text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;color:var(--color-text-heading);line-height:1.3;margin:0 0 .5em}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem;font-weight:600}h3{font-size:1.5rem;font-weight:600}h4{font-size:1.25rem;font-weight:500}p{margin:0 0 1em;color:var(--color-text-secondary)}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border:none;border-radius:var(--radius-md);cursor:pointer;background:var(--color-accent-primary);color:#fff;font-family:var(--font-body);font-size:.95rem;font-weight:500;transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}button:hover,.btn:hover{background:var(--color-accent-hover)}button:active,.btn:active{opacity:.85}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:var(--surface-glass);border:1px solid var(--border-color);color:var(--color-text-primary)}.btn-secondary:hover{background:var(--surface-glass-hover);border-color:var(--color-accent-primary)}.btn-ghost{background:transparent;border:1px solid transparent;color:var(--color-text-secondary);box-shadow:none}.btn-ghost:hover{background:var(--surface-glass);color:var(--color-text-primary);box-shadow:none}.btn-danger{background:var(--color-accent-danger)}.btn-danger:hover{background:#c0392b}.btn-sm{padding:8px 16px;font-size:.85rem}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],select,textarea{width:100%;padding:14px 16px;box-sizing:border-box;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-glass);color:var(--color-text-primary);font-family:var(--font-body);font-size:.95rem;transition:all var(--transition-fast)}input:hover,textarea:hover,select:hover{border-color:#fff3}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 3px var(--color-accent-light)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}textarea{resize:vertical;min-height:100px}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23B8C5D0' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}label{display:block;margin-bottom:8px;font-weight:500;color:var(--color-text-primary);font-size:.9rem}.form-group{margin-bottom:20px}.card{background:var(--surface-glass);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:24px;transition:all var(--transition-normal)}.card:hover{border-color:#ffffff26;box-shadow:var(--shadow-lg)}.card-header{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border-color-light)}.card-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:600;margin:0}.container{max-width:1250px;margin:0 auto;padding:24px}.page-shell{display:flex;max-width:none;padding:0}.page-content{margin-left:var(--sidebar-width);padding:32px 40px;width:calc(100% - var(--sidebar-width));min-height:100vh}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-primary{color:var(--color-text-primary)}.text-accent{color:var(--color-accent-primary)}.text-danger{color:var(--color-accent-danger)}.text-success{color:var(--color-accent-secondary)}.text-center{text-align:center}.text-right{text-align:right}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:8px}.gap-2{gap:16px}.gap-3{gap:24px}.badge{display:inline-flex;align-items:center;padding:4px 12px;font-size:.75rem;font-weight:500;border-radius:var(--radius-full);background:var(--color-accent-light);color:var(--color-accent-primary)}.badge-success{background:#50fa7b1a;color:var(--color-accent-secondary)}.badge-danger{background:#e74c3c1a;color:var(--color-accent-danger)}.badge-warning{background:#f39c121a;color:var(--color-accent-warning)}.modal,.modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:var(--color-bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;padding:30px;position:relative}.modal-large{max-width:700px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.modal-content h2{margin-top:0;margin-bottom:12px;border:none}.modal-content p{color:var(--color-text-secondary);margin-bottom:20px;line-height:1.5}.close{position:absolute;top:14px;right:18px;font-size:24px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast);line-height:1}.close:hover{color:var(--color-text-primary)}.confirm-modal{max-width:400px;text-align:center}.confirm-modal .confirm-icon{font-size:3rem;margin-bottom:12px}.confirm-modal p{color:var(--color-text-secondary)}.confirm-modal .modal-actions{justify-content:center}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-normal)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active,.slide-up-leave-active{transition:all var(--transition-normal)}.slide-up-enter-from,.slide-up-leave-to{opacity:0;transform:translateY(20px)}
