:root{font-family:Inter,Arial,sans-serif;color:#142f3d;background:#f4f7f9;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{border:1px solid #becfd7;border-radius:9px;padding:10px 16px;background:white;color:#173947;cursor:pointer}button:hover{border-color:#078da9}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #00aeca;outline-offset:3px}.primary{background:#087e98;color:white;border-color:#087e98;font-weight:600}input,select{display:block;width:100%;border:1px solid #b7c9d3;background:white;border-radius:8px;padding:12px;margin-top:7px;color:#142f3d}label{display:block;font-size:15px;font-weight:600;margin:16px 0}input:focus,select:focus{outline:2px solid #2dbcd1;outline-offset:2px}.small{font-size:14px;color:#5b737f}.error{color:#aa233e;white-space:pre-wrap}.success{color:#006848}h1{font-size:32px;line-height:1.2;letter-spacing:-.8px}h2{font-size:23px;line-height:1.25}p{color:#536d7a}a{color:#087f99}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1px;color:#137d94}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;max-width:1500px;margin:auto}.login-brand{background:#102735;color:white;padding:64px;display:flex;flex-direction:column;justify-content:center}.login-brand img{width:300px;max-width:100%;border-radius:12px}.login-brand span{margin-top:40px;font-size:14px;letter-spacing:2px;color:#64dce7}.login-brand h1{font-size:54px;margin:20px 0}.login-brand p{color:#b7ced8}.login-brand a{color:#73dfeb;margin-top:30px}.login-form{align-self:center;padding:64px;max-width:660px}.login-form h2{font-size:32px}.login-form form{margin:28px 0}.login-form .primary{width:100%}.shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}aside{padding:25px;background:#fff;border-right:1px solid #e0e8eb;display:flex;flex-direction:column}.brand{width:210px;max-width:100%}nav{display:grid;gap:8px;margin:25px 0}nav button{text-align:left;border:0;color:#506a77;padding:13px 18px}nav button.selected{background:#e2f3f6;color:#086d84;font-weight:bold}.demo-link{margin-top:auto;font-size:14px}main{padding:30px 38px;min-width:0}header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:24px;border-bottom:1px solid #dce6eb}header strong{display:block;font-size:15px;overflow-wrap:anywhere}.actions{display:flex;gap:10px;flex-wrap:wrap}.notice{padding:18px 20px;background:#e5f2f5;border:1px solid #c9e3e9;border-radius:12px;margin:25px 0;font-size:14px;color:#285565}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:25px 0}.heading h1{margin-bottom:8px}.heading p{margin:0}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:25px 0}.metric,.panel{background:white;border:1px solid #dce6ea;border-radius:14px;padding:26px}.metric span{color:#597280;font-size:14px}.metric strong{display:block;font-size:42px;color:#087e98}.panel{margin-bottom:22px}.panel form{max-width:650px}.panel h2{margin-top:0}.table-wrap{overflow:auto;padding:0}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:17px;border-bottom:1px solid #e5ecef;vertical-align:top}td{overflow-wrap:anywhere;max-width:330px}th{background:#f9fbfc;color:#5b737e;font-weight:600}.empty{padding:30px}.state{max-width:680px;margin:12vh auto;padding:32px;background:white;border:1px solid #dce6ea;border-radius:16px}.state img{width:240px;max-width:100%}.state button{margin:12px 10px 0 0}.foot{margin-top:30px}dialog{border:0;border-radius:18px;padding:28px;width:560px;max-width:calc(100% - 24px);max-height:90vh;color:#142f3d;box-shadow:0 20px 80px #10273555}dialog::backdrop{background:#0b243c88}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.dialog-head h2{margin:0}.check{display:flex;align-items:center;gap:12px}.check input{width:19px;height:19px;margin:0}@media(max-width:900px){.shell{grid-template-columns:210px 1fr}aside{padding:18px}main{padding:22px}.login-brand,.login-form{padding:35px}.login-brand h1{font-size:42px}}@media(max-width:640px){.login{grid-template-columns:1fr}.login-brand{padding:24px}.login-brand img{width:190px}.login-brand h1{font-size:30px}.login-brand span{margin-top:20px}.login-brand a{margin-top:0}.login-form{padding:28px}.shell{display:block}aside{padding:15px;border-right:0;border-bottom:1px solid #dce6ea}.brand{width:170px}nav{display:flex;overflow:auto;gap:5px;margin:10px 0}nav button{white-space:nowrap}.demo-link{margin:0}.metrics{gap:10px;grid-template-columns:1fr}.metric{padding:18px;display:flex;justify-content:space-between;align-items:center}.metric strong{font-size:30px}header,.heading{flex-wrap:wrap}main{padding:20px}h1{font-size:27px}.state{margin:20px 12px}.login-brand p{display:none}}
.booking .heading{margin-top:0}.booking h2{margin:8px 0}.booking-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:20px 0;border-top:1px solid #e3ecef;border-bottom:1px solid #e3ecef}.booking-details span{display:block;font-size:14px;color:#627c88}.booking-details strong{display:block;margin-top:4px;font-size:16px}.badge{display:inline-block;border-radius:30px;padding:7px 13px;background:#e7f1f6;color:#265e76;font-size:14px;font-weight:600}.badge.green{background:#dff3eb;color:#17614a}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checkin-result{border:1px solid #c7dde6;border-radius:12px;padding:18px;margin-top:18px}.history-item{display:block;padding:12px 0;border-bottom:1px solid #e3ecef;font-size:14px}@media(max-width:700px){.booking-details{grid-template-columns:1fr 1fr}.two-cols{grid-template-columns:1fr}}
/* One date range panel for the entire stay. */
dialog.booking-dialog{width:850px;padding:28px}.stay-calendar{border:1px solid #cedfe5;border-radius:16px;background:#fff;margin:22px 0 16px;overflow:hidden}.range-summary{display:flex;align-items:center;gap:12px;background:#f4f8fa;padding:15px;border-bottom:1px solid #dce8ed}.range-summary button{flex:1;text-align:left;background:#fff;border:2px solid transparent;padding:10px 14px;min-width:0}.range-summary button.current{border-color:#087e98}.range-summary button span{display:block;font-size:13px;color:#587481}.range-summary strong{display:block;font-size:17px;margin-top:3px;white-space:nowrap}.range-arrow{color:#427082}.night-pill{background:#e0f3f5;color:#086a80;padding:7px 12px;border-radius:24px;font-size:14px;white-space:nowrap}.calendar-navigation{display:flex;align-items:center;justify-content:space-between;padding:12px 20px 0;gap:12px}.calendar-navigation button{font-size:25px;line-height:1;padding:6px 14px}.calendar-navigation p{font-size:14px;color:#2e6577;margin:0;text-align:center}.calendar-navigation button:disabled{cursor:default}.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:8px 24px 20px}.cal-month{min-width:0}.cal-month h3{text-align:center;text-transform:capitalize;font-size:17px;margin:12px 0 18px}.weekday-row,.day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekday-row{font-size:13px;color:#6b8390;text-align:center;margin-bottom:9px}.day-grid{row-gap:4px}.cal-day{font-size:15px;border:0;border-radius:0;padding:0;height:40px;width:100%;background:#fff;position:relative;color:#243e4a}.cal-day:disabled{opacity:1;color:#acbbc3;background:#fff;cursor:default}.cal-day:not(:disabled):hover{box-shadow:inset 0 0 0 2px #1599b1;border-radius:8px}.cal-day.in-range,.cal-day.preview-range{background:#e4f3f6;color:#146579}.cal-day.edge{background:#087e98;color:#fff;border-radius:8px;font-weight:700}.cal-day.today::after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;bottom:4px;left:calc(50% - 2px);background:currentColor}.cal-day:focus-visible{outline:3px solid #002e49;outline-offset:-3px;z-index:1;border-radius:8px}.calendar-foot{border-top:1px solid #e3edf0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 18px}.calendar-foot span{font-size:13px;color:#607b87}.calendar-foot button{border:0;font-size:14px;color:#087e98;padding:5px}.booking-dialog #quote{margin:12px 0}.booking-dialog #booking-form>button[type=submit]{width:100%}@media(max-width:640px){dialog.booking-dialog{padding:18px}.range-summary{gap:6px;padding:10px;flex-wrap:wrap}.range-summary button{padding:9px;flex-basis:40%}.range-summary strong{font-size:15px}.range-arrow{display:none}.night-pill{margin-left:auto;font-size:13px}.calendar-months{grid-template-columns:1fr;padding:4px 14px 16px;gap:0}.cal-day{height:40px}.calendar-foot{padding:10px;font-size:12px}.calendar-foot span{font-size:12px}.calendar-navigation{padding:10px 12px 0}.cal-month h3{margin:10px 0 14px}}
.traveler-access{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px;min-width:170px}.traveler-access span{font-size:.875rem;color:var(--muted,#526e7a)}.state form{max-width:420px;margin:24px auto;text-align:left}.state form label{display:block;margin:16px 0}.state form input{display:block;width:100%;box-sizing:border-box}
.security-state{max-width:650px;margin:auto}.mfa-qr{display:block;width:220px;max-width:100%;height:auto;margin:24px auto;background:white;padding:12px}.security-state code{overflow-wrap:anywhere}.security-state details{margin:20px 0}.security-state button{margin:8px}
/* Personal travel workspace: compact navigation and readable mobile cards. */
[hidden]{display:none!important}.traveler-shell .eyebrow{font-size:14px}.traveler-shell .traveler-stage{display:none}.traveler-shell main{max-width:1450px;width:100%}.traveler-shell aside{position:sticky;top:0;height:100vh}.traveler-shell nav{gap:10px}.traveler-shell header{margin-bottom:25px}.traveler-shell header .eyebrow{font-size:12px}.traveler-alert{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff3d7;border:1px solid #efd395;border-radius:16px;padding:22px;margin-bottom:24px}.traveler-alert p{margin:6px 0 0}.next-stay{padding:32px;border:1px solid #bedde3;border-top:5px solid #087e98;border-radius:18px;background:#fff;margin-bottom:24px}.next-stay h2{font-size:30px;margin:14px 0}.next-stay .booking-details{grid-template-columns:repeat(3,minmax(0,1fr));margin:22px 0}.traveler-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.traveler-shortcuts button{text-align:left;padding:24px;border-radius:16px;display:grid;gap:8px;border-color:#d0e1e7}.traveler-shortcuts strong{font-size:20px}.traveler-shortcuts button>span:last-child{color:#526c78}.shortcut-icon{width:40px;height:40px;border-radius:10px;background:#ddf2f5;display:grid;place-items:center;font-weight:bold;color:#087e98;font-size:23px}.zcode-card{padding:32px;background:#122f3e;color:white;border-radius:20px;margin-bottom:24px;max-width:760px}.zcode-card .eyebrow,.zcode-card p{color:#83deeb}.zcode-card h2{font-size:26px}.zcode-card code{display:block;overflow-wrap:anywhere;font-family:monospace;font-size:clamp(18px,2vw,26px);letter-spacing:1px;line-height:1.7;background:#ffffff0d;border:1px solid #ffffff30;border-radius:12px;padding:20px;margin:24px 0;user-select:all}.zcode-card button{background:#8de9f0;color:#103340;border:0}.zcode-card [role=status]{display:block;margin-top:12px}.profile-card{max-width:760px}.profile-card dl{display:grid;grid-template-columns:140px 1fr;gap:14px}.profile-card dt{color:#536d7a}.profile-card dd{margin:0;overflow-wrap:anywhere}.hotel-search{max-width:650px}.hotel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.hotel-card{margin:0;display:flex;flex-direction:column}.hotel-card h2{margin:10px 0}.hotel-services{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 24px}.hotel-services span{background:#f0f6f8;border-radius:6px;font-size:14px;padding:6px 10px;color:#32596a}.hotel-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.hotel-bottom strong{font-size:24px}.hotel-bottom span{font-size:14px;color:#526c78}.invoice-amount{display:block;font-size:26px;margin:14px 0 22px}.invoice-card .heading{margin-top:0}.upload-area{padding:18px;border:2px dashed #a2cbd6;background:#f6fbfc;border-radius:14px}.upload-area input{border:0;padding:0;background:transparent;max-width:100%}.upload-area label{margin-top:0}textarea{font:inherit;display:block;width:100%;border:1px solid #b7c9d3;border-radius:8px;margin-top:7px;padding:12px;resize:vertical}.review-note{padding:14px;background:#f3f7fa;border-left:3px solid #087e98;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:900px){.hotel-grid{grid-template-columns:1fr}.traveler-shell{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:640px){.traveler-shell aside{position:static;height:auto;padding:14px 18px}.traveler-shell aside>.eyebrow{display:none}.traveler-shell nav{position:fixed;bottom:0;left:0;right:0;background:#fff;margin:0;padding:8px 5px calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;border-top:1px solid #d4e4e9;z-index:20;overflow:visible}.traveler-shell nav button{padding:10px 3px;font-size:12px;white-space:normal;text-align:center;min-height:52px;line-height:1.25;overflow-wrap:normal;border-radius:8px}.traveler-shell main{padding:20px 16px 110px}.traveler-shell header{align-items:flex-start;margin-bottom:20px;padding-bottom:18px}.traveler-shell header .actions{gap:8px}.traveler-shell header button{padding:8px 12px;font-size:14px}.traveler-shell header strong{font-size:14px}.traveler-shell .heading{margin:20px 0;gap:14px}.traveler-shell h1{font-size:28px}.traveler-shell h2{font-size:23px}.traveler-shell .panel,.next-stay,.zcode-card{padding:22px 18px}.traveler-alert{padding:18px;align-items:flex-start;flex-direction:column}.next-stay .booking-details{grid-template-columns:1fr 1fr;gap:18px}.next-stay .booking-details>div:last-child{grid-column:1/-1}.traveler-shortcuts{gap:12px}.traveler-shortcuts button{padding:18px 14px}.traveler-shortcuts strong{font-size:17px}.traveler-shortcuts button>span:last-child{font-size:14px}.profile-card dl{grid-template-columns:1fr;gap:5px}.profile-card dd{margin-bottom:14px}.zcode-card code{font-size:18px;padding:16px}.traveler-shell .booking .heading{display:block}.traveler-shell .booking .heading .badge{margin-top:14px}.invoice-card .heading{align-items:flex-start;flex-direction:column}.upload-area{padding:12px}.traveler-shell .foot{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.company-actions,.company-team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.company-actions .panel{margin:0 0 24px}.company-team .panel{margin:0;min-width:0}.company-team h2{font-size:1.2rem}.company-team p,.profile-card dd{overflow-wrap:anywhere}.company-trip{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #dce7ec;padding:20px 0}.company-trip:last-child{padding-bottom:0}.company-trip p{margin:8px 0}.portal-filters{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin:20px 0}.portal-filters label{margin:0}.team-code{display:block;overflow-wrap:anywhere;padding:16px 0;font-size:14px}.company-team details{margin:16px 0}.company-team summary{cursor:pointer}.company-team .traveler-access{margin:16px 0}.company-shell header{margin-bottom:28px}.company-shell .heading h1{font-size:2rem}.company-shell nav{gap:6px}@media(max-width:700px){.company-actions,.company-team,.portal-filters{grid-template-columns:1fr}.company-trip{flex-direction:column;gap:8px}.company-shell aside{padding:20px}.company-shell aside .brand{max-width:160px}.company-shell nav{display:grid;grid-template-columns:repeat(3,1fr)}.company-shell nav button{font-size:14px;padding:12px 6px;text-align:center}.company-shell main{padding:20px}.company-shell header{align-items:flex-start;gap:16px;flex-wrap:wrap}}
/* Company and hotel activity dashboards */
.dash-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.dash-metric{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:14px;padding:24px;background:white;border:1px solid #d5e5eb;border-radius:18px;min-width:0}.dash-metric strong{font-size:clamp(24px,2.6vw,38px);color:#087f8c;overflow-wrap:anywhere}.dash-metric small{font-size:14px;font-weight:400;line-height:1.4}.dash-month{min-width:180px}.dash-finance{display:flex;gap:28px;flex-wrap:wrap}.dash-finance>div{flex:1;min-width:180px;display:grid;gap:10px}.dash-finance strong{font-size:24px}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.dash-chart{min-width:0}.dash-chart h2{font-size:23px}.dash-bar{display:block;width:100%;border:0;padding:14px 0;border-radius:0;text-align:left;background:transparent}.dash-bar-label{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:16px}.dash-bar-label b{overflow-wrap:anywhere}.dash-track{display:block;height:12px;border-radius:6px;background:#eaf1f5;margin-top:12px;overflow:hidden}.dash-track>span{display:block;height:100%;background:#087f8c;border-radius:6px}.dash-legend{display:flex;gap:20px;margin:20px 0;font-size:14px}.dash-legend span:before{content:'';display:inline-block;width:12px;height:12px;background:#087f8c;margin-right:8px}.dash-legend span+span:before{background:#6dcbd0}.dash-trend{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;overflow-x:auto}.dash-column{border:0;padding:8px 4px;background:transparent;min-width:85px;display:flex;align-items:center;flex-direction:column;gap:8px;font-size:14px}.dash-column b{font-size:14px}.dash-column small{font-size:14px;font-weight:400}.dash-column-space{height:150px;width:100%;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #bacbd3}.dash-stack{display:flex;flex-direction:column;width:60%;max-width:65px;overflow:hidden;border-radius:6px 6px 0 0}.dash-empty{padding:30px 0;color:#536b77}#dashboard-root button:focus-visible{outline:3px solid #09a9c4;outline-offset:3px}#dashboard-root summary{cursor:pointer;font-weight:600}#dash-detail:focus{outline:2px solid #087f8c}.dash-grid .panel{margin-top:0}@media(max-width:1000px){.dash-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:1fr}}@media(max-width:550px){.dash-metrics{grid-template-columns:1fr}.dash-trend{grid-template-columns:repeat(6,95px)}.dash-finance{gap:24px}.dash-month{width:100%}}
.chat-list{max-height:340px;overflow-y:auto;padding:8px;display:grid;gap:12px}.chat-message{background:#edf6f7;padding:14px;border-radius:12px;overflow-wrap:anywhere}.chat-hotel{background:#f1f3f5}.chat-message strong{font-size:14px}.chat-message time{display:block;font-size:12px;color:#526a75}.chat-message p{white-space:pre-wrap;margin:8px 0 0;color:#183c49}#chat-body{box-sizing:border-box;width:100%;font:inherit;padding:12px;border:1px solid #b7c9d3;border-radius:8px;resize:vertical;margin-bottom:12px}
.hotel-gallery{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin-bottom:18px}.hotel-gallery figure{margin:0;flex:0 0 100%;scroll-snap-align:start}.hotel-gallery img{width:100%;height:220px;object-fit:cover;border-radius:12px}.hotel-gallery figcaption{font-size:14px;color:#526a75}.photo-empty{padding:25px;background:#edf3f5;border-radius:12px;text-align:center}#photo-editor{display:grid;gap:18px;max-height:55vh;overflow:auto}.photo-slot{padding:14px;border:1px solid #dce6ea;border-radius:12px}.photo-slot img{display:block;width:100%;max-height:220px;object-fit:contain;margin-top:12px}

.map-filters{display:flex;gap:16px;flex-wrap:wrap;align-items:end}.map-filters label{min-width:160px;flex:1}.stay-map{height:480px;min-height:320px;border:1px solid #ccdce0;border-radius:12px;isolation:isolate;background:#edf3f4;margin-top:18px}.map-key{display:flex;align-items:center;gap:12px;font-size:14px}.map-key span{width:130px;height:12px;border-radius:8px;background:linear-gradient(90deg,#25b5bc,#e6d757,#ee893b,#ba3448)}.leaflet-container{font:14px/1.5 Inter,Arial,sans-serif}.leaflet-control-attribution{font-size:12px!important}.stay-map .leaflet-control a{min-width:30px;min-height:30px}@media(max-width:600px){.stay-map{height:360px}.map-filters label{min-width:140px}}

.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}.dash-track>.dash-cancelled{background:#9e6972}.dash-parking{background:#6dcbd0}.dash-room{background:#087f8c}

.sos-trigger{background:#a32e30;color:#fff;border-color:#a32e30;font-weight:700;min-height:44px}.sos-emergency{border-left:5px solid #a32e30}.sos-call{display:inline-block;padding:14px 18px;border-radius:10px;border:1px solid #a32e30;color:#8b2224;font-weight:700;min-height:44px}.sos-call.primary{background:#a32e30;color:#fff}.sos-alert{padding:20px 0;border-bottom:1px solid #dce6e9}.sos-alert:last-child{border-bottom:0}
/* App navigation: four everyday destinations, secondary tools in More. */
.shell>aside{position:sticky;top:0;height:100dvh;align-self:start}.shell .portal-nav{display:grid;overflow:visible}.shell .portal-nav button{min-height:48px;white-space:normal}.shell main>header{padding-bottom:16px}.shell main>header .actions button{min-height:44px}.shell #content:focus{outline:none}.task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.task-grid button{text-align:left;padding:24px;min-height:130px;background:white;display:flex;flex-direction:column;gap:12px}.task-grid strong{font-size:19px}.task-grid span{color:#536d7a;font-size:15px}.more-grid{display:grid;gap:10px}.more-grid button{display:flex;justify-content:space-between;text-align:left;min-height:52px}.more-grid button[aria-current]{background:#e2f3f6;font-weight:700}.dashboard-analysis{border:1px solid #dce6ea;border-radius:14px;padding:20px;background:#fff;margin-bottom:22px}.dashboard-analysis>summary,.booking-secondary>summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:600;color:#086d84}.dashboard-analysis[open]>summary{margin-bottom:20px}.booking-secondary{margin-top:12px;border-top:1px solid #dce6ea}.booking-secondary .actions{padding-block:12px}.panel .actions button{min-height:44px}button,input,select,textarea{font-size:16px}.shell #content>.heading:first-child{margin-top:22px}.shell .dash-metrics{margin-top:18px}.login-form>p{max-width:46ch}.login-brand h1{font-size:42px}
@media(max-width:900px){.task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.shell,.shell.traveler-shell,.shell.company-shell{display:block}.shell>aside{height:auto;position:static;padding:14px 20px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;border-bottom:1px solid #dce6ea}.shell>aside>.eyebrow,.shell>aside>.demo-link{display:none}.shell>aside .brand{width:145px}.shell .portal-nav{position:fixed;inset:auto 0 0;z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;background:white;border-top:1px solid #cbdde2;margin:0;padding:8px 5px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -4px 18px #142f3d0a}.shell .portal-nav button{font-size:14px;line-height:1.3;text-align:center;padding:12px 3px;min-height:54px;overflow-wrap:anywhere}.shell main{padding:16px 16px calc(105px + env(safe-area-inset-bottom))}.shell main>header{gap:12px}.shell main>header .actions{gap:7px}.shell main>header .actions button{padding:9px 12px;font-size:14px}.task-grid{grid-template-columns:1fr 1fr;gap:10px}.task-grid button{padding:17px;min-height:120px}.task-grid strong{font-size:17px}.panel{padding:20px}.table-wrap{padding:0}.heading{gap:14px}.heading h1{font-size:28px}.login-brand{padding:22px}.login-brand h1,.login-brand>span{display:none}.login-brand a{margin-top:16px}.login-form{padding:26px 22px}.login-form h2{font-size:28px}.dashboard-analysis{padding:14px}}
.account-menu{position:relative}.account-menu>summary{cursor:pointer;list-style:none;border:1px solid #becfd7;border-radius:9px;background:#fff;padding:10px 16px;min-height:44px;font-weight:600}.account-menu>div{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:min(300px,80vw);background:white;border:1px solid #dce6ea;border-radius:14px;padding:16px;box-shadow:0 12px 36px #142f3d22;display:grid;gap:10px}.account-menu p{margin:0 0 6px;overflow-wrap:anywhere;font-size:14px}.account-menu button{text-align:left}.account-menu summary:focus-visible,.booking-secondary summary:focus-visible,.dashboard-analysis summary:focus-visible{outline:3px solid #00aeca;outline-offset:3px}@media(max-width:760px){.record-table,.record-table tbody{display:block}.record-table thead{display:none}.record-table tr{display:block;border-bottom:2px solid #dce6ea;padding:12px}.record-table td{display:block;border:0;padding:8px 6px;max-width:none;font-size:16px}.record-table td[data-label]:before{content:attr(data-label);display:block;color:#5b737e;font-size:14px;font-weight:600;margin-bottom:3px}.record-table td:last-child button{margin:4px}}
