:root{color:#172f4f;background:#d9e2ec;font-family:system-ui,-apple-system,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(150deg,#edf2f7,#cedae6);place-items:center;min-height:100vh;margin:0;display:grid}.phone{background:#f7f9fc;width:min(100%,440px);min-height:100vh;padding:18px 18px 86px;position:relative;box-shadow:0 0 40px #17345133}header{justify-content:space-between;align-items:center;display:flex}.brand{color:#14355b;letter-spacing:-1px;background:0 0;border:0;padding:5px 0;font-size:22px;font-weight:800}.brand i{color:#f3a820;font-size:16px;font-style:normal}.brand span{letter-spacing:.12em;color:#63809b;margin-left:6px;font-size:9px}.help{color:#305574;background:#fff;border:1px solid #afc2d3;border-radius:7px;padding:6px 9px;font-size:11px}.service-bar{color:#1e527c;background:#dcecf5;border-radius:4px;justify-content:space-between;margin:15px 0 0;padding:8px 10px;font-size:11px;display:flex}.service-bar span{color:#147348}.hero{padding:31px 8px 22px}.hero.compact{padding-bottom:20px}.eyebrow{letter-spacing:.06em;color:#276490;margin:0 0 10px;font-size:12px;font-weight:700}.hero h1,.status h1,.arrival h1{letter-spacing:-.06em;margin:0 0 12px;font-size:32px;line-height:1.3}.sub{color:#5c7080;margin:0;font-size:14px;line-height:1.7}.panel{background:#fff;border:1px solid #d9e2eb;border-radius:7px;margin:13px 0;padding:16px;box-shadow:0 3px 9px #3a5d5010}.route label,.booking label{color:#4f6d84;font-size:12px;font-weight:700;display:block}.route input,.booking input,.booking textarea{width:100%;font:inherit;color:#173451;background:0 0;border:0;border-bottom:1px solid #cbd8e3;outline-color:#176fa2;padding:9px 0}.route-line{border-left:2px dotted #7ca3bf;height:13px;margin:2px 0 2px 5px}.chips{flex-wrap:wrap;gap:7px;padding-top:12px;display:flex}.chip{color:#315e80;background:#edf3f8;border:0;border-radius:4px;padding:7px 10px;font-size:11px}.section-title{justify-content:space-between;align-items:center;display:flex}.section-title h2,.vehicles h2{margin:0 0 12px;font-size:15px}.section-title span{color:#557897;font-size:11px}.options{grid-template-columns:1fr 1fr;gap:9px;display:grid}.choice,.vehicle{text-align:left;color:#25455e;background:#fff;border:1px solid #ccdbe6;border-radius:5px;padding:12px}.choice.selected,.vehicle.selected{background:#edf7f4;border-color:#238567;box-shadow:inset 0 0 0 1px #238567}.choice b,.vehicle b{font-size:13px;display:block}.choice small,.vehicle small,.driver small{color:#71818f;margin-top:4px;font-size:11px;display:block}.vehicle{align-items:center;gap:10px;width:100%;margin-top:8px;display:flex}.vehicle strong{color:#177155;margin-left:auto;font-size:12px}.car{color:#1e6e98;font-size:23px}.primary{color:#fff;background:#146f9d;border:0;border-radius:5px;width:100%;margin-top:9px;padding:17px;font-size:15px;font-weight:800;box-shadow:0 4px 8px #12658e33}.callout{color:#645127;background:#fff8e9;border-left:4px solid #f2ad27;margin:14px 3px 0;padding:10px 12px;font-size:12px}.callout b,.callout span{display:block}.callout span{margin-top:4px;font-size:11px}.notice{text-align:center;color:#788894;margin:12px 15px;font-size:10px;line-height:1.6}.status{text-align:center;padding:48px 10px 25px}.radar{background:radial-gradient(circle,#d7eff0 15%,#9cd3d5 16%,#9cd3d522 18%,#7caebe33 19%,#7caebe11 45%);border-radius:50%;place-items:center;width:112px;height:112px;margin:0 auto 26px;display:grid;position:relative}.radar i{border:1px solid #5496a5;border-radius:50%;width:92px;height:92px;animation:1.3s infinite pulse;position:absolute}.radar span{font-size:30px}.summary p{color:#627886;margin:0 0 5px;font-size:11px}.summary b{font-size:14px}.summary hr{border:0;border-top:1px solid #e1e8ed;margin:13px 0}.text-button{color:#476a84;background:0 0;border:0;margin:18px auto 0;font-size:13px;text-decoration:underline;display:block}.map{background:#dbead7;height:190px;margin:20px -18px 0;position:relative;overflow:hidden}.road{background:#fcfbef;width:130%;height:22px;position:absolute;top:57px;left:-30px;transform:rotate(-18deg);box-shadow:0 0 0 2px #c8d3c4}.r2{top:144px;transform:rotate(12deg)}.river{background:#a7d4e2;width:35px;height:240px;position:absolute;top:-20px;left:55%;transform:rotate(22deg)}.pin{color:#d95a42;font-size:24px;position:absolute;top:76px;left:23%}.pin small{color:#36554e;white-space:nowrap;font-size:9px;display:block}.taxi{font-size:27px;animation:1.2s infinite alternate drive;position:absolute;bottom:38px;right:20%}.arrival{padding:22px 8px 5px}.arrival h1{font-size:26px}.arrival em{color:#d06926;font-style:normal}.arrival p:not(.eyebrow){color:#5e717e;font-size:12px}.driver{align-items:center;gap:12px;display:flex}.avatar{color:#1d5e87;background:#d6e5f0;border-radius:50%;place-items:center;width:40px;height:40px;font-size:12px;font-weight:800;display:grid}.driver button{color:#1e638d;background:#f4fafe;border:1px solid #a9c8da;border-radius:5px;margin-left:auto;padding:8px 12px}.booking textarea{resize:none;height:50px}nav{background:#fff;border-top:1px solid #cfdae4;grid-template-columns:repeat(4,1fr);padding:7px 4px 8px;display:grid;position:absolute;bottom:0;left:0;right:0}nav button{color:#637a8d;background:0 0;border:0;place-items:center;gap:2px;font-size:19px;display:grid}nav button.active{color:#176b96}nav small{font-size:9px}@keyframes pulse{to{opacity:0;transform:scale(1.18)}}@keyframes drive{to{transform:translate(-12px)}}.form-error{color:#b3392d;margin:8px 2px;font-size:12px;font-weight:700}.history-row{border-bottom:1px solid #e1e8ed;justify-content:space-between;align-items:center;padding:13px 0;display:flex}.history-row:last-child{border-bottom:0}.history-row span,.history-row small{color:#647b8d;font-size:11px;display:block}.history-row b{margin:4px 0;font-size:15px;display:block}.history-row strong{color:#177155;background:#e8f5ee;border-radius:4px;padding:5px 7px;font-size:11px}.empty{color:#607685;text-align:center;padding:18px 0;font-size:13px;line-height:1.8}.support b{font-size:14px}.support p{color:#5a7080;font-size:13px;line-height:1.75}.support hr{border:0;border-top:1px solid #e1e8ed;margin:16px 0}.vehicle-summary{color:#30546f;text-align:left;background:#fff;border:1px solid #d9e2eb;border-radius:6px;align-items:center;width:100%;padding:12px 14px;display:flex}.vehicle-summary span{color:#60798b;font-size:12px}.vehicle-summary b{margin-left:15px;font-size:14px}.vehicle-summary em{color:#1d6f98;margin-left:auto;font-size:12px;font-style:normal}.home-screen .hero{padding:17px 8px 13px}.home-screen .hero h1{margin-bottom:5px;font-size:27px;line-height:1.17}.home-screen .hero .eyebrow{margin-bottom:5px}.home-screen .hero .sub{font-size:12px}.home-screen .panel{margin:9px 0;padding:12px}.home-screen .route input{padding:6px 0}.home-screen .route-line{height:7px}.home-screen .chips{flex-wrap:nowrap;padding-top:8px;overflow-x:auto}.home-screen .chip{flex:none;padding:5px 8px}.home-screen .method-panel,.home-screen .choice{padding:9px}.home-screen .choice small{font-size:10px}.home-screen .primary{margin-top:9px;padding:14px}.home-screen .callout{margin-top:9px;padding:7px 10px}.home-screen .callout span{white-space:nowrap;font-size:10px}.home-screen .form-error{margin:5px 2px}.home-screen .service-bar{margin-top:10px;padding:6px 9px}@media (height<=700px){.phone{padding-top:10px}.home-screen .hero{padding:10px 8px}.home-screen .hero h1{font-size:24px}.home-screen .service-bar{margin-top:5px}.home-screen .route{padding:9px}.home-screen .callout{display:none}.home-screen .primary{padding:12px}}.page-intro{padding:27px 7px 15px}.page-intro h1{letter-spacing:-.05em;color:#173b60;margin:0 0 7px;font-size:29px}.page-intro p:not(.eyebrow){color:#5d7485;margin:0;font-size:13px;line-height:1.65}.info-strip{color:#42687f;background:#e8f2f8;border-left:4px solid #2d8ab5;align-items:flex-start;gap:9px;margin:0 0 12px;padding:9px 11px;display:flex}.info-strip span{color:#1c719c;font-size:14px}.info-strip p{margin:0;font-size:11px;line-height:1.5}.panel-heading{color:#234c68;align-items:center;gap:7px;padding-bottom:5px;display:flex}.step{color:#fff;background:#18759e;border-radius:50%;place-items:center;width:19px;height:19px;font-size:11px;font-weight:800;display:grid}.step.muted{background:#95adbd}.panel-heading b{font-size:13px}.panel-heading small{color:#718797;font-weight:400}.note-heading{border-top:1px solid #e1e9ee;margin-top:12px;padding-top:14px}.booking label{margin:10px 0 0}.booking .note-label{margin-top:4px}.booking textarea{border:1px solid #d3e0e9;border-radius:5px;height:58px;padding:8px}.history-summary{color:#fff;background:#185f89;border-radius:7px;justify-content:space-between;align-items:center;margin:0 0 12px;padding:13px 15px;display:flex}.history-summary span{font-size:12px}.history-summary b{font-size:24px}.history-summary small{font-size:12px;font-weight:400}.list-title{color:#4e6b80;padding-bottom:5px;font-size:12px;font-weight:700}.history-row{gap:10px}.history-icon{background:#e8f2f7;border-radius:50%;flex:none;place-items:center;width:33px;height:33px;font-size:15px;display:grid}.history-row div{flex:1}.history-row small{color:#3d8469}.history-row strong{color:#3d6278;background:#eef3f6}.brand{text-align:left;align-items:center;display:flex;gap:7px!important}.brand-mark{background:#fff;border-radius:4px;flex:none;width:58px;height:34px;display:block;overflow:hidden}.brand-mark img{width:58px;max-width:none;height:58px;display:block;transform:translateY(-8px)}.brand-copy{letter-spacing:-.07em;white-space:nowrap;color:#14355b!important;font-size:15px!important;font-weight:800!important;display:block!important}.brand-copy small{display:none}html,body,#app{height:100%;overflow:hidden}body,.phone{height:100dvh;overflow:hidden;min-height:0!important}@media (height<=820px){.phone{padding-top:10px}.home-screen .hero{padding:9px 8px 8px}.home-screen .hero h1{font-size:24px}.home-screen .service-bar{margin-top:5px}.home-screen .route{padding:9px}.home-screen .callout{display:none}.home-screen .primary{padding:12px}.brand-mark{width:50px;height:30px}.brand-mark img{width:50px;height:50px;transform:translateY(-7px)}.brand-copy{font-size:14px!important}}.phone{padding-bottom:74px!important}.phone>nav{z-index:10;align-items:center;grid-template-columns:repeat(4,minmax(0,1fr))!important;height:66px!important;position:absolute!important;bottom:0!important;left:0!important;right:0!important}.phone>nav button{justify-content:center;min-width:0;height:52px}.phone>nav small{white-space:nowrap}.phone{width:540px!important;max-width:100vw!important}.screen-matched .map{height:128px;margin-top:10px}.screen-matched .arrival{padding:13px 8px 2px}.screen-matched .arrival h1{margin-bottom:5px;font-size:24px}.screen-matched .panel{margin:8px 0;padding:11px}.screen-matched .summary hr{margin:8px 0}.screen-matched #complete{z-index:5;background:#0d7b62;width:calc(100% - 36px);margin:0;padding:15px;position:absolute;bottom:76px;left:18px;right:18px;box-shadow:0 5px 13px #0d7b6255}.screen-matched .driver{padding-right:11px}@media (height<=820px){.screen-matched .map{height:100px}.screen-matched .arrival{padding-top:9px}.screen-matched .arrival h1{font-size:22px}.screen-matched .panel{margin:5px 0;padding:9px}.screen-matched .summary hr{margin:6px 0}.screen-matched #complete{padding:13px;bottom:74px}}.screen-matched .arrival{padding-top:18px;padding-bottom:8px}.screen-matched .driver,.screen-matched .summary{margin-top:16px}@media (height<=820px){.screen-matched .map{height:118px}.screen-matched .arrival{padding-top:14px;padding-bottom:7px}.screen-matched .driver,.screen-matched .summary{margin-top:13px}}.screen-matched .map{margin-top:clamp(20px,45dvh - 304px,72px)}@media (width<=600px) and (height>=821px){.home-screen .hero{padding:25px 8px 20px}.home-screen .hero h1{margin-bottom:9px;font-size:28px;line-height:1.22}.home-screen .panel{margin:12px 0;padding:14px}.home-screen .route-line{height:10px}.home-screen .method-panel{padding:11px}.home-screen .choice{padding:11px 9px}.home-screen .vehicle-summary{padding:14px}.home-screen .primary{margin-top:12px;padding:16px}.home-screen .callout{margin-top:14px;padding:10px 11px}}@media (width<=600px){header{gap:7px;min-height:46px}.brand{flex:1;min-width:0}.brand-mark{width:46px;height:28px}.brand-mark img{width:46px;height:46px;transform:translateY(-6px)}.brand-copy{text-overflow:ellipsis;min-width:0;overflow:hidden;font-size:13px!important}.help{white-space:nowrap;flex:none;width:auto;padding:8px 7px;line-height:1}.home-screen .hero{padding:14px 8px 11px}.home-screen .hero h1{margin-bottom:5px;font-size:25px;line-height:1.15}.home-screen .panel{margin:8px 0;padding:10px}.home-screen .route-line{height:6px}.home-screen .method-panel,.home-screen .choice{padding:8px}.home-screen .vehicle-summary{padding:10px 12px}.home-screen .primary{margin-top:8px;padding:13px}.home-screen .callout{display:none}}
