/* Rastro Lab V3 / interactive layer. Local only: no remote assets, nothing stored or sent. */
.site-v2{--v3-blue:#168aff;--v3-cyan:#6cddff;--v3-line:#24405b;--v3-panel:#061325}

/* Scroll progress */
.v3-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:200;pointer-events:none;background:linear-gradient(90deg,var(--v3-blue),var(--v3-cyan));transform-origin:0 50%;transform:scaleX(var(--v3-scroll,0));box-shadow:0 0 12px #6cddff99}

/* Hero network canvas */
.site-v2 .new-hero{position:relative;isolation:isolate}
.v3-net{position:absolute;inset:-40px 0 0;width:100%;height:calc(100% + 40px);z-index:-1;pointer-events:none;opacity:.85;mask-image:radial-gradient(ellipse 75% 70% at 55% 45%,#000 40%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 75% 70% at 55% 45%,#000 40%,transparent 100%)}
.v3-scramble{display:inline-block;min-width:1ch}

/* Command palette trigger */
.v3-cmd-trigger{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;margin-right:12px;background:#071426;border:1px solid #2f5577;border-radius:3px;color:#a8d8f5;font:600 12px/1 monospace;letter-spacing:.5px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.v3-cmd-trigger:hover,.v3-cmd-trigger:focus-visible{border-color:#6cddff;background:#0b2946;box-shadow:0 0 22px #168aff33}
.v3-cmd-trigger kbd{padding:3px 6px;border:1px solid #426b91;border-radius:3px;background:#030810;color:#6cddff;font:inherit;font-size:10px}
.v3-cmd-trigger svg{width:15px;height:15px}
@media(max-width:1000px){.v3-cmd-trigger kbd,.v3-cmd-trigger .v3-cmd-label{display:none}.v3-cmd-trigger{margin-right:8px}}

/* Command palette */
.v3-palette{width:min(680px,calc(100vw - 32px));max-height:min(620px,calc(100vh - 80px));margin:9vh auto auto;padding:0;background:#040c18;color:#eef7ff;border:1px solid #2f6a96;border-radius:6px;box-shadow:0 30px 90px #000b,0 0 0 1px #168aff22,0 0 60px #168aff26;overflow:hidden}
.v3-palette::backdrop{background:#01040acc;backdrop-filter:blur(6px)}
.v3-palette[open]{display:flex;flex-direction:column}
.v3-palette-head{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #1d3a55}
.v3-palette-head span{color:#6cddff;font:700 14px monospace}
.v3-palette-head input{flex:1;min-width:0;background:transparent;border:0;color:#eef7ff;font-size:17px;padding:6px 0}
.v3-palette-head input:focus{outline:none}
.v3-palette-head button{background:#071426;border:1px solid #2f5577;color:#a8d8f5;border-radius:3px;font:600 11px monospace;padding:6px 8px;cursor:pointer}
.v3-palette-list{list-style:none;margin:0;padding:8px;overflow-y:auto;flex:1}
.v3-palette-list li{margin:0}
.v3-palette-list a{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:11px 12px;border-radius:4px;color:#d2ecff;text-decoration:none;border:1px solid transparent}
.v3-palette-list a[aria-selected="true"],.v3-palette-list a:hover{background:#0b2240;border-color:#2f6a96}
.v3-palette-list .v3-tag{font:700 10px monospace;letter-spacing:1px;color:#6cddff;border:1px solid #2f5577;border-radius:3px;padding:4px 6px;min-width:62px;text-align:center}
.v3-palette-list a>span:nth-child(2){min-width:0}
.v3-palette-list strong{display:block;font-size:14px;color:#eef7ff}
.v3-palette-list small{display:block;font-size:12px;color:#86a6c2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v3-palette-list .v3-price{font:700 12px monospace;color:#a8d8f5;white-space:nowrap}
.v3-palette-foot{display:flex;gap:16px;flex-wrap:wrap;padding:10px 18px;border-top:1px solid #1d3a55;color:#6f8faa;font:11px monospace}
.v3-palette-empty{padding:28px 14px;color:#a8bfd5;text-align:center}
@media(max-width:620px){.v3-palette{margin-top:16px;max-height:calc(100vh - 32px)}.v3-palette-list a{grid-template-columns:1fr auto}.v3-palette-list .v3-tag{display:none}.v3-palette-foot{display:none}}

/* Rastro console */
.v3-console-section{padding-top:90px;padding-bottom:40px}
.v3-console-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.v3-chips{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 22px}
.v3-chip{background:#071426;border:1px solid #2f5577;color:#cfe9fb;border-radius:999px;padding:10px 15px;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s,translate .2s}
.v3-chip:hover,.v3-chip:focus-visible{border-color:#6cddff;background:#0b2946;translate:0 -2px}
.v3-chip[aria-pressed="true"]{background:#168aff;border-color:#6cddff;color:#020c18;box-shadow:0 0 26px #168aff55}
.v3-ask{display:flex;gap:10px}
.v3-ask label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.v3-ask input{flex:1;min-width:0;min-height:52px;background:#030810;border:1px solid #2f5577;border-radius:3px;color:#eef7ff;font-size:15px;padding:0 16px}
.v3-ask input:focus{outline:2px solid #6cddff;outline-offset:2px;border-color:#6cddff}
.v3-term{background:#020710;border:1px solid #23507a;border-radius:6px;box-shadow:0 0 0 1px #168aff14,0 30px 80px #0008,inset 0 0 80px #168aff0d;overflow:hidden;position:relative}
.v3-term::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#ffffff05 0 1px,transparent 1px 3px);mix-blend-mode:screen}
.v3-term-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid #16304a;background:#051020;font:11px monospace;color:#6f8faa}
.v3-term-bar i{width:9px;height:9px;border-radius:50%;background:#1f3d5c;display:inline-block}
.v3-term-bar i:first-child{background:#168aff}
.v3-term-bar span{margin-left:auto;letter-spacing:1px}
.v3-term-body{min-height:330px;padding:20px 22px 24px;font:13px/1.8 ui-monospace,Consolas,monospace;color:#9fd6f5}
.v3-term-body p{margin:0;color:inherit;font:inherit}
.v3-term-body .ok{color:#6cddff}
.v3-term-body .dim{color:#56789a}
.v3-term-body .hi{color:#eef7ff;font-weight:700}
.v3-caret{display:inline-block;width:8px;height:15px;background:#6cddff;vertical-align:-2px;animation:v3blink 1s steps(1) infinite}
@keyframes v3blink{50%{opacity:0}}
.v3-result{margin-top:18px;padding:18px;border:1px solid #2f6a96;border-radius:4px;background:linear-gradient(145deg,#0a2138,#050e1b);font-family:Arial,Helvetica,sans-serif}
.v3-result .eyebrow{margin:0 0 6px}
.v3-result h3{margin:0 0 6px;font-size:20px;color:#eef7ff;line-height:1.3}
.v3-result p{margin:0 0 14px;font-size:14px;line-height:1.6}
.v3-result .v3-price-tag{font:700 13px monospace;color:#6cddff;margin-bottom:14px;display:block}
.v3-result .actions{display:flex;gap:10px;flex-wrap:wrap}
.v3-alt{margin-top:12px;font:12px/1.7 monospace;color:#6f8faa}
.v3-alt a{color:#a8d8f5;margin-right:12px}
@media(max-width:1000px){.v3-console-layout{grid-template-columns:1fr;gap:34px}}
@media(max-width:620px){.v3-ask{flex-direction:column}.v3-term-body{min-height:260px;padding:16px;font-size:12px}}

/* Cursor spotlight + tilt on cards */
.v3-glow{--mx:50%;--my:50%}
.v3-glow::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(420px circle at var(--mx) var(--my),#6cddff1f,transparent 45%);z-index:0}
.v3-glow:hover::before{opacity:1}
.v3-glow>*{position:relative;z-index:1}
.v3-tilt{transition:transform .25s ease,translate .25s,border-color .25s,box-shadow .25s;transform-style:preserve-3d;will-change:transform}

/* Reveal on scroll (only when JS + motion are allowed) */
.v3-motion .v3-reveal{opacity:0;translate:0 26px;transition:opacity .7s ease,translate .7s cubic-bezier(.2,.7,.2,1)}
.v3-motion .v3-reveal.v3-in{opacity:1;translate:0 0}

/* Live status chip in hero */
.v3-status{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:8px 13px;border:1px solid #23507a;border-radius:3px;background:#040d1acc;font:11px monospace;color:#86b9dc;letter-spacing:.5px}
.v3-status b{color:#6cddff;font-weight:700}

/* Respect user motion choices */
.motion-paused .v3-net,.motion-paused .v3-caret{display:none}
.motion-paused .v3-reveal{opacity:1!important;translate:none!important}
@media(prefers-reduced-motion:reduce){.v3-net,.v3-caret{display:none}.v3-reveal{opacity:1!important;translate:none!important}.v3-tilt{transform:none!important}}
@media(hover:none),(max-width:620px){.v3-kbd-hint{display:none}.v3-status{font-size:10px}}

/* Payment page V3: steps, two-column checkout, sticky summary */
.pay-v3.payment-shell{max-width:1200px}
.pay-v3 .pay-head{max-width:760px}
.pay-v3 .pay-head h1{font-size:clamp(36px,4.6vw,62px)}
.pay-steps{list-style:none;margin:36px 0 34px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;counter-reset:pay}
.pay-steps li{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid #23415c;border-radius:6px;background:#051120;transition:border-color .3s,background .3s,box-shadow .3s}
.pay-steps li b{display:block;color:#dff3ff;font-size:15px}.pay-steps li small{display:block;color:#8fb0cb;font-size:12px;line-height:1.5}
.pay-step-icon{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid #2f6a96;color:#6cddff;background:#071a2e}
.pay-step-icon svg{width:20px;height:20px}
.pay-steps li.is-done{border-color:#2e8a5c}.pay-steps li.is-done .pay-step-icon{border-color:#3fbf80;color:#7dffb5;background:#0b2a1d}
.pay-steps li.is-active{border-color:#6cddff;background:#0a2138;box-shadow:0 0 30px #168aff22}
.pay-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr);gap:28px;align-items:start}
.pay-main{min-width:0}
.pay-v3 .pay-select{margin:0 0 12px}
.pay-label{display:flex;align-items:center;gap:8px;color:#bfe3fa;font-weight:700;margin-bottom:10px}.pay-label svg{width:18px;height:18px;color:#6cddff}
.pay-v3 #product-select{border-radius:6px;border-color:#3d6488;min-height:54px;font-size:15px}
.pay-v3 #payment-status{color:#8ee0ff;font-size:14px;margin:6px 0 18px}
.pay-card{border-radius:8px;border-color:#2b5271;position:relative;overflow:hidden}
.pay-card::after{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#168aff,#6cddff)}
.pay-card h3{display:flex;align-items:center;gap:8px;font-size:17px;margin:24px 0 10px;color:#dff3ff}.pay-card h3 svg{width:18px;height:18px;color:#6cddff}
.pay-conditions{list-style:none;padding:0!important;margin:0}
.pay-conditions li{position:relative;padding:6px 0 6px 30px;color:#bdd0e0;line-height:1.7}
.pay-conditions li::before{content:"";position:absolute;left:0;top:10px;width:18px;height:18px;border-radius:50%;background:#0b2a1d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237dffb5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat;border:1px solid #2e8a5c}
.pay-card .actions .button svg{width:17px;height:17px}
.pay-side{position:sticky;top:104px}
.pay-panel{background:linear-gradient(160deg,#0a2138,#050e1b 70%);border:1px solid #2f6a96;border-radius:10px;padding:24px;box-shadow:0 30px 70px #0006,0 0 0 1px #168aff14}
.pay-panel-title{display:flex;align-items:center;gap:9px;margin:0 0 18px;color:#dff3ff!important;font-weight:700}.pay-panel-title svg{width:19px;height:19px;color:#6cddff}
.pay-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:16px 0;border-top:1px solid #1d3a55;border-bottom:1px solid #1d3a55}
.pay-total span{color:#a8c7df;font-size:14px}.pay-total strong{font-size:32px;letter-spacing:-1px;color:#68e7ff;line-height:1.1}
.pay-installments{margin:12px 0 14px;font-size:13px}
.pay-methods{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pay-methods li{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border:1px solid #23415c;border-radius:6px;background:#04101e;color:#cfe9fb;font-size:12px;font-weight:700}
.pay-methods svg{width:22px;height:22px;color:#6cddff}
.pay-v3 #payment-gate .check{font-size:14px;color:#c7e3f5;margin:4px 0 6px}
.pay-v3 #pay{width:100%;justify-content:center;gap:10px;min-height:54px;font-size:15px;margin:14px 0 6px}.pay-v3 #pay svg{width:18px;height:18px}
.pay-v3 #checkout-note{font-size:12px!important;margin-top:6px}
.pay-trust{list-style:none;padding:0!important;margin:18px 0 0;display:grid;gap:12px;border-top:1px solid #1d3a55;padding-top:18px!important}
.pay-trust li{display:flex;gap:12px;align-items:flex-start;color:#8fb0cb;font-size:12px;line-height:1.5}
.pay-trust li svg{flex:none;width:20px;height:20px;color:#7dffb5;margin-top:2px}.pay-trust b{display:block;color:#dff3ff;font-size:13px}
.pay-v3 .payment-legal{max-width:none;margin-top:36px}
@media(max-width:900px){.pay-layout{grid-template-columns:1fr}.pay-side{position:static}.pay-steps{grid-template-columns:1fr;gap:8px}.pay-steps li{padding:12px 14px}}
@media(max-width:600px){.pay-v3.payment-shell{width:auto}.pay-panel{padding:20px}.pay-total strong{font-size:28px}}
.pay-card h2{font-size:clamp(24px,2.4vw,32px)!important;letter-spacing:-.8px!important;line-height:1.2!important;margin:6px 0 4px}
