:root{--bg: #FBF4F6;--panel: #ffffff;--ink: #3A2A30;--muted: #7D6A71;--line: #EED9E1;--accent: #AD5F6A;--accent-soft: #F6E4EA;--danger: #b91c1c;--radius: 10px;font-family:Inter,system-ui,-apple-system,Segoe UI,Noto Sans Thai,sans-serif;color:var(--ink);background:var(--bg);font-size:14px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}button,input,select{font:inherit;color:inherit}.loading{display:grid;place-items:center;height:100%;color:var(--muted)}.app{display:grid;grid-template-columns:400px 1fr;height:100%}.sidebar{display:flex;flex-direction:column;gap:14px;padding:16px;overflow-y:auto;background:var(--panel);border-right:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px}.brand__logo{color:var(--accent);font-size:22px;line-height:1}.brand__name{font-weight:700;font-size:17px;letter-spacing:-.01em}.brand__provider{margin-left:auto;font-size:11px;padding:3px 8px;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-weight:600}.row{display:flex;gap:8px;align-items:center}.row--tight{gap:4px}input[type=text],input[type=search],input[type=date],input[type=time],input:not([type]),select{border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:#fff;min-width:0}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:8px;padding:7px 12px;cursor:pointer;font-weight:600;white-space:nowrap}.btn--ghost{background:transparent;color:var(--muted);border-color:transparent;padding:4px 8px;font-weight:500}.btn--ghost:hover{background:var(--bg);color:var(--ink)}.btn--danger:hover{color:var(--danger)}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:6px;width:28px;height:28px;cursor:pointer;display:grid;place-items:center;flex:none}.icon-btn:disabled{opacity:.35;cursor:default}.icon-btn--danger:hover:not(:disabled){color:var(--danger);border-color:var(--danger)}.trip{display:flex;flex-direction:column;gap:8px}.trip__select{flex:1}.trip__name{font-size:20px;font-weight:700;border-color:transparent!important;padding:4px 2px!important}.trip__name:hover{border-color:var(--line)!important}.days{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:10px}.day-tab{border:1px solid var(--line);background:#fff;border-radius:99px;padding:5px 12px;cursor:pointer}.day-tab.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.day-tab--add{border-style:dashed;color:var(--muted)}.day{display:flex;flex-direction:column;gap:6px}.day__label{flex:1;font-weight:600}.day__date{width:145px}.day__totals{color:var(--muted);font-size:13px}.search{position:relative}.search__input{width:100%;padding:10px 12px!important;font-size:15px}.search__spinner{position:absolute;right:12px;top:12px;width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.search__error{color:var(--danger);font-size:12px;margin-top:4px}.search__results{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 4px);list-style:none;margin:0;padding:4px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px #0000001f;max-height:320px;overflow-y:auto}.search__results li{padding:8px 10px;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;gap:2px}.search__results li span{color:var(--muted);font-size:12px}.search__results li.is-active{background:var(--accent-soft)}.stops{display:flex;flex-direction:column}.empty{color:var(--muted);text-align:center;padding:24px 8px}.stop{display:flex;gap:10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.stop.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.stop__badge{flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:12px}.stop__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.stop__name{all:unset;cursor:pointer;font-weight:600;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stop__name:hover{color:var(--accent)}.stop__addr{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stop__fields{display:flex;gap:6px;margin-top:4px}.stop__fields input[type=time]{width:96px;flex:none;padding:4px 6px}.stop__fields input[type=text]{flex:1;padding:4px 8px}.stop__actions{display:flex;flex-direction:column;gap:4px}.leg{display:flex;gap:10px;padding:0 10px}.leg__line{width:26px;flex:none;position:relative}.leg__line:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:2px dotted var(--line)}.leg__body{flex:1;padding:8px 0;display:flex;flex-direction:column;gap:6px}.leg__modes{display:flex;flex-wrap:wrap;gap:4px}.chip{border:1px solid var(--line);background:#fff;border-radius:99px;padding:3px 8px;font-size:12px;cursor:pointer;white-space:nowrap}.chip:disabled{opacity:.4;cursor:not-allowed}.chip.is-selected{color:#fff;border-color:transparent}.chip--drive.is-selected{background:#0f766e}.chip--motorbike.is-selected{background:#b45309}.chip--bicycle.is-selected{background:#4d7c0f}.chip--walk.is-selected{background:#7c3aed}.chip--transit.is-selected{background:#be123c}.leg__summary{font-size:12px}.muted{color:var(--muted)}.error{color:var(--danger)}.attribution{margin-top:auto;padding-top:12px;font-size:11px;color:var(--muted)}.map-wrap{position:relative;min-height:0}.map{height:100%;width:100%}.map--message{display:grid;place-items:center;color:var(--muted);padding:24px;text-align:center}.pin-wrap{background:none;border:none}.pin{width:30px;height:30px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--accent);border:2px solid #fff;box-shadow:0 2px 6px #00000059;display:grid;place-items:center}.pin span{transform:rotate(45deg);color:#fff;font-weight:700;font-size:12px}.pin--selected{background:var(--ink)}@media (max-width: 800px){.app{grid-template-columns:1fr;grid-template-rows:42vh 1fr}.map-wrap{grid-row:1}.sidebar{grid-row:2;border-right:none;border-top:1px solid var(--line)}}h3{margin:0;font-size:14px;font-weight:700;display:flex;align-items:center;gap:6px}.small{font-size:12px}.grow{flex:1;min-width:0}.row--wrap{flex-wrap:wrap}.warn{color:#b45309;font-size:12px}.tag{display:inline-block;font-style:normal;font-weight:500;font-size:11px;text-transform:capitalize;padding:1px 6px;border-radius:99px;background:var(--bg);color:var(--muted);margin-left:6px}.count{font-size:11px;font-weight:600;padding:0 6px;border-radius:99px;min-width:18px;text-align:center;background:var(--accent-soft);color:var(--accent)}.dot{width:10px;height:10px;border-radius:50%;flex:none}.btn:disabled{opacity:.45;cursor:default}.btn--small{padding:3px 8px;font-size:12px}input[type=number],input[type=datetime-local]{border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:#fff;min-width:0}.trip__dates{margin-right:auto}.tabs{display:flex;border-bottom:1px solid var(--line);gap:2px}.tab{flex:1;border:none;background:none;padding:8px 4px;cursor:pointer;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;display:flex;align-items:center;justify-content:center;gap:6px}.tab.is-active{color:var(--ink);border-bottom-color:var(--accent)}.setup,.places,.daypanel{display:flex;flex-direction:column;gap:12px}.card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:var(--radius);padding:12px}.field{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}.field input,.field select{color:var(--ink);font-size:13px}.field input[type=number]{width:62px;padding:4px 6px}.field--stack{flex-direction:column;align-items:stretch;flex:1;gap:2px}.check{display:flex;align-items:center;gap:6px;font-size:13px}.seg{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{flex:1;border:none;background:#fff;padding:6px;cursor:pointer}.seg button.is-on{background:var(--ink);color:#fff}.dest{display:flex;gap:4px;align-items:center}.dest input{flex:1;padding:5px 7px}.assign{display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-size:13px}.daymap{list-style:none;margin:0;padding:0;display:grid;gap:4px}.daymap li{display:flex;align-items:center;gap:8px}.daymap__day{flex:1;font-size:13px}.daymap__day em{color:var(--muted);font-style:normal}.daymap select{padding:3px 6px;border-width:2px}.booking{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:8px;background:var(--bg)}.booking input,.booking select{background:#fff}.endpoint{display:flex;flex-direction:column;gap:4px}.endpoint__terminal,.carrier{width:90px}.locfield{display:flex;align-items:center;gap:4px;font-size:12px}.locfield .search{flex:1}.locfield__ok{color:var(--accent);font-weight:600}.locfield__missing{color:var(--muted)}.search{display:flex;flex-direction:column;gap:6px}.search__box{position:relative}.search--compact .search__input{padding:6px 9px!important;font-size:13px}.search--compact .search__spinner{top:8px}.filters{display:flex;flex-wrap:wrap;gap:4px}.chip--on{background:var(--ink);color:#fff;border-color:var(--ink)}.wishlist,.clusters{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.wish{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:grab}.wish.is-selected{border-color:var(--accent)}.wish__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.wish select{width:92px;padding:3px 4px;font-size:12px}.clusters li{display:flex;gap:8px;align-items:flex-start}.clusters select{width:130px;padding:3px 4px;font-size:12px}.clusters .dot{margin-top:4px}.card--wish{padding:8px 12px}.card__toggle{all:unset;cursor:pointer;display:flex;align-items:center;gap:6px;font-weight:700}.card__chev{margin-left:auto;color:var(--muted)}.day-tab{border-width:2px}.day-tab small{opacity:.75;font-size:11px}.day-tab.is-active{color:#fff}.day__meta{gap:6px;font-size:13px}.day__meta select{padding:4px 6px}.day__meta input[type=time]{padding:3px 5px}.timeline{display:flex;flex-direction:column;min-height:60px}.timeline .empty.is-drop{outline:2px dashed var(--accent);border-radius:8px}.dropwrap{position:relative}.dropwrap.drop-before:before,.dropwrap.drop-after:after{content:"";position:absolute;left:0;right:0;height:3px;background:var(--accent);border-radius:2px;z-index:2}.dropwrap.drop-before:before{top:-2px}.dropwrap.drop-after:after{bottom:-2px}.stop{cursor:default}.stop__head{display:flex;align-items:baseline;gap:8px;min-width:0}.stop__head .stop__name{flex:1;min-width:0}.stop__time{font-variant-numeric:tabular-nums;font-weight:600;font-size:12px;color:var(--accent);white-space:nowrap}.stop__meta{display:flex;align-items:center;gap:4px;min-width:0}.stop__meta .tag{margin-left:0;flex:none}.stop__hours{font-size:12px;color:var(--muted)}.stop__fields{flex-wrap:wrap}.stop__fields .field input[type=time]{width:92px}.stop__fields input[type=text]{min-width:100px}.anchor{display:flex;gap:10px;padding:10px;border-radius:var(--radius);background:var(--bg);border:1px dashed #cfccc2}.anchor.is-selected{border-color:var(--accent);border-style:solid}.anchor--depart,.anchor--arrive{background:#eef2f7}.anchor__icon{width:26px;text-align:center;font-size:18px;flex:none}.anchor__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.anchor .stop__name:disabled{cursor:default;color:inherit}.leg--ride .leg__line:before{border-left-style:solid;border-left-color:#94a3b8}.leg__summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.navlink{margin-left:auto;font-size:12px;color:var(--accent);text-decoration:none;font-weight:600;white-space:nowrap}.navlink:hover{text-decoration:underline}.pin--muted{opacity:.55;transform:rotate(-45deg) scale(.8)}.legend{position:absolute;z-index:500;left:12px;bottom:24px;max-width:60%;display:flex;flex-wrap:wrap;gap:4px 10px;padding:8px 10px;font-size:12px;background:#fffffff0;border-radius:8px;box-shadow:0 2px 8px #00000026}.legend span{display:inline-flex;align-items:center;gap:4px}.legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.booking .row{flex-wrap:wrap}.booking .row>*{min-width:0}.booking .field--stack{min-width:170px}.booking select{flex:none}.carrier{width:70px}.booking .grow{min-width:110px}.sidebar{overflow-x:hidden}.landing{min-height:100%;display:grid;place-items:center;padding:24px 16px;background:var(--bg)}.landing__card{width:min(440px,100%);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:28px 24px;display:flex;flex-direction:column;gap:14px;align-items:stretch}.landing h1{font-size:20px;line-height:1.3;margin:0;letter-spacing:-.01em}.landing__points{margin:0;padding-left:18px;color:var(--muted);display:grid;gap:4px}.brand--big .brand__logo{font-size:28px}.brand--big .brand__name{font-size:22px}.gbtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:40px;padding:0 12px;border-radius:20px;cursor:pointer;background:#fff;color:#1f1f1f;border:1px solid #747775;font-family:Roboto,Segoe UI,system-ui,sans-serif;font-weight:500;font-size:14px;letter-spacing:.25px}.gbtn:hover:not(:disabled){background:#f8faff;box-shadow:0 1px 2px #3c40434d}.gbtn:disabled{opacity:.5;cursor:not-allowed}.gbtn--compact{height:32px;padding:0 10px;gap:8px;font-size:13px;border-radius:16px}.linklike{all:unset;cursor:pointer;color:var(--accent);font-weight:600;text-align:center;font-size:13px}.linklike:hover{text-decoration:underline}.brand .brand__provider{margin-left:0}.brand__name{margin-right:auto}.nav-account{display:flex;align-items:center;gap:8px}.sync{font-size:11px;color:var(--muted);white-space:nowrap}.sync--offline,.sync--error{color:#b45309}.account{position:relative}.account__btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);padding:0;overflow:hidden;cursor:pointer;background:var(--accent);color:#fff;font-weight:700;display:grid;place-items:center}.account__btn img{width:100%;height:100%;object-fit:cover}.account__menu{position:absolute;right:0;top:calc(100% + 6px);z-index:2000;min-width:220px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:10px;box-shadow:0 10px 30px #0000001f;display:flex;flex-direction:column;gap:8px}.account__who{display:flex;flex-direction:column;gap:2px;overflow-wrap:anywhere}.banner{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 10px;font-size:13px;border-radius:8px;background:var(--bg);color:var(--muted)}.banner--info{background:var(--accent-soft);color:var(--ink)}.notice{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-size:13px;background:#fef3c7;color:#78350f}.notice span{flex:1}.modal{border:none;border-radius:16px;padding:24px;width:min(400px,calc(100% - 32px));box-shadow:0 20px 60px #00000040}.modal[open]{display:flex;flex-direction:column;gap:12px}.modal::backdrop{background:#1c232173}.modal h2{margin:0;font-size:18px}.modal p{margin:0}.card{padding:0;gap:0}.card__head{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:8px;width:100%;padding:12px;cursor:pointer;border-radius:var(--radius)}.card__head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.card__head h3{flex:1}.card__chev{color:var(--muted);transition:transform .15s}.card--closed .card__chev{transform:rotate(-90deg)}.card__body{border:0;margin:0;padding:0 12px 12px;min-width:0;display:flex;flex-direction:column;gap:8px}.card__body:disabled input,.card__body:disabled select{background:var(--bg);color:var(--ink);opacity:1}.card__body:disabled .btn--ghost{display:none}.card--wish .card__head{padding:10px 12px}.map-toggle{border:1px solid var(--line);background:#fff;border-radius:99px;padding:4px 10px;font-size:12px;cursor:pointer;white-space:nowrap}.map-toggle.is-on{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.app--map-closed{grid-template-columns:1fr}.app--map-closed .map-wrap{display:none}.app--map-closed .sidebar{max-width:760px;width:100%;margin:0 auto;border-right:none}.trip__name--ro{margin:0;font-size:20px;font-weight:700;padding:4px 2px}.day__label--ro{margin:0;font-size:16px;flex:1}.ro-badge{font-size:12px;font-weight:600;padding:2px 8px;border-radius:99px;background:#fef3c7;color:#78350f}.chip--ro{cursor:default}.btn--share{color:var(--accent);font-weight:600}.maps-link{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border-radius:6px;color:var(--accent);text-decoration:none}.maps-link:hover{background:var(--accent-soft)}.navlinks{margin-left:auto;display:inline-flex;align-items:center;gap:6px}.navlink--primary{background:var(--accent);color:#fff!important;padding:4px 10px;border-radius:99px;text-decoration:none!important}.navlink--primary:hover{filter:brightness(.92)}.navlink--alt{color:var(--muted)!important;font-weight:500;font-size:11px}.stop{padding:8px 10px;align-items:flex-start}.stop__head{align-items:center}.stop__more{border:none;background:none;cursor:pointer;width:28px;height:28px;flex:none;color:var(--muted);border-radius:6px;transform:rotate(-90deg);transition:transform .15s}.stop.is-open .stop__more{transform:none}.stop__more:hover{background:var(--bg)}.stop__note{font-size:12px;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.stop__details{display:flex;flex-direction:column;gap:6px;margin-top:4px}.stop__details .stop__meta{flex-wrap:wrap}.stop__details .stop__addr{white-space:normal}.stop__actions{flex-direction:row;flex-wrap:wrap;gap:6px;align-items:center}.anchor .stop__actions{flex-direction:column}.modal--wide{width:min(560px,calc(100% - 24px));max-height:calc(100% - 24px)}.modal__head{display:flex;align-items:center;gap:8px}.modal__head h2{flex:1;overflow-wrap:anywhere}.share-add{display:flex;gap:6px;flex-wrap:wrap}.share-add input{flex:1 1 200px;border:1px solid var(--line);border-radius:8px;padding:8px 10px}.share-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:40vh;overflow-y:auto}.share-list li{display:flex;align-items:center;gap:10px;padding:6px 4px;border-radius:8px}.share-list li.is-pending{opacity:.8}.share-avatar{width:32px;height:32px;border-radius:50%;flex:none;overflow:hidden;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700}.share-avatar img{width:100%;height:100%;object-fit:cover}.share-who{flex:1;min-width:0;display:flex;flex-direction:column;overflow-wrap:anywhere}.share-role{font-size:12px;color:var(--muted);white-space:nowrap}.share-list select{padding:4px 6px;font-size:12px}.share-public{border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:8px}.share-public p{margin:0}.share-link{display:flex;gap:6px}.share-link input{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:13px}@media (max-width: 800px){:root{font-size:15px}.app{height:100dvh;grid-template-rows:38vh 1fr}.app--map-closed{grid-template-rows:1fr}.sidebar{padding:12px;gap:12px}.brand{flex-wrap:wrap}.brand__name{font-size:16px}.icon-btn,.maps-link,.stop__more{width:36px;height:36px}.btn,.chip,.day-tab,.tab{min-height:36px}.chip{padding:6px 10px}.days{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.days::-webkit-scrollbar{display:none}.day-tab{flex:none}.tabs{position:sticky;top:-12px;z-index:5;background:var(--panel)}input,select{font-size:16px}.stop__fields input[type=text]{flex-basis:100%}.leg{padding:0 4px}.leg__summary{font-size:13px}.navlink--primary{padding:7px 12px}.legend{max-width:calc(100% - 24px);bottom:12px}.wish{flex-wrap:wrap}.leg__modes{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.leg__modes::-webkit-scrollbar{display:none}.leg__modes .chip{flex:none}}.autocomplete input{width:100%}.booking .autocomplete.carrier{width:160px;flex:none}.booking .autocomplete.carrier input{width:100%}.airport{display:flex;flex-direction:column;gap:3px}.airport__status{color:var(--accent);font-weight:600}.airport__status--missing{color:var(--muted);font-weight:400}.booking__route{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;padding:2px 2px 0;letter-spacing:.02em}.booking__arrow{color:var(--accent)}.side{display:flex;flex-direction:column;gap:6px;padding:8px 10px 10px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px}.side--arr{border-left-color:#1d4ed8}.side__title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.side__when{align-items:flex-end}.booking .side__terminal{flex:0 1 120px;min-width:100px}.day__heading{margin:0;flex:1;min-width:0;display:flex;align-items:center;gap:6px;font-size:15px;flex-wrap:wrap}.day__prefix{font-weight:700;white-space:nowrap}.day__sep{color:var(--muted)}.day__heading .day__label{flex:1 1 160px;min-width:120px;font-size:14px}.day-tab__title{display:inline-block;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.day__hide{color:var(--muted);font-size:13px}.hidden-past{all:unset;cursor:pointer;text-align:center;font-size:12px;color:var(--muted);padding:6px;border:1px dashed var(--line);border-radius:8px;margin-bottom:6px}.hidden-past:hover{color:var(--ink);border-color:var(--muted)}.badge{font-size:11px;font-weight:700;padding:1px 7px;border-radius:99px;white-space:nowrap}.badge--manual{background:#fef3c7;color:#92400e}.checkin{flex:none;width:28px;height:28px;border-radius:50%;border:2px solid var(--line);background:#fff;cursor:pointer;color:var(--muted);font-weight:700;font-size:12px;display:grid;place-items:center;padding:0}.checkin:hover{border-color:#16a34a;color:#16a34a}.checkin.is-done{width:auto;border-radius:99px;padding:0 8px;background:#16a34a;border-color:#16a34a;color:#fff}.checkin--big{width:100%;height:auto;min-height:44px;border-radius:10px;margin-top:6px;font-size:15px;background:#16a34a;border-color:#16a34a;color:#fff}.checkin--big:hover{background:#15803d;color:#fff}.checkin--big.is-done{background:#fff;color:#166534;border-color:#86efac;padding:0}.stop.is-visited{background:#f8faf8}.stop.is-visited .stop__name{color:var(--muted);text-decoration:line-through;text-decoration-color:#86efac}.stop.is-visited .stop__badge{background:#16a34a}.stop__status{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#1d4ed8}.chip--custom{border-style:dashed}.chip--custom.chip--on{border-style:solid;background:#92400e;border-color:#92400e}.leg__manual{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.leg--manual .leg__line:before{border-left-color:#f59e0b;border-left-style:dashed}.override{display:flex;flex-wrap:wrap;gap:8px 14px;padding:8px;background:#fffbeb;border-radius:8px}.override select{padding:3px 4px;font-size:12px}.modes{flex:none}.modes button{padding:4px 10px;font-size:12px;font-weight:600;white-space:nowrap}.banner--travel{background:var(--ink);color:#fff;font-weight:600}.app--travel .sidebar{background:#f3f4f6}.app--travel .stop{padding:12px;border:2px solid #d1d5db;border-radius:14px;cursor:default;box-shadow:0 1px 3px #0000000f}.app--travel .stop__name{font-size:17px;color:#111827}.app--travel .stop__badge{width:32px;height:32px;font-size:14px}.app--travel .stop.is-next{border-color:#1d4ed8;box-shadow:0 0 0 3px #dbeafe;background:#fff}.app--travel .stop.is-visited{opacity:.7;border-style:dashed}.app--travel .stop.is-visited .checkin--big{min-height:36px;font-size:13px}.app--travel .stop__time{font-size:14px;color:#111827}.app--travel .anchor{border:2px solid #d1d5db;border-radius:14px;background:#fff}.app--travel .leg__body{padding:10px 0}.app--travel .leg__summary{font-size:14px;font-weight:600;color:#111827;gap:8px}.app--travel .navlinks{margin-left:0;width:100%;flex-wrap:wrap}.app--travel .navlink--primary{flex:1;text-align:center;font-size:15px;padding:11px 14px;border-radius:12px}.app--travel .day-tab{background:#fff}@media (max-width: 800px){.checkin:not(.checkin--big){width:36px;height:36px}.booking .autocomplete.carrier{width:100%;flex:1 1 140px}.modes button{padding:6px 8px}}@media print{.app{display:block;height:auto}.map-wrap,.tabs,.search,.filters,.navlinks,.leg__modes,.stop__more,.checkin,.icon-btn,.btn,.modes,.map-toggle,.nav-account,.banner,.card--wish,.hidden-past,.day__hide{display:none!important}.sidebar{overflow:visible;border:none}.stop,.anchor{break-inside:avoid}}.override .field input[type=number]{width:56px}.override .field input[aria-label^=Distance]{width:84px}.brand{flex-wrap:wrap;row-gap:6px}.brand__name{white-space:nowrap}.autocomplete .search__results{min-width:260px}.booking__route{min-width:0;overflow:hidden;white-space:nowrap}.booking__route>span:not(.booking__arrow){overflow:hidden;text-overflow:ellipsis;min-width:0}.app--travel .stop__head{flex-wrap:wrap;row-gap:2px}.app--travel .stop__head .stop__name{white-space:normal;flex-basis:60%}.card__bar{display:flex;align-items:center;gap:4px;padding-right:8px}.card__bar .card__head{flex:1;min-width:0;width:auto}.row--top{align-items:flex-start}.placefield{display:flex;flex-direction:column;gap:3px}.placefield .row{gap:4px}.placefield__status{display:flex;align-items:center;gap:8px;color:var(--muted)}.placefield__status--missing{color:#b45309}.btn.is-on{background:var(--ink);color:#fff}.pickcard{position:absolute;z-index:600;left:12px;right:12px;bottom:24px;max-width:420px;background:#fff;border-radius:12px;padding:10px 12px;box-shadow:0 8px 30px #0003;display:flex;flex-direction:column;gap:6px}.pickcard__head{display:flex;align-items:center;gap:6px}.pickcard__name{flex:1;min-width:0;font-size:15px}.pickcard__addr{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.pickbanner{position:absolute;z-index:600;top:12px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:6px 8px 6px 14px;border-radius:99px;background:#4c1d95;color:#fff;font-weight:600;font-size:13px;box-shadow:0 4px 16px #00000040;white-space:nowrap;max-width:calc(100% - 24px)}.pickbanner .btn--ghost{color:#ddd6fe}.pickbanner .btn--ghost:hover{background:#ffffff1f;color:#fff}.anchor__time{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-top:2px}.anchor__time input{padding:3px 5px;font-size:13px;color:var(--ink)}@media (max-width: 800px){.pickcard{bottom:12px}}.card__head h3{flex:0 1 auto;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.card__head .card__chev{margin-left:auto}.reorder-item{position:relative}.reorder-item>*{transition:transform .15s,box-shadow .15s}.reorder-item.is-holding>*{transform:scale(.985);transition:transform .6s ease-in}.reorder-item.is-dragging{z-index:20;pointer-events:none}.reorder-item.is-dragging>*{background:#fff;box-shadow:0 12px 32px #0000002e;transform:scale(1.01)}.reorder-item.drop-before:before,.reorder-item.drop-after:after{content:"";position:absolute;left:0;right:0;height:3px;background:var(--accent);border-radius:2px}.reorder-item.drop-before:before{top:-8px}.reorder-item.drop-after:after{bottom:-8px}.setup.is-reordering,.setup.is-reordering *,.places.is-reordering,.places.is-reordering *,.timeline.is-reordering,.timeline.is-reordering *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.stop__badge{cursor:grab}.stop__badge,.stop__name{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.day-tab.is-drop-target{outline:3px solid var(--accent);outline-offset:2px;transform:scale(1.06)}.settings{position:relative;flex:none}.settings__btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:16px;line-height:1;display:grid;place-items:center;padding:0}.settings__btn:hover,.settings__btn[aria-expanded=true]{background:var(--accent-soft);border-color:transparent}.settings__menu{position:fixed;z-index:2000;overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px;box-shadow:0 10px 30px #0000001f;display:flex;flex-direction:column;gap:12px}.settings__group{display:flex;flex-direction:column;gap:6px}.settings__label{font-size:12px;font-weight:700;color:var(--muted)}.landing .brand .settings{margin-left:auto}.time-input{width:92px;flex:none;font-variant-numeric:tabular-nums}.time-input.is-bad{border-color:var(--danger)!important;background:#fef2f2!important}.anchor__time .time-input,.stop__fields .time-input{padding:3px 6px;font-size:13px}.day__meta .time-input{padding:3px 6px}.datetime-input{display:flex;gap:4px;min-width:0}.datetime-input input[type=date]{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:#fff}.datetime-input .time-input{width:96px}.btn--retry{color:var(--accent);font-weight:600}.leg__manual--toggle{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;padding:2px 6px 2px 2px;border-radius:6px}.leg__manual--toggle:hover{background:#fffbeb}.leg__manual--toggle:focus-visible{outline:2px solid var(--accent)}.leg__chev{color:var(--muted);transform:rotate(-90deg);transition:transform .15s;display:inline-block}.leg__chev.is-open{transform:none}.themes{display:grid;grid-template-columns:1fr 1fr;gap:6px}.theme-opt{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:5px;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;min-width:0}.theme-opt:hover{border-color:var(--muted)}.theme-opt:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.theme-opt.is-on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.theme-opt__swatches{display:flex;gap:3px}.theme-opt__swatches i{width:14px;height:14px;border-radius:50%;display:block;box-shadow:inset 0 0 0 1px #00000014}.theme-opt__name{font-size:12px;font-weight:600;line-height:1.25;overflow-wrap:anywhere}.themes .theme-opt:first-child:nth-last-child(8){grid-column:1 / -1}
