@font-face{font-family:CP;src:url(/static/fonts/ctrlpaper-800.woff2) format('woff2');font-display:swap}
@font-face{font-family:J;src:url(/static/fonts/plus-jakarta-sans-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:J;src:url(/static/fonts/plus-jakarta-sans-latin-700-normal.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:J;src:url(/static/fonts/plus-jakarta-sans-latin-800-normal.woff2) format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:MONO;src:url(/static/fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2');font-display:swap}
@font-face{font-family:Hand;src:url(/static/fonts/caveat-latin-700-normal.woff2) format('woff2');font-display:swap}
:root{--paper:#EFE6D3;--card:#FFF8EC;--card2:#F7EEDC;--ink:#2A2430;--ink2:#5E5566;--line:#E2D6BF;--purple:#6A4C9C;--purple-soft:#E7DEF3;
  --yellow:#F3D774;--red:#C9483B;--red-soft:#F6DCD6;--green:#2F7D4F;--green-soft:#D9EEDC;--amber:#B87412;--amber-soft:#F8E8C6;
  --shadow:0 1px 0 rgba(42,36,48,.06),0 6px 18px -10px rgba(42,36,48,.35)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#1C1922;--card:#26222D;--card2:#2D2935;--ink:#F3ECDF;--ink2:#B9AFC2;--line:#3A3444;
  --purple:#A88AE0;--purple-soft:#3A2F52;--yellow:#E9C95A;--red:#EE7D6F;--red-soft:#4A2723;--green:#6CC98F;--green-soft:#21402D;--amber:#E7A94A;--amber-soft:#463516;
  --shadow:0 1px 0 rgba(0,0,0,.3),0 8px 20px -12px rgba(0,0,0,.7)}}
:root[data-theme="dark"]{--paper:#1C1922;--card:#26222D;--card2:#2D2935;--ink:#F3ECDF;--ink2:#B9AFC2;--line:#3A3444;--purple:#A88AE0;--purple-soft:#3A2F52;
  --yellow:#E9C95A;--red:#EE7D6F;--red-soft:#4A2723;--green:#6CC98F;--green-soft:#21402D;--amber:#E7A94A;--amber-soft:#463516}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--paper);color:var(--ink);font-family:J,system-ui,sans-serif;font-weight:500;font-size:16px;line-height:1.5;
  background-image:radial-gradient(rgba(106,76,156,.05) 1px,transparent 1px);background-size:14px 14px;min-height:100vh}
a{color:var(--purple)}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px 60px}
.narrow{max-width:620px}
.num{font-family:MONO,ui-monospace,monospace;font-variant-numeric:tabular-nums}
.top{background:var(--purple);color:#FFF8EC;padding:16px 0 30px;
  clip-path:polygon(0 0,100% 0,100% 86%,95% 92%,89% 86%,82% 93%,75% 87%,68% 94%,60% 88%,52% 94%,44% 87%,36% 93%,28% 88%,20% 94%,12% 88%,5% 93%,0 88%)}
.brand{display:flex;align-items:center;gap:10px}
.logo{width:38px;height:38px;border-radius:9px;background:#FFF8EC;color:#6A4C9C;font-family:CP;font-size:22px;display:grid;place-items:center;transform:rotate(-5deg);box-shadow:3px 3px 0 rgba(0,0,0,.18)}
.brand b{font-family:CP;font-size:22px;letter-spacing:.3px}
.brand .sp{margin-left:auto;display:flex;gap:8px;align-items:center}
.card{background:var(--card);border-radius:14px;box-shadow:var(--shadow);padding:18px;position:relative;
  clip-path:polygon(0 2px,3% 0,9% 2px,16% 0,24% 2px,33% 0,41% 2px,50% 0,58% 2px,67% 0,75% 2px,84% 0,92% 2px,100% 0,100% calc(100% - 2px),94% 100%,86% calc(100% - 2px),77% 100%,69% calc(100% - 2px),60% 100%,51% calc(100% - 2px),42% 100%,34% calc(100% - 2px),25% 100%,17% calc(100% - 2px),8% 100%,0 calc(100% - 2px))}
.tape{position:absolute;top:-2px;right:22px;width:70px;height:18px;background:var(--yellow);opacity:.85;transform:rotate(3deg)}
h1{font-family:CP;font-size:clamp(28px,6vw,44px);line-height:1.05;letter-spacing:.3px}
h2{font-family:CP;font-size:24px;margin:26px 0 10px}
h3{font-size:16px;font-weight:800;margin-bottom:8px}
.muted{color:var(--ink2);font-size:14px}
.hand{font-family:Hand;font-size:24px;color:var(--purple)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;background:var(--ink);color:var(--paper);
  font:inherit;font-weight:800;font-size:17px;padding:14px 20px;cursor:pointer;text-decoration:none;box-shadow:3px 3px 0 var(--purple)}
.btn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--purple)}
.btn:disabled{opacity:.55;cursor:wait;transform:none}
.btn.full{width:100%}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink);box-shadow:none;font-size:14px;padding:8px 12px}
.btn.sm{font-size:14px;padding:8px 12px}
.btn.danger{background:var(--red)}
label{display:block;font-weight:700;font-size:14px;margin:12px 0 5px}
input,textarea,select{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--card2);border:1.5px solid var(--line);border-radius:10px;padding:11px 12px}
input:focus,textarea:focus,select:focus{outline:2px solid var(--purple);border-color:transparent}
textarea{min-height:120px;resize:vertical}
.err{background:var(--red-soft);color:var(--red);border-radius:10px;padding:10px 12px;margin:10px 0;font-weight:700;font-size:14px}
.ok{background:var(--green-soft);color:var(--green);border-radius:10px;padding:10px 12px;margin:10px 0;font-weight:700;font-size:14px}
/* product page */
.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;margin-top:-6px;align-items:start}
@media (max-width:860px){.hero{grid-template-columns:1fr}}
.cover{width:100%;border-radius:12px;display:block;aspect-ratio:16/9;object-fit:cover;background:var(--card2)}
.price{display:flex;align-items:baseline;gap:10px;margin:8px 0 4px}
.price b{font-family:MONO;font-size:34px}
.price s{color:var(--ink2);font-family:MONO;font-size:18px}
.off{background:var(--green-soft);color:var(--green);font-weight:800;font-size:13px;border-radius:999px;padding:3px 9px}
.body p{margin:8px 0}
.body ul{margin:8px 0 8px 20px}
.body li{margin:4px 0}
.buy{position:sticky;top:12px}
.bump{border:2px dashed var(--purple);background:var(--purple-soft);border-radius:12px;padding:12px;margin:14px 0;display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.bump input{width:22px;height:22px;flex:0 0 auto;margin-top:2px;accent-color:var(--purple)}
.bump b{display:block}
.total{display:flex;justify-content:space-between;font-weight:800;margin:12px 0;font-size:17px}
.trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;font-size:12px;color:var(--ink2)}
.trust span{background:var(--card2);border-radius:999px;padding:4px 9px}
.foot{text-align:center;color:var(--ink2);font-size:13px;margin-top:40px}
.foot a{color:var(--ink2);margin:0 6px}
.files a{display:flex;justify-content:space-between;gap:10px;background:var(--card2);border-radius:10px;padding:12px;margin:8px 0;text-decoration:none;color:var(--ink);font-weight:700}
/* admin */
.nav{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 16px}
.nav a{border:1.5px solid var(--ink);border-radius:999px;padding:6px 12px;text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;background:var(--card)}
.nav a.on{background:var(--ink);color:var(--paper)}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
.chip{border:1.5px solid var(--ink);background:var(--card);color:var(--ink);border-radius:999px;padding:5px 11px;font-weight:700;font-size:13px;text-decoration:none}
.chip.on{background:var(--ink);color:var(--paper)}
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.kpi .k{font-size:12px;color:var(--ink2);font-weight:700;text-transform:uppercase;letter-spacing:.4px}
.kpi .v{font-family:MONO;font-size:24px;margin-top:4px}
.pos{color:var(--green)}.neg{color:var(--red)}
.tscroll{overflow-x:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{text-align:left;font-size:12px;color:var(--ink2);text-transform:uppercase;padding:8px;border-bottom:1.5px solid var(--line);white-space:nowrap}
.tbl td{padding:8px;border-bottom:1px dashed var(--line);white-space:nowrap}
.tbl tr.tot td{font-weight:800}
.pill{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:800}
.pill.paid,.pill.live{background:var(--green-soft);color:var(--green)}
.pill.created,.pill.draft{background:var(--amber-soft);color:var(--amber)}
.pill.failed,.pill.off,.pill.refunded{background:var(--red-soft);color:var(--red)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:700px){.grid2{grid-template-columns:1fr}}
.toast{position:fixed;right:16px;bottom:16px;background:var(--ink);color:var(--paper);padding:12px 16px;border-radius:12px;font-weight:800;box-shadow:var(--shadow);display:none;z-index:9}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:6px;animation:pulse 1.6s infinite}
@keyframes pulse{50%{opacity:.3}}
.body ul.ticks{list-style:none;margin-left:0}
/* v2: bump with image, lines, coupon, faq, store grid */
.bump{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start}
.bump .bimg{width:76px;height:76px;object-fit:cover;border-radius:10px;background:var(--card)}
.bump .bt{display:flex;flex-direction:column;gap:4px}
.bump .bp{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.bump .bp s{color:var(--ink2);font-size:13px}
.bump .tick{display:flex;gap:8px;align-items:center;font-weight:800;font-size:14px;margin-top:4px}
.bump .tick input{width:20px;height:20px;margin:0}
.line{display:flex;justify-content:space-between;font-size:14px;color:var(--ink2);margin-top:6px}
.coupon{margin-top:10px;font-size:14px}.coupon summary{cursor:pointer;color:var(--purple);font-weight:700}
.faq summary{cursor:pointer;font-weight:800}
.qchips{margin-top:10px}
.ads{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
a.prod{text-decoration:none;color:var(--ink)}
.drop{border:2px dashed var(--line);border-radius:12px;padding:14px;margin-top:8px}
.thumb{width:120px;height:68px;object-fit:cover;border-radius:8px;display:block;margin-top:6px;background:var(--card2)}
/* v3 conversion blocks */
.soldbadge{display:inline-block;margin-top:10px;background:var(--amber-soft);color:var(--amber);border-radius:999px;padding:5px 12px;font-weight:800;font-size:14px}
.vid{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:#000;display:block}
.proof{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
.proof .pf{flex:0 0 78%;max-width:320px;scroll-snap-align:start;margin:0}
.proof img{width:100%;border-radius:10px;display:block}
.proof blockquote{margin-top:8px;font-weight:700}
.proof figcaption{color:var(--ink2);font-size:13px;margin-top:4px}
.about{display:flex;gap:14px;align-items:flex-start}.about img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.deadline{background:var(--red-soft);color:var(--red);border-radius:10px;padding:8px 10px;font-weight:800;font-size:14px;margin:6px 0}
.stickybuy{display:none}
@media (max-width:860px){
  .stickybuy{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:8;align-items:center;justify-content:space-between;gap:10px;
    background:var(--card);padding:10px 16px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -6px 18px -8px rgba(0,0,0,.4);transition:transform .25s}
  .stickybuy.hide{transform:translateY(110%)}
  .stickybuy s{color:var(--ink2);font-size:13px}
  body{padding-bottom:70px}
}
.livetoast{position:fixed;left:16px;bottom:84px;z-index:9;background:var(--ink);color:var(--paper);border-radius:12px;padding:10px 14px;font-weight:700;font-size:14px;
  box-shadow:var(--shadow);opacity:0;transform:translateY(10px);transition:all .3s;pointer-events:none;max-width:calc(100% - 32px)}
.livetoast.on{opacity:1;transform:none}
@media (min-width:861px){.livetoast{bottom:16px}}
/* v4: clear bump, trust, marquee */
.bump2{border:2px dashed var(--purple);background:var(--purple-soft);border-radius:14px;padding:12px;margin:14px 0}
.btag{display:inline-block;background:var(--yellow);color:#2A2430;font-weight:800;font-size:11px;letter-spacing:.4px;border-radius:6px;padding:3px 8px;margin-bottom:8px}
.bimg2{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:10px;display:block;background:var(--card)}
.btitle{display:block;font-size:18px;line-height:1.25;margin-top:10px}
.bsub{color:var(--ink2);font-size:14px;margin-top:4px}
.bdet{margin-top:8px;font-size:14px}.bdet summary{cursor:pointer;color:var(--purple);font-weight:800}
.btick{display:flex;gap:10px;align-items:center;margin-top:10px;background:var(--card);border:2px solid var(--ink);border-radius:12px;padding:12px;cursor:pointer;font-size:15px;font-weight:700}
.btick input{width:24px;height:24px;margin:0;flex:0 0 auto;accent-color:var(--purple)}
.btick s{color:var(--ink2);font-size:13px}
.bump2:has(input:checked){border-style:solid;background:var(--green-soft)}
.bump2:has(input:checked) .btick{border-color:var(--green)}
.trustlist{list-style:none;margin:12px 0 0;padding:0;font-size:13px;color:var(--ink2)}
.trustlist li{padding-left:22px;position:relative;margin:5px 0}
.trustlist li:before{content:'✓';position:absolute;left:0;color:var(--green);font-weight:900}
.badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.badges .soldbadge{margin-top:0}
.tbadge{background:var(--green-soft);color:var(--green);border-radius:999px;padding:5px 11px;font-weight:800;font-size:13px}
.marquee{overflow:hidden;border-radius:12px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.mtrack{display:flex;gap:10px;width:max-content;animation:roll 40s linear infinite}
.mtrack img{height:220px;width:auto;border-radius:10px;display:block;background:var(--card2)}
.marquee:hover .mtrack{animation-play-state:paused}
@keyframes roll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mtrack{animation:none}.marquee{overflow-x:auto}}
/* audit fixes */
.off{white-space:nowrap}
.wrap{max-width:1180px}
.wrapcell{white-space:normal;min-width:170px;max-width:240px;word-break:break-word}
.brand b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand .sp a{white-space:nowrap}
@media (max-width:500px){.brand b{font-size:18px}}
details.sec{border-top:1.5px dashed var(--line);margin-top:14px;padding-top:10px}
details.sec>summary{cursor:pointer;font-weight:800;padding:6px 0}
.inlinebuy{display:none}
@media (max-width:860px){.inlinebuy{display:block;margin-top:12px}.inlinebuy .btn{margin-top:8px}}
.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 0;padding:0;counter-reset:s}
.steps li{background:var(--card);border-radius:10px;padding:10px;font-size:13px;box-shadow:var(--shadow);counter-increment:s}
.steps li:before{content:counter(s);display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--purple);color:#FFF8EC;font-weight:800;font-size:12px;margin-bottom:4px}
.steps b{display:block}.steps span{color:var(--ink2);font-size:12px}
html{scroll-behavior:smooth}
#buyForm,#downloads{scroll-margin-top:12px}
.top{background:#6A4C9C}
.tbl td.wrapcell{white-space:normal;min-width:170px;max-width:230px;overflow-wrap:anywhere}
.bump2:has(input:checked) .bdet summary{color:var(--ink)}
a.muted{color:var(--ink2)}
