/* ===== base ===== */
.plan{--c0:#3987e5;--c1:#d95926;--c2:#199e70;--c3:#c98500;--c4:#d55181;--c5:#9085e9;--cons:#9085e9;--base:#3987e5;--amb:#199e70;--ok:#2fcf6f;--wr:#fab219;--bd:#ec6a5a;
  background:radial-gradient(1100px 600px at 85% -5%,rgba(0,67,253,.14),transparent 60%),radial-gradient(900px 500px at -10% 40%,rgba(60,104,255,.16),transparent 60%),var(--navy-deep);padding-bottom:0;overflow-x:hidden}
.plan ::selection{background:var(--blue);color:#fff}
.plan::-webkit-scrollbar{width:10px}.plan::-webkit-scrollbar-thumb{background:var(--blue-2);border-radius:8px}
.grain{position:fixed;inset:0;z-index:3;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>")}
.prog{position:fixed;left:0;top:0;height:3px;width:100%;z-index:60;background:linear-gradient(90deg,var(--blue),var(--sky));transform-origin:left;transform:scaleX(var(--p,0))}
.num{font-family:var(--f-title);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.rv{opacity:0;transform:translateY(18px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:none}
[data-tilt]{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease,box-shadow .25s ease;will-change:transform}
[data-tilt].hot{box-shadow:0 24px 60px -24px rgba(0,67,253,.7)}
[data-mag]{transition:transform .25s cubic-bezier(.2,.8,.2,1)}

/* ===== topo ===== */
.ptop{position:fixed;left:0;right:0;top:0;z-index:50;transition:background .3s,backdrop-filter .3s,border-color .3s;border-bottom:1px solid transparent}
.ptop.sc{background:rgba(15,22,38,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--line)}
.ptop-in{width:min(1280px,100% - 32px);margin-inline:auto;display:flex;align-items:center;gap:12px;min-height:64px}
.ptop .brand img{height:34px;width:auto}
.chip-cli{font-size:.75rem;border:1px solid var(--line);border-radius:999px;padding:6px 12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:34vw;margin-right:auto}
.pt-act{display:flex;gap:8px}
.ibtn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:rgba(27,36,56,.5);color:var(--ink);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}
.ibtn svg,.nbtn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ibtn:hover{border-color:var(--sky)}
.ibtn.pri{background:var(--blue);border-color:var(--blue);color:#fff}
.ibtn.pri:hover{box-shadow:0 0 0 4px rgba(0,67,253,.28),0 10px 30px -8px rgba(0,67,253,.9)}
.ibtn:not(.pri) span{display:none}

/* ===== hero ===== */
.hero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden;padding:96px 0 72px}
.hero-bg{position:absolute;inset:0;perspective:1000px;pointer-events:none}
#fx{position:absolute;inset:0;width:100%;height:100%;opacity:.7}
.glow{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}
.g1{width:420px;height:420px;right:-80px;top:8%;background:radial-gradient(circle,rgba(0,67,253,.8),transparent 70%);animation:drift 14s ease-in-out infinite}
.g2{width:360px;height:360px;left:-100px;bottom:0;background:radial-gradient(circle,rgba(148,163,194,.5),transparent 70%);animation:drift 18s ease-in-out infinite reverse}
.layer{position:absolute;right:-14%;top:6%;width:min(560px,95vw);transform-style:preserve-3d;transition:transform .2s ease-out}
.l1{opacity:.55;transform:translate3d(calc(var(--mx,0)*-26px),calc(var(--my,0)*-18px),-120px) rotateY(calc(var(--mx,0)*8deg)) rotateX(calc(var(--my,0)*-6deg));filter:blur(1px)}
.l2{opacity:.95;transform:translate3d(calc(var(--mx,0)*22px),calc(var(--my,0)*16px),60px) rotateY(calc(var(--mx,0)*-10deg)) rotateX(calc(var(--my,0)*8deg));width:min(420px,72vw);right:-4%;top:14%;animation:bob2 7s ease-in-out infinite}
.layer img{width:100%;height:auto;display:block}
.l3{inset:0;right:0;top:0;width:auto}
.floatcard{position:absolute;background:rgba(27,36,56,.55);border:1px solid var(--line);border-radius:14px;padding:10px 14px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:grid;gap:2px;animation:bob2 6s ease-in-out infinite}
.floatcard small{font-size:.6875rem;color:var(--muted)}
.floatcard strong{font-family:var(--f-title);font-size:1.25rem}
.fc1{right:6%;top:58%;transform:translateZ(120px)}.fc2{right:36%;top:74%;animation-delay:-2s}.fc3{right:4%;top:30%;animation-delay:-4s}
.hero-in{position:relative;width:min(1280px,100% - 32px);margin-inline:auto}
.hero h1{font-size:clamp(2.2rem,7.4vw,4.8rem);max-width:16ch;margin:14px 0 18px;line-height:1.04}
.hero .lead{max-width:50ch;font-size:1.0625rem}
.split .w{display:inline-block;opacity:0;transform:translateY(.7em) rotateX(-40deg);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i,0)*55ms)}
.split.in .w{opacity:1;transform:none}
.hero-cta{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:30px}
.btn.big{min-height:56px;padding:0 30px;font-size:1rem;border-radius:16px;box-shadow:0 0 0 0 rgba(0,67,253,.6);animation:pulseb 2.8s infinite}
.hint-s{font-size:.8125rem;color:var(--muted)}
.scroll-cue{position:absolute;left:50%;bottom:22px;width:26px;height:42px;border:2px solid var(--line);border-radius:14px;transform:translateX(-50%)}
.scroll-cue i{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--sky);animation:cue 1.8s infinite}

/* ===== app ===== */
.app{position:relative;z-index:4;padding:24px 0 120px}
.app-in{width:min(1280px,100% - 32px);margin-inline:auto}
.stepper{position:sticky;top:64px;z-index:20;margin:0 -16px 16px;padding:10px 16px;background:rgba(15,22,38,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.st-line{position:absolute;left:16px;right:16px;bottom:0;height:2px;background:rgba(148,163,194,.14)}
.st-line i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),var(--sky));transition:width .6s cubic-bezier(.2,.8,.2,1)}
#st-list{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;justify-content:flex-start}
#st-list li{flex:none}
.sbtn{display:flex;align-items:center;gap:8px;min-height:48px;padding:0 12px;border-radius:14px;border:1px solid transparent;background:none;color:var(--muted);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .25s,color .25s,border-color .25s,transform .25s}
.sbtn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sbtn .sl{display:none}
.sbtn:hover{color:var(--ink)}
.sbtn[aria-current="step"]{background:var(--blue);color:#fff;box-shadow:0 10px 30px -10px rgba(0,67,253,.9)}
.sbtn[aria-current="step"] .sl{display:inline}
.sbtn.done svg{color:var(--ok)}
.live{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}
.lk{position:relative;background:linear-gradient(160deg,rgba(27,36,56,.75),rgba(15,22,38,.6));border:1px solid var(--line);border-radius:18px;padding:14px 16px;min-width:0;overflow:hidden}
.lk::after{content:"";position:absolute;inset:0;background:radial-gradient(240px 120px at 100% 0,rgba(148,163,194,.14),transparent 70%);pointer-events:none}
.lbl{display:block;font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.lk .num{display:block;font-size:clamp(1.35rem,4.6vw,2.1rem);line-height:1.1;margin-top:4px}
.lk small{display:block;font-size:.75rem;color:var(--muted);margin-top:2px}
.bar{height:6px;border-radius:99px;background:rgba(148,163,194,.14);overflow:hidden;margin-top:10px}
.bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--sky));transition:width 1s cubic-bezier(.2,.8,.2,1)}
.hring{display:flex;align-items:center;gap:10px;margin-top:2px}
.hring svg{width:54px;height:54px}
.r-bg{fill:none;stroke:rgba(148,163,194,.16);stroke-width:7}
.r-fg{fill:none;stroke:var(--sky);stroke-width:7;stroke-linecap:round;stroke-dasharray:var(--len,170);stroke-dashoffset:var(--len,170);transition:stroke-dashoffset 1.2s cubic-bezier(.2,.8,.2,1),stroke .4s;filter:drop-shadow(0 0 6px rgba(148,163,194,.5))}
.r-fg.ok{stroke:var(--ok)}.r-fg.wr{stroke:var(--wr)}.r-fg.bd{stroke:var(--bd)}
.stage-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.stage{order:1;min-width:0;display:grid;gap:14px;align-content:start}
.controls{order:2;min-width:0;display:grid;gap:12px;align-content:start}
.card{position:relative;background:linear-gradient(160deg,rgba(27,36,56,.62),rgba(15,22,38,.55));border:1px solid var(--line);border-radius:20px;padding:18px;min-width:0}
.card h3,.card h2.ch{font-size:1.125rem;margin-bottom:4px}
.card .sub{font-size:.8125rem;color:var(--muted);margin-bottom:12px}
.enter{animation:rise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--d,0)*70ms)}
.navbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(15,22,38,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}
.n-mid{flex:1;min-width:0;text-align:center;line-height:1.2}
.n-mid small{display:block;font-size:.6875rem;color:var(--muted)}
.n-mid strong{font-family:var(--f-title);font-size:.9375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.nbtn{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:0 16px;border-radius:14px;border:1px solid var(--line);background:rgba(27,36,56,.5);color:var(--ink);font:inherit;font-weight:600;font-size:.875rem;cursor:pointer}
.nbtn.pri{background:var(--blue);border-color:var(--blue);color:#fff}
.nbtn:disabled{opacity:.35;cursor:not-allowed}

/* ===== controles ===== */
.ctl{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid rgba(148,163,194,.1)}
.ctl:last-child{border:0}
.ctl-h{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ctl-h label{font-size:.8125rem;color:var(--ink);font-weight:600}
.ctl-v{display:inline-flex;align-items:center;gap:4px;background:var(--navy-deep);border:1px solid var(--line);border-radius:10px;padding:0 8px}
.ctl-v:focus-within{border-color:var(--sky)}
.ctl-v input{width:84px;min-height:38px;background:none;border:0;color:var(--ink);font:inherit;font-family:var(--f-title);font-size:1.0625rem;text-align:right;outline:0;-moz-appearance:textfield}
.ctl-v input::-webkit-outer-spin-button,.ctl-v input::-webkit-inner-spin-button{-webkit-appearance:none}
.ctl-v em{font-style:normal;font-size:.75rem;color:var(--muted)}
.rng{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:none;cursor:pointer}
.rng::-webkit-slider-runnable-track{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--sky)) 0/calc(var(--p,0)*1%) 100% no-repeat,rgba(148,163,194,.16)}
.rng::-moz-range-track{height:8px;border-radius:99px;background:rgba(148,163,194,.16)}
.rng::-moz-range-progress{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--sky))}
.rng::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-8px;border-radius:50%;background:#fff;border:4px solid var(--blue);box-shadow:0 4px 14px rgba(0,67,253,.6);transition:transform .15s}
.rng::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--blue)}
.rng:active::-webkit-slider-thumb{transform:scale(1.25)}
.rng:focus-visible{outline:3px solid var(--sky);outline-offset:4px;border-radius:8px}
.ctl small{font-size:.6875rem;color:var(--muted)}
.sel{width:100%;min-height:48px;background:var(--navy-deep);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:0 12px;font:inherit;font-size:.9375rem}
.sel:focus-visible{outline:3px solid var(--sky)}
.fgroup{font-family:var(--f-title);font-size:.9375rem;color:var(--sky);margin:6px 0 0}
.fun-in{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.fi{display:grid;gap:4px;background:var(--navy-deep);border:1px solid var(--line);border-radius:12px;padding:8px 10px}
.fi:focus-within{border-color:var(--sky)}
.fi label{font-size:.6875rem;color:var(--muted);line-height:1.2}
.fi input{background:none;border:0;color:var(--ink);font-family:var(--f-title);font-size:1.25rem;width:100%;outline:0;min-height:34px}
.pills2{display:flex;flex-wrap:wrap;gap:8px}
.pill2{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:none;color:var(--ink);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .2s,border-color .2s}
.pill2 i{width:10px;height:10px;border-radius:50%;display:inline-block}
.pill2[aria-pressed="true"]{background:rgba(0,67,253,.28);border-color:var(--sky)}
.sw{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:0 4px}
.sw span{font-size:.8125rem}
.tg{position:relative;width:52px;height:30px;border-radius:99px;border:1px solid var(--line);background:rgba(148,163,194,.14);cursor:pointer;flex:none;transition:background .25s}
.tg::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .25s cubic-bezier(.3,1.5,.5,1)}
.tg[aria-pressed="true"]{background:var(--blue);border-color:var(--blue)}
.tg[aria-pressed="true"]::after{transform:translateX(22px)}
.c0{--cc:var(--c0)}.c1{--cc:var(--c1)}.c2{--cc:var(--c2)}.c3{--cc:var(--c3)}.c4{--cc:var(--c4)}.c5{--cc:var(--c5)}.cs-cons{--cc:var(--cons)}.cs-base{--cc:var(--base)}.cs-amb{--cc:var(--amb)}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--cc,var(--sky));flex:none}

/* ===== passo 1: funil isométrico ===== */
.fun-card{display:grid;gap:14px}
.isowrap{perspective:1200px;height:clamp(250px,60vw,380px);display:grid;place-items:center;overflow:visible}
.iso{position:relative;width:min(92%,520px);height:100%;transform-style:preserve-3d;transform:rotateX(calc(58deg + var(--ry,0deg))) rotateZ(calc(-34deg + var(--rx,0deg)));transition:transform .3s ease}
.slab{position:absolute;left:50%;top:50%;height:46%;width:calc(var(--w,50)*1%);border-radius:14px;transform:translate(-50%,-50%) translateZ(calc(var(--z,0)*1px));transition:width .9s cubic-bezier(.2,.8,.2,1);background:linear-gradient(135deg,var(--a),var(--b));box-shadow:0 0 0 1px rgba(255,255,255,.18) inset,0 30px 50px -10px rgba(0,0,0,.55),0 0 36px -6px var(--b)}
.slab::after{content:"";position:absolute;inset:0;border-radius:14px;background:linear-gradient(120deg,rgba(255,255,255,.35),transparent 40%);opacity:.7}
.s0{--a:#9FB0D0;--b:#3C68FF}.s1{--a:#6f94ff;--b:#2f5bf0}.s2{--a:#5a82ff;--b:#1f4ee0}.s3{--a:#4670f5;--b:#1743c8}.s4{--a:#335fe6;--b:#1239b0}.s5{--a:#4ad892;--b:#139a5f}
.slab.weak{animation:weak 1.8s ease-in-out infinite;box-shadow:0 0 0 3px rgba(255,255,255,.85) inset,0 30px 50px -10px rgba(0,0,0,.55),0 0 36px -6px var(--b)}
.fleg{display:grid;gap:8px}
.fleg li{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;gap:4px 10px;align-items:center;background:var(--navy-deep);border:1px solid var(--line);border-radius:12px;padding:9px 12px;font-size:.8125rem}
.fleg li i{width:12px;height:12px;border-radius:4px;background:linear-gradient(135deg,var(--a),var(--b))}
.fleg li b{font-family:var(--f-title);font-size:1.0625rem}
.fleg li .cv2{font-size:.6875rem;color:var(--muted);min-width:48px;text-align:right}
.fleg li.weak{border-color:var(--bd)}
.fleg li.weak .cv2{color:var(--bd);font-weight:700}
.mini-kpis{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}
.mk{background:var(--navy-deep);border:1px solid var(--line);border-radius:14px;padding:10px 12px;min-width:0}
.mk span{display:block;font-size:.6875rem;color:var(--muted);line-height:1.2}
.mk b{display:block;font-family:var(--f-title);font-size:1.2rem;margin-top:2px}

/* ===== passo 2: meta ===== */
.gauge-card{display:grid;gap:16px;justify-items:center;text-align:center}
.gauge{position:relative;width:min(260px,70vw);aspect-ratio:1}
.gauge svg{width:100%;height:100%}
.gauge .r-bg{stroke-width:9}.gauge .r-fg{stroke-width:9}
.gauge .gc{position:absolute;inset:0;display:grid;place-content:center;gap:2px}
.gauge .gc strong{font-size:clamp(1.4rem,6vw,2rem)}
.gauge .gc small{font-size:.75rem;color:var(--muted)}
.cas{display:grid;gap:10px}
.cas li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center}
.cas .cn{font-size:.8125rem;font-weight:600}
.cas .cd{font-size:.75rem;padding:3px 9px;border-radius:999px;background:rgba(74,216,146,.12);color:var(--ok);font-weight:700}
.cas .trk{grid-column:1/-1;position:relative;height:22px;border-radius:8px;background:rgba(148,163,194,.08);overflow:hidden}
.cas .trk i{position:absolute;left:0;top:0;bottom:0;border-radius:8px;transition:width 1s cubic-bezier(.2,.8,.2,1)}
.cas .t-need{background:linear-gradient(90deg,var(--blue),var(--sky));opacity:.95}
.cas .t-now{background:rgba(255,255,255,.28);height:50%;top:auto;bottom:0;border-radius:0 4px 4px 0}
.cas .nums{grid-column:1/-1;display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted)}
.cas .nums b{color:var(--ink);font-family:var(--f-title);font-size:.9375rem}
.badges{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.bdg{display:flex;align-items:center;gap:10px;background:var(--navy-deep);border:1px solid var(--line);border-radius:14px;padding:10px 12px}
.bdg svg{width:28px;height:28px;fill:none;stroke:var(--sky);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.bdg b{display:block;font-family:var(--f-title);font-size:1.2rem}
.bdg span{font-size:.6875rem;color:var(--muted)}

/* ===== passo 3: cenários ===== */
.chartbox{position:relative}
.chart2{width:100%;height:auto;display:block;overflow:visible;touch-action:pan-y}
.chart2 .draw{stroke-dasharray:1;stroke-dashoffset:1;animation:dr 1.8s .15s cubic-bezier(.2,.8,.2,1) forwards}
.chart2 .area{opacity:0;animation:fade .9s 1.2s forwards}
.ttip{position:absolute;pointer-events:none;background:rgba(15,22,38,.96);border:1px solid var(--sky);border-radius:12px;padding:8px 12px;font-size:.75rem;white-space:nowrap;transform:translate(-50%,-110%);z-index:3;box-shadow:0 12px 30px rgba(0,0,0,.4)}
.ttip b{display:block;margin-bottom:4px;font-family:var(--f-title)}
.ttip span{display:flex;align-items:center;gap:6px}
.lgd{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sc-cards{display:grid;gap:10px;grid-template-columns:minmax(0,1fr)}
.scc{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;background:var(--navy-deep);border:1px solid var(--line);border-radius:16px;padding:12px;border-left:4px solid var(--cc)}
.scc .rr{position:relative;width:72px;height:72px}
.scc .rr svg{width:100%;height:100%}
.scc .rr .r-fg{stroke:var(--cc)}
.scc .rr strong{position:absolute;inset:0;display:grid;place-content:center;font-family:var(--f-title);font-size:1rem}
.scc h4{font-family:var(--f-title);font-size:1rem}
.scc p{font-size:.75rem;color:var(--muted)}
.scc p b{color:var(--ink);font-family:var(--f-title);font-size:1rem}
.stt{display:inline-flex;align-items:center;gap:5px;font-size:.6875rem;font-weight:700;padding:2px 8px;border-radius:99px;border:1px solid currentColor}
.stt.ok{color:var(--ok)}.stt.wr{color:var(--wr)}.stt.bd{color:var(--bd)}

/* ===== passo 4: canais ===== */
.donut-card{display:grid;gap:16px}
.dwrap{position:relative;width:min(280px,76vw);aspect-ratio:1;margin-inline:auto}
.dwrap svg{width:100%;height:100%}
.dseg{transition:stroke-width .25s,opacity .25s;cursor:pointer}
.stage-list{display:grid;gap:10px}
.dwrap.hov .dseg{opacity:.35}.dwrap .dseg.on{opacity:1;stroke-width:32}
.dcen{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.dcen strong{font-size:clamp(1.5rem,6vw,2.1rem)}.dcen small{font-size:.75rem;color:var(--muted)}
.dleg{display:grid;gap:8px}
.dleg li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:2px 10px;align-items:center;background:var(--navy-deep);border:1px solid var(--line);border-radius:12px;padding:9px 12px;font-size:.8125rem;cursor:default;transition:border-color .2s,transform .2s}
.dleg li.on{border-color:var(--cc);transform:translateX(4px)}
.dleg li b{font-family:var(--f-title);font-size:1.0625rem}
.dleg li small{grid-column:2/-1;color:var(--muted);font-size:.6875rem}

/* ===== passo 5: rotina ===== */
.orbs{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.orb{position:relative;background:linear-gradient(160deg,rgba(27,36,56,.7),rgba(15,22,38,.6));border:1px solid var(--line);border-radius:20px;padding:14px;display:grid;gap:6px;justify-items:center;text-align:center}
.orb .rr{position:relative;width:86px;height:86px}
.orb .rr svg.rg{width:100%;height:100%}
.orb .rr svg.ic{position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px 0 0 -15px;fill:none;stroke:var(--sky);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.orb strong{font-family:var(--f-title);font-size:1.5rem;line-height:1}
.orb span{font-size:.75rem;color:var(--muted);line-height:1.25}
.week{display:grid;gap:6px;grid-template-columns:repeat(5,minmax(0,1fr))}
.week .dh{font-size:.6875rem;text-align:center;color:var(--sky);font-weight:700;letter-spacing:.06em}
.wk{min-height:150px;border-radius:12px;background:var(--navy-deep);border:1px solid var(--line);padding:6px;display:grid;gap:5px;align-content:start}
.pl{border-radius:8px;padding:5px 6px;font-size:.625rem;line-height:1.2;font-weight:700;background:rgba(0,67,253,.3);border-left:3px solid var(--sky)}
.pl small{display:block;font-weight:400;color:var(--muted)}
.pl.g{background:rgba(74,216,146,.16);border-left-color:var(--ok)}.pl.a{background:rgba(250,178,25,.16);border-left-color:var(--wr)}.pl.v{background:rgba(144,133,233,.22);border-left-color:var(--cons)}

/* ===== passo 6: pontos cegos ===== */
.score-card{display:grid;gap:14px;justify-items:center;text-align:center}
.bigring{position:relative;width:min(200px,56vw);aspect-ratio:1}
.bigring svg{width:100%;height:100%}
.bigring .r-bg,.bigring .r-fg{stroke-width:9}
.bigring .gc{position:absolute;inset:0;display:grid;place-content:center}
.bigring .gc strong{font-size:clamp(2.2rem,9vw,3.2rem);line-height:1}
.bigring .gc small{font-size:.75rem;color:var(--muted)}
.pipe{display:grid;gap:0;position:relative}
.pn{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;text-align:left;background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:8px 0;position:relative;min-height:64px}
.pn .nd{position:relative;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--navy-deep);border:3px solid var(--cc);box-shadow:0 0 0 0 var(--cc);animation:ping 2.4s infinite}
.pn .nd svg{width:24px;height:24px;fill:none;stroke:var(--cc);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pn:not(:last-child)::after{content:"";position:absolute;left:26px;top:62px;bottom:-8px;width:3px;border-radius:2px;background:linear-gradient(180deg,var(--cc),transparent) ,repeating-linear-gradient(180deg,rgba(148,163,194,.5) 0 8px,transparent 8px 16px);background-size:100% 100%;opacity:.7;animation:flow 1.6s linear infinite}
.pn b{display:block;font-size:.9375rem}
.pn small{display:block;color:var(--muted);font-size:.75rem}
.pn.ok{--cc:var(--ok)}.pn.warn{--cc:var(--wr)}.pn.bad{--cc:var(--bd)}
.pn.sel .nd{transform:scale(1.12)}
.advice{border:1px dashed var(--line);border-radius:14px;padding:12px 14px;font-size:.8125rem;color:var(--muted)}
.advice b{color:var(--ink)}
.cg{background:var(--navy-deep);border:1px solid var(--line);border-left:5px solid var(--cc);border-radius:14px;overflow:hidden}
.cg.ok{--cc:var(--ok)}.cg.warn{--cc:var(--wr)}.cg.bad{--cc:var(--bd)}
.cg summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;padding:8px 14px;font-weight:600;font-size:.875rem}
.cg summary::-webkit-details-marker{display:none}
.cg summary::after{content:"+";font-family:var(--f-title);font-size:1.4rem;color:var(--cc);transition:transform .25s}
.cg[open] summary::after{transform:rotate(45deg)}
.cg .cb{padding:0 14px 14px;display:grid;gap:6px;font-size:.8125rem;color:var(--muted)}
.cg .cb b{color:var(--ink)}
.money{display:flex;align-items:center;gap:14px;background:linear-gradient(120deg,rgba(250,178,25,.14),rgba(250,178,25,.03));border:1px solid rgba(250,178,25,.45);border-radius:16px;padding:14px}
.money strong{font-family:var(--f-title);font-size:1.4rem;color:var(--wr)}
.money small{display:block;color:var(--muted);font-size:.75rem}

/* ===== passo 7: plano ===== */
.paper-scroll{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 14px;scrollbar-width:thin}
.paper{flex:none;scroll-snap-align:center;width:calc(210mm*var(--sc,.4));height:calc(297mm*var(--sc,.4));border-radius:6px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.12);transform:perspective(1200px) rotateY(var(--ry,0deg));transition:transform .3s}
.paper .pg{transform:scale(var(--sc,.4));transform-origin:0 0}
.roadmap{display:grid;gap:8px}
.rm{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;background:var(--navy-deep);border:1px solid var(--line);border-radius:14px;padding:10px 12px;font-size:.8125rem}
.rm .n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-title);background:rgba(148,163,194,.14)}
.rm.rec{border-color:var(--sky);background:linear-gradient(120deg,rgba(0,67,253,.25),rgba(15,22,38,.4))}
.rm.rec .n{background:var(--blue)}
.rm small{display:block;color:var(--muted);font-size:.6875rem}
.act-row{display:flex;flex-wrap:wrap;gap:10px}

/* ===== animações ===== */
@keyframes rise{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:none}}
@keyframes drift{0%,100%{transform:translate(0,0)}50%{transform:translate(30px,-24px)}}
@keyframes bob2{0%,100%{translate:0 0}50%{translate:0 -12px}}
@keyframes pulseb{0%{box-shadow:0 0 0 0 rgba(0,67,253,.6)}70%{box-shadow:0 0 0 16px rgba(0,67,253,0)}100%{box-shadow:0 0 0 0 rgba(0,67,253,0)}}
@keyframes cue{0%{transform:translateY(0);opacity:1}100%{transform:translateY(16px);opacity:0}}
@keyframes dr{to{stroke-dashoffset:0}}
@keyframes fade{to{opacity:1}}
@keyframes weak{0%,100%{filter:brightness(1)}50%{filter:brightness(1.35)}}
@keyframes ping{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--cc) 55%,transparent)}70%{box-shadow:0 0 0 14px transparent}100%{box-shadow:0 0 0 0 transparent}}
@keyframes flow{to{background-position:0 16px}}

/* ===== responsivo ===== */
@media (min-width:640px){
  .ibtn:not(.pri) span{display:inline}
  .live{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sbtn .sl{display:inline}
  .sc-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .badges{grid-template-columns:repeat(4,minmax(0,1fr))}
  .orbs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fun-in{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pipe{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .pn{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center;padding:10px 0}
  .pn:not(:last-child)::after{left:calc(50% + 34px);right:-50%;top:35px;bottom:auto;width:auto;height:3px;background:linear-gradient(90deg,var(--cc),transparent),repeating-linear-gradient(90deg,rgba(148,163,194,.5) 0 8px,transparent 8px 16px);animation:flowx 1.6s linear infinite}
}
@keyframes flowx{to{background-position:16px 0}}
@media (min-width:1024px){
  .stage-grid{grid-template-columns:minmax(0,1fr) 380px;align-items:start}
  .stage{order:1}.controls{order:2;position:sticky;top:150px;max-height:calc(100vh - 230px);overflow-y:auto;padding-right:4px;scrollbar-width:thin}
  .fun-card{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center}
  .gauge-card{grid-template-columns:260px minmax(0,1fr);text-align:left;justify-items:stretch;align-items:center}
  .donut-card{grid-template-columns:300px minmax(0,1fr);align-items:center}
  .score-card{grid-template-columns:220px minmax(0,1fr);text-align:left;justify-items:stretch;align-items:center}
  .navbar{left:50%;right:auto;bottom:18px;transform:translateX(-50%);width:min(720px,calc(100% - 48px));border:1px solid var(--line);border-radius:20px}
  .live{gap:14px}
}
@media (min-width:1920px){.app-in,.ptop-in,.hero-in{width:min(1760px,100% - 120px)}.stage-grid{grid-template-columns:minmax(0,1fr) 480px}.hero h1{font-size:6rem}}
@media (hover:none){[data-tilt]{transform:none!important}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rv,.split .w{opacity:1;transform:none}.chart2 .draw{stroke-dashoffset:0}.chart2 .area{opacity:1}.layer,.floatcard{transform:none}
}

/* ajustes de aparelhos pequenos e barra de navegação do passo */
.ptop .brand{flex:none}.ibtn,.ibtn span{white-space:nowrap}
.navbar{transform:translateY(120%);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.navbar.show{transform:none}
@media (max-width:639px){
  .floatcard{display:none}
  .layer{opacity:.4;right:-38%}.l2{width:68vw;right:-22%;opacity:.7}
  .chip-cli{display:none}.pt-act{margin-left:auto}
  .ibtn.pri span{font-size:.75rem}
}
@media (max-width:420px){.ibtn.pri span{display:none}.ibtn.pri{padding:0 12px}.n-mid{display:none}.navbar{justify-content:space-between}.nbtn{flex:1;justify-content:center}}
@media (min-width:1024px){.navbar{transform:translate(-50%,140%)}.navbar.show{transform:translateX(-50%)}}

/* ===== documento (PDF e prévia) ===== */
.sheet{display:none}
.pg{width:210mm;height:297mm;background:#fff;color:#1B2438;font-family:var(--f-body);position:relative;overflow:hidden;padding:12mm 14mm 16mm;box-sizing:border-box;font-size:9pt;line-height:1.45;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.pg *{box-sizing:border-box}
.pg-h{display:flex;justify-content:space-between;align-items:center;border-bottom:.35mm solid #dfe5f5;padding-bottom:3mm;margin-bottom:5mm}
.pg-h img{height:9mm;width:auto;display:block}
.pg-h span{font-size:7.5pt;color:#4c5b82;letter-spacing:.08em;text-transform:uppercase}
.pg h2{font-family:var(--f-title);font-size:17pt;line-height:1.1;margin:0 0 1.5mm;color:#1B2438}
.pg h3{font-family:var(--f-title);font-size:10.5pt;margin:0 0 2mm;color:#1B2438}
.pg .k{font-family:var(--f-key);font-style:italic;font-weight:400;color:#0043FD}
.pg p{margin:0 0 2mm}
.pg .mu{color:#47567a;font-size:8pt}
.pg .lb{font-size:6.5pt;letter-spacing:.1em;text-transform:uppercase;color:#4c5b82}
.pg .row4{display:grid;grid-template-columns:repeat(4,1fr);gap:3mm;margin:3mm 0 5mm}
.pg .kp{border:.3mm solid #dfe5f5;border-radius:3mm;padding:3mm;background:linear-gradient(160deg,#f4f7ff,#fff)}
.pg .kp b{display:block;font-family:var(--f-title);font-size:14pt;color:#1B2438;margin-top:1mm}
.pg .two{display:grid;grid-template-columns:1fr 1fr;gap:5mm}
.pg .box{border:.3mm solid #dfe5f5;border-radius:3mm;padding:4mm;margin-bottom:4mm;background:#fff}
.pg svg{display:block;width:100%;height:auto}
.pg .pf{position:absolute;left:14mm;right:14mm;bottom:7mm;display:flex;justify-content:space-between;gap:6mm;font-size:6.5pt;color:#4c5b82;border-top:.3mm solid #dfe5f5;padding-top:2mm}
.pg .cvr{position:absolute;right:-30mm;top:20mm;width:150mm;opacity:.95}
.pg .cvr img{width:100%;height:auto;display:block}
.pg.cover{padding-top:16mm}
.pg.cover h1,.pg.cover h2.cvh{font-family:var(--f-title);font-size:34pt;line-height:1.02;margin:42mm 0 5mm;max-width:88mm;color:#1B2438}
.pg.cover .meta-big{margin-top:14mm;max-width:105mm;border-radius:4mm;padding:6mm;background:linear-gradient(135deg,#0043FD,#1B2438);color:#fff}
.pg.cover .meta-big .lb{color:#cfe0ff}
.pg.cover .meta-big b{display:block;font-family:var(--f-title);font-size:26pt;margin-top:1mm}
.pg.cover .trio{display:grid;grid-template-columns:repeat(3,1fr);gap:3mm;margin-top:4mm;max-width:105mm}
.pg .sev{display:grid;grid-template-columns:2.2mm 1fr;gap:3mm;border:.3mm solid #dfe5f5;border-radius:2.5mm;padding:3mm;margin-bottom:2.5mm}
.pg .sev i{border-radius:2mm}
.pg .sev.bad i{background:#d9402f}.pg .sev.warn i{background:#e0a100}.pg .sev.ok i{background:#1fae6a}
.pg .sev b{font-size:8.5pt}
.pg .sev p{font-size:7.5pt;color:#47567a;margin:0}
.pg .tile6{display:grid;grid-template-columns:repeat(3,1fr);gap:3mm}
.pg .rm2{display:grid;grid-template-columns:repeat(4,1fr);gap:3mm}
.pg .rm2 div{border:.3mm solid #dfe5f5;border-radius:3mm;padding:3mm;font-size:7.5pt}
.pg .rm2 div.rec{background:linear-gradient(135deg,#0043FD,#1B2438);color:#fff;border-color:#0043FD}
.pg .rm2 b{display:block;font-family:var(--f-title);font-size:9.5pt;margin-bottom:1mm}
.pg .wkp{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5mm;font-size:6.5pt}
.pg .wkp div{border:.3mm solid #dfe5f5;border-radius:2mm;padding:1.5mm;min-height:22mm}
.pg .wkp b{display:block;color:#0043FD;text-align:center;margin-bottom:1mm}
.pg .wkp span{display:block;background:#eaf0ff;border-left:.8mm solid #0043FD;border-radius:1mm;padding:.8mm 1.2mm;margin-bottom:1mm}
.plan.shot>*:not(.sheet){display:none!important}.plan.shot .sheet{display:block}.plan.shot .pg{margin:0 0 8px}
@media print{
  @page{size:A4;margin:0}
  html,body.plan{background:#fff!important}
  .plan>*:not(.sheet){display:none!important}
  .sheet{display:block!important}
  .sheet .pg{page-break-after:always;break-after:page;box-shadow:none}
  .sheet .pg:last-child{page-break-after:auto;break-after:auto}
}

.pg svg.dt{display:inline-block;width:2.4mm;height:2.4mm;margin-right:1.2mm;vertical-align:middle}
.pg .tile6{margin-bottom:4mm}
.pg .inplan{position:absolute;left:14mm;right:14mm;bottom:20mm}
.pg .inplan .rm2 div{font-size:7.5pt}
.pg .inplan .rm2 b{font-size:15pt;color:#0043FD;margin-bottom:1mm}
.pg .money2{background:linear-gradient(135deg,#fff7e3,#fff);border-color:#f0cf7a}
.pg .money2 b{display:block;font-family:var(--f-title);font-size:15pt;color:#b87d00;margin:1mm 0 2mm}
.pg .usar{background:linear-gradient(135deg,#f4f7ff,#fff);margin-top:4mm}

[data-tilt],[data-tilt].hot{transform:none!important}
[data-mag]{transform:none!important}
