.private-route-loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.private-route-loading-content{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.private-route-loading p{color:var(--muted);font-size:14px;margin:0}.private-route-spinner{width:40px;height:40px;border:3px solid var(--accent-soft-5);border-top-color:var(--purple);border-radius:50%;animation:private-route-spin .8s linear infinite}@keyframes private-route-spin{to{transform:rotate(360deg)}}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.3px;color:var(--text);font-size:clamp(1rem,1.6vw,1.15rem);flex-shrink:0;text-decoration:none}button.logo{background:none;border:none;padding:0;cursor:pointer;font:inherit}.logo-badge{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--purple-2),var(--purple));display:grid;place-items:center;box-shadow:0 8px 24px #7c5cff59;flex:0 0 auto}.logo-wave{width:18px;height:18px;border:2px solid var(--text-inverse);border-left-color:transparent;border-bottom-color:transparent;transform:rotate(45deg);opacity:.9}.logo-tag{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;font-size:11px;font-weight:600;color:var(--purple);border:1.5px solid var(--purple);border-radius:6px;letter-spacing:.5px;text-transform:lowercase;margin-left:-4px}.dashboard-layout{--sidebar-width-expanded: 250px;--sidebar-width-collapsed: 72px;--sidebar-width: var(--sidebar-width-expanded);--sidebar-inset-top: 20px;--sidebar-inset-left: 24px;--sidebar-inset-bottom: 20px;--sidebar-content-gap: 24px;--layout-glass-bg: var(--surface-overlay-stronger);--layout-glass-border: var(--line);--layout-glass-shadow: var(--shadow);--layout-control-bg: var(--surface-3);--layout-control-bg-hover: var(--surface-4);--layout-control-bg-active: var(--surface-5);--layout-control-border: var(--line);--layout-control-text: var(--text);--layout-control-muted: var(--text-muted-2);--layout-control-hover: rgba(166, 108, 255, .14);--layout-control-active: linear-gradient(135deg, var(--purple-2), var(--purple) 55%, var(--magenta));min-height:100vh;display:flex;flex-direction:column;background:transparent}.dashboard-layout.sidebar-collapsed{--sidebar-width: var(--sidebar-width-collapsed)}.dashboard-header{background:var(--surface-overlay);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line);height:64px;position:sticky;top:0;z-index:100}.header-content{max-width:100%;height:100%;padding:0 24px;display:flex;align-items:center;justify-content:flex-end}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--layout-control-bg);border:1px solid var(--layout-control-border);padding:0;cursor:pointer;color:var(--layout-control-text);border-radius:10px;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;flex-shrink:0}.sidebar-toggle:hover{background:var(--layout-control-bg-hover);border-color:var(--border-strong);color:var(--text);transform:translateY(-1px)}.sidebar-toggle:active{background:var(--layout-control-bg-active);transform:translateY(0)}.header-right{display:flex;align-items:center;gap:16px}.dashboard-container{flex:1;min-height:100vh}.dashboard-sidebar{position:fixed;top:var(--sidebar-inset-top);left:var(--sidebar-inset-left);bottom:var(--sidebar-inset-bottom);width:var(--sidebar-width);z-index:200;background:var(--layout-glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--layout-glass-border);border-radius:16px;box-shadow:var(--layout-glass-shadow);padding:16px 0;overflow:visible;display:flex;flex-direction:column;transition:width .25s ease,box-shadow .25s ease}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px 12px;margin:0 8px 4px;border-bottom:1px solid var(--line);min-height:40px;flex-shrink:0}.sidebar-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.sidebar-logo{min-width:0;font-size:clamp(.85rem,1.4vw,1rem)}.sidebar-logo .logo-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-toggle-inline{margin-left:0}.sidebar-footer{position:relative;display:flex;flex-direction:row;margin-top:auto;padding:12px;margin-left:8px;margin-right:8px;border-top:1px solid var(--line);justify-content:flex-end;flex-shrink:0;overflow:visible}.dashboard-settings{position:relative}.dashboard-settings-toggle{display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:0 14px;border:1px solid var(--layout-control-border);border-radius:12px;background:var(--layout-control-bg);color:var(--layout-control-text);font:inherit;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.dashboard-settings-toggle:hover{background:var(--layout-control-bg-hover);border-color:var(--border-strong);transform:translateY(-1px)}.dashboard-settings-toggle svg{width:16px;height:16px;flex-shrink:0}.dashboard-settings-panel{position:absolute;bottom:calc(100% + 10px);right:0;width:min(320px,calc(var(--sidebar-width) - 24px));padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--card-strong);box-shadow:var(--shadow);z-index:20;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.dashboard-settings-theme-toggle{display:inline-flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 14px;border:1px solid var(--layout-control-border);border-radius:12px;background:var(--layout-control-bg);color:var(--layout-control-text);font:inherit;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}.dashboard-settings-theme-toggle:hover{background:var(--layout-control-bg-hover);border-color:var(--border-strong);transform:translateY(-1px)}.dashboard-settings-theme-toggle svg{width:16px;height:16px;flex-shrink:0}.dashboard-settings-language{margin-top:12px}.dashboard-settings-language .language-selector,.dashboard-settings-language .language-selector-toggle{width:100%}.sidebar-nav{display:flex;flex-direction:column;gap:4px;padding:12px 8px 0;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;border-radius:10px;font-size:15px;font-weight:500;color:var(--layout-control-muted);cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease,padding .25s ease;text-align:left;font-family:inherit}.sidebar-nav-item:hover{background:var(--layout-control-hover);color:var(--text)}.sidebar-nav-item.active{background:var(--layout-control-active);color:var(--text-inverse);box-shadow:0 8px 24px #7b3cff47}.sidebar-nav-item.active:hover{background:var(--layout-control-active);color:var(--text-inverse)}.sidebar-nav-item svg{width:18px;height:18px;flex-shrink:0}.sidebar-nav-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:1;transition:opacity .2s ease}.sidebar-nav-section,.mobile-menu-section{padding:16px 16px 6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--layout-control-muted)}.mobile-menu-section{padding-top:12px}.dashboard-layout.sidebar-collapsed .sidebar-logo .logo-title,.dashboard-layout.sidebar-collapsed .sidebar-logo .logo-tag{display:none}.dashboard-layout.sidebar-collapsed .sidebar-header{flex-direction:column;justify-content:center;padding:0 8px 12px}.dashboard-layout.sidebar-collapsed .sidebar-header-actions{flex-direction:column}.dashboard-layout.sidebar-collapsed .sidebar-toggle-inline{margin-left:0}.dashboard-layout.sidebar-collapsed .dashboard-settings-toggle .dropdown-arrow{display:none}.dashboard-layout.sidebar-collapsed .dashboard-settings-toggle{width:auto;padding:8px;justify-content:center}.dashboard-layout.sidebar-collapsed .sidebar-footer{justify-content:center}.dashboard-layout.sidebar-collapsed .sidebar-nav{padding:12px 8px 0}.dashboard-layout.sidebar-collapsed .sidebar-nav-item{justify-content:center;gap:0;padding:12px}.dashboard-layout.sidebar-collapsed .sidebar-nav-section{padding:10px 8px 4px;font-size:0;line-height:0}.dashboard-layout.sidebar-collapsed .sidebar-nav-section:before{content:"";display:block;height:1px;background:var(--layout-control-border);margin:0 4px}.dashboard-layout.sidebar-collapsed .sidebar-nav-item span{display:none}.dashboard-layout.sidebar-collapsed .dashboard-settings-panel{right:auto;left:calc(100% + 12px);bottom:0;width:320px}.dashboard-content{margin-left:calc(var(--sidebar-inset-left) + var(--sidebar-width) + var(--sidebar-content-gap));padding:var(--sidebar-inset-top) 32px 32px 0;min-height:100vh;min-width:0;overflow-y:auto;transition:margin-left .25s ease}.dashboard-layout:has(.dashboard-header) .dashboard-sidebar{top:calc(64px + var(--sidebar-inset-top));bottom:var(--sidebar-inset-bottom)}.dashboard-layout:has(.dashboard-header) .dashboard-content{padding-top:calc(64px + var(--sidebar-inset-top))}.support-nav-item{border-top:1px solid var(--line);margin-top:8px;padding-top:16px!important}.support-nav-item:hover{background:#10b98124!important;color:#34d399!important}.dashboard-layout.sidebar-collapsed .support-nav-item{margin-top:8px;padding-top:12px!important}.dashboard-layout.mobile-layout{--mobile-topbar-inset-top: 16px;--mobile-topbar-inset-x: 16px;--mobile-topbar-height: 56px;--mobile-topbar-content-gap: 12px;--mobile-topbar-offset: calc( var(--mobile-topbar-inset-top) + var(--mobile-topbar-height) + var(--mobile-topbar-content-gap) );--sidebar-width: 0px;--sidebar-inset-left: 0px;--sidebar-inset-top: 0px;--sidebar-content-gap: 0px}.mobile-top-bar{position:fixed;top:var(--mobile-topbar-inset-top);left:var(--mobile-topbar-inset-x);right:var(--mobile-topbar-inset-x);z-index:300;height:var(--mobile-topbar-height);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;background:var(--layout-glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--layout-glass-border);border-radius:16px;box-shadow:var(--layout-glass-shadow)}.mobile-top-bar-logo{min-width:0;font-size:clamp(.9rem,3.8vw,1rem)}.mobile-top-bar-logo .logo-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;background:var(--layout-control-bg);border:1px solid var(--layout-control-border);border-radius:10px;padding:0;cursor:pointer;color:var(--text);transition:background .2s ease,border-color .2s ease}.mobile-menu-toggle:hover{background:var(--layout-control-bg-hover);border-color:var(--border-strong)}.mobile-menu-toggle svg{width:18px;height:18px}.mobile-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;border:none;padding:0;margin:0;background:#0000008c;cursor:pointer;animation:mobileMenuBackdropFadeIn .2s ease}.mobile-menu-panel{position:fixed;top:calc(var(--mobile-topbar-inset-top) + var(--mobile-topbar-height) + 8px);left:var(--mobile-topbar-inset-x);right:var(--mobile-topbar-inset-x);z-index:260;max-height:calc(100vh - var(--mobile-topbar-inset-top) - var(--mobile-topbar-height) - 8px - var(--mobile-topbar-inset-top));overflow-y:auto;background:var(--layout-glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--layout-glass-border);border-radius:16px;box-shadow:var(--layout-glass-shadow);animation:mobileMenuPanelSlideIn .22s ease}.mobile-menu-nav{display:flex;flex-direction:column;gap:4px;padding:12px 16px}.mobile-menu-item{display:flex;align-items:center;gap:12px;padding:14px 16px;background:none;border:none;border-radius:10px;font-size:16px;font-weight:500;color:var(--layout-control-muted);cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease;text-align:left;font-family:inherit}.mobile-menu-item:hover{background:var(--layout-control-hover);color:var(--text)}.mobile-menu-item.active{background:var(--layout-control-active);color:var(--text-inverse);box-shadow:0 8px 24px #7b3cff47}.mobile-menu-item.active:hover{background:var(--layout-control-active);color:var(--text-inverse)}.mobile-menu-item svg{width:18px;height:18px;flex-shrink:0}.mobile-menu-footer{padding:12px 16px 16px;border-top:1px solid var(--line)}.mobile-menu-footer-actions{position:relative;padding:12px 16px 16px;border-top:1px solid var(--line);overflow:visible}.mobile-menu-footer-actions .dashboard-settings,.mobile-menu-footer-actions .dashboard-settings-toggle{width:100%}.mobile-menu-footer-actions .dashboard-settings-panel{left:0;right:0;width:auto}.mobile-menu-footer-actions .dashboard-settings-language .language-selector-toggle{width:100%}.dashboard-layout.mobile-layout .dashboard-content{margin-left:0;padding:var(--mobile-topbar-offset) var(--mobile-topbar-inset-x) 16px;min-height:100vh}.dashboard-layout.mobile-layout:has(.dashboard-header) .dashboard-content{padding-top:var(--mobile-topbar-offset)}@keyframes mobileMenuBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes mobileMenuPanelSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.header-content{padding:0 16px}}.language-selector{position:relative}.language-selector--embedded{width:100%}.language-selector-toggle{background:var(--surface-4);border:1px solid var(--line);border-radius:10px;padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.language-selector-toggle:hover{border-color:var(--accent-ring-6);background:var(--accent-soft-2);box-shadow:0 0 0 3px var(--accent-soft-3)}.current-lang{font-size:20px;line-height:1}.dropdown-arrow{font-size:10px;color:var(--soft)}.language-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--card-strong);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-width:180px;z-index:1000;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.language-selector--embedded .language-selector-toggle{width:100%;justify-content:space-between}.language-selector--embedded .language-dropdown{position:static;top:auto;right:auto;width:100%;min-width:0;margin-top:8px;box-shadow:none}.language-option{width:100%;padding:12px 16px;border:none;background:transparent;text-align:left;cursor:pointer;display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text);transition:background-color .18s ease}.language-option:hover{background:var(--accent-soft-3)}.language-option.active{background:var(--accent-alt-2)}.lang-flag{font-size:20px;line-height:1}.lang-name{flex:1;color:var(--text)}.checkmark{color:var(--purple);font-weight:700}.oauth-callback-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px}.oauth-callback-content{width:100%;max-width:480px;text-align:center}.oauth-callback-content .logo{display:inline-flex;margin-bottom:32px;font-size:18px}.oauth-callback-card{padding:clamp(1.5rem,3vw,2rem)}.oauth-callback-page{min-height:auto!important;padding:0;gap:20px!important}.oauth-callback-page:before{content:"";width:36px;height:36px;border:3px solid var(--line);border-top-color:var(--purple);border-radius:50%;animation:oauth-callback-spin .8s linear infinite}.oauth-callback-page p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}@keyframes oauth-callback-spin{to{transform:rotate(360deg)}}@media (max-width: 520px){.oauth-callback-container{padding:20px}}@media (prefers-reduced-motion: reduce){.oauth-callback-page:before{animation:none;border-top-color:var(--purple);opacity:.85}}.google-signin-btn-wrap{width:100%}.google-signin-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:44px;padding:0 16px;border:1px solid var(--line, rgba(255, 255, 255, .14));border-radius:10px;background:#ffffff0f;color:var(--text, #ffffff);font-family:inherit;font-size:15px;font-weight:600;line-height:1.2;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease;box-sizing:border-box}.google-signin-btn:hover:not(:disabled){background:#ffffff1a;border-color:var(--line-strong, rgba(255, 255, 255, .24))}.google-signin-btn:active:not(:disabled){transform:scale(.99)}.google-signin-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring, rgba(166, 108, 255, .45))}.google-signin-btn:disabled{opacity:.55;cursor:not-allowed}.google-signin-btn__icon{flex-shrink:0;width:20px;height:20px}.google-signin-btn__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(1.5rem,5vw,3rem) clamp(1.25rem,4vw,2rem)}.auth-page__panel{width:100%;max-width:400px}.auth-page__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:clamp(2rem,6vw,3rem)}.auth-page__header-extra{flex-shrink:0}.auth-page__title{margin:0 0 8px;font-size:clamp(1.625rem,4vw,1.875rem);font-weight:700;letter-spacing:-.03em;line-height:1.15;color:var(--text)}.auth-page__subtitle{margin:0 0 28px;font-size:15px;line-height:1.55;color:var(--muted)}.auth-page__error{margin-bottom:20px;padding:12px 14px;border-radius:10px;border:1px solid rgba(220,38,38,.3);background:#dc26261f;color:#fca5a5;font-size:14px;line-height:1.45}.auth-page__sso{display:flex;flex-direction:column;gap:10px}.auth-page__divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--soft);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.auth-page__divider:before,.auth-page__divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-page__form{display:flex;flex-direction:column;gap:16px}.auth-form-group{display:flex;flex-direction:column;gap:8px}.auth-form-group label{font-size:14px;font-weight:600;color:var(--text-muted-strong)}.auth-form-group .input{min-height:44px;border-radius:10px}.auth-form-actions{display:flex;justify-content:flex-end}.auth-form-actions a{font-size:14px;font-weight:600;color:var(--purple);transition:color .16s ease}.auth-form-actions a:hover{color:var(--magenta)}.auth-password-wrapper{position:relative;display:flex;align-items:center}.auth-password-wrapper .input{padding-right:44px}.auth-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;padding:6px;border:none;border-radius:6px;background:none;color:var(--soft);cursor:pointer;transition:color .15s ease}.auth-password-toggle:hover:not(:disabled){color:var(--text)}.auth-password-toggle:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ring)}.auth-password-toggle:disabled{cursor:not-allowed;opacity:.6}.auth-page__form .btn[type=submit]{width:100%;min-height:44px;margin-top:4px;border-radius:10px;font-weight:700}.auth-page__footer{margin-top:28px;text-align:center;font-size:14px;color:var(--muted)}.auth-page__footer a{color:var(--purple);font-weight:600;transition:color .16s ease}.auth-page__footer a:hover{color:var(--magenta)}.auth-page__legal{margin-top:32px;text-align:center;font-size:12px;line-height:1.55;color:var(--soft)}.auth-page__legal a{color:var(--muted);font-weight:500;text-decoration:underline;text-underline-offset:2px;transition:color .16s ease}.auth-page__legal a:hover{color:var(--text)}.auth-page__info{margin-top:24px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);font-size:13px;line-height:1.6;color:var(--muted);text-align:center}.auth-page__info p{margin:0 0 8px}.auth-page__info p:last-child{margin-bottom:0}.auth-page__info strong{color:var(--text);font-weight:700}.auth-secondary-link{display:inline;padding:0;border:none;background:none;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}.auth-secondary-link:hover:not(:disabled){color:var(--purple)}.auth-secondary-link:disabled{cursor:not-allowed;opacity:.6}.auth-referral-section{margin-bottom:20px}.auth-referral-section .auth-secondary-link-wrap{margin:0;text-align:right}.auth-referral-field-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.auth-referral-benefit{display:flex;align-items:center;gap:8px;margin-top:8px;padding:10px 14px;border:1px solid rgba(5,150,105,.3);border-radius:10px;background:#0596691f;color:#6ee7b7;font-size:13px;font-weight:500}@media (max-width: 480px){.auth-page__header{margin-bottom:2rem}.auth-page__title{font-size:1.5rem}}.turnstile-wrapper{margin:20px 0;min-height:65px;display:flex;flex-direction:column;align-items:center;justify-content:center}.turnstile-container{display:flex;justify-content:center;width:100%}.turnstile-loading{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}.turnstile-error{background:var(--danger-bg-2);border:1px solid var(--danger-border-1);border-radius:14px;padding:12px 16px;color:var(--danger);font-size:14px;text-align:center}.spinner-small{width:16px;height:16px;border:2px solid var(--border-subtle);border-top:2px solid var(--purple);border-radius:50%;animation:spin 1s linear infinite}.driver-signup-page .auth-page__panel,.driver-login-page .auth-page__panel{max-width:min(480px,100%)}.driver-signup-page .auth-page__subtitle,.driver-login-page .auth-page__subtitle{margin-bottom:24px}.driver-signup-page__layout{display:flex;flex-direction:column;gap:0}.driver-signup-page__quick{display:flex;flex-direction:column;gap:12px}.driver-signup-page .auth-page__divider,.driver-login-page .auth-page__divider{margin:20px 0 18px}.driver-signup-page__email-heading{margin:0 0 16px;font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--text)}.verification-content{display:flex;flex-direction:column;gap:24px}.verification-code-input{text-align:center;font-size:24px;letter-spacing:8px;font-weight:600;font-family:monospace}.email-display{text-align:center;padding:16px;background:var(--surface-3);border-radius:14px;border:1px solid var(--line);margin-bottom:20px}.email-display p{margin:0 0 8px;color:var(--muted);font-size:14px}.email-display strong{color:var(--text);font-size:16px;word-break:break-word}.verification-instructions{padding:0;margin-bottom:20px}.verification-instructions h3{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text)}.verification-instructions p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.verification-note{padding:12px 16px;background:var(--accent-alt-1);border-radius:14px;border:1px solid var(--accent-soft-4);margin-bottom:20px}.verification-note p{margin:0;font-size:14px;line-height:1.5;color:var(--muted)}.verification-note strong{color:var(--purple)}.verification-actions{display:flex;flex-direction:column;gap:0;margin-top:8px}.btn-link{background:none;border:none;color:var(--purple);cursor:pointer;font-size:14px;font-weight:600;padding:8px;transition:color .2s ease}.btn-link:hover{color:var(--magenta);text-decoration:underline}.verification-actions .success-message{margin-bottom:16px}.token-instructions{margin-top:16px}.info-box{background:var(--accent-alt-1);border:1px solid var(--accent-soft-4);border-radius:14px;padding:16px;text-align:left}.info-box strong{color:var(--purple);display:block;margin-bottom:8px;font-size:14px}.info-box p{color:var(--muted);font-size:13px;line-height:1.5;margin:0}.auth-secondary-link-wrap--center{margin:0;text-align:center}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px}.login-content{width:100%;max-width:480px}.login-header{text-align:center;margin-bottom:24px}.login-header-top{display:flex;justify-content:space-between;align-items:center}.login-header .logo{display:inline-flex;font-size:18px}.login-card{margin-bottom:24px}.login-card h1{font-size:clamp(1.8rem,4vw,2.4rem);margin:0 0 12px;letter-spacing:-.02em;color:var(--text);font-weight:800;text-align:center}.login-card .login-subtitle{color:var(--muted);font-size:15px;line-height:1.6;margin:0 0 24px;text-align:center}.login-footer{margin-top:24px;padding-top:24px;border-top:1px solid var(--line);text-align:center;font-size:14px;color:var(--muted)}.link-accent{color:var(--purple);font-weight:600;transition:color .2s ease}.login-info{text-align:center;padding:20px;background:var(--surface-3);border:1px solid var(--line);border-radius:14px;font-size:13px;color:var(--muted);line-height:1.6}.login-info p{margin:0 0 8px}.login-info p:last-child{margin-bottom:0}.login-info strong{color:var(--text);font-weight:700}.auth-sso-primary{display:flex;flex-direction:column;gap:12px}.auth-email-section{display:flex;flex-direction:column}.auth-form-section-label{margin:0 0 20px;font-size:15px;font-weight:700;color:var(--text);text-align:center}.auth-secondary-option{margin:16px 0 0;text-align:center}.auth-email-toggle{display:inline;padding:0;background:none;border:none;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color .2s ease}.auth-email-toggle:hover:not(:disabled){color:var(--purple)}.auth-email-toggle:disabled{cursor:not-allowed;opacity:.6}.login-card .btn[type=submit]{width:100%}@media (max-width: 520px){.login-container{padding:20px}.login-card{padding:24px}.login-card h1{font-size:1.6rem}}.token-input{font-family:monospace;letter-spacing:2px;font-size:18px;text-align:center}.input-hint{color:var(--soft);font-size:12px;margin-top:6px;margin-bottom:0}.login-footer{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.separator{color:var(--soft)}.success-message{text-align:center;padding:20px 0}.success-icon{width:64px;height:64px;margin:0 auto 20px;background:linear-gradient(135deg,var(--purple-2),var(--purple) 55%,var(--magenta));border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;color:var(--text-inverse);font-weight:700;box-shadow:0 22px 55px var(--accent-shadow-4)}.success-message p{color:var(--muted);font-size:15px;line-height:1.6;margin:0 0 16px}.success-message p:last-child{margin-bottom:0}.dashboard-page{max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:28px}.dashboard-hero{padding:8px 0 4px}.dashboard-eyebrow{margin:0 0 12px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--purple)}.dashboard-title{margin:0 0 12px;font-size:clamp(1.75rem,4vw,2.35rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;background:linear-gradient(135deg,#fff 20%,var(--purple) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.dashboard-email{margin:0 0 14px;font-size:14px;color:var(--muted)}.dashboard-email strong,.dashboard-email .email{color:var(--text);font-weight:600}.dashboard-lead{margin:0;font-size:1.05rem;line-height:1.65;color:var(--muted);max-width:34rem}.dashboard-download{padding:28px 24px;border-radius:20px;border:1px solid var(--line);background:radial-gradient(circle at 90% 0%,rgba(255,123,83,.14),transparent 42%),radial-gradient(circle at 10% 100%,rgba(166,108,255,.16),transparent 46%),var(--card);box-shadow:var(--shadow);text-align:center}.dashboard-download h2{margin:0 0 10px;font-size:1.25rem;font-weight:750;letter-spacing:-.02em;color:var(--text)}.dashboard-download>p{margin:0 0 22px;font-size:.98rem;line-height:1.6;color:var(--muted)}.store-badges{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.play-badge-link,.app-store-badge-link{display:inline-block;text-decoration:none;border-radius:10px;padding:4px;border:1px solid transparent;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.play-badge-link:hover,.app-store-badge-link:hover{transform:translateY(-2px) scale(1.03);border-color:var(--accent-ring-5);box-shadow:0 12px 32px var(--accent-shadow-alt-1)}.play-badge-link img,.app-store-badge-link img{height:48px;width:auto;display:block;border-radius:8px}.dashboard-steps h2{margin:0 0 16px;font-size:1.05rem;font-weight:750;letter-spacing:-.01em;color:var(--text)}.dashboard-steps-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.dashboard-step{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding:16px 18px;border-radius:16px;border:1px solid var(--line);background:var(--surface-2)}.dashboard-step-num{font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--purple);padding-top:2px}.dashboard-step h3{margin:0 0 4px;font-size:.98rem;font-weight:700;color:var(--text)}.dashboard-step p{margin:0;font-size:.9rem;line-height:1.55;color:var(--muted)}.dashboard-portal-note{margin:0;font-size:13px;line-height:1.55;color:var(--soft)}.dashboard-portal-note a{color:var(--purple);font-weight:600;text-decoration:none}.dashboard-portal-note a:hover{color:var(--magenta);text-decoration:underline;text-underline-offset:2px}@media (max-width: 640px){.dashboard-page{gap:22px}.dashboard-download{padding:24px 18px}.play-badge-link img,.app-store-badge-link img{height:44px}}@media (prefers-reduced-motion: reduce){.play-badge-link,.app-store-badge-link{transition:none}.play-badge-link:hover,.app-store-badge-link:hover{transform:none}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--surface-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:settingsModalFadeIn .2s ease;padding:20px}@keyframes settingsModalFadeIn{0%{opacity:0}to{opacity:1}}.modal-container,.modal-content{background:var(--card-strong);border:1px solid var(--line);border-radius:var(--radius);max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);animation:settingsModalSlideUp .3s ease}@keyframes settingsModalSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-size:20px;color:var(--text);font-weight:700;letter-spacing:-.02em}.modal-close{background:none;border:none;padding:8px;cursor:pointer;color:var(--muted);border-radius:10px;transition:background .16s ease,color .16s ease;display:flex;align-items:center;justify-content:center}.modal-close:hover:not(:disabled){background:var(--surface-6);color:var(--text)}.modal-close:disabled{cursor:not-allowed;opacity:.5}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-body .form-group{margin-bottom:20px}.modal-body .form-group:last-child{margin-bottom:0}.modal-body .form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-muted-strong);font-size:14px}.modal-body .form-group input,.modal-body .form-group select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:14px;font-size:14px;font-family:inherit;color:var(--text);background:var(--surface-3);transition:border-color .16s ease,box-shadow .16s ease}.modal-body .form-group input::placeholder{color:var(--soft)}.modal-body .form-group input:focus,.modal-body .form-group select:focus{outline:none;border-color:var(--accent-ring-7);box-shadow:0 0 0 3px var(--accent-soft-5)}.modal-body .form-group select option{background:var(--bg-2);color:var(--text)}.modal-body .error-message{padding:12px 16px;background:var(--danger-bg-2);border:1px solid var(--danger-border-1);border-radius:14px;color:var(--danger);margin-bottom:20px;font-size:14px}.modal-footer,.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--line)}.modal-footer button,.modal-actions .btn{min-width:100px}@media (max-width: 768px){.modal-overlay{padding:0;align-items:flex-end}.modal-container,.modal-content{max-width:100%;max-height:95vh;border-radius:var(--radius) var(--radius) 0 0;animation:settingsModalSlideUpMobile .3s ease}@keyframes settingsModalSlideUpMobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header,.modal-body{padding:20px}.modal-footer,.modal-actions{padding:16px 20px;flex-direction:column-reverse}.modal-footer button,.modal-actions .btn{width:100%}}.change-password-modal{max-width:500px}.change-password-modal .modal-body{padding:1.5rem}.change-password-modal .form-group{margin-bottom:1.5rem}.change-password-modal .form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--text-muted-strong);font-size:14px}.change-password-modal .password-input-wrapper{position:relative;display:flex;align-items:center}.change-password-modal .form-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid var(--line);border-radius:14px;font-size:1rem;color:var(--text);background:var(--surface-3);transition:border-color .16s ease,box-shadow .16s ease}.change-password-modal .form-input::placeholder{color:var(--soft)}.change-password-modal .form-input:focus{outline:none;border-color:var(--accent-ring-7);box-shadow:0 0 0 3px var(--accent-soft-5)}.change-password-modal .form-input:disabled{background:var(--surface-1);cursor:not-allowed;opacity:.6}.change-password-modal .password-toggle{position:absolute;right:.75rem;background:none;border:none;color:var(--muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .16s ease}.change-password-modal .password-toggle:hover:not(:disabled){color:var(--purple)}.change-password-modal .password-toggle:disabled{cursor:not-allowed;opacity:.5}.change-password-modal .password-requirements{font-size:.875rem;color:var(--muted);margin-top:1rem;padding:.75rem 1rem;background:var(--accent-soft-3);border-radius:14px;border-left:3px solid var(--purple)}.change-password-modal .error-message{padding:.75rem 1rem;background:var(--danger-bg-2);border:1px solid var(--danger-border-1);border-radius:14px;color:var(--danger);margin-bottom:1rem;font-size:.875rem}.change-password-modal .modal-actions{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid var(--line)}.change-password-modal .modal-actions .btn{padding:.625rem 1.25rem;min-width:100px}.delete-account-modal{max-width:520px}.warning-box{display:flex;gap:16px;padding:16px;background:var(--danger-bg-2);border:1px solid var(--danger-border-1);border-radius:14px;margin-bottom:20px}.warning-icon{font-size:24px;flex-shrink:0;color:var(--danger-strong)}.warning-box strong{display:block;color:var(--danger);margin-bottom:4px;font-size:15px}.warning-box p{margin:0;color:var(--danger-text-soft);font-size:14px;line-height:1.5}.delete-consequences{margin-bottom:24px}.delete-consequences h3{font-size:14px;font-weight:600;color:var(--text);margin:0 0 12px}.delete-consequences ul{margin:0;padding-left:20px;list-style-type:disc}.delete-consequences li{font-size:14px;color:var(--muted);margin-bottom:6px;line-height:1.5}.confirm-input-group{margin-bottom:0}.confirm-input-group label{display:block;font-size:14px;color:var(--text);margin-bottom:8px}.confirm-input-group strong{color:var(--danger-strong);font-weight:700}.confirm-input-group input{width:100%;padding:10px 14px;border:1px solid var(--danger-border-2);border-radius:14px;font-size:14px;font-family:monospace;font-weight:600;color:var(--text);background:var(--surface-3);transition:border-color .16s ease,box-shadow .16s ease}.confirm-input-group input::placeholder{color:var(--soft)}.confirm-input-group input:focus{outline:none;border-color:var(--danger-border-4);box-shadow:0 0 0 3px var(--danger-bg-2)}.confirm-input-group input:disabled{background:var(--surface-1);cursor:not-allowed;opacity:.6}.settings-page{max-width:900px;margin:0 auto}.page-header{margin-bottom:32px}.page-header h1{font-size:28px;font-weight:700;margin:0 0 8px;color:var(--text)}.page-subtitle{font-size:16px;color:var(--muted);margin:0}.settings-section{margin-bottom:40px}.settings-section h2{font-size:20px;font-weight:600;color:var(--text);margin:0 0 16px}.settings-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}.settings-card:hover{border-color:var(--line-strong)}.settings-card-header{padding:20px 24px;border-bottom:1px solid var(--line)}.settings-card-header h2{font-size:20px;font-weight:600;margin:0;color:var(--text)}.settings-card-body{padding:0}.settings-item{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line);gap:20px}.settings-item:last-child{border-bottom:none}.settings-item-info h3{font-size:15px;font-weight:600;margin:0 0 4px;color:var(--text)}.settings-item-info p{font-size:13px;color:var(--soft);margin:0}.toggle-switch{position:relative;display:inline-block;width:48px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:28px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:var(--text-inverse);transition:.3s;border-radius:50%}input:checked+.toggle-slider{background:linear-gradient(135deg,var(--purple-2),var(--purple));box-shadow:0 4px 16px var(--accent-shadow-alt-2)}input:checked+.toggle-slider:before{transform:translate(20px)}.danger-zone-title{font-size:20px;font-weight:600;margin:0 0 16px;color:var(--text)}.settings-card.danger{border:1px solid var(--danger-border-2);background:var(--danger-bg-1)}.settings-card.danger:hover{border-color:var(--danger-border-3)}.danger-item{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--danger-border-soft);gap:20px}.danger-item:last-child{border-bottom:none}.setting-label{font-size:15px;font-weight:600;margin:0 0 4px;color:var(--text)}.setting-description{font-size:13px;color:var(--soft);margin:0}.btn-danger{background:linear-gradient(135deg,var(--danger-strong),var(--danger-950));color:var(--text-inverse);border:none;padding:8px 16px;border-radius:999px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;box-shadow:0 8px 24px var(--danger-border-1)}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 12px 32px var(--danger-border-3)}@media (max-width: 768px){.settings-item{flex-direction:column;align-items:flex-start}.settings-item .btn{width:100%}.danger-item{flex-direction:column;align-items:flex-start}.danger-item .btn{width:100%}.toggle-switch{align-self:flex-end}}:root{color-scheme:dark;--bg: #05070d;--bg-2: #0a0d17;--bg-soft: #0a0d17;--surface: rgba(14, 16, 25, .72);--surface-strong: rgba(24, 25, 34, .88);--surface-overlay: rgba(5, 7, 13, .78);--surface-overlay-strong: rgba(5, 7, 13, .82);--surface-overlay-stronger: rgba(5, 7, 13, .92);--surface-1: rgba(255, 255, 255, .02);--surface-2: rgba(255, 255, 255, .03);--surface-3: rgba(255, 255, 255, .04);--surface-4: rgba(255, 255, 255, .06);--surface-5: rgba(255, 255, 255, .07);--surface-6: rgba(255, 255, 255, .08);--surface-7: rgba(255, 255, 255, .1);--surface-8: rgba(255, 255, 255, .88);--text: #ffffff;--text-inverse: #ffffff;--text-muted-strong: rgba(255, 255, 255, .86);--text-muted-2: rgba(255, 255, 255, .82);--text-muted: rgba(255, 255, 255, .72);--text-soft: rgba(255, 255, 255, .54);--border-subtle: rgba(255, 255, 255, .12);--border: rgba(255, 255, 255, .14);--border-strong: rgba(255, 255, 255, .18);--border-stronger: rgba(255, 255, 255, .24);--border-heavy: rgba(255, 255, 255, .2);--purple: #a66cff;--purple-2: #7c3cff;--magenta: #e052ff;--orange: #ff7b53;--accent: #a66cff;--accent-2: #7c3cff;--selection-bg: rgba(166, 108, 255, .65);--accent-alt-1: rgba(124, 60, 255, .12);--accent-alt-2: rgba(124, 60, 255, .16);--accent-ring-1: rgba(166, 108, 255, .1);--accent-ring-2: rgba(166, 108, 255, .15);--accent-ring-3: rgba(166, 108, 255, .25);--accent-ring-4: rgba(166, 108, 255, .3);--accent-ring-5: rgba(166, 108, 255, .35);--accent-ring-6: rgba(166, 108, 255, .45);--accent-ring-7: rgba(166, 108, 255, .55);--accent-soft-1: rgba(166, 108, 255, .06);--accent-soft-2: rgba(166, 108, 255, .08);--accent-soft-3: rgba(166, 108, 255, .1);--accent-soft-4: rgba(166, 108, 255, .12);--accent-soft-5: rgba(166, 108, 255, .15);--accent-soft-6: rgba(166, 108, 255, .2);--accent-soft-7: rgba(166, 108, 255, .35);--accent-shadow-1: rgba(123, 60, 255, .12);--accent-shadow-2: rgba(123, 60, 255, .18);--accent-shadow-3: rgba(123, 60, 255, .28);--accent-shadow-4: rgba(123, 60, 255, .34);--accent-shadow-5: rgba(123, 60, 255, .36);--accent-shadow-6: rgba(123, 60, 255, .42);--accent-shadow-alt-1: rgba(124, 92, 255, .28);--accent-shadow-alt-2: rgba(124, 92, 255, .35);--danger: #fca5a5;--danger-strong: #f87171;--danger-text-soft: rgba(252, 165, 165, .85);--danger-bg-1: rgba(220, 38, 38, .04);--danger-bg-2: rgba(220, 38, 38, .12);--danger-border-soft: rgba(220, 38, 38, .2);--danger-border-1: rgba(220, 38, 38, .3);--danger-border-2: rgba(220, 38, 38, .35);--danger-border-3: rgba(220, 38, 38, .5);--danger-border-4: rgba(220, 38, 38, .55);--danger-border-5: rgba(220, 38, 38, .62);--danger-950: #b91c1c;--success: #6ee7b7;--success-soft: rgba(5, 150, 105, .12);--success-bg-1: rgba(5, 150, 105, .12);--success-bg-2: rgba(5, 150, 105, .18);--success-bg-3: rgba(5, 150, 105, .22);--success-border-1: rgba(5, 150, 105, .3);--success-border-2: rgba(5, 150, 105, .35);--success-border-3: rgba(5, 150, 105, .4);--success-shadow-1: rgba(5, 150, 105, .28);--success-shadow-2: rgba(5, 150, 105, .36);--warning: #fcd34d;--warning-2: #fbbf24;--warning-soft: rgba(245, 158, 11, .14);--warning-bg-1: rgba(245, 158, 11, .18);--warning-bg-2: rgba(217, 119, 6, .18);--warning-bg-3: rgba(245, 158, 11, .22);--warning-border-1: rgba(245, 158, 11, .35);--warning-border-2: rgba(217, 119, 6, .35);--info: #fdba74;--info-bg: rgba(255, 123, 83, .18);--info-border: rgba(255, 123, 83, .35);--cyan: #67e8f9;--cyan-bg: rgba(6, 182, 212, .18);--cyan-border: rgba(6, 182, 212, .35);--cyan-border-2: rgba(6, 182, 212, .55);--sky: #7dd3fc;--sky-bg: rgba(14, 165, 233, .18);--sky-border: rgba(14, 165, 233, .35);--blue: #93c5fd;--blue-bg: rgba(59, 130, 246, .18);--blue-border: rgba(59, 130, 246, .35);--green-bg: #ecfdf5;--green-border: #86efac;--green-text: #166534;--green: #10b981;--overlay-dark-65: rgba(0, 0, 0, .65);--overlay-dark-45: rgba(5, 7, 13, .45);--overlay-dark-35: rgba(0, 0, 0, .35);--overlay-dark-32: rgba(0, 0, 0, .32);--overlay-dark-28: rgba(0, 0, 0, .28);--overlay-dark-48: rgba(0, 0, 0, .48);--map-bg: #eef1f5;--map-text: #5c6570;--map-surface: rgba(255, 255, 255, .88);--muted: var(--text-muted);--soft: var(--text-soft);--line: var(--border);--line-strong: var(--border-strong);--card: var(--surface);--card-strong: var(--surface-strong);--ring: var(--accent-ring-7);--maxw: 1180px;--radius: 28px;--shadow: 0 0px 0px rgba(0, 0, 0, .48)}:root[data-theme=light]{color-scheme:light;--bg: #f5f7fb;--bg-2: #eef2f8;--bg-soft: #f7f9fc;--surface: rgba(255, 255, 255, .8);--surface-strong: rgba(255, 255, 255, .92);--surface-overlay: rgba(255, 255, 255, .82);--surface-overlay-strong: rgba(255, 255, 255, .92);--surface-overlay-stronger: rgba(255, 255, 255, .96);--surface-1: rgba(15, 23, 42, .02);--surface-2: rgba(15, 23, 42, .04);--surface-3: rgba(15, 23, 42, .05);--surface-4: rgba(15, 23, 42, .07);--surface-5: rgba(15, 23, 42, .09);--surface-6: rgba(15, 23, 42, .11);--surface-7: rgba(15, 23, 42, .14);--surface-8: rgba(15, 23, 42, .9);--text: #0f172a;--text-inverse: #ffffff;--text-muted-strong: rgba(15, 23, 42, .84);--text-muted-2: rgba(15, 23, 42, .72);--text-muted: rgba(15, 23, 42, .64);--text-soft: rgba(15, 23, 42, .5);--border-subtle: rgba(15, 23, 42, .08);--border: rgba(15, 23, 42, .1);--border-strong: rgba(15, 23, 42, .14);--border-stronger: rgba(15, 23, 42, .18);--border-heavy: rgba(15, 23, 42, .16);--selection-bg: rgba(124, 60, 255, .22);--danger-text-soft: rgba(185, 28, 28, .88);--danger-bg-1: rgba(239, 68, 68, .08);--danger-bg-2: rgba(239, 68, 68, .12);--danger-border-soft: rgba(239, 68, 68, .16);--danger-border-1: rgba(239, 68, 68, .2);--danger-border-2: rgba(239, 68, 68, .24);--danger-border-3: rgba(239, 68, 68, .3);--danger-border-4: rgba(239, 68, 68, .38);--danger-border-5: rgba(185, 28, 28, .52);--success: #059669;--success-soft: rgba(5, 150, 105, .14);--success-bg-1: rgba(5, 150, 105, .1);--success-bg-2: rgba(5, 150, 105, .14);--success-bg-3: rgba(5, 150, 105, .18);--success-border-1: rgba(5, 150, 105, .2);--success-border-2: rgba(5, 150, 105, .28);--success-border-3: rgba(5, 150, 105, .34);--success-shadow-1: rgba(5, 150, 105, .18);--success-shadow-2: rgba(5, 150, 105, .26);--warning: #d97706;--warning-2: #f59e0b;--warning-soft: rgba(245, 158, 11, .14);--warning-bg-1: rgba(245, 158, 11, .12);--warning-bg-2: rgba(245, 158, 11, .16);--warning-bg-3: rgba(245, 158, 11, .2);--warning-border-1: rgba(245, 158, 11, .2);--warning-border-2: rgba(245, 158, 11, .28);--info: #c2410c;--info-bg: rgba(255, 123, 83, .12);--info-border: rgba(255, 123, 83, .24);--cyan: #0891b2;--cyan-bg: rgba(6, 182, 212, .12);--cyan-border: rgba(6, 182, 212, .24);--cyan-border-2: rgba(6, 182, 212, .36);--sky: #0284c7;--sky-bg: rgba(14, 165, 233, .12);--sky-border: rgba(14, 165, 233, .24);--blue: #2563eb;--blue-bg: rgba(59, 130, 246, .12);--blue-border: rgba(59, 130, 246, .24);--green-bg: rgba(236, 253, 245, .88);--green-border: #86efac;--green-text: #166534;--green: #10b981;--overlay-dark-65: rgba(15, 23, 42, .1);--overlay-dark-45: rgba(15, 23, 42, .08);--overlay-dark-35: rgba(15, 23, 42, .06);--overlay-dark-32: rgba(15, 23, 42, .06);--overlay-dark-28: rgba(15, 23, 42, .05);--overlay-dark-48: rgba(15, 23, 42, .08);--map-bg: #e8edf5;--map-text: #667085;--map-surface: rgba(255, 255, 255, .92);--shadow: 0 0px 0px rgba(15, 23, 42, .12)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html{scroll-behavior:smooth;background:var(--bg);-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body::selection{color:var(--text-inverse);background:var(--selection-bg)}#root{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:3.1rem;padding:.9rem 1.5rem;border:1px solid var(--border-strong);border-radius:999px;font-weight:800;letter-spacing:-.02em;color:var(--text-inverse);background:var(--surface-6);box-shadow:0 18px 42px #0000002e;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease;font-family:inherit;font-size:15px}.btn:hover{transform:translateY(-2px);border-color:var(--border-heavy)}.btn-primary{border:0;background:linear-gradient(135deg,var(--purple-2),var(--purple) 55%,var(--magenta));box-shadow:0 22px 55px var(--accent-shadow-4)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 26px 60px var(--accent-shadow-6)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-danger{border:0;background:linear-gradient(135deg,var(--danger-strong),var(--danger));box-shadow:0 18px 42px var(--danger-border-1)}.btn-danger:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-outline{background:var(--surface-4);color:var(--text);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.btn-outline:hover{transform:translateY(-2px);border-color:var(--line-strong)}.btn-sm{min-height:2.25rem;padding:.5rem 1rem;font-size:13px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;font-size:14px;color:var(--text-muted-strong)}.input{width:100%;padding:.85rem 1.1rem;border-radius:14px;background:var(--surface-3);border:1px solid var(--line);color:var(--text);outline:none;font-family:inherit;font-size:15px;transition:border-color .16s ease,box-shadow .16s ease}.input::placeholder{color:var(--soft)}.input:focus{border-color:var(--accent-ring-7);box-shadow:0 0 0 3px var(--accent-soft-5)}select.input,select{background:var(--surface-3);border:1px solid var(--line);color:var(--text);border-radius:14px;padding:.85rem 1.1rem}textarea.input,textarea{background:var(--surface-3);border:1px solid var(--line);color:var(--text);border-radius:14px;padding:.85rem 1.1rem;resize:vertical}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.5rem,3vw,2rem)}.link-accent{color:var(--purple);font-weight:600;transition:color .16s ease}.link-accent:hover{color:var(--magenta)}.gradient-text{color:transparent;background:linear-gradient(105deg,var(--purple) 0%,var(--purple) 40%,var(--magenta) 100%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 18px rgba(166,108,255,.18))}.container{max-width:var(--maxw);margin:0 auto;padding:0 clamp(1.1rem,5vw,2.5rem)}.error-message{color:var(--danger);background:var(--danger-bg-2);border:1px solid var(--danger-border-1);padding:12px 16px;border-radius:14px;font-size:14px;margin-bottom:16px}.success-message{color:var(--success);background:var(--success-bg-1);border:1px solid var(--success-border-1);padding:12px 16px;border-radius:14px;font-size:14px;margin-bottom:16px}.spinner{border:3px solid var(--accent-soft-5);border-top:3px solid var(--purple);border-radius:50%;width:24px;height:24px;animation:spin 1s linear infinite;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.leaflet-container{background:var(--bg-2);font-family:inherit}.leaflet-control-attribution{background:var(--surface-overlay-strong)!important;color:var(--soft)!important;border-radius:8px 0 0}.leaflet-control-attribution a{color:var(--purple)!important}.leaflet-control-zoom{border:1px solid var(--line)!important;border-radius:10px!important;overflow:hidden;box-shadow:0 8px 24px var(--overlay-dark-32)}.leaflet-control-zoom a{background:var(--card-strong)!important;color:var(--text)!important;border-color:var(--line)!important}.leaflet-control-zoom a:hover{background:var(--accent-soft-5)!important;color:var(--purple)!important;border-color:var(--accent-ring-5)!important}.leaflet-popup-content-wrapper{background:var(--card-strong);color:var(--text);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.leaflet-popup-tip{background:var(--card-strong);border:1px solid var(--line)}.leaflet-popup-content{margin:12px 14px;font-size:13px;line-height:1.5;color:var(--muted)}.leaflet-popup-content strong{color:var(--text)}.leaflet-popup-content a{color:var(--purple);font-weight:600}.leaflet-popup-content a:hover{color:var(--magenta)}.leaflet-popup-close-button{color:var(--soft)!important}.leaflet-popup-close-button:hover{color:var(--text)!important}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
