.trip-app{color:var(--vh-ink);background:var(--vh-cloud)}.trip-app :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--vh-teal);outline-offset:3px}.trip-app input:not([type=checkbox]),.trip-app select,.trip-app textarea{width:100%;min-width:0;min-height:48px;background:#fff;border:1px solid #c4d2d8;border-radius:12px;padding:10px 12px;color:var(--vh-ink);font-size:16px;font-weight:400}.trip-app input[type=checkbox]{width:20px;height:20px;flex-shrink:0;accent-color:var(--vh-teal)}.trip-app button:disabled{opacity:.45;cursor:not-allowed}.trip-app h1{overflow-wrap:anywhere}.trip-primary,.trip-secondary{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:46px;border-radius:12px;padding:11px 17px;font-size:14px;font-weight:700;transition:background .15s}.trip-primary{background:var(--vh-teal);color:#fff;border:1px solid var(--vh-teal)}.trip-primary:hover{background:#00645f}.trip-secondary{background:#fff;border:1px solid var(--vh-border);color:var(--vh-ink)}.trip-secondary:hover{background:var(--vh-cloud)}.trip-icon-button{display:inline-flex;justify-content:center;align-items:center;min-height:40px;min-width:40px;border-radius:10px;border:1px solid var(--vh-border);background:#fff}.trip-error{border-left:3px solid #b91c1c;background:#fef2f2;padding:12px 16px;color:#991b1b;font-size:14px}.trip-note{background:var(--vh-mist);border-radius:10px;padding:14px 16px;color:var(--vh-ink);line-height:1.6}.trip-eyebrow,.trip-muted{color:var(--vh-muted)}.trip-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.trip-back{display:inline-block;font-size:14px;font-weight:600;color:var(--vh-teal)}.trip-page-heading{margin:24px 0 32px}.trip-page-heading h1{font-size:clamp(28px,4vw,42px);font-weight:800;line-height:1.15;letter-spacing:-.04em;margin-top:10px;max-width:850px}.trip-page-heading p:not(.trip-eyebrow){margin-top:12px;color:var(--vh-muted);line-height:1.65}.trip-panel{background:#fff;border:1px solid var(--vh-border);border-radius:16px;padding:24px}.trip-label{display:flex;flex-direction:column;align-items:stretch;gap:8px;font-size:13px;font-weight:700}.trip-optional{color:var(--vh-muted);font-weight:400;font-size:12px}.trip-label .trip-optional{display:inline}.trip-document,.trip-stop-editor{border:1px solid var(--vh-border);border-radius:12px;padding:12px 18px 20px;min-width:0}.trip-document legend,.trip-stop-editor legend{padding:0 6px}.trip-workspace-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}.trip-stop-tab{width:100%;text-align:left;display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;font-size:14px}.trip-stop-tab.is-active{background:var(--vh-mist);color:#00645f}.trip-stop-tab:hover{background:var(--vh-cloud)}.trip-stop-number{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--vh-border);border-radius:50%;background:#fff;font-weight:700;font-size:12px}.trip-stop-tab.is-active .trip-stop-number{color:#fff;background:var(--vh-teal);border-color:var(--vh-teal)}.trip-text-link{display:inline-flex;gap:6px;align-items:center;color:var(--vh-teal);font-size:14px;font-weight:700;min-height:28px}.trip-source:hover,.trip-text-link:hover{text-decoration:underline}.trip-entry-summary{border:1px solid #c4dfdd;background:var(--vh-mist);border-radius:16px;padding:24px}.trip-route-badge{border:1px solid #bddbd8;border-radius:999px;background:#fff;padding:7px 12px;font-size:12px;font-weight:700}.trip-task{padding:24px;background:#fff}.trip-task.is-reviewed{background:#f8fbfa}.trip-obligation{display:inline-flex;border-radius:5px;background:#eef2f5;color:#405b6a;padding:3px 6px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.trip-obligation-required{background:#e1f1ef;color:#00635d}.trip-obligation-conditional,.trip-obligation-verify{background:#fff4df;color:#795819}.trip-source{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:12px;font-size:11px;line-height:1.6;color:var(--vh-teal);overflow-wrap:anywhere}.trip-progress{appearance:none;width:100%;height:6px;border:0;border-radius:10px;background:var(--vh-mist);overflow:hidden}.trip-progress::-webkit-progress-bar{background:var(--vh-mist)}.trip-progress::-webkit-progress-value{background:var(--vh-teal)}.trip-progress::-moz-progress-bar{background:var(--vh-teal)}.trip-avatar{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:13px;font-weight:800;color:var(--vh-ink);background:#f2e9d7;border:2px solid #fff;box-shadow:0 0 0 1px var(--vh-border)}.trip-avatar.is-you{background:var(--vh-mist);color:var(--vh-teal)}.trip-account-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--vh-border);border-bottom:1px solid var(--vh-border);padding:16px 0;margin-bottom:28px}.trip-list{border:1px solid var(--vh-border);background:#fff;border-radius:16px;overflow:hidden}.trip-list li+li{border-top:1px solid var(--vh-border)}.trip-list-item{display:flex;align-items:center;gap:20px;padding:26px}.trip-list-item:hover,.trip-list-marker{background:var(--vh-mist)}.trip-list-marker{width:56px;height:64px;border-radius:12px;color:var(--vh-teal);display:flex;align-items:center;justify-content:center;flex-shrink:0}.trip-empty{text-align:center;padding:64px 24px;border:1px dashed #b4c9ce;border-radius:16px;background:#fff}@media(max-width:900px){.trip-workspace-grid{grid-template-columns:240px minmax(0,1fr);gap:20px}.trip-entry-summary,.trip-panel,.trip-task{padding:20px}}@media(max-width:700px){.trip-workspace-grid{grid-template-columns:minmax(0,1fr)}.trip-page-heading{margin-bottom:24px}.trip-list-item{padding:20px;gap:12px}.trip-list-marker{display:none}}.trip-preview-layout{max-width:1100px}.trip-save-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--vh-mist);border:1px solid #bddbd8;border-radius:12px;padding:20px 24px;margin-bottom:24px}.trip-save-bar .trip-primary{flex-shrink:0}.trip-preview-columns{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.trip-next-step{border-left:4px solid var(--vh-teal);background:#fff;padding:24px;margin-bottom:28px;border-radius:0 12px 12px 0}@media(max-width:760px){.trip-preview-columns{grid-template-columns:minmax(0,1fr)}.trip-save-bar{flex-direction:column;align-items:stretch;padding:20px}}@media(max-width:700px){.trip-workspace-grid>aside{order:2}.trip-workspace-grid>div{order:1}}.trip-task{scroll-margin-top:90px}