:root{--font: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--bg: #0b0e13;--bg-tint: #0f131a;--surface: #141922;--surface-2: #1b212c;--surface-3: #242b38;--glass: rgb(20 25 34 / .86);--text: #eef2f7;--text-2: #c3cad6;--muted: #8a93a3;--border: #222936;--border-strong: #303848;--brand: #4f9cff;--brand-2: #3d7fe0;--brand-ink: #ffffff;--brand-soft: rgb(79 156 255 / .13);--brand-line: rgb(79 156 255 / .35);--grad: linear-gradient(180deg, #5aa4ff, #3f86ec);--amber: #f2b45a;--coral: var(--brand);--pink: var(--brand-2);--accent: #7cc4ff;--c1: #7cb8ff;--c2: #5fd0c3;--c3: #b7a4ff;--c4: #f2b45a;--warn-bg: rgb(242 180 90 / .13);--warn-text: #f2c27a;--danger: #f2667a;--danger-bg: rgb(242 102 122 / .13);--ok: #5ccf8f;--ok-bg: rgb(92 207 143 / .12);--tint: rgb(255 255 255 / .03);--shadow-sm: 0 1px 2px rgb(0 0 0 / .4);--shadow: 0 1px 2px rgb(0 0 0 / .3), 0 10px 28px -12px rgb(0 0 0 / .65);--shadow-lg: 0 24px 56px -20px rgb(0 0 0 / .75);--brand-shadow: 0 6px 18px -8px rgb(63 134 236 / .55);--glow: 0 0 0 1px var(--brand-line);--radius-sm: 10px;--radius: 16px;--radius-lg: 20px;--topbar: 60px;--ease: cubic-bezier(.2, .8, .2, 1);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.15;margin:0 0 .4em;letter-spacing:-.02em}h1{font-size:2rem;font-weight:600}h2{font-size:1.3rem;font-weight:650}h3{font-size:1.05rem;font-weight:700}p{margin:0 0 .75em}button{font:inherit;color:inherit}.icon{flex:none}.muted{color:var(--muted)}.small{font-size:.84rem}.nowrap{white-space:nowrap}.error{color:var(--danger)}.danger{color:var(--danger)!important}.center{display:grid;place-items:center;text-align:center;min-height:50vh;padding:24px 16px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}::selection{background:var(--brand-soft)}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.grad-text{color:var(--brand)}.app{min-height:100%;display:flex;flex-direction:column}.app-full{height:100%;overflow:hidden}.topbar{height:var(--topbar);flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px;position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:1.12rem;color:var(--text);letter-spacing:-.02em}.brand:hover{text-decoration:none}.brand-mark{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-2) 60%,var(--accent));box-shadow:var(--shadow-sm)}.topnav{display:flex;align-items:center;gap:6px}.main{flex:1;min-height:0}.page{max-width:1120px;margin:0 auto;padding:36px 20px 80px;animation:fade-up .35s var(--ease)}.page.narrow{max-width:680px}.section{margin-bottom:40px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.btn{font-family:var(--font);display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:650;font-size:.92rem;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .08s,box-shadow .15s,filter .15s}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--text);border-color:var(--text);color:var(--bg)}.btn-primary:hover{background:var(--text);filter:brightness(.92)}.btn-brand{background:var(--grad);border:0;color:var(--brand-ink);font-weight:600;box-shadow:var(--brand-shadow)}.btn-brand:hover{background:var(--grad);filter:brightness(1.08)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:var(--surface-2)}.btn-soft{background:var(--surface-2);border-color:transparent}.btn-soft:hover{background:var(--surface-3)}.btn-sm{height:32px;padding:0 12px;font-size:.84rem}.btn-lg{height:52px;padding:0 26px;font-size:1.02rem}.btn-icon{width:34px;height:34px;padding:0;border-radius:50%}.btn-icon.btn-sm{width:28px;height:28px}.link{background:none;border:0;padding:0;color:var(--brand);cursor:pointer;font-weight:600}input,select,textarea{width:100%;height:46px;padding:0 14px;border-radius:12px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:inherit;transition:border-color .15s,box-shadow .15s}textarea{height:auto;padding:10px 14px;resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 18%,transparent)}.btn:focus-visible,.chip:focus-visible,.tab:focus-visible,.stop:focus-visible{outline:2px solid var(--brand);outline-offset:2px}input:disabled{opacity:.55}.inline-input{height:auto;border-color:transparent;background:transparent;padding:2px 8px;margin-left:-8px;border-radius:8px}.inline-input:hover{background:var(--surface-2)}.inline-input:focus{background:var(--surface)}.avatar{width:34px;height:34px;border-radius:50%;border:2px solid var(--surface);background:var(--brand-soft);color:var(--brand);display:inline-grid;place-items:center;overflow:hidden;font-weight:600;font-size:.85rem;cursor:pointer;padding:0;flex:none;box-shadow:var(--shadow-sm)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.small{width:26px;height:26px;font-size:.7rem;cursor:default}.chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-2);font-size:.86rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s var(--ease)}.chip:hover{border-color:var(--text-2)}.chip.on{background:var(--brand);border-color:transparent;color:var(--brand-ink);font-weight:600}.chip .dot{width:8px;height:8px;border-radius:50%}.pill{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:650;background:var(--surface-2);color:var(--text-2)}.alert{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-radius:12px;background:var(--warn-bg);color:var(--warn-text);font-size:.9rem}.hint{padding:12px 14px;border-radius:12px;background:var(--brand-soft);font-size:.9rem}.skeleton{border-radius:12px;background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite linear}.spinner{width:18px;height:18px;border-radius:50%;border:2.5px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}.landing{position:relative;overflow:hidden}.landing:before{content:"";position:absolute;inset:-20% -10% auto;height:720px;z-index:-1;filter:blur(60px);opacity:.55;background:radial-gradient(40% 50% at 20% 30%,color-mix(in srgb,var(--brand-2) 55%,transparent),transparent),radial-gradient(35% 45% at 80% 20%,color-mix(in srgb,var(--accent) 45%,transparent),transparent),radial-gradient(30% 40% at 60% 70%,color-mix(in srgb,#8b5cf6 30%,transparent),transparent)}.hero{max-width:760px;margin:0 auto;padding:88px 20px 40px;text-align:center;animation:fade-up .5s var(--ease)}.hero h1{font-size:clamp(2.4rem,7vw,4.2rem);line-height:1.02;letter-spacing:-.04em}.hero h1 em{font-style:normal;background:linear-gradient(120deg,var(--brand),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:1.15rem;color:var(--text-2);max-width:560px;margin:18px auto 30px}.signin-box{display:grid;gap:14px;justify-items:center}.btn-google{height:54px;padding:0 28px;font-size:1.02rem}.dev-login{display:flex;gap:8px;width:100%;max-width:420px}.features{max-width:1040px;margin:40px auto 80px;padding:0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.feature{padding:22px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 80%,transparent);border:1px solid var(--border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.feature-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);margin-bottom:14px}.feature p{color:var(--text-2);margin:0;font-size:.93rem}.home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:26px;flex-wrap:wrap}.home-head h1{margin:0}.trip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.trip-card{display:flex;flex-direction:column;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);color:var(--text);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s var(--ease),box-shadow .2s var(--ease)}.trip-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);text-decoration:none}.cover{position:relative;height:128px;display:flex;align-items:flex-end;padding:14px 16px;color:#fff;overflow:hidden}.cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 30%,rgb(0 0 0 / .35))}.cover-emoji{position:absolute;right:14px;top:12px;font-size:1.25rem;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#ffffff24;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgb(255 255 255 / .18)}.cover-dest{position:relative;z-index:1;font-weight:600;font-size:1.15rem;letter-spacing:-.02em;text-shadow:0 1px 8px rgb(0 0 0 / .25)}.trip-card-body{padding:14px 16px 16px;display:grid;gap:6px}.trip-card-title{font-weight:700}.trip-card-meta{display:flex;gap:6px;flex-wrap:wrap}.new-card{display:grid;place-items:center;min-height:230px;border:2px dashed var(--border-strong);border-radius:var(--radius-lg);color:var(--muted);font-weight:700;gap:8px;transition:all .2s}.new-card:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-soft);text-decoration:none}.empty{text-align:center;padding:72px 20px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.empty-emoji{font-size:3rem;margin-bottom:8px}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:28px;display:grid;gap:22px;margin-top:22px}.field{display:grid;gap:8px}.field-label{font-weight:700;font-size:.9rem;display:flex;justify-content:space-between;gap:8px}.field-label .muted{font-weight:500}.big-input{height:58px;font-size:1.12rem;font-weight:600;padding-left:46px}.input-wrap{position:relative}.input-wrap .icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--muted)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stepper{display:flex;align-items:center;height:46px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface)}.stepper button{width:44px;height:100%;border:0;background:none;font-size:1.2rem;cursor:pointer;color:var(--text-2)}.stepper button:hover{color:var(--text)}.stepper button:disabled{opacity:.3}.stepper output{flex:1;text-align:center;font-weight:700}.segmented{display:flex;padding:4px;gap:4px;border-radius:12px;background:var(--surface-2);height:46px}.segmented button{flex:1;border:0;border-radius:9px;background:none;cursor:pointer;font-weight:650;font-size:.86rem;color:var(--text-2)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.toggle{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:var(--surface-2);cursor:pointer;font-weight:600}.toggle input{width:20px;height:20px;accent-color:var(--brand)}.chips{display:flex;flex-wrap:wrap;gap:8px}.city-row{display:grid;grid-template-columns:1fr 130px 34px;gap:8px;align-items:center}.planning{display:grid;place-items:center;min-height:calc(100vh - var(--topbar));padding:24px}.planning-card{width:100%;max-width:440px;text-align:center;animation:fade-up .4s var(--ease)}.globe{font-size:3.4rem;display:inline-block;animation:spin 6s linear infinite;margin-bottom:10px}.steps{list-style:none;padding:0;margin:24px 0 0;text-align:left;display:grid;gap:10px}.steps li{display:flex;gap:10px;align-items:center;color:var(--muted);transition:color .3s}.steps li.done{color:var(--text-2)}.steps li.now{color:var(--text);font-weight:700}.step-dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);flex:none}.steps li.done .step-dot{background:var(--brand);color:var(--brand-ink)}.steps li.now .step-dot{background:var(--text);color:var(--bg)}.trip{position:relative;height:calc(100vh - var(--topbar));height:calc(100dvh - var(--topbar));overflow:hidden}.trip-map{position:absolute;top:0;right:0;bottom:0;left:0;background:#0e0c14}.trip-map .map{position:absolute;top:0;right:0;bottom:0;left:0}.map-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted)}.maplibregl-ctrl-group{background:var(--glass)!important;border-radius:14px!important;box-shadow:var(--shadow)!important}.maplibregl-ctrl-group button+button{border-top-color:var(--border)!important}.maplibregl-ctrl-icon{filter:invert(1) opacity(.85)}.maplibregl-ctrl-attrib{background:var(--glass)!important;color:var(--muted)!important}.maplibregl-ctrl-attrib a{color:var(--muted)!important}.day-filter{position:absolute;z-index:3;top:16px;left:476px;right:64px;display:flex;gap:6px;overflow-x:auto;padding:2px;scrollbar-width:none}.day-filter .chip{background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:transparent;box-shadow:var(--shadow)}.day-filter .chip.on{background:var(--brand)}.panel{position:absolute;z-index:4;top:16px;bottom:16px;left:16px;width:444px;display:flex;flex-direction:column;background:var(--glass);-webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);border:1px solid rgb(255 255 255 / .06);border-radius:28px;box-shadow:var(--shadow-lg);overflow:hidden}.sheet-handle{display:none}.panel-head{padding:18px 20px 14px}.eyebrow{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.trip-title{font-size:1.55rem;font-weight:700;letter-spacing:-.02em;width:100%;color:var(--text);margin:2px 0 8px;line-height:1.15}input.trip-title{height:auto;padding:2px 8px;margin-left:-8px}.trip-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.save-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);display:inline-block}.save-dot.saving,.save-dot.unsaved{background:var(--amber)}.trip-summary{margin:10px 0 0;font-size:.88rem;color:var(--text-2)}.trip-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 14px 12px;border-bottom:1px solid var(--border)}.tabs{display:flex;gap:2px;padding:4px;border-radius:999px;background:var(--surface-2);min-width:0;overflow-x:auto;scrollbar-width:none}.tab{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:0;border-radius:999px;background:none;font:inherit;font-weight:600;font-size:.85rem;color:var(--muted);cursor:pointer;white-space:nowrap;transition:all .15s}.tab:hover{color:var(--text)}.tab.on{background:var(--grad);color:var(--brand-ink)}.tools{display:flex;gap:0;margin:-8px -8px -8px 0}.head-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.trip-bar .tabs{flex:1;justify-content:space-between}.panel-scroll{flex:1;overflow-y:auto;overscroll-behavior:contain}.trip-content{padding:14px 14px 40px;animation:fade-up .25s var(--ease)}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}.tile{background:var(--surface-2);border-radius:14px;padding:8px 10px;min-width:0}.tile small{display:block;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.tile b{display:block;font-size:1.1rem;font-weight:650;letter-spacing:-.01em;white-space:nowrap;color:var(--g, var(--text));font-variant-numeric:tabular-nums}.map-pin{width:32px;height:38px;border:0;padding:0;background:none;cursor:pointer;display:grid;place-items:start center}.map-pin i{width:30px;height:30px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);border:2.5px solid #0c0a12;color:#0c0a12;box-shadow:0 0 0 1px #ffffff26,0 2px 6px #00000059;display:grid;place-items:center;transition:transform .15s var(--ease)}.map-pin span{transform:rotate(45deg);font-weight:700;font-size:.8rem;font-style:normal}.map-pin:hover i,.map-pin.focus i{transform:rotate(-45deg) scale(1.25)}.map-pin.focus{z-index:5}.map-bk{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;font-size:17px;background:var(--surface);border:1.5px solid var(--border-strong);box-shadow:var(--shadow);cursor:default}.days{display:grid;gap:14px}.city-head{display:flex;align-items:center;gap:10px;margin:8px 4px 0}.city-head h2{margin:0;font-size:1.15rem;font-weight:700}.transfer{display:flex;gap:12px;align-items:center;padding:12px 14px;border-radius:var(--radius);background:var(--surface);border:1px dashed var(--border-strong)}.transfer-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);color:var(--amber);flex:none}.transfer-body{flex:1;min-width:0}.day{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px}.day-head{display:flex;align-items:flex-start;gap:12px}.day-badge{width:44px;height:44px;border-radius:14px;color:#0c0a12;display:grid;place-items:center;flex:none;font-weight:700;line-height:1;text-align:center;box-shadow:0 0 20px -4px var(--dc)}.day-badge small{display:block;font-size:.56rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;opacity:.75;margin-bottom:2px}.day-title{flex:1;min-width:0}.day-date{font-size:.78rem;color:var(--muted);font-weight:600}.day-name{font-weight:700;font-size:1.02rem}.day-title .inline-input{font-weight:700;font-size:1.02rem;width:100%}.day-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.weather{font-size:.86rem;font-weight:700;white-space:nowrap}.day-stats{font-size:.76rem;color:var(--muted);font-weight:700}.events{display:grid;gap:6px;margin-top:10px}.event{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;background:var(--surface-2);font-size:.84rem;font-weight:700;color:var(--text-2)}.event .ic{width:26px;height:26px;border-radius:9px;display:grid;place-items:center;background:var(--surface-2);flex:none}.event.warn{background:var(--warn-bg);color:var(--warn-text)}.optimize-banner{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0 0;padding:8px 8px 8px 12px;border-radius:14px;background:var(--brand-soft);font-size:.85rem;font-weight:600;color:var(--text)}.stops{list-style:none;margin:12px 0 0;padding:0;min-height:30px;position:relative}.empty-day{padding:18px;border:1.5px dashed var(--border-strong);border-radius:14px;text-align:center}.leg{display:flex;align-items:center;gap:6px;padding:6px 0 6px 16px;margin-left:13px;border-left:2px dotted var(--border-strong);font-size:.76rem;color:var(--muted);font-weight:700}.leg.from-base{margin-top:0}.stop{display:flex;gap:12px;padding:10px;margin:0 -4px;border-radius:16px;cursor:pointer;touch-action:manipulation;transition:background .15s;position:relative}.stop:hover{background:var(--surface-2)}.stop.focused{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand-line)}.stop.dragging{background:var(--surface-2);box-shadow:var(--shadow-lg);font-weight:600;cursor:grabbing}.stop-num{width:28px;height:28px;border-radius:10px;color:#0c0a12;display:grid;place-items:center;font-weight:700;font-size:.8rem;flex:none;cursor:grab;touch-action:none}.stop-body{flex:1;min-width:0}.stop-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.stop-name{font-weight:600}.stop-time{font-size:.8rem;color:var(--amber);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.stop-desc{font-size:.85rem;color:var(--text-2);margin:3px 0 0}.badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;padding:3px 9px;border-radius:8px;background:var(--surface-3);color:var(--text-2)}.badge-warn{background:var(--warn-bg);color:var(--warn-text)}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-bad{background:var(--danger-bg);color:var(--danger)}.exception{font-size:.8rem;color:var(--warn-text);margin-top:5px;display:flex;gap:5px}.note{margin-top:8px;padding:8px 10px;border-radius:12px;background:var(--surface-2);border-left:2px solid var(--border-strong);font-size:.84rem;color:var(--text-2);white-space:pre-wrap}.note-edit{width:100%;min-height:64px;font-size:.86rem;border-radius:12px;margin-top:8px}.stop-actions{display:flex;gap:2px;align-items:center;margin-top:6px;flex-wrap:wrap}.stop-actions select{width:auto;height:28px;padding:0 8px;font-size:.78rem;border-radius:999px;background:var(--surface-2);border-color:transparent}.stop-edit{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;padding:12px;border-radius:14px;background:var(--surface-2);font-size:.8rem;font-weight:600}.stop-edit label{display:grid;gap:4px}.stop-edit .wide{grid-column:1 / -1}.stop-edit input{height:36px}.day-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.add-stop{margin-top:10px;display:grid;gap:8px}.results{list-style:none;margin:0;padding:4px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2);box-shadow:var(--shadow)}.results:empty{display:none}.results button{display:flex;gap:8px;align-items:center;width:100%;text-align:left;padding:9px 10px;border-radius:10px;background:none;border:0;font-size:.88rem;cursor:pointer;color:var(--text)}.results button:hover{background:var(--surface-3)}.suggestions{margin-top:10px;padding:12px;border-radius:16px;background:var(--surface-2);border:1px solid var(--border);display:grid;gap:10px}.suggestion{display:flex;justify-content:space-between;align-items:center;gap:10px}.social{display:flex;gap:4px;align-items:center}.vote{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 9px;border-radius:999px;border:0;background:var(--surface-2);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;color:var(--text-2)}.vote:hover{background:var(--surface-3)}.vote.on.up{background:var(--ok-bg);color:var(--ok)}.vote.on.down{background:var(--danger-bg);color:var(--danger)}.comments{margin-top:8px;display:grid;gap:8px}.comment{display:flex;gap:8px;font-size:.84rem}.comment-body{background:var(--surface-2);padding:7px 11px;border-radius:4px 14px 14px;flex:1;min-width:0}.comment-who{font-weight:600;font-size:.76rem;display:flex;justify-content:space-between;gap:8px}.comment-form{display:flex;gap:6px}.comment-form input{height:34px;border-radius:999px;font-size:.85rem}.today-top{display:flex;gap:16px;align-items:center}.ring{position:relative;width:112px;height:112px;flex:none}.ring b{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;font-size:1.6rem;font-weight:700;line-height:1}.ring b small{display:block;font-size:.66rem;color:var(--muted);font-weight:600;margin-top:4px}.now-card{padding:16px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);display:grid;gap:8px}.now-card.next{border:0;padding:1px;background:var(--brand-line)}.now-card.next>.inner{background:var(--surface);border-radius:22px;padding:16px;display:grid;gap:10px}.now-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.now-name{font-size:1.3rem;font-weight:700;letter-spacing:-.01em}.eta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.eta div{background:var(--surface-2);border-radius:14px;padding:10px;text-align:center}.eta b{display:block;font-size:1.2rem;font-weight:700}.eta small{color:var(--muted);font-weight:700;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.eta .soon{color:var(--amber)}.today-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.today-list li{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:var(--surface);border:1px solid var(--border);cursor:pointer}.today-list.done li{background:transparent;color:var(--muted);text-decoration:line-through;cursor:default}.bk-add{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.bk-add button{display:grid;gap:4px;justify-items:center;padding:12px 6px;border-radius:16px;border:1px solid var(--border);background:var(--surface);font:inherit;font-weight:600;font-size:.82rem;color:var(--text);cursor:pointer}.bk-add button:hover{border-color:var(--brand)}.bk-add button span{font-size:1.4rem}.import{padding:14px;border-radius:var(--radius-lg);border:1px solid var(--brand-line);background:var(--brand-soft);display:grid;gap:4px;text-align:left;font:inherit;color:var(--text);cursor:pointer}.import b{font-weight:700}.import small{color:var(--text-2);font-size:.82rem}.bk{display:flex;gap:12px;padding:14px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.bk-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;font-size:1.25rem;background:var(--surface-2);flex:none}.bk-body{flex:1;min-width:0;display:grid;gap:3px}.bk-title{font-weight:700}.bk-when{font-size:.85rem;color:var(--text-2);font-weight:700}.bk-route{display:flex;align-items:center;gap:10px;margin:4px 0}.bk-route b{font-size:1.35rem;font-weight:700;letter-spacing:.02em}.bk-route small{display:block;color:var(--muted);font-size:.72rem;font-weight:600}.bk-route .line{flex:1;height:2px;background:var(--grad);border-radius:2px;position:relative}.code{display:inline-flex;align-items:center;gap:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;font-weight:700;padding:3px 8px;border-radius:8px;background:var(--surface-3);color:var(--amber);cursor:pointer;border:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-grid label{display:grid;gap:4px;font-size:.8rem;font-weight:600;color:var(--text-2)}.form-grid .wide{grid-column:1 / -1}.form-grid input,.form-grid textarea{height:40px;font-size:.9rem}.form-grid textarea{height:auto;min-height:70px}.drop{border:1.5px dashed var(--border-strong);border-radius:16px;padding:16px;text-align:center;color:var(--muted);font-weight:700;cursor:pointer}.drop.has{border-color:var(--brand);color:var(--text)}.panel-body{display:grid;gap:14px}.card{padding:18px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}.card.subtle{background:var(--surface-2)}.card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.card-title{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.02rem}.card-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);flex:none}.price{font-weight:650;white-space:nowrap;color:var(--text);font-variant-numeric:tabular-nums}.big-price{font-size:1.6rem;font-weight:700;letter-spacing:-.02em}.stay-area{display:flex;align-items:center;gap:6px;font-weight:600;margin-bottom:6px;color:var(--text-2)}.tips{margin:6px 0 12px;padding-left:20px;font-size:.9rem;color:var(--text-2)}.tips li{margin-bottom:4px}.link-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.section-title{margin:10px 0 0;font-size:1.05rem;font-weight:700}.share-rows{display:grid;gap:10px}.share-row{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:12px;border-radius:14px;background:var(--surface-2)}.share-actions{display:flex;gap:6px}.people{list-style:none;padding:0;margin:0;display:grid;gap:12px}.person{display:flex;align-items:center;gap:10px}.person-name{flex:1;font-weight:600}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;z-index:50;animation:fade-up .2s}.modal{width:100%;max-width:520px;max-height:calc(100dvh - 32px);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-lg);display:grid;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}@media(max-width:860px){.day-filter{left:12px;right:56px;top:12px}.panel{top:auto;left:0;right:0;bottom:0;width:auto;height:var(--sheet-h, 46%);border-radius:26px 26px 0 0;border-bottom:0;transition:height .28s var(--ease)}.panel.dragging{transition:none}.sheet-handle{display:block;padding:10px 0 4px;cursor:grab;touch-action:none}.sheet-handle:before{content:"";display:block;width:40px;height:5px;border-radius:3px;background:var(--border-strong);margin:0 auto}.panel-head{padding:6px 16px 12px}.trip-title{font-size:1.3rem}.tiles{gap:5px}.tab:not(.on)>span{display:none}.tab{padding:0 10px}.topbar{padding:0 14px}.topnav .label{display:none}.hero{padding-top:56px}.grid-3{grid-template-columns:1fr 1fr}.grid-3>:last-child{grid-column:1 / -1}.form-card{padding:20px}}@media(max-width:420px){.grid-2,.form-grid{grid-template-columns:1fr}}@media print{:root{--text: #000;--text-2: #222;--muted: #555;--surface: #fff;--surface-2: #f3f3f3;--border: #ccc}body{background:#fff;color:#000}.topbar,.trip-map,.day-filter,.trip-bar,.sheet-handle,.stop-actions,.day-actions,.optimize-banner,.suggestions,.stop-edit,.social,.comment-form{display:none!important}.trip,.panel,.panel-scroll,.trip-content{position:static!important;height:auto!important;overflow:visible!important;display:block!important;width:auto!important;background:#fff!important;box-shadow:none!important;border:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.day{break-inside:avoid-page;margin-bottom:12px}.stop{break-inside:avoid}.tile b,.price,.grad-text{color:#000!important;-webkit-text-fill-color:#000}.stop-num,.day-badge{print-color-adjust:exact;-webkit-print-color-adjust:exact}}:root[data-palette=centurion]{--bg: #0a0a0b;--bg-tint: #0e0e10;--surface: #141416;--surface-2: #1c1c1f;--surface-3: #26262a;--glass: rgb(20 20 22 / .88);--text: #f2efe9;--text-2: #cfc9bf;--muted: #8f897f;--border: #242428;--border-strong: #35343a;--brand: #c8a96a;--brand-2: #a8884d;--brand-ink: #15110a;--brand-soft: rgb(200 169 106 / .13);--brand-line: rgb(200 169 106 / .38);--grad: linear-gradient(180deg, #d6ba7f, #b8975a);--accent: #e3cf9f;--amber: #d9b26a;--c1: #d6ba7f;--c2: #a9bccd;--c3: #d3cdc2;--c4: #9cc0a6;--brand-shadow: 0 6px 18px -8px rgb(184 151 90 / .5)}:root[data-palette=ember]{--bg: #100d0b;--bg-tint: #14100e;--surface: #191513;--surface-2: #221d1a;--surface-3: #2c2622;--glass: rgb(25 21 19 / .88);--text: #f5efe9;--text-2: #d3c8bf;--muted: #9a8e84;--border: #2a2420;--border-strong: #3a322d;--brand: #e8835a;--brand-2: #d0663f;--brand-ink: #1a0e08;--brand-soft: rgb(232 131 90 / .13);--brand-line: rgb(232 131 90 / .38);--grad: linear-gradient(180deg, #ec8f68, #d46a43);--accent: #f0b48f;--amber: #e2b066;--c1: #f0a07c;--c2: #e2b066;--c3: #d2a99a;--c4: #93bba8;--brand-shadow: 0 6px 18px -8px rgb(212 106 67 / .5)}:root[data-palette=platinum]{--bg: #eef0f3;--bg-tint: #e5e8ed;--surface: #ffffff;--surface-2: #f4f5f7;--surface-3: #e7e9ee;--glass: rgb(255 255 255 / .9);--text: #14171c;--text-2: #3d434d;--muted: #6b7280;--border: #e1e4e9;--border-strong: #cdd2da;--brand: #006fcf;--brand-2: #00589f;--brand-ink: #ffffff;--brand-soft: rgb(0 111 207 / .09);--brand-line: rgb(0 111 207 / .3);--grad: linear-gradient(180deg, #0a78d8, #0062b8);--accent: #006fcf;--amber: #b5650d;--c1: #006fcf;--c2: #00866b;--c3: #5b4bb7;--c4: #b5650d;--warn-bg: #fff4e0;--warn-text: #8a4b00;--danger: #c62828;--danger-bg: #fdecec;--ok: #0f7a4a;--ok-bg: #e6f4ec;--tint: rgb(0 0 0 / .02);--shadow-sm: 0 1px 2px rgb(16 24 40 / .06);--shadow: 0 1px 2px rgb(16 24 40 / .06), 0 8px 24px -12px rgb(16 24 40 / .16);--shadow-lg: 0 24px 48px -20px rgb(16 24 40 / .25);--brand-shadow: 0 4px 12px -6px rgb(0 98 184 / .45);color-scheme:light}:root[data-palette=maps]{--bg: #f1f3f4;--bg-tint: #e8eaed;--surface: #ffffff;--surface-2: #f8f9fa;--surface-3: #e8eaed;--glass: rgb(255 255 255 / .94);--text: #202124;--text-2: #3c4043;--muted: #5f6368;--border: #e3e5e8;--border-strong: #dadce0;--brand: #1a73e8;--brand-2: #1967d2;--brand-ink: #ffffff;--brand-soft: #e8f0fe;--brand-line: rgb(26 115 232 / .35);--grad: linear-gradient(180deg, #1a73e8, #1a73e8);--accent: #1a73e8;--amber: #e37400;--c1: #1a73e8;--c2: #188038;--c3: #e37400;--c4: #d93025;--warn-bg: #fef7e0;--warn-text: #b06000;--danger: #d93025;--danger-bg: #fce8e6;--ok: #188038;--ok-bg: #e6f4ea;--tint: rgb(0 0 0 / .02);--shadow-sm: 0 1px 2px rgb(60 64 67 / .15);--shadow: 0 1px 2px rgb(60 64 67 / .15), 0 2px 6px 2px rgb(60 64 67 / .08);--shadow-lg: 0 4px 8px 3px rgb(60 64 67 / .15);--brand-shadow: none;color-scheme:light}:root[data-light] .now-card.next>.inner{background:var(--surface)}:root[data-light] .maplibregl-ctrl-icon{filter:none}:root[data-light] .map-pin i{border-color:#fff}.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}.swatch{display:grid;gap:6px;justify-items:stretch;padding:6px;border-radius:12px;border:1.5px solid var(--border);background:var(--surface-2);cursor:pointer;font:inherit;font-size:.76rem;font-weight:600;color:var(--text);text-align:center}.swatch[aria-pressed=true]{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.swatch i{height:38px;border-radius:8px;display:block;position:relative;overflow:hidden}.swatch i:after{content:"";position:absolute;left:7px;right:40%;bottom:7px;height:6px;border-radius:3px;background:var(--sw-accent)}.list-card{display:grid;gap:10px;padding:14px;border-radius:18px;background:var(--surface);border:1px solid var(--border)}.list-head{display:flex;align-items:center;gap:8px}.list-emoji{font-size:1.3rem}.list-name{flex:1;font-weight:600;font-size:1rem;min-width:0}.list-places{list-style:none;margin:0;padding:0;display:grid;gap:8px}.list-place{display:grid;gap:6px;padding:10px;border-radius:14px;background:var(--surface-2)}.list-place-main{all:unset;cursor:pointer;display:grid;gap:2px}.list-place-main:focus-visible{outline:2px solid var(--brand);border-radius:8px}.list-place-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.list-place-actions select{width:auto;padding-right:26px}.list-new{display:flex;gap:8px}.list-new input{flex:1;min-width:0}.ok{color:var(--ok);font-weight:700}.add-city{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:12px;align-items:center;width:100%;padding:14px 16px;border-radius:18px;border:1.5px dashed var(--border-strong);color:var(--text)}.add-city:hover{border-color:var(--brand)}.add-city:focus-visible{outline:2px solid var(--brand)}.add-city span{display:grid;gap:2px}.add-city small{color:var(--text-2)}.add-city-form{gap:10px}.add-city-form .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.add-city-form .row input{flex:1;min-width:160px}.stepper{display:inline-flex;align-items:center;gap:4px;padding:2px 4px;border-radius:999px;border:1px solid var(--border)}.dest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.dest-card{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:4px;padding:14px;border-radius:18px;background:var(--surface);border:1px solid var(--border);transition:transform .15s ease,border-color .15s ease}.dest-card:hover{transform:translateY(-2px);border-color:var(--brand)}.dest-card:focus-visible{outline:2px solid var(--brand)}.dest-emoji{font-size:1.8rem}.dest-card b{font-size:1.02rem}.pill.warn{background:var(--warn-bg);color:var(--warn-text)}.pill.live{background:var(--ok-bg);color:var(--ok)!important;color:var(--brand-ink);font-weight:600}.email-box{display:grid;gap:8px;padding:12px;border-radius:14px;background:var(--surface-2)}.email-box .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.email-box code{font-size:.85rem;padding:6px 8px;border-radius:8px;background:var(--surface-3);word-break:break-all}.inbox{display:grid;gap:8px}.inbox-item{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-radius:16px;background:var(--surface);border:1px solid var(--border)}.inbox-icon{font-size:1.4rem}.inbox-body{flex:1;min-width:180px;display:grid;gap:2px}.inbox-item select{width:auto}.trip-grid.past .trip-card{opacity:.8}.link-like{all:unset;cursor:pointer}.link-like:focus-visible{outline:2px solid var(--brand);border-radius:6px}.progress{height:6px;border-radius:999px;background:var(--surface-2);overflow:hidden}.progress i{display:block;height:100%;background:var(--grad);transition:width .25s ease}.pack-group{display:grid;gap:2px}.pack-group-name{font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;margin-top:4px}.pack-item{display:flex;align-items:center;gap:10px;padding:4px 2px;cursor:pointer}.pack-item input{width:18px;height:18px;accent-color:var(--brand)}.pack-item span{flex:1}.pack-item.done span{text-decoration:line-through;color:var(--muted)}.pack-item .btn{opacity:0}.pack-item:hover .btn,.pack-item .btn:focus-visible{opacity:1}.settle{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.settle-amt{margin-left:auto;font-weight:600}.expense{cursor:pointer}.expense .row{display:flex;justify-content:space-between;gap:8px}.row-2{display:grid;grid-template-columns:1fr 110px;gap:8px}.link-like.list-name{font-weight:600;text-align:left}.trip-bar .tab:not(.on) span{display:none}.trip-bar .tab:not(.on){padding:0 14px}.public .panel{--sheet-h: 55vh}.public .sheet-handle{display:none}.list-place.focused{outline:2px solid var(--brand)}.offline-bar{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:50;padding:8px 14px;border-radius:999px;background:var(--surface-3);color:var(--text);font-size:.82rem;font-weight:700;box-shadow:var(--shadow);max-width:calc(100% - 32px);text-align:center}.days-tip{display:grid;gap:6px;padding:12px 14px;border-radius:16px;background:var(--brand-soft);border:1px solid var(--border)}.days-tip:empty{display:none}.days-tip-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}:root[data-light] .maplibregl-ctrl-attrib-button{filter:none}.day-route{justify-self:start;margin-top:6px}.copy-form{display:grid;gap:8px}.day-menu{position:relative}.day-menu>summary{list-style:none;cursor:pointer;font-size:1.1rem;line-height:1}.day-menu>summary::-webkit-details-marker{display:none}.day-menu-list{position:absolute;right:0;top:36px;z-index:20;min-width:200px;display:grid;padding:6px;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.day-menu-list button{all:unset;cursor:pointer;padding:8px 10px;border-radius:8px;font-size:.88rem}.day-menu-list button:hover:not(:disabled),.day-menu-list button:focus-visible{background:var(--surface-2)}.day-menu-list button:disabled{opacity:.4;cursor:default}.pill-btn{border:0;cursor:pointer;font-family:inherit;color:var(--text)}.pill-btn:hover{background:var(--surface-3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.row-between select{width:auto}.row-check{display:flex;gap:8px;align-items:center}.kbyg{margin:0 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.kbyg>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:8px;align-items:center;padding:10px 14px;font-weight:600}.kbyg>summary::-webkit-details-marker{display:none}.kbyg-country{padding:0 14px 12px;display:grid;gap:6px}.kbyg dl{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;font-size:.86rem}.kbyg dt{color:var(--muted)}.kbyg dd{margin:0}.rain-note{margin:8px 0 0;padding:8px 10px;border-radius:10px;background:var(--surface-2);color:var(--text-2)}.visit-ctl{display:inline-flex;align-items:center;gap:2px}.visit-ctl .btn.on{color:var(--ok)}.star{all:unset;cursor:pointer;font-size:1rem;color:var(--border-strong);padding:0 1px}.star.on{color:var(--amber)}.star:focus-visible{outline:2px solid var(--brand);border-radius:4px}.recap{margin:0 14px;padding:12px 14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);display:grid;gap:8px}.recap-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.recap .tiles{margin-top:0}.trip-search{position:relative;margin-bottom:16px}.trip-search .input-wrap input{width:100%}.search-results{margin-top:8px;display:grid;gap:6px}.search-hit{display:grid;gap:2px;padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--border);color:var(--text)}.search-hit:hover{text-decoration:none;border-color:var(--brand-line)}.trip-search input{padding-left:40px}.chat{display:grid;gap:8px;max-height:320px;overflow-y:auto;margin-bottom:8px}.msg{display:grid;gap:2px;justify-items:start}.msg.mine{justify-items:end}.bubble{padding:7px 11px;border-radius:14px;background:var(--surface-2);max-width:85%;white-space:pre-wrap;overflow-wrap:anywhere}.msg.mine .bubble{background:var(--brand);color:var(--brand-ink)}.stop-photo{width:100%;max-height:180px;object-fit:cover;border-radius:12px;margin:6px 0;display:block;background:var(--surface-2)}.tile-sub{display:block;font-size:.68rem;color:var(--muted);white-space:nowrap}.poll{display:grid;gap:6px;margin-bottom:8px}.poll-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:var(--surface-2);flex-wrap:wrap}.poll-row.top{box-shadow:inset 0 0 0 1px var(--brand-line)}.poll-actions{display:flex;gap:4px}.ask{margin:0 14px;display:grid;gap:8px}.ask-row{display:flex;gap:8px}.ask-row input{flex:1;min-width:0}.ask .chips .chip{font-size:.78rem}.ask-answer{display:grid;gap:8px;padding:12px 14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.ask-answer p{margin:0;white-space:pre-wrap}.rain-swap{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px 12px;margin:0 0 4px;border-radius:12px;background:var(--brand-soft);border:1px solid var(--brand-line);font-size:.88rem}.weather .sun{display:block;font-weight:500}@media(max-width:560px){.explore-link{display:none}}.transfer-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.journal{margin-top:8px}.journal>summary{cursor:pointer}.journal textarea{width:100%;margin-top:6px;font-size:.88rem}.pill.here{gap:4px;padding-left:4px}.avatar.tiny{width:18px;height:18px;font-size:.6rem;border-radius:50%;display:inline-grid;place-items:center;background:var(--brand-soft);color:var(--brand);overflow:hidden;margin-right:-4px;border:1.5px solid var(--surface)}.avatar.tiny img{width:100%;height:100%;object-fit:cover}.print-only{display:none}@media print{.print-only{display:block;padding:0 14px;color:#000}.print-only h2{font-size:1.1rem;margin:18px 0 6px}.print-only section{break-inside:avoid}.print-cols{columns:2}.ask,.kbyg,.recap,.day-menu,.day-route,.add-city,.rain-swap,.journal:not([open]){display:none!important}}.keys dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 16px;margin:0}.keys dt{font-family:ui-monospace,monospace;font-size:.85rem;padding:2px 8px;border-radius:6px;background:var(--surface-2);justify-self:start}.keys dd{margin:0;color:var(--text-2)}.bucket{display:flex;flex-wrap:wrap;gap:8px}.bucket-chip{gap:6px}.bucket-chip a{color:var(--text)}.live-card{display:grid;gap:8px;padding:12px 14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}.live-status{font-weight:650}.live-status.late{color:var(--warn-text)}.live-status.early,.live-status.ok{color:var(--ok)}.live-advice{display:grid;gap:6px;padding:10px;border-radius:12px;background:var(--surface-2)}.btn.on{color:var(--ok)}.stop-time .was{display:block;font-size:.68rem;color:var(--muted);text-decoration:line-through;font-weight:500}
