@layer engine{.bhero .kick{font:600 .74rem var(--font-data),monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--c-on-hero-accent);margin:0 0 10px}.tp-hero-cta{flex-wrap:wrap;align-items:center;gap:16px;margin-top:28px;display:flex}.tp-hero-cta .fine{color:var(--c-on-hero-muted)}.tp-steps{border-top:1px solid color-mix(in srgb,var(--c-on-hero) 35%,transparent);margin:0;padding:0;list-style:none;display:grid}.tp-steps li{border-bottom:1px solid color-mix(in srgb,var(--c-on-hero) 35%,transparent);grid-template-columns:48px minmax(0,1fr);gap:14px;padding:18px 0;display:grid}.tp-steps .num{font:600 1.4rem var(--font-data),monospace;color:var(--c-on-hero-accent)}.tp-steps b{font:700 1.05rem var(--font-ui),sans-serif;color:var(--c-on-hero);display:block}.tp-steps p{margin:4px 0 0;font-size:.95rem}.tp-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px;display:flex}.tp-head h2{font:var(--weight-display) clamp(1.7rem,3.2vw,2.5rem)/1.1 var(--font-display),serif;margin:0}.tp-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.tp-cards li{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:22px}.tp-cards b{font:var(--weight-display) 1.12rem/1.25 var(--font-display),serif;color:var(--c-ink);margin-bottom:8px;display:block}.tp-cards p{color:var(--c-muted);margin:0;font-size:.96rem;line-height:1.5}.tp-final{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}@media (max-width:900px){.tp-cards{grid-template-columns:1fr 1fr}}@media (max-width:600px){.tp-cards{grid-template-columns:1fr}}.tp-quiz{background:var(--c-ground);min-height:70vh}.tp-progress{background:var(--c-line);height:6px}.tp-progress span{background:var(--c-action);height:100%;transition:width .3s;display:block}.tp-step{max-width:760px;padding-block:clamp(32px,5vw,64px) 0}.tp-count{font:600 .74rem var(--font-data),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);margin:0 0 10px}.tp-step h1{font:var(--weight-display) clamp(1.8rem,4vw,2.8rem)/1.08 var(--font-display),serif;color:var(--c-ink);outline:none;margin:0}.tp-sub{color:var(--c-muted);margin:10px 0 28px;font-size:1.05rem}.tp-choices{border:0;gap:10px;margin:0;padding:0;display:grid}.tp-choices legend{margin-bottom:10px;padding:0;font-weight:700}.tp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tp-small{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.tp-choice{background:var(--c-surface);border:1.5px solid var(--c-line);border-radius:var(--radius-card);cursor:pointer;gap:2px;padding:14px 16px 14px 48px;transition:border-color .15s,background .15s;display:grid;position:relative}.tp-choice input{width:20px;height:20px;accent-color:var(--c-select);margin:0;position:absolute;top:16px;left:16px}.tp-choice b{color:var(--c-ink);font-weight:700}.tp-choice span{color:var(--c-muted);font-size:.9rem}.tp-choice:hover{border-color:var(--c-ink)}.tp-choice:has(input:checked){border-color:var(--c-select);background:color-mix(in srgb,var(--c-select) 8%,var(--c-surface));box-shadow:inset 0 0 0 1px var(--c-select)}.tp-choice:has(input:focus-visible){outline:2px solid var(--c-focus);outline-offset:2px}.tp-basics{gap:24px;display:grid}.tp-field{gap:6px;max-width:420px;display:grid}.tp-field span{font-weight:700}.tp-field input{font:400 1.05rem var(--font-ui),sans-serif;border:1.5px solid var(--c-line);border-radius:var(--radius-control);background:var(--c-field);color:var(--c-on-field);padding:12px 14px}.tp-field input:focus{outline:2px solid var(--c-focus);outline-offset:1px;border-color:var(--c-ink)}.tp-sliders{gap:28px;display:grid}.tp-slider{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-card);gap:10px;padding:20px;display:grid}.tp-slider input,.tp-budget input{width:100%;accent-color:var(--c-action)}.tp-ends{color:var(--c-muted);justify-content:space-between;gap:8px;font-size:.85rem;display:flex}.tp-budget{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-card);gap:10px;padding:24px;display:grid}.tp-budget output{font:600 clamp(2.4rem,6vw,3.4rem)/1 var(--font-data),monospace;color:var(--c-ink)}.tp-tiers{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.tp-tiers li{border:1px solid var(--c-line);border-radius:var(--radius-inset);color:var(--c-muted);padding:12px;font-size:.88rem}.tp-tiers b{color:var(--c-ink);font:600 .95rem var(--font-data),monospace;margin-bottom:4px;display:block}.tp-nav{background:color-mix(in srgb,var(--c-ground) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid var(--c-line);justify-content:space-between;gap:12px;margin-top:32px;padding:16px 0 20px;display:flex;position:sticky;bottom:0}.tp-nav .btn[disabled]{opacity:.45;cursor:not-allowed}.tp-error{border-radius:var(--radius-inset);background:color-mix(in srgb,var(--c-negative) 12%,var(--c-surface));color:var(--c-negative-text);margin:18px 0 0;padding:12px 14px;font-weight:600}.tp-hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}@media (max-width:640px){.tp-grid,.tp-tiers{grid-template-columns:1fr}}.tp-wait{text-align:center;background:var(--c-ground);align-items:center;min-height:60vh;display:grid}.tp-wait .wrap{justify-items:center;gap:10px;max-width:640px;padding-block:80px;display:grid}.tp-wait h1{font:var(--weight-display) clamp(1.7rem,4vw,2.6rem)/1.1 var(--font-display),serif;margin:12px 0 0}.tp-wait p{color:var(--c-muted);margin:0}.tp-spin{border:4px solid var(--c-line);border-top-color:var(--c-action);border-radius:50%;width:46px;height:46px;animation:1s linear infinite tp-spin}@keyframes tp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.tp-spin{animation-duration:3s}}.tp-facts{flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.tp-facts li{font:600 .82rem var(--font-data),monospace;border:1px solid color-mix(in srgb,var(--c-on-hero) 45%,transparent);color:var(--c-on-hero);border-radius:999px;padding:6px 12px}.tp-actions{flex-wrap:wrap;align-self:end;align-items:center;gap:10px;display:flex}.tp-mytrips{color:var(--c-on-hero);font-weight:600}.tp-toast{min-height:1.2em;color:var(--c-on-hero-accent);flex-basis:100%;font-size:.9rem;font-weight:600}.tp-grid{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:48px;padding-block:40px 88px;display:grid}.tp-body{max-width:var(--measure-article);font:400 1.04rem/1.65 var(--font-article),sans-serif;color:var(--c-ink)}.tp-sec{margin-bottom:36px}.tp-sec>h2{font:var(--weight-display) clamp(1.5rem,2.6vw,2rem)/1.15 var(--font-display),serif;margin:0 0 14px}.tp-body p{margin:0 0 12px}.tp-body ul{margin:0 0 12px;padding-left:1.2em}.tp-body li{margin:4px 0}.tp-body a{color:var(--c-text-action);font-weight:600}.tp-route ol{counter-reset:stop;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tp-route li{counter-increment:stop;border:1px solid var(--c-line);background:var(--c-surface);border-radius:999px;align-items:center;gap:8px;padding:8px 14px 8px 8px;font-weight:600;display:flex}.tp-route li:before{content:counter(stop);background:var(--c-select);width:26px;height:26px;color:var(--c-on-select);font:600 .8rem var(--font-data),monospace;border-radius:50%;place-items:center;display:grid}.tp-day{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-panel);box-shadow:var(--shadow-card);margin:0 0 16px;padding:22px 24px;scroll-margin-top:96px}.tp-day h3{font:var(--weight-display) 1.2rem/1.25 var(--font-display),serif;border-bottom:1px solid var(--c-line);margin:0 0 12px;padding-bottom:12px}.tp-body dl{gap:10px;margin:0 0 10px;display:grid}.tp-row{grid-template-columns:120px minmax(0,1fr);gap:12px;display:grid}.tp-row dt{font:600 .72rem/1.9 var(--font-data),monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted)}.tp-row dd{margin:0}.tp-row[data-label="where to stay"],.tp-row[data-label=insider\ tip]{border-radius:var(--radius-inset);background:var(--c-ground);padding:10px 12px}.tp-row[data-label=daily\ budget] dd{font-family:var(--font-data),monospace;font-size:.92rem}.tp-partner{white-space:normal}.tp-money ul{border:1px solid var(--c-line);border-radius:var(--radius-card);background:var(--c-surface);padding:0;list-style:none;overflow:hidden}.tp-money li{border-bottom:1px solid var(--c-line);font-family:var(--font-data),monospace;margin:0;padding:10px 14px;font-size:.92rem}.tp-money li:last-child{background:var(--c-ground);border-bottom:0}.tp-signoff{margin-top:8px;font-size:1.15rem}.tp-note{border-top:1px solid var(--c-line);color:var(--c-muted);margin-top:28px;padding-top:16px}.tp-rail{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-panel);padding:18px;position:sticky;top:96px}.tp-rail b{margin-bottom:10px;display:block}.tp-rail ol{gap:4px;max-height:60vh;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.tp-rail a{border-radius:var(--radius-control);color:var(--c-ink);padding:6px 8px;font-size:.9rem;line-height:1.3;text-decoration:none;display:block}.tp-rail a:hover{background:var(--c-ground)}@media (max-width:960px){.tp-grid{grid-template-columns:1fr}.tp-rail{display:none}}@media (max-width:560px){.tp-row{grid-template-columns:1fr;gap:2px}}.tp-list{max-width:860px;padding-block:40px 88px}.tp-list ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.tp-list li{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--radius-card);align-items:center;gap:12px;padding:6px 10px 6px 6px;display:flex}.tp-list li a{border-radius:var(--radius-inset);color:var(--c-ink);flex:1;gap:4px;padding:14px 16px;text-decoration:none;display:grid}.tp-list li a:hover{background:var(--c-ground)}.tp-meta{color:var(--c-muted);font-size:.88rem}.tp-empty{text-align:center;justify-items:center;gap:10px;padding:48px 0;display:grid}.tp-empty h2{font:var(--weight-display) 1.6rem var(--font-display),serif;margin:0}@media print{header.nav,footer.site,.tp-actions,.tp-rail,.bhero svg{display:none!important}.bhero{color:var(--c-ink)!important;background:0 0!important}.bhero h1,.tp-facts li{color:var(--c-ink)!important}.tp-grid{padding:0;display:block}.tp-day{box-shadow:none;break-inside:avoid}.tp-body a:after{content:""}}}
