body{transition:background-color .3s ease,color .3s ease}.modal-fade-enter-active[data-v-4c9141e2],.modal-fade-leave-active[data-v-4c9141e2]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-4c9141e2],.modal-fade-leave-to[data-v-4c9141e2]{opacity:0}.modal-scale-enter-active[data-v-4c9141e2],.modal-scale-leave-active[data-v-4c9141e2]{transition:all .3s ease}.modal-scale-enter-from[data-v-4c9141e2],.modal-scale-leave-to[data-v-4c9141e2]{opacity:0;transform:scale(.7) translateY(-20px)}.modal-overlay[data-v-4c9141e2]{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-4c9141e2]{background:var(--bg-card);color:var(--text-main);border:1px solid var(--glass-border);border-radius:12px;box-shadow:var(--glass-shadow);max-width:90vw;max-height:90vh;width:var(--2c386402);overflow:hidden;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.modal-header-custom[data-v-4c9141e2]{position:relative;flex-shrink:0}.modal-close-custom[data-v-4c9141e2]{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:#0000000d;color:var(--text-secondary);cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;z-index:10}.modal-close-custom[data-v-4c9141e2]:hover{background:#c278781f;color:var(--danger)}.modal-close-custom svg[data-v-4c9141e2]{width:18px;height:18px}.modal-body-custom[data-v-4c9141e2]{flex:1;overflow-y:auto;max-height:80vh}.modal-header[data-v-4c9141e2]{padding:24px 24px 16px;border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;background:var(--glass-bg);flex-shrink:0}.modal-title-wrapper[data-v-4c9141e2]{display:flex;align-items:center;gap:12px}.modal-icon[data-v-4c9141e2]{width:20px;height:20px;flex-shrink:0}.modal-icon.info[data-v-4c9141e2]{color:var(--info)}.modal-icon.success[data-v-4c9141e2]{color:var(--success)}.modal-icon.warning[data-v-4c9141e2]{color:var(--warning)}.modal-icon.error[data-v-4c9141e2]{color:var(--danger)}.modal-title[data-v-4c9141e2]{font-size:18px;font-weight:600;color:var(--text-main);margin:0;line-height:1.4}.modal-close[data-v-4c9141e2]{width:32px;height:32px;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.modal-close[data-v-4c9141e2]:hover{background:#c278781f;color:var(--danger)}.modal-close svg[data-v-4c9141e2]{width:18px;height:18px}.modal-body[data-v-4c9141e2]{padding:20px 24px;flex:1;overflow-y:auto;max-height:60vh}.modal-message[data-v-4c9141e2]{font-size:14px;line-height:1.6;color:var(--text-secondary);margin:0}.modal-footer[data-v-4c9141e2]{padding:16px 24px 24px;border-top:1px solid var(--border-light);background:var(--glass-bg);flex-shrink:0}.modal-actions[data-v-4c9141e2]{display:flex;gap:12px;justify-content:flex-end}.modal-btn[data-v-4c9141e2]{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent;min-height:40px;display:flex;align-items:center;justify-content:center}.modal-btn-cancel[data-v-4c9141e2]{background:var(--bg-card);color:var(--text-secondary);border-color:var(--border-medium)}.modal-btn-cancel[data-v-4c9141e2]:hover{background:var(--border-light);border-color:var(--primary);color:var(--text-main)}.modal-btn-confirm[data-v-4c9141e2]{background:var(--primary);color:#fff;border:none;box-shadow:0 4px 12px #7b8fa14d}.modal-btn-confirm[data-v-4c9141e2]:hover{transform:translateY(-1px);background:var(--primary-dark)}.modal-btn-info[data-v-4c9141e2]{background:var(--info);box-shadow:0 4px 12px #8da9c44d}.modal-btn-success[data-v-4c9141e2]{background:var(--success);box-shadow:0 4px 12px #88b0a54d}.modal-btn-warning[data-v-4c9141e2]{background:var(--warning);box-shadow:0 4px 12px #c59f5e4d}.modal-btn-error[data-v-4c9141e2]{background:var(--danger);box-shadow:0 4px 12px #c278784d}@media (max-width: 768px){.modal-container[data-v-4c9141e2]{width:100%;margin:0 16px}.modal-header[data-v-4c9141e2],.modal-body[data-v-4c9141e2],.modal-footer[data-v-4c9141e2]{padding-left:16px;padding-right:16px}.modal-actions[data-v-4c9141e2]{flex-direction:column}.modal-btn[data-v-4c9141e2]{width:100%}}.modal-body[data-v-4c9141e2]::-webkit-scrollbar{width:6px}.modal-body[data-v-4c9141e2]::-webkit-scrollbar-track{background:var(--border-light);border-radius:3px}.modal-body[data-v-4c9141e2]::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:3px}.modal-body[data-v-4c9141e2]::-webkit-scrollbar-thumb:hover{background:var(--primary-light)}.toast-slide-enter-active[data-v-05396f0a],.toast-slide-leave-active[data-v-05396f0a]{transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.toast-slide-enter-from[data-v-05396f0a]{opacity:0;transform:translateY(-100%) scale(.8)}.toast-slide-leave-to[data-v-05396f0a]{opacity:0;transform:translateY(-20px) scale(.95)}.toast-container[data-v-05396f0a]{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:2000;display:flex;align-items:center;gap:12px;padding:16px 24px;border-radius:12px;color:#fff;font-size:14px;font-weight:500;box-shadow:0 10px 25px #00000026;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:300px;max-width:500px;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toast-icon[data-v-05396f0a]{width:20px;height:20px;flex-shrink:0}.toast-message[data-v-05396f0a]{flex:1;line-height:1.4}.toast-success[data-v-05396f0a]{background:linear-gradient(135deg,#10b981,#059669);border:1px solid rgba(255,255,255,.2)}.toast-info[data-v-05396f0a]{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:1px solid rgba(255,255,255,.2)}.toast-warning[data-v-05396f0a]{background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid rgba(255,255,255,.2)}.toast-error[data-v-05396f0a]{background:linear-gradient(135deg,#ef4444,#dc2626);border:1px solid rgba(255,255,255,.2)}@media (max-width: 768px){.toast-container[data-v-05396f0a]{left:20px;right:20px;transform:none;min-width:auto;max-width:none}}.ui-btn[data-v-52a8a19a]{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);font-family:inherit;position:relative;overflow:hidden}.ui-btn[data-v-52a8a19a]:disabled{opacity:.6;cursor:not-allowed}.ui-btn[data-v-52a8a19a]:active:not(:disabled){transform:scale(.98)}.content[data-v-52a8a19a]{display:flex;align-items:center;gap:8px}.ui-btn--sm[data-v-52a8a19a]{height:32px;padding:0 12px;font-size:13px}.ui-btn--md[data-v-52a8a19a]{height:40px;padding:0 16px;font-size:14px}.ui-btn--lg[data-v-52a8a19a]{height:48px;padding:0 24px;font-size:16px}.ui-btn--block[data-v-52a8a19a]{width:100%}.ui-btn--primary[data-v-52a8a19a]{background-color:var(--primary);color:#fff;box-shadow:0 2px 8px #7b8fa14d}.ui-btn--primary[data-v-52a8a19a]:hover:not(:disabled){background-color:var(--primary-dark)}.ui-btn--secondary[data-v-52a8a19a]{background-color:var(--bg-card);color:var(--text-main);border:1px solid var(--border-medium)}.ui-btn--secondary[data-v-52a8a19a]:hover:not(:disabled){background-color:var(--bg-page);border-color:var(--primary);color:var(--primary)}.ui-btn--ghost[data-v-52a8a19a]{background-color:transparent;color:var(--text-secondary)}.ui-btn--ghost[data-v-52a8a19a]:hover:not(:disabled){background-color:#0000000d;color:var(--text-main)}[data-theme=dark]{background-color:#ffffff14}.ui-btn--warning[data-v-52a8a19a]{background-color:var(--warning);color:#fff}.ui-btn--warning[data-v-52a8a19a]:hover:not(:disabled){background-color:var(--warning-dark)}.ui-btn--danger[data-v-52a8a19a]{background-color:var(--danger);color:#fff}.ui-btn--danger[data-v-52a8a19a]:hover:not(:disabled){filter:brightness(.9)}.spinner[data-v-52a8a19a]{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin-52a8a19a .8s linear infinite}.ui-btn--secondary .spinner[data-v-52a8a19a],.ui-btn--ghost .spinner[data-v-52a8a19a]{border-color:#0000001a;border-top-color:var(--text-main)}@keyframes spin-52a8a19a{to{transform:rotate(360deg)}}.ui-icon[data-v-910a21f1]{display:inline-block;vertical-align:middle}.verification-card[data-v-1707690d]{width:100%;max-width:420px;padding:40px;display:flex;flex-direction:column;gap:24px}.verification-header[data-v-1707690d]{text-align:center}.logo-wrapper[data-v-1707690d]{margin-bottom:20px}.auth-logo[data-v-1707690d]{width:64px;height:64px;border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a}.info-text[data-v-1707690d]{margin-top:8px;line-height:1.6}.verification-form[data-v-1707690d]{display:flex;flex-direction:column;gap:24px}.code-input-container[data-v-1707690d]{display:flex;justify-content:center}.code-input[data-v-1707690d]{width:100%;max-width:240px;font-size:2rem;letter-spacing:.5rem;padding:12px;font-family:monospace;font-weight:600;color:var(--primary);background:#ffffff80}.code-input[data-v-1707690d]:focus{background:#fff;border-color:var(--primary);box-shadow:0 0 0 4px #7b8fa126}.timer-section[data-v-1707690d]{display:flex;justify-content:center;align-items:center;gap:6px}.text-primary[data-v-1707690d]{color:var(--primary);display:flex;align-items:center;gap:6px}.text-danger[data-v-1707690d]{color:var(--danger, #ff4d4f)}.actions[data-v-1707690d]{display:flex;flex-direction:column;gap:12px}.verification-footer[data-v-1707690d]{text-align:center;padding-top:16px;border-top:1px solid var(--glass-border)}.back-link[data-v-1707690d]{color:var(--text-muted);text-decoration:none;font-size:.9rem;transition:color .2s;display:inline-flex;align-items:center;gap:4px}.back-link[data-v-1707690d]:hover{color:var(--primary)}.arrow[data-v-1707690d]{transition:transform .2s}.back-link:hover .arrow[data-v-1707690d]{transform:translate(-4px)}@media (max-width: 768px){.verification-card[data-v-1707690d]{padding:24px 20px;gap:20px}.auth-logo[data-v-1707690d]{width:56px;height:56px}.code-input[data-v-1707690d]{font-size:1.5rem;letter-spacing:.25rem;padding:10px}.verification-form[data-v-1707690d]{gap:20px}}.ui-input-wrapper[data-v-4c3879a8]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.ui-label[data-v-4c3879a8]{font-size:14px;font-weight:500;color:var(--text-secondary)}.input-container[data-v-4c3879a8]{position:relative;display:flex;align-items:center}.ui-input[data-v-4c3879a8]{width:100%;height:40px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-medium);background-color:var(--bg-card);color:var(--text-main);font-size:14px;transition:all var(--transition-fast);outline:none;font-family:inherit}.ui-input[data-v-4c3879a8]:focus{border-color:var(--primary);background-color:var(--bg-card);box-shadow:0 0 0 3px #7b8fa133}.ui-input.has-prefix[data-v-4c3879a8]{padding-left:36px}.input-prefix[data-v-4c3879a8]{position:absolute;left:12px;pointer-events:none;color:var(--text-disabled);display:flex;align-items:center}.input-suffix[data-v-4c3879a8]{position:absolute;right:12px;display:flex;align-items:center}.has-error .ui-input[data-v-4c3879a8]{border-color:var(--danger)}.has-error .ui-input[data-v-4c3879a8]:focus{box-shadow:0 0 0 3px #d6909033}.ui-error-msg[data-v-4c3879a8]{font-size:12px;color:var(--danger)}.ui-hint-msg[data-v-4c3879a8]{font-size:12px;color:var(--text-disabled)}.auth-wrapper[data-v-297da762]{width:100%;max-width:420px;perspective:1000px}.auth-card[data-v-297da762]{padding:40px;background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);display:flex;flex-direction:column;gap:24px;transition:transform .3s ease,box-shadow .3s ease}.auth-card[data-v-297da762]:hover{transform:translateY(-2px);box-shadow:0 12px 40px #1f268726}.auth-header[data-v-297da762]{text-align:center}.logo-wrapper[data-v-297da762]{margin-bottom:20px;display:flex;justify-content:center}.auth-logo[data-v-297da762]{width:64px;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a}.auth-form[data-v-297da762]{display:flex;flex-direction:column;gap:24px}.agreement-section[data-v-297da762]{display:flex;align-items:center}.checkbox-wrapper[data-v-297da762]{display:flex;align-items:center;position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.custom-checkbox[data-v-297da762]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark[data-v-297da762]{position:absolute;top:0;left:0;height:18px;width:18px;background-color:var(--bg-card);border:1px solid var(--primary-light);border-radius:4px;transition:all .2s ease}.checkbox-wrapper:hover .checkmark[data-v-297da762]{background-color:#fffc}.custom-checkbox:checked~.checkmark[data-v-297da762]{background-color:var(--primary);border-color:var(--primary)}.checkmark[data-v-297da762]:after{content:"";position:absolute;display:none;left:6px;top:2px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.custom-checkbox:checked~.checkmark[data-v-297da762]:after{display:block}.checkbox-wrapper span[data-v-297da762]:last-child{margin-left:26px}.link[data-v-297da762]{color:var(--primary);text-decoration:none;font-weight:500;transition:color .2s;cursor:pointer}.link[data-v-297da762]:hover{color:var(--primary-dark);text-decoration:underline}.auth-footer[data-v-297da762]{text-align:center;padding-top:16px;border-top:1px solid var(--glass-border)}.switch-link[data-v-297da762]{margin-left:4px}.modal-backdrop[data-v-297da762]{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;transition:all .3s ease}.modal-card[data-v-297da762]{width:100%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:0 25px 60px #0003;overflow:hidden;transform-origin:center center}.modal-header[data-v-297da762]{padding:20px 24px;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center;background:#ffffff1a}.header-content[data-v-297da762]{display:flex;align-items:center;gap:12px;color:var(--text-main)}.header-icon[data-v-297da762]{color:var(--primary)}.modal-header h3[data-v-297da762]{margin:0;font-size:1.25rem;font-weight:600}.close-btn[data-v-297da762]{background:transparent;border:none;padding:8px;border-radius:50%;color:var(--text-light);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.close-btn[data-v-297da762]:hover{background:#0000000d;color:var(--text-main);transform:rotate(90deg)}.modal-body[data-v-297da762]{padding:0;overflow-y:auto;flex:1;position:relative}.agreement-text[data-v-297da762]{padding:24px 32px}.agreement-text h4[data-v-297da762]{margin-top:24px;margin-bottom:12px;color:var(--text-main);font-weight:600;font-size:1.1rem;display:flex;align-items:center}.agreement-text h4[data-v-297da762]:before{content:"";display:inline-block;width:4px;height:18px;background:var(--primary);margin-right:10px;border-radius:2px}.agreement-text p[data-v-297da762]{margin-bottom:16px;font-size:.95rem;line-height:1.7;color:var(--text-light);text-align:justify}.modal-footer[data-v-297da762]{padding:20px 32px;border-top:1px solid var(--glass-border);display:flex;justify-content:flex-end;background:#ffffff0d}.modal-body[data-v-297da762]::-webkit-scrollbar{width:6px}.modal-body[data-v-297da762]::-webkit-scrollbar-track{background:#00000005}.modal-body[data-v-297da762]::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:3px}.modal-body[data-v-297da762]::-webkit-scrollbar-thumb:hover{background:var(--primary)}.fade-enter-active[data-v-297da762],.fade-leave-active[data-v-297da762]{transition:opacity .3s ease,transform .3s ease}.fade-enter-from[data-v-297da762],.fade-leave-to[data-v-297da762]{opacity:0;transform:translateY(10px)}.modal-fade-enter-active[data-v-297da762],.modal-fade-leave-active[data-v-297da762]{transition:opacity .3s ease}.modal-fade-enter-from[data-v-297da762],.modal-fade-leave-to[data-v-297da762]{opacity:0}.modal-fade-enter-active .modal-card[data-v-297da762]{animation:modal-in-297da762 .3s ease-out forwards}.modal-fade-leave-active .modal-card[data-v-297da762]{animation:modal-out-297da762 .2s ease-in forwards}@keyframes modal-in-297da762{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modal-out-297da762{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(10px)}}@media (max-width: 768px){.auth-card[data-v-297da762]{padding:24px 20px;gap:20px}.auth-form[data-v-297da762]{gap:20px}.auth-logo[data-v-297da762]{width:56px;height:56px}.modal-backdrop[data-v-297da762]{padding:10px;align-items:center}.modal-card[data-v-297da762]{max-height:80vh;width:100%;margin:0}.modal-header[data-v-297da762]{padding:16px 20px}.header-content[data-v-297da762]{gap:8px}.modal-header h3[data-v-297da762]{font-size:1.1rem}.agreement-text[data-v-297da762]{padding:20px}.agreement-text h4[data-v-297da762]{margin-top:16px;font-size:1rem}.agreement-text p[data-v-297da762]{font-size:.9rem}.modal-footer[data-v-297da762]{padding:16px 20px}[data-v-297da762] .ui-input{height:44px}}.login-page[data-v-9460cfcd]{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:20px}.back-home[data-v-9460cfcd]{position:absolute;top:24px;left:24px;z-index:20;color:var(--text-light);font-size:.9rem;font-weight:500}.back-home[data-v-9460cfcd]:hover{color:var(--primary)}.content-container[data-v-9460cfcd]{position:relative;z-index:10;width:100%;display:flex;justify-content:center}.background-decorations[data-v-9460cfcd]{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.blob[data-v-9460cfcd]{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;animation:float-9460cfcd 12s infinite ease-in-out}.blob-1[data-v-9460cfcd]{width:400px;height:400px;background:var(--primary-light);top:-150px;right:-100px}.blob-2[data-v-9460cfcd]{width:300px;height:300px;background:var(--accent);bottom:-100px;left:-50px;animation-delay:-6s}@keyframes float-9460cfcd{0%,to{transform:translate(0)}50%{transform:translate(-30px,20px)}}@media (max-width: 768px){.login-page[data-v-9460cfcd]{padding:16px}.blob-1[data-v-9460cfcd]{width:250px;height:250px;top:-80px;right:-60px;filter:blur(50px)}.blob-2[data-v-9460cfcd]{width:200px;height:200px;bottom:-60px;left:-40px;filter:blur(50px)}}.home-page[data-v-e243a659]{min-height:100vh;position:relative;overflow:hidden;padding:20px 24px 40px;display:flex;flex-direction:column;gap:48px}.home-nav[data-v-e243a659]{position:relative;z-index:10;max-width:1080px;width:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 16px 12px 20px;border-radius:18px}.nav-brand[data-v-e243a659]{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--text-main)}.nav-logo[data-v-e243a659]{width:28px;height:28px;border-radius:8px}.nav-actions[data-v-e243a659]{display:flex;align-items:center;gap:16px}.nav-link[data-v-e243a659]{color:var(--text-light);font-size:.9rem;font-weight:500}.nav-link[data-v-e243a659]:hover{color:var(--primary)}.hero[data-v-e243a659]{position:relative;z-index:10;display:flex;justify-content:center}.hero-card[data-v-e243a659]{padding:56px 40px;text-align:center;max-width:520px;width:100%;display:flex;flex-direction:column;align-items:center;gap:24px}.logo[data-v-e243a659]{width:80px;height:80px;border-radius:var(--radius-md);box-shadow:var(--glass-shadow)}.brand-title[data-v-e243a659]{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:0}.description[data-v-e243a659]{color:var(--text-main);font-size:1.125rem}.description span[data-v-e243a659]{display:block;margin-top:8px;font-weight:300}.start-btn[data-v-e243a659]{min-width:160px;box-shadow:0 4px 14px #7b8fa166}.arrow[data-v-e243a659]{transition:transform .2s}.start-btn:hover .arrow[data-v-e243a659]{transform:translate(4px)}.features[data-v-e243a659]{position:relative;z-index:10;max-width:1080px;width:100%;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.feature-card[data-v-e243a659]{padding:24px;border-radius:var(--radius-lg)}.feature-icon[data-v-e243a659]{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;margin-bottom:16px;box-shadow:0 8px 18px #7b8fa147}.feature-card h3[data-v-e243a659]{font-size:1.05rem;margin-bottom:8px}.feature-card p[data-v-e243a659]{color:var(--text-light);font-size:.9rem;line-height:1.6}.home-footer[data-v-e243a659]{position:relative;z-index:10;text-align:center;color:var(--text-lighter);font-size:.8rem}.background-decorations[data-v-e243a659]{position:absolute;inset:0;z-index:0;pointer-events:none}.blob[data-v-e243a659]{position:absolute;border-radius:50%;filter:blur(60px);opacity:.6;animation:float-e243a659 10s infinite ease-in-out}.blob-1[data-v-e243a659]{width:300px;height:300px;background:var(--primary-light);top:-100px;left:-50px}.blob-2[data-v-e243a659]{width:250px;height:250px;background:var(--accent);bottom:-50px;right:-50px;animation-delay:-5s}@keyframes float-e243a659{0%,to{transform:translate(0)}50%{transform:translate(30px,20px)}}@media (max-width: 768px){.home-page[data-v-e243a659]{padding:16px 16px 32px;gap:32px}.hero-card[data-v-e243a659]{padding:40px 24px}.features[data-v-e243a659]{grid-template-columns:1fr}.logo[data-v-e243a659]{width:64px;height:64px}}.sidebar[data-v-d56fdd01]{width:100%;height:100%;display:flex;flex-direction:column;z-index:50;border-radius:0;border-right:1px solid var(--glass-border);border-top:none;border-bottom:none;border-left:none;transition:all .3s ease;padding-left:env(safe-area-inset-left);padding-bottom:env(safe-area-inset-bottom)}.sidebar-header[data-v-d56fdd01]{padding:24px;display:flex;align-items:center;gap:16px;margin-bottom:20px}.logo-container[data-v-d56fdd01]{width:40px;height:40px;background:var(--glass-bg);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000000d;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sidebar-header:hover .logo-container[data-v-d56fdd01]{transform:rotate(10deg) scale(1.05)}.sidebar-logo[data-v-d56fdd01]{width:24px;height:24px}.sidebar-brand[data-v-d56fdd01]{display:flex;flex-direction:column}.sidebar-title[data-v-d56fdd01]{font-size:1.25rem;font-weight:700;color:var(--text-main);line-height:1.2}.sidebar-subtitle[data-v-d56fdd01]{font-size:.75rem;font-weight:500;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em}.sidebar-nav[data-v-d56fdd01]{flex:1;overflow-y:auto;padding:0 16px}.sidebar-nav[data-v-d56fdd01]::-webkit-scrollbar{width:4px}.nav-section[data-v-d56fdd01]{margin-bottom:24px}.nav-section-title[data-v-d56fdd01]{padding:0 12px;font-size:.75rem;font-weight:600;color:var(--text-lighter);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.nav-list[data-v-d56fdd01]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.nav-item[data-v-d56fdd01]{display:flex;align-items:center;padding:12px;border-radius:10px;cursor:pointer;transition:all .2s ease;color:var(--text-light);font-weight:500;font-size:.95rem;position:relative;overflow:hidden}.nav-item[data-v-d56fdd01]:hover{background:#7b8fa11f;color:var(--primary);transform:translate(4px)}.nav-item.active[data-v-d56fdd01]{background:var(--primary);color:#fff;box-shadow:0 4px 12px #7b8fa14d}[data-theme=dark] .nav-item.active[data-v-d56fdd01]{box-shadow:0 4px 12px #0000004d}.nav-icon-wrapper[data-v-d56fdd01]{display:flex;align-items:center;justify-content:center;margin-right:12px;transition:transform .2s ease}.nav-item:hover .nav-icon-wrapper[data-v-d56fdd01]{transform:scale(1.1)}.nav-icon[data-v-d56fdd01]{width:20px;height:20px}.sidebar[data-v-d56fdd01]:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#ffffff1a,#fff0);pointer-events:none;z-index:-1}.topbar[data-v-3342f84c]{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:40;border-radius:0;border-bottom:1px solid var(--glass-border);border-top:none;border-left:none;border-right:none}.topbar-left[data-v-3342f84c]{display:flex;align-items:center;gap:16px}.menu-btn[data-v-3342f84c]{display:none;background:none;border:none;cursor:pointer;color:var(--text-main);padding:8px;border-radius:8px}.menu-btn[data-v-3342f84c]:hover{background:#0000000d}.page-title[data-v-3342f84c]{font-size:1.25rem;font-weight:600;color:var(--text-main);margin:0}.topbar-right[data-v-3342f84c]{display:flex;align-items:center;gap:16px}.action-btn[data-v-3342f84c]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--text-light);cursor:pointer;transition:all .2s ease}.action-btn[data-v-3342f84c]:hover{background:var(--glass-bg);color:var(--primary);border-color:var(--glass-border);box-shadow:var(--glass-shadow)}.user-profile[data-v-3342f84c]{display:flex;align-items:center;gap:12px;padding-left:16px;border-left:1px solid var(--glass-border)}.user-info[data-v-3342f84c]{display:flex;flex-direction:column;align-items:flex-end}.user-name[data-v-3342f84c]{font-size:.875rem;font-weight:600;color:var(--text-main)}.user-role[data-v-3342f84c]{font-size:.7rem;color:var(--text-light);text-transform:uppercase}.user-avatar[data-v-3342f84c]{width:36px;height:36px;border-radius:10px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;box-shadow:0 4px 10px #7b8fa14d}.logout-btn-mini[data-v-3342f84c]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;border:none;background:#c278781f;color:var(--danger);cursor:pointer;transition:all .2s ease;margin-left:8px}.logout-btn-mini[data-v-3342f84c]:hover{background:var(--danger);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #c2787847}@media (max-width: 768px){.topbar[data-v-3342f84c]{padding:0 16px}.menu-btn[data-v-3342f84c]{display:flex}.page-title[data-v-3342f84c]{font-size:1.1rem}.user-info[data-v-3342f84c]{display:none}}.page-container[data-v-7604dae5]{flex:1;padding:24px;overflow-y:auto;position:relative;padding-bottom:calc(24px + env(safe-area-inset-bottom));padding-left:calc(24px + env(safe-area-inset-left));padding-right:calc(24px + env(safe-area-inset-right))}.content-wrapper[data-v-7604dae5]{max-width:1200px;margin:0 auto}@media (max-width: 768px){.page-container[data-v-7604dae5]{padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right))}}.dashboard-layout[data-v-5bd7976e]{display:flex;min-height:100vh;background-color:transparent}.sidebar-wrapper[data-v-5bd7976e]{position:fixed;top:0;left:0;bottom:0;width:260px;z-index:50;transition:transform .3s cubic-bezier(.4,0,.2,1)}.main-content[data-v-5bd7976e]{flex:1;display:flex;flex-direction:column;min-width:0;margin-left:260px;transition:margin-left .3s ease}.sidebar-backdrop[data-v-5bd7976e]{display:none;position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:45}@media (max-width: 768px){.sidebar-wrapper[data-v-5bd7976e]{transform:translate(-100%)}.sidebar-wrapper.mobile-open[data-v-5bd7976e]{transform:translate(0)}.sidebar-backdrop[data-v-5bd7976e]{display:block}.main-content[data-v-5bd7976e]{margin-left:0}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-family-base);font-size:16px;line-height:1.5;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background-color:var(--bg-body);color:var(--text-primary);transition:background-color var(--transition-normal),color var(--transition-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;outline:none}button{cursor:pointer;background:none;border:none}a{color:inherit;text-decoration:none}:root{--primary: #7B8FA1;--primary-light: #9AABB8;--primary-dark: #5C6E7F;--accent: #C4A4A4;--accent-light: #D4BFBF;--danger: #C27878;--danger-dark: #A65C5C;--success: #88B0A5;--success-dark: #6A9489;--warning: #C59F5E;--warning-dark: #A8843F;--info: #8DA9C4;--info-dark: #6E8AA8;--bg-color: #F5F3F0;--bg-page: #F5F3F0;--bg-body: #F5F3F0;--bg-card: rgba(255, 255, 255, .72);--bg-gradient: linear-gradient(135deg, #F5F3F0 0%, #E9E4E0 100%);--text-main: #2c3e50;--text-primary: #2c3e50;--text-light: #606266;--text-secondary: #606266;--text-lighter: #909399;--text-disabled: #b0b3b8;--border-light: rgba(123, 143, 161, .12);--border-medium: rgba(123, 143, 161, .28);--glass-bg: rgba(255, 255, 255, .65);--glass-border: rgba(255, 255, 255, .4);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .1);--glass-blur: 16px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 24px;--anim-duration: .3s;--transition-fast: .15s ease;--transition-normal: .3s ease;--font-family-base: "Inter Variable", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}[data-theme=dark]{--primary: #8CA0B3;--primary-light: #A8B8C6;--primary-dark: #6D7F91;--accent: #C4A4A4;--danger: #D08888;--danger-dark: #B06C6C;--success: #9BC4B8;--success-dark: #7AA89C;--warning: #D4B06E;--warning-dark: #B8944E;--info: #A0BBD4;--info-dark: #7E9BB8;--bg-color: #1A1D21;--bg-page: #1A1D21;--bg-body: #1A1D21;--bg-card: rgba(40, 44, 52, .72);--bg-gradient: linear-gradient(135deg, #1A1D21 0%, #2C3035 100%);--text-main: #E0E0E0;--text-primary: #E0E0E0;--text-light: #B0B0B0;--text-secondary: #B0B0B0;--text-lighter: #6E6E6E;--text-disabled: #6E6E6E;--border-light: rgba(255, 255, 255, .06);--border-medium: rgba(255, 255, 255, .14);--glass-bg: rgba(40, 44, 52, .6);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .4)}body{margin:0;font-family:var(--font-family-base);background:var(--bg-gradient);background-attachment:fixed;color:var(--text-main);transition:color var(--anim-duration),background var(--anim-duration);min-height:100vh}.glass-card{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--radius-lg)}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border)}.glass-input{width:100%;padding:12px 16px;background:#fff3;border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-main);font-size:1rem;transition:all .2s ease;outline:none}[data-theme=dark] .glass-input{background:#0003}.glass-input:focus{background:#fff6;border-color:var(--primary);box-shadow:0 0 0 2px #7b8fa133}[data-theme=dark] .glass-input:focus{background:#0000004d}.glass-btn{background:var(--primary);color:#fff;border:none;padding:12px 24px;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.glass-btn:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #7b8fa14d}.glass-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.glass-btn-secondary{background:transparent;border:1px solid var(--primary);color:var(--primary)}.glass-btn-secondary:hover{background:#7b8fa11a;transform:translateY(-1px)}.code-chip{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.75rem;line-height:1.4;padding:4px 8px;border-radius:6px;background:#7b8fa11f;color:var(--text-main);border:1px solid var(--border-light);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .code-chip{background:#00000059;color:#d7dde3}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 24px;color:var(--text-light)}.empty-state h3{margin:12px 0 6px;color:var(--text-main);font-size:1.125rem}.skeleton{background:linear-gradient(90deg,var(--border-light) 25%,var(--border-medium) 50%,var(--border-light) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease infinite;border-radius:var(--radius-sm)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.filter-bar{display:grid;gap:12px;padding:16px;border-radius:var(--radius-md);background:#7b8fa10f;border:1px solid var(--border-light)}[data-theme=dark] .filter-bar{background:#0003}.text-h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:1rem}.text-h2{font-size:2rem;font-weight:600;line-height:1.3;margin-bottom:.75rem}.text-h3{font-size:1.5rem;font-weight:600;line-height:1.4;margin-bottom:.5rem}.text-body{font-size:1rem;line-height:1.6}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-muted{color:var(--text-light)}.text-secondary{color:var(--text-secondary)}.text-main{color:var(--text-main)}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.text-info{color:var(--info)}.text-white{color:#fff}.text-center{text-align:center}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-words{overflow-wrap:break-word;word-break:break-word}.container{max-width:1200px;margin:0 auto;padding:0 20px}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.flex{display:flex}.flex-1{flex:1}.flex-center{display:flex;align-items:center;justify-content:center}.flex-row{display:flex;flex-direction:row}.flex-col{display:flex;flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.m-0{margin:0}.p-0{padding:0}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.min-w-0{min-width:0}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.rounded{border-radius:6px}.rounded-lg{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-md)}.overflow-hidden{overflow:hidden}.opacity-50{opacity:.5}.cursor-pointer{cursor:pointer}@media (max-width: 768px){.sm\:hidden{display:none}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:inline-flex{display:inline-flex}.sm\:flex{display:flex}.sm\:flex-row{display:flex;flex-direction:row}.sm\:flex-col{display:flex;flex-direction:column}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:justify-start{justify-content:flex-start}.sm\:justify-center{justify-content:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:gap-1{gap:.25rem}.sm\:gap-2{gap:.5rem}.sm\:gap-3{gap:.75rem}.sm\:gap-4{gap:1rem}.sm\:w-full{width:100%}.sm\:w-auto{width:auto}.sm\:text-sm{font-size:.875rem}.sm\:text-base{font-size:1rem}.sm\:text-lg{font-size:1.125rem}.sm\:truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm\:break-words{overflow-wrap:break-word;word-break:break-word}}@media (min-width: 769px){.md\:hidden{display:none}.md\:block{display:block}.md\:inline-block{display:inline-block}.md\:inline-flex{display:inline-flex}.md\:flex{display:flex}.md\:flex-row{display:flex;flex-direction:row}.md\:flex-col{display:flex;flex-direction:column}.md\:items-start{align-items:flex-start}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:justify-start{justify-content:flex-start}.md\:justify-center{justify-content:center}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:gap-1{gap:.25rem}.md\:gap-2{gap:.5rem}.md\:gap-3{gap:.75rem}.md\:gap-4{gap:1rem}.md\:w-full{width:100%}.md\:w-auto{width:auto}.md\:text-sm{font-size:.875rem}.md\:text-base{font-size:1rem}.md\:text-lg{font-size:1.125rem}.md\:truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md\:break-words{overflow-wrap:break-word;word-break:break-word}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1025px){.lg\:hidden{display:none}.lg\:block{display:block}.lg\:inline-block{display:inline-block}.lg\:inline-flex{display:inline-flex}.lg\:flex{display:flex}.lg\:flex-row{display:flex;flex-direction:row}.lg\:flex-col{display:flex;flex-direction:column}.lg\:items-start{align-items:flex-start}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:justify-start{justify-content:flex-start}.lg\:justify-center{justify-content:center}.lg\:justify-end{justify-content:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-1{gap:.25rem}.lg\:gap-2{gap:.5rem}.lg\:gap-3{gap:.75rem}.lg\:gap-4{gap:1rem}.lg\:w-full{width:100%}.lg\:w-auto{width:auto}.lg\:text-sm{font-size:.875rem}.lg\:text-base{font-size:1rem}.lg\:text-lg{font-size:1.125rem}.lg\:truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lg\:break-words{overflow-wrap:break-word;word-break:break-word}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out forwards}.view-fade-enter-active,.view-fade-leave-active{transition:opacity .22s ease,transform .22s ease}.view-fade-enter-from,.view-fade-leave-to{opacity:0;transform:translateY(8px)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary)}
