/* Fluxo da assinatura: leitura rápida, catálogo progressivo e escopo isolado. */
#plan-details.workflow { margin-top:80px; padding-top:64px; scroll-margin-top:110px; border-top:1px solid #ffffff12; }
#plan-details .wf-heading { max-width:760px; margin:0 auto 36px; text-align:center; }
#plan-details .wf-eyebrow { display:inline-flex; align-items:center; gap:9px; color:#b4b4bf; font-size:11px; font-weight:600; letter-spacing:2px; text-transform:uppercase; }
#plan-details .wf-eyebrow::before { content:""; width:6px; height:6px; border-radius:50%; background:var(--primary-soft,#ff3b45); box-shadow:0 0 12px #ff3b4560; }
#plan-details .wf-heading h3 { margin:20px 0 14px; font-size:clamp(1.9rem,3.7vw,2.65rem); font-weight:750; line-height:1.1; letter-spacing:-1.2px; color:#f5f5f7; text-wrap:balance; }
#plan-details .wf-heading p { margin:0; color:var(--text-muted,#a1a1aa); font-size:1rem; line-height:1.7; }
#plan-details .wf-flow { border:1px solid #ffffff18; border-radius:26px; background:linear-gradient(135deg,#ffffff08,#ffffff02); box-shadow:inset 0 1px 0 #ffffff08,0 20px 50px #0003; overflow:hidden; }
#plan-details .wf-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px; list-style:none; margin:0; padding:34px; }
#plan-details .wf-step { position:relative; min-width:0; }
#plan-details .wf-step:not(:last-child)::after { content:""; position:absolute; top:16px; right:-28px; width:9px; height:9px; border-top:1px solid #ffffff40; border-right:1px solid #ffffff40; transform:rotate(45deg); }
#plan-details .wf-step-meta { display:flex; align-items:center; gap:12px; margin-bottom:26px; }
#plan-details .wf-number { display:grid; place-items:center; flex-shrink:0; width:42px; height:42px; border:1px solid #ffffff24; border-radius:50%; color:#c8c8d2; font-size:12px; font-weight:600; background:#111115; }
#plan-details .wf-owner { color:#94949f; font-size:11px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; }
#plan-details .wf-production .wf-number { background:linear-gradient(135deg,#ed1422,#ae0711); border-color:#ff3b4550; color:#fff; box-shadow:0 0 24px #d808122b; }
#plan-details .wf-production .wf-owner { color:var(--primary-soft,#ff3b45); }
#plan-details .wf-step h4 { margin:0 0 12px; font-size:1.35rem; font-weight:650; letter-spacing:-.5px; line-height:1.2; color:#f5f5f7; }
#plan-details .wf-step p { margin:0; font-size:1rem; color:var(--text-muted,#a1a1aa); line-height:1.65; }
#plan-details .wf-repeat { display:flex; align-items:center; justify-content:center; gap:12px; padding:16px 24px; border-top:1px solid #ffffff0d; background:#0002; }
#plan-details .wf-repeat>span { font-size:25px; line-height:1; color:var(--primary-soft,#ff3b45); }
#plan-details .wf-repeat p { margin:0; color:#9898a4; font-size:14px; line-height:1.5; }
#plan-details .wf-repeat strong { font-weight:500; color:#dedee6; }
#plan-details .wf-rules { display:grid; grid-template-columns:1fr 1fr; gap:36px; margin:0; padding:28px 4px; border-bottom:1px solid #ffffff12; }
#plan-details .wf-rules>div { min-width:0; }
#plan-details .wf-rules>div+div { padding-left:36px; border-left:1px solid #ffffff12; }
#plan-details .wf-rules dt { color:#f0f0f5; font-size:14px; font-weight:600; margin-bottom:10px; }
#plan-details .wf-rules dd { margin:0; font-size:15px; line-height:1.7; color:#a1a1ad; }
#plan-details .wf-rules strong { font-weight:500; color:#eeeef3; }
#plan-details .wf-rules dd>span { margin:0 6px; color:#53535e; }
#plan-details .wf-rules small { display:block; margin-top:6px; color:#82828f; font-size:13px; line-height:1.6; }
#plan-details .wf-plans-heading { display:flex; justify-content:space-between; align-items:baseline; gap:20px; margin:38px 0 22px; }
#plan-details .wf-plans-heading h4 { font-size:1.35rem; font-weight:600; letter-spacing:-.5px; color:#f1f1f5; }
#plan-details .wf-plans-heading p { color:#9999a5; font-size:14px; line-height:1.6; margin:0; }
#plan-details .wf-plans { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr); gap:20px; align-items:start; }
#plan-details .wf-plan { padding:28px; border:1px solid #ffffff16; border-radius:22px; background:linear-gradient(150deg,#ffffff07,#ffffff02); min-width:0; }
#plan-details .wf-scale { border-color:#ff3b452d; background:radial-gradient(ellipse at 100% 0,#d8081210,transparent 70%),linear-gradient(150deg,#ffffff07,#ffffff02); }
#plan-details .wf-plan-header { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:14px; }
#plan-details .wf-plan-header h5 { margin:0; font-size:1.6rem; font-weight:700; letter-spacing:-.6px; line-height:1.2; color:#f5f5f7; }
#plan-details .wf-plan-header>span { font-size:10px; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:#a2a2af; border:1px solid #ffffff1f; padding:6px 9px; border-radius:7px; }
#plan-details .wf-scale .wf-plan-header>span { color:#ff727b; border-color:#ff3b452c; background:#d8081210; }
#plan-details .wf-plan-intro { font-size:14px; line-height:1.7; color:#a1a1ad; margin:0 0 20px; }
#plan-details .wf-bundle { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:22px 0 24px; border-top:1px solid #ffffff0e; border-bottom:1px solid #ffffff0e; }
#plan-details .wf-bundle>div { display:flex; align-items:center; gap:12px; }
#plan-details .wf-bundle strong { color:#f4f4f7; font-size:3rem; font-weight:600; line-height:1; letter-spacing:-2px; }
#plan-details .wf-bundle>div>span { font-size:14px; line-height:1.45; color:#b5b5c0; }
#plan-details .wf-plus { font-size:23px; color:var(--primary-soft,#ff3b45); font-weight:400; }
#plan-details .wf-starter-note { margin:20px 0 0; font-size:14px; line-height:1.7; color:#91919e; }
#plan-details .wf-catalog { border-top:1px solid #ffffff15; }
#plan-details .wf-catalog summary { display:flex; align-items:center; gap:12px; list-style:none; padding:18px 0; cursor:pointer; min-height:60px; }
#plan-details .wf-catalog summary::-webkit-details-marker { display:none; }
#plan-details .wf-catalog summary>span:first-child { font-size:15px; font-weight:500; color:#e4e4ec; }
#plan-details .wf-catalog summary>small { margin-left:auto; color:#8a8a97; font-size:12px; white-space:nowrap; }
#plan-details .wf-expand { display:grid; place-items:center; font-size:22px; font-weight:400; width:20px; height:20px; flex-shrink:0; color:#b0b0bc; transition:transform .2s; }
#plan-details .wf-catalog[open] .wf-expand { transform:rotate(45deg); color:var(--primary-soft,#ff3b45); }
#plan-details .wf-catalog summary:focus-visible { outline:2px solid var(--primary-soft,#ff3b45); outline-offset:4px; border-radius:4px; }
#plan-details .wf-catalog ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 24px; list-style:disc; margin:0; padding:2px 0 24px 17px; }
#plan-details .wf-catalog li { font-size:14px; line-height:1.6; color:#c2c2ce; padding-left:1px; }
#plan-details .wf-catalog li::marker { color:#a3424a; font-size:9px; }
#plan-details .wf-catalog li small { display:block; font-size:12px; color:#898996; margin-top:2px; }
#plan-details .wf-plan-note { border-top:1px solid #ffffff15; padding-top:16px; margin:0; color:#92929e; font-size:13px; line-height:1.7; }
#plan-details .wf-plan-note strong { color:#ceced8; font-weight:500; }
@media(max-width:1000px) {
    #plan-details .wf-steps { gap:30px; padding:28px; }
    #plan-details .wf-step:not(:last-child)::after { right:-18px; }
    #plan-details .wf-step h4 { font-size:1.2rem; }
    #plan-details .wf-plans { grid-template-columns:1fr 1.25fr; gap:16px; }
    #plan-details .wf-plan { padding:22px; }
    #plan-details .wf-bundle>div { flex-direction:column; align-items:flex-start; gap:8px; }
    #plan-details .wf-catalog ul { grid-template-columns:1fr; }
    #plan-details .wf-catalog summary { flex-wrap:wrap; column-gap:10px; row-gap:5px; }
    #plan-details .wf-catalog summary>small { order:3; width:100%; margin:0; }
    #plan-details .wf-expand { margin-left:auto; }
}
@media(max-width:700px) {
    #plan-details.workflow { margin-top:56px; padding-top:44px; }
    #plan-details .wf-heading { text-align:left; margin-bottom:26px; }
    #plan-details .wf-heading h3 { font-size:1.9rem; letter-spacing:-.9px; line-height:1.15; }
    #plan-details .wf-heading p { font-size:15px; max-width:340px; }
    #plan-details .wf-eyebrow { font-size:10px; letter-spacing:1.5px; }
    #plan-details .wf-flow { border-radius:20px; }
    #plan-details .wf-steps { grid-template-columns:1fr; gap:30px; padding:24px; }
    #plan-details .wf-step-meta { margin-bottom:4px; }
    #plan-details .wf-step h4 { margin-left:54px; margin-bottom:10px; font-size:1.2rem; }
    #plan-details .wf-step p { margin-left:54px; font-size:15px; line-height:1.65; }
    #plan-details .wf-step:not(:last-child)::after { left:20px; right:auto; top:53px; bottom:-18px; width:1px; height:auto; border:0; transform:none; background:linear-gradient(#ffffff24,#ffffff0a); }
    #plan-details .wf-repeat { justify-content:flex-start; padding:16px 22px; gap:10px; }
    #plan-details .wf-repeat p { font-size:13px; }
    #plan-details .wf-rules { grid-template-columns:1fr; gap:20px; padding:24px 2px; }
    #plan-details .wf-rules>div+div { padding:20px 0 0; border-left:0; border-top:1px solid #ffffff0e; }
    #plan-details .wf-plans-heading { display:block; margin-top:28px; }
    #plan-details .wf-plans-heading p { margin-top:8px; }
    #plan-details .wf-plans { grid-template-columns:1fr; gap:16px; }
    #plan-details .wf-plan { padding:24px; border-radius:18px; }
    #plan-details .wf-bundle { justify-content:flex-start; gap:22px; }
    #plan-details .wf-bundle>div { flex-direction:row; align-items:center; gap:12px; }
    #plan-details .wf-bundle strong { font-size:2.6rem; }
    #plan-details .wf-catalog summary>small { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { #plan-details .wf-expand { transition:none; } }
