.switch[data-v-5fabd237]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.switch--disabled[data-v-5fabd237]{opacity:.5;cursor:not-allowed}.switch__input[data-v-5fabd237]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.switch__slider[data-v-5fabd237]{background-color:var(--color-border);box-sizing:border-box;border-radius:24px;align-items:center;width:44px;height:24px;padding:2px;transition:background-color .2s;display:inline-flex;position:relative}.switch__slider[data-v-5fabd237]:before{content:"";z-index:1;background-color:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #00000026}.switch__thumb-icon[data-v-5fabd237]{z-index:2;color:#0f172a;justify-content:center;align-items:center;width:20px;height:20px;margin:auto 0;transition:transform .2s,color .2s;display:flex;position:absolute;top:0;bottom:0;left:2px}.switch__thumb-icon[data-v-5fabd237] svg{width:12px;height:12px}.switch__input:checked+.switch__slider[data-v-5fabd237]{background-color:var(--color-accent)}.switch__input:checked+.switch__slider[data-v-5fabd237]:before,.switch__input:checked+.switch__slider .switch__thumb-icon[data-v-5fabd237]{transform:translate(20px)}.switch__label[data-v-5fabd237]{color:var(--color-text);font-size:14px;font-weight:500}.btn[data-v-4a21ff96]{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-weight:700;transition:all .2s;display:inline-flex}.btn[data-v-4a21ff96]:disabled{opacity:.5;cursor:not-allowed}.btn--primary[data-v-4a21ff96]{background:var(--color-accent);color:#fff}.btn--primary[data-v-4a21ff96]:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 4px 14px color-mix(in srgb, var(--color-accent) 40%, transparent)}.btn--secondary[data-v-4a21ff96]{background:var(--color-border);color:var(--color-text)}.btn--secondary[data-v-4a21ff96]:hover:not(:disabled){background:color-mix(in srgb, var(--color-border) 80%, var(--color-text))}.btn--outline[data-v-4a21ff96]{border-color:var(--color-border);color:var(--color-text);background:0 0}.btn--outline[data-v-4a21ff96]:hover:not(:disabled){background:var(--color-surface-soft);border-color:var(--color-accent)}.btn--danger[data-v-4a21ff96]{background:var(--color-error,#ef4444);color:#fff}.btn--danger[data-v-4a21ff96]:hover:not(:disabled){filter:brightness(1.05)}.btn--sm[data-v-4a21ff96]{padding:8px 12px;font-size:13px}.btn--sm[data-v-4a21ff96]:has(.btn__text:empty){padding:8px}.btn--md[data-v-4a21ff96]{padding:12px 16px;font-size:14px}.btn--md[data-v-4a21ff96]:has(.btn__text:empty){padding:12px}.btn--lg[data-v-4a21ff96]{padding:14px 20px;font-size:16px}.btn--lg[data-v-4a21ff96]:has(.btn__text:empty){padding:14px}.btn__text[data-v-4a21ff96]{align-items:center;display:inline-flex}.btn__text[data-v-4a21ff96]:empty{display:none}.btn__icon[data-v-4a21ff96]{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.btn__icon[data-v-4a21ff96] svg{width:1.1em;height:1.1em}.btn__spinner[data-v-4a21ff96]{border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;width:1em;height:1em;animation:.6s linear infinite btn-spin-4a21ff96}@keyframes btn-spin-4a21ff96{to{transform:rotate(360deg)}}.app-header[data-v-8bb7bf9f]{z-index:1000;box-sizing:border-box;width:100%;padding:12px 24px;position:sticky;top:0}.app-header__container[data-v-8bb7bf9f]{background:var(--color-surface-soft);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:20px;justify-content:space-between;align-items:center;max-width:1300px;margin:0 auto;padding:10px 20px;display:flex;box-shadow:0 10px 30px #0000000a}.app-header__brand[data-v-8bb7bf9f]{color:var(--color-text);letter-spacing:-.3px;align-items:center;gap:10px;font-size:16px;font-weight:800;text-decoration:none;display:flex}.app-header__brand-mark[data-v-8bb7bf9f]{background:var(--color-accent);color:#fff;width:34px;height:34px;box-shadow:0 4px 12px color-mix(in srgb, var(--color-accent) 40%, transparent);border-radius:12px;place-items:center;display:grid}.app-header__brand-name[data-v-8bb7bf9f]{white-space:nowrap}.app-header__nav[data-v-8bb7bf9f]{background:var(--color-bg);border:1px solid var(--color-border);border-radius:14px;align-items:center;gap:4px;padding:4px;display:flex}.app-header__nav-link[data-v-8bb7bf9f]{color:var(--color-muted);border-radius:10px;padding:6px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s}.app-header__nav-link[data-v-8bb7bf9f]:hover{color:var(--color-text)}.app-header__nav-link.router-link-active[data-v-8bb7bf9f]{background:var(--color-surface);color:var(--color-text);box-shadow:0 2px 8px #0000000d}.app-header__actions[data-v-8bb7bf9f]{align-items:center;gap:12px;display:flex}.app-header__theme-switch[data-v-8bb7bf9f]{justify-content:center;align-items:center;display:inline-flex}.app-header__user[data-v-8bb7bf9f]{position:relative}.app-header__user-button[data-v-8bb7bf9f]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:30px;align-items:center;gap:10px;padding:4px 10px 4px 4px;font-family:inherit;transition:all .2s;display:flex}.app-header__user-button[data-v-8bb7bf9f]:hover{border-color:var(--color-accent)}.app-header__avatar[data-v-8bb7bf9f]{background:var(--color-accent);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:grid}.app-header__username[data-v-8bb7bf9f]{color:var(--color-text);font-size:13px;font-weight:700}.app-header__chevron[data-v-8bb7bf9f]{border-right:2px solid var(--color-muted);border-bottom:2px solid var(--color-muted);width:6px;height:6px;margin-left:2px;transition:transform .2s;transform:rotate(45deg)}.app-header__chevron--open[data-v-8bb7bf9f]{transform:rotate(225deg)}.app-header__dropdown[data-v-8bb7bf9f]{z-index:2000;border:1px solid var(--color-border);background:var(--color-surface);transform-origin:100% 0;border-radius:16px;width:240px;padding:8px;animation:.2s cubic-bezier(.16,1,.3,1) both dropdown-in-8bb7bf9f;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 20px 40px #0000001f}.app-header__dropdown-user[data-v-8bb7bf9f]{border-bottom:1px solid var(--color-border);flex-direction:column;gap:2px;padding:12px;display:flex}.app-header__dropdown-user strong[data-v-8bb7bf9f]{color:var(--color-text);font-size:14px}.app-header__dropdown-user span[data-v-8bb7bf9f]{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.app-header__dropdown-link[data-v-8bb7bf9f],.app-header__dropdown-logout[data-v-8bb7bf9f]{text-align:left;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:4px;padding:10px 12px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s;display:block}.app-header__dropdown-link[data-v-8bb7bf9f]{color:var(--color-text);background:0 0}.app-header__dropdown-link[data-v-8bb7bf9f]:hover{background:var(--color-bg)}.app-header__dropdown-logout[data-v-8bb7bf9f]{color:var(--color-error);background:0 0}.app-header__dropdown-logout[data-v-8bb7bf9f]:hover{background:color-mix(in srgb, var(--color-error) 10%, transparent)}@keyframes dropdown-in-8bb7bf9f{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.app-mobile-nav[data-v-8bb7bf9f]{display:none}@media (width<=768px){.app-header[data-v-8bb7bf9f]{padding:12px 16px}.app-header__container[data-v-8bb7bf9f]{border-radius:16px;padding:8px 14px}.app-header__nav[data-v-8bb7bf9f],.app-header__username[data-v-8bb7bf9f]{display:none}.app-mobile-nav[data-v-8bb7bf9f]{z-index:1000;background:var(--color-surface-soft);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:22px;justify-content:space-around;align-items:center;padding:8px;display:flex;position:fixed;bottom:16px;left:16px;right:16px;box-shadow:0 10px 30px #00000026}.app-mobile-nav__item[data-v-8bb7bf9f]{color:var(--color-muted);border-radius:14px;flex:1;justify-content:center;align-items:center;padding:10px 0;font-size:12px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.app-mobile-nav__item.router-link-active[data-v-8bb7bf9f]{background:var(--color-accent);color:#fff;box-shadow:0 4px 12px color-mix(in srgb, var(--color-accent) 40%, transparent)}body[data-v-8bb7bf9f]{padding-bottom:90px}}.footer[data-v-b6deb215]{border-top:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:10;width:100%;margin-top:auto;position:relative}.footer[data-v-b6deb215]:before{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--color-accent) 30%, transparent), transparent);height:1px;position:absolute;top:0;left:0;right:0}.footer__container[data-v-b6deb215]{box-sizing:border-box;justify-content:space-between;gap:60px;max-width:1300px;margin:0 auto;padding:60px 24px;display:flex}.footer__brand[data-v-b6deb215]{flex-direction:column;gap:16px;max-width:320px;display:flex}.footer__logo[data-v-b6deb215]{align-items:center;gap:10px;display:flex}.footer__logo-dot[data-v-b6deb215]{background:var(--color-accent);width:8px;height:8px;box-shadow:0 0 12px var(--color-accent);border-radius:50%}.footer__title[data-v-b6deb215]{color:var(--color-text);letter-spacing:.08em;font-size:16px;font-weight:800}.footer__description[data-v-b6deb215]{color:var(--color-muted);margin:0;font-size:14px;line-height:1.6}.footer__nav[data-v-b6deb215]{gap:80px;display:flex}.footer__col[data-v-b6deb215]{flex-direction:column;gap:12px;display:flex}.footer__col h3[data-v-b6deb215]{color:var(--color-text);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:800}.footer__link[data-v-b6deb215]{color:var(--color-muted);font-size:14px;font-weight:500;text-decoration:none;transition:color .2s,transform .2s}.footer__link[data-v-b6deb215]:hover{color:var(--color-accent);transform:translate(2px)}.footer__link.router-link-active[data-v-b6deb215]{color:var(--color-text);font-weight:700}.footer__bottom[data-v-b6deb215]{border-top:1px solid var(--color-border);box-sizing:border-box;justify-content:space-between;align-items:center;max-width:1300px;margin:0 auto;padding:24px;display:flex}.footer__bottom p[data-v-b6deb215]{color:var(--color-muted);margin:0;font-size:13px}.footer__tech[data-v-b6deb215]{color:var(--color-muted);letter-spacing:.05em;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.footer__dot[data-v-b6deb215]{color:var(--color-border)}@media (width<=768px){.footer__container[data-v-b6deb215]{flex-direction:column;gap:40px;padding:40px 24px}.footer__nav[data-v-b6deb215]{flex-direction:column;gap:32px}.footer__bottom[data-v-b6deb215]{flex-direction:column;align-items:flex-start;gap:12px;padding:20px 24px}}.app-toast[data-v-29080ebd]{z-index:100000;border:1px solid var(--color-border);background:var(--color-surface);max-width:min(560px,100vw - 32px);color:var(--color-text);border-radius:14px;align-items:center;gap:14px;padding:12px 14px 12px 18px;font-size:14px;font-weight:700;line-height:1.4;display:flex;position:fixed;top:100px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #00000029}.app-toast__close[data-v-29080ebd]{width:24px;height:24px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;flex:0 0 24px;place-items:center;padding:0;font-size:20px;line-height:1;display:grid}.app-toast__close[data-v-29080ebd]:hover{color:var(--color-text)}.toast-enter-active[data-v-29080ebd],.toast-leave-active[data-v-29080ebd]{transition:opacity .2s,transform .2s}.toast-enter-from[data-v-29080ebd],.toast-leave-to[data-v-29080ebd]{opacity:0;transform:translate(-50%,-12px)}.modal[data-v-83da3e2a]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;background-color:#0f172a66;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal__container[data-v-83da3e2a]{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:24px;flex-direction:column;width:100%;max-width:480px;display:flex;overflow:hidden;box-shadow:0 24px 70px #0f172a33}.modal__header[data-v-83da3e2a]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal__title[data-v-83da3e2a]{color:var(--color-text);margin:0;font-size:18px;font-weight:800}.modal__close[data-v-83da3e2a]{cursor:pointer;color:var(--color-muted);background:0 0;border:none;font-size:22px;line-height:1;transition:color .2s}.modal__close[data-v-83da3e2a]:hover{color:var(--color-text)}.modal__body[data-v-83da3e2a]{max-height:70vh;padding:24px;overflow-y:auto}.modal__footer[data-v-83da3e2a]{border-top:1px solid var(--color-border);background:var(--color-surface-soft);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.modal-fade-enter-active[data-v-83da3e2a],.modal-fade-leave-active[data-v-83da3e2a]{transition:opacity .25s,transform .25s}.modal-fade-enter-from[data-v-83da3e2a],.modal-fade-leave-to[data-v-83da3e2a]{opacity:0;transform:scale(.96)}.input-field[data-v-f9f7b0cc]{flex-direction:column;gap:6px;width:100%;display:flex}.input-field__label[data-v-f9f7b0cc]{color:var(--color-text);font-size:13px;font-weight:700}.input-field__wrapper[data-v-f9f7b0cc]{align-items:center;width:100%;display:flex;position:relative}.input-field__control[data-v-f9f7b0cc]{width:100%;min-width:0;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);box-sizing:border-box;border-radius:10px;outline:none;padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.input-field__control[data-v-f9f7b0cc]::placeholder{color:var(--color-muted)}.input-field__control[data-v-f9f7b0cc]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-accent) 20%, transparent)}.input-field__control[data-v-f9f7b0cc]:disabled{background-color:var(--color-disabled-bg,var(--color-border));cursor:not-allowed}.input-field__wrapper--has-left .input-field__control[data-v-f9f7b0cc]{padding-left:38px}.input-field__wrapper--has-right .input-field__control[data-v-f9f7b0cc]{padding-right:38px}.input-field__icon[data-v-f9f7b0cc]{color:var(--color-muted);pointer-events:none;justify-content:center;align-items:center;display:inline-flex;position:absolute}.input-field__icon--left[data-v-f9f7b0cc]{left:12px}.input-field__icon--right[data-v-f9f7b0cc]{right:12px}.input-field__icon[data-v-f9f7b0cc] svg{width:18px;height:18px}.input-field--error .input-field__control[data-v-f9f7b0cc]{border-color:var(--color-error,#ef4444)}.input-field--error .input-field__control[data-v-f9f7b0cc]:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-error,#ef4444) 20%, transparent)}.input-field__error[data-v-f9f7b0cc]{color:var(--color-error,#ef4444);font-size:12px}.auth-modal[data-v-d38a9044]{flex-direction:column;gap:13px;display:flex}.app-shell[data-v-25a8a846]{flex-direction:column;min-height:100vh;display:flex}.app-shell__content[data-v-25a8a846]{flex-direction:column;flex:1;width:100%;min-height:calc(100dvh - 85px);display:flex}:root{--color-bg:#f8fafc;--color-surface:#fff;--color-surface-soft:#ffffffd1;--color-text:#0f172a;--color-muted:#64748b;--color-border:#e2e8f0;--color-accent:#2563eb;--color-button-bg:#0f172a;--color-button-text:#fff;--color-error:#ef4444;--color-disabled-bg:#f1f5f9;color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;font-family:Trebuchet MS,Segoe UI,sans-serif}:root[data-theme=night]{--color-bg:#090807;--color-surface:#11100f;--color-surface-soft:#11100fe0;--color-text:#f0ebe1;--color-muted:#948f86;--color-border:#242220;--color-accent:#60a5fa;--color-button-bg:#f0ebe1;--color-button-text:#090807;--color-error:#f87171;--color-disabled-bg:#1c1a18}*,:before,:after{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body,button,input,textarea,select{font:inherit}body{color:var(--color-text);background:var(--color-bg);transition:color .2s,background-color .2s}button,input,textarea{letter-spacing:inherit}
