/* /deployment (scripts/deployment-page.mjs). Builds on bridge-page.css and solution-page.css; only what is particular to
   this page lives here. */

/* Hero card: the three ways to run it */
.dp-ways li{grid-template-columns:96px minmax(0,1fr)}

/* Pick your setup */
.dp-setups{padding-block:96px 0}
.dp .dp-tabs{grid-template-columns:repeat(3,minmax(0,1fr));max-width:860px}
.dp-panel{margin-top:24px}
.dp-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:32px 0 0}
.dp-facts div{min-width:0}
.dp-facts dt{font-size:13px;color:var(--muted)}
.dp-facts dd{margin:6px 0 0;font-size:15px;line-height:1.5}
.dp .dp-example{display:flex;align-items:center;gap:8px;margin:24px 0 0;font-size:14px;color:var(--muted)}
.dp-example::before{content:'';width:6px;height:6px;flex:none;border-radius:50%;background:var(--bx-accent)}

/* Workstation in four steps */
.dp-steps-section{padding-block:96px 0}
.dp-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:44px 0 0;padding:0;list-style:none;counter-reset:dp-step}
.dp-step{display:flex;flex-direction:column;gap:22px;min-width:0;padding:28px 28px 0;border:1px solid var(--line);border-radius:var(--radius,22px);background:var(--surface);overflow:hidden;counter-increment:dp-step}
.dp-step h3{margin:0;font-size:20px;font-weight:500;letter-spacing:-.02em}
.dp-step h3::before{content:counter(dp-step) '. ';color:var(--muted)}
.dp .dp-step-copy p{margin:10px 0 0;max-width:460px;font-size:15px;line-height:1.5;color:var(--muted)}
.dp-step-art{flex:1;display:flex;flex-direction:column;justify-content:flex-end}
/* Step 1: the setup terminal (round9.css section 7) with its Mac and Windows pills and the model note under it. */
.dp-step-art:has(.st){justify-content:flex-start;gap:10px;padding-bottom:24px}
.dp .dp-st-note{margin:0;padding-left:11px;font-size:13px;line-height:1.5;color:var(--muted)}
.dp-st-note a{color:var(--fg)}
.dp-capture{display:block;align-self:center;width:100%;max-width:520px}
.dp-capture img{display:block;width:100%;height:auto;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0}
/* The approval capture is already a finished card: show it whole, with no second border. */
.dp-step-art:has(.dp-capture-card){padding-bottom:28px}
.dp-capture-card{max-width:440px}
.dp-capture-card img{border:0;border-radius:0}
/* Step 2: Bridge's installer window (bridge-tiles.js plays it: is-hover, is-press, is-run, is-done) and the real link under
   it. Install, the progress bar and the finished line share one place, so the window keeps its size. */
.dp-step-art:has(.bx-win-install){justify-content:flex-start;gap:14px;padding-bottom:24px}
.dp-inst{display:grid;gap:14px}
.dp .dp-inst p{margin:0}
.dp .dp-inst-app{display:flex;align-items:center;gap:12px}
.dp-inst-icon{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:11px;background:#0b0c10;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.dp-inst-icon img{width:34px;height:34px}
.dp-inst-app>span:last-child{display:flex;flex-direction:column;min-width:0}
.dp-inst-app b{font-size:14px;font-weight:500}
.dp-inst-app small{font-size:11.5px;color:var(--muted)}
.dp-inst-os{display:grid}
.dp .dp-inst-os p{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:12.5px}
.dp-inst-os em{font-style:normal;font-size:11.5px;color:var(--muted)}
.dp-inst-go{display:flex;align-items:center;justify-content:center;height:34px;border-radius:999px;background:#7c3aed;color:#fff;font-size:12.5px;font-weight:500;transition:transform .15s ease,box-shadow .2s ease}
.dp .dp-inst :is(.dp-inst-run,.dp-inst-ok){display:flex;align-items:center;gap:10px;height:34px;font-size:12.5px;visibility:hidden}
.dp-inst-run span{flex:none}
.dp-inst-run>i{flex:1;height:6px;border-radius:999px;background:var(--surface2);overflow:hidden}
.dp-inst-run b{display:block;width:100%;height:100%;border-radius:inherit;background:#a78bfa;transform:scaleX(0);transform-origin:left}
.dp-inst-ok i{width:8px;height:8px;flex:none;border-radius:50%;background:var(--c-green)}
.dp-inst.is-hover .dp-inst-go{box-shadow:0 0 0 3px color-mix(in srgb,#a78bfa 55%,transparent)}
.dp-inst.is-press .dp-inst-go{transform:scale(.95)}
.dp-inst:is(.is-run,.is-done) .dp-inst-go{visibility:hidden}
.dp-inst.is-run .dp-inst-run{visibility:visible}
.dp-inst.is-run .dp-inst-run b{transform:scaleX(1);transition:transform 1.5s cubic-bezier(.4,0,.2,1)}
.dp-inst.is-done .dp-inst-run{visibility:hidden}
.dp-inst.is-done .dp-inst-ok{visibility:visible}
@media(prefers-color-scheme:light){:root:not([data-theme=dark]) .dp-inst-run b{background:#7c3aed}}
:root[data-theme=light] .dp-inst-run b{background:#7c3aed}
.dp-step-art .dp-inst-cta{align-self:flex-start}

/* Admin portal */
.dp-admin{padding-block:96px 0}
.dp-admin-grid{margin-top:44px}
.dp-rows{margin:0;padding:6px 16px 14px;list-style:none}
.dp-rows li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:12.5px}
.dp-rows li:first-child{border-top:0}
.dp-rows span{display:flex;flex-direction:column;min-width:0}
.dp-rows b{font-weight:500}
.dp-rows small{font-size:11.5px;color:var(--muted)}
.dp-signin{display:grid;justify-items:start;gap:10px;padding:22px 20px 24px}
.dp .dp-signin p{margin:0}
.dp .dp-signin-mark{font-size:12px;color:var(--muted)}
.dp .dp-signin-title{font-size:18px;font-weight:500;letter-spacing:-.01em}
.dp-signin .button{pointer-events:none}
.dp .dp-signin-or{font-size:12px;color:var(--muted)}
.dp-signin-row{display:flex;justify-content:space-between;gap:12px;width:100%;padding:9px 0;border-top:1px solid var(--line);font-size:12.5px}
.dp-signin-row span{color:var(--muted)}
.dp-signin-row b{font-weight:500;text-align:right}
.dp-policy{display:grid;padding:8px 16px 16px}
.dp-policy>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.dp-policy>div:first-child{border-top:0}
.dp-policy span{display:flex;flex-direction:column;min-width:0}
.dp-policy b{font-weight:500;font-size:13px}
.dp-policy small{font-size:11.5px;color:var(--muted)}
.dp .dp-hosts{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 0;font-size:11.5px;color:var(--muted)}
.dp-hosts span{margin-right:4px}
.dp-hosts em{padding:2px 9px;border:1px solid var(--line);border-radius:999px;font-style:normal;color:var(--fg)}
.dp-usage{padding:16px 16px 20px}
.dp-usage ul{display:grid;gap:9px;margin:0 0 18px;padding:0;list-style:none}
.dp-usage li{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:12px;font-size:12.5px}
.dp-usage li i{height:8px;width:var(--w);border-radius:999px;background:var(--bx-accent)}
.dp-model{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:12.5px}
.dp-model b{font-weight:500}
.dp-model small{font-size:11.5px;color:var(--muted)}

/* Works with your stack */
.dp-stack{padding-block:96px 0}
.dp-chips{display:flex;flex-wrap:wrap;gap:10px;margin:36px 0 24px;padding:0;list-style:none}
.dp-chips li{padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:15px}

@media(max-width:1023px){
 .dp-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .dp-steps{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px){
 .dp-setups,.dp-steps-section,.dp-admin,.dp-stack{padding-top:64px}
 .dp .dp-tabs{grid-template-columns:minmax(0,1fr)}
 .dp-facts{grid-template-columns:minmax(0,1fr);gap:18px}
 .dp-step{padding:24px 24px 0}
 .dp-ways li{grid-template-columns:84px minmax(0,1fr)}
}
