/* Generato da /assets/css/style.css (configuratore preventivo), selettori scoperti sotto .cfg-v1 */
.cfg-v1 .btn:focus-visible{outline-offset:4px}
.cfg-v1 .tech-grid{position:fixed;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(to right,rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,0.025) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse at 50% 30%,black 30%,transparent 75%)}
.cfg-v1 .btn{position:relative;display:inline-flex;align-items:center;gap:10px;padding:16px 22px;border-radius:999px;font-family:var(--sans);font-weight:500;font-size:15px;letter-spacing:-0.005em;border:1px solid transparent;cursor:pointer;transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,background .25s,border-color .25s,color .25s;white-space:nowrap}
.cfg-v1 .btn .arr{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.cfg-v1 .btn:hover .arr{transform:translateX(4px)}
.cfg-v1 .btn-primary{color:#07070A;background:linear-gradient(135deg,#F5F5F0 0%,#ffffff 60%,#DDE3FF 100%);box-shadow:0 0 0 1px rgba(255,255,255,.4) inset,0 12px 40px -10px rgba(168,85,247,.45),0 6px 20px -5px rgba(34,211,238,.35)}
.cfg-v1 .btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,255,255,.5) inset,0 18px 50px -8px rgba(168,85,247,.55),0 10px 30px -5px rgba(34,211,238,.45)}
.cfg-v1 .btn-ghost{color:var(--ink-0);background:rgba(255,255,255,0.03);border:1px solid var(--line-2);backdrop-filter:blur(8px)}
.cfg-v1 .btn-ghost:hover{background:rgba(255,255,255,0.06);border-color:var(--line-3);transform:translateY(-2px)}
.cfg-v1 .btn-link{display:inline-flex;align-items:center;gap:8px;color:var(--ink-0);font-family:var(--mono);font-size:12px;letter-spacing:0.06em;text-transform:uppercase;cursor:pointer}
.cfg-v1 .btn-link .arr{transition:transform .3s}
.cfg-v1 .btn-link:hover .arr{transform:translateX(4px)}
.cfg-v1 .btn-link:hover{color:var(--cyan)}
@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:0.55}}
.cfg-v1 .nav-brand .nb-mark,.cfg-v1 .nm-brand .nb-mark{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--cyan),var(--purple));position:relative;flex:none;display:grid;place-items:center;font-family:var(--sans);font-weight:700;font-size:13px;color:#07070A;letter-spacing:-0.04em;box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 4px 14px -4px rgba(168,85,247,.6)}
.cfg-v1 .nb-logo{height:28px;width:auto;max-width:120px;display:block;flex:none}
@media(max-width:640px){.cfg-v1 .nb-logo{height:26px;max-width:100px}}
.cfg-v1 a.mega-cta-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;background:var(--ink-0);color:#07070A;font-size:12px;font-weight:600;white-space:nowrap;transition:background .2s,transform .15s}
.cfg-v1 .mega-cta-btn:hover{background:#fff;transform:scale(1.02)}
.cfg-v1 .mega-cta-btn-ghost{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;background:transparent;color:var(--ink-1);border:1px solid var(--line-2);font-size:12px;font-weight:500;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.cfg-v1 .mega-cta-btn-ghost:hover{background:rgba(255,255,255,.06);color:var(--ink-0);border-color:var(--line-3)}
@keyframes nm-item-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.cfg-v1 .bw-btns{display:flex;gap:6px;margin-top:10px}
.cfg-v1 .bw-btn{font-size:9px;padding:6px 10px;border-radius:999px;background:var(--ink-0);color:#07070A;font-weight:600}
.cfg-v1 .bw-btn.alt{background:transparent;border:1px solid var(--line-2);color:var(--ink-0)}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes blink{50%{opacity:0}}
.cfg-v1 .deco-coord{position:absolute;font-family:var(--mono);font-size:10px;color:var(--ink-3);letter-spacing:0.1em}
@keyframes marquee{to{transform:translateX(-50%)}}
.cfg-v1 .rc-btn{flex-shrink:0;width:48px;height:48px;border-radius:50%;border:1px solid var(--line-2);background:var(--bg-2);color:var(--ink-1);cursor:pointer;display:grid;place-items:center;transition:background 0.2s,border-color 0.2s,color 0.2s;-webkit-tap-highlight-color:transparent}
.cfg-v1 .rc-btn:hover{background:var(--bg-3);border-color:var(--cyan);color:var(--cyan)}
.cfg-v1 .rc-dot.active{background:var(--cyan);transform:scale(1.6)}
.cfg-v1 .input,.cfg-v1 .textarea,.cfg-v1 .select{width:100%;background:rgba(0,0,0,.4);border:1px solid var(--line-2);border-radius:12px;color:var(--ink-0);font-family:var(--sans);font-size:15px;padding:14px 14px;outline:none;transition:border-color .25s,background .25s,box-shadow .25s}
.cfg-v1 .input:focus,.cfg-v1 .textarea:focus,.cfg-v1 .select:focus{border-color:var(--cyan);background:rgba(0,0,0,.55);box-shadow:0 0 0 4px rgba(34,211,238,.15)}
.cfg-v1 .textarea{resize:vertical;min-height:110px;line-height:1.5}
.cfg-v1 .chip.on{background:linear-gradient(135deg,rgba(34,211,238,.18),rgba(168,85,247,.18));border-color:var(--cyan);color:var(--ink-0)}
.cfg-v1 .crumbs .cur{color:var(--ink-0)}
.cfg-v1 .fact-row{margin-top:36px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:720px){.cfg-v1 .fact-row{grid-template-columns:1fr}}
.cfg-v1 .contact-page-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,70px);align-items:start}
@media (max-width:980px){.cfg-v1 .contact-page-grid{grid-template-columns:1fr}}
.cfg-v1{height:100svh;height:100vh;overflow:hidden;background:radial-gradient(900px 600px at 8% 12%,rgba(59,130,246,.16),transparent 60%),radial-gradient(900px 700px at 95% 0%,rgba(168,85,247,.18),transparent 60%),radial-gradient(700px 500px at 50% 110%,rgba(34,211,238,.14),transparent 60%),var(--bg-0)}
.cfg-v1 .tech-grid{mask-image:radial-gradient(ellipse at 50% 60%,black 40%,transparent 80%)}
.cfg-v1 .cfg-page{position:relative;display:grid;grid-template-rows:auto 1fr auto;height:100svh;height:100vh;min-height:0;z-index:1}
.cfg-v1 .cfg-top{display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,3vw,40px);border-bottom:1px solid var(--line-1);background:rgba(7,7,10,0.55);backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);z-index:5;flex:none}
.cfg-v1 .cfg-top .ct-brand{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:13px;color:var(--ink-0)}
.cfg-v1 .cfg-top .ct-brand .nb-mark{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,var(--cyan),var(--purple));display:grid;place-items:center;font-family:var(--sans);font-weight:700;font-size:13px;color:#07070A;letter-spacing:-0.04em;box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 4px 14px -4px rgba(168,85,247,.6)}
.cfg-v1 .cfg-top .ct-title{font-family:var(--mono);font-size:12px;color:var(--ink-2);letter-spacing:0.16em;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.cfg-v1 .cfg-top .ct-title .live-dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px var(--lime);animation:pulse 2.4s ease-in-out infinite}
.cfg-v1 .cfg-top .ct-actions{display:flex;gap:10px;align-items:center}
.cfg-v1 .cfg-top .ct-reset{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;color:var(--ink-2);padding:8px 14px;border-radius:999px;border:1px solid var(--line-2);background:rgba(255,255,255,0.02);cursor:pointer;transition:color .2s,border-color .2s,background .2s}
.cfg-v1 .cfg-top .ct-reset:hover{color:var(--ink-0);border-color:var(--line-3);background:rgba(255,255,255,0.04)}
.cfg-v1 .cfg-top .ct-back{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;color:var(--ink-2);padding:8px 14px;border-radius:999px;display:inline-flex;align-items:center;gap:8px}
.cfg-v1 .cfg-top .ct-back:hover{color:var(--ink-0)}
.cfg-v1 .cfg-grid{display:grid;grid-template-columns:1.1fr 1fr;min-height:0;overflow:hidden}
@media (max-width:960px){.cfg-v1{height:auto;overflow:visible}.cfg-v1 .cfg-page{height:auto;min-height:100svh}.cfg-v1 .cfg-grid{grid-template-columns:1fr;grid-template-rows:auto 1fr;overflow:visible}}
.cfg-v1 .cfg-left{position:relative;padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;gap:24px;border-right:1px solid var(--line-1);overflow:hidden}
@media (max-width:960px){.cfg-v1 .cfg-left{border-right:none;border-bottom:1px solid var(--line-1);padding:22px;gap:12px}.cfg-v1 .cfg-left .price-display{font-size:clamp(48px,10vw,64px)}.cfg-v1 .cfg-left .pl-disclaimer{display:none}.cfg-v1 .cfg-left .receipt-list{max-height:240px;overflow-y:auto}}
.cfg-v1 .cfg-left .glow-blob{position:absolute;width:600px;height:600px;left:-180px;bottom:-200px;background:radial-gradient(circle,var(--purple),transparent 60%);opacity:.22;filter:blur(80px);pointer-events:none;animation:orbDrift 16s ease-in-out infinite alternate}
.cfg-v1 .cfg-left .glow-blob.b2{left:auto;right:-160px;top:-160px;bottom:auto;width:480px;height:480px;background:radial-gradient(circle,var(--cyan),transparent 60%);opacity:.18;animation-duration:22s}
@keyframes orbDrift{0%{transform:translate(0,0) scale(1)}100%{transform:translate(60px,-40px) scale(1.15)}}
.cfg-v1 .cfg-left .receipt-head{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:0.14em;text-transform:uppercase;position:relative;z-index:1}
.cfg-v1 .cfg-left .receipt-head .ref{display:flex;align-items:center;gap:8px;color:var(--ink-3)}
.cfg-v1 .cfg-left .project-tag{position:relative;z-index:1;display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,0.025);border:1px solid var(--line-2);font-family:var(--mono);font-size:11.5px;color:var(--ink-1);letter-spacing:0.08em;width:fit-content;max-width:100%;transition:border-color .35s,color .35s}
.cfg-v1 .cfg-left .project-tag .pt-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-3);transition:background .35s,box-shadow .35s}
.cfg-v1 .cfg-left .project-tag.set{border-color:rgba(34,211,238,.5);color:var(--ink-0)}
.cfg-v1 .cfg-left .project-tag.set .pt-dot{background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
.cfg-v1 .price-wrap{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;margin-top:4px}
.cfg-v1 .price-wrap .pl-eyebrow{font-family:var(--mono);font-size:11px;color:var(--ink-3);letter-spacing:0.14em;text-transform:uppercase}
.cfg-v1 .price-row{display:flex;align-items:baseline;gap:clamp(8px,1vw,16px)}
.cfg-v1 .price-currency{font-family:var(--sans);font-size:clamp(28px,3vw,44px);font-weight:400;color:var(--ink-2);letter-spacing:-0.02em}
.cfg-v1 .price-display{font-family:var(--sans);font-size:clamp(52px,7vw,108px);font-weight:500;letter-spacing:-0.05em;line-height:0.92;background:linear-gradient(135deg,var(--ink-0) 0%,#ffffff 40%,#DDE3FF 100%);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums;position:relative;display:inline-block}
.cfg-v1 .price-display.boost{background:linear-gradient(135deg,var(--cyan),var(--purple) 60%,var(--blue));-webkit-background-clip:text;background-clip:text}
.cfg-v1 .price-display::after{content:"";position:absolute;inset:-8px -16px;background:radial-gradient(circle at 30% 40%,var(--blob,rgba(168,85,247,.18)),transparent 70%);filter:blur(28px);z-index:-1;opacity:0;transition:opacity .6s}
.cfg-v1 .price-display.boost::after{opacity:.8}
.cfg-v1 .price-suffix{font-family:var(--mono);font-size:13px;color:var(--ink-2);letter-spacing:0.04em;align-self:flex-end;padding-bottom:8px}
.cfg-v1 .price-wrap .pl-disclaimer{margin-top:6px;font-family:var(--mono);font-size:11.5px;letter-spacing:0.06em;color:var(--ink-3);white-space:nowrap;line-height:1.45}
.cfg-v1 .receipt-list{position:relative;z-index:1;margin-top:auto;display:flex;flex-direction:column;gap:8px;padding-top:22px;border-top:1px dashed var(--line-2);max-height:38vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--bg-4) transparent}
.cfg-v1 .receipt-list::-webkit-scrollbar{width:4px}
.cfg-v1 .receipt-list::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:999px}
.cfg-v1 .receipt-row{display:flex;align-items:baseline;gap:12px;font-family:var(--mono);font-size:13px;color:var(--ink-1);letter-spacing:0.02em;animation:rcvAppear .45s cubic-bezier(.2,.7,.2,1)}
@keyframes rcvAppear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.cfg-v1 .receipt-row.empty{color:var(--ink-3);font-style:italic}
.cfg-v1 .receipt-row .rl-label{flex:0 1 auto}
.cfg-v1 .receipt-row .rl-dots{flex:1;border-bottom:1px dotted var(--line-2);transform:translateY(-3px);min-width:24px}
.cfg-v1 .receipt-row .rl-value{flex:0 0 auto;color:var(--ink-0);font-variant-numeric:tabular-nums}
.cfg-v1 .receipt-row .rl-value.zero{color:var(--ink-3)}
.cfg-v1 .receipt-row.subtotal{margin-top:6px;padding-top:12px;border-top:1px solid var(--line-2);font-size:14px}
.cfg-v1 .receipt-row.subtotal .rl-label{color:var(--ink-0);font-weight:500}
.cfg-v1 .receipt-row.subtotal .rl-value{color:var(--lime)}
.cfg-v1 .cfg-right{position:relative;padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;min-height:0;overflow:hidden}
@media (max-width:960px){.cfg-v1 .cfg-right{padding:24px 22px 28px;overflow:visible}}
.cfg-v1 .cfg-step-meta{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--ink-2);margin-bottom:22px}
.cfg-v1 .cfg-step-meta .csm-num{color:var(--ink-0)}
.cfg-v1 .cfg-step-meta .csm-num em{color:var(--cyan);font-family:var(--mono);font-style:normal}
.cfg-v1 .cfg-step-title{font-family:var(--sans);font-size:clamp(22px,2.6vw,36px);font-weight:500;letter-spacing:-0.03em;line-height:1.05;text-wrap:balance;margin:0}
.cfg-v1 .cfg-step-title em{font-family:var(--serif);font-style:italic;font-weight:400;background:linear-gradient(110deg,var(--cyan),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent}
.cfg-v1 .cfg-step-sub{margin-top:16px;font-size:16px;color:var(--ink-1);max-width:58ch;line-height:1.55}
.cfg-v1 .cfg-stage{position:relative;flex:1;min-height:0;margin-top:28px}
.cfg-v1 .cfg-screen{position:absolute;inset:0;display:flex;flex-direction:column;opacity:0;transform:translateX(40px);pointer-events:none;transition:opacity .45s cubic-bezier(.2,.7,.2,1),transform .45s cubic-bezier(.2,.7,.2,1)}
.cfg-v1 .cfg-screen.active{opacity:1;transform:translateX(0);pointer-events:auto}
.cfg-v1 .cfg-screen.exit-left{transform:translateX(-40px)}
@media (max-width:960px){.cfg-v1 .cfg-stage{flex:none;min-height:320px}.cfg-v1 .cfg-screen{position:relative;inset:auto;opacity:0;transform:translateY(20px);transition:opacity .35s,transform .35s;display:none}.cfg-v1 .cfg-screen.active{display:flex;opacity:1;transform:translateY(0)}.cfg-v1 .cfg-screen.exit-left{transform:translateY(-20px)}}
.cfg-v1 .cfg-screen{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--bg-4) transparent}
.cfg-v1 .cfg-screen::-webkit-scrollbar{width:5px}
.cfg-v1 .cfg-screen::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:999px}
.cfg-v1 .cfg-types{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:640px){.cfg-v1 .cfg-types{grid-template-columns:1fr}}
.cfg-v1 .cfg-type{position:relative;text-align:left;padding:22px 22px 20px;background:linear-gradient(180deg,rgba(255,255,255,0.03),rgba(255,255,255,0));border:1px solid var(--line-2);border-radius:var(--r-lg);cursor:pointer;transition:border-color .3s,transform .3s,background .3s;display:flex;flex-direction:column;gap:12px;overflow:hidden;font-family:var(--sans);color:var(--ink-0)}
.cfg-v1 .cfg-type:hover{border-color:var(--line-3);box-shadow:0 0 0 1px var(--line-3) inset,0 8px 24px -8px rgba(0,0,0,.4)}
.cfg-v1 .cfg-type.on{border-color:var(--accent,var(--cyan));background:radial-gradient(60% 80% at 80% 0%,color-mix(in oklab,var(--accent,var(--cyan)) 22%,transparent),transparent 60%),linear-gradient(180deg,rgba(255,255,255,0.05),rgba(255,255,255,0));box-shadow:0 14px 50px -16px color-mix(in oklab,var(--accent,var(--cyan)) 50%,transparent)}
.cfg-v1 .cfg-type-head{display:flex;align-items:center;justify-content:space-between}
.cfg-v1 .cfg-type-icon{width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);background:rgba(0,0,0,.25);display:grid;place-items:center;color:var(--accent,var(--cyan))}
.cfg-v1 .cfg-type-check{width:24px;height:24px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;color:transparent;transition:color .3s,background .3s,border-color .3s}
.cfg-v1 .cfg-type.on .cfg-type-check{background:var(--accent,var(--cyan));border-color:var(--accent,var(--cyan));color:#07070A}
.cfg-v1 .cfg-type-title{font-size:20px;font-weight:500;letter-spacing:-0.02em}
.cfg-v1 .cfg-type-d{font-size:13px;color:var(--ink-1);line-height:1.45;margin:0}
.cfg-v1 .cfg-type-price{margin-top:auto;display:flex;align-items:baseline;justify-content:space-between;border-top:1px dashed var(--line-2);padding-top:12px;font-family:var(--mono);font-size:12px;color:var(--ink-2);letter-spacing:0.08em}
.cfg-v1 .cfg-type-price b{color:var(--accent,var(--cyan));font-weight:500;font-family:var(--sans);font-size:18px;letter-spacing:-0.01em}
.cfg-v1 .cfg-slider-wrap{display:flex;flex-direction:column;gap:28px;padding:36px 0}
.cfg-v1 .slider-value{font-family:var(--sans);font-size:clamp(48px,6vw,88px);font-weight:500;letter-spacing:-0.05em;line-height:0.9;background:linear-gradient(135deg,var(--cyan),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:18px}
.cfg-v1 .slider-value small{font-size:clamp(16px,1.4vw,20px);color:var(--ink-1);font-family:var(--mono);letter-spacing:0.06em;-webkit-text-fill-color:var(--ink-1)}
.cfg-v1 .range-track{position:relative;height:44px;display:flex;align-items:center}
.cfg-v1 .range-track input[type="range"]{position:absolute;inset:0;width:100%;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;margin:0}
.cfg-v1 .range-track .range-bar{position:relative;height:4px;width:100%;background:var(--bg-3);border-radius:999px;overflow:hidden}
.cfg-v1 .range-track .range-fill{position:absolute;inset:0;width:var(--val,50%);background:linear-gradient(90deg,var(--cyan),var(--purple));border-radius:999px;transition:width .15s linear}
.cfg-v1 .range-track input[type="range"]::-webkit-slider-runnable-track{background:transparent;height:4px}
.cfg-v1 .range-track input[type="range"]::-moz-range-track{background:transparent;height:4px;border:0}
.cfg-v1 .range-track input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--ink-0);border:4px solid var(--cyan);box-shadow:0 6px 18px -4px rgba(34,211,238,.6),0 0 0 4px rgba(34,211,238,.18);margin-top:-10px;cursor:pointer;transition:transform .15s}
.cfg-v1 .range-track input[type="range"]::-webkit-slider-thumb:active{transform:scale(1.1)}
.cfg-v1 .range-track input[type="range"]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--ink-0);border:4px solid var(--cyan);box-shadow:0 6px 18px -4px rgba(34,211,238,.6),0 0 0 4px rgba(34,211,238,.18);cursor:pointer}
.cfg-v1 .range-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--ink-3);letter-spacing:0.1em}
.cfg-v1 .cfg-extras{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:640px){.cfg-v1 .cfg-extras{grid-template-columns:1fr}}
.cfg-v1 .cfg-extra{position:relative;text-align:left;display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:14px;border:1px solid var(--line-2);background:rgba(255,255,255,0.02);cursor:pointer;font-family:var(--sans);color:var(--ink-0);transition:border-color .25s,background .25s}
.cfg-v1 .cfg-extra:hover{border-color:var(--line-3)}
.cfg-v1 .cfg-extra .cex-check{width:20px;height:20px;border-radius:6px;border:1px solid var(--line-3);display:grid;place-items:center;flex:none;color:transparent;transition:background .2s,color .2s,border-color .2s}
.cfg-v1 .cfg-extra.on{border-color:var(--cyan);background:rgba(34,211,238,.06)}
.cfg-v1 .cfg-extra.on .cex-check{background:var(--cyan);border-color:var(--cyan);color:#07070A}
.cfg-v1 .cfg-extra .cex-text{display:flex;flex-direction:column;gap:2px;flex:1}
.cfg-v1 .cfg-extra .cex-t{font-size:15px;font-weight:500;letter-spacing:-0.005em}
.cfg-v1 .cfg-extra .cex-d{font-size:12px;color:var(--ink-2)}
.cfg-v1 .cfg-extra .cex-p{font-family:var(--mono);font-size:12px;color:var(--cyan);letter-spacing:0.04em;flex:none}
.cfg-v1 .cfg-options{display:flex;flex-direction:column;gap:10px}
.cfg-v1 .cfg-option{position:relative;text-align:left;display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:14px;border:1px solid var(--line-2);background:rgba(255,255,255,0.02);cursor:pointer;font-family:var(--sans);color:var(--ink-0);transition:border-color .25s,background .25s,transform .25s}
.cfg-v1 .cfg-option:hover{border-color:var(--line-3);box-shadow:0 0 0 1px var(--line-3) inset}
.cfg-v1 .cfg-option.on{border-color:var(--purple);background:radial-gradient(40% 100% at 0% 50%,rgba(168,85,247,.16),transparent 60%),rgba(255,255,255,0.03)}
.cfg-v1 .cfg-option .co-radio{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--line-3);position:relative;flex:none;transition:border-color .25s}
.cfg-v1 .cfg-option.on .co-radio{border-color:var(--purple)}
.cfg-v1 .cfg-option.on .co-radio::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--purple);box-shadow:0 0 8px var(--purple)}
.cfg-v1 .cfg-option .co-body{flex:1;display:flex;flex-direction:column;gap:2px}
.cfg-v1 .cfg-option .co-t{font-size:16px;font-weight:500;letter-spacing:-0.01em}
.cfg-v1 .cfg-option .co-d{font-size:13px;color:var(--ink-2)}
.cfg-v1 .cfg-option .co-p{font-family:var(--mono);font-size:12px;color:var(--ink-1);letter-spacing:0.04em;flex:none}
.cfg-v1 .cfg-option .co-p b{color:var(--lime);font-family:var(--sans);font-weight:500;font-size:16px;letter-spacing:-0.01em}
.cfg-v1 .cfg-option .co-p b.neutral{color:var(--ink-0)}
.cfg-v1 .cfg-times{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width:640px){.cfg-v1 .cfg-times{grid-template-columns:1fr}}
.cfg-v1 .cfg-time{position:relative;text-align:left;padding:22px 18px;border-radius:16px;border:1px solid var(--line-2);background:rgba(255,255,255,0.025);cursor:pointer;display:flex;flex-direction:column;gap:10px;font-family:var(--sans);color:var(--ink-0);transition:border-color .25s,transform .25s,background .25s}
.cfg-v1 .cfg-time:hover{transform:translateY(-3px);border-color:var(--line-3)}
.cfg-v1 .cfg-time.on{border-color:var(--accent,var(--cyan));background:radial-gradient(60% 80% at 50% 0%,color-mix(in oklab,var(--accent,var(--cyan)) 18%,transparent),transparent 60%),rgba(255,255,255,0.04);box-shadow:0 14px 40px -16px color-mix(in oklab,var(--accent,var(--cyan)) 50%,transparent)}
.cfg-v1 .cfg-time .ti-icon{width:32px;height:32px;border-radius:8px;background:rgba(0,0,0,.3);border:1px solid var(--line-2);display:grid;place-items:center;color:var(--accent,var(--cyan))}
.cfg-v1 .cfg-time .ti-t{font-size:17px;font-weight:500;letter-spacing:-0.015em}
.cfg-v1 .cfg-time .ti-d{font-size:13px;color:var(--ink-2);line-height:1.4}
.cfg-v1 .cfg-time .ti-p{margin-top:6px;font-family:var(--mono);font-size:12px;color:var(--lime);letter-spacing:0.06em}
.cfg-v1 .cfg-time .ti-p.neutral{color:var(--ink-2)}
.cfg-v1 .cfg-time .ti-p.danger{color:#FACC15}
.cfg-v1 .cfg-final{display:grid;gap:18px}
.cfg-v1 .cfg-final .ff-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:540px){.cfg-v1 .cfg-final .ff-row{grid-template-columns:1fr}}
.cfg-v1 .cfg-final label{font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:0.1em;text-transform:uppercase;display:block;margin-bottom:8px}
.cfg-v1 .cfg-final .input{width:100%}
.cfg-v1 .cfg-final .ff-mini{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;margin:4px 0 14px;border:1px solid var(--line-2);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.02)}
.cfg-v1 .cfg-final .ff-mini-cell{padding:12px 14px;border-right:1px solid var(--line-2)}
.cfg-v1 .cfg-final .ff-mini-cell:last-child{border-right:none}
.cfg-v1 .cfg-final .ff-mini-cell .ffm-l{font-family:var(--mono);font-size:10px;color:var(--ink-3);letter-spacing:0.14em;text-transform:uppercase}
.cfg-v1 .cfg-final .ff-mini-cell .ffm-v{font-family:var(--sans);font-size:15px;color:var(--ink-0);font-weight:500;margin-top:4px;letter-spacing:-0.01em}
@media (max-width:540px){.cfg-v1 .cfg-final .ff-mini{grid-template-columns:1fr}.cfg-v1 .cfg-final .ff-mini-cell{border-right:none;border-bottom:1px solid var(--line-2)}.cfg-v1 .cfg-final .ff-mini-cell:last-child{border-bottom:none}}
.cfg-v1 .cfg-success{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;padding:20px;height:100%;justify-content:center}
.cfg-v1 .cfg-success .cs-mark{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,var(--lime),var(--cyan));display:grid;place-items:center;color:#07070A;font-size:50px;box-shadow:0 20px 60px -16px rgba(163,230,53,.5);animation:csmPulse 1.4s ease-in-out infinite alternate}
@keyframes csmPulse{to{transform:scale(1.06)}}
.cfg-v1 .cfg-success h3{font-size:clamp(28px,3.4vw,44px);font-weight:500;letter-spacing:-0.025em}
.cfg-v1 .cfg-success p{color:var(--ink-1);max-width:44ch;font-size:16px;line-height:1.55}
.cfg-v1 .cfg-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(20px,3vw,40px);border-top:1px solid var(--line-1);background:rgba(7,7,10,0.65);backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);flex:none}
@media (max-width:960px){.cfg-v1 .cfg-bottom{position:sticky;bottom:0;z-index:10}}
.cfg-v1 .cfg-progress{display:flex;gap:8px;flex:1;max-width:360px}
.cfg-v1 .cfg-progress .seg{flex:1;height:3px;background:var(--bg-3);border-radius:999px;overflow:hidden;position:relative}
.cfg-v1 .cfg-progress .seg::after{content:"";position:absolute;inset:0;width:0%;background:linear-gradient(90deg,var(--cyan),var(--purple));transition:width .45s cubic-bezier(.2,.7,.2,1)}
.cfg-v1 .cfg-progress .seg.done::after{width:100%}
.cfg-v1 .cfg-progress .seg.cur::after{width:50%;background:linear-gradient(90deg,var(--cyan),var(--cyan))}
.cfg-v1 .cfg-bottom .cb-step-label{font-family:var(--mono);font-size:12px;color:var(--ink-2);letter-spacing:0.1em;flex:none}
.cfg-v1 .cfg-bottom .cb-step-label b{color:var(--ink-0)}
.cfg-v1 .cfg-bottom .cb-actions{display:flex;gap:10px}
.cfg-v1 .cfg-bottom .cb-key-hint{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);letter-spacing:0.08em}
.cfg-v1 .cfg-bottom .cb-key-hint kbd{font-family:var(--mono);font-size:10px;padding:2px 6px;border-radius:4px;background:var(--bg-3);border:1px solid var(--line-2);color:var(--ink-1)}
@media (max-width:640px){.cfg-v1 .cfg-bottom .cb-step-label,.cfg-v1 .cfg-bottom .cb-key-hint{display:none}}
.cfg-v1 .btn-prev{background:rgba(255,255,255,0.03);border:1px solid var(--line-2);color:var(--ink-1);padding:12px 18px;border-radius:999px;font-family:var(--sans);font-size:14px;cursor:pointer;transition:color .2s,background .2s,border-color .2s}
.cfg-v1 .btn-prev:hover:not(:disabled){color:var(--ink-0);background:rgba(255,255,255,0.06)}
.cfg-v1 .btn-prev:disabled{opacity:.35;cursor:not-allowed}
.cfg-v1 .btn-next{background:linear-gradient(135deg,var(--ink-0),#ffffff 60%,#DDE3FF);color:#07070A;padding:12px 22px;border-radius:999px;font-family:var(--sans);font-weight:500;font-size:14px;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:transform .2s,box-shadow .2s;box-shadow:0 10px 30px -10px rgba(168,85,247,.45)}
.cfg-v1 .btn-next:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 40px -8px rgba(168,85,247,.55)}
.cfg-v1 .btn-next:disabled{background:var(--bg-3);color:var(--ink-2);box-shadow:none;cursor:not-allowed}
@media (max-width:960px){.cfg-v1 .receipt-list{max-height:none;padding-top:14px}.cfg-v1 .cfg-step-title{font-size:clamp(24px,6.5vw,34px)}.cfg-v1 .cfg-step-sub{font-size:14.5px;margin-top:12px}.cfg-v1 .cfg-stage{margin-top:20px}.cfg-v1 .cfg-top{padding:14px 18px}.cfg-v1 .cfg-top .ct-title{display:none}.cfg-v1 .cfg-bottom .cb-step-label,.cfg-v1 .cfg-bottom .cb-key-hint{display:none}.cfg-v1 .cfg-progress{max-width:none}}
@media (max-width:540px){.cfg-v1 .price-display{font-size:clamp(44px,14vw,60px) !important}.cfg-v1 .price-currency{font-size:28px}.cfg-v1 .cfg-top .ct-brand span:last-child{display:none}.cfg-v1 .cfg-top .ct-actions .ct-reset{padding:8px 10px}}
.cfg-v1 .pf-btn{padding:7px 16px;border-radius:999px;border:1px solid var(--line-2);background:transparent;color:var(--ink-2);font-family:var(--mono);font-size:11px;letter-spacing:.08em;cursor:pointer;text-transform:uppercase;transition:background .2s,border-color .2s,color .2s}
.cfg-v1 .pf-btn:hover{border-color:var(--cyan);color:var(--cyan)}
.cfg-v1 .pf-btn.active{background:var(--cyan);border-color:var(--cyan);color:#07070A;font-weight:600}
@media (max-width:640px){.cfg-v1 .scenario-dot.active{background:var(--cyan);transform:scale(1.3)}.cfg-v1 .scenario-btn{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid var(--line-2);display:grid;place-items:center;cursor:pointer;color:var(--ink-1);-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s;flex-shrink:0}.cfg-v1 .scenario-btn:active{background:rgba(255,255,255,.14);border-color:var(--line-3)}}
.cfg-v1 .sw-tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,60px)}
@media (max-width:720px){.cfg-v1 .sw-tech-grid{grid-template-columns:1fr}}
.cfg-v1 .ds-tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media (max-width:720px){.cfg-v1 .ds-tech-grid{grid-template-columns:1fr}}
@media (max-width:720px){.cfg-v1 .perchi-slider-wrap{position:relative}.cfg-v1 .perchi-dot.active{background:var(--cyan);transform:scale(1.3)}.cfg-v1 .perchi-btn{width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid var(--line-2);display:grid;place-items:center;cursor:pointer;color:var(--ink-1);transition:background .15s,border-color .15s;-webkit-tap-highlight-color:transparent;flex-shrink:0}.cfg-v1 .perchi-btn:active{background:rgba(255,255,255,.14);border-color:var(--line-3)}}
.cfg-v1 .cky-btn-accept{color:#ffffff !important}
.cfg-v1 .cky-btn-accept:hover{color:#ffffff !important}
@keyframes hero-reveal-up{from{opacity:0;transform:translateY(22px) scale(.98);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
