:root{--green-100:#e7f7ee;--green-200:#c6ebd6;--green-300:#98dcb5;--green-400:#68cb93;--green-500:#3bbc73;--green-600:#10ad54;--green-700:#0e9347;--green-800:#0b7b3c;--green-900:#096330;--green-1000:#074e26;--gray-0:#fff;--gray-50:#f3f3f3;--gray-100:#ddd;--gray-200:#c6c6c6;--gray-300:#b0b0b0;--gray-400:#9b9b9b;--gray-500:#7f7f7f;--gray-600:#696969;--gray-700:#4b4b4b;--gray-800:#393939;--gray-900:#1b1b1b;--success-100:#ebffee;--success-600:#14ae5c;--success-700:#009951;--success-900:#02542d;--error-100:#fee8e7;--error-200:#fccdcb;--error-600:#f01613;--error-700:#c00f0c;--error-900:#900b09;--text:#191a1d;--text-muted:#575757;--background:var(--gray-0);--surface:var(--gray-50);--accent:var(--green-800);--accent-pressed:var(--green-900);--font-heading:"Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--radius:16px;--radius-control:12px;--tap:48px}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--background);color:var(--text);font:400 16px/24px var(--font-body);margin:0}h1{font:600 28px/34px var(--font-heading)}h2{font:600 20px/24px var(--font-body)}.page{max-width:432px;margin:0 auto;padding:24px 16px}.muted{color:var(--text-muted)}.error{color:var(--error-700)}.button{border-radius:var(--radius-control);background:var(--accent);min-height:56px;color:var(--gray-0);font:700 16px/24px var(--font-body);cursor:pointer;border:0;justify-content:center;align-items:center;padding:16px 24px;text-decoration:none;display:inline-flex}.button:active{background:var(--accent-pressed)}.button-secondary{background:var(--green-200);color:var(--green-900)}.button-secondary:active{background:var(--green-300)}.button-dark{background:var(--gray-900)}.button-dark:active{background:var(--gray-800)}.button:focus-visible,.link:focus-visible,a:focus-visible{outline:3px solid var(--green-800);outline-offset:2px}.link{min-height:var(--tap);color:var(--green-800);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;text-decoration:underline;display:inline-flex}.stack{gap:12px;display:grid}.field{font:500 14px/20px var(--font-body);gap:4px;display:grid}.field input{border:1px solid var(--gray-500);border-radius:var(--radius-control);min-height:56px;font:400 16px/24px var(--font-body);padding:0 16px}.field input:focus-visible{border-color:var(--accent);outline:3px solid var(--green-800);outline-offset:1px}.sign-in-buttons{flex-direction:column;align-items:stretch;gap:12px;display:flex}.cards{gap:8px;padding:0;list-style:none;display:grid}.vehicle-head{display:none}.card{border-radius:var(--radius);background:var(--surface);padding:16px}.button:disabled,.link:disabled,.button[aria-disabled=true],.link[aria-disabled=true],.suggestion[aria-disabled=true]{opacity:.6;cursor:progress}h1:focus{outline:none}.account{flex-wrap:wrap;align-items:center;column-gap:24px;display:flex}.account .error{flex-basis:100%;margin:0}:root{--status-draft-bg:#c7dbff;--status-draft-fg:#0050e2;--status-cancelled-bg:#ffd6d6;--status-cancelled-fg:#c02020;--status-published-bg:#c6ebd6;--status-published-fg:#087336;--line:#e2e2e2}.cabinet{padding-bottom:calc(72px + env(safe-area-inset-bottom))}html:has(.tabbar){scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom))}.company-switcher{max-width:432px;margin:0 auto;padding:12px 16px 0}.field select,.field textarea{border:1px solid var(--gray-500);border-radius:var(--radius-control);background:var(--gray-0);min-height:48px;color:var(--text);font:400 16px/24px var(--font-body);padding:0 12px}.field select,.field input{min-width:0}.field textarea{min-height:96px;padding:12px}.field select:focus-visible,.field textarea:focus-visible{border-color:var(--accent);outline:3px solid var(--green-800);outline-offset:1px}.tabbar{padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:var(--gray-0);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.entry-brand,.brand,.side-account,.tabbar .icon{display:none}.tabbar a{max-width:120px;min-height:56px;color:var(--text-muted);font:600 14px/17px var(--font-body);flex:1;justify-content:center;align-items:center;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:var(--green-800);box-shadow:inset 0 3px 0 var(--green-800)}.week{justify-content:space-between;align-items:center;font-weight:600;display:flex}.icon-button{min-width:var(--tap);min-height:var(--tap);border-radius:var(--radius-control);color:var(--green-800);font:700 24px/1 var(--font-body);cursor:pointer;background:0 0;border:0}.chips{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.chip{min-height:var(--tap);min-width:var(--tap);border:1px solid var(--gray-500);background:var(--gray-0);color:var(--text);font:600 14px/17px var(--font-body);cursor:pointer;border-radius:200px;padding:0 12px}.chip[aria-pressed=true]{border-color:var(--green-800);background:var(--green-100);color:var(--green-900)}.week-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.week-days .chip{border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-width:0;padding:4px 0;display:flex}.chip[aria-current=date]{border:2px solid var(--green-800)}.chip:focus-visible,.icon-button:focus-visible,.tabbar a:focus-visible,.card:focus-visible{outline:3px solid var(--green-800);outline-offset:2px}.day-heading{color:var(--text-muted);font:600 14px/20px var(--font-body);margin:16px 0 0}.day-empty,.day-filtered{display:none}a.card{color:var(--text);gap:8px;text-decoration:none;display:grid}.trip-card-top{justify-content:space-between;align-items:center;display:flex}.trip-time{font:600 20px/24px var(--font-body)}.trip-route{font-weight:600}.status{font:600 12px/16px var(--font-body);white-space:nowrap;border-radius:200px;align-items:center;padding:2px 12px;display:inline-flex}.status-draft{background:var(--status-draft-bg);color:var(--status-draft-fg)}.status-published{background:var(--status-published-bg);color:var(--status-published-fg)}.status-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled-fg)}.button-tertiary{border:1px solid var(--line);background:var(--gray-0);color:var(--text)}.button-tertiary:active{background:var(--gray-50)}.button-danger{background:var(--error-700)}.button-danger:active{background:var(--error-900)}.plain{gap:8px;padding:0;list-style:none;display:grid}.block{display:block}.stops{gap:12px;padding:0;list-style:none;display:grid}.stops>li{gap:12px;display:flex}.stop-time{min-width:48px;font-weight:600}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;column-gap:16px;display:flex}.actions{gap:16px;display:flex}h3{font:600 16px/20px var(--font-body);margin:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.suggestions{margin:8px 0 0;padding:0;list-style:none;display:grid}.suggestion{width:100%;min-height:var(--tap);border:0;border-bottom:1px solid var(--line);color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;padding:8px 0;display:grid}.suggestion:focus-visible{outline:3px solid var(--green-800);outline-offset:2px}.route-stops{gap:8px;margin:0;padding:0;list-style:none;display:grid}.toggle{min-height:var(--tap);cursor:pointer;align-items:center;gap:12px;display:flex}.toggle input{width:24px;height:24px;accent-color:var(--green-800);margin:0}.toggle input:focus-visible{outline:3px solid var(--green-800);outline-offset:2px}summary{min-height:var(--tap);color:var(--green-800);cursor:pointer;align-items:center;font-weight:600;display:flex}summary:focus-visible{outline:3px solid var(--green-800);outline-offset:2px}fieldset{border:0;margin:0;padding:0}legend{font:500 14px/20px var(--font-body);padding:0}.field input[aria-invalid=true]{border-color:var(--error-700)}.warning{border-radius:var(--radius-control);background:var(--status-draft-bg);color:var(--text);padding:12px 16px}input.time,.fares input{min-height:var(--tap);border:1px solid var(--gray-500);border-radius:var(--radius-control);font:400 16px/24px var(--font-body);padding:0 12px}.fares input{width:100%}.fares{border-collapse:collapse;width:100%}.fares caption{text-align:left;margin-bottom:8px;font-weight:600}.fares th,.fares td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:8px 4px}.fares th[scope=col]{color:var(--text-muted);font:500 14px/20px var(--font-body)}label.chip{align-items:center;display:inline-flex;position:relative}label.chip:has(input:checked){border-color:var(--green-800);background:var(--green-100);color:var(--green-900)}label.chip input{opacity:0;position:absolute}label.chip:has(input:focus-visible){outline:3px solid var(--green-800);outline-offset:2px}.steps{flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.steps .chip[aria-current=step]{border-color:var(--green-800);background:var(--green-100);color:var(--green-900)}.save{margin-top:24px}.save+.stack{margin-top:12px}@media (width>=1200px){.editor-steps{grid-template-columns:repeat(3,1fr);align-items:start;column-gap:24px;margin-bottom:24px;display:grid}}.map-wrap{position:relative}.map{border-radius:var(--radius);background:var(--surface);height:220px}.map-label{background:var(--gray-0);color:var(--green-900);font:600 14px/20px var(--font-body);pointer-events:none;border-radius:200px;padding:4px 12px;position:absolute;top:8px;left:8px}@media (width>=1024px){.cabinet{grid-template-columns:240px minmax(0,1fr);min-height:100vh;padding-bottom:0;display:grid}html:has(.tabbar){scroll-padding-bottom:0}.cabinet-side{border-right:1px solid var(--line);background:var(--gray-0);flex-direction:column;gap:24px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{min-height:var(--tap);color:var(--text);font:700 18px/24px var(--font-body);white-space:nowrap;align-items:center;gap:8px;padding:0 4px;text-decoration:none;display:flex}.brand .icon{color:var(--green-800)}.company-switcher{max-width:none;margin:0;padding:0}.company-switcher select{padding:0 8px;font-size:14px}.cabinet-side .tabbar{border:0;flex-direction:column;justify-content:flex-start;gap:4px;padding:0;position:static}.cabinet-side .tabbar a{border-radius:var(--radius-control);max-width:none;color:var(--text);font:500 16px/20px var(--font-body);flex:none;justify-content:flex-start;gap:12px;padding:0 12px}.cabinet-side .tabbar a[aria-current=page]{box-shadow:none;background:var(--green-100);color:var(--green-900);font-weight:600}.tabbar .icon{flex-shrink:0;display:block}.side-account{border-top:1px solid var(--line);font:400 14px/20px var(--font-body);gap:4px;margin-top:auto;padding:16px 4px 0;display:grid}.side-name{font-weight:600}.cabinet .page{max-width:1240px;margin:0;padding:32px 40px 48px;position:relative}.cabinet .new-trip{max-width:640px}.page-action{min-height:var(--tap);padding:12px 24px;position:absolute;top:32px;right:40px}.trips-head{flex-wrap:wrap;align-items:center;column-gap:24px;padding-right:170px;display:flex}.trips-head h1{margin:0}.trips-head .week{gap:8px}.today-button{min-height:var(--tap);padding:12px 16px}}@media (width>=1200px){.week-days,.week-empty{display:none}.trip-week{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:8px;margin-top:16px;display:grid}.trip-week .day-empty,.trip-week .day-filtered{display:grid}.trip-week .day-heading{border-radius:var(--radius-control);color:var(--text);margin:0;padding:8px 12px}.trip-week .day-heading[aria-current=date]{background:var(--green-100);color:var(--green-900);box-shadow:inset 0 0 0 2px var(--green-800)}.trip-week .day-heading>span{display:block}.trip-week .day-comma{display:none}.trip-week .day-empty>p{margin:0;padding:0 12px}.trip-week a.card{overflow-wrap:anywhere;border:1px solid var(--line);font:400 14px/20px var(--font-body);gap:4px;padding:12px}.trip-week .trip-time{font:600 16px/20px var(--font-body)}.trip-week .trip-card-top{flex-wrap:wrap;gap:4px}.trip-week .status-published{display:none}}@media (width>=1024px){.trip-columns{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:24px;display:grid}.trip-main,.trip-side{grid-template-columns:minmax(0,1fr);gap:24px;display:grid}.trip-main>section,.trip-side>section{border-radius:var(--radius);background:var(--surface);padding:24px}.trip-main h2,.trip-side h2{margin-top:0}.card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.vehicle-list{border-radius:var(--radius);background:var(--surface);gap:0;padding:8px 24px}.vehicle-list>li.card,.vehicle-head{border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) 176px;align-items:center;column-gap:16px;padding:12px 0;display:grid}.vehicle-list>li:last-child{border-bottom:0}.vehicle-list~form.card{max-width:560px}.vehicle-list form.card{background:var(--gray-0);margin:12px 0}.vehicle-list>li.card>:last-child{justify-self:end}.vehicle-head{color:var(--text-muted);font:500 14px/20px var(--font-body)}.vehicle-cells{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.vehicle-cells .sep{display:none}.profile-columns{grid-template-columns:minmax(0,560px);align-items:start;gap:24px;display:grid}.profile-columns:has(>.profile-team:not(:empty)){grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.profile-card{border-radius:var(--radius);background:var(--surface);padding:24px}.profile-card .cards .card{background:var(--gray-0)}.team-members>li{grid-template-columns:minmax(0,1fr) 220px;align-items:center}.team-members>li>span{overflow-wrap:anywhere;min-width:0}}@media (width>=1200px){.invite-form{grid-template-columns:200px minmax(0,1fr) auto;align-items:end}.editor .save{z-index:1;border-top:1px solid var(--line);background:var(--gray-0);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 16px;margin-top:0;padding:16px 0;display:flex;position:sticky;bottom:0}.editor .save>fieldset{flex-wrap:wrap;flex:1 1 0;align-items:center;column-gap:24px;min-width:0;display:flex}.editor .save>fieldset>.muted{flex-basis:100%;margin:0}.editor .save .toggle{min-height:40px}.editor .save>.button{min-height:var(--tap);padding:12px 24px}.editor .save>[role]{flex-basis:100%;order:1;margin:0}html:has(.editor){scroll-padding-bottom:240px}}@media (width>=1024px){.entry{background:var(--surface);flex-direction:column;align-items:center;gap:24px;min-height:100vh;padding:48px 16px;display:flex}.entry-brand{color:var(--text);font:700 20px/24px var(--font-body);align-items:center;gap:8px;text-decoration:none;display:flex}.entry-brand .icon{color:var(--green-800)}.entry>.page{border-radius:var(--radius);background:var(--gray-0);width:100%;max-width:464px;margin:0;padding:32px}.entry .profile-card{background:0 0;padding:0}.entry>.page>h1:first-child,.entry>.page>.account:first-child+h1{margin-top:0}}
