@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.toast-container{position:fixed;top:68px;right:var(--space-4);z-index:9999;display:flex;flex-direction:column;gap:var(--space-3);max-width:380px;width:calc(100vw - var(--space-8));pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toastSlideIn .25s ease;position:relative;overflow:hidden}.toast-leave{animation:toastSlideOut .2s ease forwards}@keyframes toastSlideIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.toast-icon{width:var(--space-6);height:var(--space-6);min-width:var(--space-6);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:700}.toast-icon-success{background:var(--color-success-dim);color:var(--color-success)}.toast-icon-error{background:var(--color-danger-dim);color:var(--color-danger)}.toast-icon-warning{background:var(--color-warning-dim);color:var(--color-warning)}.toast-icon-info{background:var(--color-info-dim);color:var(--color-primary-light)}.toast-message{flex:1;font-size:var(--text-base);font-weight:500;color:var(--color-text);line-height:1.4}.toast-close{padding:var(--space-1);border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast);display:flex;align-items:center;justify-content:center}.toast-close:hover{color:var(--color-text)}.toast-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--color-border)}.toast-progress-bar{height:100%;transition:width .1s linear}.toast-progress-success{background:var(--color-success)}.toast-progress-error{background:var(--color-danger)}.toast-progress-warning{background:var(--color-warning)}.toast-progress-info{background:var(--color-primary)}.toast-success{border-left:3px solid var(--color-success)}.toast-error{border-left:3px solid var(--color-danger)}.toast-warning{border-left:3px solid var(--color-warning)}.toast-info{border-left:3px solid var(--color-primary)}@media(max-width:768px){.toast-container{top:auto;bottom:max(88px,calc(72px + env(safe-area-inset-bottom) + var(--space-2)));right:var(--space-3);left:var(--space-3);max-width:none;width:auto}.toast{border-radius:var(--radius-lg);padding:var(--space-3)}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}}:root{--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 15px;--text-xl: 18px;--text-2xl: 22px;--text-3xl: 28px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--color-primary: #3b82f6;--color-primary-dark: #2563eb;--color-primary-light: #60a5fa;--color-primary-glow: rgba(59, 130, 246, .12);--color-primary-dim: rgba(59, 130, 246, .08);--color-secondary: #8b5cf6;--color-accent: #f59e0b;--color-bg: #09090b;--color-bg-secondary: #0f0f12;--color-bg-card: #131316;--color-bg-card-solid: #131316;--color-bg-card-hover: #1a1a1f;--color-bg-elevated: #1c1c21;--color-bg-tertiary: #17171b;--color-bg-overlay: rgba(0, 0, 0, .7);--color-text: #fafafa;--color-text-secondary: #a1a1aa;--color-text-muted: #71717a;--color-border: rgba(255, 255, 255, .08);--color-border-hover: rgba(255, 255, 255, .14);--color-border-subtle: rgba(255, 255, 255, .04);--page-padding-top: var(--space-6);--page-padding-bottom-mobile: max(88px, calc(72px + env(safe-area-inset-bottom)) );--nav-bottom-padding: max(8px, env(safe-area-inset-bottom));--color-danger: #ef4444;--color-danger-dim: rgba(239, 68, 68, .1);--color-warning: #f59e0b;--color-warning-dim: rgba(245, 158, 11, .1);--color-success: #22c55e;--color-success-dim: rgba(34, 197, 94, .1);--color-info: #3b82f6;--color-info-dim: rgba(59, 130, 246, .1);--color-purple: #8b5cf6;--color-purple-dim: rgba(139, 92, 246, .1);--color-orange: #f97316;--color-orange-dim: rgba(249, 115, 22, .1);--color-cyan: #06b6d4;--color-cyan-dim: rgba(6, 182, 212, .1);--color-pink: #ec4899;--color-pink-dim: rgba(236, 72, 153, .1);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .6);--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:contain}html,body{height:100%;height:100dvh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;-webkit-text-size-adjust:100%;text-size-adjust:100%;letter-spacing:-.011em;line-height:1.6;font-size:var(--text-md)}#root{height:100%;display:flex;flex-direction:column}a{color:var(--color-primary-light);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary)}button{cursor:pointer;font-family:inherit;letter-spacing:inherit}input,textarea,select{font-family:inherit;letter-spacing:inherit}select option{background:var(--color-bg-card);color:var(--color-text)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}::selection{background:#3b82f640;color:var(--color-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:9px 18px;border-radius:var(--radius-md);font-weight:500;font-size:var(--text-base);border:none;transition:all var(--transition-fast);white-space:nowrap;letter-spacing:-.01em;line-height:1.4}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-card-hover);border-color:var(--color-border-hover)}.btn-ghost{background:transparent;color:var(--color-text-secondary);padding:8px 12px}.btn-ghost:hover:not(:disabled){color:var(--color-text);background:#ffffff0d}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){filter:brightness(1.1)}.btn-danger{background:var(--color-danger-dim);color:var(--color-danger);border:1px solid rgba(239,68,68,.15)}.btn-danger:hover:not(:disabled){background:var(--color-danger);color:#fff}.btn-lg{padding:11px 24px;font-size:var(--text-md);border-radius:var(--radius-lg)}.btn-sm{padding:6px 12px;font-size:var(--text-sm)}.btn-icon{width:36px;height:36px;padding:0;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:border-color var(--transition-base)}.card:hover{border-color:var(--color-border-hover)}.card-glass{background:#131316d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.input{width:100%;padding:9px 14px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-base);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-glow)}.input::placeholder{color:var(--color-text-muted)}textarea.input{resize:vertical;min-height:80px}.input--error{border-color:var(--color-danger)!important;box-shadow:0 0 0 3px var(--color-danger-dim)}.input--success{border-color:var(--color-success)!important}.field-error{font-size:var(--text-sm);color:#fca5a5;margin-top:var(--space-1);min-height:16px;padding:var(--space-1) var(--space-2);background:var(--color-danger-dim);border-radius:var(--radius-sm);border-left:2px solid var(--color-danger)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:3px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;letter-spacing:.01em}.badge-primary{background:var(--color-primary-dim);color:var(--color-primary-light)}.badge-success{background:var(--color-success-dim);color:var(--color-success)}.badge-warning{background:var(--color-warning-dim);color:var(--color-warning)}.badge-danger{background:var(--color-danger-dim);color:var(--color-danger)}.badge-cyan{background:var(--color-cyan-dim);color:var(--color-cyan)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-base);display:flex;align-items:center;gap:var(--space-3)}.alert-error{background:var(--color-danger-dim);border:1px solid rgba(239,68,68,.15);color:#fca5a5}.alert-success{background:var(--color-success-dim);border:1px solid rgba(34,197,94,.15);color:#86efac}.skeleton{background:linear-gradient(90deg,var(--color-bg-secondary) 25%,var(--color-bg-elevated) 50%,var(--color-bg-secondary) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--color-bg-card) 25%,var(--color-bg-elevated) 50%,var(--color-bg-card) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.gradient-text{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.esri-ui{font-family:Inter,sans-serif!important}.esri-widget{background:var(--color-bg-card-solid)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-md)!important}.esri-widget--button{background:var(--color-bg-card-solid)!important;color:var(--color-text)!important}.esri-widget--button:hover{background:var(--color-bg-elevated)!important}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fade-in .2s ease forwards}.animate-fade-in-up{animation:fade-in-up .4s cubic-bezier(.16,1,.3,1) forwards}.animate-scale-in{animation:scale-in .25s ease forwards}.dashboard,.profile-page,.subscription-page,.admin-page,.listings-page,.inquiries-page,.team-page,.legal-page,.tasks-page,.showings-page,.portfolio-page{animation:page-enter .3s cubic-bezier(.16,1,.3,1)}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.skip-to-content{position:absolute;top:-50px;left:0;padding:10px 20px;background:var(--color-primary);color:#fff;font-size:var(--text-base);font-weight:600;z-index:10000;transition:top .2s ease;text-decoration:none}.skip-to-content:focus{top:0;outline:2px solid white;outline-offset:2px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-6)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input:focus,textarea:focus,select:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-primary-glow);outline:2px solid transparent}@media(hover:hover)and (pointer:fine){.btn:not(:disabled):hover{transform:translateY(-1px)}}button:active:not(:disabled),.btn:active:not(:disabled),[role=button]:active:not(:disabled){transform:scale(.98)}@media(max-width:768px){input,textarea,select{font-size:16px!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html{overscroll-behavior-y:contain}img{image-rendering:auto;-webkit-user-drag:none}@media(display-mode:standalone){.navbar{padding-top:max(env(safe-area-inset-top,0px),8px)}.navbar,.bottom-nav,.drawer{-webkit-user-select:none;user-select:none}html,body{overscroll-behavior:none;height:100%}}@media(max-width:768px){.container{padding:0 var(--space-4)}.card{padding:var(--space-4);border-radius:var(--radius-lg)}body{overflow-x:hidden}*{-webkit-overflow-scrolling:touch}.input{padding:11px 14px;font-size:16px!important}.btn{padding:11px 18px;font-size:var(--text-md)}.btn-lg{padding:13px 24px;font-size:var(--text-lg);width:100%;justify-content:center}.dashboard,.profile-page,.subscription-page,.admin-page,.listings-page,.inquiries-page,.team-page,.legal-page,.tasks-page,.showings-page,.portfolio-page{padding-bottom:var(--page-padding-bottom-mobile)!important}button,[role=button],.btn,select{min-height:44px}.btn-sm{min-height:36px;padding:8px 14px}.badge{min-height:auto}a.btn,a[role=button]{min-height:44px}}.credit-upsell{display:flex;flex-direction:column;gap:var(--space-2);padding:10px 14px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.credit-upsell--compact{padding:6px 10px;flex-direction:row;align-items:center;gap:var(--space-3)}.credit-upsell--low{border-color:#f59e0b4d;background:var(--color-warning-dim)}.credit-upsell--out{border-color:#ef44444d;background:var(--color-danger-dim)}.credit-upsell-bar{height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden;flex:1;min-width:40px}.credit-upsell-fill{height:100%;border-radius:2px;background:var(--color-primary);transition:width .4s ease}.credit-upsell--low .credit-upsell-fill{background:var(--color-warning)}.credit-upsell--out .credit-upsell-fill{background:var(--color-danger)}.credit-upsell-info{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.credit-upsell-count{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);white-space:nowrap}.credit-upsell--low .credit-upsell-count{color:var(--color-warning)}.credit-upsell--out .credit-upsell-count{color:var(--color-danger)}.credit-upsell-btn{display:inline-flex;align-items:center;padding:4px 10px;font-size:10px;font-weight:700;color:#fff;background:var(--color-primary);border-radius:var(--radius-sm);text-decoration:none;white-space:nowrap;transition:all var(--transition-fast)}.credit-upsell-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.credit-upsell--out .credit-upsell-btn{background:var(--color-danger)}.credit-upsell--out .credit-upsell-btn:hover{background:#dc2626}.notif-bell-wrapper{position:relative}.notif-bell-btn{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:#ffffff0a;border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-muted);transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent}.notif-bell-btn:hover{background:#ffffff14;color:var(--color-text)}.notif-badge{position:absolute;top:var(--space-1);right:var(--space-1);min-width:var(--space-4);height:var(--space-4);padding:0 var(--space-1);background:var(--color-danger);color:#fff;font-size:10px;font-weight:700;line-height:var(--space-4);text-align:center;border-radius:var(--radius-full);pointer-events:none;animation:notif-pop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes notif-pop{0%{transform:scale(0)}to{transform:scale(1)}}.notif-dropdown{position:absolute;top:calc(100% + var(--space-2));right:0;width:380px;max-height:480px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:300;display:flex;flex-direction:column;overflow:hidden;animation:notif-slide .2s ease-out}@keyframes notif-slide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.notif-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.notif-header h3{margin:0;font-size:var(--text-md);font-weight:600;color:var(--color-text)}.notif-mark-all{background:none;border:none;color:var(--color-primary);font-size:var(--text-sm);font-weight:500;cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background var(--transition-fast)}.notif-mark-all:hover{background:var(--color-primary-glow)}.notif-list{overflow-y:auto;flex:1;max-height:420px}.notif-empty{padding:var(--space-10) var(--space-4);text-align:center;color:var(--color-text-muted);font-size:var(--text-base)}.notif-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:none;background:none;width:100%;text-align:left;cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--color-border);position:relative}.notif-item:hover{background:#ffffff08}.notif-item--unread{background:var(--color-primary-dim)}.notif-item--unread:hover{background:var(--color-primary-glow)}.notif-icon{width:var(--space-8);height:var(--space-8);min-width:var(--space-8);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin-top:2px}.notif-icon--inquiry{background:var(--color-info-dim);color:var(--color-primary-light)}.notif-icon--portfolio_milestone{background:var(--color-success-dim);color:var(--color-success)}.notif-icon--welcome{background:#f43f5e1a;color:#fb7185}.notif-icon--system{background:var(--color-warning-dim);color:var(--color-warning)}.notif-content{flex:1;min-width:0;overflow:hidden}.notif-title{font-size:var(--text-base);font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.notif-message{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:2px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-time{font-size:var(--text-xs);color:var(--color-text-muted);margin-top:var(--space-1);opacity:.7}.notif-dot{width:var(--space-2);height:var(--space-2);min-width:var(--space-2);border-radius:var(--radius-full);background:var(--color-primary);margin-top:var(--space-2)}@media(max-width:768px){.notif-dropdown{position:fixed;top:auto;bottom:max(68px,calc(56px + env(safe-area-inset-bottom)));left:var(--space-2);right:var(--space-2);width:auto;max-height:60dvh;border-radius:var(--radius-xl);animation:notif-slide-up .25s cubic-bezier(.16,1,.3,1)}@keyframes notif-slide-up{0%{opacity:0;transform:translateY(var(--space-4))}to{opacity:1;transform:translateY(0)}}.notif-list{max-height:50dvh;-webkit-overflow-scrolling:touch}.notif-item{padding:var(--space-3) var(--space-4)}}@media(max-width:480px){.notif-dropdown{left:var(--space-1);right:var(--space-1)}}.navbar{background:#09090bf2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100;padding-top:env(safe-area-inset-top,0px)}.navbar-inner{display:flex;align-items:center;justify-content:space-between;height:52px}.navbar-left{display:flex;align-items:center;gap:var(--space-5);overflow:hidden}.navbar-logo{display:flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--text-lg);color:var(--color-text)!important;letter-spacing:-.03em}.navbar-logo-img{height:26px;width:auto;border-radius:var(--radius-sm)}.navbar-logo-accent{color:var(--color-primary)}.navbar-links{display:flex;align-items:center;gap:1px}.nav-link{display:flex;align-items:center;gap:var(--space-2);padding:6px 12px;font-size:var(--text-base);font-weight:500;color:var(--color-text-muted)!important;border-radius:var(--radius-md);transition:all var(--transition-fast);position:relative}.nav-link:hover{color:var(--color-text-secondary)!important;background:#ffffff0a}.nav-link.active{color:var(--color-text)!important;background:#ffffff0f}.nav-link.active:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:16px;height:2px;background:var(--color-primary);border-radius:2px}.nav-link span{white-space:nowrap}.nav-link--compact{padding:6px 8px}.nav-link--compact span{display:none}.nav-link--map{padding:6px 8px;background:var(--color-primary-dim);border:1px solid rgba(59,130,246,.15)}.nav-link--map:hover{background:#3b82f626}.nav-link--map.active{background:var(--color-primary)}.nav-link--map svg{opacity:.8!important}.nav-link--map.active svg{opacity:1!important;color:#fff!important}.nav-link svg{opacity:.4}.nav-link:hover svg{opacity:.7}.nav-link.active svg{opacity:1;color:var(--color-primary)}.navbar-right{display:flex;align-items:center;gap:var(--space-3)}.nav-credits{display:flex;gap:var(--space-2)}.credit-pill{display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;background:#ffffff0a;color:var(--color-text-secondary);border:1px solid var(--color-border);transition:all var(--transition-fast)}.credit-pill:hover{border-color:var(--color-border-hover);background:#ffffff0f}.credit-pill svg{opacity:.5}.credit-pill.video{color:var(--color-text-secondary)}.nav-user{display:flex;align-items:center;gap:var(--space-2)}.nav-user-link{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;border-radius:var(--radius-md);padding:4px 8px;transition:background var(--transition-fast)}.nav-user-link:hover{background:#ffffff0a}.nav-user-name{font-size:var(--text-base);font-weight:500;color:var(--color-text-secondary)}.nav-avatar{width:30px;height:30px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;color:#fff}.nav-logout{padding:6px!important}.nav-logout:hover{color:var(--color-danger)!important}.nav-lang-btn{font-weight:700;font-size:var(--text-xs);letter-spacing:.06em;min-width:36px;text-align:center}.nav-lang-badge{font-weight:700;font-size:var(--text-sm);letter-spacing:.06em}.hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;border:none;background:#ffffff0a;border-radius:var(--radius-md);cursor:pointer;padding:0;gap:5px;transition:background var(--transition-fast);-webkit-tap-highlight-color:transparent}.hamburger:hover{background:#ffffff14}.hamburger span{display:block;width:18px;height:2px;background:var(--color-text);border-radius:2px;transition:all .3s ease;transform-origin:center}.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.drawer-overlay{position:fixed;inset:0;background:#0009;z-index:199;opacity:0;pointer-events:none;transition:opacity .3s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.drawer-overlay.active{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;width:300px;max-width:85vw;height:100vh;height:100dvh;background:var(--color-bg-secondary);border-left:1px solid var(--color-border);z-index:200;display:flex;flex-direction:column;transform:translate(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);overflow-y:auto;-webkit-overflow-scrolling:touch}.drawer.open{transform:translate(0)}.drawer-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5);padding-top:max(20px,calc(env(safe-area-inset-top) + 12px));border-bottom:1px solid var(--color-border)}.drawer-avatar{width:40px;height:40px;min-width:40px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:var(--text-md);font-weight:700;color:#fff}.drawer-user-info{overflow:hidden}.drawer-user-name{font-size:var(--text-md);font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-user-email{font-size:var(--text-sm);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.drawer-credits{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.drawer-credit{flex:1;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:#ffffff08;border-radius:var(--radius-md);border:1px solid var(--color-border)}.drawer-credit-icon{width:34px;height:34px;min-width:34px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.drawer-credit-icon.dc-blue{background:var(--color-primary-dim);color:var(--color-primary)}.drawer-credit-icon.dc-purple{background:var(--color-purple-dim);color:var(--color-purple)}.drawer-credit-info{display:flex;flex-direction:column}.drawer-credit-count{font-size:var(--text-xl);font-weight:700;color:var(--color-text);line-height:1}.drawer-credit-label{font-size:10px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-weight:600}.drawer-plan{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border)}.drawer-plan-label{font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.drawer-plan-badge{font-size:var(--text-xs);font-weight:700;padding:4px 12px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em}.drawer-plan-badge.plan-free{background:#ffffff0a;color:var(--color-text-muted)}.drawer-plan-badge.plan-starter{background:var(--color-primary-dim);color:var(--color-primary)}.drawer-plan-badge.plan-professional{background:var(--color-purple-dim);color:var(--color-purple)}.drawer-plan-badge.plan-enterprise{background:var(--color-warning-dim);color:var(--color-warning)}.drawer-nav{flex:1;padding:var(--space-2) var(--space-3)}.drawer-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);font-size:var(--text-md);font-weight:500;color:var(--color-text-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast);border:none;background:none;width:100%;text-align:left;cursor:pointer}.drawer-link:hover{background:#ffffff0a;color:var(--color-text)}.drawer-link.active{background:var(--color-primary-dim);color:var(--color-text)}.drawer-link.active svg{color:var(--color-primary)}.drawer-link svg{opacity:.5;flex-shrink:0}.drawer-link.active svg{opacity:1}.drawer-link--locked{opacity:.4;cursor:not-allowed;pointer-events:none}.drawer-link--locked .lock-icon{margin-left:auto;opacity:.6}.drawer-footer{padding:var(--space-2) var(--space-3);padding-bottom:max(24px,calc(env(safe-area-inset-bottom) + 8px));border-top:1px solid var(--color-border)}.drawer-logout{color:var(--color-danger)!important}.drawer-logout svg{color:var(--color-danger)}.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;background:#09090bfa;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-top:1px solid var(--color-border);padding:4px 4px 0;padding-bottom:var(--nav-bottom-padding, max(8px, env(safe-area-inset-bottom)));-webkit-user-select:none;user-select:none}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px 4px;font-size:10px;font-weight:500;color:var(--color-text-muted)!important;transition:color .15s ease;flex:1;text-align:center;position:relative;border:none;background:none;border-radius:0;min-height:auto;-webkit-tap-highlight-color:transparent}.bottom-nav-item svg{transition:transform .15s ease}.bottom-nav-item.active{color:var(--color-primary)!important}.bottom-nav-item.active svg{color:var(--color-primary);transform:scale(1.1)}.bottom-nav-item.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:20px;height:2px;background:var(--color-primary);border-radius:0 0 3px 3px}.bottom-nav-item:active svg{transform:scale(.9)}@media(max-width:768px){.navbar-links,.nav-credits{display:none}.desktop-only{display:none!important}.hamburger,.bottom-nav{display:flex}.drawer-link:active{background:#ffffff0f;transform:scale(.98)}.bottom-nav-item:active{opacity:.7}.navbar{transition:box-shadow .2s ease}}@media(min-width:769px){.drawer,.drawer-overlay,.bottom-nav{display:none!important}}@media(max-width:480px){.navbar-logo span{display:none}.bottom-nav-item span{font-size:9px}.bottom-nav{padding:4px 0 0;padding-bottom:var(--nav-bottom-padding, max(8px, env(safe-area-inset-bottom)))}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#09090bf2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-6);padding-bottom:max(var(--space-4),calc(env(safe-area-inset-bottom) + var(--space-2)));animation:cookie-slide-up .4s ease-out}@keyframes cookie-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-banner-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5)}.cookie-banner-inner p{margin:0;font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.5}.cookie-banner-inner a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.cookie-accept-btn{background:var(--color-primary);color:#fff;border:none;padding:var(--space-2) var(--space-6);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast)}.cookie-accept-btn:hover{opacity:.9}@media(max-width:600px){.cookie-banner-inner{flex-direction:column;text-align:center;gap:var(--space-3)}.cookie-accept-btn{width:100%}}.install-banner{position:fixed;bottom:max(72px,calc(60px + env(safe-area-inset-bottom)));left:var(--space-3);right:var(--space-3);z-index:9998;animation:install-slide-up .4s cubic-bezier(.16,1,.3,1)}@keyframes install-slide-up{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.install-banner-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:linear-gradient(135deg,var(--color-primary-glow),rgba(139,92,246,.1));border:1px solid rgba(59,130,246,.25);border-radius:var(--radius-xl);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-lg)}.install-banner-left{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.install-icon{width:var(--space-10);height:var(--space-10);border-radius:var(--radius-md);flex-shrink:0}.install-banner-left strong{display:block;font-size:var(--text-md);font-weight:700;color:var(--color-text)}.install-banner-left p{margin:2px 0 0;font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.3}.install-banner-actions{display:flex;gap:var(--space-2);flex-shrink:0}.install-btn{padding:var(--space-2) var(--space-5);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:700;cursor:pointer;transition:opacity var(--transition-fast)}.install-btn:hover{opacity:.9}.install-dismiss{padding:var(--space-2) var(--space-3);background:none;border:none;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:500;cursor:pointer}@media(min-width:769px){.install-banner{bottom:var(--space-6);left:auto;right:var(--space-6);max-width:380px}}
