*,*:before,*:after{box-sizing:border-box}.spinner{width:36px;height:36px;border:3px solid var(--border, #e8e8e8);border-top-color:var(--bg-topbar, #1a73e8);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-bar{display:flex;align-items:center;justify-content:center;padding:32px 16px;color:var(--text-secondary, #888);font-size:14px}.skeleton{background:linear-gradient(90deg,var(--bg-hover, #f5f7fa) 25%,var(--border-light, #f0f0f0) 50%,var(--bg-hover, #f5f7fa) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.skeleton-card{height:120px;margin-bottom:12px;border-radius:12px}.skeleton-line{height:14px;margin-bottom:8px;border-radius:4px}.skeleton-line.short{width:40%}.skeleton-line.medium{width:70%}.skeleton-circle{width:48px;height:48px;border-radius:50%}.skeleton-group{padding:16px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}html,body,#root{margin:0;padding:0;height:100%;width:100%;overflow:hidden;font-family:Roboto,Segoe UI,system-ui,-apple-system,sans-serif}:root,[data-theme=light]{--bg-primary: #f5f7fa;--bg-card: #ffffff;--bg-sidebar: #fafbfc;--bg-topbar: #1a73e8;--bg-bottomnav: #ffffff;--bg-input: #f8f9fa;--bg-hover: #f5f7fa;--bg-active: #e8f0fe;--bg-overlay: rgba(0,0,0,.4);--border: #e8e8e8;--border-light: #f0f0f0;--text-primary: #1a1a1a;--text-secondary: #888888;--text-muted: #999999;--text-inverse: #ffffff;--accent: #1a73e8;--accent-hover: #1557b0;--accent-bg: #e8f0fe;--accent-text: #1a73e8;--stat-blue: #e3f2fd;--stat-green: #e8f5e9;--stat-orange: #fff3e0;--stat-purple: #f3e5f5;--status-confirmed-bg: #e8f5e9;--status-confirmed-text: #2e7d32;--status-pending-bg: #fff3e0;--status-pending-text: #e65100;--shadow-card: 0 1px 3px rgba(0,0,0,.06);--shadow-topbar: 0 2px 8px rgba(0,0,0,.1);--space-personal: #4caf50;--space-business: #ff9800;color-scheme:light}[data-theme=dark]{--bg-primary: #10101e;--bg-card: #1a1a2e;--bg-sidebar: #141428;--bg-topbar: #1a1a2e;--bg-bottomnav: #1a1a2e;--bg-input: #252540;--bg-hover: #222240;--bg-active: #1a2744;--bg-overlay: rgba(0,0,0,.6);--border: #2a2a44;--border-light: #222240;--text-primary: #e8e8e8;--text-secondary: #888888;--text-muted: #555555;--text-inverse: #ffffff;--accent: #5c9cff;--accent-hover: #4a8ae8;--accent-bg: #1a2744;--accent-text: #5c9cff;--stat-blue: #1a2744;--stat-green: #1a3424;--stat-orange: #2e2414;--stat-purple: #2a1a34;--status-confirmed-bg: #1a3424;--status-confirmed-text: #81c784;--status-pending-bg: #2e2414;--status-pending-text: #ffb74d;--shadow-card: none;--shadow-topbar: none;--space-personal: #4caf50;--space-business: #ff9800;color-scheme:dark}body{background-color:var(--bg-primary);color:var(--text-primary)}.app-layout{display:flex;flex-direction:column;height:100vh;width:100%;background:var(--bg-primary)}.app-topbar{height:52px;background:var(--bg-topbar);color:var(--text-inverse);display:flex;align-items:center;padding:0 12px;gap:8px;flex-shrink:0;z-index:100}[data-theme=dark] .app-topbar{border-bottom:1px solid var(--border)}.topbar-menu-btn{width:36px;height:36px;border-radius:8px;background:#ffffff26;border:none;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}[data-theme=dark] .topbar-menu-btn{background:#ffffff14;color:#ccc}.topbar-logo{font-weight:700;font-size:16px;flex:1}.space-chip{display:flex;align-items:center;gap:5px;background:#ffffff2e;border-radius:16px;padding:3px 8px 3px 3px;font-size:12px;cursor:pointer;border:none;color:#fff;max-width:160px}[data-theme=dark] .space-chip{background:#ffffff14}.space-chip-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.space-chip-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.space-chip-chevron{font-size:8px;opacity:.7;flex-shrink:0}.topbar-bell{width:36px;height:36px;border-radius:50%;background:#ffffff1f;border:none;color:#fff;font-size:16px;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center}[data-theme=dark] .topbar-bell{background:#ffffff0f;color:#ccc}.topbar-bell-dot{position:absolute;top:6px;right:6px;width:7px;height:7px;background:#f44336;border-radius:50%;border:1.5px solid var(--bg-topbar)}.topbar-avatar{width:32px;height:32px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;cursor:pointer;border:2px solid rgba(255,255,255,.4);color:#fff}[data-theme=dark] .topbar-avatar{background:#ffffff1a;border-color:#ffffff26;color:#ccc}.app-body{flex:1;display:flex;overflow:hidden;position:relative}.app-sidebar{width:240px;background:var(--bg-sidebar);border-right:1px solid var(--border);overflow-y:auto;flex-shrink:0;display:none}@media(min-width:768px){.app-sidebar{display:flex;flex-direction:column}}.sidebar-space-header{padding:14px 16px;background:var(--bg-card);border-bottom:1px solid var(--border)}.sidebar-space-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:3px}.sidebar-space-name{font-size:14px;font-weight:600;color:var(--text-primary)}.sidebar-space-type{font-size:11px;margin-top:2px}.sidebar-switch-link{margin-top:8px;font-size:11px;font-weight:500;color:var(--accent-text);cursor:pointer;background:none;border:none;padding:0}.nav-group-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-secondary);padding:14px 16px 4px}.nav-cond-tag{font-size:7px;padding:1px 4px;border-radius:3px;font-weight:600;margin-left:4px;text-transform:uppercase}.nav-cond-tag.biz{background:var(--status-pending-bg);color:var(--status-pending-text)}.nav-cond-tag.per{background:var(--status-confirmed-bg);color:var(--status-confirmed-text)}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:13px;cursor:pointer;border-left:3px solid transparent;color:var(--text-primary);text-decoration:none;transition:background .15s,color .15s}.nav-item:hover{background:var(--bg-hover)}.nav-item.active{background:var(--accent-bg);color:var(--accent-text);border-left-color:var(--accent);font-weight:600}.nav-icon{width:20px;text-align:center;font-size:15px;flex-shrink:0}.nav-badge{margin-left:auto;background:#f44336;color:#fff;font-size:9px;font-weight:600;padding:2px 6px;border-radius:8px}.nav-divider{height:1px;background:var(--border-light);margin:4px 16px}.app-content{flex:1;overflow-y:auto;padding:16px 16px 72px;background:var(--bg-primary)}@media(min-width:768px){.app-content{padding:24px}}.app-bottomnav{height:56px;background:var(--bg-bottomnav);border-top:1px solid var(--border);display:flex;flex-shrink:0;position:fixed;bottom:0;left:0;right:0;width:100%;z-index:150}@media(min-width:768px){.app-bottomnav{display:none}}.bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;color:var(--text-muted);cursor:pointer;text-decoration:none;position:relative;border:none;background:none;-webkit-tap-highlight-color:transparent}.bottom-tab.active{color:var(--accent-text)}.bottom-tab-icon{font-size:20px;line-height:1}.bottom-tab-label{font-weight:500}.bottom-tab-badge{position:absolute;top:4px;right:calc(50% - 16px);background:#f44336;color:#fff;font-size:8px;font-weight:700;padding:1px 5px;border-radius:8px;min-width:16px;text-align:center}.sidebar-overlay{position:fixed;inset:52px 0 56px;z-index:50;display:flex}@media(min-width:768px){.sidebar-overlay{display:none!important}}.sidebar-panel{width:280px;background:var(--bg-card);overflow-y:auto;box-shadow:4px 0 20px #00000026}[data-theme=dark] .sidebar-panel{box-shadow:4px 0 20px #0006;border-right:1px solid var(--border)}.sidebar-backdrop{flex:1;background:var(--bg-overlay)}.space-sheet-overlay{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column}.space-sheet-backdrop{flex:1;background:var(--bg-overlay)}.space-sheet{background:var(--bg-card);border-radius:20px 20px 0 0;padding:8px 0 0;max-height:60vh;overflow-y:auto}[data-theme=dark] .space-sheet{border-top:1px solid var(--border)}.sheet-handle{width:36px;height:4px;border-radius:2px;background:var(--border);margin:0 auto 12px}.sheet-title{font-size:14px;font-weight:600;color:var(--text-primary);padding:0 20px 12px;border-bottom:1px solid var(--border-light)}.sheet-item{display:flex;align-items:center;gap:12px;padding:14px 20px;cursor:pointer;border:none;background:none;width:100%;text-align:left}.sheet-item:hover{background:var(--bg-hover)}.sheet-item.active{background:var(--accent-bg)}.sheet-item-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0}.sheet-item-info{flex:1}.sheet-item-name{font-size:14px;font-weight:500;color:var(--text-primary)}.sheet-item-type{font-size:11px;color:var(--text-secondary)}.sheet-item-check{color:var(--accent-text);font-size:18px;font-weight:700}.login-page{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(165deg,#1a73e8,#0d47a1,#1a1a2e)}[data-theme=dark] .login-page{background:linear-gradient(165deg,#1565c0,#0a1628,#0a0a14)}.login-brand{padding:48px 24px 32px;color:#fff;text-align:center}.login-logo{width:56px;height:56px;border-radius:14px;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;margin:0 auto 12px;border:2px solid rgba(255,255,255,.3);color:#fff}[data-theme=dark] .login-logo{background:#ffffff1a;border-color:#ffffff26}.login-brand h1{font-size:28px;font-weight:700;margin:0 0 6px}.login-brand .tagline{font-size:14px;opacity:.85;line-height:1.5;max-width:300px;margin:0 auto}.login-card{flex:1;background:var(--bg-card);border-radius:24px 24px 0 0;padding:28px 24px 32px;display:flex;flex-direction:column}.login-card h2{font-size:22px;color:var(--text-primary);margin:0 0 4px}.login-card .subtitle{color:var(--text-secondary);font-size:13px;margin:0 0 20px}.lang-selector{display:flex;align-items:center;gap:6px;margin-bottom:20px;justify-content:center}.lang-btn{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;border:1.5px solid var(--border);background:var(--bg-card);color:var(--text-secondary);transition:all .15s}.lang-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-signin{width:100%;padding:16px;background:var(--accent);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 14px #1a73e859;transition:all .2s}[data-theme=dark] .btn-signin{box-shadow:0 4px 14px #5c9cff40}.btn-signin:hover{background:var(--accent-hover)}.login-features{margin-top:24px;padding-top:20px;border-top:1px solid var(--border-light)}.login-feature{display:flex;align-items:center;gap:12px;padding:8px 0;color:var(--text-primary);font-size:13px}.login-feature-icon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.login-info{margin-top:auto;padding-top:16px;font-size:12px;color:var(--text-muted);text-align:center;line-height:1.5}.login-info strong{color:var(--text-secondary)}.login-footer{margin-top:12px;text-align:center;font-size:11px;color:var(--text-muted)}.login-footer a{color:var(--accent-text);text-decoration:none}@media(min-width:768px){.login-page{align-items:center;justify-content:center;padding:24px}.login-wrapper{display:flex;width:100%;max-width:880px;border-radius:20px;overflow:hidden;box-shadow:0 12px 48px #00000040}.login-brand{flex:1;text-align:left;display:flex;flex-direction:column;justify-content:center;padding:48px 40px}.login-logo{margin:0 0 12px}.login-brand .tagline{margin:0}.login-card{flex:1;border-radius:0;justify-content:center;padding:48px 40px}.login-features-mobile{display:none}.login-features-desktop{display:block;margin-top:24px}.login-features-desktop .bf-item{display:flex;align-items:center;gap:8px;font-size:13px;opacity:.85;margin-bottom:8px;color:#fff}.login-features-desktop .bf-dot{width:6px;height:6px;border-radius:50%;background:#ffffff80;flex-shrink:0}}@media(max-width:767px){.login-wrapper{display:contents}.login-features-desktop{display:none}.login-features-mobile{display:block}}.dash-greeting h1{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.dash-date{font-size:12px;color:var(--text-muted);margin-top:2px;margin-bottom:14px}.dash-stats{display:flex;gap:10px;overflow-x:auto;margin:0 -16px 14px;padding:0 16px 8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.dash-stats::-webkit-scrollbar{display:none}@media(min-width:768px){.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 20px;padding:0;overflow:visible}}.stat-card{min-width:130px;background:var(--bg-card);border-radius:12px;padding:14px;flex-shrink:0;box-shadow:var(--shadow-card)}[data-theme=dark] .stat-card{border:1px solid var(--border)}.stat-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;margin-bottom:8px}.stat-value{font-size:22px;font-weight:700;color:var(--text-primary)}.stat-label{font-size:11px;color:var(--text-muted);margin-top:2px}.stat-trend{font-size:10px;color:#4caf50;margin-top:3px}.dash-card{background:var(--bg-card);border-radius:12px;margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow-card)}[data-theme=dark] .dash-card{border:1px solid var(--border)}.dash-card-header{padding:12px 16px;border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between}.dash-card-header h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.dash-card-header .view-all{font-size:12px;color:var(--accent-text);text-decoration:none;cursor:pointer;background:none;border:none}.dash-card-body{padding:8px 16px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 16px}.quick-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:14px 8px;background:var(--bg-input);border-radius:10px;border:1px solid var(--border);cursor:pointer;transition:background .15s;text-decoration:none;color:inherit}.quick-btn:hover{background:var(--accent-bg);border-color:var(--accent)}.quick-btn:active{transform:scale(.97)}.quick-btn-icon{font-size:20px}.quick-btn-label{font-size:11px;color:var(--text-primary);font-weight:500;text-align:center}.booking-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border-light)}.booking-item:last-child{border-bottom:none}.booking-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;flex-shrink:0}.booking-info{flex:1;min-width:0}.booking-name{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-service{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-right{text-align:right;flex-shrink:0}.booking-time{font-size:11px;color:var(--text-secondary)}.booking-status{font-size:9px;font-weight:600;padding:3px 8px;border-radius:10px;display:inline-block;margin-top:2px}.booking-status.confirmed{background:var(--status-confirmed-bg);color:var(--status-confirmed-text)}.booking-status.pending{background:var(--status-pending-bg);color:var(--status-pending-text)}.activity-item{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--border-light)}.activity-item:last-child{border-bottom:none}.activity-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;flex-shrink:0}.activity-dot.green{background:#4caf50}.activity-dot.blue{background:#1a73e8}.activity-dot.orange{background:#ff9800}.activity-text{font-size:12px;color:var(--text-secondary);line-height:1.4}.activity-text strong{color:var(--text-primary)}.activity-time{font-size:10px;color:var(--text-muted);margin-top:1px}@media(min-width:768px){.dash-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:16px}}.empty-state{text-align:center;padding:32px 16px;color:var(--text-muted)}.empty-state-icon{font-size:40px;opacity:.4;margin-bottom:12px}.empty-state h3{font-size:16px;color:var(--text-secondary);margin:0 0 6px}.empty-state p{font-size:13px;margin:0}.placeholder-card{background:var(--bg-card);border-radius:12px;padding:24px;box-shadow:var(--shadow-card)}[data-theme=dark] .placeholder-card{border:1px solid var(--border)}.placeholder-card h2{margin:0 0 8px;color:var(--text-primary)}.placeholder-card p{margin:0;color:var(--text-secondary)}.user-dropdown{position:absolute;top:52px;right:8px;background:var(--bg-card);border-radius:12px;box-shadow:0 8px 32px #0000002e;min-width:180px;z-index:200;overflow:hidden;border:1px solid var(--border)}.user-dropdown-item{display:flex;align-items:center;gap:8px;padding:12px 16px;font-size:13px;color:var(--text-primary);cursor:pointer;border:none;background:none;width:100%;text-align:left}.user-dropdown-item:hover{background:var(--bg-hover)}.user-dropdown-divider{height:1px;background:var(--border-light)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;gap:12px}.page-header h1{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.page-subtitle{font-size:13px;color:var(--text-secondary);margin:2px 0 0}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:5px}.form-input{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:14px;background:var(--bg-input);color:var(--text-primary);transition:border-color .15s}.form-input:focus{outline:none;border-color:var(--accent)}.form-textarea{min-height:70px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-range{width:100%;accent-color:var(--accent)}.time-input{width:auto;min-width:90px;padding:8px;font-size:13px}.btn-primary{padding:12px 24px;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-primary.btn-sm{padding:8px 16px;font-size:13px;border-radius:8px;white-space:nowrap}.btn-secondary{padding:12px 24px;background:var(--bg-input);color:var(--text-primary);border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer}.btn-danger{padding:12px 24px;background:transparent;color:#f44336;border:1.5px solid #f44336;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer}.btn-link{background:none;border:none;color:var(--accent-text);font-size:13px;font-weight:600;cursor:pointer;padding:0}.btn-icon-danger{width:28px;height:28px;border-radius:6px;border:none;background:#f443361a;color:#f44336;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toggle-label{display:flex;align-items:center;gap:6px;cursor:pointer}.toggle-label input{display:none}.toggle-switch{width:36px;height:20px;border-radius:10px;background:var(--border);position:relative;transition:background .2s;flex-shrink:0}.toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s}.toggle-label input:checked+.toggle-switch{background:var(--accent)}.toggle-label input:checked+.toggle-switch:after{transform:translate(16px)}.toggle-label.small .toggle-switch{width:30px;height:16px}.toggle-label.small .toggle-switch:after{width:12px;height:12px}.toggle-label.small input:checked+.toggle-switch:after{transform:translate(14px)}.inline-toggle{height:38px;gap:8px;white-space:nowrap;overflow:visible;min-width:0}.toast-success{background:var(--status-confirmed-bg);color:var(--status-confirmed-text);padding:10px 16px;border-radius:8px;font-size:13px;font-weight:500;margin-bottom:12px}.status-badge{font-size:10px;font-weight:600;padding:3px 8px;border-radius:10px}.status-badge.active{background:var(--status-confirmed-bg);color:var(--status-confirmed-text)}.status-badge.inactive{background:var(--bg-input);color:var(--text-muted)}.modal-overlay{position:fixed;inset:0;z-index:300;display:flex;flex-direction:column;background:var(--bg-overlay)}.modal-sheet{margin-top:auto;background:var(--bg-card);border-radius:20px 20px 0 0;max-height:85vh;overflow-y:auto;display:flex;flex-direction:column}@media(min-width:768px){.modal-overlay{align-items:center;justify-content:center;flex-direction:row}.modal-sheet{margin:0;border-radius:16px;width:560px;max-height:80vh}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-light)}.modal-header h3{margin:0;font-size:16px;color:var(--text-primary)}.modal-close{width:28px;height:28px;border-radius:50%;border:none;background:var(--bg-input);color:var(--text-secondary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-body{padding:16px 20px;overflow-y:auto;flex:1}.modal-footer{padding:12px 20px;border-top:1px solid var(--border-light);display:flex;gap:10px;justify-content:flex-end}.onboarding-page{max-width:600px;margin:0 auto}.onboarding-header{text-align:center;margin-bottom:20px}.onboarding-header h1{font-size:22px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.onboarding-header p{font-size:13px;color:var(--text-secondary);margin:0}.onboarding-progress{margin-bottom:20px}.progress-bar{height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease}.progress-steps{display:flex;justify-content:space-between}.progress-step{display:flex;flex-direction:column;align-items:center;gap:4px}.step-dot{width:24px;height:24px;border-radius:50%;background:var(--bg-input);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--text-muted)}.progress-step.active .step-dot{background:var(--accent);border-color:var(--accent);color:#fff}.progress-step.current .step-dot{box-shadow:0 0 0 3px var(--accent-bg)}.step-label{font-size:10px;color:var(--text-muted);text-align:center}.progress-step.active .step-label{color:var(--accent-text);font-weight:600}.onboarding-card{background:var(--bg-card);border-radius:12px;padding:20px;box-shadow:var(--shadow-card)}[data-theme=dark] .onboarding-card{border:1px solid var(--border)}.step-content h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 14px}.step-subtitle{font-size:13px;color:var(--text-secondary);margin:-10px 0 14px}.hours-list{display:flex;flex-direction:column;gap:8px}.hours-row{display:flex;align-items:center;gap:8px;padding:8px;border-radius:8px;background:var(--bg-input)}.hours-row.closed{opacity:.6}.hours-day{font-size:13px;font-weight:600;color:var(--text-primary);min-width:80px}.hours-inputs{display:flex;align-items:center;gap:4px;flex:1}.hours-separator{color:var(--text-muted);padding:0 2px}.hours-closed-label{font-size:12px;color:var(--text-muted);font-style:italic}.payment-options{display:flex;flex-direction:column;gap:8px}.payment-option{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:10px;background:var(--bg-input);border:1.5px solid var(--border);cursor:pointer;text-align:left;width:100%;transition:border-color .15s}.payment-option.active{border-color:var(--accent);background:var(--accent-bg)}.payment-radio{color:var(--accent-text);font-size:16px;line-height:1;margin-top:1px}.payment-option-title{font-size:14px;font-weight:600;color:var(--text-primary)}.payment-option-desc{font-size:12px;color:var(--text-secondary);margin-top:2px}.onboarding-nav{display:flex;gap:10px;margin-top:16px;justify-content:flex-end}.onboarding-success{text-align:center;padding:40px 20px}.success-icon{font-size:48px;margin-bottom:16px}.onboarding-success h2{font-size:22px;color:var(--text-primary);margin:0 0 8px}.onboarding-success p{font-size:14px;color:var(--text-secondary);margin:0 0 24px}.profile-editor-page{max-width:700px}.editor-card{background:var(--bg-card);border-radius:12px;padding:16px 20px;margin-bottom:12px;box-shadow:var(--shadow-card)}[data-theme=dark] .editor-card{border:1px solid var(--border)}.editor-card h3{font-size:15px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.photo-grid{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.photo-placeholder{width:80px;height:80px;border-radius:10px;border:2px dashed var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:10px;color:var(--text-muted);cursor:pointer;flex-shrink:0}.photo-placeholder span:first-child{font-size:20px}.editor-actions{margin-top:16px;display:flex;justify-content:flex-end}.resource-grid{display:grid;grid-template-columns:1fr;gap:10px}@media(min-width:768px){.resource-grid{grid-template-columns:1fr 1fr}}.resource-card{background:var(--bg-card);border-radius:12px;padding:14px 16px;cursor:pointer;box-shadow:var(--shadow-card);transition:transform .1s}[data-theme=dark] .resource-card{border:1px solid var(--border)}.resource-card:active{transform:scale(.98)}.resource-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.resource-card-header h4{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.resource-desc{font-size:12px;color:var(--text-secondary);margin:0 0 8px;line-height:1.4}.resource-meta{display:flex;gap:12px;font-size:12px;color:var(--text-muted)}.resource-card-actions,.service-card-actions{display:flex;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-light)}.btn-card-edit,.btn-card-delete{padding:5px 12px;font-size:12px;font-weight:600;border-radius:6px;border:1px solid var(--border);cursor:pointer;transition:background .15s,border-color .15s}.btn-card-edit{background:var(--accent-bg);color:var(--accent-text);border-color:var(--accent-bg)}.btn-card-edit:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-card-delete{background:transparent;color:#c62828;border-color:#fce4ec}.btn-card-delete:hover{background:#fce4ec}[data-theme=dark] .btn-card-delete{color:#e57373;border-color:#f4433633}[data-theme=dark] .btn-card-delete:hover{background:#f4433626}.slots-section{margin-top:8px;padding-top:12px;border-top:1px solid var(--border-light)}.slots-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.slots-header h4{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.slot-row{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}.slot-day{width:auto;min-width:70px;padding:6px 8px;font-size:12px}.slot-duration{width:60px!important;min-width:60px;padding:6px 8px;font-size:12px}.service-section{margin-bottom:16px}.section-title{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin:0 0 8px;padding-bottom:4px;border-bottom:1px solid var(--border-light)}.service-list{display:grid;grid-template-columns:1fr;gap:8px}@media(min-width:768px){.service-list{grid-template-columns:1fr 1fr}}.service-card{background:var(--bg-card);border-radius:12px;padding:14px 16px;cursor:pointer;box-shadow:var(--shadow-card);transition:transform .1s}[data-theme=dark] .service-card{border:1px solid var(--border)}.service-card.inactive{opacity:.6}.service-card:active{transform:scale(.98)}.service-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.service-card-top h4{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.service-type-badge{font-size:10px;font-weight:600;padding:3px 8px;border-radius:10px;white-space:nowrap}.service-desc{font-size:12px;color:var(--text-secondary);margin:0 0 8px;line-height:1.3}.service-meta{display:flex;gap:10px;font-size:12px;align-items:center}.service-price{font-weight:700;color:var(--accent-text)}.service-duration,.service-resource{color:var(--text-muted)}.menu-section{margin-bottom:12px;background:var(--bg-card);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-card)}[data-theme=dark] .menu-section{border:1px solid var(--border)}.menu-section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:none;border:none;width:100%;cursor:pointer;text-align:left}.menu-section-header h3{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.menu-section-right{display:flex;align-items:center;gap:8px}.menu-section-count{font-size:11px;background:var(--accent-bg);color:var(--accent-text);padding:2px 8px;border-radius:10px;font-weight:600}.menu-section-chevron{font-size:10px;color:var(--text-muted)}.menu-items{border-top:1px solid var(--border-light)}.menu-item{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-light);gap:12px}.menu-item:last-of-type{border-bottom:none}.menu-item.inactive{opacity:.5}.menu-item-info{flex:1;min-width:0;cursor:pointer}.menu-item-name{font-size:14px;font-weight:500;color:var(--text-primary)}.menu-item-desc{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-item-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.menu-item-price{font-size:14px;font-weight:700;color:var(--accent-text)}.btn-add-item{width:100%;padding:10px;background:none;border:none;border-top:1px dashed var(--border);color:var(--accent-text);font-size:13px;font-weight:600;cursor:pointer}.discover-page{max-width:800px}.discover-search{margin-bottom:12px}.search-bar{display:flex;align-items:center;gap:8px;background:var(--bg-card);border-radius:12px;padding:10px 14px;border:1.5px solid var(--border)}[data-theme=dark] .search-bar{border-color:var(--border)}.search-icon{font-size:16px;flex-shrink:0}.search-input{flex:1;border:none;background:none;font-size:14px;color:var(--text-primary);outline:none}.search-input::placeholder{color:var(--text-muted)}.category-pills-wrapper{position:relative}.category-pills-wrapper:after{content:"";position:absolute;right:0;top:0;bottom:6px;width:32px;background:linear-gradient(to right,transparent,var(--bg-primary));pointer-events:none;z-index:1}.category-pills{display:flex;gap:6px;overflow-x:auto;margin:0 -16px 12px;padding:0 16px 6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.category-pills::-webkit-scrollbar{display:none}.category-pill{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;border:1.5px solid var(--border);background:var(--bg-card);color:var(--text-secondary);white-space:nowrap;flex-shrink:0;transition:all .15s}.category-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.discover-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.discover-count{font-size:14px;font-weight:600;color:var(--text-primary)}.view-toggle{display:flex;border-radius:8px;overflow:hidden;border:1px solid var(--border)}.view-toggle-btn{padding:6px 14px;font-size:12px;font-weight:600;border:none;cursor:pointer;background:var(--bg-card);color:var(--text-secondary)}.view-toggle-btn.active{background:var(--accent);color:#fff}.business-list{display:flex;flex-direction:column;gap:8px}.business-card{display:flex;gap:12px;background:var(--bg-card);border-radius:12px;padding:12px;cursor:pointer;box-shadow:var(--shadow-card);transition:transform .1s}[data-theme=dark] .business-card{border:1px solid var(--border)}.business-card:active{transform:scale(.98)}.business-thumb{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff;flex-shrink:0}.business-card-info{flex:1;min-width:0}.business-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.business-card-top h4{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.open-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap;flex-shrink:0}.open-badge.open{background:var(--status-confirmed-bg);color:var(--status-confirmed-text)}.open-badge.closed{background:var(--bg-input);color:var(--text-muted)}.business-card-category{font-size:12px;color:var(--text-secondary);margin-top:2px}.business-card-bottom{display:flex;align-items:center;gap:6px;margin-top:4px}.star-rating{color:#ffc107;font-size:12px}.star-value{color:var(--text-primary);font-weight:600;margin-left:2px}.business-card-reviews{font-size:11px;color:var(--text-muted)}.business-card-distance{font-size:11px;color:var(--text-muted);margin-left:auto}@media(min-width:768px){.business-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}}.map-placeholder{border-radius:12px;overflow:hidden;height:400px}.map-bg{width:100%;height:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:40px;color:var(--text-muted);position:relative}.map-bg p{font-size:14px}.map-pin{width:28px;height:28px;border-radius:50% 50% 50% 0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;position:absolute;transform:rotate(-45deg)}.map-pin:nth-child(3){top:30%;left:25%}.map-pin:nth-child(4){top:45%;left:55%}.map-pin:nth-child(5){top:60%;left:35%}.map-pin:nth-child(6){top:35%;left:70%}.map-pin:nth-child(7){top:55%;left:65%}.map-pin:nth-child(8){top:70%;left:45%}.biz-profile-page{margin:-16px;padding-bottom:140px}@media(min-width:768px){.biz-profile-page{max-width:800px;margin:-24px auto}}.biz-hero{padding:48px 20px 24px;color:#fff;position:relative}.biz-back-btn{position:absolute;top:12px;left:12px;width:32px;height:32px;border-radius:50%;background:#0003;border:none;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center}.biz-hero-content{text-align:center}.biz-hero-avatar{width:64px;height:64px;border-radius:16px;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;margin:0 auto 12px;border:2px solid rgba(255,255,255,.3)}.biz-hero h1{font-size:22px;margin:0 0 6px}.biz-hero-meta{display:flex;align-items:center;justify-content:center;gap:12px;font-size:13px;opacity:.9}.biz-hero-rating{display:flex;align-items:center;gap:4px}.biz-hero-status{display:inline-block;margin-top:8px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.biz-hero-status.open{background:#4caf504d}.biz-hero-status.closed{background:#f443364d}.biz-tabs{display:flex;background:var(--bg-card);border-bottom:1px solid var(--border-light)}.biz-tab{flex:1;padding:12px 8px;font-size:13px;font-weight:600;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;text-align:center}.biz-tab.active{color:var(--accent-text);border-bottom-color:var(--accent)}.biz-tab-content{padding:16px 20px}.biz-info-row{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-light)}.biz-info-row:last-child{border-bottom:none}.biz-info-icon{font-size:18px;width:24px;text-align:center;flex-shrink:0;margin-top:2px}.biz-info-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.biz-info-value{font-size:14px;color:var(--text-primary);margin-top:1px}.biz-section-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:16px 0 8px}.biz-hours-grid{display:flex;flex-direction:column;gap:4px}.biz-hours-row{display:flex;align-items:center;padding:6px 8px;border-radius:6px;font-size:13px}.biz-hours-row.today{background:var(--accent-bg)}.biz-hours-row.closed{opacity:.5}.biz-hours-day{width:100px;font-weight:500;color:var(--text-primary)}.biz-hours-time{flex:1;color:var(--text-secondary)}.biz-today-badge{font-size:10px;background:var(--accent);color:#fff;padding:2px 6px;border-radius:6px;font-weight:600}.biz-services{display:flex;flex-direction:column;gap:8px}.biz-service-card{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);border-radius:10px;padding:12px 14px;border:1px solid var(--border)}.biz-service-info h4{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.biz-service-meta{display:flex;gap:8px;font-size:12px;margin-top:2px}.biz-service-price{font-weight:700;color:var(--accent-text)}.biz-service-duration{color:var(--text-muted)}.btn-book{padding:8px 16px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.biz-avg-rating{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px;background:var(--bg-card);border-radius:10px;border:1px solid var(--border)}.biz-avg-number{font-size:36px;font-weight:700;color:var(--text-primary)}.biz-avg-count{font-size:12px;color:var(--text-muted);margin-top:2px}.star-display{color:#ffc107}.biz-review-card{background:var(--bg-card);border-radius:10px;padding:12px;margin-bottom:8px;border:1px solid var(--border)}.biz-review-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.biz-review-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;flex-shrink:0}.biz-review-name{font-size:13px;font-weight:600;color:var(--text-primary)}.biz-review-date{margin-left:auto;font-size:11px;color:var(--text-muted)}.biz-review-text{font-size:13px;color:var(--text-secondary);line-height:1.4;margin:0}.biz-sticky-bar{position:fixed;bottom:56px;left:0;right:0;padding:10px 16px;background:var(--bg-card);border-top:1px solid var(--border);z-index:50}@media(min-width:768px){.biz-sticky-bar{bottom:0;left:240px}}.biz-book-btn{width:100%}.booking-flow-page{max-width:600px;margin:0 auto}.booking-steps{display:flex;gap:6px;margin-bottom:16px}.booking-step-pill{flex:1;display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;background:var(--bg-card);border:1px solid var(--border);font-size:11px}.booking-step-pill.active{background:var(--accent-bg);border-color:var(--accent)}.booking-step-pill.done{background:var(--status-confirmed-bg);border-color:var(--status-confirmed-text)}.booking-step-num{width:20px;height:20px;border-radius:50%;background:var(--border);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--text-muted);flex-shrink:0}.booking-step-pill.active .booking-step-num{background:var(--accent);color:#fff}.booking-step-pill.done .booking-step-num{background:var(--status-confirmed-text);color:#fff}.booking-step-label{color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-step-pill.active .booking-step-label{color:var(--accent-text);font-weight:600}.booking-card{background:var(--bg-card);border-radius:12px;padding:20px;box-shadow:var(--shadow-card)}[data-theme=dark] .booking-card{border:1px solid var(--border)}.service-select-list{display:flex;flex-direction:column;gap:8px}.service-select-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;background:var(--bg-input);border:1.5px solid var(--border);cursor:pointer;text-align:left;width:100%;transition:border-color .15s}.service-select-item.active{border-color:var(--accent);background:var(--accent-bg)}.service-select-radio{color:var(--accent-text);font-size:16px;flex-shrink:0}.service-select-info{flex:1}.service-select-name{font-size:14px;font-weight:600;color:var(--text-primary)}.service-select-meta{font-size:12px;color:var(--text-muted);margin-top:2px}.service-select-price{font-size:16px;font-weight:700;color:var(--accent-text)}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-month{font-size:15px;font-weight:600;color:var(--text-primary);text-transform:capitalize}.cal-nav{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:16px}.cal-day-header{text-align:center;font-size:11px;font-weight:600;color:var(--text-muted);padding:4px 0;text-transform:capitalize}.cal-day{text-align:center;padding:8px 4px;border-radius:8px;font-size:13px;border:none;background:none;color:var(--text-primary);cursor:pointer}.cal-day:hover:not(.empty):not(.past){background:var(--bg-hover)}.cal-day.selected{background:var(--accent);color:#fff;font-weight:600}.cal-day.empty{cursor:default}.cal-day.past{opacity:.3;cursor:default}.time-slot-grid{display:flex;flex-wrap:wrap;gap:6px}.time-slot{padding:8px 14px;border-radius:8px;border:1.5px solid var(--border);background:var(--bg-card);color:var(--text-primary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.time-slot.active{background:var(--accent);color:#fff;border-color:var(--accent)}.booking-summary-card{background:var(--bg-input);border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:8px}.summary-row{display:flex;justify-content:space-between;font-size:13px}.summary-row span{color:var(--text-secondary)}.summary-row strong{color:var(--text-primary)}.summary-row.total{padding-top:8px;border-top:1px solid var(--border);font-size:15px}.summary-row.total strong{color:var(--accent-text)}.btn-primary:disabled{opacity:.45;cursor:not-allowed;background:#93b8e4;color:#fffc}[data-theme=dark] .btn-primary:disabled{background:#3a5a8a;color:#ffffff80}.my-bookings-page{max-width:700px}.bookings-tabs{display:flex;gap:0;margin-bottom:14px;border-radius:10px;overflow:hidden;border:1px solid var(--border)}.bookings-tab{flex:1;padding:10px 16px;font-size:13px;font-weight:600;color:var(--text-secondary);background:var(--bg-card);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}.bookings-tab.active{background:var(--accent);color:#fff}.bookings-tab-count{font-size:10px;background:#ffffff4d;padding:1px 6px;border-radius:8px}.bookings-list{display:flex;flex-direction:column;gap:8px}.my-booking-card{background:var(--bg-card);border-radius:12px;padding:14px;box-shadow:var(--shadow-card)}[data-theme=dark] .my-booking-card{border:1px solid var(--border)}.my-booking-top{display:flex;gap:12px;align-items:flex-start}.my-booking-avatar{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0}.my-booking-info{flex:1;min-width:0}.my-booking-biz{font-size:14px;font-weight:600;color:var(--text-primary)}.my-booking-service{font-size:12px;color:var(--text-secondary);margin-top:1px}.my-booking-datetime{font-size:12px;color:var(--text-muted);margin-top:2px}.my-booking-right{text-align:right;flex-shrink:0}.my-booking-price{font-size:14px;font-weight:700;color:var(--accent-text);margin-bottom:4px}.my-booking-actions{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-light)}.btn-cancel{padding:6px 14px;font-size:12px;font-weight:600;border-radius:8px;border:1px solid #f44336;color:#f44336;background:none;cursor:pointer}.btn-review{padding:6px 14px;font-size:12px;font-weight:600;border-radius:8px;border:1px solid var(--accent);color:var(--accent-text);background:none;cursor:pointer}.btn-rebook{padding:6px 14px;font-size:12px;font-weight:600;border-radius:8px;border:none;background:var(--accent);color:#fff;cursor:pointer}.manage-bookings-page{padding:16px;max-width:600px;margin:0 auto}.week-strip{display:flex;gap:4px;overflow-x:auto;padding:8px 0 16px;-webkit-overflow-scrolling:touch}.week-day{flex:1;min-width:48px;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:12px;border:none;background:var(--bg-secondary);cursor:pointer;position:relative}.week-day.selected{background:var(--accent);color:#fff}.week-day.today .week-day-num{font-weight:700}.week-day-name{font-size:10px;text-transform:uppercase;opacity:.7}.week-day-num{font-size:16px;font-weight:600}.week-day.selected .week-day-name,.week-day.selected .week-day-num{color:#fff;opacity:1}.week-day-dot{width:4px;height:4px;border-radius:50%;background:var(--accent)}.week-day.selected .week-day-dot{background:#fff}.mgmt-booking-list{display:flex;flex-direction:column;gap:12px}.mgmt-booking-card{background:var(--bg-card);border-radius:12px;padding:14px;border:1px solid var(--border)}.mgmt-booking-top{display:flex;align-items:flex-start;gap:12px}.mgmt-booking-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;flex-shrink:0}.mgmt-booking-info{flex:1;min-width:0}.mgmt-booking-name{font-weight:600;font-size:14px;color:var(--text-primary)}.mgmt-booking-service{font-size:13px;color:var(--text-secondary)}.mgmt-booking-time{font-size:12px;color:var(--text-secondary);margin-top:2px}.booking-status{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap}.booking-status.pending{background:#fff3e0;color:#e65100}.booking-status.confirmed{background:#e8f5e9;color:#2e7d32}.booking-status.completed{background:#e3f2fd;color:#1565c0}.booking-status.cancelled{background:#fce4ec;color:#c62828}.booking-status.shipped{background:#e8eaf6;color:#283593}.booking-status.delivered{background:#e0f2f1;color:#00695c}[data-theme=dark] .booking-status.pending{background:#ff980026;color:#ffb74d}[data-theme=dark] .booking-status.confirmed{background:#4caf5026;color:#81c784}[data-theme=dark] .booking-status.completed{background:#2196f326;color:#64b5f6}[data-theme=dark] .booking-status.cancelled{background:#f4433626;color:#e57373}[data-theme=dark] .booking-status.shipped{background:#3f51b526;color:#7986cb}[data-theme=dark] .booking-status.delivered{background:#00968826;color:#4db6ac}.mgmt-booking-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.btn-action{flex:1;padding:8px 12px;font-size:13px;font-weight:600;border-radius:8px;border:none;cursor:pointer}.btn-action.confirm{background:#e8f5e9;color:#2e7d32}.btn-action.reject{background:#fce4ec;color:#c62828}.btn-action.complete{background:#e3f2fd;color:#1565c0}.btn-action.call{background:var(--accent);color:#fff}[data-theme=dark] .btn-action.confirm{background:#4caf5026;color:#81c784}[data-theme=dark] .btn-action.reject{background:#f4433626;color:#e57373}[data-theme=dark] .btn-action.complete{background:#2196f326;color:#64b5f6}.manage-orders-page{padding:16px;max-width:600px;margin:0 auto}.order-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch}.order-tab{padding:8px 16px;border-radius:20px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:6px}.order-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.order-tab-count{background:#00000026;padding:1px 7px;border-radius:10px;font-size:11px}.order-tab.active .order-tab-count{background:#ffffff40}.order-list{display:flex;flex-direction:column;gap:12px}.order-card{background:var(--bg-card);border-radius:12px;padding:14px;border:1px solid var(--border)}.order-card-top{display:flex;gap:12px;align-items:flex-start}.order-card-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;flex-shrink:0}.order-card-info{flex:1;min-width:0}.order-card-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.order-num{font-weight:700;font-size:14px;color:var(--text-primary)}.order-customer{font-size:13px;color:var(--text-primary);font-weight:500}.order-items{font-size:12px;color:var(--text-secondary);margin-top:2px}.order-card-bottom{display:flex;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.order-time{font-size:12px;color:var(--text-secondary)}.order-total{font-weight:700;font-size:14px;color:var(--text-primary)}.order-actions{display:flex;gap:8px;margin-top:10px}.queue-page{padding:16px;max-width:600px;margin:0 auto}.queue-serving-card{background:linear-gradient(135deg,var(--accent),#7c3aed);border-radius:16px;padding:20px;color:#fff;margin-bottom:20px}.queue-serving-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;opacity:.85;margin-bottom:12px}.queue-serving-content{display:flex;align-items:center;gap:14px;margin-bottom:16px}.queue-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:15px;flex-shrink:0}.queue-info{flex:1}.queue-name{font-weight:600;font-size:16px}.queue-service{font-size:13px;opacity:.85}.queue-serving-actions{display:flex;gap:10px}.queue-serving-actions .btn-action{background:#fff3;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.queue-serving-actions .btn-action.complete{background:#ffffff4d;color:#fff}.queue-section-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:16px 0 12px}.queue-list{display:flex;flex-direction:column;gap:8px}.queue-ticket{display:flex;align-items:center;gap:12px;background:var(--bg-card);border-radius:12px;padding:12px;border:1px solid var(--border)}.queue-position{font-weight:700;font-size:16px;color:var(--accent);min-width:32px}.queue-ticket-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto}.queue-wait{font-size:12px;color:var(--text-secondary)}.btn-icon-danger{width:28px;height:28px;border-radius:50%;border:none;background:#fce4ec;color:#c62828;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center}[data-theme=dark] .btn-icon-danger{background:#f4433626;color:#e57373}.queue-call-bar{position:sticky;bottom:0;padding:12px 0;background:var(--bg-primary)}.queue-call-bar .btn-primary{width:100%}.wallet-page{padding:16px;max-width:600px;margin:0 auto}.wallet-balance-card{background:linear-gradient(135deg,var(--accent),#7c3aed);border-radius:20px;padding:28px 24px;color:#fff;text-align:center;margin-bottom:20px}.wallet-balance-label{font-size:13px;text-transform:uppercase;letter-spacing:1px;opacity:.85}.wallet-balance-amount{font-size:40px;font-weight:800;margin:8px 0 20px}.wallet-balance-actions{display:flex;gap:12px;justify-content:center}.btn-wallet-action{padding:10px 28px;border-radius:24px;border:none;font-size:14px;font-weight:600;cursor:pointer}.btn-wallet-action.deposit{background:#ffffff40;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.btn-wallet-action.transfer{background:#fff;color:var(--accent)}.wallet-section-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:16px 0 12px}.wallet-tx-list{display:flex;flex-direction:column;gap:2px}.wallet-tx-item{display:flex;align-items:center;gap:12px;padding:14px 12px;border-bottom:1px solid var(--border)}.wallet-tx-icon{width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.wallet-tx-icon.deposit{background:#e8f5e9}.wallet-tx-icon.payment{background:#e3f2fd}.wallet-tx-icon.withdrawal{background:#fce4ec}.wallet-tx-icon.transfer{background:#fff3e0}[data-theme=dark] .wallet-tx-icon.deposit{background:#4caf5026}[data-theme=dark] .wallet-tx-icon.payment{background:#2196f326}[data-theme=dark] .wallet-tx-icon.withdrawal{background:#f4433626}[data-theme=dark] .wallet-tx-icon.transfer{background:#ff980026}.wallet-tx-info{flex:1;min-width:0}.wallet-tx-desc{font-size:13px;font-weight:500;color:var(--text-primary);word-break:break-word}.wallet-tx-type{font-size:11px;color:var(--text-secondary);margin-top:2px}.wallet-tx-right{text-align:right;flex-shrink:0}.wallet-tx-amount{font-size:14px;font-weight:700}.wallet-tx-amount.positive{color:#2e7d32}.wallet-tx-amount.negative{color:#c62828}[data-theme=dark] .wallet-tx-amount.positive{color:#81c784}[data-theme=dark] .wallet-tx-amount.negative{color:#e57373}.wallet-tx-date{font-size:11px;color:var(--text-secondary)}.reviews-page{padding:16px;max-width:600px;margin:0 auto}.reviews-summary{display:flex;gap:20px;background:var(--bg-card);border-radius:16px;padding:20px;border:1px solid var(--border);margin-bottom:16px}.reviews-avg{text-align:center;min-width:80px}.reviews-avg-number{font-size:40px;font-weight:800;color:var(--text-primary);line-height:1}.reviews-avg-stars{margin:6px 0}.star{font-size:16px;color:#ddd}.star.filled{color:#ffc107}[data-theme=dark] .star{color:#555}[data-theme=dark] .star.filled{color:#ffc107}[data-theme=dark] .star-display{color:#555}.reviews-avg-count{font-size:12px;color:var(--text-secondary)}.reviews-breakdown{flex:1}.reviews-breakdown-title{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:8px}.reviews-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.reviews-bar-label{font-size:12px;color:var(--text-secondary);min-width:24px}.reviews-bar-track{flex:1;height:6px;background:var(--bg-secondary);border-radius:3px;overflow:hidden}.reviews-bar-fill{height:100%;background:#ffc107;border-radius:3px;transition:width .3s}.reviews-bar-count{font-size:12px;color:var(--text-secondary);min-width:16px;text-align:right}.reviews-filters{display:flex;gap:6px;overflow-x:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch}.reviews-filter-pill{padding:6px 16px;border-radius:20px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:13px;cursor:pointer;white-space:nowrap}.reviews-filter-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.reviews-list{display:flex;flex-direction:column;gap:12px}.review-card{background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid var(--border)}.review-card-top{display:flex;align-items:center;gap:12px;margin-bottom:8px}.review-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px;flex-shrink:0}.review-meta{flex:1}.review-name{font-weight:600;font-size:14px;color:var(--text-primary)}.review-service{font-size:12px;color:var(--text-secondary)}.review-date{font-size:11px;color:var(--text-secondary)}.review-stars{margin-bottom:8px}.review-text{font-size:13px;color:var(--text-primary);line-height:1.5}.mgmt-stats{display:flex;gap:8px;margin-bottom:16px}.mgmt-stat{flex:1;background:var(--bg-card);border-radius:12px;padding:14px 10px;text-align:center;border:1px solid var(--border)}.mgmt-stat-value{display:block;font-size:22px;font-weight:700;color:var(--text-primary)}.mgmt-stat-value.confirmed{color:#2e7d32}.mgmt-stat-value.pending{color:#e65100}[data-theme=dark] .mgmt-stat-value.confirmed{color:#81c784}[data-theme=dark] .mgmt-stat-value.pending{color:#ffb74d}.mgmt-stat-label{display:block;font-size:11px;color:var(--text-secondary);margin-top:4px}@media(max-width:480px){.reviews-summary{flex-direction:column;text-align:center}.wallet-balance-amount{font-size:32px}.wallet-balance-actions{flex-direction:column;gap:8px}.btn-wallet-action{width:100%}}.following-page{padding:16px;max-width:600px;margin:0 auto}.page-subtitle{font-size:13px;color:var(--text-secondary);margin-top:4px}.following-list{display:flex;flex-direction:column;gap:8px}.following-card{display:flex;align-items:center;gap:12px;background:var(--bg-card);border-radius:12px;padding:14px;border:1px solid var(--border)}.following-card.blocked{opacity:.6}.following-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:15px;flex-shrink:0}.following-info{flex:1;min-width:0}.following-name{font-weight:600;font-size:14px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.following-meta{font-size:12px;color:var(--text-secondary);margin-top:2px}.following-actions{display:flex;gap:6px;flex-shrink:0}.btn-following-action{padding:6px 12px;font-size:12px;font-weight:600;border-radius:8px;border:none;cursor:pointer}.btn-following-action.unfollow{background:#fce4ec;color:#c62828}.btn-following-action.block{background:transparent;color:var(--text-secondary);border:1px solid var(--border);transition:background .15s,border-color .15s}.btn-following-action.block:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.btn-following-action.unblock{background:#e8f5e9;color:#2e7d32}[data-theme=dark] .btn-following-action.unfollow{background:#f4433626;color:#e57373}[data-theme=dark] .btn-following-action.block{background:#ffffff14}[data-theme=dark] .btn-following-action.unblock{background:#4caf5026;color:#81c784}.following-section-title{font-size:14px;font-weight:600;color:var(--text-secondary);margin:20px 0 10px}.activity-page{padding:16px;max-width:600px;margin:0 auto}.activity-feed{display:flex;flex-direction:column;gap:16px}.activity-post{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border)}.activity-post-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.activity-post-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;flex-shrink:0}.activity-post-meta{flex:1}.activity-post-name{font-weight:600;font-size:14px;color:var(--text-primary)}.activity-post-time{font-size:12px;color:var(--text-secondary)}.activity-post-text{font-size:14px;line-height:1.6;color:var(--text-primary);margin-bottom:12px}.activity-reactions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px;position:relative}.activity-reaction-chip{padding:4px 10px;border-radius:16px;background:var(--bg-secondary);border:1px solid var(--border);font-size:13px;cursor:pointer}.activity-reaction-add{width:28px;height:28px;border-radius:50%;border:1px dashed var(--border);background:none;color:var(--text-secondary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center}.activity-reaction-picker{position:absolute;bottom:100%;left:0;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:8px;display:flex;gap:4px;box-shadow:0 4px 12px #00000026;z-index:10}.reaction-pick{width:32px;height:32px;border:none;background:none;font-size:18px;cursor:pointer;border-radius:6px}.reaction-pick:hover{background:var(--bg-secondary)}.activity-post-actions{padding-top:8px;border-top:1px solid var(--border)}.activity-comment-toggle{border:none;background:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:4px 0}.activity-comments{margin-top:12px;display:flex;flex-direction:column;gap:10px}.activity-comment{display:flex;gap:10px;align-items:flex-start}.activity-comment-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:10px;flex-shrink:0}.activity-comment-body{flex:1;background:var(--bg-secondary);border-radius:10px;padding:8px 12px;font-size:13px}.activity-comment-author{font-weight:600;color:var(--text-primary);margin-right:6px}.activity-comment-text{color:var(--text-primary)}.activity-comment-time{display:block;font-size:11px;color:var(--text-secondary);margin-top:4px}.activity-comment-input{display:flex;gap:8px;align-items:center;margin-top:4px}.activity-comment-input input{flex:1;padding:8px 12px;border-radius:20px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:13px}.btn-send{padding:8px 16px;border-radius:20px;border:none;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer}.publish-page{padding:16px;max-width:600px;margin:0 auto}.publish-compose{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border);margin-bottom:24px}.publish-textarea{width:100%;border:1px solid var(--border);border-radius:12px;padding:14px;font-size:14px;resize:vertical;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;min-height:100px}.publish-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.publish-char-count{font-size:12px;color:var(--text-secondary)}.publish-success{margin-top:8px;padding:8px;background:#e8f5e9;color:#2e7d32;border-radius:8px;font-size:13px;text-align:center;font-weight:600}[data-theme=dark] .publish-success{background:#4caf5026;color:#81c784}.publish-section-title{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.publish-list{display:flex;flex-direction:column;gap:12px}.publish-post-card{background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid var(--border)}.publish-post-text{font-size:14px;line-height:1.5;color:var(--text-primary);margin-bottom:12px}.publish-post-footer{display:flex;justify-content:space-between;align-items:center}.publish-post-stats{display:flex;gap:10px;font-size:13px;color:var(--text-secondary)}.publish-reaction,.publish-comments{font-size:13px}.publish-post-meta{display:flex;align-items:center;gap:8px}.publish-post-time{font-size:12px;color:var(--text-secondary)}@media(max-width:480px){.following-card{flex-wrap:wrap}.following-actions{width:100%;margin-top:8px}.following-actions .btn-following-action{flex:1}}.chat-page{display:flex;flex-direction:column;height:100%;max-width:600px;margin:0 auto}.chat-header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--bg-card)}.chat-header-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px}.chat-header-name{font-weight:600;font-size:15px;color:var(--text-primary)}.chat-header-status{font-size:12px;color:var(--text-secondary)}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.chat-welcome{text-align:center;padding:40px 20px}.chat-welcome-icon{font-size:48px;margin-bottom:12px}.chat-welcome h3{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.chat-welcome p{font-size:13px;color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chat-suggestion{padding:8px 16px;border-radius:20px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);font-size:13px;cursor:pointer}.chat-suggestion:hover{background:var(--bg-secondary)}.chat-bubble{max-width:80%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.5}.chat-bubble.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}.chat-bubble.assistant{align-self:flex-start;background:var(--bg-secondary);color:var(--text-primary);border-bottom-left-radius:4px}.chat-bubble-text{word-break:break-word}.chat-bubble.assistant .chat-bubble-text p{margin:0 0 8px}.chat-bubble.assistant .chat-bubble-text p:last-child{margin-bottom:0}.chat-bubble.assistant .chat-bubble-text strong{font-weight:600}.chat-bubble.assistant .chat-bubble-text ul,.chat-bubble.assistant .chat-bubble-text ol{margin:4px 0 8px;padding-left:20px}.chat-bubble.assistant .chat-bubble-text li{margin-bottom:4px}.chat-bubble.assistant .chat-bubble-text a{color:#1a73e8;text-decoration:underline;cursor:pointer;word-break:break-all}.chat-bubble.assistant .chat-bubble-text a:hover{color:#1557b0}.chat-bubble.assistant .chat-bubble-text code{background:#00000014;padding:1px 4px;border-radius:3px;font-size:.9em}.chat-bubble.assistant .chat-bubble-text hr{border:none;border-top:1px solid rgba(0,0,0,.1);margin:8px 0}.chat-bubble-time{font-size:10px;opacity:.7;margin-top:4px}.chat-typing-dots{display:flex;gap:4px;padding:4px 0}.chat-typing-dots span{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:typingDot 1.4s infinite}.chat-typing-dots span:nth-child(2){animation-delay:.2s}.chat-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.chat-input-bar{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--border);background:var(--bg-card)}.chat-input{flex:1;padding:10px 16px;border-radius:24px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:14px}.chat-send-btn{padding:10px 20px;border-radius:24px;border:none;background:var(--accent);color:#fff;font-weight:600;font-size:14px;cursor:pointer}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-location-card{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#1a73e814;border:1px solid rgba(26,115,232,.2);border-radius:12px;margin-bottom:6px;text-decoration:none;color:inherit;transition:background .15s}.chat-location-card:hover{background:#1a73e826}.chat-location-icon{font-size:24px;flex-shrink:0}.chat-location-info{min-width:0}.chat-location-label{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-location-coords{font-size:12px;color:var(--text-secondary);margin-top:2px}.chat-action-btn{padding:8px;border-radius:50%;border:1px solid var(--border);background:var(--bg-secondary);cursor:pointer;font-size:18px;line-height:1;flex-shrink:0;transition:background .15s}.chat-action-btn:hover:not(:disabled){background:var(--border)}.chat-action-btn:disabled{opacity:.4;cursor:not-allowed}.chat-clear-btn{margin-left:auto;padding:4px 10px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:14px}.chat-clear-btn:hover{background:var(--bg-secondary)}.chat-bubble-image{max-width:240px;max-height:200px;border-radius:12px;margin-bottom:6px;object-fit:cover}.chat-bubble-file{padding:6px 10px;background:#0000000d;border-radius:8px;font-size:13px;margin-bottom:4px}.chat-attachment-bar{display:flex;gap:8px;padding:8px 16px;border-top:1px solid var(--border);background:var(--bg-card);overflow-x:auto}.chat-attachment-preview{position:relative;flex-shrink:0}.chat-attachment-thumb{width:60px;height:60px;border-radius:8px;object-fit:cover;border:1px solid var(--border)}.chat-attachment-file{display:flex;align-items:center;padding:8px 12px;background:var(--bg-secondary);border-radius:8px;font-size:12px;height:60px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-attachment-remove{position:absolute;top:-4px;right:-4px;width:20px;height:20px;border-radius:50%;border:none;background:var(--accent);color:#fff;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center}.directions-page{padding:16px;max-width:600px;margin:0 auto}.directions-form{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border);margin-bottom:16px}.directions-form .form-group{margin-bottom:12px}.directions-modes{display:flex;gap:8px;margin-bottom:16px}.directions-mode{flex:1;padding:10px;border-radius:12px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:13px;cursor:pointer;text-align:center}.directions-mode.active{background:var(--accent);color:#fff;border-color:var(--accent)}.directions-result{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border)}.directions-summary{display:flex;gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.directions-stat{text-align:center;flex:1}.directions-stat-value{display:block;font-size:24px;font-weight:700;color:var(--text-primary)}.directions-stat-label{font-size:12px;color:var(--text-secondary)}.directions-steps{display:flex;flex-direction:column;gap:12px}.directions-step{display:flex;align-items:flex-start;gap:12px}.directions-step-num{width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.directions-step-text{font-size:13px;color:var(--text-primary);line-height:1.5;padding-top:2px}.flights-page{padding:16px;max-width:600px;margin:0 auto}.flights-form{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border);margin-bottom:16px}.flights-form .form-group{margin-bottom:12px}.flights-results-header{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px}.flights-list{display:flex;flex-direction:column;gap:12px}.flight-card{background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid var(--border)}.flight-airline{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;color:var(--text-secondary)}.flight-airline-badge{width:28px;height:28px;border-radius:6px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.flight-times{display:flex;align-items:center;gap:12px;margin-bottom:12px}.flight-time{font-size:18px;font-weight:700;color:var(--text-primary)}.flight-duration{flex:1;text-align:center;position:relative}.flight-duration-line{height:2px;background:var(--border);margin-bottom:4px}.flight-duration-text{font-size:11px;color:var(--text-secondary);display:block}.flight-stops{font-size:11px;color:var(--accent);display:block}.flight-price-section{display:flex;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.flight-price{font-size:22px;font-weight:800;color:var(--text-primary)}.flight-per-person{font-size:11px;color:var(--text-secondary);flex:1}.hotels-page{padding:16px;max-width:600px;margin:0 auto}.hotels-form{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border);margin-bottom:16px}.hotels-form .form-group{margin-bottom:12px}.hotels-results-header{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px}.hotels-list{display:flex;flex-direction:column;gap:12px}.hotel-card{background:var(--bg-card);border-radius:12px;border:1px solid var(--border);overflow:hidden}.hotel-image-placeholder{height:120px;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-size:40px}.hotel-card-body{padding:14px}.hotel-name{font-weight:600;font-size:15px;color:var(--text-primary);margin-bottom:4px}.hotel-stars{margin-bottom:6px}.hotel-rating{display:flex;align-items:center;gap:6px;margin-bottom:8px}.hotel-rating-badge{background:var(--accent);color:#fff;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:700}.hotel-review-count{font-size:12px;color:var(--text-secondary)}.hotel-amenities{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.hotel-amenity{padding:3px 8px;border-radius:6px;background:var(--bg-secondary);font-size:11px;color:var(--text-secondary)}.hotel-price-row{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--border)}.hotel-price-amount{font-size:22px;font-weight:800;color:var(--text-primary)}.hotel-price-label{font-size:11px;color:var(--text-secondary);margin-left:4px}.btn-sm{padding:8px 16px;border-radius:8px;border:none;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer}@media(max-width:480px){.flight-time{font-size:15px}.flight-price{font-size:18px}.chat-bubble{max-width:90%}}.properties-page{padding:16px;max-width:600px;margin:0 auto}.property-filters{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.property-filter-group{flex:1;min-width:200px}.property-filter-group.guests{min-width:100px;max-width:120px}.property-filter-group label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.property-price-pills{display:flex;gap:4px;flex-wrap:wrap}.property-price-pill{padding:6px 10px;border-radius:16px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:11px;cursor:pointer;white-space:nowrap}.property-price-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.property-results-header{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px}.property-list{display:flex;flex-direction:column;gap:12px}.property-card{background:var(--bg-card);border-radius:12px;border:1px solid var(--border);overflow:hidden;cursor:pointer;transition:box-shadow .2s}.property-card:hover{box-shadow:0 4px 16px #0000001a}.property-image-placeholder{height:140px;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-size:48px}.property-card-body{padding:14px}.property-card-header{display:flex;justify-content:space-between;margin-bottom:4px}.property-type-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:6px;background:var(--accent);color:#fff}.property-city{font-size:12px;color:var(--text-secondary)}.property-name{font-weight:600;font-size:15px;color:var(--text-primary);margin-bottom:6px}.property-rating-row{display:flex;align-items:center;gap:4px;margin-bottom:8px}.property-rating-val{font-weight:600;font-size:13px;color:var(--text-primary)}.property-review-count{font-size:12px;color:var(--text-secondary)}.property-amenities-row{display:flex;gap:4px;margin-bottom:10px}.property-price-row{display:flex;justify-content:space-between;align-items:center;padding-top:10px;border-top:1px solid var(--border)}.property-price{font-size:20px;font-weight:800;color:var(--text-primary)}.property-price-label{font-size:12px;color:var(--text-secondary)}.property-detail-page{max-width:600px;margin:0 auto}.property-hero{position:relative;height:220px;background:var(--bg-secondary);overflow:hidden}.property-hero-placeholder{height:100%;display:flex;align-items:center;justify-content:center;font-size:64px}.property-hero-overlay{position:absolute;bottom:0;left:0;right:0;padding:20px 16px;background:linear-gradient(transparent,#000000b3);color:#fff}.property-hero-name{font-size:20px;font-weight:700;margin:0}.property-hero-location{font-size:13px;opacity:.9;margin-top:2px}.property-hero-rating{font-size:13px;margin-top:4px}.property-quick-info{display:flex;gap:8px;padding:16px;overflow-x:auto}.property-info-chip{flex:1;min-width:80px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:10px;text-align:center}.property-info-label{display:block;font-size:10px;color:var(--text-secondary);text-transform:uppercase}.property-info-value{display:block;font-size:13px;font-weight:600;color:var(--text-primary);margin-top:2px}.property-tab-content{padding:16px}.property-about p{font-size:14px;line-height:1.6;color:var(--text-primary);margin-bottom:16px}.property-address{font-size:13px;color:var(--text-secondary)}.property-amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.property-amenity-item{padding:10px;background:var(--bg-secondary);border-radius:8px;font-size:13px;color:var(--text-primary);text-align:center}.property-reviews-placeholder{font-size:16px;color:var(--text-primary);padding:20px 0}.property-booking-form{padding:16px;background:var(--bg-card);border-top:1px solid var(--border)}.property-booking-form h3{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:14px}.property-booking-form .form-group{margin-bottom:12px}.property-availability-result{margin-top:16px}.property-available-badge{background:#e8f5e9;color:#2e7d32;padding:8px 16px;border-radius:8px;font-weight:600;text-align:center;margin-bottom:12px}[data-theme=dark] .property-available-badge{background:#4caf5026;color:#81c784}.property-price-summary{margin-bottom:16px}.property-price-line{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;color:var(--text-primary)}.property-price-line.total{font-weight:700;font-size:16px;border-top:1px solid var(--border);padding-top:10px;margin-top:6px}.property-unavailable{padding:12px;background:#fce4ec;color:#c62828;border-radius:8px;text-align:center;font-size:13px;margin-top:12px}[data-theme=dark] .property-unavailable{background:#f4433626;color:#e57373}.booking-success{text-align:center;padding:60px 20px}.booking-success-icon{font-size:64px;margin-bottom:16px}.booking-success h2{font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.booking-success p{color:var(--text-secondary);margin-bottom:24px}@media(max-width:480px){.property-hero{height:180px}.property-hero-name{font-size:17px}.property-quick-info{gap:6px}.property-amenities-grid{grid-template-columns:repeat(2,1fr)}.property-filters{flex-direction:column}.property-filter-group.guests{max-width:100%}}.place-order-page{padding:16px;max-width:600px;margin:0 auto}.place-order-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.place-order-page .page-header h1{font-size:22px;font-weight:700;color:var(--text-primary)}.btn-cart{padding:8px 16px;border-radius:20px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px}.cart-badge{background:var(--accent);color:#fff;border-radius:50%;min-width:20px;height:20px;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;flex-shrink:0}.order-categories{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto;padding-bottom:4px}.order-cat-pill{padding:8px 16px;border-radius:20px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font-size:13px;white-space:nowrap;transition:all .2s}.order-cat-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.order-cart-panel{background:var(--bg-card);border-radius:12px;padding:16px;margin-bottom:16px;border:1px solid var(--border)}.order-cart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.order-cart-header h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.btn-text-danger{background:none;border:none;color:#f44336;cursor:pointer;font-size:13px}.order-cart-empty{text-align:center;padding:16px;color:var(--text-secondary)}.order-cart-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.order-cart-item:last-of-type{border-bottom:none}.order-cart-item-name{font-size:14px;font-weight:500;color:var(--text-primary)}.order-cart-item-price{font-size:13px;color:var(--text-secondary)}.order-cart-item-controls{display:flex;align-items:center;gap:8px}.btn-qty{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}.order-cart-qty{font-size:14px;font-weight:600;min-width:20px;text-align:center;color:var(--text-primary)}.order-cart-total{display:flex;justify-content:space-between;padding:12px 0 8px;font-size:16px;font-weight:600;color:var(--text-primary)}.order-cart-total-amount{color:var(--accent)}.order-submit-btn{width:100%;margin-top:8px}.order-menu-list{display:flex;flex-direction:column;gap:8px}.order-menu-item{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card);border-radius:12px;padding:14px;border:1px solid var(--border);gap:12px}.order-menu-item-name{font-size:15px;font-weight:600;color:var(--text-primary)}.order-menu-item-desc{font-size:13px;color:var(--text-secondary);margin-top:2px}.order-menu-item-price{font-size:15px;font-weight:700;color:var(--accent);margin-top:4px}.btn-add-cart{padding:8px 16px;border-radius:8px;border:none;background:var(--accent);color:#fff;cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap;flex-shrink:0}.order-cart-bar{position:fixed;bottom:70px;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;padding:12px 24px;border-radius:24px;display:flex;justify-content:space-between;align-items:center;gap:24px;cursor:pointer;min-width:260px;box-shadow:0 4px 16px #0003;font-weight:600;font-size:14px;z-index:50}.order-cart-bar-total{font-size:16px}.join-queue-page{padding:16px;max-width:600px;margin:0 auto}.join-queue-page .page-header{margin-bottom:16px}.join-queue-page .page-header h1{font-size:22px;font-weight:700;color:var(--text-primary)}.jq-business-card{display:flex;align-items:center;gap:14px;background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid var(--border);margin-bottom:16px}.jq-business-avatar{font-size:36px}.jq-business-name{font-size:17px;font-weight:700;color:var(--text-primary)}.jq-business-cat{font-size:13px;color:var(--text-secondary)}.jq-status-card{background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid var(--border);margin-bottom:20px}.jq-status-title{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px}.jq-ticket-card{background:var(--bg-card);border-radius:16px;padding:24px;border:2px solid var(--accent);text-align:center}.jq-ticket-icon{font-size:48px;margin-bottom:8px}.jq-ticket-title{font-size:14px;color:var(--text-secondary);font-weight:600;margin-bottom:4px}.jq-ticket-number{font-size:28px;font-weight:800;color:var(--accent);margin-bottom:20px}.jq-ticket-details{display:flex;justify-content:center;gap:32px;margin-bottom:24px}.jq-ticket-detail{display:flex;flex-direction:column;align-items:center}.jq-ticket-detail-label{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.jq-ticket-detail-value{font-size:20px;font-weight:700;color:var(--text-primary)}.btn-danger{padding:12px 24px;border-radius:10px;border:none;background:#f44336;color:#fff;cursor:pointer;font-size:15px;font-weight:600}.jq-leave-btn{width:100%}.jq-join-section{margin-top:8px}.jq-join-btn{width:100%;padding:16px;font-size:17px;border-radius:12px}.my-orders-page{padding:16px;max-width:600px;margin:0 auto}.my-orders-page .page-header{margin-bottom:16px}.my-orders-page .page-header h1{font-size:22px;font-weight:700;color:var(--text-primary)}.order-tabs{display:flex;gap:0;margin-bottom:16px;border-radius:10px;overflow:hidden;border:1px solid var(--border)}.order-tab{flex:1;padding:10px;border:none;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.order-tab.active{background:var(--accent);color:#fff}.my-orders-list{display:flex;flex-direction:column;gap:12px}.my-order-card{background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid var(--border)}.my-order-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.my-order-number{font-size:15px;font-weight:700;color:var(--text-primary)}.my-order-status-badge{font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px;display:inline-flex;align-items:center;gap:4px}.my-order-status-badge.pending{background:#fff3e0;color:#e65100}.my-order-status-badge.confirmed{background:#e8f5e9;color:#2e7d32}.my-order-status-badge.shipped{background:#e3f2fd;color:#1565c0}.my-order-status-badge.delivered{background:#e8f5e9;color:#2e7d32}.my-order-status-badge.cancelled{background:#ffebee;color:#c62828}[data-theme=dark] .my-order-status-badge.pending{background:#e6510033}[data-theme=dark] .my-order-status-badge.confirmed{background:#2e7d3233}[data-theme=dark] .my-order-status-badge.shipped{background:#1565c033}[data-theme=dark] .my-order-status-badge.delivered{background:#2e7d3233}[data-theme=dark] .my-order-status-badge.cancelled{background:#c6282833}.my-order-business{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.my-order-items{font-size:13px;color:var(--text-secondary);margin-bottom:10px;line-height:1.4}.my-order-bottom{display:flex;justify-content:space-between;align-items:center}.my-order-total{font-size:15px;font-weight:700;color:var(--accent)}.my-order-date{font-size:12px;color:var(--text-secondary)}.leave-review-page{padding:16px;max-width:600px;margin:0 auto}.leave-review-page .page-header{margin-bottom:16px}.leave-review-page .page-header h1{font-size:22px;font-weight:700;color:var(--text-primary)}.lr-service-card{background:var(--bg-card);border-radius:12px;padding:16px;border:1px solid var(--border);margin-bottom:20px}.lr-service-title{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px}.lr-service-row{display:flex;justify-content:space-between;padding:6px 0}.lr-service-label{font-size:13px;color:var(--text-secondary)}.lr-service-value{font-size:13px;font-weight:600;color:var(--text-primary)}.lr-rating-section{text-align:center;margin-bottom:20px}.lr-rating-label{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.lr-stars{display:flex;justify-content:center;gap:8px}.lr-star{font-size:40px;background:none;border:none;cursor:pointer;color:var(--border);transition:color .15s}.lr-star.filled{color:#ffc107}.lr-tap-hint{font-size:13px;color:var(--text-secondary);margin-top:8px}.lr-error{font-size:13px;color:#f44336;margin-top:8px}.lr-text-section{margin-bottom:20px}.lr-text-label{font-size:14px;font-weight:600;color:var(--text-primary);display:block;margin-bottom:8px}.lr-textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);font-size:14px;resize:vertical;font-family:inherit}.lr-textarea::placeholder{color:var(--text-secondary)}.lr-submit-btn{width:100%}.my-files-page{padding:16px;max-width:600px;margin:0 auto}.my-files-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.my-files-page .page-header h1{font-size:22px;font-weight:700;color:var(--text-primary)}.mf-toast{position:fixed;top:70px;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;z-index:200;box-shadow:0 4px 12px #00000026}.mf-file-list{display:flex;flex-direction:column;gap:8px}.mf-file-item{display:flex;align-items:center;gap:12px;background:var(--bg-card);border-radius:12px;padding:14px;border:1px solid var(--border)}.mf-file-icon{font-size:28px;flex-shrink:0}.mf-file-info{flex:1;min-width:0}.mf-file-name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mf-file-meta{font-size:12px;color:var(--text-secondary);margin-top:2px}.mf-file-actions{display:flex;gap:4px;flex-shrink:0}.btn-icon-sm{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--bg-primary);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.btn-icon-sm.danger{color:#f44336}.btn-icon-sm:hover{background:var(--bg-card)}.notifications-page{padding:16px;max-width:600px;margin:0 auto}.notifications-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.notifications-page .page-header h1{font-size:22px;font-weight:700;color:var(--text-primary)}.btn-text{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;font-weight:600}.notif-list{display:flex;flex-direction:column;gap:4px}.notif-item{display:flex;align-items:flex-start;gap:12px;background:var(--bg-card);border-radius:12px;padding:14px;border:1px solid var(--border);cursor:pointer;transition:background .15s;position:relative}.notif-item.unread{background:var(--bg-card);border-left:3px solid var(--accent)}.notif-item:hover{background:var(--bg-hover, var(--bg-card))}.notif-icon{font-size:24px;flex-shrink:0;margin-top:2px}.notif-content{flex:1;min-width:0}.notif-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.notif-type{font-size:11px;color:var(--text-secondary);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.notif-time{font-size:12px;color:var(--text-secondary)}.notif-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.notif-body{font-size:13px;color:var(--text-secondary);line-height:1.4}.notif-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:6px}@media(max-width:480px){.place-order-page,.join-queue-page,.my-orders-page,.leave-review-page,.my-files-page,.notifications-page{padding:12px}.order-cart-bar{min-width:220px;bottom:65px}.jq-ticket-details{gap:20px}.mf-file-actions{gap:4px}.btn-icon-sm{min-width:44px;min-height:44px;width:44px;height:44px;font-size:16px}.lr-star{font-size:32px}}.customer-wallet-page{padding:16px;max-width:600px;margin:0 auto}.customer-topup-form{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border);margin-bottom:16px}.topup-presets{display:flex;gap:8px;margin-bottom:12px}.topup-preset{flex:1;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:15px;font-weight:600;cursor:pointer;text-align:center}.topup-preset.active{background:var(--accent);color:#fff;border-color:var(--accent)}.topup-custom{display:flex;gap:8px}.topup-custom .form-input{flex:1}.user-profile-page{padding:16px;max-width:600px;margin:0 auto}.user-profile-avatar-section{text-align:center;padding:24px 0}.user-profile-avatar{width:80px;height:80px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;margin:0 auto 12px}.user-profile-name-display{font-size:20px;font-weight:700;color:var(--text-primary)}.user-profile-email{font-size:13px;color:var(--text-secondary);margin-top:4px}.user-profile-form{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border);margin-bottom:24px}.user-profile-form .form-group{margin-bottom:16px}.form-hint{display:block;font-size:11px;color:var(--text-secondary);margin-top:4px}.user-profile-danger{background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid #f44336}.user-profile-danger h3{font-size:14px;color:#f44336;margin-bottom:12px}.btn-danger-outline{padding:10px 20px;border-radius:8px;border:1px solid #f44336;background:none;color:#f44336;font-weight:600;font-size:13px;cursor:pointer}.sivar-map-page{display:flex;flex-direction:column;height:100%;position:relative}.map-search-overlay{position:absolute;top:12px;left:12px;right:12px;z-index:10}.map-container{flex:1;min-height:300px}.map-placeholder-large{height:100%;min-height:300px;background:var(--bg-secondary);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.map-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;padding:20px}.map-marker{width:40px;height:40px;border:none;background:none;font-size:24px;cursor:pointer;border-radius:50%;transition:transform .2s}.map-marker.selected{transform:scale(1.4)}.map-marker.closed{opacity:.5}.map-label{font-size:14px;color:var(--text-secondary);margin-top:8px}.map-business-card{position:absolute;bottom:160px;left:12px;right:12px;background:var(--bg-card);border-radius:16px;padding:16px;border:1px solid var(--border);box-shadow:0 4px 16px #00000026;z-index:10}.map-biz-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.map-biz-name{font-weight:600;font-size:15px;color:var(--text-primary)}.map-biz-category{font-size:12px;color:var(--text-secondary)}.map-biz-close{width:28px;height:28px;border-radius:50%;border:none;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:14px}.map-biz-details{font-size:13px;color:var(--text-primary);margin-bottom:10px;display:flex;align-items:center;gap:8px}.map-biz-status{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.map-biz-status.open{background:#e8f5e9;color:#2e7d32}.map-biz-status.closed{background:#fce4ec;color:#c62828}[data-theme=dark] .map-biz-status.open{background:#4caf5026;color:#81c784}[data-theme=dark] .map-biz-status.closed{background:#f4433626;color:#e57373}.map-biz-actions{display:flex;gap:8px}.map-list-panel{padding:12px 16px;background:var(--bg-card);border-top:1px solid var(--border);max-height:200px;overflow-y:auto}.map-list-panel h3{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.map-biz-list{display:flex;flex-direction:column;gap:4px}.map-biz-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border-radius:8px;cursor:pointer}.map-biz-list-item:hover,.map-biz-list-item.selected{background:var(--bg-secondary)}.map-biz-list-name{font-size:13px;font-weight:500;color:var(--text-primary)}.map-biz-list-cat{font-size:11px;color:var(--text-secondary)}:root{--os-statusbar-h: 44px;--os-dock-h: 96px;--os-glass-bg: rgba(255, 255, 255, .08);--os-glass-border: rgba(255, 255, 255, .12);--os-glass-blur: 24px;--os-text: #f0f0f5;--os-text-dim: rgba(255, 255, 255, .55);--os-shadow: 0 8px 32px rgba(0, 0, 0, .4);--os-radius: 20px;--os-icon-size: 64px;--os-dock-icon-size: 52px;--os-window-max: 540px;--os-window-top: 60px}.os-shell{position:fixed;inset:0;overflow:hidden;font-family:-apple-system,SF Pro Display,Inter,Segoe UI,system-ui,sans-serif;color:var(--os-text);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}.os-wallpaper{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 20% 50%,rgba(88,28,135,.5) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(30,58,138,.5) 0%,transparent 50%),radial-gradient(ellipse at 50% 100%,rgba(15,23,42,.8) 0%,transparent 60%),linear-gradient(135deg,#0f0a1e,#1a1145,#0c1832 60%,#0a0e1a)}.os-wallpaper:after{content:"";position:absolute;inset:0;background:radial-gradient(1px 1px at 10% 30%,rgba(255,255,255,.15),transparent),radial-gradient(1px 1px at 30% 70%,rgba(255,255,255,.1),transparent),radial-gradient(1px 1px at 60% 20%,rgba(255,255,255,.12),transparent),radial-gradient(1px 1px at 80% 60%,rgba(255,255,255,.08),transparent),radial-gradient(1px 1px at 45% 45%,rgba(255,255,255,.1),transparent),radial-gradient(1px 1px at 90% 85%,rgba(255,255,255,.06),transparent);pointer-events:none}.os-statusbar{position:absolute;top:0;left:0;right:0;height:var(--os-statusbar-h);z-index:300;display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:13px;font-weight:600;color:var(--os-text);background:#00000026;backdrop-filter:blur(var(--os-glass-blur));-webkit-backdrop-filter:blur(var(--os-glass-blur))}.os-statusbar-time{position:absolute;left:50%;transform:translate(-50%);font-size:14px;font-weight:600;letter-spacing:.02em}.os-space-switcher{display:flex;align-items:center;gap:5px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:3px 10px 3px 6px;cursor:pointer;color:#fff;font-size:12px;font-weight:500;transition:background .15s;white-space:nowrap;max-width:160px}.os-space-switcher:hover{background:#ffffff26}.os-space-icon{font-size:13px}.os-space-name{overflow:hidden;text-overflow:ellipsis}.os-space-chevron{font-size:9px;opacity:.6}.os-token-meter{display:flex;align-items:center;gap:5px}.os-token-bar{width:36px;height:14px;background:#ffffff1a;border-radius:7px;border:1px solid rgba(255,255,255,.2);overflow:hidden;position:relative}.os-token-fill{height:100%;border-radius:7px;background:var(--token-color, #22c55e);transition:width .5s ease,background .5s ease}.os-token-label{font-size:11px;color:#ffffffb3;font-variant-numeric:tabular-nums;min-width:28px}.os-space-sheet-backdrop{position:fixed;inset:0;background:#00000080;z-index:400;display:flex;align-items:flex-end}.os-space-sheet{width:100%;max-width:480px;margin:0 auto;background:#140a28f7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px 20px 0 0;border-top:1px solid rgba(255,255,255,.1);padding:12px 0 32px}.os-space-sheet-handle{width:36px;height:4px;background:#fff3;border-radius:2px;margin:0 auto 16px}.os-space-sheet-title{font-size:13px;font-weight:600;color:#ffffff80;text-align:center;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.os-space-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 20px;background:none;border:none;color:#fff;cursor:pointer;text-align:left;transition:background .15s}.os-space-item:hover{background:#ffffff0f}.os-space-item--active{background:#8b5cf626}.os-space-item-icon{font-size:22px}.os-space-item-info{flex:1;display:flex;flex-direction:column;gap:2px}.os-space-item-name{font-size:15px;font-weight:500}.os-space-item-caps{font-size:11px;color:#fff6}.os-space-item-check{color:#8b5cf6;font-size:16px}.os-homescreen-wrapper{position:absolute;inset:0;z-index:1;transition:opacity .3s,transform .4s cubic-bezier(.4,0,.2,1),filter .3s}.os-homescreen-wrapper.app-open{opacity:.3;transform:scale(.92);filter:blur(4px);pointer-events:none}.os-homescreen{position:relative;width:100%;height:100%;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto}.os-homescreen-content{position:relative;z-index:2;padding:calc(var(--os-statusbar-h) + 24px) 24px calc(var(--os-dock-h) + 24px);width:100%;max-width:520px;margin:0 auto}.os-app-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 12px;justify-items:center}.os-app-icon{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:4px;-webkit-tap-highlight-color:transparent;border-radius:20px;transition:background .15s}.os-app-icon:hover{background:#ffffff12}.os-app-icon-bg{width:var(--os-icon-size);height:var(--os-icon-size);border-radius:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d,inset 0 1px 1px #fff3;position:relative;overflow:hidden}.os-app-icon-bg:after{content:"";position:absolute;inset:0;border-radius:16px;border:1px solid rgba(255,255,255,.15);pointer-events:none}.os-app-icon-emoji{font-size:30px;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.os-app-icon-label{font-size:11px;font-weight:500;color:var(--os-text);text-shadow:0 1px 3px rgba(0,0,0,.5);max-width:calc(var(--os-icon-size) + 8px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.os-dock{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:250;transition:bottom .3s cubic-bezier(.4,0,.2,1),opacity .2s}.os-dock-pill{display:flex;align-items:center;gap:14px;padding:10px 18px;background:#140e32a6;border:1px solid rgba(255,255,255,.14);border-radius:28px;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--os-shadow),0 0 0 .5px #ffffff0f inset,0 1px 1px #ffffff1a inset}.os-dock-icon{position:relative;display:flex;flex-direction:column;align-items:center;background:none;border:none;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.os-dock-icon-bg{width:var(--os-dock-icon-size);height:var(--os-dock-icon-size);border-radius:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d,inset 0 1px 1px #ffffff26;position:relative}.os-dock-icon-bg:after{content:"";position:absolute;inset:0;border-radius:14px;border:1px solid rgba(255,255,255,.12);pointer-events:none}.os-dock-icon-emoji{font-size:24px;line-height:1}.os-dock-indicator{width:5px;height:5px;border-radius:50%;background:#fff;margin-top:4px;box-shadow:0 0 4px #fff9}.os-app-window{position:absolute;z-index:50;background:var(--bg-primary, #10101e);display:flex;flex-direction:column;overflow:hidden;inset:0}.os-app-content{flex:1;overflow-y:auto;padding:calc(var(--os-statusbar-h) + 8px) 0 calc(var(--os-dock-h) + 8px);-webkit-overflow-scrolling:touch}.os-home-indicator-area{position:absolute;bottom:0;left:0;right:0;z-index:260;display:flex;justify-content:center;align-items:flex-end;padding-bottom:8px;height:32px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:linear-gradient(to top,rgba(0,0,0,.15),transparent)}.os-home-indicator{width:134px;height:5px;border-radius:3px;background:#ffffff59;transition:background .15s}.os-home-indicator-area:hover .os-home-indicator{background:#ffffffa6}.os-app-loading{display:flex;justify-content:center;align-items:center;height:60vh}.os-app-loading-spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.1);border-top-color:#ffffffb3;border-radius:50%;animation:os-spin .7s linear infinite}@keyframes os-spin{to{transform:rotate(360deg)}}.os-switcher-overlay{position:absolute;inset:0;z-index:200;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center;padding-bottom:100px}.os-switcher{width:90%;max-width:480px;max-height:70vh;background:#140e32cc;border:1px solid var(--os-glass-border);border-radius:24px;backdrop-filter:blur(var(--os-glass-blur));-webkit-backdrop-filter:blur(var(--os-glass-blur));padding:20px;overflow-y:auto}.os-switcher-title{font-size:18px;font-weight:700;margin-bottom:16px;text-align:center;color:var(--os-text)}.os-switcher-empty{text-align:center;color:var(--os-text-dim);padding:32px 0;font-size:14px}.os-switcher-cards{display:flex;flex-direction:column;gap:12px}.os-switcher-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;cursor:pointer;transition:background .15s}.os-switcher-card:hover{background:#ffffff1a}.os-switcher-card.active{border-color:#ffffff40}.os-switcher-card-header{display:flex;align-items:center;gap:10px;padding:12px}.os-switcher-card-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.os-switcher-card-name{font-size:14px;font-weight:600;flex:1}.os-switcher-card-close{background:none;border:none;color:var(--os-text-dim);font-size:20px;cursor:pointer;padding:4px 8px;border-radius:8px;line-height:1}.os-switcher-card-close:hover{background:#ffffff1a;color:var(--os-text)}.os-switcher-card-preview{height:80px;border-radius:0 0 16px 16px}.os-shell{color-scheme:dark;--bg-primary: #10101e;--bg-card: #1a1a2e;--bg-sidebar: #12122a;--bg-input: #1e1e3a;--bg-hover: #252546;--bg-active: #2a2a55;--text-primary: #e8e8e8;--text-secondary: #a0a0b8;--text-muted: #707088;--accent: #6366f1;--accent-hover: #818cf8;--border-color: rgba(255,255,255,.08);--bg-topbar: transparent;--bg-bottomnav: transparent}.os-shell .app-layout{display:contents}.os-shell .app-topbar,.os-shell .app-bottomnav,.os-shell .app-sidebar,.os-shell .sidebar-overlay{display:none!important}.os-shell .app-body{display:contents}.os-shell .app-content{padding:0}@media(min-width:768px){:root{--os-icon-size: 72px;--os-dock-icon-size: 56px;--os-window-max: 480px}.os-app-grid{grid-template-columns:repeat(6,1fr);gap:24px 16px;max-width:600px}.os-homescreen-content{max-width:700px;padding-top:calc(var(--os-statusbar-h) + 32px)}.os-app-window{inset:auto;top:var(--os-statusbar-h);bottom:calc(var(--os-dock-h) + 16px);left:50%;transform:translate(-50%);width:100%;max-width:var(--os-window-max);border-radius:16px;box-shadow:0 24px 80px #0009,0 0 0 1px #ffffff14}.os-homescreen-wrapper.app-open{opacity:1;transform:none;filter:none;pointer-events:none}.os-app-content{padding:16px 24px calc(var(--os-dock-h))}.os-home-indicator-area{display:none}.os-dock-pill{gap:18px;padding:12px 24px}.os-dock{bottom:20px}.os-dock-icon-emoji{font-size:26px}.os-app-icon-emoji{font-size:34px}.os-app-icon-label{font-size:12px}}@media(min-width:1024px){:root{--os-icon-size: 76px;--os-dock-icon-size: 58px;--os-window-max: 520px}.os-app-grid{grid-template-columns:repeat(6,1fr);gap:28px 20px}.os-homescreen-content{max-width:800px}.os-app-icon-bg{border-radius:20px}.os-app-icon-emoji{font-size:36px}.os-app-icon-label{font-size:12px}.os-dock-pill{gap:22px;padding:12px 28px}}@media(min-width:1440px){:root{--os-icon-size: 80px;--os-dock-icon-size: 60px;--os-window-max: 560px}.os-app-grid{grid-template-columns:repeat(8,1fr)}.os-homescreen-content{max-width:1000px}}.os-app-window--maximized{max-width:none!important;inset:0!important;transform:none!important;border-radius:0!important;top:var(--os-statusbar-h)!important;bottom:0!important;width:100%!important}.os-window-chrome{display:flex;flex-direction:column;height:100%}.os-window-chrome-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.os-window-chrome-content .os-app-content{padding-top:8px}.os-window-titlebar{height:38px;background:#1e143cf2;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;padding:0 12px;flex-shrink:0;-webkit-app-region:drag;-webkit-user-select:none;user-select:none;position:relative;cursor:grab}.os-window-titlebar:active{cursor:grabbing}.os-traffic-lights{display:flex;align-items:center;gap:8px;-webkit-app-region:no-drag}.os-traffic-light{width:12px;height:12px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:8px;color:transparent;transition:color .1s;border:none;padding:0;line-height:1;-webkit-app-region:no-drag}.os-traffic-lights:hover .os-traffic-light{color:#00000080}.os-traffic-light--close{background:#ff5f57}.os-traffic-light--minimize{background:#febc2e}.os-traffic-light--maximize{background:#28c840}.os-titlebar-title{position:absolute;left:50%;transform:translate(-50%);font-size:13px;font-weight:600;color:#ffffffd9;pointer-events:none}.os-titlebar-actions{display:flex;align-items:center;gap:8px;-webkit-app-region:no-drag}.os-titlebar-btn{background:none;border:none;color:#fff6;cursor:pointer;font-size:14px;padding:4px;border-radius:4px;line-height:1;transition:color .15s,background .15s}.os-titlebar-btn:hover{color:#fff;background:#ffffff1a}.os-traffic-light,.os-titlebar-btn{cursor:pointer}.os-dock-indicator--minimized{background:#febc2e!important;box-shadow:0 0 4px #febc2e99!important}.os-window-chrome-wrapper{display:none}.os-mobile-content-wrapper{display:flex;flex-direction:column;flex:1}@media(min-width:768px){.os-window-chrome-wrapper{display:flex;flex-direction:column;flex:1}.os-mobile-content-wrapper{display:none}.os-window-chrome-content .os-app-content{padding:8px 24px calc(var(--os-dock-h))}}.linked-channels-page{padding:16px}.channels-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.channel-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-card);transition:border-color .2s}.channel-card.connected{border-left:3px solid #4caf50}.channel-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;color:#fff}.channel-info{flex:1;min-width:0}.channel-name{font-weight:600;font-size:15px;color:var(--text-primary)}.channel-status{font-size:13px;color:var(--text-secondary);display:flex;align-items:center;gap:6px;margin-top:2px}.channel-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.channel-status-dot.on{background:#4caf50}.channel-status-dot.off{background:#bdbdbd}.channel-account-id{font-size:12px;color:var(--text-muted);margin-top:2px;font-family:monospace}.btn-channel-action{padding:8px 16px;border-radius:8px;border:none;font-size:13px;font-weight:600;cursor:pointer;flex-shrink:0;transition:opacity .2s}.btn-channel-action.connect{background:var(--accent);color:#fff}.btn-channel-action.disconnect{background:#fce4ec;color:#c62828}[data-theme=dark] .btn-channel-action.disconnect{background:#f4433626;color:#e57373}.manage-plan-page{padding:16px}.plan-current-card{background:linear-gradient(135deg,var(--accent),#1557b0);color:#fff;border-radius:16px;padding:24px;text-align:center;margin-bottom:20px}.plan-current-badge{display:inline-block;background:#fff3;border-radius:20px;padding:4px 16px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.plan-current-price{font-size:36px;font-weight:700}.plan-price-period{font-size:14px;font-weight:400;opacity:.8}.plan-section-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:20px 0 12px}.plan-usage-list{display:flex;flex-direction:column;gap:14px}.plan-usage-item{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px}.plan-usage-header{display:flex;justify-content:space-between;margin-bottom:8px}.plan-usage-label{font-size:14px;font-weight:500;color:var(--text-primary)}.plan-usage-value{font-size:13px;color:var(--text-secondary)}.plan-usage-bar-track{height:6px;background:var(--border);border-radius:3px;overflow:hidden}.plan-usage-bar-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .3s}.plan-usage-bar-fill.warning{background:#ff9800}.plan-comparison-table{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;font-size:13px}.plan-table-header{display:grid;grid-template-columns:1fr repeat(3,70px);background:var(--bg-hover);font-weight:600}.plan-table-row{display:grid;grid-template-columns:1fr repeat(3,70px);border-top:1px solid var(--border-light)}.plan-table-cell{padding:10px 8px;text-align:center;color:var(--text-primary)}.plan-table-cell.feature-cell{text-align:left;padding-left:14px;color:var(--text-secondary)}.plan-table-cell.current{background:var(--accent-bg);color:var(--accent-text);font-weight:600}[data-theme=dark] .plan-table-cell.current{background:#1a73e81f}.plan-upgrade-cta{background:var(--bg-card);border:2px solid var(--accent);border-radius:14px;padding:20px;text-align:center;margin-top:20px}.plan-upgrade-text{font-size:14px;color:var(--text-secondary);margin-bottom:12px}.btn-plan-upgrade{background:var(--accent);color:#fff;border:none;border-radius:10px;padding:12px 32px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s}.btn-plan-upgrade:hover{background:var(--accent-hover)}.referral-page{padding:16px}.referral-code-card{background:var(--bg-card);border:2px dashed var(--accent);border-radius:14px;padding:20px;text-align:center;margin-bottom:12px}.referral-code-label{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.referral-code-value{font-size:22px;font-weight:700;color:var(--accent-text);font-family:monospace;letter-spacing:2px;margin-bottom:12px}.btn-referral-copy{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-referral-copy:hover{background:var(--accent-hover)}.referral-share-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:16px}.referral-share-label{font-size:13px;color:var(--text-secondary);margin-bottom:6px}.referral-share-url{font-size:13px;color:var(--text-muted);font-family:monospace;word-break:break-all;overflow-wrap:anywhere;margin-bottom:10px}.btn-referral-share{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border);border-radius:8px;padding:6px 16px;font-size:13px;cursor:pointer}.referral-section-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:20px 0 12px}.referral-list{display:flex;flex-direction:column;gap:10px}.referral-user-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px}.referral-user-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.referral-user-info{flex:1;min-width:0}.referral-user-name{font-size:14px;font-weight:600;color:var(--text-primary)}.referral-user-date{font-size:12px;color:var(--text-secondary)}.referral-user-status{font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px;flex-shrink:0}.referral-user-status.accepted{background:var(--status-confirmed-bg);color:var(--status-confirmed-text)}.referral-user-status.pending{background:var(--status-pending-bg);color:var(--status-pending-text)}.manage-properties-page{padding:16px}.manage-properties-page .page-header{display:flex;justify-content:space-between;align-items:center}.btn-add-property{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;flex-shrink:0}.properties-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:16px}@media(min-width:768px){.properties-grid{grid-template-columns:1fr 1fr}}.property-card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:var(--shadow-card);transition:opacity .2s}.property-card.inactive{opacity:.6}.property-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.property-card-name{font-size:16px;font-weight:600;color:var(--text-primary)}.property-status{font-size:11px;font-weight:600;padding:3px 10px;border-radius:12px;cursor:pointer;flex-shrink:0}.property-status.active{background:var(--status-confirmed-bg);color:var(--status-confirmed-text)}.property-status.inactive{background:var(--bg-hover);color:var(--text-muted)}.property-card-type{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.property-card-price{font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.property-price-unit{font-size:13px;font-weight:400;color:var(--text-secondary)}.property-card-meta{display:flex;gap:16px;font-size:13px;color:var(--text-secondary);margin-bottom:10px}.property-card-amenities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.property-amenity-tag{background:var(--accent-bg);color:var(--accent-text);font-size:11px;padding:3px 8px;border-radius:6px;font-weight:500}[data-theme=dark] .property-amenity-tag{background:#1a73e81f}.property-card-desc{font-size:13px;color:var(--text-secondary);margin-bottom:12px;line-height:1.4}.property-modal .modal-body{max-height:60vh;overflow-y:auto}.form-group{display:flex;flex-direction:column}.form-textarea{min-height:80px;resize:vertical}.form-label{font-size:13px;font-weight:600;color:var(--text-primary);margin:12px 0 4px}.amenities-checkboxes{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.amenity-checkbox{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-primary);cursor:pointer}.amenity-checkbox input[type=checkbox]{accent-color:var(--accent)}.space-members-page{padding:16px}.space-members-page .page-header{display:flex;justify-content:space-between;align-items:center}.members-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.member-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px}.member-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;flex-shrink:0}.member-info{flex:1;min-width:0}.member-name{font-size:15px;font-weight:600;color:var(--text-primary)}.member-joined{font-size:12px;color:var(--text-secondary)}.member-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.member-role-select{background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:6px 8px;font-size:12px;color:var(--text-primary);cursor:pointer}.member-role-select:disabled{opacity:.5;cursor:default}.btn-member-remove{background:#fce4ec;color:#c62828;border:none;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer}[data-theme=dark] .btn-member-remove{background:#f4433626;color:#e57373}.invite-modal .form-input{width:100%}.followers-page{padding:16px}.followers-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.follower-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px}.follower-card.blocked{opacity:.6}.follower-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.follower-info{flex:1;min-width:0}.follower-name{font-size:14px;font-weight:600;color:var(--text-primary)}.follower-date{font-size:12px;color:var(--text-secondary)}.followers-section-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:20px 0 4px}@media(max-width:480px){.channel-card{flex-wrap:wrap}.btn-channel-action{width:100%;text-align:center;margin-top:8px}.plan-table-header,.plan-table-row{grid-template-columns:1fr repeat(3,56px);font-size:11px}.plan-table-cell{padding:8px 4px}.member-card{flex-wrap:wrap}.member-actions{width:100%;justify-content:flex-end;margin-top:4px}.form-row,.amenities-checkboxes{grid-template-columns:1fr}}.geocode-suggestions{position:absolute;z-index:1000;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-card);max-height:200px;overflow-y:auto;margin-top:2px}.geocode-suggestion-item{padding:10px 12px;font-size:.85rem;cursor:pointer;border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geocode-suggestion-item:hover{background:var(--bg-hover)}.geocode-suggestion-item:last-child{border-bottom:none}.channel-link-form{display:flex;flex-direction:column;gap:8px;min-width:180px}.channel-link-input{font-size:.85rem;padding:6px 10px;border-radius:6px}.channel-link-error{color:#ff3b30;font-size:.8rem}.channel-link-actions{display:flex;gap:6px}.channel-link-actions .btn-channel-action{font-size:.8rem;padding:4px 10px}.directions-map .leaflet-container{border-radius:12px}.directions-error{color:#ff3b30;padding:8px 16px;text-align:center}.image-upload{display:inline-block}.image-upload-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border:2px dashed var(--border);border-radius:10px;background:var(--bg-card);color:var(--text-secondary);cursor:pointer;font-size:14px;transition:border-color .2s,color .2s}.image-upload-btn:hover{border-color:var(--accent, #1a73e8);color:var(--accent, #1a73e8)}.image-upload-preview{position:relative;border-radius:10px;overflow:hidden;cursor:pointer;max-width:200px}.image-upload-preview img{display:block;width:100%;height:auto;border-radius:10px}.image-upload-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;color:#fff;font-size:13px;font-weight:500}.image-upload-overlay.hover-only{opacity:0;transition:opacity .2s}.image-upload-preview:hover .image-upload-overlay.hover-only{opacity:1}.property-card-photo{position:relative;margin:0 -16px;overflow:hidden}.property-card-photo img{display:block;width:100%;height:160px;object-fit:cover}.property-card-photo .image-upload{position:absolute;bottom:8px;right:8px}.property-card-photo .image-upload-btn{padding:6px 10px;font-size:12px;background:#ffffffe6;border:1px solid rgba(0,0,0,.1)}.property-card-photo.empty{display:flex;align-items:center;justify-content:center;height:120px;background:var(--bg-main, #f5f7fa)}.property-card-photo.empty .image-upload-btn{border-style:dashed}.publish-image-preview{position:relative;display:inline-block;margin-top:8px;border-radius:10px;overflow:hidden;max-width:200px}.publish-image-preview img{display:block;width:100%;height:auto;border-radius:10px}.publish-image-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;background:#0009;color:#fff;border:none;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center}.publish-actions-left{display:flex;align-items:center;gap:8px}.btn-icon{width:36px;height:36px;border-radius:8px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.btn-icon:hover{background:var(--bg-main, #f5f7fa);color:var(--accent, #1a73e8)}.dash-onboarding-cta{margin:16px 0;padding:20px 24px;background:linear-gradient(135deg,#1a73e8,#4285f4);border-radius:16px;color:#fff;box-shadow:0 4px 16px #1a73e84d}.onboarding-cta-content{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.onboarding-cta-text h3{margin:0 0 4px;font-size:18px;font-weight:700;color:#fff}.onboarding-cta-text p{margin:0;font-size:14px;opacity:.9;color:#fff}.onboarding-cta-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.onboarding-cta-actions .btn-primary{background:#fff;color:#1a73e8;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;text-decoration:none;font-size:14px;transition:transform .15s,box-shadow .15s}.onboarding-cta-actions .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-text{background:none;border:none;color:#fffc;cursor:pointer;font-size:13px;padding:8px;text-decoration:underline;text-underline-offset:2px}.btn-text:hover{color:#fff}@media(max-width:600px){.onboarding-cta-content{flex-direction:column;text-align:center}.onboarding-cta-actions{flex-direction:column;width:100%}.onboarding-cta-actions .btn-primary{width:100%;text-align:center}}.vm-page{max-width:600px;margin:0 auto;padding:0 0 80px;min-height:100vh;background:var(--bg-page, #fafafa);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.vm-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-card, #fff);border-bottom:1px solid var(--border, #e5e5e5);box-shadow:0 1px 3px #0000000f}.vm-header-left{display:flex;align-items:center;gap:8px;min-width:0}.vm-title{font-size:1.15rem;font-weight:700;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vm-table-badge{font-size:.75rem;background:#e3f2fd;color:#1565c0;padding:2px 8px;border-radius:12px;white-space:nowrap}.vm-lang-select{font-size:.85rem;padding:4px 8px;border:1px solid var(--border, #ddd);border-radius:8px;background:var(--bg-card, #fff);cursor:pointer}.vm-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 16px;gap:12px;color:#888}.vm-spinner{width:32px;height:32px;border:3px solid #e5e5e5;border-top-color:#2196f3;border-radius:50%;animation:vm-spin .7s linear infinite}@keyframes vm-spin{to{transform:rotate(360deg)}}.vm-error{text-align:center;padding:48px 16px;color:#c62828}.vm-empty{text-align:center;padding:48px 16px;color:#888}.vm-sections{padding:8px 0}.vm-section{margin-bottom:8px}.vm-section-title{font-size:1rem;font-weight:700;padding:12px 16px 4px;margin:0;color:var(--text-primary, #333);text-transform:uppercase;letter-spacing:.5px}.vm-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:8px 12px}@media(max-width:400px){.vm-grid{grid-template-columns:1fr}}.vm-card{background:var(--bg-card, #fff);border:1px solid var(--border, #eee);border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000f;transition:transform .15s,box-shadow .15s}.vm-card:active{transform:scale(.98)}.vm-card-img-wrap{width:100%;aspect-ratio:4/3;overflow:hidden;background:#f5f5f5}.vm-card-img{width:100%;height:100%;object-fit:cover;display:block}.vm-card-body{padding:10px 12px 12px}.vm-card-name{font-size:.9rem;font-weight:600;margin:0 0 2px;line-height:1.3}.vm-card-desc{font-size:.75rem;color:#777;margin:0 0 8px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vm-card-footer{display:flex;align-items:center;justify-content:space-between;gap:6px}.vm-card-price{font-size:.9rem;font-weight:700;color:var(--text-primary, #222)}.vm-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s,opacity .2s}.vm-btn:disabled{opacity:.5;cursor:default}.vm-btn-primary{background:#2196f3;color:#fff}.vm-btn-primary:hover:not(:disabled){background:#1976d2}.vm-btn-secondary{background:#eee;color:#333}.vm-btn-add{background:#e3f2fd;color:#1565c0;font-size:.8rem;padding:4px 10px}.vm-btn-add:hover{background:#bbdefb}.vm-btn-block{width:100%;padding:14px;font-size:1rem;border-radius:12px}.vm-qty-controls{display:flex;align-items:center;gap:4px}.vm-qty-btn{width:28px;height:28px;border:1px solid #ddd;border-radius:50%;background:#fff;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.vm-qty-btn:hover{background:#f5f5f5}.vm-qty-value{font-size:.85rem;font-weight:700;min-width:20px;text-align:center}.vm-cart-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:600px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#1565c0;color:#fff;cursor:pointer;z-index:30;box-shadow:0 -2px 12px #00000026}.vm-cart-bar-count{font-size:.85rem;opacity:.9}.vm-cart-bar-total{font-size:1.05rem;font-weight:700}.vm-cart-bar-action{font-size:.85rem;font-weight:600;opacity:.9}.vm-cart-overlay{position:fixed;inset:0;background:#0006;z-index:40;display:flex;align-items:flex-end;justify-content:center}.vm-cart-sheet{background:var(--bg-card, #fff);width:100%;max-width:600px;max-height:80vh;border-radius:16px 16px 0 0;padding:20px;overflow-y:auto;box-shadow:0 -4px 20px #00000026}.vm-cart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.vm-cart-header h3{margin:0;font-size:1.1rem}.vm-cart-close{background:none;border:none;font-size:1.3rem;cursor:pointer;color:#888;padding:4px}.vm-cart-empty{text-align:center;padding:24px 0;color:#888}.vm-cart-items{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.vm-cart-item{display:flex;flex-direction:column;gap:6px;padding-bottom:12px;border-bottom:1px solid #eee}.vm-cart-item-info{display:flex;justify-content:space-between;align-items:center}.vm-cart-item-name,.vm-cart-item-price{font-weight:600;font-size:.9rem}.vm-cart-item-controls{display:flex;align-items:center;gap:6px}.vm-cart-remove{background:none;border:none;color:#c62828;font-size:1rem;cursor:pointer;margin-left:auto;padding:2px 6px}.vm-cart-total{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:2px solid #333;margin-bottom:16px;font-size:1rem;font-weight:700}.vm-cart-total-amount{font-size:1.1rem}.vm-success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center}.vm-success-icon{width:64px;height:64px;background:#e8f5e9;color:#2e7d32;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:16px}.track-vehicle-page{padding:0;min-height:100vh;background:var(--bg-main, #f5f7fa)}.track-header{padding:16px 20px 8px;display:flex;align-items:center;justify-content:space-between}.track-header h2{margin:0;font-size:18px;font-weight:700}.track-status{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary)}.track-ago{color:var(--text-muted, #999)}.track-loading{text-align:center;padding:40px;color:var(--text-secondary)}.track-error{text-align:center;padding:40px;color:#ff3b30}.track-map-container{height:55vh;min-height:300px}.track-map-container .leaflet-container{border-radius:0}.track-details-card{margin:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px}.track-detail-row{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid var(--border)}.track-detail-row:last-child{border-bottom:none}.track-detail-label{color:var(--text-secondary);font-weight:500}.vehicle-marker{background:none!important;border:none!important}.vehicle-marker-icon{font-size:28px;text-align:center;line-height:36px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.vehicle-marker-icon.offline{opacity:.5;filter:grayscale(1)}.status-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.status-dot.online{background:#34c759;box-shadow:0 0 4px #34c75980}.status-dot.offline{background:#8e8e93}.fleet-page{padding:16px}.fleet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.fleet-header h2{margin:0;font-size:20px;font-weight:700}.fleet-stats{display:flex;gap:12px}.fleet-stat{font-size:13px;color:var(--text-secondary);font-weight:500}.fleet-stat.online{color:#34c759}.fleet-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:2px solid var(--border)}.fleet-tab{padding:10px 20px;font-size:14px;font-weight:600;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;color:var(--text-secondary);transition:color .2s,border-color .2s}.fleet-tab.active{color:var(--accent, #1a73e8);border-bottom-color:var(--accent, #1a73e8)}.fleet-map-container{height:45vh;min-height:280px;border-radius:12px;overflow:hidden;margin-bottom:16px}.fleet-loading{text-align:center;padding:20px;color:var(--text-secondary)}.fleet-empty{text-align:center;padding:40px 20px;color:var(--text-secondary);font-size:14px}.fleet-vehicle-list h3{font-size:16px;margin:16px 0 8px;font-weight:600}.fleet-vehicle-card{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;margin-bottom:8px;cursor:pointer;transition:border-color .2s}.fleet-vehicle-card:hover,.fleet-vehicle-card.selected{border-color:var(--accent, #1a73e8)}.fleet-vehicle-name{font-size:14px;font-weight:600}.fleet-vehicle-meta{font-size:12px;color:var(--text-secondary);display:flex;gap:8px}.fleet-keys-section{padding:0 4px}.fleet-keys-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.fleet-keys-desc{font-size:13px;color:var(--text-secondary);margin:0;flex:1}.fleet-key-card{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;margin-bottom:8px}.fleet-key-card.revoked{opacity:.5}.fleet-key-label{font-size:14px;font-weight:600}.fleet-key-meta{font-size:12px;color:var(--text-secondary)}.fleet-key-meta code{background:var(--bg-main, #f5f7fa);padding:2px 6px;border-radius:4px;font-size:11px}.fleet-key-revoked{font-size:12px;color:#ff3b30;font-weight:500}.fleet-key-created{display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center}.fleet-key-value{display:block;padding:12px 16px;background:var(--bg-main, #f5f7fa);border:1px solid var(--border);border-radius:8px;font-size:12px;word-break:break-all;width:100%}.bus-routes-page{padding:16px}.bus-routes-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.bus-routes-header h2{margin:0;font-size:20px;font-weight:700}.bus-routes-grid{display:flex;flex-direction:column;gap:10px}.bus-route-card{display:flex;align-items:stretch;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color .2s}.bus-route-card:hover{border-color:var(--accent, #1a73e8)}.bus-route-card.inactive{opacity:.6}.bus-route-color{width:6px;flex-shrink:0}.bus-route-info{padding:14px 16px;flex:1}.bus-route-name{font-size:15px;font-weight:600;margin-bottom:2px}.bus-route-desc{font-size:13px;color:var(--text-secondary);margin-bottom:6px}.bus-route-meta{display:flex;gap:12px;font-size:12px;color:var(--text-muted, #999)}.bus-route-inactive{color:#ff3b30;font-weight:500}.color-picker{display:flex;gap:6px;flex-wrap:wrap}.color-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .2s,transform .15s}.color-swatch.selected{border-color:var(--text-primary);transform:scale(1.15)}.modal-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.modal-card{background:var(--bg-card);border-radius:16px;padding:24px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.modal-card.modal-lg{max-width:560px}.modal-card h3{margin:0 0 16px;font-size:18px;font-weight:700}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.form-label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin:12px 0 4px}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--bg-card);color:var(--text-primary);box-sizing:border-box}.form-input:focus{outline:none;border-color:var(--accent, #1a73e8)}.form-mono{font-family:Courier New,monospace;font-size:12px}.form-select{padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--bg-card);color:var(--text-primary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row-inline{display:flex;gap:8px;align-items:center}.form-checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;margin-top:12px;cursor:pointer}.btn-primary{padding:10px 20px;background:var(--accent, #1a73e8);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:opacity .2s}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:default}.btn-secondary{padding:10px 20px;background:var(--bg-main, #f5f7fa);color:var(--text-primary);border:1px solid var(--border);border-radius:8px;font-weight:600;font-size:14px;cursor:pointer}.btn-sm{padding:6px 12px;font-size:12px;border-radius:6px;border:1px solid var(--border);background:var(--bg-card);cursor:pointer}.btn-danger{color:#ff3b30;border-color:#ff3b30}[data-theme=dark] .track-vehicle-page{background:#1a1a1a}[data-theme=dark] .track-details-card,[data-theme=dark] .fleet-vehicle-card,[data-theme=dark] .fleet-key-card,[data-theme=dark] .bus-route-card{background:#2a2a2a;border-color:#444}[data-theme=dark] .modal-card{background:#2a2a2a}[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:#333;border-color:#555;color:#e0e0e0}@media(max-width:480px){.fleet-header{flex-direction:column;gap:8px;align-items:flex-start}.fleet-keys-header{flex-direction:column;align-items:flex-start}.form-row{grid-template-columns:1fr}}.transport-page{max-width:600px;margin:0 auto;padding:16px}.transport-section{margin-top:12px}.transport-form-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 4px #00000014}.transport-form-card h3{margin:0 0 12px;font-size:16px}.transport-field{margin-bottom:10px}.transport-field label{display:block;font-size:13px;font-weight:500;color:#555;margin-bottom:4px}.transport-info{text-align:center;padding:16px;color:#666;font-size:14px;background:#f9f9f9;border-radius:8px;margin-top:12px}.transport-results{display:flex;flex-direction:column;gap:8px;margin-top:12px}.transport-result-card{display:flex;align-items:stretch;background:#fff;border-radius:10px;box-shadow:0 1px 3px #0000000f;overflow:hidden;cursor:pointer;transition:box-shadow .15s}.transport-result-card:hover{box-shadow:0 2px 8px #0000001f}.transport-route-color{width:6px;flex-shrink:0}.transport-result-info{padding:10px 14px;flex:1;min-width:0}.transport-result-name{font-weight:600;font-size:14px;margin-bottom:2px}.transport-result-meta{display:flex;gap:10px;font-size:12px;color:#666;flex-wrap:wrap}.transport-result-stops{font-size:12px;color:#888;margin-top:2px}.transport-bus-label{display:inline-block;background:#e3f2fd;color:#1565c0;font-size:11px;padding:1px 6px;border-radius:4px;margin-left:6px}.transport-estimate{margin-top:14px;padding-top:14px;border-top:1px solid #eee}.transport-estimate-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px}.transport-estimate-row.total{border-top:1px solid #eee;margin-top:6px;padding-top:10px;font-size:15px}.transport-ride-created{text-align:center;padding:16px 0;margin-top:14px;border-top:1px solid #eee}.transport-ride-created h3{margin:8px 0 4px}.transport-ride-created p{color:#666;font-size:14px;margin:0 0 12px}.bus-alert-toast{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:9999;background:#1565c0;color:#fff;padding:12px 20px;border-radius:10px;font-size:14px;font-weight:500;box-shadow:0 4px 16px #00000040;cursor:pointer;animation:busAlertSlide .3s ease;display:flex;align-items:center;gap:8px;max-width:90vw}.bus-alert-toast-icon{font-size:20px}@keyframes busAlertSlide{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.bus-alerts-banner{background:#e3f2fd;border:1px solid #90caf9;border-radius:10px;padding:10px 14px;margin-bottom:12px}.bus-alerts-title{font-size:13px;font-weight:600;color:#1565c0;margin-bottom:6px}.bus-alert-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px solid #bbdefb;font-size:13px}.bus-alert-info{display:flex;flex-direction:column;gap:1px}.bus-alert-info strong{font-size:13px}.bus-alert-info span{color:#555;font-size:12px}.bus-alert-eta{color:#1565c0!important;font-weight:500}.bus-alert-cancel{background:none;border:none;font-size:18px;cursor:pointer;color:#999;padding:0 4px;line-height:1}.bus-alert-cancel:hover{color:#d32f2f}.bus-alerts-fired{margin-bottom:12px}.bus-alert-fired-item{background:#e8f5e9;border:1px solid #a5d6a7;border-radius:8px;padding:8px 12px;font-size:13px;color:#2e7d32;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.transport-result-actions{display:flex;align-items:center;padding:0 10px;flex-shrink:0}.bus-alert-set-btn{background:none;border:1px solid #ddd;border-radius:8px;font-size:18px;padding:6px 10px;cursor:pointer;color:#666;transition:all .15s}.bus-alert-set-btn:hover{border-color:#1565c0;color:#1565c0;background:#e3f2fd}.bus-alert-active-btn{background:#1565c0;color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;padding:6px 10px;cursor:pointer}.bus-alert-active-btn:hover{background:#d32f2f}.bus-alert-picker{display:flex;gap:4px;align-items:center}.bus-alert-threshold-btn{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9;border-radius:6px;font-size:12px;font-weight:600;padding:4px 8px;cursor:pointer;transition:all .15s}.bus-alert-threshold-btn:hover{background:#1565c0;color:#fff}.bus-alert-threshold-btn.cancel{background:#fff;color:#999;border-color:#ddd}.bus-alert-threshold-btn.cancel:hover{color:#d32f2f;border-color:#d32f2f}
