.login-page{align-items:center;background:#fff;bottom:0;box-sizing:border-box;display:flex;flex-direction:column;height:100vh;height:100dvh;justify-content:center;left:0;overflow:hidden;padding:calc(20px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));right:0;top:0;width:100%}.language-switcher-wrapper,.login-page{position:fixed;transition:all .4s cubic-bezier(.4,0,.2,1)}.language-switcher-wrapper{left:20px;top:calc(20px + env(safe-area-inset-top));z-index:10}.logo-container{display:flex;justify-content:center;margin-bottom:24px}.logo-container,.logo-text{transition:all .4s cubic-bezier(.4,0,.2,1)}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#1d4ed8);-webkit-background-clip:text;background-clip:text;font-size:64px;font-weight:800;letter-spacing:-2px}.app-subtitle{color:#64748b;font-size:14px;font-weight:500;margin:0 0 32px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.app-subtitle,.login-form{max-width:440px;width:100%}.login-form{margin-top:0}.input-group{margin-bottom:24px}.input-label{color:#334155;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.input-field{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;font-size:16px;padding:14px 16px;transition:all .3s ease;width:100%}.input-field:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.input-field:disabled{background:#f1f5f9;cursor:not-allowed}.submit-button{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:24px;padding:14px;transition:all .3s ease;width:100%}.submit-button:hover:not(:disabled){box-shadow:0 10px 30px #3b82f666;transform:translateY(-2px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{cursor:not-allowed;opacity:.6}.button-loading{align-items:center;display:flex;gap:8px;justify-content:center}.spinner-small{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.error-message{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;display:flex;font-size:14px;gap:8px;margin-top:16px;padding:12px 16px}.sms-notice{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-bottom:24px;padding:16px;text-align:center}.sms-notice p{color:#1e40af;font-size:14px;line-height:1.5;margin:0}.back-button{background:#0000;border:2px solid #e2e8f0;border-radius:12px;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;margin-top:12px;padding:12px;transition:all .3s ease;width:100%}.back-button:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.back-button:disabled{cursor:not-allowed;opacity:.5}.login-footer{border-top:1px solid #e2e8f0;margin-top:32px;max-width:440px;padding-top:24px;text-align:center;width:100%}.powered-by{color:#94a3b8;font-size:12px;margin:0}@media (max-width:768px){.login-page{padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom))}.login-page.keyboard-open{padding-top:calc(134px + env(safe-area-inset-top))}.login-page.keyboard-open .logo-text{font-size:40px}.login-page.keyboard-open .logo-container{margin-bottom:5px}.login-page.keyboard-open .app-subtitle{font-size:13px;margin-bottom:5px}.language-switcher-wrapper{left:16px;top:calc(16px + env(safe-area-inset-top))}}@media (max-width:480px){.login-page{padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom))}.login-form{max-width:100%}.logo-text{font-size:52px}.login-page.keyboard-open{padding-top:calc(134px + env(safe-area-inset-top))}.login-page.keyboard-open .logo-text{font-size:36px}.login-page.keyboard-open .logo-container{margin-bottom:5px}.login-page.keyboard-open .app-subtitle{font-size:12px;margin-bottom:5px}.language-switcher-wrapper{left:16px;top:calc(16px + env(safe-area-inset-top))}}@media (min-width:769px){.login-page.keyboard-open .logo-text{font-size:64px}.login-page.keyboard-open .logo-container{margin-bottom:24px}.login-page.keyboard-open .app-subtitle{font-size:14px;margin-bottom:32px}}.error-boundary-fallback{align-items:center;background:linear-gradient(135deg,#fef3f2,#fee2e2);display:flex;justify-content:center;min-height:100vh;padding:20px}.error-content{background:#fff;border-radius:16px;box-shadow:0 8px 32px #dc26261f;max-width:500px;padding:32px 24px;text-align:center;width:100%}.error-icon-wrapper{margin-bottom:20px}.error-icon{animation:errorPulse 2s ease-in-out infinite;font-size:64px;line-height:1}@keyframes errorPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.error-title{color:#991b1b;font-size:24px;font-weight:700;margin:0 0 12px}.error-description{color:#7f1d1d;font-size:15px;line-height:1.6;margin:0 0 28px}.error-support{color:#9ca3af;font-size:13px;margin:24px 0 0}.error-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.error-btn{-webkit-tap-highlight-color:transparent;border:none;border-radius:10px;cursor:pointer;font-size:15px;font-weight:700;min-height:48px;padding:14px 20px;transition:all .2s;width:100%}.error-btn-primary{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #dc262640;color:#fff}.error-btn-primary:active{box-shadow:0 2px 6px #dc262633;transform:scale(.98)}.error-btn-secondary{background:#fff;border:2px solid #dc2626;color:#dc2626}.error-btn-secondary:active{background:#fef2f2;transform:scale(.98)}.error-details{margin-top:20px;text-align:left}.error-details-toggle{-webkit-tap-highlight-color:transparent;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;cursor:pointer;font-size:13px;font-weight:600;padding:12px;text-align:left;transition:all .2s;width:100%}.error-details-toggle:active{background:#fee2e2}.error-details-content{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-top:12px;max-height:300px;overflow-y:auto;padding:16px}.error-component-stack,.error-message,.error-stack{margin-bottom:16px}.error-component-stack:last-child,.error-message:last-child,.error-stack:last-child{margin-bottom:0}.error-details-content strong{color:#991b1b;display:block;font-size:12px;font-weight:700;margin-bottom:8px}.error-details-content pre{word-wrap:break-word;background:#fff;border:1px solid #fecaca;border-radius:6px;color:#7f1d1d;font-family:Monaco,Courier New,monospace;font-size:11px;line-height:1.5;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap}@media (min-width:768px){.error-content{padding:48px 40px}.error-title{font-size:28px}.error-description{font-size:16px}.error-actions{flex-direction:row;justify-content:center}.error-btn{min-width:160px;width:auto}.error-btn-primary:hover{box-shadow:0 6px 16px #dc26264d;transform:translateY(-2px)}.error-btn-secondary:hover{background:#fef2f2}.error-details-toggle:hover{background:#fee2e2}}.offline-indicator{animation:slideDown .3s ease-out;left:0;padding:calc(12px + env(safe-area-inset-top)) 16px 12px;position:fixed;right:0;top:0;z-index:9999}.offline-indicator.offline{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #dc26264d}.offline-indicator.online{animation:slideDown .3s ease-out,fadeOut .3s ease-in 2.7s forwards;background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 12px #10b9814d}.offline-content{align-items:center;display:flex;gap:12px;margin:0 auto;max-width:1200px}.offline-icon{flex-shrink:0;font-size:24px;line-height:1}.offline-text{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.offline-title{color:#fff;display:block;font-size:14px;font-weight:700}.offline-message{color:#ffffffe6;display:block;font-size:12px}.offline-retry-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s;width:36px}.offline-retry-btn:active{background:#fff3;transform:rotate(180deg)}.retry-icon{font-size:18px;line-height:1}@media (min-width:768px){.offline-indicator{padding:calc(14px + env(safe-area-inset-top)) 20px 14px}.offline-title{font-size:15px}.offline-message{font-size:13px}.offline-retry-btn:hover{background:#fff3;border-color:#ffffff80}.offline-retry-btn:active{transform:scale(.95) rotate(180deg)}}@media (prefers-reduced-motion:reduce){.offline-indicator{animation:none}.offline-indicator.online{animation:fadeOut .3s ease-in 2.7s forwards}.offline-retry-btn:active{transform:none}}@media (prefers-contrast:high){.offline-indicator.offline{background:#b91c1c;border:2px solid #fff}.offline-indicator.online{background:#059669;border:2px solid #fff}.offline-retry-btn{border-color:#fff}}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-drag:none;box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}html{-webkit-text-size-adjust:100%;background:#1d4ed8;scroll-behavior:smooth}body,html{overscroll-behavior:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;height:100dvh;height:-webkit-fill-available;margin:0;padding:0;position:fixed;width:100vw}[contenteditable=true],input,select,textarea{-webkit-touch-callout:default;font-size:16px;-webkit-user-select:text!important;user-select:text!important}a,button,label{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@supports (-webkit-touch-callout:none){body{height:-webkit-fill-available}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{height:100vh;height:100dvh;height:-webkit-fill-available;width:100vw}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.fade-in{animation:fadeIn .3s ease-in}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.transition-all{transition:all .2s ease-in-out}.transition-colors{transition:color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out}.transition-transform{transition:transform .2s ease-in-out}.transition-opacity{transition:opacity .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.fade-in{animation:fadeIn .3s ease-out}.fade-out{animation:fadeOut .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.slide-in-up{animation:slideInUp .3s ease-out}.slide-in-down{animation:slideInDown .3s ease-out}.slide-in-left{animation:slideInLeft .3s ease-out}.slide-in-right{animation:slideInRight .3s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.scale-in{animation:scaleIn .2s ease-out}.scale-out{animation:scaleOut .2s ease-out}.btn-press:active{transform:scale(.98)}@media (min-width:768px){.card-lift:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}}@keyframes ripple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(2)}}.ripple{overflow:hidden;position:relative}.ripple:after{background:#ffffff80;border-radius:50%;content:"";height:100%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);width:100%}.ripple:active:after{animation:ripple .6s ease-out}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.bounce{animation:bounce 1s ease-in-out infinite}.stagger-item{animation:slideInUp .3s ease-out;animation-fill-mode:both}.stagger-item:first-child{animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.stagger-item:nth-child(7){animation-delay:.3s}.stagger-item:nth-child(8){animation-delay:.35s}.stagger-item:nth-child(9){animation-delay:.4s}.stagger-item:nth-child(10){animation-delay:.45s}@keyframes successCheckmark{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@keyframes errorShake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}.success-checkmark{animation:successCheckmark .5s ease-out}.error-shake{animation:errorShake .5s ease-in-out}@keyframes copyPulse{0%{box-shadow:0 0 0 0 #3b82f680;transform:scale(1)}50%{box-shadow:0 0 0 8px #3b82f600;transform:scale(1.02)}to{box-shadow:0 0 0 0 #3b82f600;transform:scale(1)}}.focus-ring:focus-visible{border-radius:4px;outline:2px solid #3b82f6;outline-offset:2px}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pageExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.page-enter{animation:pageEnter .3s ease-out}.page-exit{animation:pageExit .3s ease-out}@keyframes modalBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalContentSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-backdrop-enter{animation:modalBackdropFadeIn .2s ease-out}.modal-content-enter{animation:modalContentSlideUp .3s ease-out}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fade-in,.fade-out,.scale-in,.scale-out,.slide-in-down,.slide-in-left,.slide-in-right,.slide-in-up,.stagger-item{animation:none}.btn-press:active,.card-lift:hover{transform:none}}.hidden{opacity:0;pointer-events:none}.visible{opacity:1;pointer-events:auto}.smooth-scroll{scroll-behavior:smooth}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.preload *{animation-duration:0s!important;transition-duration:0s!important}
/*# sourceMappingURL=main.5a76ecfb.css.map*/