@font-face{font-family:Manrope;src:url(/fonts/manrope/manrope-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope/manrope-latin-600-normal.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope/manrope-latin-700-normal.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope/manrope-latin-800-normal.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter/inter-latin-400-normal.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter/inter-latin-500-normal.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter/inter-latin-600-normal.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Material Symbols Outlined;src:url(/fonts/material-symbols/material-symbols-outlined.ttf)format("truetype");font-weight:300;font-style:normal;font-display:swap}:root[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f1f8f2;--bg-card:#fff;--bg-sidebar:#1b5e20;--bg-header:#1b5e20;--text-primary:#1a1a1a;--text-secondary:#4a4a4a;--text-on-dark:#fff;--accent:#1b5e20;--accent-light:#2e7d32;--accent-hover:#145214;--accent-muted:#e8f5e9;--border:#c8e6c9;--shadow:#1b5e2026;--btn-primary-bg:#1b5e20;--btn-primary-text:#fff;--btn-secondary-bg:#e8f5e9;--btn-secondary-text:#1b5e20;--table-header:#1b5e20;--table-header-text:#fff;--table-row-even:#f1f8f2;--table-row-hover:#c8e6c9;--input-bg:#fff;--input-border:#c8e6c9;--input-focus:#1b5e20;--overlay-bg:#00000080;--accepted-bg:#e0e0e0;--accepted-text:#757575;--success-bg:#e8f5e9;--success-text:#1b5e20;--danger:#c62828}:root[data-theme=dark]{--bg-primary:#0d1b2a;--bg-secondary:#112236;--bg-card:#1a2744;--bg-sidebar:#081524;--bg-header:#081524;--text-primary:#e8eaf0;--text-secondary:#9aa5b4;--text-on-dark:#e8eaf0;--accent:#4a90d9;--accent-light:#5ba0e8;--accent-hover:#3a7bc4;--accent-muted:#1a2d45;--border:#1e3a5a;--shadow:#0006;--btn-primary-bg:#4a90d9;--btn-primary-text:#fff;--btn-secondary-bg:#1a2d45;--btn-secondary-text:#4a90d9;--table-header:#081524;--table-header-text:#e8eaf0;--table-row-even:#112236;--table-row-hover:#1a3050;--input-bg:#1a2744;--input-border:#1e3a5a;--input-focus:#4a90d9;--overlay-bg:#000000b3;--accepted-bg:#0f1e2d;--accepted-text:#4a6080;--success-bg:#0d2b1a;--success-text:#4caf50;--danger:#ef5350}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-tap-highlight-color:transparent;transition:background-color .3s,color .3s}.app-container{flex-direction:column;max-width:480px;min-height:100vh;margin:0 auto;display:flex;position:relative;overflow-x:hidden}.app-container.wide{max-width:100%}.app-header{background:var(--bg-header);color:var(--text-on-dark);z-index:100;box-shadow:0 2px 8px var(--shadow);justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.app-header h1{letter-spacing:.5px;font-size:1.2rem;font-weight:600}.header-center{position:absolute;left:50%;transform:translate(-50%)}.hamburger-btn{cursor:pointer;color:var(--text-on-dark);background:0 0;border:none;flex-direction:column;gap:5px;padding:6px;display:flex}.hamburger-btn span{background:currentColor;border-radius:2px;width:24px;height:2px;transition:all .3s;display:block}.side-menu-overlay{background:var(--overlay-bg);z-index:9000;opacity:0;animation:.2s forwards fadeIn;position:fixed;inset:0}@keyframes fadeIn{to{opacity:1}}.side-menu{background:var(--em-surface);width:280px;height:100%;color:var(--em-on-surface);z-index:9001;box-shadow:4px 0 32px var(--em-shadow);flex-direction:column;animation:.25s forwards slideIn;display:flex;position:fixed;top:0;left:0;transform:translate(-100%)}@keyframes slideIn{to{transform:translate(0)}}.side-menu-header{border-bottom:1px solid #c3c8bd40;justify-content:space-between;align-items:center;padding:20px 20px 16px;display:flex}.side-menu-header h2{color:var(--em-on-surface);font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:700}.side-menu-close{color:var(--em-on-surface-var);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:background .2s;display:flex}.side-menu-close:hover{background:var(--em-surface-high)}.side-menu-avatar{background:var(--em-primary);color:#fff;letter-spacing:.03em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-family:Manrope,sans-serif;font-size:.95rem;font-weight:700;display:flex}.side-menu-user-info{align-items:center;gap:12px;display:flex}.side-menu-username{color:var(--em-on-surface);font-family:Manrope,sans-serif;font-size:.95rem;font-weight:600}.side-menu-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--em-on-surface-var);opacity:.6;padding:8px 20px 4px;font-family:Inter,sans-serif;font-size:.7rem;font-weight:600}.side-menu nav{flex:1;padding:12px 0}.side-menu-item{color:var(--em-on-surface);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:14px;width:100%;padding:14px 20px;font-family:Inter,sans-serif;font-size:1rem;transition:background .2s;display:flex}.side-menu-item:hover{background:var(--em-surface-high)}.side-menu-item.danger{color:#ba1a1a}.side-menu-item .menu-icon{text-align:center;align-items:center;width:24px;font-size:1.2rem;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--accent-muted)}.btn-danger{background:var(--danger);color:#fff}.btn-success{color:#fff;background:#2e7d32}.btn-sm{padding:7px 14px;font-size:.85rem}.btn-full{justify-content:center;width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.card{background:var(--bg-card);border:1px solid var(--border);box-shadow:0 2px 8px var(--shadow);border-radius:12px;padding:16px}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.form-control{border:1.5px solid var(--input-border);background:var(--input-bg);color:var(--text-primary);border-radius:8px;outline:none;width:100%;padding:11px 14px;font-size:1rem;transition:border-color .2s}.form-control:focus{border-color:var(--input-focus)}.form-row{gap:8px;display:flex}.form-row .form-control{flex:1}.modal-overlay{background:var(--overlay-bg);z-index:1001;align-items:flex-end;animation:.2s forwards fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-primary);border-radius:20px 20px 0 0;width:100%;max-height:90vh;padding:24px 20px;animation:.3s slideUp;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-header h2{font-size:1.2rem;font-weight:700}.modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:4px;font-size:1.5rem;line-height:1}.table-wrapper{border:1px solid var(--border);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}thead tr{background:var(--table-header);color:var(--table-header-text)}thead th{text-align:left;white-space:nowrap;-webkit-user-select:none;user-select:none;padding:12px 10px;font-weight:600}thead th.sortable{cursor:pointer}thead th.sortable:hover{background:var(--accent-light)}tbody tr{transition:background .15s}tbody tr:nth-child(2n){background:var(--table-row-even)}tbody tr:hover{background:var(--table-row-hover)}tbody tr.accepted-row{background:var(--accepted-bg);color:var(--accepted-text);opacity:.7}tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px}.toggle-group{border:1.5px solid var(--accent);border-radius:8px;display:flex;overflow:hidden}.toggle-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 16px;font-size:.9rem;font-weight:600;transition:all .2s}.toggle-btn.active{background:var(--accent);color:var(--btn-primary-text)}.app-header .toggle-group{border-color:#ffffffa6}.app-header .toggle-btn{color:#fffc;padding:6px 12px;font-size:.82rem}.app-header .toggle-btn.active{color:#fff;background:#ffffff40}.app-header .toggle-btn:hover:not(.active){color:#fff;background:#ffffff1f}.badge{text-transform:uppercase;border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-block}.badge-open{color:#1565c0;background:#e3f2fd}.badge-accepted{color:#2e7d32;background:#e8f5e9}.badge-done{color:#6a1b9a;background:#f3e5f5}[data-theme=dark] .badge-open{color:#64b5f6;background:#0d2744}[data-theme=dark] .badge-accepted{color:#81c784;background:#0d2b1a}[data-theme=dark] .badge-done{color:#ce93d8;background:#1e0d2b}.offline-banner{z-index:600;background:var(--danger,#d32f2f);color:#fff;text-align:center;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.9rem;font-weight:600;animation:.3s slideDown;display:flex;position:fixed;top:0;left:0;right:0}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.toast-container{z-index:500;pointer-events:none;flex-direction:column;gap:8px;width:90%;max-width:380px;display:flex;position:fixed;top:60px;left:50%;transform:translate(-50%)}.toast{background:var(--bg-card);border:1px solid var(--border);box-shadow:0 4px 20px var(--shadow);text-align:center;border-radius:10px;padding:12px 20px;font-size:.95rem;animation:.3s slideUp}.toast-success{color:var(--success-text);border-left:4px solid #2e7d32}.toast-error{border-left:4px solid var(--danger);color:var(--danger)}.toast-info{border-left:4px solid var(--accent)}.map-container{z-index:0;width:100%;height:calc(100vh - 120px);position:relative}.leaflet-container{width:100%;height:100%}.map-legend{z-index:1000;background:var(--em-surface);opacity:.92;-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 16px var(--em-shadow);color:var(--em-on-surface);border-radius:10px;flex-direction:column;gap:6px;padding:10px 14px;font-size:.78rem;display:flex;position:absolute;bottom:16px;left:12px}.map-legend__item{align-items:center;gap:8px;display:flex}.map-legend__dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.map-locate-btn{z-index:1000;background:var(--em-surface);width:44px;height:44px;color:var(--em-on-surface);box-shadow:0 4px 16px var(--em-shadow);cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;transition:background .2s;display:flex;position:absolute;bottom:16px;right:12px}.map-locate-btn:hover{background:var(--em-surface-low)}.map-locate-btn:disabled{opacity:.5;cursor:default}.map-empty-hint{background:var(--em-surface);box-shadow:0 4px 20px var(--em-shadow);text-align:center;z-index:1000;color:var(--em-on-surface-var);border-radius:12px;padding:16px 24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-detail-row{color:var(--em-on-surface);align-items:flex-start;gap:10px;padding:5px 0;font-size:.9rem;line-height:1.5;display:flex}.map-detail-icon{color:var(--em-on-surface-var);flex-shrink:0;margin-top:2px;font-size:18px}.map-detail-phone{color:var(--em-primary);font-size:.82rem;text-decoration:none;display:block}.map-detail-phone:hover{text-decoration:underline}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}.text-muted{color:var(--text-secondary);font-size:.85rem}.text-center{text-align:center}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-16{margin-bottom:16px}.p-16{padding:16px}.p-20{padding:20px}.w-full{width:100%}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.login-page{background:var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-logo{margin-bottom:8px;font-size:3rem}.login-title{color:var(--accent);margin-bottom:4px;font-size:1.8rem;font-weight:700}.login-subtitle{color:var(--text-secondary);margin-bottom:32px;font-size:.95rem}.login-card{width:100%;max-width:380px}.debug-section{border:1px dashed var(--border);text-align:center;border-radius:8px;margin-top:24px;padding:16px}.debug-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-size:.75rem}.debug-buttons{gap:8px;display:flex}.customer-main{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}.order-btn{box-shadow:0 4px 20px var(--shadow);border-radius:16px;padding:20px 40px;font-size:1.2rem}.ride-status-card{text-align:center;width:100%}.idle-screen{text-align:center;flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.idle-icon-wrapper{justify-content:center;align-items:center;width:90px;height:90px;display:flex;position:relative}.idle-icon{z-index:1;font-size:2.8rem}.idle-ring{border:3px solid var(--accent);opacity:0;border-radius:50%;animation:2s ease-out infinite pulse-ring;position:absolute;inset:0}.idle-ring:nth-child(2){animation-delay:.7s}@keyframes pulse-ring{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.4)}}.idle-title{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:700}.idle-subtitle{color:var(--text-secondary);margin:0;font-size:.9rem}.time-option-group{gap:8px;margin-bottom:8px;display:flex}.time-option-btn{border:1.5px solid var(--border);background:var(--input-bg);color:var(--text-primary);cursor:pointer;border-radius:8px;flex:1;padding:10px;font-size:.9rem;transition:all .2s}.time-option-btn.active{border-color:var(--accent);background:var(--accent-muted);color:var(--accent);font-weight:600}.ride-item{border-bottom:1px solid var(--border);padding:12px 16px;transition:background .15s}.ride-item:last-child{border-bottom:none}.ride-item:hover{background:var(--accent-muted)}.ride-item-header{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.ride-item-name{font-weight:600}.ride-item-time{color:var(--text-secondary);font-size:.8rem}.ride-item-route{color:var(--text-secondary);font-size:.85rem}:root{--em-surface:#fff9e8;--em-surface-low:#faf4df;--em-surface-lowest:#fff;--em-surface-high:#eee8d4;--em-surface-highest:#e8e2cf;--em-primary:#4a6243;--em-primary-cont:#627b5a;--em-primary-fixed:#ceebc2;--em-on-primary:#fff;--em-on-pf-variant:#354d2f;--em-on-surface:#1e1c10;--em-on-surface-var:#434840;--em-outline-var:#c3c8bd;--em-secondary:#4a635e;--em-sec-fixed-dim:#b1ccc6;--em-tert-fixed-dim:#b9ccb5;--em-tertiary:#4f604e;--em-error:#ba1a1a;--em-shadow:#1e1c100f}:root[data-theme=dark]{--em-surface:#0d1b2a;--em-surface-low:#112236;--em-surface-lowest:#1a2744;--em-surface-high:#1e3a5a;--em-surface-highest:#254a6e;--em-primary:#4a90d9;--em-primary-cont:#5ba0e8;--em-primary-fixed:#1a2d45;--em-on-primary:#fff;--em-on-pf-variant:#8bbaf0;--em-on-surface:#e8eaf0;--em-on-surface-var:#9aa5b4;--em-outline-var:#2a4a6a;--em-secondary:#4a90d9;--em-sec-fixed-dim:#2a5a8a;--em-tert-fixed-dim:#2a5a7a;--em-tertiary:#5a8ab0;--em-error:#ef5350;--em-shadow:#0000004d}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.em-legal-page{background:var(--em-surface);min-height:100dvh;color:var(--em-on-surface);max-width:480px;margin:0 auto;font-family:Inter,sans-serif}.em-legal-header{background:var(--em-surface);border-bottom:1px solid var(--em-border);z-index:100;align-items:center;gap:12px;width:100%;max-width:480px;height:56px;padding:0 16px;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.em-legal-header h1{margin:0;font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:700}.em-legal-back{color:var(--em-on-surface);cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;display:flex}.em-legal-content{padding:72px 20px 48px}.em-legal-content section{margin-bottom:28px}.em-legal-content h2{color:var(--em-on-surface);margin:0 0 10px;font-family:Manrope,sans-serif;font-size:1rem;font-weight:700}.em-legal-content h3{color:var(--em-on-surface);margin:16px 0 6px;font-family:Manrope,sans-serif;font-size:.9rem;font-weight:600}.em-legal-content p,.em-legal-content li{color:var(--em-on-surface-var);margin:0 0 8px;font-size:.85rem;line-height:1.7}.em-legal-content ul{margin:8px 0;padding-left:20px}.em-legal-content a{color:var(--em-primary);cursor:pointer;text-decoration:none}.em-legal-content a:hover{text-decoration:underline}.em-legal-footer-links{border-top:1px solid var(--em-border);text-align:center;margin-top:32px;padding-top:20px;font-size:.85rem}.em-legal-footer-links a{color:var(--em-primary);cursor:pointer;text-decoration:none}.em-page{background:var(--em-surface);min-height:100dvh;padding-top:env(safe-area-inset-top,0px);color:var(--em-on-surface);max-width:480px;margin:0 auto;font-family:Inter,sans-serif;position:relative;overflow-x:hidden}.em-header{z-index:100;-webkit-backdrop-filter:blur(20px);width:100%;max-width:480px;height:64px;box-shadow:0 12px 24px var(--em-shadow);background:#fff9e8d9;justify-content:space-between;align-items:center;padding:0 20px;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.em-header-title{letter-spacing:.05em;color:var(--em-primary);margin:0;font-family:Manrope,sans-serif;font-size:1.1rem;font-weight:700}.em-header-icon-btn{cursor:pointer;color:var(--em-primary);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .2s;display:flex}.em-header-icon-btn:hover{background:#e8e2cf80}.em-avatar{background:var(--em-surface-highest);border:2px solid var(--em-primary-cont);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.em-main{padding-top:24px;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px));padding-left:20px;padding-right:20px}.em-bottom-nav{z-index:100;-webkit-backdrop-filter:blur(16px);width:100%;max-width:480px;height:calc(60px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -4px 24px var(--em-shadow);background:#fff9e8eb;border-top:1px solid #c3c8bd33;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.em-nav-btn{cursor:pointer;color:#1e1c1066;letter-spacing:.05em;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:56px;padding:4px 12px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;transition:color .2s,transform .2s ease-out;display:flex}.em-nav-btn:active{transform:scale(.92)}.em-nav-btn.active{color:var(--em-primary);font-weight:700;transform:scale(1.08)}.em-nav-btn.active .material-symbols-outlined{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.em-label{text-transform:uppercase;letter-spacing:.12em;color:#43484099;font-family:Inter,sans-serif;font-size:10px;font-weight:600}.em-headline{letter-spacing:-.02em;color:var(--em-on-surface);font-family:Manrope,sans-serif;font-weight:800;line-height:1.1}.em-btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4a6243 0%,#627b5a 100%);border:none;border-radius:9999px;justify-content:center;align-items:center;gap:8px;width:100%;height:56px;font-family:Manrope,sans-serif;font-size:1rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 12px 24px #4a624333}.em-btn-primary:active{transform:scale(.98)}.em-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.em-btn-secondary{background:var(--em-surface-highest);color:var(--em-on-surface);cursor:pointer;border:none;border-radius:9999px;align-items:center;gap:8px;height:48px;padding:0 24px;font-family:Manrope,sans-serif;font-size:.875rem;font-weight:700;transition:transform .2s;display:inline-flex}.em-btn-secondary:active{transform:scale(.97)}.em-btn-ghost{color:var(--em-primary);cursor:pointer;text-underline-offset:4px;background:0 0;border:none;padding:8px 0;font-family:Inter,sans-serif;font-size:.875rem;font-weight:600;-webkit-text-decoration:underline #4a62434d;text-decoration:underline #4a62434d}.em-btn-danger{color:var(--em-error);cursor:pointer;background:#ba1a1a0d;border:1px solid #ba1a1a33;border-radius:9999px;height:48px;padding:0 32px;font-family:Inter,sans-serif;font-size:.875rem;font-weight:700;transition:background .2s}.em-btn-danger:hover{background:#ba1a1a1a}.em-booking-card{background:var(--em-surface-low);border-radius:12px;margin-bottom:16px;padding:20px}.em-input-row{background:#e8e2cf80;border-radius:8px;align-items:center;gap:12px;padding:14px 16px;transition:background .2s,box-shadow .2s;display:flex;position:relative}.em-input-row:focus-within{background:var(--em-surface-lowest);box-shadow:0 0 0 2px #4a624333}.em-input-row input{color:var(--em-on-surface);background:0 0;border:none;outline:none;flex:1;width:100%;font-family:Inter,sans-serif;font-size:1rem;font-weight:500}.em-input-row input::placeholder{color:#1e1c104d}.em-input-icon-btn{cursor:pointer;color:#43484080;background:0 0;border:none;flex-shrink:0;align-items:center;padding:2px;transition:color .2s;display:flex}.em-input-icon-btn:hover{color:var(--em-primary)}.em-route-connector{background:#c3c8bd66;width:1px;height:16px;margin-left:28px}.em-param-tile{cursor:pointer;text-align:left;width:100%;color:var(--em-on-surface);background:#e8e2cf4d;border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 16px;font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;transition:background .2s;display:flex}.em-param-tile:hover{background:#e8e2cf99}.em-map-snippet{background:var(--em-surface-low);border-radius:12px;justify-content:center;align-items:center;height:160px;margin-bottom:16px;display:flex;position:relative;overflow:hidden}.em-map-placeholder{width:100%;height:100%;color:var(--em-primary);opacity:.7;background:linear-gradient(135deg,#e8f0e5 0%,#d8e4d4 100%);justify-content:center;align-items:center;display:flex}.em-quick-ride-row{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:14px 16px;transition:background .2s;display:flex}.em-quick-ride-row:hover{background:var(--em-surface-low)}.em-quick-ride-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.em-searching-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:0;min-height:calc(100dvh - 124px);padding:24px;display:flex}.em-pulse-wrapper{justify-content:center;align-items:center;margin-bottom:32px;display:inline-flex;position:relative}.em-pulse-ring{background:#4a624326;border-radius:50%;animation:2s ease-in-out infinite em-pulse;position:absolute}.em-pulse-ring-1{width:144px;height:144px}.em-pulse-ring-2{background:#4a624314;width:192px;height:192px;animation-delay:.4s}@keyframes em-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.08)}}.em-pulse-icon{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1;background:#ffffffe6;border:1px solid #fffc;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;display:flex;position:relative;box-shadow:0 12px 24px #00000014}.em-details-card{-webkit-backdrop-filter:blur(20px);text-align:left;background:#ffffffbf;border:1px solid #ffffff80;border-radius:20px;width:100%;margin-bottom:16px;padding:24px;box-shadow:0 20px 40px #1e1c101a}.em-journey-line{background:#c3c8bd66;width:1.5px;position:absolute;top:20px;bottom:20px;left:11px}.em-accepted-card{background:var(--em-surface-lowest);box-shadow:0 12px 24px var(--em-shadow);text-align:left;border:1px solid #c3c8bd33;border-radius:16px;width:100%;padding:24px}.em-proposal-row{border-top:1px solid #c3c8bd4d;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.em-trip-item{align-items:flex-start;gap:16px;display:flex}.em-trip-date-col{flex-direction:column;align-items:center;min-width:28px;padding-top:4px;display:flex}.em-trip-card{background:var(--em-surface-low);border-radius:12px;flex:1;padding:20px;transition:transform .3s;position:relative}.em-trip-card:active{transform:scale(.98)}.em-trip-route-connector{background:#c3c8bd66;width:1px;position:absolute;top:18px;bottom:18px;left:6px}.em-trip-dot-start{border:2px solid var(--em-primary);background:var(--em-surface);z-index:1;border-radius:50%;flex-shrink:0;width:14px;height:14px}.em-trip-dot-end{background:var(--em-primary);z-index:1;border-radius:2px;flex-shrink:0;width:14px;height:14px}.em-badge-done{background:var(--em-primary-fixed);color:var(--em-on-pf-variant);letter-spacing:.05em;border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.em-badge-accepted{color:var(--em-primary);letter-spacing:.05em;background:#4a624326;border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.em-profile-bento{background:var(--em-surface-low);border-radius:24px;padding:24px;transition:background .2s}.em-profile-bento:hover{background:var(--em-surface-high)}.em-profile-settings{background:var(--em-surface-lowest);box-shadow:0 12px 24px var(--em-shadow);border:1px solid #c3c8bd1a;border-radius:24px;padding:28px}.em-settings-row{cursor:pointer;justify-content:space-between;align-items:center;padding:4px 0;display:flex}.em-settings-icon-wrap{background:var(--em-surface-low);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.em-divider{background:#c3c8bd40;height:1px;margin:12px 0}.em-login-page{background:var(--em-surface);flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:48px 24px;font-family:Inter,sans-serif;display:flex}.em-login-logo{background:var(--em-surface-lowest);width:80px;height:80px;box-shadow:0 12px 24px var(--em-shadow);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.em-login-form{width:100%;max-width:360px}.em-login-field{background:var(--em-surface-high);border-radius:12px;align-items:center;transition:background .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.em-login-field:focus-within{background:var(--em-surface-lowest);box-shadow:0 0 0 2px #4a624333}.em-login-field-icon{color:#43484080;font-variation-settings:"FILL" 0, "wght" 200, "GRAD" 0, "opsz" 24;pointer-events:none;position:absolute;left:14px}.em-account-type-toggle{gap:8px;margin-bottom:4px;display:flex}.em-toggle-option{border:1.5px solid var(--em-outline);color:var(--em-on-surface-var);cursor:pointer;background:0 0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-family:Inter,sans-serif;font-size:.8125rem;transition:all .2s;display:flex}.em-toggle-option.active{border-color:var(--em-primary);color:var(--em-primary);background:#4a624314;font-weight:600}.em-login-input{color:var(--em-on-surface);background:0 0;border:none;outline:none;flex:1;padding:16px 16px 16px 48px;font-family:Inter,sans-serif;font-size:1rem}.em-login-input::placeholder{color:#43484066}.em-landing{background:var(--em-surface);min-height:100dvh;color:var(--em-on-surface);font-family:Inter,sans-serif;position:relative;overflow-x:hidden}.em-landing>main{max-width:480px;margin:0 auto}.em-landing-header{z-index:100;-webkit-backdrop-filter:blur(24px);width:100%;max-width:480px;min-height:calc(60px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) 20px 0;box-shadow:0 2px 16px var(--em-shadow);background:#fff9e8d9;border-bottom:1px solid #4a62431a;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.em-bento-card{background:var(--em-surface-lowest);border-radius:20px;min-height:120px;padding:24px}.em-bento-card-primary{background:var(--em-primary-fixed);color:var(--em-on-surface);border:1px solid #4a624326;border-radius:20px;min-height:120px;padding:24px}.em-chip{color:var(--em-primary);letter-spacing:.05em;background:#4a62431a;border-radius:9999px;padding:4px 12px;font-size:10px;font-weight:700;display:inline-block}.em-chip-asap{color:#8b6914;letter-spacing:.05em;background:#b7781f1f;border-radius:9999px;padding:4px 12px;font-size:10px;font-weight:700;display:inline-block}.em-soft-shadow{box-shadow:0 12px 24px var(--em-shadow)}.em-gradient-cta{background:linear-gradient(135deg,#4a6243 0%,#627b5a 100%)}.em-page-wide{max-width:100%;padding-top:0}.em-company-header{z-index:100;-webkit-backdrop-filter:blur(20px);width:100%;padding:env(safe-area-inset-top,0px) 16px 0;min-height:calc(64px + env(safe-area-inset-top,0px));box-shadow:0 4px 16px var(--em-shadow);box-sizing:border-box;background:#fff9e8eb;justify-content:space-between;align-items:flex-end;gap:12px;display:flex;position:sticky;top:0}[data-theme=dark] .em-company-header{background:#0d1b2aeb}[data-theme=dark] .em-header{background:#0d1b2ad9}[data-theme=dark] .em-bottom-nav{background:#0d1b2aeb;border-top-color:#2a4a6a33}[data-theme=dark] .em-nav-btn{color:#e8eaf066}[data-theme=dark] .em-label{color:#9aa5b4cc}[data-theme=dark] .em-input-row{background:#1e3a5a66}[data-theme=dark] .em-input-row:focus-within{box-shadow:0 0 0 2px #4a90d94d}[data-theme=dark] .em-input-row input::placeholder{color:#e8eaf04d}[data-theme=dark] .em-input-icon-btn{color:#9aa5b480}[data-theme=dark] .em-param-tile{background:#1e3a5a4d}[data-theme=dark] .em-param-tile:hover{background:#1e3a5a80}[data-theme=dark] .em-pulse-ring{background:#4a90d926}[data-theme=dark] .em-pulse-ring-2{background:#4a90d914}[data-theme=dark] .em-pulse-icon{background:#1a2744e6;border-color:#2a4a6a80}[data-theme=dark] .em-details-card{background:#1a2744bf;border-color:#2a4a6a4d;box-shadow:0 20px 40px #0000004d}[data-theme=dark] .em-btn-primary{background:linear-gradient(135deg,#3a7bc4 0%,#4a90d9 100%);box-shadow:0 12px 24px #4a90d940}[data-theme=dark] .em-btn-ghost{text-decoration-color:#4a90d94d}[data-theme=dark] .em-btn-danger{background:#ef53501a;border-color:#ef535040}[data-theme=dark] .em-btn-danger:hover{background:#ef53502e}[data-theme=dark] .em-map-placeholder{background:linear-gradient(135deg,#112236 0%,#1a2d45 100%)}[data-theme=dark] .em-route-connector,[data-theme=dark] .em-journey-line,[data-theme=dark] .em-trip-route-connector{background:#2a4a6a66}[data-theme=dark] .em-landing-header{background:#0d1b2acc}[data-theme=dark] .em-gradient-cta{background:linear-gradient(135deg,#3a7bc4 0%,#4a90d9 100%)}[data-theme=dark] .em-header-icon-btn:hover{background:#1e3a5a80}[data-theme=dark] .em-proposal-row{border-top-color:#2a4a6a4d}[data-theme=dark] .em-accepted-card{border-color:#2a4a6a33}[data-theme=dark] .em-profile-settings{border-color:#2a4a6a26}[data-theme=dark] .em-divider{background:#2a4a6a40}[data-theme=dark] .em-login-field:focus-within{box-shadow:0 0 0 2px #4a90d94d}[data-theme=dark] .em-toggle-option.active{border-color:var(--em-primary);color:var(--em-primary);background:#4a90d926}[data-theme=dark] .em-login-field-icon{color:#9aa5b480}[data-theme=dark] .em-login-input::placeholder{color:#9aa5b466}[data-theme=dark] .em-form-input:focus{box-shadow:0 0 0 2px #4a90d94d}[data-theme=dark] .em-form-input::placeholder{color:#9aa5b466}[data-theme=dark] .em-badge-accepted,[data-theme=dark] .em-chip{background:#4a90d926}[data-theme=dark] .em-chip-asap{color:#d4a843;background:#d9aa4a2e}[data-theme=dark] .em-ride-card__footer{border-top-color:#ffffff14}.em-toggle-group{background:var(--em-surface-highest);border-radius:9999px;gap:2px;padding:3px;display:flex}.em-toggle-btn{color:var(--em-on-surface-var);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:9999px;flex:1;padding:6px 14px;font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;transition:background .2s,color .2s}.em-toggle-btn.active{background:var(--em-surface-lowest);color:var(--em-primary);box-shadow:0 2px 8px var(--em-shadow)}.em-table-wrapper{background:var(--em-surface-lowest);box-shadow:0 4px 16px var(--em-shadow);border-radius:12px;overflow-x:auto}.em-table-wrapper table{border-collapse:collapse;width:100%;font-family:Inter,sans-serif;font-size:.875rem}.em-table-wrapper thead tr{background:var(--em-surface-high)}.em-table-wrapper thead th{text-align:left;letter-spacing:.05em;color:var(--em-on-surface-var);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:12px 10px;font-size:10px;font-weight:700}.em-table-wrapper thead th.sortable{cursor:pointer}.em-table-wrapper thead th.sortable:hover{color:var(--em-primary);background:var(--em-surface-highest)}.em-table-wrapper tbody tr{transition:background .15s}.em-table-wrapper tbody tr:nth-child(2n){background:var(--em-surface-low)}.em-table-wrapper tbody tr:hover{background:var(--em-surface-high)}.em-table-wrapper tbody tr.em-row-accepted{opacity:.5}.em-table-wrapper tbody td{vertical-align:middle;color:var(--em-on-surface);padding:10px}.em-btn-sm{height:32px!important;min-width:unset!important;width:auto!important;padding:0 12px!important;font-size:.78rem!important}.em-hint-icon{color:var(--em-on-surface-var);cursor:help;align-items:center;display:inline-flex}.em-table-wrapper tbody tr{cursor:pointer}.em-detail-row{cursor:default!important}.em-detail-row:hover{background:0 0!important}.em-detail-row td{background:var(--em-surface-low);padding:16px 10px!important}.em-detail-panel{grid-template-columns:1fr 1fr 1fr;gap:12px 24px;display:grid}.em-detail-panel__item{flex-direction:column;gap:2px;display:flex}.em-detail-panel__label{letter-spacing:.05em;color:var(--em-on-surface-var);font-size:.7rem;font-weight:700}.em-detail-panel__value{color:var(--em-on-surface);font-size:.85rem}.em-detail-panel__value--full{word-break:break-word}.em-ride-cards{flex-direction:column;gap:12px;display:none}.em-ride-card{background:var(--em-surface-lowest);box-shadow:0 4px 16px var(--em-shadow);border-radius:12px;padding:16px}.em-ride-card--accepted{opacity:.5}.em-ride-card__route{align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.em-ride-card__address{color:var(--em-on-surface);font-family:Inter,sans-serif;font-size:.9rem;font-weight:600}.em-ride-card__arrow{color:var(--em-on-surface-var);flex-shrink:0}.em-ride-card__details{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.em-ride-card__meta{align-items:baseline;gap:10px;display:flex}.em-ride-card__info{color:var(--em-on-surface-var);gap:10px;font-size:.82rem;display:flex}.em-ride-card__info:empty{display:none}.em-ride-card__footer{border-top:1px solid #0000000d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;display:flex}.em-ride-card__status{align-items:center;gap:8px;display:flex}.em-ride-card__action{min-width:0}@media (width<=768px){.em-table-wrapper{display:none}.em-ride-cards{display:flex}}.em-section-label{text-transform:uppercase;letter-spacing:.12em;color:var(--em-on-surface-var);margin-bottom:10px;font-family:Inter,sans-serif;font-size:10px;font-weight:700}.em-stat-grid{background:var(--em-surface-lowest);box-shadow:0 4px 16px var(--em-shadow);border-radius:16px;grid-template-columns:repeat(3,1fr);margin-bottom:20px;display:grid;overflow:hidden}.em-stat-cell{text-align:center;background:var(--em-surface-lowest);padding:20px 16px}.em-stat-cell:nth-child(2){background:var(--em-surface-low)}.em-stat-cell:nth-child(3){background:var(--em-surface-high)}.em-stat-number{color:var(--em-primary);margin-bottom:4px;font-family:Manrope,sans-serif;font-size:1.8rem;font-weight:800;line-height:1}.em-form-field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.em-form-input{background:var(--em-surface-high);color:var(--em-on-surface);box-sizing:border-box;border:none;border-radius:12px;outline:none;width:100%;padding:14px 16px;font-family:Inter,sans-serif;font-size:1rem;transition:background .2s,box-shadow .2s}.em-form-input:focus{background:var(--em-surface-lowest);box-shadow:0 0 0 2px #4a624333}.em-form-input::placeholder{color:#43484066}.em-form-input[type=time]{appearance:auto}.em-landing-hero-title{font-size:clamp(2rem,8vw,2.8rem)}@media (width>=900px){.em-landing-header{max-width:1200px;padding:0 48px}.em-landing>main{max-width:1200px;padding-left:48px!important;padding-right:48px!important}.em-landing-columns{grid-template-columns:1fr 1fr;align-items:start;gap:64px;margin-bottom:48px;display:grid}.em-landing-col-hero{align-self:center}.em-landing-col-hero section{padding-bottom:0}.em-landing-hero-title{font-size:clamp(2.5rem,4vw,3.75rem)}.em-landing-col-hero p{max-width:440px}.em-landing-col-hero .em-btn-primary{width:auto;min-width:260px}.em-landing>main>section:last-of-type{max-width:900px;margin-left:auto;margin-right:auto}.em-landing>main>.em-btn-primary{width:auto;min-width:280px;margin:0 auto;display:flex}}.suggestions-list{z-index:100;background:var(--em-surface,#fff);border:1px solid var(--em-outline-var,#c3c8bd66);border-radius:10px;max-height:220px;margin:2px 0 0;padding:4px 0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 16px #0000001f}.suggestions-list li{color:var(--em-on-surface,#1a1a1a);cursor:pointer;border-bottom:1px solid var(--em-outline-var,#c3c8bd40);padding:10px 14px;font-size:.8375rem;line-height:1.35}.suggestions-list li:last-child{border-bottom:none}.suggestions-list li:hover{background:var(--em-surface-high,#4a624314);color:var(--em-primary,#1b5e20)}.error-boundary{text-align:center;max-width:480px;min-height:100vh;color:var(--text-primary);background:var(--bg-primary);flex-direction:column;justify-content:center;align-items:center;margin:0 auto;padding:2rem;font-family:Inter,sans-serif;display:flex}.error-boundary__icon{color:var(--danger);margin-bottom:1rem;font-size:3rem}.error-boundary__title{color:var(--text-primary);margin-bottom:.5rem;font-family:Manrope,sans-serif;font-size:1.25rem;font-weight:700}.error-boundary__msg{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.error-boundary__btn{background:var(--btn-primary-bg);color:var(--btn-primary-text);cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;transition:background .2s}.error-boundary__btn:hover{background:var(--accent-hover)}
