/* DeviceManager — Vulnerability assessment (VAPT) page styles */
body { --kev:#ff5d7a;--kev-rgb:255, 93, 122;--high:#ffa462;--panel:#0a0e16;--panel-2:#0f1420; }
.mchip { display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;border:1px solid var(--line-strong);background:rgba(255,255,255,.04);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.04em;line-height:1.5;color:var(--text-2);white-space:nowrap; }
.mchip--ok { color:var(--ok);border-color:rgba(62,230,154,.38);background:rgba(62,230,154,.09); }
.mchip--bad { color:var(--kev);border-color:rgba(var(--kev-rgb),.4);background:rgba(var(--kev-rgb),.1); }
.mchip--warn { color:var(--warn);border-color:rgba(255,181,71,.38);background:rgba(255,181,71,.09); }
.mchip--info { color:var(--info);border-color:rgba(110,168,255,.38);background:rgba(110,168,255,.09); }
.sev { display:inline-block;font-family:var(--font-mono);font-size:10.5px;padding:2px 7px;border-radius:6px;white-space:nowrap;line-height:1.5; }
.sev--crit { color:#ff7b7b;background:rgba(255,107,107,.13);border:1px solid rgba(255,107,107,.28); }
.sev--high { color:var(--high);background:rgba(255,164,98,.12);border:1px solid rgba(255,164,98,.26); }
.sev--lg { font-size:12px;padding:4px 10px;letter-spacing:.04em; }
.kev { font-style:normal;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--kev);background:rgba(var(--kev-rgb),.12);border:1px solid rgba(var(--kev-rgb),.32);padding:0 5px;border-radius:4px;line-height:1.5; }
.step-no { gap:10px;color:var(--text-3);margin-bottom:14px; }
.step-no span { color:var(--pa);border:1px solid rgba(var(--pa-rgb),.38);background:rgba(var(--pa-rgb),.08);border-radius:6px;padding:2px 7px;letter-spacing:.08em; }
.story__panel .h3 { margin-bottom:14px;max-width:18ch; }
.story__panel .body { font-size:clamp(1rem, .96rem + .2vw, 1.0875rem);max-width:44ch; }

@keyframes vapt-spin {
  to { transform:rotate(360deg); }
}

@keyframes vapt-pulse {
  0% { transform:scale(1);opacity:.7; }
  100% { transform:scale(1.35, 1.9);opacity:0; }
}

@keyframes vapt-flow {
  to { stroke-dashoffset:-.16; }
}

@keyframes vapt-scan {
  0% { transform:translateY(-120%); }
  100% { transform:translateY(520%); }
}

@keyframes vapt-blink {
  50% { opacity:0; }
}
.vhero { position:relative;isolation:isolate;overflow:clip;padding-top:calc(var(--header-h) + 52px + clamp(28px, 3.4vw, 52px));padding-bottom:clamp(56px, 8vw, 120px); }
.vhero__glow { left:50%;top:-380px;transform:translateX(-50%);width:min(1250px, 150vw); }
.vhero__head { max-width:1060px;margin-inline:auto;text-align:center; }
.vhero__title { font-weight:600;color:var(--text);margin:0; }
.vhero__kicker { display:inline-flex;align-items:center;gap:10px;margin-bottom:24px;padding:7px 14px;border-radius:999px;border:1px solid rgba(var(--pa-rgb),.32);background:rgba(var(--pa-rgb),.07);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--pa);line-height:1.3; }
.vhero__kicker::before { content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(var(--pa-rgb),.15), 0 0 14px currentColor;flex:none; }
.vhero__main { display:block;font-size:clamp(2.45rem, 1.15rem + 3.75vw, 4.6rem);font-weight:600;letter-spacing:-.045em;line-height:1.0;text-wrap:balance; }
.vhero__lead { margin:22px auto 0;max-width:62ch; }
.vhero__cta { justify-content:center;margin-top:28px; }
.vhero__proof { list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px; }
.vhero__proof .dot { width:5px;height:5px;color:var(--pa); }
.vhero__visual { margin-top:clamp(36px, 4.2vw, 60px);perspective:2000px; }
.vhero__tilt { transform-origin:50% 0%;transform:rotateX(calc((1 - var(--p)) * 24deg)) scale(calc(.93 + var(--p) * .07));will-change:transform; }
html:not(.motion) .vhero__tilt { transform:none; }
.vhero__note { text-align:center;margin-top:18px; }
.console { position:relative;max-width:1160px;margin-inline:auto;border-radius:18px;border:1px solid var(--line-strong);background:    radial-gradient(120% 70% at 50% -10%, rgba(var(--pa-rgb),.11), transparent 55%),
    linear-gradient(180deg, #0e131e, #090d15);box-shadow:    0 0 0 1px rgba(0,0,0,.6),
    0 60px 160px -40px rgba(0,0,0,.95),
    0 40px 140px -60px rgba(var(--pa-rgb),.65);overflow:hidden;text-align:left; }
.console::after { content:"";position:absolute;inset:0 0 auto 0;height:1px;background:linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent); }
.console::before { content:"";position:absolute;left:0;right:0;top:0;height:22%;background:linear-gradient(180deg, transparent, rgba(var(--pa-rgb),.07), transparent);pointer-events:none;animation:vapt-scan 9s linear infinite;z-index:1; }
.console__bar { display:flex;align-items:center;gap:12px;height:36px;padding:0 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg, #121826, #0d121c); }
.console__bar .frame__url { max-width:320px; }
.console__live { display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ok); }
.console__body { padding:clamp(14px, 2.4vw, 30px);display:grid;grid-template-columns:minmax(0, 1fr);gap:clamp(12px, 1.5vw, 18px); }
.console__head > div { min-width:0; }
.console__head { display:flex;justify-content:space-between;align-items:flex-start;gap:16px; }
.console__title { font-size:clamp(1.05rem, .85rem + .9vw, 1.6rem);font-weight:650;letter-spacing:-.025em;line-height:1.2; }
.console__sub { font-size:clamp(.72rem, .68rem + .2vw, .86rem);color:var(--text-3);margin-top:4px; }
.console__sync { flex:none; }
.console__tabs { list-style:none;padding:0;display:flex;gap:clamp(14px, 2.6vw, 34px);border-bottom:1px solid var(--line);font-size:clamp(.72rem, .68rem + .2vw, .86rem);color:var(--text-3);white-space:nowrap;overflow:hidden; }
.console__tabs li { padding-bottom:10px; }
.console__tabs .is-on { color:var(--pa);box-shadow:inset 0 -2px 0 var(--pa);font-weight:550; }
.tiles { display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:clamp(8px, 1.2vw, 14px); }
.tile { position:relative;padding:clamp(11px, 1.4vw, 18px);border-radius:12px;border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.01));min-width:0; }
.tile__k { display:block;font-size:clamp(.72rem, .66rem + .2vw, .84rem);color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.tile__v { display:block;font-size:clamp(1.6rem, 1rem + 1.9vw, 2.6rem);font-weight:650;letter-spacing:-.045em;line-height:1.1;margin:6px 0 4px;font-variant-numeric:tabular-nums; }
.tile__s { display:block;font-size:clamp(.66rem, .62rem + .15vw, .76rem);color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.tile--crit .tile__v { color:#ff7b7b; }
.tile--kev { border-color:rgba(var(--kev-rgb),.32);background:radial-gradient(120% 100% at 100% 0%, rgba(var(--kev-rgb),.12), transparent 60%), rgba(255,255,255,.015); }
.tile--kev .tile__v { color:var(--kev); }
.tile--sla .tile__v { color:var(--warn); }
.console__lower { display:grid;grid-template-columns:minmax(0, 1.3fr) minmax(0, 1fr);gap:clamp(8px, 1.2vw, 14px); }
.cpanel { border:1px solid var(--line);border-radius:12px;padding:clamp(12px, 1.4vw, 18px);background:rgba(255,255,255,.02);min-width:0; }
.cpanel__h { display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:clamp(.76rem, .7rem + .2vw, .9rem);font-weight:600;margin-bottom:12px; }
.vchart__legend { display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;color:var(--text-3);font-weight:400; }
.lg { width:8px;height:8px;border-radius:2px;display:inline-block; }
.lg--d { background:var(--pa); }
.lg--f { background:var(--ok);margin-left:8px; }
.vchart__bars { display:flex;align-items:flex-end;gap:clamp(2px, .45vw, 6px);height:clamp(92px, 11vw, 156px);border-bottom:1px solid var(--line); }
.vchart__bars span { flex:1;display:flex;align-items:flex-end;gap:1px;height:100%; }
.vchart__bars span::before,
.vchart__bars span::after { content:"";flex:1;height:100%;border-radius:2px 2px 0 0;transform-origin:50% 100%;transition:transform 1.1s var(--ease-out) calc(var(--i) * 26ms + 350ms); }
.vchart__bars span::before { background:linear-gradient(180deg, #b7a2ff, var(--pa));transform:scaleY(var(--d)); }
.vchart__bars span::after { background:linear-gradient(180deg, #7ff3bf, #27c985);transform:scaleY(var(--f)); }
html.motion .console:not(.is-in) .vchart__bars span::before,
html.motion .console:not(.is-in) .vchart__bars span::after { transform:scaleY(0); }
.toplist ol { list-style:none;padding:0;display:grid; }
.toplist li { display:grid;grid-template-columns:minmax(0, 1fr) auto 46px;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line); }
.tl__cve { min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px; }
.tl__cve b { font-size:12px;font-weight:600; }
.tl__cve small { width:100%;font-size:11px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.tl__risk { display:grid;gap:4px;justify-items:end; }
.tl__risk b { font-size:14px;font-variant-numeric:tabular-nums; }
.tl__risk i { width:100%;height:3px;border-radius:3px;background:linear-gradient(90deg, var(--pa), var(--kev));transform-origin:right;transform:scaleX(var(--r)); }
.how { position:relative;padding-top:var(--space-section); }
.how__head .h2 { max-width:21ch; }
.how__story { --step-h:72svh; }
.how .story__visual::before, .rem .story__visual::before { content:"";position:absolute;left:50%;top:50%;width:100%;aspect-ratio:1;transform:translate(-50%, -50%);background:radial-gradient(closest-side, rgba(var(--pa-rgb),.13), rgba(var(--pa-rgb),.03) 55%, transparent 72%);pointer-events:none;z-index:-1; }
.how .story__sticky, .rem .story__sticky { isolation:isolate; }

@media (min-width: 901px) {
  html.motion .how__story, html.motion .rem__story { margin-top:-20svh; }
}
.story__stage.pipe { --ratio:4 / 3;container-type:size;display:grid;grid-template-rows:auto minmax(14px, 1fr) auto minmax(10px, .6fr) auto;align-content:center; }
.pipe > :not(svg) { font-size:clamp(10px, 2.12cqw, 13.5px); }
.pipe__src { display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:4cqw; }
.pnode { min-width:0;border:1px solid var(--line-strong);border-radius:14px;background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.012)), var(--panel);padding:2.4cqw 2.6cqw;transition:border-color .5s, box-shadow .5s, opacity .5s; }
.pnode__h { display:flex;align-items:center;gap:.5em;font-family:var(--font-mono);font-size:.84em;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-bottom:.8em; }
.pnode__h svg { width:1.35em;height:1.35em;color:var(--pa); }
.inv { list-style:none;padding:0;display:grid;gap:.45em; }
.inv__row { display:grid;grid-template-columns:auto minmax(0, 1fr);gap:.1em .6em;padding:.45em .6em;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.02);transition:border-color .5s, background-color .5s; }
.inv__host { font-weight:600;font-size:.95em;white-space:nowrap; }
.inv__os { color:var(--text-3);font-size:.85em;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;align-self:center; }
.inv__ver { grid-column:1 / -1;color:var(--text-2);font-size:.85em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.v-new { display:none;color:var(--ok); }
.feeds { list-style:none;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:.45em; }
.feeds li { display:flex;flex-direction:column;padding:.45em .6em;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.02);transition:border-color .5s, background-color .5s;min-width:0; }
.feeds b { font-family:var(--font-mono);font-weight:600;font-size:.92em;letter-spacing:.04em; }
.feeds span { color:var(--text-3);font-size:.82em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.feeds__kev b { color:var(--kev); }
.pipe__wires, .pipe__wire2 { width:100%;height:100%;overflow:visible; }
.pipe .w { fill:none;stroke:var(--line-strong);stroke-width:1.5;vector-effect:non-scaling-stroke; }
.pipe .flow { fill:none;stroke:var(--pa);stroke-width:2.25;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:.05 .11;opacity:0;transition:opacity .5s;animation:vapt-flow 1.4s linear infinite;filter:drop-shadow(0 0 4px rgba(var(--pa-rgb),.9)); }
.pipe__core { position:relative;justify-self:center;display:flex;align-items:center;gap:.8em;padding:.6em 1.3em .6em .7em;border-radius:999px;border:1px solid rgba(var(--pa-rgb),.45);background:linear-gradient(180deg, rgba(var(--pa-rgb),.14), rgba(var(--pa-rgb),.05)), var(--panel);box-shadow:0 0 0 5px rgba(var(--pa-rgb),.05), 0 0 44px -8px rgba(var(--pa-rgb),.6);transition:box-shadow .5s; }
.core__ring { position:absolute;inset:-1px;border-radius:inherit;border:1px solid rgba(var(--pa-rgb),.6);animation:vapt-pulse 2.6s ease-out infinite;pointer-events:none; }
.core__icon { position:relative;width:2.5em;height:2.5em;border-radius:50%;display:grid;place-items:center;background:rgba(var(--pa-rgb),.18);color:var(--pa);flex:none; }
.core__icon svg { width:1.3em;height:1.3em; }
.core__icon::before { content:"";position:absolute;inset:-4px;border-radius:50%;border:1px dashed rgba(var(--pa-rgb),.65);animation:vapt-spin 9s linear infinite; }
.core__txt { display:grid;line-height:1.25; }
.core__txt b { font-size:1em;font-weight:600;white-space:nowrap; }
.core__txt span { font-family:var(--font-mono);font-size:.8em;color:var(--text-3);white-space:nowrap; }
.pipe__out { display:grid; }
.out { grid-area:1 / 1;min-width:0;border:1px solid var(--line-strong);border-radius:14px;background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01)), var(--panel);padding:.95em 1.15em;opacity:0;transform:translateY(10px) scale(.98);transition:opacity .55s var(--ease-out), transform .7s var(--ease-out);align-self:start; }
html:not(.motion) .out--2 { opacity:1;transform:none; }
.out__k { font-family:var(--font-mono);font-size:.82em;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3); }
.out__row { display:flex;justify-content:space-between;align-items:center;gap:.6em; }
.out--2 .out__k .mono { color:var(--text);font-size:1.1em;letter-spacing:.02em;text-transform:none;font-weight:600; }
.out__t { font-weight:600;margin:.25em 0 .55em;font-size:1.05em; }
.out__chips { display:flex;flex-wrap:wrap;gap:.4em; }
.pipe .mchip { font-size:.82em; }
.out__risk { font-family:var(--font-mono);font-size:.8em;color:var(--text-3);white-space:nowrap; }
.out__risk b { font-family:var(--font-sans);font-size:1.9em;font-weight:650;color:var(--kev);letter-spacing:-.04em;margin-right:.15em; }
.out__note { margin-top:.6em;color:var(--text-3);font-size:.88em; }
.sla-pill { font-family:var(--font-mono);color:var(--warn);border:1px solid rgba(255,181,71,.38);background:rgba(255,181,71,.08);padding:.05em .55em;border-radius:999px;margin-right:.3em;white-space:nowrap; }
.out__checks { list-style:none;padding:0;display:grid;gap:.3em;margin-top:.55em; }
.out__checks li { position:relative;padding-left:1.5em;color:var(--text-2); }
.out__checks li::before { content:"";position:absolute;left:0;top:.3em;width:.95em;height:.95em;border-radius:4px;background:rgba(62,230,154,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233ee69a' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 70% no-repeat; }
.out__recs { list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.4em;margin:.6em 0 .1em;font-size:.86em; }
.out__recs li { display:inline-flex;align-items:center;gap:.4em;padding:.15em .6em .15em .45em;border-radius:999px;border:1px solid rgba(62,230,154,.3);background:rgba(62,230,154,.07);color:var(--text); }
.out__recs li::before { content:"";width:.5em;height:.5em;border-radius:50%;background:var(--ok); }
.out__pairs { list-style:none;padding:0;margin-top:.45em;font-size:.9em; }
.out__pairs li { display:flex;justify-content:space-between;gap:1em;padding:.28em 0;border-bottom:1px dashed var(--line); }
.out__pairs li span:last-child { color:var(--pa); }
.out__pairs li:last-child { color:var(--text-3); }
.out__bar { height:4px;border-radius:4px;background:var(--surface-3);margin-top:.8em;overflow:hidden; }
.out__bar i { display:block;height:100%;background:linear-gradient(90deg, var(--pa), var(--ok));transform-origin:left;transform:scaleX(var(--sp, 1)); }
.how__story[data-step] .pnode { opacity:.5; }
.how__story[data-step="0"] .pnode--inv,
.how__story[data-step="1"] .pnode--feeds,
.how__story[data-step="2"] .pnode,
.how__story[data-step="4"] .pnode--inv { opacity:1;border-color:rgba(var(--pa-rgb),.55);box-shadow:0 0 0 4px rgba(var(--pa-rgb),.06), 0 24px 60px -24px rgba(var(--pa-rgb),.55); }
.how__story[data-step="0"] .flow--inv,
.how__story[data-step="1"] .flow--feed,
.how__story[data-step="2"] .flow--inv,
.how__story[data-step="2"] .flow--feed,
.how__story[data-step="4"] .flow--inv,
.how__story[data-step="2"] .flow--out,
.how__story[data-step="3"] .flow--out,
.how__story[data-step="4"] .flow--out { opacity:1; }
.how__story[data-step="2"] .pipe__core,
.how__story[data-step="3"] .pipe__core { box-shadow:0 0 0 7px rgba(var(--pa-rgb),.08), 0 0 60px -6px rgba(var(--pa-rgb),.85); }
.how__story[data-step="2"] .inv__row--hit,
.how__story[data-step="2"] .feeds__hit,
.how__story[data-step="2"] .feeds__kev { border-color:rgba(var(--kev-rgb),.55);background:rgba(var(--kev-rgb),.08); }
.how__story[data-step="2"] .inv__row--hit .v-old { color:var(--kev); }
.how__story[data-step="4"] .inv__row--hit { border-color:rgba(62,230,154,.5);background:rgba(62,230,154,.07); }
.how__story[data-step="4"] .v-old { display:none; }
.how__story[data-step="4"] .v-new { display:inline; }
.how__story[data-step="0"] .out--0,
.how__story[data-step="1"] .out--1,
.how__story[data-step="2"] .out--2,
.how__story[data-step="3"] .out--3,
.how__story[data-step="4"] .out--4 { opacity:1;transform:none; }
.how__story[data-step="2"] .out--2 { border-color:rgba(var(--kev-rgb),.45);box-shadow:0 20px 60px -30px rgba(var(--kev-rgb),.6); }
.how__story[data-step="4"] .out--4 { border-color:rgba(62,230,154,.45);box-shadow:0 20px 60px -30px rgba(62,230,154,.5); }

@container (max-width: 470px) {
  .inv__os, .feeds span { display:none; }
  .feeds { grid-template-columns:repeat(2, minmax(0, 1fr));gap:.3em; }
  .feeds li { align-items:center;padding:.3em .4em; }
  .inv { gap:.3em; }
  .inv__row { padding:.3em .45em; }
  .pnode { padding:2.6cqw;border-radius:10px; }
  .pnode__h { margin-bottom:.55em; }
  .out { padding:.7em .85em; }
  .out__t { margin:.15em 0 .4em; }
  .out__note, .out__checks { margin-top:.4em; }
  .out__checks { gap:.15em; }
}
.risk { overflow:clip;isolation:isolate;padding-top:calc(var(--space-section) * .55); }
.risk__glow { right:-25%;top:0;opacity:.8; }
.risk__grid { display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:clamp(32px, 6vw, 96px);align-items:center; }
.risk__copy .lead { margin-top:18px; }
.risk__terms { margin-top:30px;display:grid;border-top:1px solid var(--line); }
.risk__terms > div { display:grid;grid-template-columns:96px minmax(0, 1fr);gap:16px;padding:13px 0;border-bottom:1px solid var(--line); }
.risk__terms dt { font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--pa);padding-top:3px; }
.risk__terms dd { color:var(--text-2);line-height:1.5; }
.risk__term--risk dt { color:var(--kev); }
.risk__term--risk dd { color:var(--text); }
.risk__visual { position:relative; }
.fcard { position:relative;border-radius:22px;border:1px solid var(--line-strong);background:    radial-gradient(90% 60% at 100% 0%, rgba(var(--kev-rgb),.09), transparent 60%),
    linear-gradient(180deg, var(--panel-2), #0a0d15);padding:clamp(18px, 2.4vw, 30px);box-shadow:0 50px 120px -50px rgba(0,0,0,.95), 0 40px 120px -60px rgba(var(--pa-rgb),.55);overflow:hidden; }
.fcard__head { padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:4px; }
.fcard__idrow { display:flex;justify-content:space-between;align-items:center;gap:12px; }
.fcard__id { font-size:.95rem;font-weight:600;color:var(--text);letter-spacing:.02em; }
.fcard__title { font-size:clamp(1.1rem, 1rem + .5vw, 1.4rem);font-weight:600;letter-spacing:-.02em;margin-top:8px;line-height:1.25; }
.fcard__meta { font-size:11.5px;color:var(--text-3);margin-top:6px; }
.frow { --k:clamp(0, (var(--p) - var(--t)) / .1, 1);display:grid;grid-template-columns:92px minmax(0, 1fr);gap:14px;align-items:center;padding:14px 0;border-bottom:1px dashed var(--line);opacity:calc(.14 + var(--k) * .86);transform:translateX(calc((1 - var(--k)) * 22px)); }
.frow__k { font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3); }
.frow__v { display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0; }
.frow__v small { color:var(--text-3);font-size:12px; }
.frow__v--bar { flex-wrap:nowrap; }
.frow__v--bar b, .epss__n b { font-size:1.3rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.02em;min-width:2.4ch;text-align:right;color:var(--text); }
.meter { flex:1;height:7px;border-radius:7px;background:var(--surface-3);overflow:hidden; }
.meter i { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg, var(--warn), var(--bad));transform-origin:left;transform:scaleX(calc(var(--v) * var(--k))); }
.frow__v--epss { display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:14px; }
.dots { display:grid;grid-template-columns:repeat(25, minmax(0, 1fr));gap:3px;max-width:250px; }
.dots i { aspect-ratio:1;border-radius:50%;background:rgba(var(--pa-rgb),calc(.13 + clamp(0, var(--k) * var(--n, 0) - var(--j, 0), 1) * .87)); }
.epss__n { display:grid;justify-items:end;text-align:right; }
.epss__n b { min-width:0; }
.epss__n small { font-size:11px;color:var(--text-3);max-width:19ch;line-height:1.35; }
.fcard__risk { --k:clamp(0, (var(--p) - var(--t)) / .22, 1);display:grid;grid-template-columns:auto minmax(0, 1fr);gap:22px;align-items:center;padding-top:20px;opacity:calc(.2 + min(1, var(--k) * 5) * .8); }
.gauge { position:relative;width:clamp(148px, 14vw, 186px); }
.gauge svg { width:100%;height:auto;overflow:visible; }
.gauge__bg { fill:none;stroke:var(--surface-3);stroke-width:10;stroke-linecap:round; }
.gauge__fg { fill:none;stroke:url(#gaugeGrad);stroke-width:10;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--k));opacity:clamp(0, var(--k) * 30, 1);filter:drop-shadow(0 0 7px rgba(var(--kev-rgb),.55)); }
.gauge__num { position:absolute;left:0;right:0;bottom:-2px;display:grid;justify-items:center;line-height:1; }
.gauge__num b { font-size:clamp(2rem, 1.5rem + 1.5vw, 2.8rem);font-weight:650;letter-spacing:-.05em;font-variant-numeric:tabular-nums; }
.gauge__num small { font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-top:4px; }
.fcard__sla-k { font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--kev);margin-bottom:6px; }
.fcard__sla p:last-child { color:var(--text-2);font-size:.92rem;line-height:1.5; }
.risk__note { margin-top:14px;text-align:right; }
.sla__head { display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, .9fr);gap:clamp(20px, 5vw, 80px);align-items:end;margin-bottom:clamp(28px, 4vw, 48px); }
.sla__head .lead { padding-bottom:6px; }
.slachart { --grow:clamp(0, (var(--p) - .14) / .2, 1);--day:calc(clamp(0, (var(--p) - .36) / .26, 1) * 40);border:1px solid var(--line);border-radius:var(--radius-l);background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.008)), var(--bg-elev);padding:clamp(18px, 3vw, 36px); }
.slachart__top { display:flex;justify-content:space-between;align-items:center;gap:10px 16px;flex-wrap:wrap;margin-bottom:18px; }
.slachart__cap { font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3); }
.slachart__day { display:inline-flex;align-items:center;gap:8px;font-size:.92rem;color:var(--text-2);padding:6px 12px;border-radius:999px;border:1px solid rgba(var(--pa-rgb),.35);background:rgba(var(--pa-rgb),.07); }
.slachart__day .dot { color:var(--pa); }
.slachart__day b { color:var(--text);display:inline-block;min-width:2ch;text-align:right;font-weight:600; }
.slachart__plot { --label-w:190px;--state-w:104px;--g:16px;position:relative;display:grid;gap:12px; }
.slachart__axis { position:relative;height:18px;margin:0 calc(var(--state-w) + var(--g)) 0 calc(var(--label-w) + var(--g));font-family:var(--font-mono);font-size:10.5px;color:var(--text-3); }
.slachart__axis span { position:absolute;top:0;left:calc(var(--d) / 180 * 100%);transform:translateX(-50%);white-space:nowrap; }
.slachart__axis span:first-child { transform:none; }
.slachart__axis span:last-child { transform:translateX(-100%); }
.slarow { --past:clamp(0, (var(--day) - var(--d)) * 3, 1);display:grid;grid-template-columns:var(--label-w) minmax(0, 1fr) var(--state-w);gap:var(--g);align-items:center;position:relative;z-index:1; }
.slarow__label { font-weight:550;font-size:.95rem;display:flex;align-items:center;gap:8px; }
.slarow__label .mono { font-size:10px;color:var(--kev);border:1px solid rgba(var(--kev-rgb),.35);border-radius:4px;padding:0 5px;letter-spacing:.06em; }
.slarow__track { position:relative;height:32px;border-radius:9px;border:1px solid var(--line);background:    repeating-linear-gradient(90deg, rgba(255,255,255,.045) 0 1px, transparent 1px calc(100% / 18)),
    rgba(255,255,255,.015); }
.slarow__bar { position:absolute;top:4px;bottom:4px;left:4px;width:calc(100% - 8px);border-radius:5px;transform-origin:left;transform:scaleX(calc(var(--grow) * var(--d) / 180));background:linear-gradient(90deg, rgba(var(--pa-rgb),.45), rgba(var(--pa-rgb),.95)); }
.slarow__bar::after { content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg, rgba(var(--kev-rgb),.65), var(--kev));opacity:var(--past); }
.slarow__val { position:absolute;top:50%;left:calc(var(--d) / 180 * 100% + 12px);transform:translateY(-50%);font-size:11.5px;color:var(--text);white-space:nowrap;opacity:var(--grow); }
.slarow--max .slarow__val { left:auto;right:14px;color:#fff; }
.slarow__state { display:grid;justify-items:start;opacity:var(--grow); }
.slarow__state > * { grid-area:1 / 1; }
.s-in { opacity:calc(1 - var(--past)); }
.s-out { opacity:var(--past); }
.slachart__cursor { position:absolute;top:26px;bottom:-4px;left:calc(var(--label-w) + var(--g));right:calc(var(--state-w) + var(--g));overflow:hidden;pointer-events:none;z-index:2; }
.slachart__cursor i { position:absolute;inset:0;transform:translateX(calc(var(--day) / 180 * 100%));opacity:calc(var(--grow) * .95); }
.slachart__cursor i::before { content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(180deg, #fff, var(--pa) 30%, rgba(var(--pa-rgb),.5));box-shadow:0 0 16px rgba(var(--pa-rgb),1), 0 0 4px rgba(var(--pa-rgb),1); }
.cover__grid { display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:clamp(12px, 1.6vw, 20px); }
.ccard { display:flex;flex-direction:column;gap:14px;padding:clamp(18px, 2.2vw, 28px);border-radius:var(--radius-l);border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.01)), var(--bg-elev);min-width:0; }
.ccard__top { display:flex;align-items:center;gap:12px;flex-wrap:wrap; }
.ccard__top .icon-box { margin:0; }
.ccard__top h3 { margin:0; }
.ccard__what { font-size:clamp(1.05rem, .98rem + .35vw, 1.25rem);font-weight:550;letter-spacing:-.015em;line-height:1.35;color:var(--text);text-wrap:balance; }
.ccard__spec { display:grid;gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line); }
.ccard__spec div { display:grid;grid-template-columns:92px minmax(0, 1fr);gap:10px;font-size:.9rem; }
.ccard__spec dt { font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);padding-top:3px; }
.ccard__spec dd { color:var(--text-2);line-height:1.45; }
.apps { margin-top:clamp(14px, 1.6vw, 20px);padding:22px 0;border:1px solid var(--line);border-radius:var(--radius-l);background:rgba(255,255,255,.015);display:grid;gap:10px;overflow:hidden; }
.apps__cap { text-align:center;font-size:var(--fs-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:4px; }
.apps .marquee__track { list-style:none;padding:0; }
.app { padding:8px 16px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);font-size:.9rem;color:var(--text-2);white-space:nowrap; }
.guess { margin-top:clamp(14px, 1.6vw, 20px);display:grid;grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr);gap:clamp(20px, 4vw, 56px);align-items:center;padding:clamp(22px, 3vw, 40px);border-radius:var(--radius-l);border:1px solid var(--line);background:radial-gradient(80% 140% at 0% 0%, rgba(var(--pa-rgb),.12), transparent 60%), var(--bg-elev); }
.guess__lead { display:flex;gap:18px;align-items:flex-start; }
.guess__lead .icon-box { margin:0; }
.guess .h3 { margin-bottom:10px; }
.guess__reasons { list-style:none;padding:0;display:grid;gap:10px; }
.guess__reasons li { display:grid;grid-template-columns:auto minmax(0, 1fr);gap:12px;align-items:center;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:rgba(0,0,0,.28);font-family:var(--font-mono);font-size:12px;color:var(--text-2);line-height:1.45; }
.rem { position:relative;padding-top:var(--space-section); }
.rem__head .h2 { max-width:19ch; }
.rem__story { --step-h:78svh; }
.story__stage.rem__stage { --ratio:4 / 3;container-type:size; }
.rem__layer { position:absolute;inset:0; }
html.motion .rem__layer { transform:scale(.965) translateY(16px);pointer-events:none; }
html.motion .rem__layer.is-on { transform:none;pointer-events:auto; }
.shot { margin:0;display:flex;flex-direction:column;border-radius:14px;border:1px solid var(--line-strong);background:#0b0f17;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.6), 0 40px 110px -30px rgba(0,0,0,.9), 0 30px 90px -40px rgba(var(--pa-rgb),.5); }
.shot .frame__bar { flex:none; }
.shot__view { position:relative;flex:1;overflow:hidden; }
.shot__view img { position:absolute;top:0;left:0;width:calc(var(--z, 1) * 100%);max-width:none;height:auto;transform:translate(calc(var(--x, 0) * -1%), calc(var(--y, 0) * -1%)); }
.shot--drawer { --z:1.85;--x:46;--y:0; }
.shot--deploy { --z:1.55;--x:2;--y:5; }
.shot--device { --z:1.5;--x:17;--y:2; }
.callout { position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 9px;border-radius:999px;background:rgba(9,12,19,.9);border:1px solid rgba(var(--pa-rgb),.6);color:var(--text);font-family:var(--font-mono);font-size:clamp(10px, 1.75cqw, 11.5px);letter-spacing:.03em;white-space:nowrap;box-shadow:0 12px 30px -10px rgba(0,0,0,.85), 0 0 0 4px rgba(var(--pa-rgb),.1);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px); }
.callout i { width:8px;height:8px;border-radius:50%;background:var(--pa);box-shadow:0 0 0 3px rgba(var(--pa-rgb),.28);flex:none; }
html.motion .callout { opacity:0;transform:translateY(8px);transition:opacity .5s var(--ease-out) var(--cd, .35s), transform .6s var(--ease-out) var(--cd, .35s); }
html.motion .is-on .callout { opacity:1;transform:none; }
.callout--a { top:33%;left:3%;--cd:.3s; }
.callout--b { top:74%;left:24%;--cd:.55s; }
.callout--c { top:56%;right:3%;--cd:.8s; }
.callout--d { top:86%;left:4%;--cd:.6s; }
.callout--e { top:50%;right:4%;--cd:.85s; }
.dlg { inset:3% 5%;display:flex;flex-direction:column;gap:.7em;padding:1.2em 1.3em;border-radius:16px;border:1px solid var(--line-strong);background:linear-gradient(180deg, #131a28, #0c1019);box-shadow:0 40px 100px -30px rgba(0,0,0,.9), 0 30px 80px -40px rgba(var(--pa-rgb),.55);font-size:clamp(10px, 2.1cqw, 13.5px); }
.dlg__head { padding-bottom:.7em;border-bottom:1px solid var(--line); }
.dlg__title { font-weight:650;font-size:1.25em;letter-spacing:-.02em; }
.dlg__sub { color:var(--text-3);font-size:.85em;margin-top:.15em; }
.dlg__grp { border-radius:10px;border:1px solid var(--line);padding:.65em .85em; }
.dlg__grp--ok { border-color:rgba(62,230,154,.28);background:rgba(62,230,154,.04); }
.dlg__grp--warn { border-color:rgba(255,181,71,.28);background:rgba(255,181,71,.04); }
.dlg__grp--info { border-color:rgba(110,168,255,.28);background:rgba(110,168,255,.04); }
.dlg__k { display:flex;align-items:center;gap:.6em;font-weight:550; }
.dlg .mchip { font-size:.78em; }
.dlg__grp ul { list-style:none;padding:0;margin-top:.45em;font-size:.84em; }
.dlg__grp li { display:grid;grid-template-columns:6.4em minmax(0, 1fr) auto;gap:.8em;padding:.25em 0;border-top:1px dashed var(--line);color:var(--text-2); }
.dlg__grp li span:first-child { color:var(--text); }
.dlg__grp li span:nth-child(2) { white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-3); }
.dlg__link { display:block;margin-top:.3em;color:var(--pa);font-size:.86em; }
.dlg__foot { margin-top:auto;display:flex;justify-content:flex-end; }
.dlg__btn { display:inline-flex;align-items:center;gap:.5em;padding:.6em 1.15em;border-radius:999px;background:var(--pa);color:#04060a;font-weight:600;font-size:.92em;box-shadow:0 10px 30px -10px rgba(var(--pa-rgb),.8); }
.dlg__btn::after { content:"→"; }
.pairs, .howfix { position:absolute;z-index:2;border-radius:12px;border:1px solid rgba(var(--pa-rgb),.55);background:rgba(10,13,21,.95);box-shadow:0 24px 60px -20px rgba(0,0,0,.9), 0 0 0 4px rgba(var(--pa-rgb),.08);padding:.8em 1em;font-size:clamp(10px, 1.9cqw, 12.5px); }
.pairs { right:4%;bottom:5%;width:min(56%, 300px); }
.pairs__k, .howfix__k { font-family:var(--font-mono);font-size:.82em;letter-spacing:.1em;text-transform:uppercase;color:var(--pa);margin-bottom:.4em; }
.pairs ul, .howfix ul { list-style:none;padding:0; }
.pairs li { display:flex;justify-content:space-between;gap:1em;padding:.3em 0;border-top:1px dashed var(--line);color:var(--text-2); }
.pairs li span:last-child { color:var(--text); }
.howfix { left:5%;right:5%;bottom:4%; }
.howfix li { display:flex;gap:.6em;align-items:baseline;padding:.22em 0;color:var(--text-2);line-height:1.4; }
.hf { width:.6em;height:.6em;border-radius:2px;flex:none; }
.hf--win { background:var(--pa); }
.hf--lnx { background:var(--ok); }
.hf--esm { background:var(--warn); }
.hf--app { background:var(--info); }
html.motion .pairs, html.motion .howfix { opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease-out) .45s, transform .7s var(--ease-out) .45s; }
html.motion .is-on .pairs, html.motion .is-on .howfix { opacity:1;transform:none; }
html:not(.motion) .story__stage.rem__stage { aspect-ratio:auto;width:100%;display:grid;gap:20px;container-type:inline-size; }
html:not(.motion) .rem__layer { position:relative;inset:auto;width:100%;min-width:0;min-height:0;aspect-ratio:4 / 3; }
html:not(.motion) .rem__layer.dlg { aspect-ratio:auto; }
.exc { padding-top:calc(var(--space-section) * .55); }
.exc__grid { display:grid;grid-template-columns:minmax(0, .95fr) minmax(0, 1.05fr);gap:clamp(32px, 6vw, 88px);align-items:center; }
.exc__copy .lead { margin-top:18px; }
.exc__steps { list-style:none;padding:0;margin-top:28px;display:grid;counter-reset:s;border-top:1px solid var(--line); }
.exc__steps li { counter-increment:s;display:grid;grid-template-columns:34px minmax(0, 1fr);column-gap:12px;padding:13px 0;border-bottom:1px solid var(--line); }
.exc__steps li::before { content:counter(s, decimal-leading-zero);grid-row:span 2;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--pa);padding-top:3px; }
.exc__steps b { font-weight:600;letter-spacing:-.01em; }
.exc__steps span { color:var(--text-2);font-size:.95rem;line-height:1.5; }
.exc__visual { --k:clamp(0, (var(--p) - .28) / .34, 1);--exp:clamp(0, (var(--k) - .985) * 70, 1); }
.xcard { border-radius:20px;border:1px solid var(--line-strong);background:linear-gradient(180deg, var(--panel-2), #0a0d15);padding:clamp(16px, 2.2vw, 26px);box-shadow:0 50px 120px -50px rgba(0,0,0,.95), 0 40px 120px -70px rgba(var(--pa-rgb),.5); }
.xcard__top { display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line); }
.xcard__top p { font-weight:650;letter-spacing:-.01em; }
.xcard__top span { font-size:11px;color:var(--text-3); }
.xrow { display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:8px 14px;padding:16px 0;border-bottom:1px solid var(--line); }
.xrow__id b { display:block;color:var(--pa);font-size:.92rem;font-weight:600; }
.xrow__id span { font-size:12px;color:var(--text-3); }
.xrow__state { display:grid;justify-items:end;align-self:start; }
.xrow__state > * { grid-area:1 / 1; }
.xrow--live .st-acc { opacity:calc(1 - var(--exp)); }
.xrow--live .st-open { opacity:var(--exp); }
.xrow__reason { grid-column:1 / -1;font-size:.92rem;color:var(--text-2);line-height:1.5; }
.xrow__meta { grid-column:1 / -1;font-size:11px;color:var(--text-3); }
.xtl { grid-column:1 / -1;margin-top:6px; }
.xtl__track { position:relative;height:8px;border-radius:8px;background:var(--surface-3); }
.xtl__fill { position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg, rgba(255,181,71,.35), var(--warn));transform-origin:left;transform:scaleX(var(--k)); }
.xtl__fill::after { content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg, rgba(var(--kev-rgb),.4), var(--kev));opacity:var(--exp); }
.xtl__dot { position:absolute;inset:-6px -8px;overflow:hidden;pointer-events:none; }
.xtl__dot::before { content:"";position:absolute;top:0;bottom:0;left:0;right:16px;transform:translateX(calc(var(--k) * 100%));background:radial-gradient(circle at 8px 50%, #fff 0 4px, var(--warn) 4.5px 6.5px, transparent 7px); }
.xtl__labels { display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:10.5px;color:var(--text-3); }
.xtl__day { color:var(--text); }
.xtl__day b { display:inline-block;min-width:2ch;text-align:right;font-weight:600; }
.xrow__effect { grid-column:1 / -1;display:grid;font-size:12.5px; }
.xrow__effect > * { grid-area:1 / 1; }
.eff-in { color:var(--text-3);opacity:calc(1 - var(--exp)); }
.eff-out { color:var(--kev);opacity:var(--exp); }
.xcard__audit { display:flex;align-items:center;gap:8px;padding-top:14px;font-size:11px;color:var(--text-3); }
.xcard__audit .dot { color:var(--ok); }
.csv { margin-top:clamp(28px, 4vw, 52px);display:grid;grid-template-columns:minmax(0, .8fr) minmax(0, 1.2fr);gap:clamp(18px, 3vw, 44px);align-items:center;padding:clamp(20px, 2.6vw, 32px);border-radius:var(--radius-l);border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.008)), var(--bg-elev); }
.csv__lead { display:flex;gap:14px;align-items:flex-start; }
.csv__lead .icon-box { margin:0; }
.csv__lead h3 { margin-bottom:6px; }
.csv__lead p { color:var(--text-2);font-size:.95rem;line-height:1.5; }
.csv__fields { list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:6px; }
.csv__fields li { font-family:var(--font-mono);font-size:11.5px;padding:5px 10px;border-radius:8px;border:1px solid var(--line-strong);background:rgba(255,255,255,.03);color:var(--text-2); }
.gapsec { overflow:clip;isolation:isolate; }
.gap { display:grid;grid-template-columns:minmax(0, 2.3fr) minmax(0, .95fr) minmax(0, 1.05fr);align-items:stretch;margin-top:clamp(8px, 2vw, 24px); }
.gzone { position:relative;display:grid;align-items:center;padding:44px 16px 16px;border-radius:26px;border:1px dashed rgba(255,255,255,.14);background:rgba(255,255,255,.012);min-width:0; }
.gzone--net { grid-template-columns:minmax(0, 1.12fr) 80px minmax(0, 1fr); }
.gzone--iso { border-color:rgba(255,181,71,.32);background:radial-gradient(120% 80% at 100% 0%, rgba(255,181,71,.05), transparent 60%), rgba(255,255,255,.012); }
.gzone__lbl { position:absolute;top:16px;left:20px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3); }
.gzone--iso .gzone__lbl { color:var(--warn); }
.gnode { position:relative;min-width:0;border-radius:18px;border:1px solid var(--line-strong);background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.01)), var(--bg-elev);padding:18px; }
.gnode__k { display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:10px; }
.gnode__k .dot { color:var(--ok); }
.gnode--src ul { list-style:none;padding:0;display:grid;gap:6px;font-size:11px;color:var(--text-2); }
.gnode--src li { position:relative;padding-left:14px;line-height:1.35;overflow-wrap:anywhere; }
.gnode--src li::before { content:"";position:absolute;left:0;top:.45em;width:6px;height:6px;border-radius:2px;background:var(--pa);opacity:.7; }
.gnode--online { border-color:rgba(var(--pa-rgb),.45);box-shadow:0 0 0 4px rgba(var(--pa-rgb),.05), 0 30px 70px -40px rgba(var(--pa-rgb),.7); }
.gnode__t { font-size:.9rem;color:var(--text-2);line-height:1.45; }
.gnode__cmd { display:inline-block;margin-top:12px;font-size:11px;color:var(--pa);border:1px solid rgba(var(--pa-rgb),.35);background:rgba(var(--pa-rgb),.07);border-radius:6px;padding:3px 8px; }
.gnode--iso .gnode__k .dot { color:var(--warn); }
.gchecks { list-style:none;padding:0;display:grid;gap:8px; }
.gchecks li { position:relative;padding-left:26px;font-size:.9rem;color:var(--text);line-height:1.35; }
.gchecks li::before { content:"";position:absolute;left:0;top:.05em;width:18px;height:18px;border-radius:6px;border:1px solid rgba(62,230,154,.5);background:rgba(62,230,154,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233ee69a' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 11px no-repeat; }
.gnode__ok { display:inline-block;margin-top:12px;font-size:11px;color:var(--ok); }
.glink { position:relative;height:60px; }
.glink__line { position:absolute;left:-1px;right:-1px;top:50%;height:2px;margin-top:-1px;overflow:hidden; }
.glink__line i { position:absolute;inset:0 -24px 0 0;background:repeating-linear-gradient(90deg, var(--pa) 0 7px, transparent 7px 14px);opacity:.85; }
.glink__lbl { position:absolute;left:50%;top:8px;transform:translateX(-50%);font-size:9.5px;letter-spacing:.06em;color:var(--text-3);white-space:nowrap; }
.glink__lbl--b { top:auto;bottom:8px; }
.glane { position:relative;align-self:center;height:150px;overflow:hidden;margin:22px -17px 0;z-index:1; }
.glane__rail { position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;background:linear-gradient(90deg, rgba(var(--pa-rgb),.7), rgba(var(--pa-rgb),.12) 38%, rgba(var(--pa-rgb),.12) 62%, rgba(var(--pa-rgb),.7)); }
.glane__wall { position:absolute;left:50%;top:22px;bottom:6px;width:28px;margin-left:-14px;border-left:1px solid var(--line-strong);border-right:1px solid var(--line-strong);background:repeating-linear-gradient(135deg, rgba(255,255,255,.08) 0 4px, transparent 4px 9px); }
.glane__wall span { position:absolute;top:-20px;left:50%;transform:translateX(-50%);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);white-space:nowrap; }
.bundle-mv { position:absolute;inset:0;z-index:2; }
.bundle { position:absolute;left:8px;top:50%;display:flex;align-items:center;gap:6px;width:84px;padding:7px 10px;border-radius:10px;background:#151b2a;border:1px solid rgba(var(--pa-rgb),.7);box-shadow:0 0 28px -4px rgba(var(--pa-rgb),.7);font-size:11px;color:var(--text);transform:translateY(-50%); }
.bundle svg { width:16px;height:16px;color:var(--pa);flex:none; }
html.motion .gap.is-in .bundle-mv { animation:vapt-bundle-x 6.5s var(--ease-in-out) infinite; }
html.motion .gap.is-in .glink__line i { animation:vapt-dash-x .9s linear infinite; }
html.motion .gap .gchecks li::before { opacity:.25;filter:grayscale(1); }
html.motion .gap.is-in .gchecks li::before { animation:vapt-check 6.5s linear infinite;animation-delay:calc(var(--c) * .3s); }
html.motion .gap.is-in .gnode--iso { animation:vapt-iso 6.5s linear infinite; }

@keyframes vapt-dash-x {
  to { transform:translateX(14px); }
}

@keyframes vapt-dash-y {
  to { transform:translateY(14px); }
}

@keyframes vapt-bundle-x {
  0% { transform:translateX(0);opacity:0; }
  8% { transform:translateX(0);opacity:1; }
  58% { transform:translateX(calc(100% - 100px));opacity:1; }
  76%, 100% { transform:translateX(calc(100% - 100px));opacity:0; }
}

@keyframes vapt-bundle-y {
  0% { transform:translateY(0);opacity:0; }
  8% { transform:translateY(0);opacity:1; }
  58% { transform:translateY(calc(100% - 50px));opacity:1; }
  76%, 100% { transform:translateY(calc(100% - 50px));opacity:0; }
}

@keyframes vapt-check {
  0%, 60% { opacity:.25;filter:grayscale(1); }
  64%, 96% { opacity:1;filter:none; }
  100% { opacity:.25;filter:grayscale(1); }
}

@keyframes vapt-iso {
  0%, 58%, 100% { border-color:var(--line-strong);box-shadow:none; }
  66%, 92% { border-color:rgba(62,230,154,.5);box-shadow:0 0 0 4px rgba(62,230,154,.06), 0 30px 70px -40px rgba(62,230,154,.7); }
}
.gap__notes { margin-top:clamp(28px, 4vw, 48px);display:grid;grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr);gap:clamp(14px, 2.2vw, 26px);align-items:stretch; }
.term { border-radius:16px;border:1px solid var(--line-strong);background:#070a10;overflow:hidden;display:flex;flex-direction:column; }
.term__bar { display:flex;align-items:center;gap:12px;height:34px;padding:0 12px;border-bottom:1px solid var(--line);background:#0d121c;font-size:11px;color:var(--text-3); }
.term__body { flex:1;margin:0;padding:18px 20px;font-size:12.5px;line-height:1.85;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere; }
.term__c { color:var(--text-3); }
.term__p { color:var(--pa); }
.term [data-type].is-typing::after { content:"";display:inline-block;width:7px;height:1.05em;margin-left:2px;vertical-align:-2px;background:var(--pa);animation:vapt-blink 1s steps(1) infinite; }
.gap__facts { list-style:none;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px; }
.gap__facts li { padding:16px;border-radius:14px;border:1px solid var(--line);background:var(--bg-elev);display:grid;gap:4px;align-content:start; }
.gap__facts b { font-weight:600;font-size:.98rem;letter-spacing:-.01em; }
.gap__facts span { color:var(--text-2);font-size:.88rem;line-height:1.45; }
.auto__grid { display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:clamp(12px, 1.6vw, 20px); }
.acard { position:relative;display:grid;gap:22px;align-content:start;padding:clamp(20px, 2.6vw, 32px);border-radius:var(--radius-l);border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.01)), var(--bg-elev);overflow:hidden;min-width:0; }
.acard--rbac { grid-column:1 / -1;grid-template-columns:minmax(0, .75fr) minmax(0, 1.6fr);align-items:center;gap:clamp(20px, 4vw, 56px); }
.acard__copy .icon-box { margin-bottom:14px; }
.acard__copy h3 { margin-bottom:8px; }
.acard__copy p { color:var(--text-2);font-size:.95rem;line-height:1.55; }
.acard__copy .link-arrow { display:flex;width:max-content;margin-top:12px; }
.ticket { --k:clamp(0, (var(--p) - .5) / .32, 1);--done:clamp(0, (var(--k) - .97) * 40, 1);border-radius:14px;border:1px solid var(--line-strong);background:var(--panel);padding:16px 18px; }
.ticket__top { display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--text-3); }
.ticket__st { display:grid; }
.ticket__st > * { grid-area:1 / 1;justify-self:end; }
.t-open { opacity:calc(1 - var(--done)); }
.t-done { opacity:var(--done); }
.ticket__t { font-weight:600;margin:10px 0 4px; }
.ticket__m { font-size:11.5px;color:var(--kev); }
.ticket__tl { margin-top:14px;display:grid;gap:9px;border-left:1px solid var(--line-strong);padding-left:16px;margin-left:4px; }
.tk { position:relative;font-size:12.5px;color:var(--text-2);opacity:calc(.25 + var(--on) * .75); }
.tk::before { content:"";position:absolute;left:-20.5px;top:.45em;width:8px;height:8px;border-radius:50%;background:var(--surface-3);border:1px solid var(--line-strong); }
.tk--1 { --on:1; }
.tk--1::before { background:var(--kev);border-color:var(--kev); }
.tk--2 { --on:clamp(0, (var(--k) - .45) * 8, 1); }
.tk--2::before { background:var(--pa);border-color:var(--pa); }
.tk--3 { --on:clamp(0, (var(--k) - .75) * 8, 1); }
.tk--3::before { background:var(--info);border-color:var(--info); }
.tk--4 { --on:var(--done);color:var(--ok); }
.tk--4::before { background:var(--ok);border-color:var(--ok); }
.chat { border-radius:14px;border:1px solid var(--line-strong);background:var(--panel);padding:16px;display:grid;gap:12px; }
.chat__q { justify-self:end;max-width:90%;min-height:2.9em;padding:10px 14px;border-radius:14px 14px 4px 14px;background:rgba(var(--pa-rgb),.16);border:1px solid rgba(var(--pa-rgb),.38);font-size:.92rem;line-height:1.45; }
.chat__q.is-typing::after { content:"";display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:-2px;background:var(--pa);animation:vapt-blink 1s steps(1) infinite; }
.chat__card { border-radius:12px;border:1px solid rgba(110,168,255,.35);background:rgba(110,168,255,.05);padding:14px; }
html.motion .chat__card { opacity:0;transform:translateY(10px);transition:opacity .6s var(--ease-out), transform .7s var(--ease-out); }
html.motion .chat.is-done .chat__card { opacity:1;transform:none; }
.chat__t { font-weight:600;margin:8px 0 4px; }
.chat__s { font-size:12.5px;color:var(--text-2);line-height:1.45; }
.chat__btns { display:flex;gap:8px;margin-top:12px; }
.chat__btn { font-size:12px;padding:6px 13px;border-radius:999px;border:1px solid var(--line-strong);color:var(--text-2); }
.chat__btn--p { background:var(--pa);color:#04060a;border-color:transparent;font-weight:600; }
.perm { width:100%;border-collapse:collapse;font-size:.9rem; }
.perm th, .perm td { text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle; }
.perm thead th { font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-weight:500;padding-top:0; }
.perm tbody th { font-family:var(--font-mono);font-size:12.5px;color:var(--pa);font-weight:500;white-space:nowrap; }
.perm td { color:var(--text-2); }
.perm tbody tr:last-child > * { border-bottom:0; }
.roles { display:flex;flex-wrap:wrap;gap:4px; }
.roles i { font-style:normal;font-family:var(--font-mono);font-size:10.5px;padding:2px 7px;border-radius:6px;background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--text-2); }
.faq__layout { display:grid;grid-template-columns:minmax(0, .72fr) minmax(0, 1.28fr);gap:clamp(28px, 5vw, 88px);align-items:start; }
.faq__side { position:sticky;top:calc(var(--header-h) + 52px + 32px); }
.faq__intro { margin-top:18px; }
.inline-link { color:var(--text);text-decoration:underline;text-decoration-color:rgba(var(--pa-rgb),.6);text-decoration-thickness:1px;text-underline-offset:3px;transition:color .2s; }
.inline-link:hover { color:var(--pa); }
.faqsec .faq__item { grid-template-columns:minmax(0, 1fr);gap:10px;padding:24px 0; }
.faqsec .faq__item dt { font-size:clamp(1.05rem, 1rem + .3vw, 1.22rem); }
.faqsec .faq__item dd { line-height:1.6; }

@media (min-width: 901px) and (max-height: 820px) {
  .vhero { padding-top:calc(var(--header-h) + 52px + 24px); }
  .vhero__kicker { margin-bottom:16px; }
  .vhero__main { font-size:clamp(2.4rem, 1rem + 3.6vw, 3.9rem); }
  .vhero__lead { margin-top:16px;font-size:1.05rem;max-width:70ch; }
  .vhero__cta { margin-top:22px; }
  .vhero__proof { margin-top:16px; }
  .vhero__visual { margin-top:32px; }
}

@media (max-width: 1100px) {
  .gzone--net { grid-template-columns:minmax(0, 1.1fr) 64px minmax(0, 1fr); }
  .gnode { padding:14px; }
}

@media (max-width: 900px) {
  .how__story { --step-h:56svh; }
  .rem__story { --step-h:60svh; }
  html.motion .how .story__sticky, html.motion .rem .story__sticky { grid-template-rows:auto minmax(0, 1fr);gap:16px; }
  html.motion .how .story__visual, html.motion .rem .story__visual { place-items:start center; }
  .story__stage.pipe { aspect-ratio:auto;width:100%;max-width:520px;container-type:inline-size;grid-template-rows:auto 16px auto 12px auto; }
  .story__stage.rem__stage { --ratio:1 / 1;width:min(100%, 46svh, 480px); }
  .story__panel .h3 { max-width:none; }
  .risk__grid, .exc__grid { grid-template-columns:minmax(0, 1fr); }
  .sla__head { grid-template-columns:minmax(0, 1fr);align-items:start;gap:14px; }
  .cover__grid { grid-template-columns:minmax(0, 1fr); }
  .guess { grid-template-columns:minmax(0, 1fr); }
  .csv { grid-template-columns:minmax(0, 1fr); }
  .gap { grid-template-columns:minmax(0, 1fr);max-width:520px;margin-inline:auto; }
  .gzone { padding:40px 12px 12px;border-radius:20px; }
  .gzone--net { grid-template-columns:minmax(0, 1fr); }
  .glink { height:46px; }
  .glink__line { left:50%;right:auto;top:-1px;bottom:-1px;width:2px;height:auto;margin:0 0 0 -1px; }
  .glink__line i { inset:-24px 0 0 0;background:repeating-linear-gradient(180deg, var(--pa) 0 7px, transparent 7px 14px); }
  html.motion .gap.is-in .glink__line i { animation-name:vapt-dash-y; }
  .glink__lbl { left:auto;right:calc(50% + 14px);top:50%;transform:translateY(-50%); }
  .glink__lbl--b { left:calc(50% + 14px);right:auto;bottom:auto; }
  .glane { height:130px;margin:-13px 0; }
  .glane__rail { left:50%;right:auto;top:0;bottom:0;width:2px;height:auto;margin:0 0 0 -1px;background:linear-gradient(180deg, rgba(var(--pa-rgb),.7), rgba(var(--pa-rgb),.12) 38%, rgba(var(--pa-rgb),.12) 62%, rgba(var(--pa-rgb),.7)); }
  .glane__wall { left:8%;right:8%;top:50%;bottom:auto;width:auto;height:26px;margin:-13px 0 0;border:0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong); }
  .glane__wall span { top:50%;left:8px;transform:translateY(-50%);padding:2px 6px;background:var(--bg);border-radius:4px; }
  .bundle { left:50%;top:6px;transform:translateX(-50%); }
  html.motion .gap.is-in .bundle-mv { animation-name:vapt-bundle-y; }
  .gap__notes { grid-template-columns:minmax(0, 1fr); }
  .faq__layout { grid-template-columns:minmax(0, 1fr);gap:8px; }
  .faq__side { position:static; }
  .acard--rbac { grid-template-columns:minmax(0, 1fr); }
}

@media (max-width: 760px) {
  .auto__grid { grid-template-columns:minmax(0, 1fr); }
}

@media (max-width: 640px) {
  .vhero { padding-top:calc(var(--header-h) + 52px + 28px); }
  .vhero__kicker { font-size:10px;letter-spacing:.1em;padding:6px 12px;margin-bottom:18px; }
  .vhero__lead { margin-top:18px;font-size:1rem; }
  .vhero__cta { margin-top:24px;gap:10px;flex-wrap:nowrap; }
  .vhero__cta .btn--lg { min-height:50px;padding:13px 16px;font-size:.93rem;flex:1 1 auto; }
  .vhero__proof { margin-top:18px;gap:6px; }
  .vhero__visual { margin-top:36px; }
  .console { border-radius:14px; }
  .console__bar { height:28px; }
  .console__bar .frame__url { font-size:9px;height:18px; }
  .console__sync { display:none; }
  .console__sub { white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
  .console__tabs { -webkit-mask-image:linear-gradient(90deg, #000 75%, transparent);mask-image:linear-gradient(90deg, #000 75%, transparent); }
  .tiles { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .console__lower { grid-template-columns:minmax(0, 1fr); }
  .vchart__bars { height:84px; }
  .toplist li { grid-template-columns:minmax(0, 1fr) auto 38px;gap:8px;padding:7px 0; }
  .story__panel .h3 { margin-bottom:10px; }
  .step-no { margin-bottom:10px; }
  .risk__terms { grid-template-columns:repeat(2, minmax(0, 1fr));gap:8px;border-top:0;margin-top:22px; }
  .risk__terms > div { grid-template-columns:minmax(0, 1fr);gap:4px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-elev); }
  .risk__terms dd { font-size:.84rem;line-height:1.45; }
  .risk__term--risk { grid-column:1 / -1; }
  .frow { grid-template-columns:70px minmax(0, 1fr);gap:10px;padding:12px 0; }
  .frow__k { font-size:9.5px;letter-spacing:.08em; }
  .frow--kev .frow__v small { font-size:11px; }
  .frow__v--epss { grid-template-columns:minmax(0, 1fr);gap:8px; }
  .epss__n { justify-items:start;text-align:left;display:flex;align-items:baseline;gap:8px; }
  .epss__n small { max-width:none; }
  .dots { max-width:none;gap:2.5px; }
  .fcard__risk { gap:16px; }
  .gauge { width:132px; }
  .risk__note { text-align:left; }
  .slachart__plot { --label-w:0px;--state-w:0px;--g:0px;gap:10px; }
  .slachart__axis span:nth-child(2), .slachart__axis span:nth-child(3) { display:none; }
  .slarow { grid-template-columns:minmax(0, 1fr) auto;grid-template-areas:"label state" "track track";gap:6px 10px; }
  .slarow__label { grid-area:label;font-size:.88rem; }
  .slarow__state { grid-area:state;justify-items:end; }
  .slarow__track { grid-area:track;height:26px; }
  .slarow__val { font-size:10.5px; }
  .slachart__cursor { top:22px; }
  .slachart__day { font-size:.84rem; }
  .ccard { gap:10px; }
  .ccard__spec div { grid-template-columns:80px minmax(0, 1fr);font-size:.86rem; }
  .apps { padding:16px 0; }
  .app { padding:6px 12px;font-size:.84rem; }
  .guess__lead { flex-direction:column;gap:12px; }
  .guess__reasons li { grid-template-columns:minmax(0, 1fr);gap:6px;padding:10px 12px;font-size:11.5px; }
  .guess__reasons .mchip { justify-self:start; }
  .callout { padding:4px 9px 4px 7px;gap:6px; }
  .callout i { width:6px;height:6px; }
  .shot--drawer { --z:2.2;--x:45.5;--y:0; }
  .shot--deploy { --z:1.6;--x:3;--y:6; }
  .shot--device { --z:1.7;--x:17.5;--y:2; }
  .callout--a { top:31%;left:3%; }
  .callout--b { top:72%;left:20%; }
  .callout--c { top:56%;right:3%; }
  .callout--d { top:44%;left:4%; }
  .callout--e { top:28%;right:4%; }
  .dlg { gap:.45em;padding:.85em .95em;inset:2% 3%; }
  .dlg__head { padding-bottom:.45em; }
  .dlg__grp { padding:.5em .7em; }
  .pairs { width:62%;bottom:4%; }
  .shot .frame__bar { height:26px; }
  .shot .frame__url { font-size:9px;height:18px; }
  .exc__steps { grid-template-columns:repeat(2, minmax(0, 1fr));gap:8px;border-top:0;margin-top:22px; }
  .exc__steps li { grid-template-columns:minmax(0, 1fr);padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg-elev); }
  .exc__steps li::before { grid-row:auto;padding:0 0 4px; }
  .exc__steps b { font-size:.92rem;line-height:1.3; }
  .exc__steps span { font-size:.84rem;line-height:1.4;margin-top:4px; }
  .xrow { padding:14px 0; }
  .xrow__reason { font-size:.86rem; }
  .csv__fields li { font-size:10.5px;padding:4px 8px; }
  .gnode { padding:14px 16px;border-radius:14px; }
  .gnode--src ul { gap:5px;font-size:10.5px; }
  .gnode--src li { overflow-wrap:normal; }
  .term__body { font-size:11.5px;padding:14px 16px; }
  .gap__facts li { padding:13px; }
  .gap__facts b { font-size:.92rem; }
  .gap__facts span { font-size:.82rem; }
  .perm thead { display:none; }
  .perm, .perm tbody { display:block; }
  .perm tr { display:grid;grid-template-columns:auto minmax(0, 1fr);gap:6px 12px;padding:12px 0;border-bottom:1px solid var(--line);align-items:baseline; }
  .perm tbody tr:last-child { border-bottom:0; }
  .perm th, .perm td { padding:0;border:0; }
  .perm tbody th { font-size:11.5px; }
  .perm td { font-size:.86rem; }
  .perm td:last-child { grid-column:1 / -1; }
  .roles i { font-size:10px; }
  .faqsec .faq__item { padding:18px 0;gap:6px; }
  .faqsec .faq__item dd { font-size:.94rem;line-height:1.55; }
}

@media (max-width: 380px) {
  .vhero__cta { flex-wrap:wrap; }
}
