*{box-sizing:border-box}html{min-height:100%;background:#f5f7fb}body{min-height:100%;margin:0;background:#f5f7fb;color:#172033;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.page{display:grid;gap:18px}.page-title{display:grid;gap:8px}.page-title h1{margin:0;color:#111827;font-size:1.85rem;line-height:1.08;letter-spacing:0}.page-title p{margin:0;color:#667085;line-height:1.45}.card{border:1px solid rgba(23,32,51,.08);border-radius:8px;background:#fff;box-shadow:0 16px 34px #0f172a14}.primary-button,.secondary-button,.ghost-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;padding:0 16px;border-radius:8px;font-weight:850;text-decoration:none;cursor:pointer}.primary-button{border:0;background:#003da5;color:#fff}.secondary-button{border:0;background:#f58220;color:#fff}.ghost-button{border:1px solid rgba(0,61,165,.18);background:#fff;color:#003da5}.button-icon{width:19px;height:19px;flex:0 0 auto;fill:currentColor}.voice-alert{display:grid;gap:14px;padding:18px}.voice-alert-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.voice-alert h2,.voice-alert p{margin:0}.voice-alert h2{font-size:1.08rem}.voice-alert p{color:#667085;line-height:1.4}.voice-alert-heading span,.threshold-button.is-selected{background:#f5822024;color:#c65f09}.voice-alert-heading span,.threshold-button{border-radius:8px;font-weight:900}.voice-alert-heading span{padding:7px 10px}.threshold-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.threshold-button{min-height:42px;border:1px solid rgba(0,61,165,.16);background:#fff;color:#003da5;cursor:pointer}.threshold-button:disabled{cursor:default;opacity:.72}.voice-status{padding:12px;border-radius:8px;background:#003da514}.voice-error{color:#b42318!important}.route-summary{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px}.route-flow-arrow{display:grid;width:18px;height:32px;align-items:center;color:#f58220}.route-flow-arrow svg{width:18px;height:18px;fill:currentColor}.route-endpoints{display:grid;gap:2px}.route-summary strong{margin:0;color:#f58220;font-size:.94rem;line-height:1.25}.route-summary strong+strong{color:#f58220}.pending-stops-button{grid-column:2;justify-self:start;min-height:42px;border:0;border-radius:8px;padding:9px 12px;background:#003da5;color:#fff;font-weight:900}.sheet-backdrop{position:fixed;inset:0;z-index:40;background:#1018286b}.pending-sheet{position:fixed;right:0;bottom:0;left:0;z-index:41;display:grid;gap:14px;max-height:85dvh;padding:18px 18px calc(96px + env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;border-radius:16px 16px 0 0;background:#fff;box-shadow:0 -16px 40px #10182838}.sheet-heading{display:flex;align-items:start;justify-content:space-between;gap:12px}.sheet-heading span{color:#f58220;font-size:.78rem;font-weight:950;text-transform:uppercase}.sheet-heading h2{margin:2px 0 0;color:#003da5}.sheet-heading button{width:42px;height:42px;border:0;border-radius:8px;background:#003da514;color:#003da5;font-size:1.55rem;font-weight:900}.sheet-summary{display:grid;gap:9px;margin:0}.sheet-summary div{display:flex;justify-content:space-between;gap:16px;padding-bottom:8px;border-bottom:1px solid #eef2f7}.sheet-summary dt,.pending-stop-list small{color:#667085;font-size:.83rem}.sheet-summary dd{margin:0;color:#101828;font-weight:900;text-align:right}.sheet-message{margin:0;border-radius:8px;padding:10px;background:#f582201a;color:#9a4a07;font-weight:800;line-height:1.4}.pending-stop-list{display:grid;gap:6px;margin:0;padding-left:24px}.pending-stop-list li{border-radius:8px;padding:10px 10px 10px 4px;color:#101828;font-weight:900}.pending-stop-list li:nth-child(odd){background:#f8fafc}.pending-stop-list li.is-selected{background:#003da50f}.pending-stop-row{display:flex;min-width:0;align-items:center;gap:8px}.pending-stop-order{flex:0 0 auto;border-radius:999px;padding:3px 7px;background:#eef2f7;color:#475467;font-size:.78rem;font-weight:950}.pending-stop-name{min-width:0;overflow-wrap:anywhere;line-height:1.25}.pending-stop-list strong{display:inline-block;margin-top:5px;border-radius:999px;padding:3px 8px;background:#003da51a;color:#003da5;font-size:.78rem}@media (max-width: 390px){.sheet-summary div{display:grid;gap:2px}.sheet-summary dd{text-align:left}}
