:root{--color-ember:#ff5a1f;--color-solar:#ffb347;--color-atmo:#2e6bff;--color-deep-space:#0f2a44;--gradient-core:linear-gradient(135deg, #ff5a1f, #ffb347, #2e6bff);--gradient-energy:linear-gradient(135deg, #ff5a1f, #ff8a3d);--gradient-control:linear-gradient(135deg, #2e6bff, #5b8cff);--gradient-deep:linear-gradient(135deg, #ff5a1f, #0f2a44);--glow-orange:0 4px 16px #ff5a1f33;--glow-blue:0 4px 16px #2e6bff26;--color-bg-primary:#fafaf8;--color-bg-card:#fff;--color-text-primary:#1a1a1a;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-accent:#ff5a1f;--color-accent-hover:#e84e15;--color-success:#22c55e;--color-warning:#f59e0b;--color-error:#ef4444;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:999px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-sans);background-color:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.5}ul,ol{list-style:none}img{max-width:100%;display:block}button{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}.loading-screen{justify-content:center;align-items:center;gap:var(--space-4);min-height:100vh;color:var(--color-text-secondary);flex-direction:column;display:flex}.loading-spinner{border:3px solid #f2f2f2;border-top-color:var(--color-accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn{padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);justify-content:center;align-items:center;min-height:52px;font-size:1rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background:var(--gradient-energy);color:#fff;box-shadow:0 4px 20px #ff5a1f4d}.btn-primary:hover{color:#fff;transform:translateY(-1px);box-shadow:0 8px 32px #ff5a1f66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--gradient-control);color:#fff;box-shadow:0 4px 16px #2e6bff33}.btn-secondary:hover{color:#fff;transform:translateY(-1px);box-shadow:0 8px 28px #2e6bff4d}.btn-ghost{color:var(--color-text-secondary);background-color:#0000;border:1.5px solid #c7c7c7}.btn-ghost:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn-full{border-radius:var(--radius-lg);width:100%;min-height:56px;font-size:1.05rem}.auth-page{min-height:100dvh;padding:var(--space-4);padding-bottom:env(safe-area-inset-bottom,var(--space-8));justify-content:center;align-items:center;display:flex}.auth-card{background-color:var(--color-bg-card);padding:var(--space-6);border:1px solid #f2f2f2;border-radius:20px;width:100%;max-width:400px;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000014}.auth-card:before{content:"";background:#1a1a1a;height:4px;position:absolute;top:0;left:0;right:0}.auth-header{text-align:center;margin-bottom:var(--space-6)}.auth-logo{color:#1a1a1a;letter-spacing:-.025em;margin-bottom:var(--space-2);font-size:1.75rem;font-weight:800}.auth-subtitle{color:#4a5568;font-size:1rem}.auth-description{color:#64748b;text-align:center;margin-top:var(--space-2);font-size:.875rem}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-error{color:var(--color-error);padding:var(--space-3);border-radius:var(--radius-sm);background-color:#ef44441a;border:1px solid #ef44444d;font-size:.875rem}.auth-footer{text-align:center;margin-top:var(--space-6);color:var(--color-text-muted);font-size:.875rem}.auth-footer a{min-height:44px;padding:var(--space-2) var(--space-3);align-items:center;display:inline-flex}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-group label{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.form-group input{border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--color-text-primary);font-size:1rem;font-family:var(--font-sans);background-color:#fff;border:1px solid #c7c7c7;width:100%;min-height:48px;transition:border-color .15s}.form-group input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #ff5a1f1f}.form-group input::placeholder{color:var(--color-text-muted)}.landing-divider{height:3px;margin-bottom:var(--space-6);background:#1a1a1a;border-radius:2px}.landing-features{gap:var(--space-3);margin-bottom:var(--space-8);flex-direction:column;display:flex}.landing-feature{align-items:center;gap:var(--space-3);color:#4a5568;font-size:.9rem;display:flex}.landing-feature-icon{text-align:center;flex-shrink:0;width:32px;font-size:1.25rem}.landing-feature-svg{color:#999;flex-shrink:0;width:20px;height:20px}.landing-cta{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.landing-price{text-align:center;color:#64748b;font-size:.8rem}.color-picker{gap:var(--space-2);flex-wrap:wrap;display:flex}.color-swatch{border-radius:var(--radius-full);cursor:pointer;border:3px solid #0000;width:44px;height:44px;transition:all .15s}.color-swatch:hover{transform:scale(1.1)}.color-swatch.selected{border-color:var(--color-text-primary);box-shadow:0 0 0 2px #1a1a1a26}.brand-preview{border-radius:var(--radius-md);margin-bottom:var(--space-2);border:2px solid;overflow:hidden}.brand-preview-header{padding:var(--space-3) var(--space-4);color:#fff;font-size:1.1rem;font-weight:700}.brand-preview-body{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);font-size:.85rem}.dashboard{max-width:600px;padding:var(--space-4);padding-top:calc(env(safe-area-inset-top,20px) + var(--space-6));padding-bottom:env(safe-area-inset-bottom,var(--space-8));min-height:100dvh;margin:0 auto;position:relative}.dashboard:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(at 30% 0,#ff5a1f0f 0%,#0000 60%),radial-gradient(at 70% 0,#2e6bff0a 0%,#0000 60%);width:140%;height:260px;position:absolute;top:-40px;left:-20%}.dashboard-header{padding-bottom:var(--space-4);margin-bottom:var(--space-6);z-index:1;border-bottom:2px solid #f2f2f2;justify-content:space-between;align-items:center;display:flex;position:relative}.dashboard-header-left{gap:var(--space-1);flex-direction:column;display:flex}.dashboard-title{letter-spacing:-.025em;font-size:1.5rem;font-weight:800}.dashboard-subtitle{color:var(--color-text-muted);font-size:.8rem}.dashboard-section{margin-bottom:var(--space-6)}.section-title{color:var(--color-text-secondary);margin-bottom:var(--space-4);font-size:1rem;font-weight:600}.availability-card{background-color:var(--color-bg-card);padding:var(--space-3) var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid #f2f2f2;border-radius:18px;display:flex;box-shadow:0 2px 8px #0000000a}.availability-info h2{margin-bottom:2px;font-size:1.05rem;font-weight:700}.availability-info p{color:var(--color-text-secondary);font-size:.8rem}.availability-toggle{border-radius:var(--radius-full);color:#fff;background-color:#ccc;flex-shrink:0;width:38px;height:38px;font-size:.65rem;font-weight:800;transition:all .25s}.availability-toggle.active{color:#fff;box-shadow:none;background:#e53e3e}.availability-toggle:hover{transform:scale(1.05)}.action-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.action-card{background-color:var(--color-bg-card);padding:var(--space-4);align-items:center;gap:var(--space-2);text-align:center;cursor:default;opacity:.6;border:1px solid #f2f2f2;border-radius:16px;flex-direction:column;justify-content:center;min-height:88px;display:flex}.action-icon{font-size:1.5rem}.action-label{font-size:.9rem;font-weight:600}.action-badge{color:var(--color-text-muted);border-radius:var(--radius-full);background-color:#64748b33;padding:2px 8px;font-size:.7rem}.income-card{background-color:var(--color-bg-card);padding:var(--space-4) var(--space-6);border:1px solid #f2f2f2;border-radius:18px;position:relative;overflow:hidden}.income-card:after{content:"";pointer-events:none;background:linear-gradient(135deg,#0000 40%,#ff5a1f08 70%,#2e6bff08 100%);width:60%;height:100%;position:absolute;top:0;right:0}.income-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.income-header h3{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.income-period-select-wrapper{margin-top:var(--space-3)}.income-period-select{width:100%;color:var(--color-text-primary);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);cursor:pointer;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2394a3b8' stroke-width='2' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;border:1px solid #c7c7c7;min-height:48px;font-family:inherit;font-size:1rem}.income-total{margin-bottom:var(--space-4);background:var(--gradient-energy);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800}.income-loading{padding:var(--space-6);justify-content:center;display:flex}.income-trip-log{gap:var(--space-2);flex-direction:column;max-height:240px;display:flex;overflow-y:auto}.income-trip-row{padding:var(--space-2) 0;border-bottom:1px solid #94a3b81a;justify-content:space-between;align-items:center;display:flex}.income-trip-row:last-child{border-bottom:none}.income-trip-info{flex-direction:column;gap:2px;display:flex}.income-trip-client{font-size:.85rem;font-weight:500}.income-trip-date{color:var(--color-text-muted);font-size:.75rem}.income-trip-amount{font-size:.95rem;font-weight:600}.income-empty{color:var(--color-text-muted);text-align:center;padding:var(--space-4) 0;font-size:.85rem}.income-card-link{color:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space-3);text-decoration:none;display:flex}.income-card-details-btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);color:#fff;background:var(--gradient-control);flex-shrink:0;align-items:center;min-height:44px;font-size:.85rem;font-weight:700;display:flex;box-shadow:0 2px 10px #2e6bff26}.income-detail-summary{background-color:var(--color-bg-card);padding:var(--space-4) var(--space-6);margin:0 var(--space-4) var(--space-4);z-index:10;border:1px solid #f2f2f2;border-radius:18px;position:sticky;top:0;overflow:hidden;box-shadow:0 4px 20px #0000000f}.income-detail-summary:before{display:none}.income-tax-hold{margin-top:var(--space-2)}.income-tax-hold-display{cursor:pointer;opacity:.7;transition:opacity .15s}.income-tax-hold-display:hover{opacity:1}.income-tax-hold-label{color:var(--color-text-muted);font-size:.8rem;font-style:italic}.income-tax-hold-value{color:var(--color-text-muted);font-size:1.1rem;font-style:italic;font-weight:600}.income-tax-hold-setup{color:var(--color-text-muted);cursor:pointer;padding:var(--space-1) 0;opacity:.7;background:0 0;border:none;font-family:inherit;font-size:.8rem;font-style:italic;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.income-tax-hold-setup:hover{opacity:1}.income-tax-hold-edit{gap:var(--space-3);flex-direction:column;display:flex}.income-tax-hold-field{gap:var(--space-1);flex-direction:column;display:flex}.income-tax-hold-field-label{color:var(--color-text-muted);font-size:.75rem}.income-tax-hold-input-wide{width:100px}.income-tax-hold-input-row{align-items:center;gap:var(--space-2);display:flex}.income-tax-hold-input{width:60px;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-primary);background-color:#fff;border:1px solid #c7c7c7;min-height:36px;font-family:inherit;font-size:.9rem}.income-tax-hold-pct{color:var(--color-text-muted);font-size:.9rem}.income-export-wrapper{padding:var(--space-4) var(--space-4) 0;margin-bottom:var(--space-4)}.income-detail-trips{gap:var(--space-1);padding:0 var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.income-detail-row{padding:var(--space-3) var(--space-4);background-color:var(--color-bg-card);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;display:flex}.income-trip-meta{color:var(--color-text-muted);font-size:.75rem}.income-detail-row{cursor:pointer;transition:background-color .1s}.income-detail-row.expanded{border-bottom-right-radius:0;border-bottom-left-radius:0}.income-trip-expanded{background-color:var(--color-bg-card);padding:var(--space-2) var(--space-4) var(--space-4);border-radius:0 0 var(--radius-sm) var(--radius-sm);margin-bottom:var(--space-1);gap:var(--space-2);flex-direction:column;display:flex}.income-trip-detail-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);font-size:.8rem;display:flex}.income-trip-detail-label{color:var(--color-text-muted);flex-shrink:0}.income-trip-detail-value{text-align:right;word-break:break-word}.income-trip-detail-bold{font-weight:700}.income-trip-cost{color:var(--color-text-muted);font-size:.7rem;font-style:italic}.income-cost-summary{margin-top:var(--space-2);padding-top:var(--space-2);gap:var(--space-1);border-top:1px solid #94a3b826;flex-direction:column;display:flex}.income-cost-row{color:var(--color-text-muted);justify-content:space-between;font-size:.85rem;display:flex}.income-cost-net{color:var(--color-text-primary);font-weight:700}.income-summary-rows{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.income-summary-item{justify-content:space-between;align-items:baseline;display:flex}.income-summary-label{color:var(--color-text-muted);font-size:.85rem;font-weight:500}.income-summary-value{font-size:1.5rem;font-weight:800}.income-summary-cost{color:var(--color-text-muted)}.income-deductions-box{border-radius:var(--radius);padding:var(--space-3) var(--space-4);margin-top:var(--space-2);border:1px solid #94a3b833}.income-deductions-box .income-summary-label,.income-deductions-box .income-summary-value{font-size:.85rem}.income-summary-item-net{padding-top:var(--space-3);border-top:1px solid #94a3b826}.income-settings-btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:#fff;cursor:pointer;background-color:#ef4444;border:none;flex-shrink:0;align-items:center;min-height:36px;font-family:inherit;font-size:.8rem;font-weight:600;text-decoration:none;display:flex}.cost-settings-panel{padding:0 var(--space-4)}.cost-settings-card{background-color:var(--color-bg-card);padding:var(--space-6) var(--space-6);margin-bottom:var(--space-12);border:1px solid #f2f2f2;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000a}.cost-settings-card:before{content:"";background:var(--gradient-energy);width:4px;height:100%;position:absolute;top:0;left:0}.cost-settings-card:last-child{margin-bottom:0}.cost-settings-title{margin-bottom:var(--space-2);font-size:1rem;font-weight:600}.cost-settings-desc{color:var(--color-text-muted);margin-bottom:var(--space-4);font-size:.8rem;line-height:1.4}.cost-settings-field{align-items:center;gap:var(--space-3);display:flex}.cost-settings-label{color:var(--color-text-muted);white-space:nowrap;font-size:.9rem;font-weight:500}.cost-rate-input{width:90px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-primary);background-color:#fff;border:1px solid #c7c7c7;min-height:44px;font-family:inherit;font-size:1rem}.method-selection{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.method-card{gap:var(--space-2);padding:var(--space-4);border:2px solid var(--color-text-muted);border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--color-text-primary);background:0 0;flex-direction:column;font-family:inherit;transition:border-color .15s;display:flex}.method-card.selected{border-width:3px}.method-card-title{font-size:1rem;font-weight:700}.method-card-desc{color:var(--color-text-muted);font-size:.8rem;line-height:1.4}.method-card-tag{color:var(--color-text-muted);font-size:.7rem;font-style:italic;font-weight:600}.method-confirm{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background-color:#ef44441a}.method-confirm-text{color:var(--color-text-primary);margin-bottom:var(--space-3);font-size:.8rem;line-height:1.4}.method-confirm-actions{gap:var(--space-2);display:flex}.cost-settings-warning{color:#f59e0b;font-size:.75rem;font-style:italic;line-height:1.4}.cost-settings-current{margin-top:var(--space-3);color:var(--color-text-muted);font-size:.8rem}.cost-settings-field-stacked{gap:var(--space-4);flex-direction:column;display:flex}.cost-input-with-prefix{align-items:center;gap:var(--space-1);display:flex}.cost-input-prefix,.cost-input-suffix{color:var(--color-text-muted);font-size:.9rem;font-weight:500}.cost-rate-input-wide{width:120px}.cost-settings-save-row{margin-top:var(--space-4)}.depreciation-breakdown{margin-top:var(--space-4);padding-top:var(--space-3);gap:var(--space-2);border-top:1px solid #94a3b826;flex-direction:column;display:flex}.depreciation-row{color:var(--color-text-muted);justify-content:space-between;font-size:.85rem;display:flex}.depreciation-row-total{color:var(--color-text-primary);font-weight:700}.cost-settings-toggle{gap:var(--space-2);display:flex}.cost-settings-toggle-btn{padding:var(--space-3) var(--space-4);border:1px solid var(--color-text-muted);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;flex:1;min-height:44px;font-family:inherit;font-size:.95rem;font-weight:600;transition:background-color .15s,color .15s}.cost-settings-toggle-btn.active{cursor:default;border-color:#0000}.cost-settings-toggle-btn:not(.active):not(:disabled):hover{border-color:var(--color-text-primary);color:var(--color-text-primary)}.action-card-active{opacity:1;cursor:pointer;color:var(--color-text-primary);text-decoration:none;transition:transform .15s,background-color .15s}.action-card-active:hover{color:var(--color-text-primary);border-color:#ff5a1f26;transform:translateY(-2px);box-shadow:0 6px 20px #ff5a1f14}.action-count{color:#fff;border-radius:var(--radius-full);padding:2px 8px;font-size:.7rem;font-weight:700}.sub-page-header{margin-bottom:var(--space-6);justify-content:space-between;align-items:flex-start;display:flex}.powered-by-badge{flex-direction:column;flex-shrink:0;align-items:flex-end;line-height:1.2;display:flex}.powered-by-label{color:#999;font-size:.69rem;font-weight:400}.powered-by-brand{color:#1a1a1a;font-size:.8rem;font-weight:600}.back-link{color:var(--color-text-muted);min-height:44px;margin-bottom:var(--space-2);align-items:center;font-size:.9rem;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--color-text-secondary)}.sub-page-title{letter-spacing:-.025em;font-size:1.5rem;font-weight:800}.card{background-color:var(--color-bg-card);padding:var(--space-4);margin-bottom:var(--space-3);border:1px solid #f2f2f2;border-radius:16px;box-shadow:0 1px 4px #00000008}.card-title{margin-bottom:var(--space-4);font-size:1rem;font-weight:700}textarea{border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);color:var(--color-text-primary);font-size:1rem;font-family:var(--font-sans);resize:vertical;background-color:#fff;border:1px solid #c7c7c7;width:100%;transition:border-color .15s}textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #ff5a1f1f}textarea::placeholder{color:var(--color-text-muted)}.form-row{gap:var(--space-3);display:flex}.form-row .btn{flex:1}.form-section{margin-bottom:var(--space-4)}.form-section-label{color:var(--color-text-secondary);margin-bottom:var(--space-2);font-size:.875rem;font-weight:500;display:block}.form-row-fields{gap:var(--space-3);display:flex}.form-row-fields .form-group{flex:1}.form-section-divider{text-align:center;border-top:1px solid var(--color-border);margin:var(--space-4) 0 var(--space-2);position:relative}.form-section-divider-text{background:var(--color-surface);padding:0 var(--space-2);color:var(--color-text-muted);font-size:.8rem;font-weight:500;position:relative;top:-.7em}.form-hint{color:var(--color-text-muted);margin-bottom:var(--space-3);text-align:center;font-size:.8rem}.empty-state{text-align:center;color:var(--color-text-muted);padding:var(--space-8) var(--space-4)}.service-list{gap:var(--space-3);flex-direction:column;display:flex}.service-card.inactive{opacity:.5}.service-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.service-name{font-size:1rem;font-weight:700}.service-desc{color:var(--color-text-muted);margin-top:var(--space-1);font-size:.8rem}.service-price{white-space:nowrap;font-size:1.15rem;font-weight:800}.service-card-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.service-card-actions .btn{flex:1;min-width:100px}.btn-sm{padding:var(--space-2) var(--space-3);min-height:40px;font-size:.85rem}.client-list,.client-card{gap:var(--space-3);flex-direction:column;display:flex}.client-name{font-size:1rem;font-weight:600}.client-detail{color:var(--color-text-muted);font-size:.8rem}.client-joined{color:var(--color-text-muted);white-space:nowrap;font-size:.75rem}.service-select-list{gap:var(--space-2);flex-direction:column;display:flex}.service-select-card{border-radius:var(--radius-sm);padding:var(--space-4);cursor:pointer;text-align:left;align-items:center;gap:var(--space-2);color:var(--color-text-primary);background-color:#fff;border:2px solid #f2f2f2;flex-wrap:wrap;min-height:56px;transition:border-color .15s;display:flex}.service-select-card:hover{border-color:#c7c7c7}.service-select-card.selected{background-color:#ff5a1f08}.service-select-name{flex:1;font-weight:600}.service-select-price{font-weight:800}.service-select-desc{width:100%;color:var(--color-text-muted);font-size:.8rem}.quote-card{padding:var(--space-2) 0}.quote-title{margin-bottom:var(--space-4);text-align:center;font-size:1.3rem;font-weight:800}.quote-trip{margin-bottom:var(--space-4);padding:var(--space-3);background:var(--color-bg-primary);border-radius:var(--radius);border:1px solid var(--color-border)}.quote-trip-row{align-items:center;gap:var(--space-2);padding:var(--space-1) 0;font-size:.9rem;display:flex}.quote-trip-icon{color:#22c55e;flex-shrink:0;font-size:.6rem}.quote-trip-icon-dest{color:#ef4444}.quote-trip-address{word-break:break-word;min-width:0;font-weight:600}.quote-breakdown{margin-bottom:var(--space-4);padding:var(--space-3);background:var(--color-bg-primary);border-radius:var(--radius);border:1px solid var(--color-border)}.quote-line{padding:var(--space-2) 0;color:var(--color-text);justify-content:space-between;font-size:.9rem;display:flex}.quote-line-note{color:var(--color-text-muted);padding:var(--space-1) 0;font-size:.8rem}.quote-total{padding-top:var(--space-3);margin-top:var(--space-2);border-top:2px solid var(--color-border);justify-content:space-between;font-size:1.2rem;font-weight:800;display:flex}.quote-actions{gap:var(--space-2);flex-direction:column;display:flex}.address-helpers{gap:var(--space-2);margin-top:var(--space-2);display:flex}.address-helper-btn{padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #f2f2f2;flex:1;justify-content:center;align-items:center;gap:4px;min-height:40px;font-size:.75rem;font-weight:500;transition:border-color .15s,background-color .15s;display:flex}.address-helper-btn:hover{background-color:var(--color-bg-primary);border-color:#c7c7c7}.address-helper-btn:disabled{opacity:.5;cursor:not-allowed}.address-helper-btn.active{border-color:var(--color-accent);background:#ff5a1f0f}.saved-locations-dropdown{margin-top:var(--space-2);border-radius:var(--radius-sm);background:#fff;border:1px solid #f2f2f2;animation:.15s ease-out slideDown;overflow:hidden}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.saved-location-select{width:100%;padding:var(--space-3) var(--space-4);color:var(--color-text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #94a3b81a;flex-direction:column;justify-content:center;gap:2px;min-width:0;min-height:48px;display:flex}.saved-location-select:last-child{border-bottom:none}.saved-location-select:hover{background:var(--color-bg-primary)}.saved-location-label{font-size:.85rem;font-weight:600}.saved-location-address{color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.saved-locations-empty{padding:var(--space-3);color:var(--color-text-muted);text-align:center;margin:0;font-size:.8rem}.saved-editor-save-section{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.saved-editor-heading{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.8rem;font-weight:600}.saved-editor-address{color:var(--color-text-primary);margin:0;font-size:.8rem;line-height:1.3}.saved-label-suggestions{gap:var(--space-2);flex-wrap:wrap;display:flex}.saved-label-chip{padding:var(--space-2) var(--space-4);background:var(--color-bg-card);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;border:1px solid #94a3b833;align-items:center;min-height:40px;font-size:.85rem;font-weight:500;display:inline-flex}.saved-label-chip:hover,.saved-label-chip.selected{border-color:var(--color-accent);color:var(--color-accent);background:#ff5a1f0f}.saved-label-field{padding:var(--space-2);background:var(--color-bg-card);border-radius:var(--radius-sm);color:var(--color-text-primary);box-sizing:border-box;border:1px solid #94a3b833;width:100%;font-size:.85rem}.saved-label-field:focus{border-color:var(--color-accent);outline:none}.saved-label-confirm{padding:var(--space-2) var(--space-4);align-self:flex-end;font-size:.8rem}.saved-editor-list-section{padding:var(--space-3);gap:var(--space-2);border-top:1px solid #94a3b826;flex-direction:column;display:flex}.saved-editor-item{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--color-bg-card);display:flex}.saved-editor-item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.saved-editor-item-actions{gap:var(--space-1);flex-shrink:0;display:flex}.saved-editor-action-btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-muted);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;min-width:44px;min-height:44px;font-size:.85rem;display:inline-flex}.saved-editor-action-btn.rename:hover{color:var(--color-accent);background:#ff5a1f0f}.saved-editor-action-btn.delete:hover{color:var(--color-error);background:#ef44441a}.saved-editor-action-btn.save{color:var(--color-success);border-color:var(--color-success)}.saved-editor-action-btn.save:hover{background:#22c55e1a}.saved-editor-action-btn.cancel{color:var(--color-text-muted)}.saved-editor-action-btn.cancel:hover{color:var(--color-text-secondary)}.saved-editor-rename{align-items:center;gap:var(--space-2);width:100%;display:flex}.saved-editor-rename .saved-label-field{flex:1}.saved-flash{margin:var(--space-1) 0 0;color:var(--color-success);font-size:.75rem;font-weight:500;animation:2s ease-out forwards fadeInOut}@keyframes fadeInOut{0%{opacity:0}15%{opacity:1}70%{opacity:1}to{opacity:0}}.map-picker-overlay{z-index:1000;padding:var(--space-3);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.map-picker-modal{background:var(--color-bg-card);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:600px;height:90dvh;display:flex;overflow:hidden}.map-picker-header{padding:var(--space-3) var(--space-4);border-bottom:2px solid;justify-content:space-between;align-items:center;display:flex}.map-picker-title{margin:0;font-size:1.1rem;font-weight:700}.map-picker-close{color:var(--color-text-muted);cursor:pointer;padding:var(--space-2);background:0 0;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;font-size:1.8rem;line-height:1;display:flex}.map-picker-hint{text-align:center;color:var(--color-text-muted);padding:var(--space-2) 0;margin:0;font-size:.85rem}.map-picker-map{flex:1;min-height:0}.map-picker-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border)}.map-picker-address{color:var(--color-text);margin-bottom:var(--space-3);text-align:center;font-size:.9rem;font-weight:600}.map-picker-resolving,.map-picker-placeholder{color:var(--color-text-muted);margin-bottom:var(--space-3);text-align:center;font-size:.85rem}.map-picker-error{color:#ef4444;margin-bottom:var(--space-3);text-align:center;font-size:.85rem}.public-page{min-height:100dvh;padding:var(--space-4);padding-top:var(--space-6);padding-bottom:env(safe-area-inset-bottom,var(--space-8));justify-content:center;display:flex}.public-card{width:100%;max-width:500px}.public-header{padding-bottom:var(--space-3);margin-bottom:var(--space-4);border-bottom:3px solid #0000;border-image:var(--gradient-core) 1}.public-header h1{letter-spacing:-.025em;font-size:1.5rem;font-weight:800}.public-welcome{color:var(--color-text-secondary);margin-top:var(--space-1);font-size:.85rem}.booking-step-summary{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background-color:var(--color-bg-card);border-radius:var(--radius-sm);border:1px solid #94a3b826;display:flex}.booking-step-summary-icon{color:#22c55e;flex-shrink:0;font-size:.6rem}.booking-step-summary-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.booking-step-summary-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.booking-step-summary-address{color:var(--color-text-primary);word-break:break-word;font-size:.85rem;font-weight:500}.switch-link{color:var(--color-accent);margin-left:var(--space-2);cursor:pointer;padding:var(--space-1) var(--space-2);align-items:center;min-height:44px;font-size:.85rem;text-decoration:underline;display:inline-flex}.booking-list{gap:var(--space-3);flex-direction:column;display:flex}.booking-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.booking-client-name{font-size:1rem;font-weight:700}.booking-service{color:var(--color-text-secondary);font-size:.85rem}.booking-price{color:var(--color-text-muted);font-size:.85rem}.booking-distance{color:var(--color-text-muted);font-size:.8rem}.booking-status-badge{text-transform:uppercase;border-radius:var(--radius-full);white-space:nowrap;padding:3px 10px;font-size:.7rem;font-weight:700}.status-requested{color:#d97706;background-color:#ffb34726}.status-confirmed{color:var(--color-atmo);background-color:#2e6bff1a}.status-in_progress{color:var(--color-ember);background-color:#ff5a1f1a}.status-completed{color:var(--color-success);background-color:#22c55e1a}.status-awaiting_payment{color:#d97706;background-color:#ffb34726}.status-cancelled{color:var(--color-error);background-color:#ef44441a}.booking-addresses{gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.booking-address{gap:var(--space-2);font-size:.85rem;display:flex}.booking-address-label{color:var(--color-text-muted);min-width:55px;font-weight:600}.booking-notes,.booking-phone{color:var(--color-text-muted);margin-bottom:var(--space-2);font-size:.8rem}.booking-time{color:var(--color-text-muted);margin-bottom:var(--space-3);font-size:.75rem}.booking-actions{gap:var(--space-2);flex-direction:column;display:flex}.tab-bar{gap:var(--space-2);margin-bottom:var(--space-6);display:flex}.tab{padding:var(--space-3);text-align:center;color:var(--color-text-muted);justify-content:center;align-items:center;gap:var(--space-1);border-bottom:2px solid #0000;flex:1;min-height:48px;font-size:.85rem;font-weight:600;transition:all .15s;display:flex}.tab:hover{color:var(--color-text-secondary)}.tab.active{color:var(--color-text-primary)}.tab-badge{color:#fff;border-radius:var(--radius-full);padding:1px 8px;font-size:.7rem;font-weight:700}.status-details{margin-bottom:var(--space-6)}.status-service{margin-bottom:var(--space-3);font-size:1.1rem;font-weight:700}.status-addresses{gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.status-address{gap:var(--space-2);font-size:.9rem;display:flex}.status-address-label{color:var(--color-text-muted);min-width:60px;font-weight:600}.status-notes{color:var(--color-text-muted);font-size:.85rem;font-style:italic}.status-tracker{padding:var(--space-2) 0;flex-direction:column;gap:0;display:flex}.status-step{align-items:center;gap:var(--space-3);padding-bottom:var(--space-2);display:flex;position:relative}.status-step:last-child{padding-bottom:0}.status-step-dot{z-index:1;background-color:#c7c7c7;border-radius:50%;flex-shrink:0;width:14px;height:14px;transition:all .2s;position:relative}.status-step-line{background-color:#f2f2f2;width:2px;height:calc(100% - 14px);position:absolute;top:14px;left:6px}.status-step.active .status-step-dot{background:var(--gradient-energy);box-shadow:0 0 12px #ff5a1f59}.status-step.completed .status-step-dot{background:var(--color-success)}.status-step.completed .status-step-line{background:linear-gradient(to bottom, var(--color-success), #c7c7c7)}.status-step-text{align-items:baseline;gap:var(--space-2);flex-direction:row;display:flex}.status-step-label{color:var(--color-text-muted);font-size:.8rem;font-weight:600}.status-step.active .status-step-label,.status-step.completed .status-step-label{color:var(--color-text-primary)}.status-step-desc{color:var(--color-text-secondary);font-size:.7rem}.status-cancelled{text-align:center;padding:var(--space-6);color:var(--color-error)}.status-cancelled h2{margin-bottom:var(--space-2);font-size:1.2rem}.payment-section{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.payment-section-title{margin-bottom:var(--space-4);text-align:center;font-size:1.1rem;font-weight:600}.payment-form{gap:var(--space-4);flex-direction:column;display:flex}.payment-amount{padding:var(--space-3) var(--space-4);background-color:var(--color-bg-card);border-radius:var(--radius);border:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.payment-amount-label{color:var(--color-text-secondary);font-size:.9rem}.payment-amount-value{color:var(--color-text-primary);font-size:1.3rem;font-weight:700}.payment-element-container{padding:var(--space-4);border-radius:var(--radius);border:1px solid var(--color-border);background-color:#fff}.payment-error{color:var(--color-error);padding:var(--space-2) var(--space-3);border-radius:var(--radius);background-color:#ef44441a;font-size:.85rem}.payment-success{text-align:center;padding:var(--space-6) var(--space-4)}.payment-success-icon{margin-bottom:var(--space-3);font-size:3rem}.payment-success h3{margin-bottom:var(--space-2);color:var(--color-text-primary);font-size:1.2rem;font-weight:600}.payment-success p{color:var(--color-text-secondary);font-size:.9rem}.payment-loading{text-align:center;padding:var(--space-4)}.payment-loading p{margin-top:var(--space-2);color:var(--color-text-secondary);font-size:.9rem}.payment-error-section{text-align:center}.tip-selector{margin-bottom:var(--space-4)}.tip-selector-title{margin-bottom:var(--space-3);text-align:center;color:var(--color-text-primary);font-size:.95rem;font-weight:600}.tip-preset-row{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.tip-preset-btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background-color:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;text-align:center;border:1.5px solid #f2f2f2;min-width:56px;font-size:.85rem;font-weight:700;transition:all .2s}.tip-preset-btn.active{color:#fff;background:var(--gradient-energy);border-color:#0000;box-shadow:0 2px 10px #ff5a1f33}.tip-custom-input{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.tip-currency{color:var(--color-text-secondary);font-size:1.1rem;font-weight:600}.tip-custom-input input{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border);background-color:var(--color-bg-card);color:var(--color-text-primary);flex:1;font-family:inherit;font-size:1rem}.tip-breakdown{background-color:var(--color-bg-card);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);border:1px solid #94a3b81a}.tip-breakdown-row{padding:var(--space-1) 0;color:var(--color-text-secondary);justify-content:space-between;font-size:.9rem;display:flex}.tip-breakdown-total{margin-top:var(--space-2);padding-top:var(--space-2);color:var(--color-text-primary);border-top:1px solid #94a3b833;font-size:1rem;font-weight:700}.payment-amount-breakdown{padding:var(--space-3) var(--space-4);background-color:var(--color-bg-card);border-radius:var(--radius-sm);border:1px solid #94a3b81a}.payment-amount-row{padding:var(--space-1) 0;color:var(--color-text-secondary);justify-content:space-between;font-size:.9rem;display:flex}.payment-amount-total{margin-top:var(--space-2);padding-top:var(--space-2);color:var(--color-text-primary);border-top:1px solid #94a3b833;font-size:1.1rem;font-weight:700}.booking-awaiting-payment{text-align:center;padding:var(--space-2) 0}.awaiting-payment-text{color:#f59e0b;font-size:.85rem;font-weight:500}.stripe-connect-info{padding:var(--space-4);background-color:var(--color-bg-card);border-radius:var(--radius);border:1px solid var(--color-border);margin-bottom:var(--space-4)}.stripe-connect-benefits p{color:var(--color-text-secondary);margin-bottom:var(--space-2);font-size:.9rem}.stripe-connect-benefits ul{margin:0;padding:0;list-style:none}.stripe-connect-benefits li{color:var(--color-text-primary);padding:var(--space-1) 0;font-size:.85rem}.stripe-connect-benefits li:before{content:"✓ ";color:#22c55e}.eta-countdown{text-align:center;padding:var(--space-8) var(--space-4);margin-bottom:var(--space-6);background-color:#fff;border:none;border-radius:20px;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000000f}.eta-countdown:before{content:"";background:var(--gradient-core);height:4px;position:absolute;top:0;left:0;right:0}.eta-countdown:after{content:"";pointer-events:none;background:linear-gradient(#0000,#ff5a1f08);height:50%;position:absolute;bottom:0;left:0;right:0}.eta-loading-text{color:var(--color-text-secondary);margin-top:var(--space-2);font-size:.9rem}.eta-label{color:var(--color-text-secondary);margin-bottom:var(--space-2);font-size:1rem}.eta-minutes{margin-bottom:var(--space-2);letter-spacing:-.02em;font-size:5rem;font-weight:800;line-height:1}.eta-unit{color:var(--color-text-secondary);font-size:1.1rem;font-weight:500}.eta-waiting-text{margin-bottom:var(--space-1);font-size:1.1rem;font-weight:700}.eta-subtitle{color:var(--color-text-muted);font-size:.85rem}.eta-arrived{background-color:#22c55e0d}.eta-arrived-icon{margin-bottom:var(--space-2);font-size:3rem}.eta-arrived-text{font-size:1.5rem;font-weight:800}.eta-trip-details{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border);text-align:left}.eta-trip-row{align-items:center;gap:var(--space-2);padding:var(--space-1) 0;color:var(--color-text);font-size:.9rem;display:flex}.eta-trip-icon{color:#22c55e;flex-shrink:0;font-size:.6rem}.eta-trip-icon-dest{color:#ef4444}.eta-trip-address{word-break:break-word;min-width:0;font-weight:600}.schedule-toggle{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.schedule-toggle-btn{padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;border:2px solid #f2f2f2;flex:1;min-height:52px;font-size:.9rem;font-weight:700;transition:all .2s}.schedule-toggle-btn.selected{color:#fff;border-color:#0000}.schedule-toggle-btn.selected:first-child{background:var(--gradient-energy);box-shadow:0 4px 16px #ff5a1f40}.schedule-toggle-btn.selected:last-child{background:var(--gradient-control);box-shadow:0 4px 16px #2e6bff33}.schedule-picker{margin-top:var(--space-3);padding:var(--space-4);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md)}.schedule-picker-row{margin-bottom:var(--space-3)}.schedule-picker-label{color:var(--color-text-secondary);margin-bottom:var(--space-2);font-size:.85rem;font-weight:600;display:block}.schedule-date-input{width:100%;padding:var(--space-3) var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid #94a3b833;min-height:48px;font-size:1rem}.schedule-date-input::-webkit-calendar-picker-indicator{filter:none}.schedule-time-row{align-items:center;gap:var(--space-2);display:flex}.schedule-time-select{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg-card);color:var(--color-text-primary);appearance:auto;border:1px solid #94a3b833;flex:1;min-height:48px;font-size:1rem}.schedule-ampm{flex:.8}.schedule-time-colon{color:var(--color-text-secondary);font-size:1.2rem;font-weight:700}.schedule-summary{padding:var(--space-2) var(--space-3);margin-top:var(--space-2);border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-accent);background:#ff5a1f0f;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:600;display:flex}.my-booking-card{margin-bottom:var(--space-3)}.booking-scheduled-badge{color:var(--color-accent);padding:var(--space-2) 0;font-size:.85rem;font-weight:600}.booking-reminder{align-items:center;gap:var(--space-2);margin-top:var(--space-2);display:flex}.booking-reminder label{color:var(--color-text-muted);font-size:.8rem;font-weight:500}.booking-reminder select{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid #94a3b833;min-height:40px;font-size:.85rem}.cancel-inline{margin-top:var(--space-3);width:100%}.cancel-inline textarea{width:100%;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text);resize:vertical;margin-bottom:var(--space-2);font-size:.85rem}.cancel-inline-actions{gap:var(--space-2);display:flex}.cancel-inline-actions .btn{flex:1}.cancel-info{padding:var(--space-2) 0;border-top:1px solid var(--color-border);margin-top:var(--space-2)}.cancel-by{color:var(--color-text-muted);font-size:.8rem;font-weight:600}.cancel-reason{color:var(--color-text-secondary);margin-top:var(--space-1);font-size:.85rem;font-style:italic}.client-blocked{opacity:.7}.blocked-badge{margin-left:var(--space-2);padding:2px var(--space-2);border-radius:var(--radius-full);color:var(--color-error);text-transform:uppercase;vertical-align:middle;background:#ef444433;font-size:.7rem;font-weight:700;display:inline-block}.client-actions{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}html,body{overflow-x:hidden}.auth-card,.public-card,.dashboard,.card{overflow-wrap:break-word;word-break:break-word}.booking-address span,.status-address span{word-break:break-word;min-width:0}@media (width<=400px){.form-row-fields{flex-direction:column}.auth-card{padding:var(--space-4)}.availability-card{padding:var(--space-2) var(--space-3)}}.driver-layout{min-height:100dvh}.driver-layout-content{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px) + var(--space-4))}.bottom-nav{padding-top:var(--space-2);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px));z-index:1000;background:#fff;border-top:1px solid #f2f2f2;justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{padding:var(--space-1) 0;color:var(--color-text-muted);-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:44px;text-decoration:none;transition:color .15s;display:flex;position:relative}.bottom-nav-icon{justify-content:center;align-items:center;width:24px;height:24px;display:flex}.bottom-nav-icon svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.bottom-nav-label{letter-spacing:.02em;font-size:.65rem;font-weight:600}.bottom-nav-badge{background:var(--color-error);color:#fff;border-radius:var(--radius-full);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:700;line-height:1;display:flex;position:absolute;top:4px;right:calc(50% - 20px)}@media (height<=500px){.bottom-nav{display:none}.driver-layout-content{padding-bottom:0}}.account-page{max-width:600px;padding:var(--space-6);padding-top:calc(env(safe-area-inset-top,20px) + var(--space-6));margin:0 auto}.account-section{margin-bottom:var(--space-8)}.account-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:var(--space-3);font-size:.75rem;font-weight:600}.account-card{background:var(--color-bg-card);padding:var(--space-4);border:1px solid #f2f2f2;border-radius:16px;box-shadow:0 1px 4px #00000008}.account-field{padding:var(--space-3) 0;justify-content:space-between;align-items:center;display:flex}.account-field:not(:last-child){border-bottom:1px solid #94a3b81a}.account-field-label{color:var(--color-text-muted);font-size:.85rem}.account-field-value{color:var(--color-text-primary);font-size:.9rem;font-weight:500}.account-color-swatch{border-radius:var(--radius-sm);border:2px solid #94a3b833;width:24px;height:24px}.account-stripe-row{padding:var(--space-3) 0;justify-content:space-between;align-items:center;display:flex}.account-signout{margin-top:var(--space-8)}.account-version{text-align:center;color:var(--color-text-muted);margin-top:var(--space-6);padding-bottom:var(--space-4);font-size:.7rem}.income-detail-row-cancelled{opacity:.6}.income-trip-amount-cancelled{color:var(--color-text-muted)}.services-tab-header{gap:var(--space-4);margin-bottom:var(--space-4);flex-direction:column;display:flex}.booking-context-row{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.booking-pill{border-radius:var(--radius-full);white-space:nowrap;padding:5px 14px;font-size:.8rem;font-weight:600}.booking-pill-brand{border:1px solid}.booking-pill-schedule{color:var(--color-text-secondary);background:#94a3b814;border:1px solid #94a3b826}.booking-pill-schedule-set{color:var(--color-atmo);background:#2e6bff14;border:1px solid #2e6bff33}.booking-context-change{color:var(--color-text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;margin-left:auto;padding:4px;font-size:.75rem;text-decoration:underline}.booking-picker-section{background:var(--color-bg-card);padding:var(--space-4);margin-bottom:var(--space-4);border:1px solid #f2f2f2;border-radius:18px;box-shadow:0 2px 8px #0000000a}.route-card{background:var(--color-bg-card);padding:var(--space-4);margin-bottom:var(--space-3);border:1px solid #f2f2f2;border-radius:16px;box-shadow:0 2px 8px #0000000a}.route-row{align-items:flex-start;gap:12px;display:flex}.route-dots{flex-direction:column;align-items:center;padding-top:14px;display:flex}.route-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.route-dot-pickup{background:var(--color-ember);box-shadow:0 0 6px #ff5a1f4d}.route-dot-dropoff{border:2.5px solid var(--color-atmo);background:0 0}.route-dot-line{background:linear-gradient(to bottom, var(--color-ember), var(--color-atmo));border-radius:1px;width:2px;height:16px;margin:3px 0}.route-fields{flex-direction:column;flex:1;gap:8px;display:flex}.route-fields input{background:var(--color-bg-primary);border-radius:var(--radius-sm);width:100%;color:var(--color-text-primary);border:1px solid #94a3b826;min-height:44px;padding:11px 14px;font-size:.9rem;transition:border-color .15s}.route-fields input:focus{border-color:var(--color-error);outline:none;box-shadow:0 0 0 2px #ef444426}.route-fields input::placeholder{color:var(--color-text-muted)}.route-summary{background:var(--color-bg-card);border-radius:var(--radius-md);padding:12px var(--space-4);margin-bottom:var(--space-4)}.route-summary-row{align-items:flex-start;gap:12px;display:flex}.route-summary-fields{flex-direction:column;flex:1;gap:4px;display:flex}.route-summary-address{color:var(--color-text-primary);padding:4px 0;font-size:.85rem}.route-active-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;margin-top:10px;margin-bottom:4px;font-size:.7rem;font-weight:600}.route-input-active{border-color:var(--color-error)!important;box-shadow:0 0 0 2px #ef444426!important}.route-dot-active.route-dot-pickup{box-shadow:0 0 0 4px #ff5a1f33,0 0 8px #ff5a1f4d}.route-dot-active.route-dot-dropoff{box-shadow:0 0 0 4px #2e6bff26,0 0 8px #2e6bff40}.booking-step-section{background:var(--color-bg-card);margin-bottom:var(--space-3);border:2px solid #f2f2f2;border-radius:16px;transition:all .2s;overflow:hidden;box-shadow:0 1px 4px #00000008}.booking-step-done{border-color:#22c55e40}.booking-step-header{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;-webkit-tap-highlight-color:transparent;display:flex}.booking-step-header-static{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4) 0;display:flex}.booking-step-number{background:var(--color-text-muted);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;font-weight:700;transition:background-color .2s;display:flex}.booking-step-done .booking-step-number{background:var(--color-success)}.booking-step-title{color:var(--color-text-primary);font-size:.9rem;font-weight:600}.booking-step-content{padding:var(--space-3) var(--space-4) var(--space-4)}.mini-cal{background:var(--color-bg-card);padding:var(--space-4);margin-bottom:var(--space-4);border:1px solid #f2f2f2;border-radius:18px;box-shadow:0 2px 8px #0000000a}.mini-cal-collapsed{cursor:pointer;padding:var(--space-3) var(--space-4);-webkit-tap-highlight-color:transparent;justify-content:space-between;align-items:center;display:flex}.mini-cal-collapsed-text{color:var(--color-text-secondary);font-size:.9rem;font-weight:500}.mini-cal-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.mini-cal-month{text-align:center;color:var(--color-text-primary);flex:1;font-size:.95rem;font-weight:600}.mini-cal-nav{color:var(--color-text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;min-width:32px;min-height:32px;display:flex}.mini-cal-nav:active{background:#94a3b81a}.mini-cal-collapse{color:var(--color-text-muted);cursor:pointer;padding:var(--space-1);margin-left:var(--space-2);-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;display:flex}.mini-cal-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mini-cal-day-header{text-align:center;color:var(--color-text-muted);padding:var(--space-1) 0;font-size:.7rem;font-weight:600}.mini-cal-day{color:var(--color-text-primary);cursor:pointer;border-radius:var(--radius-sm);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:40px;padding:6px 0;font-size:.85rem;font-weight:500;display:flex;position:relative}.mini-cal-day:active{background:#94a3b81a}.mini-cal-day-empty{cursor:default}.mini-cal-day-past{color:var(--color-text-muted);opacity:.5}.mini-cal-day-today{font-weight:700}.mini-cal-day-today:before{content:"";border:1.5px solid var(--color-text-muted);pointer-events:none;border-radius:50%;width:30px;height:30px;position:absolute;top:50%;left:50%;transform:translate(-50%,-55%)}.mini-cal-day-selected{color:#fff;border-radius:50%;font-weight:700}.mini-cal-day-selected.mini-cal-day-today:before{display:none}.mini-cal-dot{border-radius:50%;width:5px;height:5px;display:block}.mini-cal-detail{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid #94a3b81a}.mini-cal-detail-empty{color:var(--color-text-muted);text-align:center;padding:var(--space-2) 0;font-size:.8rem}.mini-cal-detail-item{border-bottom:1px solid #94a3b80d}.mini-cal-detail-item:last-child{border-bottom:none}.mini-cal-detail-row{align-items:center;gap:var(--space-2);padding:var(--space-2) 0;cursor:pointer;-webkit-tap-highlight-color:transparent;display:flex}.mini-cal-detail-time{color:var(--color-text-primary);min-width:60px;font-size:.8rem;font-weight:600}.mini-cal-detail-client{color:var(--color-text-primary);flex:1;font-size:.8rem}.mini-cal-detail-service{color:var(--color-text-muted);font-size:.75rem}.mini-cal-expanded{padding:var(--space-2) 0 var(--space-3)}.mini-cal-expanded-field{gap:var(--space-2);padding:var(--space-1) 0;font-size:.8rem;display:flex}.mini-cal-expanded-label{color:var(--color-text-muted);min-width:55px;font-weight:500}.mini-cal-expanded-value{color:var(--color-text-primary);word-break:break-word}.mini-cal-cancel-btn{margin-top:var(--space-2);width:100%}.mini-cal-cancel-flow{margin-top:var(--space-2)}.mini-cal-cancel-textarea{background:var(--color-bg-primary);border-radius:var(--radius-sm);width:100%;color:var(--color-text-primary);padding:var(--space-2);font-size:.85rem;font-family:var(--font-sans);resize:none;margin-bottom:var(--space-2);border:1px solid #94a3b833}.mini-cal-cancel-actions{gap:var(--space-2);display:flex}
