/*!
 * Painel da raspadinha — subdomínio raspadinha.convitebox.shop
 */
*{box-sizing:border-box}
[hidden]{display:none!important}
:root{
  --rp-roxo:#7c3aed;--rp-roxo-escuro:#6d28d9;
  --rp-borda:rgba(113,56,232,.14);--rp-texto:#21162d;--rp-fraco:#75677f;
}
html,body{margin:0;padding:0}
body{
  background:linear-gradient(180deg,#faf8fd 0,#f5f1fb 200px,#f5f1fb 100%);
  color:var(--rp-texto);
  font:400 15px/1.5 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  letter-spacing:-.01em;min-height:100vh;
}
a{color:var(--rp-roxo-escuro)}
h1,h2,h3{margin:0;letter-spacing:-.03em}
p{margin:6px 0 0;color:var(--rp-fraco)}

/* ------------------------------------------------------------------ topo */
.rp-top{
  position:sticky;top:0;z-index:40;
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
  padding:18px max(20px,calc((100vw - 1240px)/2));
  background:rgba(255,255,255,.86);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--rp-borda);box-shadow:0 8px 30px rgba(45,22,72,.05);
}
.rp-top h1{font-size:clamp(21px,3vw,29px)}
.rp-top nav{display:flex;gap:9px;flex-wrap:wrap}
.rp-top nav a{
  border:1px solid #dfd2ec;background:#fff;color:#2b1c3b;border-radius:14px;
  padding:9px 14px;font-weight:800;font-size:14px;text-decoration:none;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.rp-top nav a:hover{transform:translateY(-1px);border-color:#bca4df;box-shadow:0 8px 18px rgba(74,38,112,.10)}

.rp-wrap{width:min(1240px,calc(100% - 28px));margin:24px auto 60px}

/* ---------------------------------------------------------------- botões */
.rp-btn{
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid #dfd2ec;background:#fff;color:#2b1c3b;
  border-radius:14px;padding:10px 15px;font:800 14px Inter,system-ui,sans-serif;
  text-decoration:none;cursor:pointer;white-space:nowrap;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,opacity .16s ease;
}
.rp-btn:hover:not(:disabled){transform:translateY(-1px);border-color:#bca4df;box-shadow:0 8px 18px rgba(74,38,112,.10)}
.rp-btn.primary{background:linear-gradient(135deg,var(--rp-roxo),var(--rp-roxo-escuro));color:#fff;border-color:transparent;box-shadow:0 8px 18px rgba(109,40,217,.20)}
.rp-btn.ghost{background:transparent;border-style:dashed;color:#6a5b78}
.rp-btn:disabled{opacity:.5;cursor:not-allowed}
.rp-acoes{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}

/* ---------------------------------------------------------------- cartão */
.rp-card{
  background:#fff;border:1px solid var(--rp-borda);border-radius:22px;
  padding:24px;margin-bottom:18px;box-shadow:0 12px 38px rgba(55,30,80,.055);
}
.rp-card h2{font-size:20px}
.rp-card-head{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:16px}
.rp-h3{margin:22px 0 8px;font-size:15px;color:#2b1c3b}
.rp-h3:first-child{margin-top:0}
.rp-ajuda{margin:0 0 12px;font-size:13.5px;line-height:1.55;color:var(--rp-fraco)}

.rp-alerta{padding:13px 16px;border-radius:14px;margin-bottom:16px;font-weight:700;font-size:14px}
.rp-alerta.ok{background:#ecfdf5;color:#047857}
.rp-alerta.erro{background:#fff1f2;color:#be123c}
.rp-alerta[hidden]{display:none}

.rp-nota{
  margin:0 0 20px;padding:13px 16px;border-radius:14px;
  background:#f5efff;border:1px solid #e0d0f7;color:#4b3663;font-size:13.5px;line-height:1.55;
}
.rp-nota a{font-weight:700}

/* ------------------------------------------------------------- formulário */
label{display:grid;gap:7px;font:800 13px Inter,system-ui,sans-serif;color:#2d2038}
input,select,textarea{
  width:100%;min-height:46px;border:1px solid #ddd0eb;border-radius:14px;
  padding:12px;font:inherit;background:#fff;outline:none;
  transition:border-color .15s ease,box-shadow .15s ease;
}
input:hover,select:hover{border-color:#c7afe2}
input:focus,select:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px rgba(139,92,246,.12)}
.rp-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:640px){.rp-grid2{grid-template-columns:1fr}}

.rp-switch{
  display:inline-flex;align-items:center;gap:10px;grid-auto-flow:column;
  padding:10px 16px;border-radius:14px;border:1px solid #ddd0eb;background:#fbf9ff;
  font-size:14px;white-space:nowrap;cursor:pointer;
}
.rp-switch input{width:20px;height:20px;min-height:0;accent-color:var(--rp-roxo);cursor:pointer}

.rp-checks{display:grid;gap:9px;margin-top:16px}
.rp-check{display:flex;align-items:center;gap:9px;font-weight:700;font-size:13.5px}
.rp-check input{width:18px;height:18px;min-height:0;accent-color:var(--rp-roxo)}

.rp-range{position:relative}
.rp-range input[type=range]{width:100%;min-height:0;height:34px;padding:0;border:0;background:transparent;accent-color:var(--rp-roxo);cursor:pointer}
.rp-range output{position:absolute;right:2px;top:0;font:800 12px Inter,system-ui,sans-serif;color:var(--rp-roxo)}

.rp-upload{margin-bottom:8px}
.rp-upload progress{width:100%;height:8px}
.rp-arquivo{font-size:12px;font-weight:700}
.rp-arquivo.ok{color:#047857}
.rp-arquivo.vazio{color:#8a7898}
.rp-arquivo.enviando{color:var(--rp-roxo-escuro)}
.rp-arquivo.erro{color:#be123c}
.rp-estado{margin-top:16px;font-size:13px;color:var(--rp-fraco);min-height:20px}
.rp-estado.salvando{color:var(--rp-roxo-escuro)}
.rp-estado.erro{color:#be123c;font-weight:700}

/* ------------------------------------------------------------------ abas */
.rp-abas{
  display:flex;gap:8px;margin:0 0 18px;padding:6px;
  background:#fff;border:1px solid var(--rp-borda);border-radius:18px;
  box-shadow:0 12px 38px rgba(55,30,80,.055);
}
.rp-aba{
  flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border-radius:13px;padding:12px 16px;text-decoration:none;
  color:#5b4a6b;font:800 15px Inter,system-ui,sans-serif;
  transition:background .16s ease,color .16s ease;
}
a.rp-aba:hover{background:#f6f1fd;color:#2b1c3b}
.rp-aba.is-active{background:linear-gradient(135deg,var(--rp-roxo),var(--rp-roxo-escuro));color:#fff;box-shadow:0 8px 18px rgba(109,40,217,.22)}
.rp-aba-dot{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.3)}
.rp-aba-dot[hidden]{display:none}

/* ----------------------------------------------------------------- temas */
.rp-temas{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.rp-tema{
  position:relative;display:grid;gap:4px;cursor:pointer;
  padding:10px;border:2px solid #e6dbf4;border-radius:16px;background:#fff;
  transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.rp-tema:hover{transform:translateY(-2px);border-color:#c7afe2;box-shadow:0 10px 22px rgba(74,38,112,.10)}
.rp-tema.is-active{border-color:var(--rp-roxo);box-shadow:0 10px 24px rgba(109,40,217,.18)}
.rp-tema input{position:absolute;opacity:0;pointer-events:none;width:0;height:0;min-height:0}
.rp-tema-capa{position:relative;display:block;height:78px;border-radius:11px;border:1px solid rgba(0,0,0,.08);overflow:hidden}
.rp-tema-capa canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.rp-tema strong{margin-top:2px;font-size:13.5px;color:#241834}
.rp-tema small{font-size:11.5px;line-height:1.35;color:#7b6b89}
.rp-custom[hidden]{display:none}

/* ---------------------------------------------------------------- prévia */
.rp-cols{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:26px;align-items:start}
@media(max-width:980px){.rp-cols{grid-template-columns:1fr}}
.rp-previa-col{position:sticky;top:120px}
@media(max-width:980px){.rp-previa-col{position:relative;top:0}}
.rp-fone{
  position:relative;width:100%;max-width:290px;margin:12px auto 16px;
  aspect-ratio:9/16;border-radius:30px;padding:9px;
  background:linear-gradient(150deg,#2b1b3f,#150c22);box-shadow:0 20px 46px rgba(35,16,60,.30);
}
.rp-previa{position:relative;width:100%;height:100%;border-radius:22px;overflow:hidden;background:#0d0916;display:grid;place-items:center}
.rp-previa-vazia{padding:22px;text-align:center;color:#b9a8cd;font:700 13px/1.5 Inter,system-ui,sans-serif}
.rp-previa.is-running .rp-previa-vazia{display:none}
.rp-previa .scratch-root{position:absolute;inset:0;border-radius:22px;overflow:hidden}
.rp-previa .scratch-stage{width:100%;height:100%}
.rp-previa .scratch-skip{position:absolute;right:10px;bottom:10px;padding:8px 13px;font-size:12px}
.rp-previa .scratch-hint{font-size:12px;padding:9px 13px;gap:7px;bottom:16%}
.rp-previa .scratch-hint-icon{width:18px;height:18px;flex-basis:18px}
.rp-dicas{margin:14px 0 0;padding-left:18px;color:var(--rp-fraco);font-size:12.5px;line-height:1.6}

/* ----------------------------------------------------------- lista/resumo */
.rp-resumo{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:18px}
.rp-stat{
  background:#fff;border:1px solid var(--rp-borda);border-radius:18px;
  padding:14px 20px;box-shadow:0 10px 30px rgba(55,30,80,.05);
}
.rp-stat strong{display:block;font-size:26px;letter-spacing:-.04em}
.rp-stat span{font-size:12.5px;color:var(--rp-fraco)}
.rp-busca{display:flex;gap:9px;margin-left:auto;align-items:center}
.rp-busca input{min-width:min(320px,60vw)}

.rp-lista{display:grid;gap:14px}
.rp-item{
  display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:18px;align-items:center;
  background:#fff;border:1px solid var(--rp-borda);border-radius:20px;padding:16px;
  box-shadow:0 10px 30px rgba(55,30,80,.05);
}
.rp-item.is-on{border-color:rgba(124,58,237,.4)}
.rp-item-capa{position:relative;height:76px;border-radius:14px;border:1px solid rgba(0,0,0,.08)}
.rp-tag{
  position:absolute;left:6px;bottom:6px;padding:3px 8px;border-radius:999px;
  background:rgba(12,10,20,.62);color:#fff;font:800 9.5px Inter,system-ui,sans-serif;
}
.rp-tag.off{background:rgba(255,255,255,.8);color:#8a7898}
.rp-item-info h2{font-size:17px}
.rp-item-info p{font-size:13px;margin-top:3px}
.rp-fraco{color:#a396ad}
.rp-selos{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.rp-selo{display:inline-flex;padding:4px 10px;border-radius:999px;font:900 11px Inter,system-ui,sans-serif}
.rp-selo.ok{background:#dcfce7;color:#047857}
.rp-selo.rascunho{background:#fff7ed;color:#c2410c}
.rp-selo.tema{background:#f1e9fd;color:#6d28d9}
.rp-selo.alerta{background:#fff1f2;color:#be123c}
.rp-item-acoes{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:540px}
.rp-item-acoes .rp-btn{padding:9px 13px;font-size:13px}
@media(max-width:820px){
  .rp-item{grid-template-columns:1fr}
  .rp-item-capa{height:64px}
  .rp-item-acoes{justify-content:flex-start;max-width:none}
  .rp-busca{margin-left:0;width:100%}
  .rp-busca input{min-width:0;flex:1}
}
.rp-vazio{
  background:#fff;border:1px dashed #d9c9ef;border-radius:20px;
  padding:40px 24px;text-align:center;color:var(--rp-fraco);font-weight:600;
}
.rp-rodape{margin-top:26px;font-size:12.5px;line-height:1.6;text-align:center}

/* ---------------------------------------------------------------- toast */
.rp-toast{
  position:fixed;left:50%;bottom:26px;transform:translateX(-50%);z-index:9999;
  padding:12px 20px;border-radius:999px;background:rgba(24,16,38,.94);color:#fff;
  font:800 14px Inter,system-ui,sans-serif;box-shadow:0 12px 32px rgba(0,0,0,.28);
  max-width:90vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.rp-toast[hidden]{display:none}

/* ---------------------------------------------------------------- login */
.rp-login{
  min-height:100vh;display:grid;place-items:center;padding:24px;
}
.rp-login-box{
  width:min(420px,100%);background:#fff;border:1px solid var(--rp-borda);
  border-radius:24px;padding:32px;box-shadow:0 20px 55px rgba(55,24,100,.12);
}
.rp-login-box h1{font-size:24px;margin-bottom:6px}
.rp-login-box form{display:grid;gap:14px;margin-top:22px}
.rp-login-box .rp-btn{width:100%;padding:13px}

/* ----------------------------------------------------------- diagnóstico */
.rp-check-row{
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  padding:14px 0;border-bottom:1px solid #f0e8fa;
}
.rp-check-row:last-child{border-bottom:0}
.rp-check-row code{background:#f5eefe;padding:2px 7px;border-radius:7px;font-size:12.5px;word-break:break-all}
.rp-pill{display:inline-block;padding:4px 11px;border-radius:999px;font:900 11.5px Inter,system-ui,sans-serif;white-space:nowrap}
.rp-pill.ok{background:#dcfce7;color:#047857}
.rp-pill.erro{background:#fff1f2;color:#be123c}
.rp-pill.aviso{background:#fff7ed;color:#c2410c}

/* =======================================================================
   Fase 1 — experiências interativas
   ===================================================================== */

.rp-wrap-estreito{width:min(820px,calc(100% - 28px))}

/* topo do painel */
.rp-hero{
  display:flex;gap:16px;align-items:center;flex-wrap:wrap;
  margin-bottom:18px;
}
.rp-stats{display:flex;gap:12px;flex-wrap:wrap}
.rp-btn-grande{margin-left:auto;padding:15px 24px;font-size:15.5px;border-radius:16px}
@media(max-width:720px){
  .rp-btn-grande{margin-left:0;width:100%}
  .rp-stats{width:100%}
  .rp-stat{flex:1;min-width:0;padding:12px 14px}
  .rp-stat strong{font-size:22px}
}

.rp-busca-linha{display:flex;gap:9px;align-items:center;margin-bottom:24px}
.rp-busca-linha input{flex:1;min-width:0}

.rp-bloco{margin-bottom:30px}
.rp-bloco-head{margin-bottom:14px}
.rp-bloco-head h2{font-size:19px}
.rp-bloco-head p{font-size:13.5px;margin-top:4px}

.rp-item h3{font-size:17px;letter-spacing:-.02em}
.rp-selo.fluxo{background:#eef2ff;color:#4338ca}

/* escolhas em cartão (fluxo, página final) */
.rp-escolhas{display:grid;gap:10px;margin-top:6px}
.rp-escolha{
  display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;
  padding:14px 16px;border:2px solid #e6dbf4;border-radius:16px;background:#fff;
  cursor:pointer;font-weight:400;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.rp-escolha:hover{border-color:#c7afe2}
.rp-escolha:has(input:checked){border-color:var(--rp-roxo);box-shadow:0 8px 22px rgba(109,40,217,.14)}
.rp-escolha input{width:20px;height:20px;min-height:0;margin-top:2px;accent-color:var(--rp-roxo)}
.rp-escolha strong{display:block;font:800 14.5px Inter,system-ui,sans-serif;color:#241834}
.rp-escolha small{display:block;margin-top:3px;font-size:12.5px;line-height:1.5;color:var(--rp-fraco)}
.rp-escolha.is-off{opacity:.55}

/* editor */
.rp-editor-cols{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr);gap:26px;align-items:start}
@media(max-width:1000px){.rp-editor-cols{grid-template-columns:1fr}}
.rp-editor .rp-abas{overflow-x:auto;scrollbar-width:none}
.rp-editor .rp-abas::-webkit-scrollbar{display:none}
.rp-editor .rp-aba{flex:0 0 auto;border:0;background:transparent;cursor:pointer;font-size:14px;padding:11px 15px}
.rp-editor .rp-aba:hover{background:#f6f1fd;color:#2b1c3b}
.rp-editor .rp-aba.is-active{
  background:linear-gradient(135deg,var(--rp-roxo),var(--rp-roxo-escuro));
  color:#fff;box-shadow:0 8px 18px rgba(109,40,217,.22);
}

.rp-nota ul{margin:8px 0 0;padding-left:18px}
.rp-nota li{margin:3px 0}

/* botões da página final */
.rp-botoes-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}
.rp-botoes{display:grid;gap:12px;margin-top:12px}
.rp-botao{
  border:1px solid var(--rp-borda);border-radius:16px;padding:16px;background:#fbf9ff;
}
.rp-botao-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.rp-botao-head strong{font:800 13px Inter,system-ui,sans-serif;color:#4b3663}
.rp-btn.pequeno{padding:6px 11px;font-size:12px;border-radius:10px}
.rp-btn.perigo{color:#be123c;border-color:#f6cdd5}
.rp-btn.perigo:hover:not(:disabled){border-color:#e79aa8}
.rp-xywh{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}
.rp-xywh label{font-size:11.5px;color:var(--rp-fraco)}
.rp-xywh input{min-height:40px;padding:8px 10px;text-align:center;font-variant-numeric:tabular-nums}
.rp-botao-cores{margin-top:12px}
.rp-botao-cores input[type=color]{min-height:42px;padding:4px;cursor:pointer}
.rp-vazio.pequeno{padding:22px;font-size:13.5px;border-radius:16px}

/* preview em iframe */
.rp-previa iframe{
  position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:22px;
  background:#000;display:block;
}

/* =======================================================================
   Fase 2 — palco de edição
   ===================================================================== */

.rp-visao{
  display:flex;gap:6px;padding:5px;margin-bottom:12px;
  background:#fff;border:1px solid var(--rp-borda);border-radius:14px;
}
.rp-visao-btn{
  flex:1;border:0;background:transparent;border-radius:10px;padding:9px 12px;
  font:800 13px Inter,system-ui,sans-serif;color:#5b4a6b;cursor:pointer;
  transition:background .16s ease,color .16s ease;
}
.rp-visao-btn:hover:not(:disabled){background:#f6f1fd;color:#2b1c3b}
.rp-visao-btn.is-active{background:linear-gradient(135deg,var(--rp-roxo),var(--rp-roxo-escuro));color:#fff}
.rp-visao-btn:disabled{opacity:.4;cursor:not-allowed}

.rp-fone-tela{position:relative;width:100%;height:100%;border-radius:22px;overflow:hidden}
.rp-palco-host{position:absolute;inset:0}
.rp-palco-host[hidden]{display:none}
.rp-palco-host .pa-palco{height:100%;aspect-ratio:auto;border-radius:22px}
.rp-fone-tela .rp-previa{position:absolute;inset:0}

/* formatos da área */
.rp-formas{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:14px}
.rp-forma{
  position:relative;display:grid;justify-items:center;gap:6px;cursor:pointer;
  padding:10px 12px;min-width:78px;border:2px solid #e6dbf4;border-radius:14px;background:#fff;
  transition:border-color .16s ease,transform .16s ease;
}
.rp-forma:hover{transform:translateY(-1px);border-color:#c7afe2}
.rp-forma.is-active{border-color:var(--rp-roxo);box-shadow:0 8px 20px rgba(109,40,217,.14)}
.rp-forma input{position:absolute;opacity:0;width:0;height:0;min-height:0;pointer-events:none}
.rp-forma small{font-size:11px;color:#5b4a6b;font-weight:700;text-align:center}
.rp-forma-icone{
  width:30px;height:30px;border:2px solid #7c3aed;background:rgba(124,58,237,.14);display:block;
}
.rp-forma-tela{border-radius:4px;width:22px;height:34px}
.rp-forma-retangulo{border-radius:4px;width:34px;height:22px}
.rp-forma-quadrado{border-radius:4px}
.rp-forma-circulo{border-radius:50%}
.rp-forma-oval{border-radius:50%;width:36px;height:24px}

/* =============================================== Fase 3 — novos blocos */

/* escolhas lado a lado quando são só duas e curtas */
.rp-escolhas-linha{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}

/* trilhas de áudio: um cartão por trilha */
.rp-trilha{
  margin-top:14px;padding:16px;border-radius:18px;
  background:#faf8fe;border:1px solid var(--rp-borda,#e8e2f2);
}
.rp-trilha-topo{margin-bottom:10px}
.rp-trilha-topo strong{display:block;font:800 14.5px Inter,system-ui,sans-serif;color:#241834}
.rp-trilha-topo small{display:block;margin-top:3px;font-size:12.5px;line-height:1.5;color:var(--rp-fraco)}
.rp-trilha .rp-upload{margin:0}
.rp-trilha .rp-range{margin-top:12px}

/* campo de texto multilinha dos elementos */
.pa-props textarea{
  width:100%;resize:vertical;min-height:64px;line-height:1.45;
}
