.lp-tour-section{background:radial-gradient(60% 50% at 50% 0%, #18a3b514, transparent 70%), var(--tw-color-background);padding-bottom:0}.lp-tour__intro{text-align:center}.lp-tour__lede{max-width:560px;margin:0 auto}.lp-tour{--p:0;padding:var(--tw-space-6) 0 clamp(80px, 12vw, 140px);position:relative}.lp-tour__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,56px);display:grid}.lp-chart{aspect-ratio:600/520;background:radial-gradient(70% 60% at 30% 20%,#18a3b540,#0000 70%),linear-gradient(160deg,#0d3a52,#0b2537 60%,#08202f);border-radius:28px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f,0 40px 80px -40px #0b2537a6}.lp-chart__sea{width:100%;height:100%;position:absolute;inset:0}.lp-chart__coast{fill:#164a63;stroke:#cfe1f140}.lp-chart__contours path{fill:none;stroke:#cfe1f11f;stroke-dasharray:3 5}.lp-chart__rose circle,.lp-chart__rose path{fill:none;stroke:#cfe1f138}.lp-chart__rose path{fill:#cfe1f11f}.lp-chart__rose text{fill:#cfe1f166;font-size:12px;font-weight:700}.lp-chart__route{fill:none;stroke:#cfe1f14d;stroke-width:2px;stroke-dasharray:2 8;stroke-linecap:round}.lp-chart__wake{fill:none;stroke:#ffb08a;stroke-width:3px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0;filter:drop-shadow(0 0 6px #f26b3ab3)}.lp-tour[data-pinned=true] .lp-chart__wake{stroke-dashoffset:1px}.lp-chart__port{color:#fff;font:inherit;cursor:pointer;background:0 0;border:0;justify-items:center;gap:6px;padding:0;display:grid;position:absolute;transform:translate(-50%,-22px)}.lp-chart__dot{width:44px;height:44px;color:var(--stage);box-shadow:inset 0 0 0 2px var(--stage), 0 0 0 6px #0b253799;transition:transform .4s var(--lp-ease), background-color .4s, color .4s;background:#0b2537;border-radius:50%;place-items:center;display:grid;position:relative}.lp-chart__dot:after{content:"";border:2px solid var(--stage);opacity:0;border-radius:50%;position:absolute;inset:-4px}.lp-chart__name{color:#c7d6e1;font-size:.72rem;font-weight:var(--tw-font-weight-semibold);background:#04131f8c;border-radius:999px;padding:2px 8px;transition:color .3s,background-color .3s}.lp-chart__port:hover .lp-chart__dot{transform:scale(1.08)}.lp-chart__port.is-past .lp-chart__dot,.lp-chart__port.is-active .lp-chart__dot{background:var(--stage);color:#fff}.lp-chart__port.is-active .lp-chart__dot{transform:scale(1.18)}.lp-chart__port.is-active .lp-chart__dot:after{animation:1.8s ease-out infinite lp-port-ring}.lp-chart__port.is-active .lp-chart__name{color:var(--tw-color-ink);background:#fff}.lp-chart__port:focus-visible{outline-offset:4px;border-radius:12px;outline:2px solid #fff}.lp-chart__boat{z-index:2;pointer-events:none;width:40px;transition:left 80ms linear,top 80ms linear;position:absolute;top:17.7%;left:14%;transform:translate(-50%,-170%)}.lp-chart__boat svg{filter:drop-shadow(0 6px 8px #00000073);transform-origin:50% 90%;width:100%;animation:3.4s ease-in-out infinite lp-rock;display:block}.lp-chart__boat[data-heading=west]{transform:translate(-50%,-170%)scaleX(-1)}.lp-buoy{z-index:1;justify-items:center;gap:2px;display:grid;position:absolute;transform:translate(-50%,-50%)}.lp-buoy svg{width:22px;animation:3s ease-in-out infinite lp-bob}.lp-buoy em{background:var(--tw-color-accent);color:var(--tw-color-on-accent);font-size:.62rem;font-style:normal;font-weight:var(--tw-font-weight-bold);white-space:nowrap;border-radius:6px;padding:2px 7px}.lp-tour__panel{gap:var(--tw-space-2);display:grid;position:relative}.lp-tour__rail{align-items:center;gap:var(--tw-space-2);color:var(--tw-color-ink-muted);font-size:var(--tw-text-sm);font-weight:var(--tw-font-weight-semibold);display:flex}.lp-tour__count b{color:var(--tw-color-ink)}.lp-tour__bar{background:var(--tw-color-border);border-radius:4px;flex:1;height:4px;overflow:hidden}.lp-tour__bar span{height:100%;width:calc(var(--p) * 100%);background:linear-gradient(90deg, var(--tw-color-stage-idea), var(--tw-color-stage-code), var(--tw-color-stage-review), var(--tw-color-stage-done));display:block}.lp-stages{margin:0;padding:0;list-style:none;display:grid}.lp-stage{gap:var(--tw-space-2);display:grid}.lp-stage__meta{color:var(--tw-color-ink-muted);font-size:var(--tw-text-xs);font-weight:var(--tw-font-weight-bold);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 8px;display:flex}.lp-stage__badge{background:var(--stage);color:#fff;border-radius:10px;place-items:center;width:30px;height:30px;display:grid}.lp-stage__name{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:var(--tw-font-weight-bold);letter-spacing:-.035em;margin:0 0 8px;line-height:1.05}.lp-stage__text{max-width:460px;color:var(--tw-color-ink-muted);font-size:var(--tw-text-lg);margin:0;line-height:1.6}.lp-stage__scene{background:radial-gradient(80% 80% at 50% 0%, color-mix(in srgb, var(--stage) 14%, transparent), transparent 70%), var(--tw-color-surface);height:250px;box-shadow:inset 0 0 0 1px var(--tw-color-border), var(--tw-shadow-raised);border-radius:22px;place-items:center;display:grid;position:relative;overflow:hidden}.lp-stage__says,.lp-tour__guide,.lp-tour__nav,.lp-tour__rail{display:none}.lp-tour[data-pinned=true]{height:calc(var(--steps) * 75vh + 100vh);padding:0}.lp-tour[data-pinned=true] .lp-tour__pin{align-items:center;height:100vh;padding-top:64px;display:flex;position:sticky;top:0}.lp-tour[data-pinned=true] .lp-tour__rail,.lp-tour[data-pinned=true] .lp-tour__nav{display:flex}.lp-tour[data-pinned=true] .lp-tour__guide{display:block}.lp-tour[data-pinned=true] .lp-stage{opacity:0;visibility:hidden;transition:opacity .45s var(--lp-ease), transform .6s var(--lp-ease), visibility 0s linear .45s;grid-area:1/1;transform:translateY(24px)}.lp-tour[data-pinned=true] .lp-stage.is-past{transform:translateY(-24px)}.lp-tour[data-pinned=true] .lp-stage.is-active{opacity:1;visibility:visible;transition:opacity .5s var(--lp-ease) .1s, transform .7s var(--lp-ease) .1s, visibility 0s;transform:none}.lp-tour[data-pinned=true] .lp-stage__says{background:var(--tw-color-primary);color:#fff;font-size:var(--tw-text-sm);font-weight:var(--tw-font-weight-semibold);box-shadow:var(--tw-shadow-raised);border-radius:14px 14px 14px 4px;margin:0;padding:10px 14px;display:block;position:absolute;bottom:-64px;left:92px}.lp-tour[data-pinned=true] .lp-stages{margin-bottom:72px;position:relative}.lp-tour__guide{width:92px;position:absolute;bottom:-18px;left:-6px}.lp-bosun--guide{width:100%}.lp-tour__nav{gap:8px;position:absolute;bottom:4px;right:0}.lp-tour__arrow{background:var(--tw-color-surface);width:44px;height:44px;color:var(--tw-color-ink);box-shadow:inset 0 0 0 1px var(--tw-color-border), var(--tw-shadow-card);cursor:pointer;transition:transform .2s var(--lp-ease), box-shadow .2s;border:0;border-radius:50%;place-items:center;display:grid}.lp-tour__arrow:hover{box-shadow:inset 0 0 0 1px var(--tw-color-border), var(--tw-shadow-raised);transform:translateY(-2px)}.lp-tour:not([data-pinned=true]) .lp-chart{display:none}.lp-tour:not([data-pinned=true]) .lp-tour__grid{grid-template-columns:minmax(0,1fr)}.lp-tour:not([data-pinned=true]) .lp-stages{gap:var(--tw-space-3)}.lp-tour:not([data-pinned=true]) .lp-stage{align-items:center;gap:var(--tw-space-4);padding:var(--tw-space-3);box-shadow:inset 0 0 0 1px var(--tw-color-border);background:#fff9;border-radius:24px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}@media (max-width:959px){.lp-tour:not([data-pinned=true]) .lp-stages{margin:0 calc(var(--tw-space-3) * -1);padding:0 var(--tw-space-3) var(--tw-space-2);scroll-snap-type:x mandatory;scrollbar-width:none;gap:16px;display:flex;overflow-x:auto}.lp-tour:not([data-pinned=true]) .lp-stage{scroll-snap-align:center;flex:0 0 min(86%,420px);grid-template-columns:minmax(0,1fr)}.lp-stage__scene{height:220px}}@media (prefers-reduced-motion:reduce){.lp-tour .lp-stages{display:grid!important;overflow:visible!important}.lp-tour .lp-stage{flex:none!important}}.lp-scene{width:100%;height:100%;font-size:var(--tw-text-sm);place-items:center;padding:20px;display:grid;position:relative}.lp-win{background:var(--tw-color-surface);width:min(100%,360px);box-shadow:inset 0 0 0 1px var(--tw-color-border), 0 18px 36px -18px #0b253766;text-align:left;border-radius:14px;overflow:hidden}.lp-win__bar{border-bottom:1px solid var(--tw-color-border);background:var(--tw-color-surface-subtle);align-items:center;gap:5px;padding:9px 12px;display:flex}.lp-win__bar span{background:var(--tw-color-border);border-radius:50%;width:8px;height:8px}.lp-win__bar em{color:var(--tw-color-ink-muted);font-size:var(--tw-text-xs);font-style:normal;font-weight:var(--tw-font-weight-semibold);margin-left:8px}.lp-win__body{padding:14px}.lp-win--dark{background:#061826;box-shadow:0 18px 36px -18px #04131fcc}.lp-win--dark .lp-win__bar{background:#ffffff0a;border-color:#ffffff14}.lp-win--dark .lp-win__bar span{background:#ffffff2e}.lp-win--dark .lp-win__bar em{color:#aec2d1}.lp-col{background:var(--tw-color-surface-subtle);border-radius:14px;gap:8px;width:230px;padding:12px;display:grid}.lp-col__head{font-weight:var(--tw-font-weight-semibold);align-items:center;gap:8px;margin:0 0 2px;display:flex}.lp-col__head i{background:var(--tw-color-stage-idea);border-radius:50%;width:8px;height:8px}.lp-col__head b{color:var(--tw-color-ink-muted);font-size:var(--tw-text-xs);margin-left:auto}.lp-note{background:var(--tw-color-surface);min-height:34px;box-shadow:inset 0 0 0 1px var(--tw-color-border);border-radius:10px;gap:2px;padding:10px 12px;display:grid}.lp-note small{color:var(--tw-color-ink-muted);font-size:var(--tw-text-xs)}.lp-note--new{box-shadow:inset 3px 0 0 var(--tw-color-accent), 0 12px 24px -12px #0b253773}.lp-note--ghost{opacity:.6}.lp-note--short{width:70%}.is-active .lp-note--new{animation:lp-drop .9s var(--lp-ease) .3s both}.lp-ticks{gap:10px;margin:0 0 14px;padding:0;list-style:none;display:grid}.lp-ticks li{align-items:center;gap:10px;display:flex}.lp-tick{background:var(--tw-color-success);color:#fff;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;display:grid}.is-active .lp-tick{animation:lp-pop .5s var(--lp-ease) both;animation-delay:calc(var(--i) * .45s + .3s)}.lp-approve-row{gap:8px;display:flex}.lp-approve-btn,.lp-approve-alt{font-size:var(--tw-text-xs);font-weight:var(--tw-font-weight-semibold);border-radius:9px;align-items:center;gap:6px;padding:7px 12px;display:inline-flex}.lp-approve-btn{background:var(--tw-color-primary);color:#fff}.is-active .lp-approve-btn{animation:1.8s ease-in-out 1.8s infinite lp-nudge}.lp-approve-alt{box-shadow:inset 0 0 0 1px var(--tw-color-border)}.lp-scene--design{grid-template-columns:1fr 1fr;gap:16px}.lp-mock{background:var(--tw-color-surface);height:170px;box-shadow:inset 0 0 0 1px var(--tw-color-border), 0 14px 28px -16px #0b253766;border-radius:14px;align-content:start;gap:8px;padding:26px 12px 12px;display:grid;position:relative}.lp-mock__tag{color:var(--tw-color-ink-muted);font-size:.66rem;font-weight:var(--tw-font-weight-bold);letter-spacing:.06em;text-transform:uppercase;position:absolute;top:7px;left:12px}.lp-mock__bar{background:var(--tw-color-surface-subtle);border-radius:6px;height:14px}.lp-mock__chips{gap:5px;display:flex}.lp-mock__chips i{background:color-mix(in srgb, var(--tw-color-stage-design) 25%, transparent);border-radius:999px;width:30px;height:12px}.lp-mock__grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.lp-mock__grid i{background:var(--tw-color-surface-subtle);border-radius:7px;height:30px}.lp-mock--b .lp-mock__chips i{background:color-mix(in srgb, var(--tw-color-accent) 35%, transparent)}.lp-mock--b{box-shadow:inset 0 0 0 2px var(--tw-color-stage-design), 0 20px 36px -16px #6a5a9e80}.lp-mock__pick{background:var(--tw-color-stage-design);color:#fff;font-size:.68rem;font-weight:var(--tw-font-weight-bold);border-radius:999px;align-items:center;gap:4px;padding:4px 9px;display:inline-flex;position:absolute;bottom:-10px;right:-8px}.is-active .lp-mock--a{animation:lp-slide-in-left .8s var(--lp-ease) .2s both}.is-active .lp-mock--b{animation:lp-slide-in-right .8s var(--lp-ease) .35s both}.is-active .lp-mock__pick{animation:lp-pop .5s var(--lp-ease) 1.3s both}.lp-scene--code .lp-win{width:min(100%,400px)}.lp-code{font-family:var(--lp-mono);white-space:pre;counter-reset:line;gap:6px;margin:0;padding:0;font-size:.76rem;list-style:none;display:grid}.lp-code li{color:#e6eef4}.lp-code li:before{counter-increment:line;content:counter(line);color:#4f6b80;text-align:right;width:18px;margin-right:10px;display:inline-block}.lp-code__k{color:#c792ea}.lp-code__f{color:#6ad6de}.lp-code__p{color:#e6eef4}.is-active .lp-code li{animation:.6s steps(18,end) both lp-type-line;animation-delay:calc(var(--i) * .45s + .2s)}.lp-diff{font-family:var(--lp-mono);white-space:pre;border-radius:8px;margin:0 0 12px;padding:0;font-size:.74rem;list-style:none;display:grid;overflow:hidden}.lp-diff li{padding:4px 8px}.lp-diff__ctx{color:var(--tw-color-ink-muted)}.lp-diff__del{background:var(--tw-color-danger-subtle);color:var(--tw-color-danger)}.lp-diff__add{background:var(--tw-color-success-subtle);color:var(--tw-color-success)}.lp-review-note{color:var(--tw-color-ink-muted);font-size:var(--tw-text-xs);margin:0}.lp-review-note__who{color:var(--tw-color-ink);font-weight:var(--tw-font-weight-bold);margin-right:6px}.lp-stamp{border:3px solid var(--tw-color-success);color:var(--tw-color-success);font-size:var(--tw-text-lg);font-weight:var(--tw-font-weight-bold);letter-spacing:.06em;text-transform:uppercase;background:#ffffffe6;border-radius:10px;padding:6px 14px;position:absolute;bottom:12%;right:8%;transform:rotate(-10deg)}.is-active .lp-stamp{animation:.6s cubic-bezier(.3,1.6,.5,1) 1.1s both lp-stamp}.lp-checks{gap:10px;margin:0;padding:0;list-style:none;display:grid}.lp-checks li{font-weight:var(--tw-font-weight-semibold);align-items:center;gap:10px;display:flex}.lp-checks small{color:var(--tw-color-ink-muted);font-weight:var(--tw-font-weight-regular);margin-left:auto}.lp-check{place-items:center;width:22px;height:22px;display:grid;position:relative}.lp-check__spin{border:2.5px solid var(--tw-color-border);border-top-color:var(--tw-color-stage-test);opacity:0;border-radius:50%;position:absolute;inset:0}.lp-check__ok{background:var(--tw-color-success);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.is-active .lp-check__spin{animation:.7s linear infinite lp-spin-small,.2s linear both lp-fade-out;animation-delay:0s, calc(var(--i) * .6s + .8s);opacity:1}.is-active .lp-check__ok{animation:lp-pop .4s var(--lp-ease) both;animation-delay:calc(var(--i) * .6s + .8s)}.lp-git{width:min(100%,340px);overflow:visible}.lp-git__main{fill:none;stroke:var(--tw-color-primary);stroke-width:4px;stroke-linecap:round}.lp-git__branch{fill:none;stroke:var(--tw-color-stage-code);stroke-width:4px;stroke-linecap:round;stroke-dasharray:1}.lp-git__dot{fill:var(--tw-color-primary)}.lp-git__dot--b{fill:var(--tw-color-stage-code)}.lp-git__merge{fill:var(--tw-color-accent);stroke:#fff;stroke-width:3px;transform-box:fill-box;transform-origin:50%}.lp-git text{fill:var(--tw-color-ink-muted);font-size:12px;font-weight:600}.is-active .lp-git__branch{animation:lp-draw 1.4s var(--lp-ease) .2s both}.is-active .lp-git__merge{animation:lp-pop .5s var(--lp-ease) 1.5s both}.lp-tag{background:var(--tw-color-primary);color:#fff;font-weight:var(--tw-font-weight-bold);border-radius:8px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex;position:absolute;top:20%;right:12%}.is-active .lp-tag{animation:lp-drop .7s var(--lp-ease) 1.8s both}.lp-log-card{background:#fffaf3;border-radius:16px;width:min(100%,320px);padding:18px;position:relative;box-shadow:inset 0 0 0 1px #eadcc6,0 18px 36px -18px #0b253759}.lp-log-card__title{font-weight:var(--tw-font-weight-bold);align-items:center;gap:8px;margin:0 0 12px;display:flex}.lp-log-card__title .tw-icon{color:var(--tw-color-stage-done)}.lp-log-card dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.lp-log-card dt{color:var(--tw-color-ink-muted);font-size:var(--tw-text-xs)}.lp-log-card dd{font-size:var(--tw-text-xl);font-weight:var(--tw-font-weight-bold);margin:0}.lp-log-card__stamp{background:var(--tw-color-stage-done);color:#fff;font-size:var(--tw-text-xs);font-weight:var(--tw-font-weight-bold);border-radius:8px;padding:4px 10px;position:absolute;top:-14px;right:-10px;transform:rotate(6deg)}.is-active .lp-log-card{animation:lp-drop .8s var(--lp-ease) .2s both}.is-active .lp-log-card__stamp{animation:.6s cubic-bezier(.3,1.6,.5,1) 1s both lp-stamp}@media (prefers-reduced-motion:reduce){.lp-check__spin{display:none}}@keyframes lp-port-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}@keyframes lp-drop{0%{opacity:0;transform:translateY(-28px)rotate(-5deg)}to{opacity:1;transform:none}}@keyframes lp-pop{0%{opacity:0;transform:scale(.2)}70%{transform:scale(1.15)}to{opacity:1;transform:none}}@keyframes lp-slide-in-left{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:none}}@keyframes lp-slide-in-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:none}}@keyframes lp-type-line{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes lp-stamp{0%{opacity:0;transform:rotate(-10deg)scale(2.4)}to{opacity:1;transform:rotate(-10deg)scale(1)}}@keyframes lp-spin-small{to{transform:rotate(360deg)}}@keyframes lp-fade-out{to{opacity:0}}@media (max-width:959px){.lp-scene{font-size:var(--tw-text-xs);padding:12px}.lp-note--short{display:none}.lp-code,.lp-diff{font-size:.64rem}.lp-mock{height:150px}.lp-stage__text{font-size:var(--tw-text-md)}}.lp-code li,.lp-diff li{text-overflow:ellipsis;overflow:hidden}
