:root,[data-theme=dark]{--md-sys-color-primary: #FFB74D;--md-sys-color-on-primary: #3E2723;--md-sys-color-primary-container: #6D4C41;--md-sys-color-on-primary-container: #FFE0B2;--md-sys-color-secondary: #81D4FA;--md-sys-color-on-secondary: #0D47A1;--md-sys-color-secondary-container: #1E3A5F;--md-sys-color-on-secondary-container: #B3E5FC;--md-sys-color-tertiary: #FFCC80;--md-sys-color-on-tertiary: #4E342E;--md-sys-color-error: #F44336;--md-sys-color-on-error: #FFFFFF;--md-sys-color-background: #121212;--md-sys-color-on-background: #E6EDF3;--md-sys-color-surface: #1E1E1E;--md-sys-color-on-surface: #E6EDF3;--md-sys-color-surface-dim: #121212;--md-sys-color-surface-bright: #383838;--md-sys-color-surface-container-lowest: #0D0D0D;--md-sys-color-surface-container-low: #1A1A1A;--md-sys-color-surface-container: #232323;--md-sys-color-surface-container-high: #2E2E2E;--md-sys-color-surface-container-highest: #383838;--md-sys-color-outline: #9E9E9E;--md-sys-color-outline-variant: #616161;--bg: var(--md-sys-color-background);--bg-primary: var(--md-sys-color-background);--bg-secondary: var(--md-sys-color-surface-container-low);--bg-tertiary: var(--md-sys-color-surface-container);--bg-hover: var(--md-sys-color-surface-container-high);--surface: var(--md-sys-color-surface-container);--surface2: var(--md-sys-color-surface-container-high);--surface-alt: var(--md-sys-color-surface-container-low);--surface1: var(--md-sys-color-surface);--surface3: var(--md-sys-color-surface-container-highest);--border: var(--md-sys-color-outline-variant);--border-color: var(--md-sys-color-outline-variant);--border-light: var(--md-sys-color-outline);--text: var(--md-sys-color-on-background);--text-primary: var(--md-sys-color-on-background);--text-secondary: var(--md-sys-color-outline);--text-muted: var(--md-sys-color-outline);--primary-color: var(--md-sys-color-primary);--primary-hover: #FF8F00;--accent: var(--md-sys-color-primary);--accent-dim: #E65100;--primary: var(--md-sys-color-primary);--primary-dark: #FF8F00;--info: #29B6F6;--success: #66BB6A;--warning: #FFA726;--danger: var(--md-sys-color-error);--md-sys-shape-corner-none: 0;--md-sys-shape-corner-extra-small: 4px;--md-sys-shape-corner-small: 8px;--md-sys-shape-corner-medium: 12px;--md-sys-shape-corner-large: 16px;--md-sys-shape-corner-extra-large: 28px;--md-sys-shape-corner-full: 9999px;--radius: var(--md-sys-shape-corner-medium);--radius-sm: var(--md-sys-shape-corner-small);--radius-lg: var(--md-sys-shape-corner-large);--font: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Roboto Flex", "Roboto", sans-serif;--nav-active-color: var(--md-sys-color-on-primary);--icon-default: var(--md-sys-color-outline);--icon-active: var(--md-sys-color-primary);--icon-hover: var(--md-sys-color-primary)}[data-theme=light]{--md-sys-color-primary: #E65100;--md-sys-color-on-primary: #FFFFFF;--md-sys-color-primary-container: #FFE0B2;--md-sys-color-on-primary-container: #BF360C;--md-sys-color-secondary: #0277BD;--md-sys-color-on-secondary: #FFFFFF;--md-sys-color-secondary-container: #B3E5FC;--md-sys-color-on-secondary-container: #01579B;--md-sys-color-tertiary: #F57C00;--md-sys-color-on-tertiary: #FFFFFF;--md-sys-color-error: #B3261E;--md-sys-color-on-error: #FFFFFF;--md-sys-color-background: #FAFAFA;--md-sys-color-on-background: #1C1B1F;--md-sys-color-surface: #FFFFFF;--md-sys-color-on-surface: #1C1B1F;--md-sys-color-surface-dim: #F5F5F5;--md-sys-color-surface-bright: #FAFAFA;--md-sys-color-surface-container-lowest: #FFFFFF;--md-sys-color-surface-container-low: #F5F5F5;--md-sys-color-surface-container: #EEEEEE;--md-sys-color-surface-container-high: #E5E5E5;--md-sys-color-surface-container-highest: #E0E0E0;--md-sys-color-outline: #757575;--md-sys-color-outline-variant: #E0E0E0;--bg: var(--md-sys-color-background);--bg-primary: var(--md-sys-color-background);--bg-secondary: var(--md-sys-color-surface-container-low);--bg-tertiary: var(--md-sys-color-surface-container);--bg-hover: var(--md-sys-color-surface-container-high);--surface: var(--md-sys-color-surface-container);--surface2: var(--md-sys-color-surface-container-high);--surface-alt: var(--md-sys-color-surface-container-low);--surface1: var(--md-sys-color-surface);--surface3: var(--md-sys-color-surface-container-highest);--border: var(--md-sys-color-outline-variant);--border-color: var(--md-sys-color-outline-variant);--border-light: var(--md-sys-color-outline);--text: var(--md-sys-color-on-background);--text-primary: var(--md-sys-color-on-background);--text-secondary: var(--md-sys-color-outline);--text-muted: var(--md-sys-color-outline);--accent: var(--md-sys-color-primary);--accent-dim: #BF360C;--primary: var(--md-sys-color-primary);--primary-dark: #BF360C;--primary-color: var(--md-sys-color-primary);--primary-hover: #BF360C;--info: #0288D1;--success: #388E3C;--warning: #F57C00;--danger: #B3261E;--nav-active-color: var(--md-sys-color-on-primary);--icon-default: #49454F;--icon-active: var(--md-sys-color-primary);--icon-hover: #C9A227}*{box-sizing:border-box}body{margin:0;font-family:var(--font);font-size:16px;line-height:1.5;background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-dim);text-decoration:underline}button{font-family:inherit;cursor:pointer}.loading-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.spinner{display:inline-block;position:relative;width:80px;height:80px}.spinner-ring{box-sizing:border-box;display:block;position:absolute;width:64px;height:64px;margin:8px;border:8px solid rgba(255,255,255,.3);border-radius:50%;animation:spinner-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;border-color:rgba(255,255,255,.3) transparent transparent transparent}.spinner-ring:nth-child(1){animation-delay:-.45s}.spinner-ring:nth-child(2){animation-delay:-.3s}.spinner-ring:nth-child(3){animation-delay:-.15s}@keyframes spinner-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;padding:20px;background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.error-fallback h2{font-size:24px;margin-bottom:20px}.error-fallback details{background:#ffffff1a;padding:15px;border-radius:8px;max-width:600px;font-size:14px;white-space:pre-wrap;word-break:break-word;border:1px solid rgba(255,255,255,.3)}.driver-onboarding-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:24px;background:url(/18-wheeler%20tractor-trailer%20truck%20on%20interstate%20highway%20at%20sunset%20stock%20photo.jpg) center/cover no-repeat fixed;animation:fadeIn .3s ease-out}.driver-onboarding-overlay:before{content:"";position:absolute;inset:0;background:#0f1419a6;backdrop-filter:blur(2px)}.driver-onboarding-card{background:#1a1f2eeb;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);max-width:420px;width:100%;overflow:hidden;box-shadow:0 8px 32px #00000080;animation:slideUp .3s ease-out;position:relative;z-index:1}.driver-onboarding-card-wide{max-width:480px;max-height:90vh;overflow-y:auto}.driver-onboarding-made-in-usa{position:fixed;bottom:28px;left:50%;transform:translate(-50%);font-size:.9rem;font-weight:700;letter-spacing:.04em;z-index:2;color:#fffffff2;text-shadow:0 0 2px rgba(0,0,0,.8),0 1px 3px rgba(0,0,0,.5)}@keyframes slideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.driver-onboarding-progress{display:flex;justify-content:center;gap:8px;padding:20px 24px 0}.progress-dot{width:8px;height:8px;border-radius:50%;background:#ffffff4d;transition:background .2s}.progress-dot.active{background:var(--primary-color, #3b82f6);transform:scale(1.2)}.driver-onboarding-body{padding:32px 24px 24px;text-align:center}.driver-onboarding-icon{font-size:48px;display:block;margin-bottom:16px}.driver-onboarding-icon.driver-onboarding-icon-success{color:#22c55e}.driver-onboarding-logo{width:80px;height:auto;display:block;margin:0 auto 16px}.driver-onboarding-body h2{font-size:1.5rem;font-weight:700;margin:0 0 12px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.driver-onboarding-body p{font-size:.95rem;color:#e2e8f0;line-height:1.5;margin:0}.driver-onboarding-actions{display:flex;gap:12px;padding:0 24px 24px;justify-content:flex-end;align-items:center}.driver-onboarding-skip{padding:10px 16px;font-size:.9rem;color:#94a3b8;background:transparent;border:none;cursor:pointer;border-radius:var(--radius)}.driver-onboarding-skip:hover{color:#e2e8f0;background:#ffffff14}.driver-onboarding-next{padding:10px 24px;font-size:.95rem;font-weight:600;color:#fff;background:var(--primary-color, #3b82f6);border:none;border-radius:var(--radius);cursor:pointer;transition:opacity .2s}.driver-onboarding-next:hover{opacity:.9}.driver-onboarding-next:active{opacity:1}.driver-onboarding-next:disabled{opacity:.5;cursor:not-allowed}.driver-onboarding-form{text-align:left;padding:20px 24px 16px}.driver-onboarding-form h2{text-align:center;margin-bottom:4px}.form-hint{font-size:.8rem;color:#94a3b8;margin-bottom:16px;text-align:center}.form-row{margin-bottom:12px}.form-row label{display:block;font-size:.85rem;font-weight:600;color:#e2e8f0;margin-bottom:4px}.form-row input,.form-row select{width:100%;padding:10px 12px;font-size:.95rem;background:#0f141999;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);color:#fff;box-sizing:border-box}.form-row input::placeholder,.form-row select option{color:#64748b}.form-row input:focus,.form-row select:focus{outline:none;border-color:var(--primary-color, #3b82f6)}.form-row-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row-three{display:grid;grid-template-columns:1fr minmax(100px,1.2fr) minmax(80px,1fr);gap:12px}.checkbox-row{margin-top:8px}.checkbox-row .checkbox-label{display:flex!important;align-items:center;gap:8px;cursor:pointer;font-weight:500!important;padding:10px 12px;background:#0f141999;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);color:#e2e8f0}.checkbox-label input{width:auto;accent-color:var(--primary-color, #3b82f6)}.industry-chips{display:flex;flex-wrap:wrap;gap:8px}.industry-chip{padding:6px 12px;font-size:.8rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:999px;color:#e2e8f0;cursor:pointer;transition:all .2s}.industry-chip:hover{background:#ffffff1f}.industry-chip.active{background:#3b82f64d;border-color:var(--primary-color, #3b82f6);color:#fff}.form-errors{font-size:.85rem;color:#f87171;margin-top:8px}@media(max-width:500px){.form-row-two,.form-row-three{grid-template-columns:1fr}}.driver-tutorial-overlay{position:fixed;inset:0;z-index:1500;animation:fadeIn .2s ease-out}.driver-tutorial-frame{position:fixed;background:#0000008c;cursor:pointer}.driver-tutorial-frame-full{inset:0}.driver-tutorial-spotlight{position:fixed;border-radius:8px;border:2px solid var(--primary-color, #3b82f6);outline:2px solid rgba(255,255,255,.4);outline-offset:2px;pointer-events:none;transition:left .2s,top .2s,width .2s,height .2s}.driver-tutorial-tooltip{position:fixed;bottom:24px;left:50%;transform:translate(-50%);width:min(calc(100% - 32px),360px);max-height:50vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 25px 50px -12px #0006;padding:20px;animation:tooltipSlideUp .25s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes tooltipSlideUp{0%{transform:translate(-50%) translateY(12px);opacity:.9}to{transform:translate(-50%) translateY(0);opacity:1}}.driver-tutorial-tooltip-header{display:flex;gap:12px;margin-bottom:16px}.driver-tutorial-tooltip-icon{font-size:1.5rem;flex-shrink:0}.driver-tutorial-tooltip-header h3{font-size:1.1rem;font-weight:700;margin:0 0 4px;color:var(--text)}.driver-tutorial-tooltip-header p{font-size:.9rem;color:var(--text-muted);line-height:1.45;margin:0}.driver-tutorial-tooltip-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.driver-tutorial-tooltip-footer-left{display:flex;align-items:center;gap:12px}.driver-tutorial-back{padding:8px 12px;font-size:.9rem;color:var(--text-muted);background:transparent;border:none;cursor:pointer;border-radius:var(--radius)}.driver-tutorial-back:hover{color:var(--text);background:var(--surface2)}.driver-tutorial-step-indicator{font-size:.8rem;color:var(--text-muted)}.driver-tutorial-tooltip-actions{display:flex;gap:8px}.driver-tutorial-skip{padding:8px 14px;font-size:.9rem;color:var(--text-muted);background:transparent;border:none;cursor:pointer;border-radius:var(--radius)}.driver-tutorial-skip:hover{color:var(--text);background:var(--surface2)}.driver-tutorial-next{padding:8px 18px;font-size:.9rem;font-weight:600;color:#fff;background:var(--primary-color, #3b82f6);border:none;border-radius:var(--radius);cursor:pointer;transition:opacity .2s}.driver-tutorial-next:hover{opacity:.9}.driver-tutorial-close-btn{position:fixed;top:16px;right:16px;width:36px;height:36px;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 2px 8px #00000026}.driver-tutorial-close-btn:hover{background:var(--surface2)}@media(max-width:768px){.driver-tutorial-tooltip{bottom:calc(80px + env(safe-area-inset-bottom,0px));width:calc(100% - 24px)}}@media(max-width:500px){.driver-tutorial-tooltip{bottom:calc(90px + env(safe-area-inset-bottom,0px))}}.app{min-height:100vh;display:flex;flex-direction:column}.app-sticky-top{position:sticky;top:0;z-index:100}.app-header{background:var(--surface);border-bottom:1px solid var(--border);padding:16px 20px;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right));padding-top:max(16px,env(safe-area-inset-top));display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:20px}.header-left{flex:1;min-width:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.view-dropdown{padding:6px 28px 6px 10px;font-size:.9rem;font-weight:600;color:var(--text);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.view-dropdown:hover{border-color:var(--text-muted)}.view-dropdown:focus{outline:none;border-color:var(--accent)}.view-selector{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.saas-tier-dropdown{padding:6px 28px 6px 10px;font-size:.85rem;font-weight:600;color:var(--text);background:linear-gradient(135deg,#667eea22,#764ba222);border:1.5px solid var(--accent);border-radius:var(--radius);cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;transition:all .2s ease}.saas-tier-dropdown:hover{border-color:var(--accent);background:linear-gradient(135deg,#667eea33,#764ba233);box-shadow:0 0 8px #667eea33}.saas-tier-dropdown:focus{outline:none;border-color:var(--accent);box-shadow:0 0 12px #667eea4d}.saas-tier-selector{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tier-features-btn{padding:6px 12px;font-size:.85rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:var(--radius);cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #667eea4d;white-space:nowrap}.tier-features-btn:hover{background:linear-gradient(135deg,#7c8ff0,#8a59b0);transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.tier-features-btn:active{transform:translateY(0)}.header-actions{display:flex;align-items:center;gap:8px}.header-icon{display:block;width:22px;height:22px;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;background-color:var(--icon-default);transition:background-color .2s}.theme-toggle,.settings-link,.profile-avatar-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:none;background:transparent;border-radius:var(--radius);cursor:pointer;transition:transform .15s;-webkit-tap-highlight-color:transparent;text-decoration:none}.theme-toggle:hover .header-icon{background-color:var(--icon-hover)}.settings-link:hover .header-icon,.profile-avatar-link:hover .header-icon{background-color:var(--icon-active)}.theme-toggle:active,.settings-link:active,.profile-avatar-link:active{transform:scale(.92)}.settings-link.active .header-icon,.profile-avatar-link.active .header-icon,.theme-toggle .header-icon-dark-active{background-color:var(--icon-active)}.app-brand{font-weight:700;font-size:1.25rem;color:var(--text)}.app-brand-logo{height:32px;width:auto;flex-shrink:0;object-fit:contain}.app-brand-text{font-family:Zilla Slab,Georgia,serif;font-weight:600;font-size:1.25rem;color:var(--text);letter-spacing:-.02em;white-space:nowrap}.driver-status-bar{display:flex;flex-wrap:wrap;gap:24px;padding:16px 20px}.driver-status-item{display:flex;flex-direction:column;gap:2px}.driver-status-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.driver-status-value{font-weight:700;font-size:1rem;color:var(--success)}.driver-status-item.hos-status .driver-status-value{color:var(--success)}.driver-status-item.hos-warning .driver-status-value{color:var(--warning)}.driver-status-muted{font-size:.75rem;color:var(--text-muted)}.app-version{font-size:.7rem;color:var(--text-muted);font-weight:400;margin-left:8px;vertical-align:middle}.app-meta{display:flex;gap:16px;font-size:.875rem;color:var(--text-muted)}.app-meta span strong{color:var(--success)}.app-meta-shipper,.app-meta-driver{font-size:.875rem;color:var(--text-muted);font-style:italic}.app-meta-admin{display:inline-block;padding:4px 10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:var(--radius);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.hos-display{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:var(--surface2);border-radius:6px;border-left:3px solid var(--success)}.hos-label{font-size:.75rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.hos-value{font-weight:700;color:var(--success);font-size:.95rem;font-family:monospace}.hos-display.hos-warning{border-left-color:var(--warning)}.hos-display.hos-warning .hos-value{color:var(--warning)}.hos-progress{font-size:.7rem;color:var(--text-muted)}.app-nav{display:flex;gap:4px;flex-wrap:wrap}.app-nav-tabbar{display:none}@media(min-width:769px){.app-nav-desktop{flex:1 1 100%;order:10;margin-top:4px;justify-content:center}.app-nav-desktop a{font-size:1.05rem;padding:10px 20px}}@media(max-width:768px){.app-nav-desktop{display:none}.app-nav-tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--border);padding-bottom:max(12px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));z-index:100;justify-content:space-around;gap:4px}.app-nav-tabbar .tabbar-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 4px;min-height:56px;color:var(--icon-default);text-decoration:none;font-size:.7rem;font-weight:500;border-radius:var(--radius);transition:color .2s;-webkit-tap-highlight-color:transparent}.app-nav-tabbar .tabbar-item:hover{color:var(--icon-active)}.app-nav-tabbar .tabbar-item:hover .tabbar-icon{background-color:var(--icon-active)}.app-nav-tabbar .tabbar-item.active{color:var(--icon-active);background:transparent;border-top:2px solid var(--icon-active)}.app-nav-tabbar .tabbar-item.active .tabbar-icon{background-color:var(--icon-active)}.app-nav-tabbar .tabbar-icon{display:block;width:24px;height:24px;margin-bottom:2px;background-color:var(--icon-default);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;transition:background-color .2s}.app-nav-tabbar .tabbar-label{white-space:nowrap}}.app-nav a{padding:8px 14px;border-radius:var(--radius);color:var(--text-muted);font-size:.9rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s}.app-nav a:hover{background:var(--surface2);color:var(--text)}.app-nav a.active{background:var(--accent);color:var(--nav-active-color)}.driver-strip{padding:7px 24px;font-size:.8rem;transition:border-color .3s,background .3s,box-shadow .3s}.driver-strip.strip-available{background:#122a15;border-bottom:2px solid #22C55E;box-shadow:inset 0 -1px 8px #22c55e26}.driver-strip.strip-unavailable{background:#2a1215;border-bottom:2px solid #EF4444;box-shadow:inset 0 -1px 8px #ef444426}[data-theme=light] .driver-strip.strip-available{background:#e8f5e9;box-shadow:inset 0 -1px 8px #22c55e1a}[data-theme=light] .driver-strip.strip-unavailable{background:#fce8e8;box-shadow:inset 0 -1px 8px #ef44441a}.driver-strip-inner{max-width:900px;margin:0 auto;display:flex;align-items:center;gap:16px;justify-content:center}.strip-item{display:flex;align-items:center;gap:6px}.strip-label{color:#ffffff8c;font-weight:500;text-transform:uppercase;font-size:.65rem;letter-spacing:.5px}.strip-val{color:#fff;font-weight:700}[data-theme=light] .strip-label{color:#00000073}[data-theme=light] .strip-val{color:#1a1a1a}[data-theme=light] .strip-dot{background:#00000040}.strip-dot{width:3px;height:3px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.strip-group{display:flex;align-items:center;gap:16px}.strip-item.strip-warn .strip-val{color:var(--danger, #EF4444)}.strip-toggle{display:flex;align-items:center;gap:8px;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:700;white-space:nowrap;transition:opacity .2s}.strip-toggle:hover{opacity:.85}.strip-toggle.on{color:#22c55e}.strip-toggle.off{color:#ef4444}.strip-toggle-text{letter-spacing:.2px}.strip-toggle-track{position:relative;width:32px;height:18px;border-radius:9px;background:#ef4444;transition:background .25s;flex-shrink:0}.strip-toggle.on .strip-toggle-track{background:#22c55e}.strip-toggle-thumb{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .25s;box-shadow:0 1px 3px #0003}.strip-toggle.on .strip-toggle-thumb{left:16px}@media(max-width:768px){.app-header{padding:10px 12px;gap:8px}.header-left{gap:6px;flex-wrap:wrap}.app-brand{font-size:1rem;flex-shrink:0}.app-brand-logo{height:26px}.app-brand-text{font-size:1.05rem}.view-selector{flex-wrap:nowrap;gap:4px}.view-dropdown,.saas-tier-dropdown{padding:4px 22px 4px 6px;font-size:.75rem}.saas-tier-selector{flex-wrap:nowrap;gap:4px}.tier-features-btn{padding:4px 8px;font-size:.7rem}.app-meta-driver,.app-meta-shipper{display:none}.header-actions{gap:6px;flex-shrink:0}.header-icon{width:18px;height:18px}.driver-strip{padding:6px 12px;font-size:.72rem}.driver-strip-inner{flex-direction:column;gap:4px}.strip-group{gap:10px;justify-content:center;width:100%}.strip-dot-sep{display:none}.strip-toggle{font-size:.72rem;gap:6px}.strip-toggle-track{width:28px;height:16px;border-radius:8px}.strip-toggle-thumb{width:12px;height:12px}.strip-toggle.on .strip-toggle-thumb{left:14px}}.main{flex:1;padding:24px;padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right));padding-bottom:max(24px,env(safe-area-inset-bottom));max-width:720px;margin:0 auto;width:100%}@media(min-width:769px){.main:has(.route-history-screen){max-width:1100px}.main:has(.admin-dashboard-screen),.main:has(.admin-saas-screen){max-width:1100px}}@media(max-width:768px){.main{min-width:0;overflow-x:hidden;padding:16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(80px,calc(100px + env(safe-area-inset-bottom)))}.app-meta{flex-wrap:wrap;gap:12px}.app-meta span:first-of-type,.app-meta span:nth-of-type(2){flex:1 1 100%}.app-nav.app-nav-slider.app-nav-desktop{flex:1 1 100%;order:10;display:none;flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding:12px 0;margin:0 calc(-1*max(20px,env(safe-area-inset-left)));padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.app-nav.app-nav-slider a{flex-shrink:0;scroll-snap-align:start;padding:10px 16px;min-height:44px;display:inline-flex;align-items:center;font-size:.9rem;white-space:nowrap;-webkit-tap-highlight-color:transparent}.card{padding:16px;margin-bottom:12px}}@media(max-width:480px){.app-header{padding:12px 16px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.app-brand{font-size:1.1rem}.app-brand-logo{height:28px}.app-brand-text{font-size:1.1rem}.hos-display{width:100%}}@media(pointer:coarse){.btn{min-height:44px;padding:14px 24px}.app-nav a{min-height:44px;padding:10px 16px}}.card{background:var(--md-sys-color-surface-container, var(--surface));border:none;border-radius:var(--md-sys-shape-corner-large, var(--radius));padding:20px;margin-bottom:16px;box-shadow:0 1px 2px #0000004d}[data-theme=light] .card{box-shadow:0 1px 3px #00000014}.card-title{font-size:1rem;font-weight:600;margin:0 0 16px;color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:var(--radius);font-weight:600;font-size:.95rem;border:none;transition:transform .15s,opacity .15s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--md-sys-color-primary, var(--accent));color:var(--md-sys-color-on-primary, var(--bg))}.btn-primary:hover{background:color-mix(in srgb,var(--md-sys-color-primary, var(--accent)) 80%,black)}.btn-secondary{background:var(--md-sys-color-surface-container-high, var(--surface2));color:var(--md-sys-color-on-surface, var(--text));border:none}.btn-secondary:hover{background:var(--md-sys-color-surface-container-highest, var(--surface3))}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.btn-ghost:hover{color:var(--text);border-color:var(--text-muted)}.btn-group{display:flex;gap:12px;flex-wrap:wrap}.badge{display:inline-block;padding:4px 8px;border-radius:6px;font-size:.75rem;font-weight:600}.badge-green{background:#22c55e33;color:var(--success)}.badge-yellow{background:#eab30833;color:var(--warning)}.badge-red{background:#ef444433;color:var(--danger)}.badge-quality-excellent{background:#22c55e26;color:var(--success)}.badge-quality-good{background:#eab30826;color:var(--warning)}.badge-quality-poor{background:#ef444426;color:var(--danger)}.load-badges{display:flex;gap:8px;margin-bottom:8px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);font-size:.95rem}.stat-row:last-child{border-bottom:none}.stat-row .value{font-weight:600;color:var(--text)}.stat-row .value.negative{color:var(--danger)}.stat-row .value.positive{color:var(--success)}.divider{height:1px;background:var(--border);margin:16px 0}.toast{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));right:max(20px,env(safe-area-inset-right));padding:12px 16px;border-radius:var(--radius);font-size:.95rem;font-weight:500;z-index:1000;animation:slideIn .3s ease-out;box-shadow:0 4px 12px #00000026}.toast-success{background:var(--success);color:#fff}.toast-error{background:var(--danger);color:#fff}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.password-gate{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:url(/18-wheeler%20tractor-trailer%20truck%20on%20interstate%20highway%20at%20sunset%20stock%20photo.jpg) center/cover no-repeat fixed;position:relative}.password-gate:before{content:"";position:absolute;inset:0;background:#0f1419a6;backdrop-filter:blur(2px)}.password-gate-card{display:flex;flex-direction:column;align-items:center;gap:16px;background:#1a1f2eeb;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:48px 40px;max-width:360px;width:100%;box-shadow:0 8px 32px #00000080;position:relative;z-index:1}.password-gate-logo{width:80px;height:auto;margin-bottom:4px}.password-gate-card h1{font-size:1.5rem;font-weight:700;color:#fff;margin:0;letter-spacing:-.02em;text-shadow:0 1px 2px rgba(0,0,0,.3)}.password-gate-card p{font-size:.9rem;color:#e2e8f0;margin:0}.password-gate-card input{width:100%;padding:14px 16px;border-radius:10px;border:1px solid var(--border, #2a2f3e);background:var(--bg, #0f1419);color:var(--text, #e2e8f0);font-size:1.25rem;text-align:center;letter-spacing:.3em;outline:none;transition:border-color .2s;box-sizing:border-box}.password-gate-card input:focus{border-color:var(--primary, #3b82f6)}.password-gate-card input.shake{animation:gate-shake .4s ease;border-color:#ef4444}.password-gate-error{color:#ef4444;font-size:.85rem;margin-top:-8px}.password-gate-card button{width:100%;padding:14px;border-radius:10px;border:none;background:var(--primary, #3b82f6);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s}.password-gate-card button:hover:not(:disabled){opacity:.9}.password-gate-card button:disabled{opacity:.4;cursor:not-allowed}@keyframes gate-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.coming-soon-screen{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:20px}.coming-soon-card{text-align:center;max-width:360px}.coming-soon-icon{font-size:3rem;display:block;margin-bottom:12px}.coming-soon-card h2{color:var(--text);margin:0 0 8px}.coming-soon-card p{color:var(--text-muted);margin:0 0 20px}.coming-soon-card button{padding:10px 24px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface2);color:var(--text);font-size:.9rem;cursor:pointer;transition:background .2s}.coming-soon-card button:hover{background:var(--border)}
