/* === PRODUTO === */
.pw{max-width:1060px;margin:0 auto;padding:82px 20px 60px}
.pgrid{display:grid;grid-template-columns:380px 1fr;gap:var(--product-gap,36px);align-items:start;margin-bottom:48px}
.psticky{position:sticky;top:76px}
.pimg-hero{height:var(--img-h,280px);display:flex;align-items:center;justify-content:center;border-radius:var(--rad);overflow:hidden}
.pimg-hero img{width:110px;height:110px;object-fit:contain}
.pseals{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.pseal{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--mt);background:var(--s1);border:var(--card-border);border-radius:var(--rad-sm);padding:8px 10px}
.pcat-tag{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--rad-pill);font-size:11px;font-weight:700;background:rgba(var(--ac-rgb),.08);color:var(--ac);border:1px solid rgba(var(--ac-rgb),.15);margin-right:6px}
.pname{font-size:28px;font-weight:800;letter-spacing:-.6px;line-height:1.1;margin:10px 0 12px}
.pstars-ico{color:var(--yw);font-size:15px;letter-spacing:1px}
.pdesc-box{font-size:14px;color:var(--mt);line-height:1.7;padding:14px 16px;background:var(--s2);border-radius:var(--rad-sm);border:var(--card-border);margin-bottom:20px}
.pprice{font-size:38px;font-weight:800;letter-spacing:-1px;margin-bottom:4px;color:var(--ac)}
.pprice-sub{font-size:12px;color:var(--dm);margin-bottom:20px}
.pbuy{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border-radius:var(--rad-btn);background:var(--ac);color:var(--btn-tx,#fff);font-weight:700;font-size:15px;cursor:pointer;border:none;text-decoration:none;transition:all .15s;font-family:inherit;margin-bottom:10px}
.pbuy:hover{filter:brightness(1.08);transform:translateY(-1px)}
.pcart{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border-radius:var(--rad-btn);background:var(--s2);color:var(--tx);font-weight:600;font-size:14px;cursor:pointer;border:var(--inp-border);text-decoration:none;transition:all .15s;font-family:inherit;margin-bottom:10px}
.pcart:hover{border-color:var(--ac);color:var(--ac)}
.pcart.added{background:rgba(34,197,94,.06);border-color:rgba(34,197,94,.3);color:#16a34a}
.rev-wrap{background:var(--s1);border:var(--card-border);border-radius:var(--rad);padding:20px;margin-bottom:20px;display:flex;align-items:center;gap:28px}
.rev-big{font-size:52px;font-weight:800;letter-spacing:-2px;line-height:1;color:var(--tx);text-align:center}
.rcard{padding:16px;background:var(--s1);border:var(--card-border);border-radius:var(--rad-sm);margin-bottom:10px}
.rtext{font-size:13px;color:var(--mt);line-height:1.6}
.rlink{background:var(--s1);border:var(--card-border);border-radius:var(--rad-sm);overflow:hidden;text-decoration:none;color:inherit;display:block;transition:all .15s}
.rlink:hover{border-color:var(--ac);box-shadow:var(--card-shadow)}
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:14px}
@media(max-width:780px){.pgrid{grid-template-columns:1fr!important}.psticky{position:static!important}.pimg-hero{height:200px}}

/* === CHECKOUT === */
.co{max-width:1000px;margin:82px auto 60px;padding:0 20px;display:grid;grid-template-columns:1fr 360px;gap:24px;align-items:start}
.pi{height:90px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pi img{width:44px;height:44px;object-fit:contain}
.pinfo{padding:14px 18px;display:flex;justify-content:space-between;align-items:center}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.bumpdiv{background:var(--s2);border:1.5px solid var(--ac);border-radius:var(--rad);padding:18px;margin-bottom:14px;position:relative}
.summ{background:var(--s1);border:var(--card-border);border-radius:var(--rad);padding:24px;position:sticky;top:76px;box-shadow:var(--card-shadow)}
.srow{display:flex;justify-content:space-between;font-size:13px;padding:8px 0;border-bottom:1px solid var(--bd);color:var(--mt)}
.stot{display:flex;justify-content:space-between;font-size:18px;font-weight:800;padding:14px 0 16px;color:var(--tx)}
.errbox{background:rgba(220,38,38,.06);border:1px solid rgba(220,38,38,.2);border-radius:var(--rad-sm);padding:12px 16px;margin-bottom:16px;font-size:13px;color:#dc2626}
@media(max-width:800px){.co{grid-template-columns:1fr!important}.fr{grid-template-columns:1fr}.summ{position:static}}

/* === LOGIN === */
.lcard{background:var(--s1);border:var(--card-border);border-radius:var(--rad);padding:40px;width:100%;max-width:400px;box-shadow:var(--card-shadow)}
.logo{font-size:20px;font-weight:800;letter-spacing:-.5px;text-align:center;margin-bottom:28px}
.logo span{color:var(--ac)}
.tabs{display:flex;background:var(--s2);border-radius:var(--rad-sm);padding:3px;gap:3px;margin-bottom:24px}
.tab{flex:1;padding:8px;border-radius:var(--rad-sm);font-size:13px;font-weight:600;color:var(--mt);text-align:center;transition:all .15s;text-decoration:none;display:block}
.tab.on{background:var(--s1);color:var(--tx);box-shadow:var(--card-shadow)}
.foot{text-align:center;margin-top:16px;font-size:13px;color:var(--mt)}
.foot a{color:var(--ac);font-weight:600;text-decoration:none}
.err{background:rgba(220,38,38,.06);border:1px solid rgba(220,38,38,.2);border-radius:var(--rad-sm);padding:10px 14px;font-size:13px;color:#dc2626;margin-bottom:16px}

/* === PAGAMENTO === */
.hd{background:var(--s1);border:var(--card-border);border-radius:var(--rad-sm);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.qr{width:210px;height:210px;margin:0 auto 18px;border-radius:var(--rad-sm);background:#fff;padding:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.code{background:var(--s2);border:var(--card-border);border-radius:var(--rad-sm);padding:10px 14px;font-size:11px;color:var(--mt);word-break:break-all;margin-bottom:10px;max-height:80px;overflow-y:auto;line-height:1.55;user-select:all}
.cpbtn{width:100%;padding:11px;border-radius:var(--rad-sm);background:var(--s3);border:var(--inp-border);color:var(--tx);font-family:inherit;font-weight:600;font-size:13px;cursor:pointer;margin-bottom:14px}
.tmr{background:rgba(22,163,74,.05);border:1px solid rgba(22,163,74,.15);border-radius:var(--rad-sm);padding:11px 18px;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.info{background:rgba(var(--ac-rgb),.05);border:1px solid rgba(var(--ac-rgb),.12);border-radius:var(--rad-sm);padding:12px 16px;font-size:12px;color:var(--ac);line-height:1.6}
.sn{width:22px;height:22px;border-radius:50%;background:var(--s3);color:var(--tx);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sni{width:22px;height:22px;border-radius:50%;background:var(--ac);color:var(--btn-tx,#fff);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}

/* === DASHBOARD === */
.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:24px}
.st{background:var(--s1);border:var(--card-border);border-radius:var(--rad);padding:18px 20px}
.stl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--dm);margin-bottom:6px}
.stv{font-size:24px;font-weight:800;letter-spacing:-.5px;color:var(--ac)}
.g2{display:grid;grid-template-columns:1fr 280px;gap:16px;align-items:start}
.ql{display:block;padding:10px 14px;border-radius:var(--rad-sm);background:var(--s2);border:var(--card-border);font-size:13px;font-weight:500;color:var(--tx);margin-bottom:6px;text-decoration:none}
.ql:hover{border-color:var(--ac);color:var(--ac)}
@media(max-width:800px){.g2{grid-template-columns:1fr}}
