.auth-overlay[data-v-3228780b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:300}.auth-modal[data-v-3228780b]{background:#fff;border-radius:8px;padding:24px;width:360px;max-width:90vw;box-shadow:0 8px 32px #00000026}.auth-modal__header[data-v-3228780b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.auth-modal__header h3[data-v-3228780b]{font-size:16px}.auth-modal__close[data-v-3228780b]{color:#999;font-size:16px;padding:4px 8px}.auth-modal__close[data-v-3228780b]:hover{color:#212121}.auth-modal__field[data-v-3228780b]{margin-bottom:14px}.auth-modal__field label[data-v-3228780b]{display:block;font-size:12px;color:#666;margin-bottom:6px}.auth-modal__field input[data-v-3228780b]{width:100%;padding:10px 12px;border:1px solid #eeeeee;border-radius:6px;font-size:14px}.auth-modal__field input[data-v-3228780b]:focus{outline:none;border-color:#2196f3}.auth-modal__error[data-v-3228780b]{color:#c62828;font-size:12px;margin-bottom:12px;padding:8px 12px;background:#fce4ec;border-radius:4px}.auth-modal__submit[data-v-3228780b]{width:100%;padding:10px;background:#1a1a2e;color:#fff;border-radius:6px;font-size:14px;font-weight:500}.auth-modal__submit[data-v-3228780b]:hover{opacity:.9}.auth-modal__submit[data-v-3228780b]:disabled{opacity:.4;cursor:not-allowed}.auth-modal__switch[data-v-3228780b]{text-align:center;margin-top:16px;font-size:12px;color:#666}.auth-modal__switch button[data-v-3228780b]{color:#2196f3;font-weight:500}.auth-modal__switch button[data-v-3228780b]:hover{text-decoration:underline}@media (max-width: 768px){.auth-overlay[data-v-3228780b]{align-items:flex-end}.auth-modal[data-v-3228780b]{width:100vw;max-width:100vw;border-radius:12px 12px 0 0;position:fixed;bottom:0;left:0;padding-bottom:calc(24px + env(safe-area-inset-bottom))}}.app-layout[data-v-2af3203f]{display:flex;min-height:100vh}.sidebar[data-v-2af3203f]{width:200px;background:#1a1a2e;color:#e0e0e0;padding:20px 0;position:fixed;top:0;left:0;bottom:0;overflow-y:auto}.sidebar__logo[data-v-2af3203f]{font-size:16px;font-weight:700;padding:0 20px 24px}.sidebar__nav[data-v-2af3203f]{display:flex;flex-direction:column;gap:4px;padding:0 8px}.sidebar__item[data-v-2af3203f]{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:6px;color:#e0e0e0;opacity:.7;transition:all .2s}.sidebar__item[data-v-2af3203f]:hover{opacity:1;background:#ffffff0d}.sidebar__item--active[data-v-2af3203f]{opacity:1;background:#16213e}.sidebar__icon[data-v-2af3203f]{font-size:16px}.content[data-v-2af3203f]{flex:1;margin-left:200px;padding:24px;background:#f8f9fa;min-height:100vh}.topbar[data-v-2af3203f]{display:flex;justify-content:flex-end;align-items:center;margin-bottom:16px}.topbar__user[data-v-2af3203f]{display:flex;align-items:center;gap:10px}.topbar__name[data-v-2af3203f]{font-size:12px;color:#666}.topbar__btn[data-v-2af3203f]{padding:6px 14px;border-radius:6px;font-size:12px;font-weight:500;transition:opacity .2s}.topbar__btn[data-v-2af3203f]:hover{opacity:.85}.topbar__btn--login[data-v-2af3203f]{background:#1a1a2e;color:#fff}.topbar__btn--logout[data-v-2af3203f]{background:#eee;color:#666}.tabbar[data-v-2af3203f]{display:none}@media (max-width: 768px){.sidebar[data-v-2af3203f]{display:none}.tabbar[data-v-2af3203f]{display:flex;position:fixed;bottom:0;left:0;right:0;height:56px;background:#1a1a2e;z-index:200;padding:0 4px;padding-bottom:env(safe-area-inset-bottom)}.tabbar__item[data-v-2af3203f]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#e0e0e0;opacity:.5;font-size:10px;transition:opacity .2s}.tabbar__item--active[data-v-2af3203f]{opacity:1}.tabbar__icon[data-v-2af3203f]{font-size:18px}.tabbar__label[data-v-2af3203f]{line-height:1}.content[data-v-2af3203f]{margin-left:0;padding:16px 16px 72px;min-height:100vh}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;color:#212121;background:#f8f9fa;-webkit-font-smoothing:antialiased}button{cursor:pointer;border:none;background:none;font-family:inherit;font-size:inherit}input,select{font-family:inherit;font-size:inherit}a{color:inherit;text-decoration:none}@media (max-width: 768px){input,select,textarea{font-size:16px}}
