:root{--bg:#120914;--bg2:#1e0f22;--rose:#d8a58e;--rose2:#f0cdb8;--ink:#f4e9e2;--mut:#a38b95;--line:#4a2c48;--card:#ffffff0a;--ok:#7fe0a0;--err:#ff8f8f}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%}
html,body{min-height:100%;background:var(--bg)}
body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);line-height:1.5;
 background:radial-gradient(120% 60% at 50% 0%,#2b1230 0%,var(--bg) 60%) fixed;overflow-x:hidden}
.serif{font-family:'Lora',Georgia,serif}
#bg{position:fixed;left:0;top:0;width:100%;height:100%;z-index:0;pointer-events:none;transform:translateZ(0);will-change:transform}
a{color:var(--rose2)}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
input,textarea,select{font:inherit;color:inherit}
.wrap{position:relative;z-index:1;max-width:480px;margin:0 auto;padding:0 20px}
.small{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--mut)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 28px;border-radius:30px;
 background:var(--rose);color:#3a1d28;font-weight:600;font-size:14px;letter-spacing:.12em;text-transform:uppercase;transition:transform .2s,opacity .3s,filter .3s;text-decoration:none}
.btn:active{transform:scale(.97)}
.btn[disabled]{opacity:.5;pointer-events:none}
.btn.ghost{background:transparent;border:1px solid var(--rose);color:var(--rose2)}
.btn.sm{min-height:40px;padding:0 18px;font-size:12px}
.btn.wa{background:#25d366;color:#07351a}
h1,h2,h3{font-family:'Lora',Georgia,serif;font-weight:400}
.toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%,20px);background:#2a1530;border:1px solid var(--rose);color:var(--ink);
 padding:10px 18px;border-radius:24px;font-size:13px;opacity:0;pointer-events:none;transition:all .4s;z-index:50;max-width:90vw;text-align:center}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* ---------- Página de venda ---------- */
.hero{padding:64px 0 36px;text-align:center}
.hero .seal{width:76px;height:76px;margin:0 auto 26px;border-radius:50%;display:grid;place-items:center;font:italic 34px 'Lora',serif;color:#4a2418;
 background:radial-gradient(circle at 35% 30%,#e8bba3,#a8705a 70%);box-shadow:0 10px 30px -6px #000,0 0 50px -8px #d8a58e66;animation:float 5s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-6px)}}
.hero h1{font-size:clamp(30px,8.4vw,40px);line-height:1.15;margin-bottom:16px}
.hero h1 em{color:var(--rose2)}
.hero p{color:var(--mut);font-size:15.5px;max-width:380px;margin:0 auto 28px}
.hero .cta-row{display:flex;flex-direction:column;gap:12px;align-items:center}
.price{margin-top:14px;font-size:13px;color:var(--mut)}
.price b{color:var(--rose2);font-size:15px}
.steps{display:grid;gap:14px;margin:28px 0}
.step-card{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:18px;display:flex;gap:14px;align-items:flex-start;backdrop-filter:blur(6px)}
.step-card i{font:italic 26px 'Lora',serif;color:var(--rose);width:22px;flex:none;line-height:1.1}
.step-card b{display:block;font-weight:500;margin-bottom:2px}
.step-card span{font-size:13.5px;color:var(--mut)}
.foot{padding:40px 0 60px;text-align:center;font-size:12px;color:var(--mut)}
.foot a{color:var(--mut)}

/* ---------- Painel ---------- */
.ed-top{position:sticky;top:0;z-index:20;background:linear-gradient(#120914f2,#120914cc);backdrop-filter:blur(10px);padding:calc(env(safe-area-inset-top) + 12px) 20px 10px;border-bottom:1px solid #ffffff10}
.ed-top .in{max-width:480px;margin:0 auto}
.dots{display:flex;gap:6px;margin-bottom:8px}
.dots i{height:3px;flex:1;border-radius:2px;background:#3a2340;transition:background .5s;cursor:pointer}
.dots i.on{background:var(--rose)}
.ed-meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.22em;color:var(--mut)}
.saved{font-size:11px;letter-spacing:.06em;color:var(--mut);transition:color .3s}
.saved.ok{color:var(--ok)}
.ed-body{padding:22px 22px 150px}
.ed-body h1{font-size:28px;line-height:1.2;font-style:italic;margin-bottom:6px}
.ed-body .sub{font-size:13.5px;color:var(--mut);margin-bottom:22px}
.f{margin-bottom:16px}
.f label{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:7px}
.f .hint{font-size:12px;color:var(--mut);margin-top:6px}
.inp{width:100%;min-height:50px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:13px 14px;font-size:16px;outline:none;transition:border-color .3s,box-shadow .3s;appearance:none}
.inp:focus{border-color:var(--rose);box-shadow:0 0 0 3px #d8a58e22}
textarea.inp{resize:vertical;line-height:1.55}
input[type=date].inp{color-scheme:dark}
.row{display:flex;gap:10px}.row>*{flex:1;min-width:0}
.sealrow{display:flex;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.sl{width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e8bba3,#a8705a 70%);display:grid;place-items:center;font:italic 21px 'Lora',serif;color:#4a2418;box-shadow:0 4px 10px #0007;flex:none}
.sealrow b{display:block;font-size:13.5px;font-weight:500}.sealrow small{font-size:12px;color:var(--mut)}
.ed-cta{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:12px 20px calc(env(safe-area-inset-bottom) + 14px);background:linear-gradient(transparent,#120914 38%)}
.ed-cta .in{max-width:480px;margin:0 auto;display:flex;gap:10px}
.ed-cta .btn{flex:1}.ed-cta .btn.ghost{flex:0 0 auto;padding:0 20px}
.res{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--card);margin-top:12px}
.res .sq{width:50px;height:50px;border-radius:8px;background:linear-gradient(135deg,#355c3c,#1ed760);flex:none}
.res b{display:block;font:500 15px 'Lora',serif}.res small{color:var(--mut);font-size:12px}
.cover{position:relative;aspect-ratio:4/3;border-radius:14px;background:var(--card) center/cover;border:1px dashed var(--line);display:grid;place-items:center;overflow:hidden;cursor:pointer}
.cover span{font-size:13px;color:var(--mut);text-align:center;padding:0 20px}
.cover.has{border-style:solid}
.cover .chg{position:absolute;right:10px;bottom:10px;background:#120914bb;border:1px solid var(--rose);border-radius:20px;padding:6px 12px;font-size:11px;letter-spacing:.1em}
.mr{display:flex;gap:12px;border:1px solid var(--line);border-radius:14px;padding:10px;background:var(--card);margin-bottom:12px}
.th{width:84px;height:84px;border-radius:10px;flex:none;background:#ffffff0d center/cover;display:grid;place-items:center;border:1px dashed var(--line);font-size:26px;color:var(--mut);cursor:pointer;position:relative;overflow:hidden}
.th.has{border-style:solid}
.th .spin{position:absolute;inset:0;display:grid;place-items:center;background:#120914aa}
.mr .c{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.mr .inp{min-height:40px;padding:8px 10px;font-size:15px;border-radius:9px}
.mr .tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.tool{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:14px;color:var(--mut)}
.tool.fav.on{color:#f0c36a;border-color:#f0c36a;background:#f0c36a14}
.tool.del{margin-left:auto}
.favtag{font-size:11px;color:#f0c36a}
.five .inp{margin-bottom:8px;min-height:46px}
.aud{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:10px 14px;background:var(--card)}
.rec{width:44px;height:44px;border-radius:50%;background:#e5484d;display:grid;place-items:center;flex:none;transition:transform .2s,background .3s}
.rec i{width:14px;height:14px;border-radius:50%;background:#fff;transition:all .25s}
.rec.on{background:var(--rose)}.rec.on i{border-radius:3px;background:#3a1d28}
.wv{display:flex;gap:3px;align-items:center;height:30px;flex:1;overflow:hidden}
.wv b{width:3px;height:6px;border-radius:2px;background:var(--rose);opacity:.35}
.wv.go b{animation:w2 .6s ease-in-out infinite alternate;opacity:1}
@keyframes w2{to{height:26px}}
.atm{font-size:12px;color:var(--mut);font-variant-numeric:tabular-nums;min-width:34px;text-align:right}
.audio-actions{display:flex;gap:10px;margin-top:10px;align-items:center;flex-wrap:wrap}
.linkbtn{font-size:12.5px;color:var(--rose2);text-decoration:underline;text-underline-offset:3px}
audio{width:100%;margin-top:10px;height:40px}
.plan{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.plan .chk{width:28px;height:28px;border-radius:8px;border:1px solid var(--line);display:grid;place-items:center;flex:none;font-size:14px;color:transparent;background:var(--card)}
.plan .chk.on{background:var(--rose);color:#3a1d28;border-color:var(--rose)}
.plan .inp{min-height:44px;flex:1}
.plan .x{width:34px;height:34px;color:var(--mut);font-size:18px}
.check{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid #ffffff10;font-size:14px}
.check i{font-style:normal;width:20px;flex:none}
.check.ok i{color:var(--ok)}.check.no i{color:#f0c36a}
.check small{display:block;color:var(--mut);font-size:12px}
.pay-box{margin-top:18px;border:1px solid var(--rose);border-radius:18px;padding:20px;text-align:center;background:#d8a58e0d}
.qr{width:236px;height:236px;margin:14px auto;border-radius:14px;background:#fff;padding:10px;display:block}
.qr canvas{width:100%;height:100%;display:block;image-rendering:pixelated}
.amount{font:500 26px 'Lora',serif;color:var(--rose2)}
.copybox{display:flex;gap:8px;margin-top:10px}
.copybox input{flex:1;min-width:0;font-size:12px;padding:0 12px;min-height:46px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.status{margin-top:14px;display:inline-flex;gap:8px;align-items:center;font-size:13px;color:var(--mut)}
.pulse{width:9px;height:9px;border-radius:50%;background:#f0c36a;animation:pls 1.4s ease-in-out infinite}
@keyframes pls{50%{opacity:.25;transform:scale(.8)}}
.mock{margin-top:14px;border:1px dashed #f0c36a88;border-radius:12px;padding:12px;font-size:12.5px;color:#f0c36a;background:#f0c36a0f}
.mock .btn{margin-top:8px}
.done{text-align:center;padding:10px 0}
.done .big{font:italic 30px 'Lora',serif;margin:6px 0 10px}
.linkline{margin:14px 0 6px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--card);font-size:13px;word-break:break-all;color:var(--rose2)}
.answer-box{margin-top:22px;border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--card);font-size:14px}
.answer-box.yes{border-color:var(--ok);background:#7fe0a012}
.notice{border:1px solid #f0c36a66;background:#f0c36a10;color:#f0d9a0;border-radius:12px;padding:12px 14px;font-size:13px;margin-bottom:18px}
.err{color:var(--err);font-size:13px;margin-top:8px}
.top-live{background:#7fe0a014;border:1px solid #7fe0a066;border-radius:12px;padding:10px 14px;margin-bottom:16px;font-size:13px}

.lbl{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-bottom:10px}
.opts{display:grid;gap:12px}
.opt{display:flex;gap:14px;align-items:flex-start;text-align:left;width:100%;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink);transition:border-color .2s,background .2s}
.opt.on{border-color:var(--rose);background:#d8a58e14;box-shadow:0 0 0 1px var(--rose) inset}
.opt .rd{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--mut);flex:none;margin-top:3px;position:relative}
.opt.on .rd{border-color:var(--rose)}.opt.on .rd::after{content:'';position:absolute;inset:4px;border-radius:50%;background:var(--rose)}
.opt .ot{flex:1;min-width:0}
.opt .on1{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:16px}
.opt .tag{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:99px;background:var(--rose);color:#3a1d28;font-weight:600}
.opt .od{font-size:12.5px;color:var(--mut);margin-top:4px;line-height:1.35}
.opt .op{font:500 20px 'Lora',serif;color:var(--rose2);white-space:nowrap}
.planinfo{margin:0 0 10px;font-size:13px;color:var(--rose2)}

.upsell{margin:0 0 22px;padding:16px;border:1px solid var(--rose);border-radius:16px;background:#d8a58e12;text-align:center}
.upsell .ut{font:500 20px 'Lora',serif;color:var(--rose2)}
.upsell .us{font-size:13px;color:var(--mut);margin-top:6px;line-height:1.4}
.upsell.exp{border-color:#f0c36a88;background:#f0c36a0f}
.upsell .pay-box{margin-top:14px}

/* login / lista de cartas */
.cartarow{display:block;width:100%;text-align:left;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px 16px;margin-top:10px;color:inherit;font:inherit;cursor:pointer}
.cartarow:active{background:rgba(255,255,255,.09)}
.cartarow .cn{display:block;font-weight:600;font-size:16px}
.cartarow .cs{display:inline-block;font-size:12px;margin-top:4px;padding:2px 9px;border-radius:99px;background:rgba(255,255,255,.08)}
.cartarow .cs.ok{background:rgba(120,200,150,.18);color:#9fe0b5}
.cartarow .cs.exp{background:rgba(220,120,120,.18);color:#f0a3a3}
.cartarow .cs.wait{background:rgba(220,190,120,.15);color:#e7cf93}
.cartarow .cd{display:block;font-size:12px;color:var(--mut);margin-top:6px}

.toplink:hover{color:#fff}
.mini{margin-top:26px;font-size:13px;color:var(--mut);text-align:center}
.mini a,.mini button{color:inherit}

/* topo com "Entrar no meu login" */
.topbar{position:relative;z-index:5;max-width:480px;margin:0 auto;padding:calc(env(safe-area-inset-top) + 14px) 22px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.loginpill{font-size:13px;font-weight:500;color:#f3d9cd;text-decoration:none;border:1px solid #d9a68f;border-radius:99px;padding:8px 15px;background:#ffffff0a;white-space:nowrap}
.tbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.tbar .loginpill{padding:6px 12px;font-size:12px}
/* preços no fim da página */
.pricing{text-align:center;padding:48px 0 8px}
.pricing h2{font-family:'Lora',serif;font-weight:400;font-size:24px;line-height:1.3;margin:8px 0 22px}
.plans{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}
.pcard{position:relative;display:flex;flex-direction:column;gap:6px;padding:20px 12px 18px;border:1px solid #ffffff1f;border-radius:18px;background:#ffffff08}
.pcard.best{border-color:#d9a68f;background:#d9a68f14}
.pcard i{position:absolute;top:-10px;left:50%;transform:translateX(-50%);font-style:normal;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;background:#d9a68f;color:#3a1c18;border-radius:99px;padding:3px 10px;white-space:nowrap}
.pcard b{font-weight:500;font-size:14px;color:var(--mut)}
.pcard .pv{font-family:'Lora',serif;font-size:28px;color:#f3d9cd}
.pcard .pd{font-size:12.5px;color:var(--mut);line-height:1.4}

/* dúvidas frequentes */
.faq{margin-top:34px}
.faq .lbl{text-align:center;margin-bottom:12px}
.fq{border:1px solid #ffffff1c;background:#ffffff08;border-radius:16px;margin-bottom:10px;overflow:hidden}
.fq summary{list-style:none;cursor:pointer;padding:16px 46px 16px 16px;font-size:15px;position:relative;line-height:1.35}
.fq summary::-webkit-details-marker{display:none}
.fq summary::after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:2px solid var(--mut);border-bottom:2px solid var(--mut);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.fq[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.fq p{padding:0 16px 16px;font-size:14px;line-height:1.6;color:var(--mut)}
.ansmsg{margin-top:10px;font:italic 16px/1.5 'Lora',serif;color:var(--ink);white-space:pre-wrap;word-break:break-word}

.coverbox{margin-top:6px}
.chead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.chead .lab{display:block;margin:0;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);line-height:1.5}
.cbadge{font-size:11px;letter-spacing:.08em;border-radius:20px;padding:5px 11px;white-space:nowrap}
.cbadge.todo{background:#f2b27a22;border:1px solid #f2b27a;color:#f6c79a}
.cbadge.ok{background:#8fd4a022;border:1px solid #8fd4a0;color:#b4e5c0}
.cover.need{border:1.5px dashed var(--rose);background:linear-gradient(160deg,#2a1530,#1a0f20);animation:needp 2.4s ease-in-out infinite}
@keyframes needp{50%{box-shadow:0 0 0 4px #e3b09b22}}
@media (prefers-reduced-motion:reduce){.cover.need{animation:none}}
.cover .cta{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 24px;text-align:center}
.cover .cam{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#e3b09b1f;border:1px solid var(--rose);color:var(--rose)}
.cover .cta b{font-size:18px;font-weight:600;color:#fff4f0}
.cover .cta small{font-size:13px;color:var(--mut);line-height:1.4}
.cover .pickbtn{margin-top:6px;background:var(--rose);color:#2c0828;border-radius:24px;padding:11px 20px;font-size:13px;font-weight:600;letter-spacing:.06em}

.pvbox{margin-top:6px;border:1px dashed var(--line);border-radius:16px;padding:16px;background:#ffffff06;text-align:center}
.pvbox small{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:12px}
.pvq{font:italic 500 19px/1.35 'Lora',serif;color:#fff4f0;margin-bottom:14px}
.pvb{display:inline-block;background:var(--rose);color:#2c0828;border-radius:30px;padding:12px 26px;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.pvb.wide{padding:12px 20px}
