:root{--primary:#ff4600;--primary-dark:#d93b00;--primary-ink:#d93b00;--primary-light:#fff1ec;--needs-answer:color-mix(in srgb, var(--primary) 75%, #fff);--primary-ink-on-light:#c23500;--navy:#0f3282;--text:#1e2328;--muted:#5b6472;--bg:#f6f6f4;--surface:#fff;--surface-2:#f1f0ed;--zebra:#faf9f7;--offhours:#0f182817;--border:#e4e3df;--border-strong:#cdcac2;--danger:#c93d22;--danger-bg:#fef1ed;--success:#0f766e;--success-bg:#e7f5f2;--radius:10px;--shadow-sm:0 1px 2px #1018280a, 0 1px 3px #1018280f;--shadow-md:0 6px 20px #1018281a;--page-min-h:calc(100dvh - var(--safe-area-inset-top,env(safe-area-inset-top)));--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--fs-cap:12px;--fs-sub:13px;--fs-body:14px;--fs-lg:16px;--fs-h2:18px;--fs-h1:20px;--st-reserved-bg:#eef1f8;--st-reserved-fg:#0f3282;--st-onboard-bg:#fdece3;--st-onboard-fg:#b4480c;--st-completed-bg:#e7f5f2;--st-completed-fg:#0f766e;--st-cancelled-bg:#eee;--st-cancelled-fg:#5b6270;--st-aborted-bg:#fdeceb;--st-aborted-fg:#b42318}*{box-sizing:border-box;margin:0;padding:0}html{height:100%;overflow-x:clip}body{padding-top:var(--safe-area-inset-top,env(safe-area-inset-top));max-width:100%;min-height:100%;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums;word-break:auto-phrase;text-wrap:pretty;overflow-wrap:break-word;font-family:Yu Gothic,游ゴシック,YuGothic,游ゴシック体,Hiragino Kaku Gothic ProN,Noto Sans JP,Meiryo,sans-serif;line-height:1.6;overflow-x:clip}.manual-media{margin-top:var(--sp-2);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;overflow:hidden}.manual-media img,.manual-media video{object-fit:contain;width:auto;max-width:100%;max-height:52vh;display:block}.lbl{font-size:var(--fs-cap);color:var(--muted);margin-bottom:var(--sp-1);font-weight:700;display:block}.phone-sub{text-align:center;margin:var(--sp-1) 0 0;font-size:var(--fs-cap);color:var(--muted)}.hr{background:var(--border);height:1px}.ja-keep{white-space:nowrap;display:inline-block}a{color:inherit;text-decoration:none}.card{background:var(--surface);box-shadow:var(--shadow-sm);border:1px solid #ecebe7;border-radius:12px;padding:24px}.portal-btn{background:0 0;border:none;border-radius:999px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;text-decoration:none;display:inline-flex;overflow:hidden}.portal-btn:hover{box-shadow:0 0 0 2px var(--primary)}.portal-btn img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.card.add-form{border:1px dashed var(--primary);box-shadow:none;background:#fff8f5}.btn{border-radius:var(--radius);cursor:pointer;background:var(--surface);height:44px;color:var(--text);white-space:nowrap;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:700;transition:transform 80ms,box-shadow .12s,background .12s,border-color .12s;display:inline-flex}.btn:disabled{opacity:.6;cursor:default}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary{background:var(--primary-dark);color:#fff;box-shadow:0 1px 2px #ff460040}.btn-primary:hover:not(:disabled){background:var(--primary-dark);box-shadow:0 3px 8px #ff460047}.btn-outline{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-outline:hover:not(:disabled){background:var(--bg);border-color:#d7d6d1}.btn-mic{background:var(--surface);border-color:var(--primary);color:var(--primary-ink)}.btn-mic:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary-ink)}.dictation-target{outline:2px solid var(--primary);outline-offset:5px;border-radius:8px}.btn-sm{height:36px;padding:0 12px;font-size:13px}.btn-lg{border-radius:12px;height:56px;padding:0 22px;font-size:16px}.btn-xl{border-radius:14px;height:64px;padding:0 22px;font-size:18px}.btn-block{width:100%}@media (min-width:641px){.btn-lg{height:48px;font-size:15px}.btn-xl{height:52px;padding:0 20px;font-size:16px}}@keyframes phub-spin{to{transform:rotate(360deg)}}.spinner{border:3px solid var(--border);border-top-color:var(--primary-ink);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite phub-spin}.loading-wrap{color:var(--muted);place-items:center;gap:10px;padding:56px 0;font-size:13px;display:grid}@keyframes navio-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.navio-bob{animation:1s ease-in-out infinite navio-bob}.hint{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.5}.stepper{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;display:flex}.stepper .step{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.stepper .step .num{background:var(--bg);width:22px;height:22px;color:var(--muted);border:1px solid var(--border);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.stepper .step.current .num{background:var(--primary);color:#fff;border-color:var(--primary-ink)}.stepper .step.current{color:var(--text);font-weight:700}.stepper .step.done .num{background:var(--success);color:#fff;border-color:var(--success)}.stepper .sep{color:var(--border);font-size:12px}@media (max-width:640px){.stepper .step .label{display:none}.stepper .step.current .label{display:inline}}.toast{max-width:92vw;box-shadow:var(--shadow-md);font-size:var(--fs-body);border-radius:10px;align-items:center;gap:14px;padding:11px 16px;font-weight:700;animation:.18s toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes modal-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.modal-panel{animation:.16s modal-in}@keyframes sk{0%{background-position:-200px 0}to{background-position:200px 0}}.skeleton{background:linear-gradient(90deg,#ededeb 25%,#f6f6f4 37%,#ededeb 63%) 0 0/400px 100%;border-radius:6px;animation:1.2s linear infinite sk}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--muted);font-size:13px;font-weight:700}.field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]){border:1px solid var(--border);border-radius:var(--radius);height:44px;color:var(--text);background:#fff;padding:0 12px;font-size:15px}.field input:focus,.field select:focus,.field textarea:focus,input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--primary-ink);outline:none;box-shadow:0 0 0 3px #ff460026}.field input::placeholder,.field textarea::placeholder{color:#8c8c85}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),textarea{border:1px solid var(--border);border-radius:var(--radius);height:44px;color:var(--text);background:#fff;padding:0 12px;font-size:15px}.needs-answer :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),:is(input,select,textarea).needs-answer:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]){border-color:var(--needs-answer);box-shadow:inset 0 0 0 1px var(--needs-answer)}.needs-answer .radio-row:not(:has(>label>input:checked))>label{border-color:var(--needs-answer);box-shadow:inset 0 0 0 1px var(--needs-answer)}.needs-answer input[type=checkbox]{outline:2px solid var(--needs-answer);outline-offset:1px;border-radius:3px}textarea{height:auto;min-height:88px;padding:10px 12px;line-height:1.6}input::placeholder,textarea::placeholder{color:#8c8c85}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{font-size:16px!important}}.btn:focus-visible,.app-nav a:focus-visible,.tab:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.form-group{border:1px solid var(--border);border-radius:var(--radius);margin:0;padding:14px 16px 16px}.form-group>legend{color:var(--text);align-items:center;gap:5px;padding:0 6px;font-size:13px;font-weight:700;display:inline-flex}.form-group>legend svg{color:var(--primary-ink)}.field-time{flex:220px}.chip-row{flex-wrap:wrap;margin-top:6px;display:flex}.chip-row>button{white-space:nowrap}.radio-row{flex-wrap:wrap;gap:6px;display:flex}.radio-row>label{border:1px solid var(--border);min-height:38px;color:var(--text);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:14px;line-height:1.2;display:inline-flex}.radio-row>label:has(>input:checked){background:var(--primary);border-color:var(--primary-ink);color:#fff;font-weight:700}.radio-row>label:has(>input:focus-visible){outline:2px solid var(--navy);outline-offset:2px}.radio-row.is-invalid>label{border-color:var(--danger)}.radio-row>label>input{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (min-width:641px){.field-time{flex:360px}}.field-error{color:var(--danger);margin-top:5px;font-size:12px;font-weight:700}.alert-error{background:var(--danger-bg);color:var(--danger);border-radius:var(--radius);border:1px solid #f5c6c0;padding:10px 12px;font-size:14px}.alert-warn{color:#8a5a00;border-radius:var(--radius);background:#fff5e6;border:1px solid #f0c78a;padding:10px 12px;font-size:14px;line-height:1.6}.alert-info{color:var(--navy);border-radius:var(--radius);background:#eef2f9;border:1px solid #cdd7ee;padding:10px 12px;font-size:14px;line-height:1.6}.modal-overlay{padding:calc(16px + var(--safe-area-inset-top,env(safe-area-inset-top))) 16px calc(16px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom)))}.app-header{z-index:30;padding:12px 20px;padding-top:calc(12px + var(--safe-area-inset-top,env(safe-area-inset-top)));margin-top:calc(-1 * var(--safe-area-inset-top,env(safe-area-inset-top)));background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;display:flex;position:sticky;top:0;box-shadow:0 1px 3px #1018280a}:root{--top-banner-h:0px}.top-banner~.app-header{margin-top:0}body:has(.top-banner) .app-header{margin-top:0}.app-nav{gap:16px;font-size:14px;font-weight:700;display:flex}.app-nav a{white-space:nowrap;color:var(--text);--ul-l:2px;--ul-r:2px;padding:4px var(--ul-r) 4px var(--ul-l);border-bottom:2px solid #0000;transition:color .1s;position:relative}.app-nav a:hover,.app-nav a.active{color:var(--primary-ink)}.app-nav a.active:after{content:"";left:var(--ul-l);right:var(--ul-r);background:var(--primary-ink);height:2px;position:absolute;bottom:-2px}.app-header-user{scrollbar-width:none;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;margin-left:auto;font-size:13px;display:flex;overflow-x:auto}.app-header-user::-webkit-scrollbar{display:none}.app-header-user>*{flex:none}.app-header-user>a{white-space:nowrap}.app-header-user .btn{height:30px;padding:0 10px;font-size:13px}.app-main{flex:1;width:100%;max-width:1040px;margin:0 auto;padding:24px}@media (max-width:640px){.app-header{padding:8px 12px;padding-top:max(8px, calc(var(--safe-area-inset-top,env(safe-area-inset-top)) - 4px));gap:6px}.app-header>a:first-child{flex-basis:100%}.app-header a img{width:auto!important;height:30px!important}.app-header-user{gap:6px;font-size:12px}.impersonate-btn-label{display:none}.impersonate-btn{padding:0 8px!important}.app-header .scope-chip{font-size:12px}.app-nav{white-space:nowrap;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;flex-basis:100%;order:3;gap:14px;padding-bottom:2px;overflow-x:auto}.app-main{padding:14px}.card{padding:16px}h1{font-size:18px!important}}.sched-date-short{display:none}.sched-legend-gap{margin-left:12px}.sched-toolbar{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:640px){.sched-toolbar{gap:6px!important}.sched-toolbar .sched-nav-btn{padding:6px 8px!important;font-size:12px!important}.sched-date-full{display:none}.sched-date-short{display:inline}.sched-legend{font-size:11px!important}.sched-legend-gap{margin-left:7px!important}}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.app-nav-divider{background:var(--border);flex:none;align-self:stretch;width:1px;margin:0 2px}:root{--app-bottom-nav-h:60px}html.is-native-shell .app-nav{z-index:40;order:initial;background:var(--surface);border-top:1px solid var(--border);padding:4px 4px calc(4px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom)));flex-wrap:nowrap;flex-basis:auto;justify-content:space-around;align-items:stretch;gap:0;font-size:11px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:visible;box-shadow:0 -1px 3px #1018280f}html.is-native-shell .app-nav a{white-space:normal;text-align:center;min-width:0;color:var(--text);border-bottom:none;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:2px;padding:4px 2px;display:flex}html.is-native-shell .app-nav a svg{width:20px;height:20px;vertical-align:0!important;margin-right:0!important}html.is-native-shell .app-nav a.active{color:var(--primary-ink)}html.is-native-shell .app-nav a.active:after,html.is-native-shell .app-nav-divider,html.is-native-shell .app-nav a.nav-hide-in-app,html:not(.is-native-shell) .app-nav a.nav-hide-in-browser{display:none}html.is-native-shell .hide-in-native-shell{display:none!important}html.is-native-shell .app-main{padding-bottom:calc(var(--app-bottom-nav-h) + var(--sub-nav-h,0px) + var(--safe-area-inset-bottom,env(safe-area-inset-bottom)))}html.is-native-shell .sub-nav{top:auto;bottom:calc(var(--app-bottom-nav-h) + var(--safe-area-inset-bottom,env(safe-area-inset-bottom)));z-index:35;border-bottom:none;border-top:1px solid var(--border);position:fixed;left:0;right:0;box-shadow:0 -1px 3px #1018280a}html.is-native-shell .sub-nav[data-hidden=true]{transform:none}html.is-native-shell .sub-nav-inner{max-width:none;margin:0;padding-left:0;padding-right:24px}html.is-native-shell .sub-nav-inner a:first-child{--ul-l:var(--sub-nav-align-left,24px)}.sub-nav-booklist-btn{display:none}html.is-native-shell .sub-nav-booklist-btn{align-self:center;display:inline-flex}.sub-nav{top:var(--app-header-h,0px);z-index:20;background:var(--surface);border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch;will-change:transform;transition:transform .25s;position:sticky;overflow-x:auto}.sub-nav[data-hidden=true]{transform:translateY(calc(-100% - var(--app-header-h,0px)))}@media (prefers-reduced-motion:reduce){.sub-nav{transition:none}}@keyframes strip-pulse{0%,to{opacity:1}50%{opacity:.45}}.strip-pulse{animation:1.4s ease-in-out infinite strip-pulse}@media (prefers-reduced-motion:reduce){.strip-pulse{animation:none}}.strip-tab{-webkit-tap-highlight-color:transparent}.strip-tab-box{transition:box-shadow .12s;box-shadow:0 2px 4px #00000029}.strip-tab:not(:disabled):hover .strip-tab-box{outline:2px solid var(--primary);outline-offset:-2px;box-shadow:0 4px 10px #0000003d}.strip-tab:not(:disabled):active .strip-tab-box{box-shadow:0 1px 2px #0003}.strip-tab:focus-visible{outline:none}.strip-tab:focus-visible .strip-tab-box{outline:2px solid var(--primary);outline-offset:2px}.strip-tab-veh svg{filter:drop-shadow(0 2px 2px #0000002e);transition:filter .12s}.strip-tab-veh:not(:disabled):hover svg{filter:drop-shadow(0 4px 5px #00000047)}@media (prefers-reduced-motion:reduce){.strip-tab-box,.strip-tab-veh svg{transition:none}}.strip-flow{background-image:linear-gradient(90deg, var(--primary) 0%, var(--primary) 25%, #fff 50%, var(--primary) 75%, var(--primary) 100%);background-size:200% 100%;animation:1.35s linear infinite strip-flow;display:inline-flex}.strip-flow-box{border-radius:12px;margin-bottom:-2px;padding:2px;display:inline-flex}.strip-flow-pill{border-radius:999px;padding:2px;display:inline-flex}@keyframes strip-flow{0%{background-position:200% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.strip-flow{animation:none}}.strip-veh-flow{background-image:linear-gradient(90deg, var(--flow-a) 0%, var(--flow-a) 25%, #fff 50%, var(--flow-a) 75%, var(--flow-a) 100%);background-size:200% 100%;animation:1.35s linear infinite strip-flow;-webkit-mask:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%2010H6%22%2F%3E%3Cpath%20d%3D%22M14%2018V6a2%202%200%200%200-2-2H4a2%202%200%200%200-2%202v11a1%201%200%200%200%201%201h2%22%2F%3E%3Cpath%20d%3D%22M19%2018h2a1%201%200%200%200%201-1v-3.28a1%201%200%200%200-.684-.948l-1.923-.641a1%201%200%200%201-.578-.502l-1.539-3.076A1%201%200%200%200%2016.382%208H14%22%2F%3E%3Cpath%20d%3D%22M8%208v4%22%2F%3E%3Cpath%20d%3D%22M9%2018h6%22%2F%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2218%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%227%22%20cy%3D%2218%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E) 50%/contain no-repeat;mask:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M10%2010H6%22%2F%3E%3Cpath%20d%3D%22M14%2018V6a2%202%200%200%200-2-2H4a2%202%200%200%200-2%202v11a1%201%200%200%200%201%201h2%22%2F%3E%3Cpath%20d%3D%22M19%2018h2a1%201%200%200%200%201-1v-3.28a1%201%200%200%200-.684-.948l-1.923-.641a1%201%200%200%201-.578-.502l-1.539-3.076A1%201%200%200%200%2016.382%208H14%22%2F%3E%3Cpath%20d%3D%22M8%208v4%22%2F%3E%3Cpath%20d%3D%22M9%2018h6%22%2F%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2218%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%227%22%20cy%3D%2218%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E) 50%/contain no-repeat}@media (prefers-reduced-motion:reduce){.strip-veh-flow{background-image:none;background-color:var(--flow-a);animation:none}}.strip-dash{pointer-events:none;flex-direction:column;align-items:flex-end;gap:5px;display:flex;position:absolute;top:20px;right:calc(100% + 5px)}.strip-dash i{opacity:.5;background:currentColor;border-radius:999px;height:2px;animation:1.6s ease-out infinite strip-dash;display:block}.strip-dash i:first-child{width:14px}.strip-dash i:nth-child(2){width:9px;animation-delay:.18s}.strip-dash i:nth-child(3){width:16px;animation-delay:.36s}@keyframes strip-dash{0%{opacity:0;transform:translate(5px)}35%{opacity:.65;transform:translate(0)}to{opacity:0;transform:translate(-7px)}}@media (prefers-reduced-motion:reduce){.strip-dash i{opacity:.45;animation:none}}.sub-nav-inner{gap:4px;width:100%;max-width:1040px;margin:0 auto;padding:0 24px;display:flex}.sub-nav a:not(.btn){white-space:nowrap;--ul-l:14px;--ul-r:14px;padding:10px var(--ul-r) 10px var(--ul-l);color:var(--muted);border-bottom:2px solid #0000;font-size:13px;font-weight:700;position:relative}.sub-nav a:hover,.sub-nav a.active{color:var(--primary-ink)}.sub-nav a.active:after{content:"";left:var(--ul-l);right:var(--ul-r);background:var(--primary-ink);height:2px;position:absolute;bottom:-2px}@media (max-width:640px){.sub-nav-inner{padding:0 12px}}.scope-chip{white-space:nowrap;background:var(--surface-2,#f1f5f9);color:var(--text);border:1px solid var(--border);text-overflow:ellipsis;border-radius:999px;align-items:center;gap:5px;min-width:0;max-width:100%;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.scope-chip svg{color:var(--muted)}.scope-chip-all{background:color-mix(in srgb, var(--primary) 10%, #fff);color:var(--primary-ink);border-color:color-mix(in srgb, var(--primary) 35%, #fff)}.scope-chip-all svg{color:var(--primary-ink)}.tab-bar{border-bottom:1px solid var(--border);-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:4px;display:flex;overflow-x:auto}.tab{--ul-l:16px;--ul-r:16px;height:40px;padding:0 var(--ul-r) 0 var(--ul-l);color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex:none;font-size:14px;font-weight:700;position:relative}.tab:hover{color:var(--text)}.tab-active{color:var(--primary-ink)}.tab-active:after{content:"";left:var(--ul-l);right:var(--ul-r);background:var(--primary-ink);height:2px;position:absolute;bottom:-2px}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:12px;font-weight:700;line-height:1.7;display:inline-flex}.badge-navy{color:var(--navy);background:#eaf0fb}.badge-orange{background:var(--primary-light);color:var(--primary-ink-on-light)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-muted{background:var(--bg);color:var(--muted);border:1px solid var(--border)}.badge-success{color:var(--success);background:#e9f7f4}.section-title{border-left:3px solid var(--navy);margin:20px 0 10px;padding-left:10px;font-size:15px;font-weight:700;line-height:1.4}.card table tbody tr:hover,.table-scroll table tbody tr:hover{background:#faf9f7}.empty-state{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:28px 16px;font-size:14px;display:flex}.notice-success{color:var(--success);border-radius:var(--radius);background:#e9f7f4;border:1px solid #b8e6df;align-items:center;gap:8px;padding:10px 12px;font-size:14px;display:flex}.arrival-banner{z-index:120;background:var(--surface);border-top:2px solid var(--primary);padding-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px));position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #00000014}.arrival-banner-inner{padding:6px 16px}a.arrival-row{color:inherit;text-decoration:none}.arrival-row{min-height:56px;color:var(--text);align-items:center;gap:10px;font-size:26px;display:flex}.arrival-row-icon{color:var(--primary-ink);flex:none}.arrival-row-main{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.arrival-row-hospital{color:var(--muted);margin-right:8px;font-size:18px}.arrival-row-vehicle{font-weight:700}.arrival-row-trip{color:var(--muted);margin-left:10px;font-size:18px}.arrival-row-time{color:var(--primary-ink);font-variant-numeric:tabular-nums;flex:none;font-weight:700}.arrival-row-at{color:var(--muted);margin-left:6px;font-size:18px;font-weight:400}.arrival-row-reason{color:var(--muted);white-space:nowrap;flex:none;font-size:18px;font-weight:400}.arrival-row.is-emergency .arrival-row-icon,.arrival-row.is-emergency .arrival-row-time,.arrival-row.is-emergency .arrival-row-vehicle{color:var(--danger)}.arrival-vitals-btn{border:2px solid var(--primary);background:var(--surface);height:44px;color:var(--primary-ink);cursor:pointer;border-radius:10px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:18px;font-weight:700;display:inline-flex}.arrival-vitals-btn:hover{background:var(--primary-bg,#fff3ee)}.arrival-row-wrap{align-items:center;gap:10px;display:flex}.arrival-row-wrap>.arrival-row{flex:1;min-width:0}.arrival-clock{font-variant-numeric:tabular-nums;color:var(--text);text-align:right;flex:none;min-width:3.2em;font-size:18px;font-weight:700}.arrival-carousel{overflow:hidden}.arrival-slide{animation:.52s arrival-slide-in}@keyframes arrival-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.arrival-marquee{white-space:nowrap;display:inline-block}.arrival-marquee.is-scrolling{animation:8s linear infinite arrival-marquee}@keyframes arrival-marquee{0%{transform:translateX(var(--marquee-from,100%))}to{transform:translateX(var(--marquee-to,-100%))}}@media (prefers-reduced-motion:reduce){.arrival-marquee.is-scrolling{animation:none}}.arrival-dots{justify-content:center;gap:5px;padding:3px 0 1px;display:flex}.arrival-dots span{background:var(--border);border-radius:50%;width:6px;height:6px}.arrival-dots span.on{background:var(--primary-ink)}@media (prefers-reduced-motion:reduce){.arrival-slide{animation:none}}.arrival-banner-more{cursor:pointer;color:var(--primary-ink);background:0 0;border:none;align-items:center;gap:4px;padding:2px 0;font-size:12px;font-weight:700;display:inline-flex}@media (max-width:480px){.arrival-row{min-height:46px;font-size:20px}.arrival-row-trip,.arrival-vitals-btn{font-size:15px}.arrival-vitals-btn{height:36px;padding:0 10px}.arrival-clock{font-size:15px}.arrival-row-at{display:none}.arrival-banner-inner{padding:6px 12px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.arrival-banner-spacer{height:calc(var(--arrival-h,0px) + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)));flex:none}html.app-locked body{visibility:hidden}html.app-locked [data-app-lock]{visibility:visible}.vehicle-beacon{pointer-events:none;background:conic-gradient(#ff2020d9 0deg,#ff202000 42deg 180deg,#ff2020d9 180deg,#ff202000 222deg 360deg);border-radius:50%;animation:1.3s linear infinite vehicle-beacon-spin;position:absolute;transform:translate(-50%,-50%);-webkit-mask-image:radial-gradient(closest-side,#000 10%,#000000d9 42%,#0000 76%);mask-image:radial-gradient(closest-side,#000 10%,#000000d9 42%,#0000 76%)}@keyframes vehicle-beacon-spin{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@media (prefers-reduced-motion:reduce){.vehicle-beacon{background:radial-gradient(closest-side,#ff202000 52%,#ff202099 70%,#ff202000 100%);animation:none;-webkit-mask-image:none;mask-image:none}}.map-strips{display:block}.map-strips__side{display:none}.map-strips__center{min-width:0}.map-watch{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}@media (min-width:900px){.map-watch{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.reports-split{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}@media (min-width:900px){.reports-split{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}.reports-cards{display:none}@media (max-width:640px){.reports-cards{display:block}.reports-table{display:none}}@media (min-width:700px) and (max-width:1179.98px){.map-strips{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.map-strips__center{order:-1;grid-column:1/-1}.map-strips__side{flex-direction:column;gap:16px;display:flex}.map-strips__side--left{order:1}.map-strips__side--right{order:2}}@media (min-width:1180px){.map-strips{--strips-w:min(1560px, calc(100vw - 32px));width:var(--strips-w);margin-left:calc(50% - var(--strips-w) / 2);margin-right:calc(50% - var(--strips-w) / 2);box-sizing:border-box;grid-template-columns:minmax(220px,1fr) minmax(0,1040px) minmax(220px,1fr);align-items:start;gap:16px;display:grid}.map-strips__side{top:calc(var(--app-header-h,0px) + 12px);max-height:calc(100vh - var(--app-header-h,0px) - 24px);flex-direction:column;gap:16px;display:flex;position:sticky;overflow-y:auto}.map-strips__side>section:first-child>h2{align-items:flex-end;height:40px;display:flex}}@media (max-width:900px){.home-two-col{grid-template-columns:1fr!important}}@media (max-width:640px){.livemap-meta{justify-content:space-between;width:100%;margin-left:0!important}.livemap-meta>span{width:auto!important}}
