
    :root { --preview-max: 1180px; --ease-out: cubic-bezier(.16,1,.3,1); }
    body { min-width: 320px; }
    button, input { font: inherit; }
    .p2-shell { min-height: 100vh; padding-bottom: 96px; }
    .p2-bar { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid var(--border); background: color-mix(in oklab,var(--bg) 94%,transparent); backdrop-filter: blur(12px); }
    .p2-bar-inner { max-width: var(--preview-max); min-height: 68px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
    .p2-brand { display: flex; align-items: center; gap: 14px; min-width: 0; }
    .p2-brand a { min-height: 44px; display: flex; align-items: center; }
    .p2-brand img { width: 116px; height: auto; display: block; }
    .p2-preview-tag { display: inline-flex; align-items: center; gap: 7px; min-height: 28px; padding: 0 10px; border: 1px solid var(--amber-ring); border-radius: 999px; background: var(--amber-tint); color: var(--amber); font: 500 .6875rem/1 var(--font-mono); }
    .p2-preview-tag::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--amber); }
    .p2-bar-actions { display: flex; align-items: center; gap: 8px; }
    .p2-bar-actions .btn { min-height: 44px; }
    .p2-theme { width: 44px; padding: 0; }

    .p2-progress-wrap { border-bottom: 1px solid var(--border); background: var(--bg-1); }
    .p2-progress { max-width: var(--preview-max); margin: 0 auto; padding: 18px 24px; display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
    .p2-step { position: relative; display: grid; grid-template-columns: 32px 1fr; gap: 10px; align-items: center; min-height: 52px; padding: 0; border: 0; color: var(--fg-mute); text-align: left; background: transparent; cursor: default; }
    .p2-step:not(:last-child)::after { content: ''; position: absolute; top: 26px; left: calc(100% - 6px); width: 24px; height: 1px; background: var(--border-strong); }
    .p2-step.can-go { cursor: pointer; color: var(--fg-dim); }
    .p2-step-num { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid var(--border-strong); border-radius: 50%; font: 500 .6875rem/1 var(--font-mono); }
    .p2-step.active { color: var(--fg); }
    .p2-step.active .p2-step-num { border-color: var(--amber); color: var(--amber); box-shadow: 0 0 0 4px var(--amber-tint); }
    .p2-step.done .p2-step-num { background: var(--amber); border-color: var(--amber); color: var(--primary-fg); }
    .p2-step-title { display: block; font-size: .875rem; font-weight: 600; }
    .p2-step-sub { display: block; margin-top: 2px; font: 400 .6875rem/1.35 var(--font-mono); color: var(--fg-mute); }
    .p2-mobile-progress { display: none; }

    .p2-layout { max-width: var(--preview-max); margin: 0 auto; padding: 48px 24px 72px; display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 64px; align-items: start; }
    .p2-main { min-width: 0; }
    .p2-stage { animation: p2-stage-in 360ms var(--ease-out) both; }
    .p2-kicker { margin: 0 0 10px; color: var(--amber); font: 500 .75rem/1.4 var(--font-mono); }
    .p2-heading { margin: 0; max-width: 680px; font-size: 2.5rem; line-height: 1.08; letter-spacing: -.035em; text-wrap: balance; }
    .p2-lead { max-width: 65ch; margin: 14px 0 0; color: var(--fg-dim); font-size: 1rem; line-height: 1.65; text-wrap: pretty; }
    .p2-section { margin-top: 40px; }
    .p2-section-title { margin: 0 0 14px; font-size: 1rem; }
    .p2-choice-list { border-top: 1px solid var(--border); }
    .p2-choice { width: 100%; min-height: 104px; padding: 18px 0; display: grid; grid-template-columns: 32px minmax(0,1fr) auto; gap: 16px; align-items: center; border: 0; border-bottom: 1px solid var(--border); background: transparent; color: var(--fg); text-align: left; cursor: pointer; transition: transform 180ms var(--ease-out), background 180ms var(--ease-out); }
    .p2-choice:hover { transform: translateX(4px); }
    .p2-choice:focus-visible, .p2-loc:focus-visible, .p2-segment:focus-visible, .p2-step:focus-visible, .p2-icon-button:focus-visible { outline: 2px solid var(--amber); outline-offset: 3px; }
    .p2-choice.selected { background: linear-gradient(90deg,var(--amber-tint),transparent 72%); }
    .p2-radio { width: 20px; height: 20px; display: grid; place-items: center; border: 1px solid var(--border-strong); border-radius: 50%; }
    .p2-choice.selected .p2-radio { border-color: var(--amber); }
    .p2-choice.selected .p2-radio::after { content: ''; width: 10px; height: 10px; border-radius: 50%; background: var(--amber); }
    .p2-choice-copy strong { display: block; font-size: 1.0625rem; }
    .p2-choice-copy span { display: block; max-width: 55ch; margin-top: 4px; color: var(--fg-dim); font-size: .875rem; line-height: 1.5; }
    .p2-choice-meta { text-align: right; }
    .p2-choice-price { display: block; color: var(--amber); font: 600 .875rem/1.3 var(--font-mono); }
    .p2-choice-note { display: block; margin-top: 4px; color: var(--fg-mute); font: 400 .6875rem/1.3 var(--font-mono); }

    .p2-search-label { display: block; margin-bottom: 8px; color: var(--fg-dim); font-size: .8125rem; font-weight: 600; }
    .p2-search { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--bg-1); color: var(--fg); outline: none; }
    .p2-search:focus { border-color: var(--amber); box-shadow: 0 0 0 3px var(--amber-tint); }
    .p2-locations { margin-top: 20px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid var(--border); }
    .p2-loc { min-height: 90px; padding: 16px 14px; display: grid; grid-template-columns: 12px 1fr; gap: 12px; align-items: center; border: 0; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); background: transparent; color: var(--fg); text-align: left; cursor: pointer; }
    .p2-loc:nth-child(even) { border-right: 0; }
    .p2-loc.selected { background: var(--amber-tint); }
    .p2-loc strong { display: block; font-size: .9375rem; }
    .p2-loc span { display: block; margin-top: 3px; color: var(--fg-mute); font: 400 .6875rem/1.4 var(--font-mono); }
    .p2-empty { padding: 32px 0; color: var(--fg-dim); }

    .p2-config-summary { display: grid; gap: 10px; margin-top: 36px; }
    .p2-config-block { border-top: 1px solid var(--border); }
    .p2-config-block[open] { border-color: var(--amber-ring); }
    .p2-config-block summary { min-height: 68px; padding: 0 2px; display: grid; grid-template-columns: 32px 1fr auto; gap: 12px; align-items: center; list-style: none; cursor: pointer; }
    .p2-config-block summary::-webkit-details-marker { display: none; }
    .p2-config-index { color: var(--amber); font: 500 .6875rem/1 var(--font-mono); }
    .p2-config-block summary strong { font-size: .9375rem; }
    .p2-config-current { color: var(--fg-mute); font: 400 .6875rem/1.3 var(--font-mono); text-align: right; }
    .p2-config-chevron { display: inline-block; margin-left: 8px; color: var(--amber); transition: transform 180ms var(--ease-out); }
    .p2-config-block[open] .p2-config-chevron { transform: rotate(45deg); }
    .p2-config-content { padding: 4px 0 24px 44px; }
    .p2-plan-list { border-top: 1px solid var(--border); }
    .p2-plan { width: 100%; min-height: 84px; padding: 14px 0; display: grid; grid-template-columns: 20px minmax(0,1.3fr) minmax(0,1fr) auto; gap: 12px; align-items: center; border: 0; border-bottom: 1px solid var(--border); background: transparent; color: var(--fg); text-align: left; cursor: pointer; }
    .p2-plan.selected { background: linear-gradient(90deg,var(--amber-tint),transparent 75%); }
    .p2-plan-label { display: block; font-size: .875rem; font-weight: 600; }
    .p2-plan-tag { display: inline-block; margin-top: 4px; color: var(--amber); font: 500 .625rem/1.3 var(--font-mono); }
    .p2-plan-spec { color: var(--fg-dim); font-size: .75rem; line-height: 1.5; }
    .p2-plan-price { color: var(--amber); font: 600 .8125rem/1.3 var(--font-mono); white-space: nowrap; }
    .p2-segments { display: flex; flex-wrap: wrap; gap: 8px; }
    .p2-segment { min-height: 44px; padding: 0 14px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--bg-1); color: var(--fg-dim); cursor: pointer; }
    .p2-segment.selected { border-color: var(--amber); background: var(--amber-tint); color: var(--fg); }
    .p2-included-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 24px; margin: 0; padding: 0; list-style: none; }
    .p2-included-list li { position: relative; padding-left: 18px; color: var(--fg-dim); font-size: .8125rem; }
    .p2-included-list li::before { content: '✓'; position: absolute; left: 0; color: var(--amber); }

    .p2-review { margin-top: 36px; border-top: 1px solid var(--border); }
    .p2-review-row { min-height: 58px; padding: 12px 0; display: flex; justify-content: space-between; align-items: center; gap: 24px; border-bottom: 1px solid var(--border); }
    .p2-review-row span:first-child { color: var(--fg-dim); font-size: .8125rem; }
    .p2-review-row strong { max-width: 65%; text-align: right; font-size: .875rem; }
    .p2-checkout-note { margin-top: 28px; padding: 18px 0; display: grid; grid-template-columns: 24px 1fr; gap: 12px; border-top: 1px solid var(--amber); border-bottom: 1px solid var(--border); }
    .p2-checkout-note svg { width: 20px; color: var(--amber); }
    .p2-checkout-note strong { display: block; font-size: .875rem; }
    .p2-checkout-note span { display: block; margin-top: 4px; color: var(--fg-dim); font-size: .8125rem; line-height: 1.5; }

    .p2-actions { margin-top: 40px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
    .p2-actions .btn { min-height: 48px; padding-inline: 18px; }
    .p2-next { min-width: 190px; }
    .p2-next:disabled { opacity: .42; cursor: not-allowed; }

    .p2-summary { position: sticky; top: 96px; border-top: 1px solid var(--amber); padding-top: 22px; }
    .p2-summary-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
    .p2-summary-head h2 { margin: 0; font-size: 1rem; }
    .p2-summary-head span { color: var(--fg-mute); font: 400 .625rem/1 var(--font-mono); }
    .p2-summary-total { margin-top: 22px; padding-bottom: 22px; border-bottom: 1px solid var(--border); }
    .p2-summary-total small { display: block; color: var(--fg-mute); font: 400 .6875rem/1.3 var(--font-mono); }
    .p2-summary-total strong { display: block; margin-top: 6px; font-size: 2rem; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
    .p2-summary-total strong span { color: var(--fg-mute); font-size: .75rem; letter-spacing: 0; }
    .p2-summary-lines { margin: 0; padding: 6px 0; }
    .p2-summary-lines div { min-height: 44px; padding: 10px 0; display: flex; justify-content: space-between; gap: 16px; align-items: center; border-bottom: 1px solid var(--border); }
    .p2-summary-lines dt { color: var(--fg-dim); font-size: .75rem; }
    .p2-summary-lines dd { margin: 0; max-width: 62%; text-align: right; font-size: .8125rem; font-weight: 600; }
    .p2-summary-included { margin-top: 16px; color: var(--fg-dim); font-size: .75rem; line-height: 1.65; }
    .p2-summary-included strong { color: var(--fg); }
    .p2-summary-empty { margin-top: 22px; padding: 22px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); color: var(--fg-dim); font-size: .8125rem; line-height: 1.6; }
    .p2-mobile-bar { display: none; }

    .p2-modal { width: min(520px,calc(100vw - 32px)); padding: 0; border: 1px solid var(--border-strong); border-radius: var(--radius-lg); background: var(--bg-1); color: var(--fg); }
    .p2-modal::backdrop { background: oklch(0.08 0.01 250 / .74); backdrop-filter: blur(4px); }
    .p2-modal-inner { padding: 28px; }
    .p2-modal-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: var(--amber-tint); color: var(--amber); font-size: 1.2rem; }
    .p2-modal h2 { margin: 20px 0 8px; font-size: 1.5rem; }
    .p2-modal p { margin: 0; color: var(--fg-dim); line-height: 1.65; }
    .p2-modal-actions { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 8px; }
    .p2-modal-actions .btn { min-height: 44px; }
    @keyframes p2-stage-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

    @media (max-width: 900px) {
      .p2-layout { grid-template-columns: 1fr; gap: 32px; }
      .p2-summary { display: none; }
      .p2-mobile-bar { position: fixed; z-index: 45; left: 0; right: 0; bottom: 0; min-height: 76px; padding: 10px max(18px,env(safe-area-inset-left)) max(10px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-right)); display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid var(--border-strong); background: color-mix(in oklab,var(--bg-1) 96%,transparent); backdrop-filter: blur(14px); }
      .p2-mobile-price small { display: block; color: var(--fg-mute); font: 400 .625rem/1.2 var(--font-mono); }
      .p2-mobile-price strong { display: block; margin-top: 3px; font-size: 1.125rem; }
      .p2-mobile-bar .btn { min-height: 48px; }
    }
    @media (max-width: 680px) {
      .p2-bar-inner { min-height: 64px; padding: 0 18px; }
      .p2-brand img { width: 105px; }
      .p2-preview-tag { display: none; }
      .p2-bar-actions .p2-support { display: none; }
      .p2-progress { padding: 14px 18px; display: block; }
      .p2-progress > .p2-step { display: none; }
      .p2-mobile-progress { display: block; }
      .p2-mobile-progress-row { display: flex; justify-content: space-between; gap: 14px; align-items: center; }
      .p2-mobile-progress strong { font-size: .875rem; }
      .p2-mobile-progress span { color: var(--fg-mute); font: 400 .6875rem/1.3 var(--font-mono); }
      .p2-progress-track { height: 3px; margin-top: 10px; overflow: hidden; border-radius: 99px; background: var(--border); }
      .p2-progress-fill { height: 100%; background: var(--amber); transition: width 260ms var(--ease-out); }
      .p2-layout { padding: 34px 18px 92px; }
      .p2-heading { font-size: 2rem; }
      .p2-choice { min-height: 116px; grid-template-columns: 26px 1fr; }
      .p2-choice-meta { grid-column: 2; text-align: left; }
      .p2-locations { grid-template-columns: 1fr; }
      .p2-loc { border-right: 0; }
      .p2-config-content { padding-left: 0; }
      .p2-config-block summary { grid-template-columns: 28px 1fr; }
      .p2-config-current { grid-column: 2; text-align: left; }
      .p2-plan { min-height: 116px; grid-template-columns: 20px 1fr auto; }
      .p2-plan-spec { grid-column: 2 / -1; }
      .p2-included-list { grid-template-columns: 1fr; }
      .p2-actions { margin-top: 32px; }
      .p2-actions .btn { flex: 1 1 0; }
      .p2-next { min-width: 0; }
      .p2-review-row { align-items: flex-start; }
    }
    @media (prefers-reduced-motion: reduce) {
      .p2-stage { animation: none; }
      *,*::before,*::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
    }
  
    /* Onboarding v2: live infrastructure control deck */
    .p2-v2 .p2-main:focus { outline: none; }
    .p2-v2 .p2-bar-inner{max-width:none}.p2-v2 .p2-stage{position:relative}.p2-v2 .p2-stage::before{content:'';display:block;width:48px;height:3px;margin-bottom:22px;background:var(--amber);transform-origin:left;animation:p2-signal-in 420ms var(--ease-out) both}.p2-v2 .p2-kicker{margin-bottom:12px;color:var(--fg-mute)}.p2-v2 .p2-heading{max-width:760px;font-size:3rem;line-height:1;letter-spacing:-.04em}.p2-v2 .p2-lead{max-width:62ch;font-size:1.0625rem}
    .p2-topology{position:relative;height:210px;margin-bottom:24px;overflow:hidden;border-bottom:1px solid var(--border);background:linear-gradient(180deg,color-mix(in oklab,var(--bg-1) 94%,var(--amber) 6%),var(--bg))}.p2-topology-grid{position:absolute;inset:0;opacity:.26;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,black,transparent 92%)}.p2-topology-ring{position:absolute;left:50%;top:49%;width:118px;height:118px;border:1px solid var(--border);border-radius:50%;transform:translate(-50%,-50%)}.p2-topology-ring::after{content:'';position:absolute;inset:13px;border:1px dashed var(--border-strong);border-radius:inherit;animation:p2-orbit 18s linear infinite}.p2-core{position:absolute;left:50%;top:49%;width:72px;height:72px;display:grid;place-content:center;border:1px solid var(--amber-ring);border-radius:50%;background:var(--bg-1);text-align:center;transform:translate(-50%,-50%);box-shadow:0 0 20px var(--amber-tint)}.p2-core::after{content:'';position:absolute;inset:7px;border-radius:inherit;background:var(--amber-tint);animation:p2-core-pulse 2.8s ease-in-out infinite}.p2-core span,.p2-core strong{position:relative;z-index:1;display:block}.p2-core span{color:var(--fg-mute);font:500 .5rem/1.2 var(--font-mono)}.p2-core strong{margin-top:3px;color:var(--amber);font:600 .75rem/1 var(--font-mono)}
    .p2-node{position:absolute;min-width:74px;max-width:104px;padding:7px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg-mute);font:500 .5625rem/1.25 var(--font-mono);text-align:center;transition:border-color 180ms var(--ease-out),color 180ms var(--ease-out),background 180ms var(--ease-out)}.p2-node strong{display:block;margin-top:2px;overflow:hidden;color:inherit;font-size:.625rem;text-overflow:ellipsis;white-space:nowrap}.p2-node-product{left:8px;top:22px}.p2-node-location{right:8px;top:22px}.p2-node-plan{left:8px;bottom:22px}.p2-node-secure{right:8px;bottom:22px}.p2-node.active{border-color:var(--amber-ring);background:var(--amber-tint);color:var(--fg)}.p2-node.active::before{content:'';display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:var(--amber);box-shadow:0 0 8px var(--amber)}.p2-path{position:absolute;height:1px;background:var(--border);transform-origin:left}.p2-path-a{left:78px;top:57px;width:88px;transform:rotate(24deg)}.p2-path-b{right:78px;top:57px;width:88px;transform:rotate(156deg);transform-origin:right}.p2-path-c{left:78px;bottom:57px;width:88px;transform:rotate(-24deg)}.p2-path-d{right:78px;bottom:57px;width:88px;transform:rotate(204deg);transform-origin:right}.p2-topology.has-product .p2-path-a,.p2-topology.has-location .p2-path-b,.p2-topology.has-plan .p2-path-c,.p2-topology.has-plan .p2-path-d{background:var(--amber);box-shadow:0 0 7px var(--amber-ring)}
    .p2-v2 .p2-summary{top:92px;padding-top:0;border-top:0;max-height:calc(100vh - 116px);overflow:auto;scrollbar-width:thin}.p2-v2 .p2-summary-total strong{font-size:2.4rem}.p2-v2 .p2-choice{position:relative;overflow:hidden}.p2-v2 .p2-choice.selected,.p2-v2 .p2-plan.selected{background:var(--amber-tint)}.p2-v2 .p2-choice.selected::after{content:'SELECTED';position:absolute;right:16px;top:12px;color:var(--amber);font:500 .5625rem/1 var(--font-mono)}.p2-v2 .p2-plan.selected .p2-plan-label{color:var(--amber-bright)}
    @keyframes p2-signal-in{from{transform:scaleX(.12);opacity:.25}to{transform:scaleX(1);opacity:1}}@keyframes p2-orbit{to{transform:rotate(360deg)}}@keyframes p2-core-pulse{0%,100%{opacity:.24;transform:scale(.88)}50%{opacity:.65;transform:scale(1)}}
    @media (min-width:1051px){.p2-v2 .p2-shell{display:grid;grid-template-columns:236px minmax(0,1fr);grid-template-rows:auto 1fr}.p2-v2 .p2-bar{grid-column:1/-1}.p2-v2 .p2-progress-wrap{grid-column:1;grid-row:2;position:sticky;top:68px;align-self:start;height:calc(100vh - 68px);border-right:1px solid var(--border);border-bottom:0;background:var(--bg-1)}.p2-v2 .p2-progress{height:100%;padding:42px 24px;display:flex;flex-direction:column;gap:8px}.p2-v2 .p2-step{min-height:76px;grid-template-columns:36px 1fr}.p2-v2 .p2-step:not(:last-child)::after{left:17px;top:56px;width:1px;height:36px}.p2-v2 .p2-step-num{width:36px;height:36px}.p2-v2 .p2-layout{grid-column:2;grid-row:2;width:100%;max-width:1440px;margin:0;padding:56px 48px 80px;grid-template-columns:minmax(520px,1fr) 350px;gap:clamp(48px,6vw,92px)}.p2-v2 .p2-choice-list{display:grid;grid-template-columns:1.15fr .85fr;gap:1px;border-top:0;background:var(--border)}.p2-v2 .p2-choice{min-height:132px;padding:22px;grid-template-columns:28px minmax(0,1fr);background:var(--bg);border-bottom:0}.p2-v2 .p2-choice:first-child{grid-row:span 2;min-height:265px;align-content:center;background:var(--bg-1)}.p2-v2 .p2-choice-meta{grid-column:2;text-align:left}.p2-v2 .p2-choice:first-child .p2-choice-copy strong{font-size:1.35rem}.p2-v2 .p2-choice:first-child .p2-choice-price{margin-top:12px;font-size:1rem}.p2-v2 .p2-choice:hover{transform:none;background:var(--bg-2)}.p2-v2 .p2-choice.selected{background:color-mix(in oklab,var(--bg-1) 76%,var(--amber) 24%)}}
    @media (min-width:681px) and (max-width:1050px){.p2-v2 .p2-layout{grid-template-columns:1fr;gap:30px}.p2-v2 .p2-summary{display:none}.p2-v2 .p2-mobile-bar{position:fixed;z-index:45;left:0;right:0;bottom:0;min-height:76px;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-strong);background:var(--bg-1)}}
    @media (max-width:680px){.p2-v2 .p2-stage::before{margin-bottom:18px}.p2-v2 .p2-heading{font-size:2.25rem;line-height:1.02}.p2-v2 .p2-lead{font-size:.9375rem}.p2-v2 .p2-choice.selected::after{top:10px;right:8px}}@media (prefers-reduced-motion:reduce){.p2-topology-ring::after,.p2-core::after{animation:none}}

      @media (min-width:1051px){.p2-v2 .p2-shell{grid-template-columns:216px minmax(0,1fr)}.p2-v2 .p2-progress{padding-inline:20px}.p2-v2 .p2-layout{padding:52px 32px 80px;grid-template-columns:minmax(560px,1fr) 310px;gap:36px}.p2-v2 .p2-choice-list{grid-template-columns:1.08fr .92fr}.p2-v2 .p2-choice:first-child{grid-row:span 3;min-height:398px}.p2-topology{height:196px}.p2-path-a,.p2-path-c{left:72px;width:72px}.p2-path-b,.p2-path-d{right:72px;width:72px}}
  .p2-site-nav{display:flex;align-items:center;gap:4px}.p2-site-nav a{min-height:44px;padding:0 9px;display:flex;align-items:center;border-radius:var(--radius);color:var(--fg-dim);font-size:.8125rem;font-weight:500;transition:background 160ms var(--ease-out),color 160ms var(--ease-out)}.p2-site-nav a:hover,.p2-site-nav a:focus-visible{background:var(--bg-2);color:var(--fg)}.p2-client{border-color:var(--amber-ring)!important;color:var(--amber)!important}.p2-footer{grid-column:1/-1;position:relative;z-index:2;border-top:1px solid var(--border);background:var(--bg-1)}.p2-footer-inner{max-width:1240px;margin:0 auto;padding:56px 24px 24px}.p2-footer-help{min-height:92px;margin-bottom:46px;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--border)}.p2-footer-help strong{display:block;font-size:1.25rem}.p2-footer-help span{display:block;margin-top:5px;color:var(--fg-dim);font-size:.875rem}.p2-footer-help .btn{min-height:46px}.p2-footer-grid{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(4,minmax(130px,1fr));gap:40px}.p2-footer-brand img{width:117px;height:auto;display:block}.p2-footer-brand p{max-width:32ch;margin:16px 0 0;color:var(--fg-dim);font-size:.8125rem;line-height:1.65}.p2-footer-status{display:inline-flex;align-items:center;gap:7px;margin-top:16px;color:var(--fg-dim);font:500 .625rem/1.3 var(--font-mono)}.p2-footer-status::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--amber);box-shadow:0 0 8px var(--amber)}.p2-footer-col h2{margin:0 0 8px;color:var(--fg);font-size:.75rem}.p2-footer-col a{min-height:40px;display:flex;align-items:center;color:var(--fg-dim);font-size:.75rem}.p2-footer-col a:hover,.p2-footer-col a:focus-visible{color:var(--amber)}.p2-footer-bottom{margin-top:44px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--border);color:var(--fg-mute);font:400 .625rem/1.5 var(--font-mono)}.p2-footer-bottom a{color:var(--fg-dim)}@media(max-width:1050px){.p2-site-nav{display:none}.p2-footer-grid{grid-template-columns:1.4fr repeat(2,1fr)}.p2-footer-brand{grid-row:span 2}}@media(max-width:680px){.p2-client{display:none!important}.p2-footer-inner{padding:42px 18px 24px}.p2-footer-help{align-items:flex-start;flex-direction:column;margin-bottom:34px}.p2-footer-help .btn{width:100%}.p2-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}.p2-footer-brand{grid-column:1/-1;grid-row:auto}.p2-footer-col a{min-height:44px}.p2-footer-bottom{align-items:flex-start;flex-direction:column;margin-top:34px}}

@media (min-width:1051px){
  .p2-v2 .p2-progress-wrap{top:98px;height:calc(100vh - 98px)}
  .p2-v2 .p2-summary{top:122px;max-height:calc(100vh - 146px)}
}.p2-location-meta{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:8px}.p2-location-meta .p2-search-label{margin:0}.p2-location-meta>span{color:var(--fg-mute);font:400 .6875rem/1.3 var(--font-mono);white-space:nowrap}.p2-locations{max-height:520px;overflow:auto;scrollbar-width:thin}.p2-plan-list{max-height:560px;overflow:auto;scrollbar-width:thin}@media(max-width:680px){.p2-location-meta{align-items:flex-start;flex-direction:column;gap:4px}.p2-locations,.p2-plan-list{max-height:60vh}}.p2-config-block:first-child .p2-config-content{padding-left:0}.p2-plan-list{max-height:none;overflow:visible}.p2-plan{padding:16px 12px;grid-template-columns:20px minmax(160px,220px) minmax(0,1fr) auto;gap:10px}.p2-plan-more{min-height:64px;padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border)}.p2-plan-more span{color:var(--fg-mute);font:400 .6875rem/1.3 var(--font-mono)}.p2-plan-more .btn{min-height:44px}@media(max-width:680px){.p2-plan{padding:14px 0;grid-template-columns:20px minmax(0,1fr) auto;grid-template-areas:"radio copy price" ". spec spec";row-gap:6px}.p2-plan>.p2-radio{grid-area:radio}.p2-plan-copy{grid-area:copy}.p2-plan-spec{grid-area:spec}.p2-plan-price{grid-area:price;align-self:start;padding-top:2px}.p2-plan-more{align-items:stretch;flex-direction:column}.p2-plan-more .btn{width:100%}}
.p2-loc-title{display:flex!important;align-items:center;gap:8px}.p2-loc .p2-loc-flag{display:inline-block!important;flex:0 0 auto;margin:0;color:var(--fg);font:normal 1.25rem/1 system-ui}.p2-loc-title strong{display:inline!important;font-size:.9375rem}.p2-location-context-wrap{margin:28px 0 24px}.p2-location-context{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-top:1px solid var(--amber-ring);border-bottom:1px solid var(--border)}.p2-context-flag{flex:0 0 auto;font:normal 2rem/1 system-ui}.p2-location-context strong{display:block;font-size:1rem}.p2-location-context div span{display:block;margin-top:5px;color:var(--fg-dim);font-size:.8125rem;line-height:1.5}.p2-os-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p2-os-grid .p2-segment{display:flex;align-items:center;justify-content:flex-start;gap:10px;text-align:left}.p2-os-icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;color:var(--amber)}.p2-os-icon svg{display:block;width:24px;height:24px}.p2-addon-list{display:grid;gap:8px}.p2-addon{width:100%;min-height:64px;padding:12px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);color:var(--fg);text-align:left;cursor:pointer}.p2-addon:hover,.p2-addon:focus-visible{border-color:var(--amber-ring)}.p2-addon.selected{border-color:var(--amber);background:var(--amber-tint)}.p2-addon-mark{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--border-strong);border-radius:50%;color:var(--amber);font:500 1rem/1 var(--font-mono)}.p2-addon.selected .p2-addon-mark{background:var(--amber);border-color:var(--amber);color:var(--bg)}.p2-addon-copy strong,.p2-addon-copy span{display:block}.p2-addon-copy strong{font-size:.8125rem}.p2-addon-copy span{margin-top:3px;color:var(--fg-dim);font-size:.6875rem;line-height:1.4}.p2-addon-price{color:var(--fg-mute);font:400 .625rem/1.3 var(--font-mono);white-space:nowrap}.p2-topology-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.p2-topology .p2-path{position:static;width:auto;height:auto;background:none;box-shadow:none;transform:none;transform-origin:initial}.p2-topology-line{stroke:var(--border);stroke-width:1;vector-effect:non-scaling-stroke}.p2-topology.has-product .p2-path-a,.p2-topology.has-location .p2-path-b,.p2-topology.has-plan .p2-path-c,.p2-topology.has-plan .p2-path-d{stroke:var(--amber);filter:drop-shadow(0 0 4px var(--amber-ring))}@media(max-width:680px){.p2-os-grid{grid-template-columns:1fr}.p2-addon{grid-template-columns:24px minmax(0,1fr);}.p2-addon-price{grid-column:2;white-space:normal}.p2-location-context-wrap{margin:20px 0}.p2-context-flag{font-size:1.75rem}}

.p2-topology-line{position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;transform-origin:initial!important}
/* Inventory controls: the left marker is a location pin, not a selection radio. */
.p2-loc-flag{min-width:1.35rem;text-align:center}
.p2-os-grid small{display:block;margin-top:3px;color:var(--fg-mute);font:400 .625rem/1.2 var(--font-mono)}
/* Location marker stays visible in the fixed left rail; it is not a selection control. */
.p2-loc-pin{width:8px;height:8px;display:block;border-radius:50%;background:var(--amber);box-shadow:0 0 0 3px var(--amber-tint)}
.p2-os-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.p2-os-card{min-width:0;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);transition:border-color 160ms var(--ease-out),background 160ms var(--ease-out)}
.p2-os-card:hover,.p2-os-card.selected{border-color:var(--amber);background:var(--amber-tint)}
.p2-os-card-head{width:100%;min-height:42px;padding:0;display:flex;align-items:center;gap:10px;background:none;border:0;color:var(--fg);text-align:left;cursor:pointer}
.p2-os-card-head>span:last-child{min-width:0}.p2-os-card-head strong,.p2-os-card-head small{display:block}.p2-os-card-head strong{overflow:hidden;font-size:.8125rem;text-overflow:ellipsis;white-space:nowrap}.p2-os-card-head small{margin-top:3px;color:var(--fg-mute);font:400 .625rem/1.2 var(--font-mono);text-transform:uppercase}
.p2-os-select{width:100%;height:32px;margin-top:10px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--fg);font:400 .6875rem/1.2 var(--font-mono)}
@media(max-width:680px){.p2-os-grid{grid-template-columns:1fr}}
.p2-loc-pin{width:26px;height:26px;display:grid;place-items:center;background:transparent;box-shadow:none}
.p2-loc-pin .p2-loc-flag{display:block;font:normal 1.25rem/1 system-ui}