#dtv-app, #dtv-app * { box-sizing:border-box; }
  #dtv-app {
    position:fixed; inset:0; z-index:999999;
    --wa:#008069; --wa-dark:#005c4b; --wa-light:#25d366; --chat:#efeae2;
    --bot:#ffffff; --user:#d9fdd3; --ink:#111b21; --muted:#667781; --line:#e1e7e9;
    width:100%; height:var(--dtv-app-height,100dvh); min-height:0; max-height:100dvh;
    margin:0; padding:16px; overflow:hidden; display:flex; align-items:center; justify-content:center;
    background:radial-gradient(circle at 50% 5%,#0b5d59 0,#073f3d 34%,#031e20 100%);
    color:var(--ink); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    -webkit-font-smoothing:antialiased; isolation:isolate;
  }
  #dtv-app button,#dtv-app input { font:inherit; }
  #dtv-app button { border:0; margin:0; }
  .dtv-shell {
    position:relative; width:min(100%,430px); height:min(820px,calc(var(--dtv-app-height,100dvh) - 32px)); min-height:0;
    display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden;
    background:var(--chat); border-radius:20px; border:1px solid rgba(255,255,255,.16);
    box-shadow:0 28px 80px rgba(0,0,0,.42);
  }
  .dtv-header {
    min-height:62px; padding:8px 7px 8px 5px; display:grid;
    grid-template-columns:36px 42px minmax(0,1fr) 36px 36px 34px; gap:2px; align-items:center;
    background:var(--wa); color:#fff; z-index:6; box-shadow:0 1px 2px rgba(0,0,0,.18);
  }
  .dtv-icon-btn { width:34px; height:42px; padding:0; display:grid; place-items:center; background:transparent; color:#fff; cursor:pointer; opacity:.96; }
  .dtv-icon-btn svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .dtv-more svg circle { fill:currentColor; stroke:none; }
  .dtv-avatar-wrap { width:40px; height:40px; border-radius:50%; overflow:hidden; background:#06283d; border:1px solid rgba(255,255,255,.35); }
  .dtv-avatar { width:100%; height:100%; object-fit:cover; display:block; }
  .dtv-head-copy { min-width:0; padding-left:7px; display:flex; flex-direction:column; justify-content:center; }
  .dtv-head-copy strong { font-size:16px; line-height:1.18; font-weight:650; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .dtv-head-copy span { margin-top:2px; font-size:12px; line-height:1.1; opacity:.88; }
  .dtv-chat {
    position:relative; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:12px 10px 16px;
    scroll-behavior:smooth; scrollbar-width:thin; scrollbar-color:rgba(0,0,0,.18) transparent;
    background-color:var(--chat);
    background-image:
      radial-gradient(circle at 22px 18px,rgba(122,105,87,.055) 0 1.2px,transparent 1.4px),
      radial-gradient(circle at 62px 56px,rgba(122,105,87,.045) 0 1.5px,transparent 1.7px),
      linear-gradient(35deg,transparent 47%,rgba(122,105,87,.025) 48% 52%,transparent 53%);
    background-size:84px 84px,84px 84px,96px 96px;
  }
  .dtv-date { width:max-content; margin:0 auto 10px; padding:5px 10px; border-radius:7px; background:#e1f3fb; color:#54656f; font-size:11px; font-weight:600; box-shadow:0 1px 1px rgba(0,0,0,.08); }
  .dtv-encryption { max-width:310px; margin:0 auto 14px; padding:6px 9px; border-radius:7px; background:#ffeecd; color:#5c5b52; font-size:10.5px; line-height:1.35; text-align:center; box-shadow:0 1px 1px rgba(0,0,0,.08); }
  .dtv-encryption svg { width:10px; height:10px; margin-right:3px; vertical-align:-1px; fill:none; stroke:#a77b22; stroke-width:1.8; }
  .dtv-message { display:flex; margin:3px 0; position:relative; }
  .dtv-bot { justify-content:flex-start; } .dtv-user { justify-content:flex-end; }
  .dtv-bubble { max-width:89%; min-width:78px; padding:7px 8px 5px; background:var(--bot); border-radius:8px; box-shadow:0 1px 1px rgba(11,20,26,.13); position:relative; }
  .dtv-bot .dtv-bubble::before { content:""; position:absolute; top:0; left:-7px; width:8px; height:13px; background:linear-gradient(135deg,var(--bot) 0 50%,transparent 51%); }
  .dtv-user .dtv-bubble { background:var(--user); }
  .dtv-user .dtv-bubble::after { content:""; position:absolute; top:0; right:-7px; width:8px; height:13px; background:linear-gradient(225deg,var(--user) 0 50%,transparent 51%); }
  .dtv-bubble p { margin:0; font-size:14px; line-height:1.42; color:var(--ink); }
  .dtv-bubble p + p { margin-top:7px; }
  .dtv-bubble strong { font-weight:680; }
  .dtv-bubble s { color:#6b7479; text-decoration-thickness:1.5px; }
  .dtv-bubble time { display:block; min-height:11px; margin-top:3px; text-align:right; color:#667781; font-size:9.5px; line-height:1; }
  .dtv-user .dtv-bubble time { color:#5a7166; }
  .dtv-bubble-menu { width:94%; max-width:94%; padding:9px 8px 5px; }
  .dtv-quick-list { margin-top:8px; border:1px solid #e5ebee; border-radius:9px; overflow:hidden; background:#fff; }
  .dtv-quick-list button { width:100%; min-height:47px; padding:8px 9px; display:grid; grid-template-columns:28px 1fr 16px; align-items:center; gap:7px; background:#fff; color:#1f2c33; text-align:left; cursor:pointer; border-bottom:1px solid #edf1f2; }
  .dtv-quick-list button:last-child { border-bottom:0; }
  .dtv-quick-list button:hover,.dtv-quick-list button:focus-visible { background:#f5f7f8; outline:none; }
  .dtv-quick-list button span { font-size:18px; } .dtv-quick-list button b { font-size:12.6px; font-weight:630; }
  .dtv-quick-list button i { color:#8696a0; font-size:22px; font-style:normal; text-align:right; }
  .dtv-quick-list .dtv-featured { background:#f0fff7; color:#075e54; }
  .dtv-quick-list button[disabled],.dtv-sheet-options button[disabled],.dtv-replies button[disabled] { opacity:.55; pointer-events:none; }
  .dtv-typing .dtv-bubble { display:flex; align-items:center; gap:4px; padding:12px 14px; }
  .dtv-typing i { display:block; width:7px; height:7px; border-radius:50%; background:#84928c; animation:dtv-dot 1.05s infinite ease-in-out; }
  .dtv-typing i:nth-child(2){animation-delay:.14s} .dtv-typing i:nth-child(3){animation-delay:.28s}
  @keyframes dtv-dot { 0%,60%,100%{transform:translateY(0);opacity:.42}30%{transform:translateY(-4px);opacity:1} }
  .dtv-appear { opacity:0; transform:translateY(6px); animation:dtv-in .3s ease forwards; animation-delay:var(--delay,0s); }
  @keyframes dtv-in { to{opacity:1;transform:none} }
  .dtv-replies { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0 1px; }
  .dtv-replies button { min-height:34px; padding:7px 11px; border-radius:18px; border:1px solid #cfdadd; background:#fff; color:#007b68; font-size:11.5px; line-height:1.2; font-weight:650; cursor:pointer; box-shadow:0 1px 1px rgba(0,0,0,.04); }
  .dtv-replies button:hover,.dtv-replies button:focus-visible { background:#f3faf7; outline:none; border-color:#95c8bb; }
  .dtv-replies button.dtv-primary { background:var(--wa); border-color:var(--wa); color:#fff; }
  .dtv-replies button.dtv-secondary { color:#53636c; }
  .dtv-price-grid { display:grid; gap:7px; margin-top:8px; }
  .dtv-price-card { padding:9px 10px; border-radius:8px; background:#f6f9fa; border-left:3px solid var(--wa); }
  .dtv-price-card b { display:block; margin-bottom:2px; font-size:12.5px; color:#075e54; }
  .dtv-price-card span { display:block; font-size:12px; line-height:1.35; }
  .dtv-benefits { display:grid; gap:7px; margin-top:8px; }
  .dtv-benefit { padding:8px 9px; border-radius:8px; background:#f6f9fa; }
  .dtv-benefit b { display:block; margin-bottom:2px; color:#075e54; font-size:12px; }
  .dtv-benefit span { display:block; color:#4a5961; font-size:11.5px; line-height:1.35; }
  .dtv-summary { margin-top:8px; padding:9px 10px; border-radius:8px; background:#f0fff7; border:1px solid #cdebdc; }
  .dtv-summary b { color:#075e54; }
  .dtv-summary div { margin-top:3px; font-size:12px; line-height:1.4; }
  .dtv-end-space { height:5px; }
  .dtv-composer { min-height:62px; padding:7px 8px calc(7px + env(safe-area-inset-bottom)); display:grid; grid-template-columns:minmax(0,1fr) 46px; align-items:center; gap:7px; background:#f0f2f5; border-top:1px solid rgba(17,27,33,.08); z-index:8; }
  .dtv-compose-pill { min-height:44px; display:grid; grid-template-columns:40px minmax(0,1fr) 39px; align-items:center; background:#fff; border-radius:23px; box-shadow:0 1px 1px rgba(0,0,0,.04); }
  .dtv-emoji,.dtv-clip { width:39px; height:42px; display:grid; place-items:center; padding:0; color:#8696a0; background:transparent; cursor:pointer; }
  .dtv-emoji svg,.dtv-clip svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
  .dtv-input { min-width:0; width:100%; min-height:42px; padding:0 4px; border:0; outline:0; background:transparent; color:#111b21; font-size:14px; }
  .dtv-input[readonly] { color:#667781; cursor:pointer; }
  .dtv-input::placeholder { color:#667781; opacity:1; }
  .dtv-send { width:44px; height:44px; border-radius:50%; display:grid; place-items:center; padding:0; background:var(--wa); color:#fff; cursor:pointer; box-shadow:0 2px 5px rgba(0,0,0,.17); }
  .dtv-send svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .dtv-send-icon { display:none; }
  .dtv-composer.is-typing .dtv-mic-icon { display:none; }
  .dtv-composer.is-typing .dtv-send-icon { display:block; }
  .dtv-composer.is-typing .dtv-clip { opacity:.36; pointer-events:none; }
  .dtv-menu-layer { position:absolute; inset:0; z-index:20; visibility:hidden; pointer-events:none; }
  .dtv-menu-layer.is-open { visibility:visible; pointer-events:auto; }
  .dtv-menu-backdrop { position:absolute; inset:0; width:100%; height:100%; padding:0; background:rgba(11,20,26,.34); opacity:0; transition:opacity .2s ease; }
  .dtv-menu-layer.is-open .dtv-menu-backdrop { opacity:1; }
  .dtv-menu-sheet { position:absolute; left:7px; right:7px; bottom:calc(69px + env(safe-area-inset-bottom)); max-height:min(530px,70%); overflow:hidden; border-radius:15px; background:#fff; box-shadow:0 14px 45px rgba(0,0,0,.30); transform:translateY(18px) scale(.985); opacity:0; transition:transform .22s ease,opacity .18s ease; }
  .dtv-menu-layer.is-open .dtv-menu-sheet { transform:translateY(0) scale(1); opacity:1; }
  .dtv-menu-handle { width:38px; height:4px; margin:8px auto 3px; border-radius:999px; background:#d7dfe2; }
  .dtv-menu-title-row { min-height:58px; padding:8px 11px 9px 14px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #edf1f2; }
  .dtv-menu-title-row strong { display:block; font-size:15px; color:#111b21; }
  .dtv-menu-title-row span { display:block; margin-top:2px; font-size:11px; color:#667781; }
  .dtv-menu-close { width:36px; height:36px; border-radius:50%; background:#f0f2f5; color:#54656f; font-size:25px; line-height:1; cursor:pointer; }
  .dtv-sheet-options { max-height:calc(min(530px,70vh) - 70px); overflow:auto; overscroll-behavior:contain; padding:3px 0 6px; }
  .dtv-sheet-options button { width:100%; min-height:60px; padding:8px 13px; display:grid; grid-template-columns:42px minmax(0,1fr) 18px; gap:9px; align-items:center; background:#fff; color:#111b21; text-align:left; cursor:pointer; border-bottom:1px solid #f0f2f5; }
  .dtv-sheet-options button:last-child { border-bottom:0; }
  .dtv-sheet-options button:hover,.dtv-sheet-options button:focus-visible { background:#f5f6f6; outline:none; }
  .dtv-sheet-options .dtv-option-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:#e7f7f2; font-size:19px; }
  .dtv-sheet-options button > span:nth-child(2) { min-width:0; }
  .dtv-sheet-options b { display:block; font-size:13.5px; font-weight:650; }
  .dtv-sheet-options small { display:block; margin-top:2px; color:#667781; font-size:10.8px; line-height:1.25; }
  .dtv-sheet-options i { color:#8696a0; font-size:24px; font-style:normal; }
  .dtv-sheet-options .dtv-sheet-featured { background:#f4fff9; }
  .dtv-sheet-options .dtv-sheet-featured .dtv-option-icon { background:#dff8eb; }
  .dtv-toast { position:absolute; left:50%; bottom:82px; z-index:25; width:calc(100% - 34px); max-width:360px; padding:10px 13px; border-radius:9px; background:rgba(17,27,33,.92); color:#fff; font-size:12px; text-align:center; box-shadow:0 10px 28px rgba(0,0,0,.24); opacity:0; pointer-events:none; transform:translate(-50%,10px); transition:.2s ease; }
  .dtv-toast.show { opacity:1; transform:translate(-50%,0); }
  @media (max-width:520px) {
    #dtv-app { padding:0; height:var(--dtv-app-height,100dvh); max-height:none; background:var(--chat); }
    .dtv-shell { width:100%; height:100%; max-height:none; border:0; border-radius:0; box-shadow:none; }
    .dtv-header { padding-top:calc(7px + env(safe-area-inset-top)); min-height:calc(62px + env(safe-area-inset-top)); }
  }
  @media (max-width:360px) {
    .dtv-header { grid-template-columns:32px 39px minmax(0,1fr) 32px 32px 29px; }
    .dtv-video,.dtv-phone { width:31px; }
    .dtv-bubble-menu { width:96%; max-width:96%; }
  }
  @media (prefers-reduced-motion:reduce) { #dtv-app *,#dtv-app *::before,#dtv-app *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.01ms!important; } }

/* WordPress admin bar compatibility while testing logged in. */
body.admin-bar #dtv-app { top:32px; height:calc(var(--dtv-app-height,100dvh) - 32px); }
@media screen and (max-width:782px){ body.admin-bar #dtv-app { top:46px; height:calc(var(--dtv-app-height,100dvh) - 46px); } }

/* v1.2 — vídeo demonstrativo */
.dtv-video-bubble{padding:8px!important;overflow:hidden}.dtv-video-card{width:min(100%,430px);border-radius:11px;overflow:hidden;background:#0b141a;border:1px solid rgba(17,27,33,.12);box-shadow:0 4px 18px rgba(17,27,33,.14)}
.dtv-video-cover{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#06263a,#0b5e7e);background-size:cover;background-position:center;display:grid;place-items:center;overflow:hidden}.dtv-video-cover-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,18,27,.12),rgba(5,18,27,.72))}.dtv-video-play{position:relative;z-index:2;border:0;background:transparent;color:#fff;display:flex;flex-direction:column;align-items:center;gap:5px;padding:18px 20px;cursor:pointer;text-align:center}.dtv-video-play>span{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;padding-left:4px;background:#00a884;box-shadow:0 8px 26px rgba(0,168,132,.45);font-size:23px}.dtv-video-play>b{font-size:13px;letter-spacing:.035em}.dtv-video-play>small{font-size:11px;opacity:.88;font-weight:500}.dtv-demo-video{display:none;width:100%;aspect-ratio:16/9;background:#000}.dtv-video-after{padding:12px;background:#fff;display:flex;flex-direction:column;gap:3px}.dtv-video-after[hidden]{display:none}.dtv-video-after>strong{font-size:14px;color:#182229}.dtv-video-after>span{font-size:11px;color:#667781;margin-bottom:6px}.dtv-video-after .dtv-replies{margin:4px 0 0}.dtv-video-after .dtv-replies button{font-size:12px}
.dtv-rotate-prompt{position:absolute;inset:0;z-index:60;background:rgba(5,18,27,.94);backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:30px;animation:dtvFadeIn .18s ease}.dtv-rotate-prompt>strong{font-size:18px;line-height:1.25;max-width:300px;margin-top:24px}.dtv-rotate-prompt>span{font-size:12px;color:#c8d3d8;margin-top:7px}.dtv-rotate-prompt>div:last-child{display:flex;flex-direction:column;gap:9px;width:min(100%,290px);margin-top:22px}.dtv-rotate-prompt button{border:0;border-radius:10px;padding:12px 14px;font-weight:750;font-size:13px;cursor:pointer}.dtv-rotate-go{background:#00a884;color:#fff}.dtv-rotate-skip{background:rgba(255,255,255,.12);color:#fff}.dtv-rotate-phone{position:relative;width:54px;height:92px;border:4px solid #fff;border-radius:10px;animation:dtvRotatePhone 1.45s ease-in-out infinite}.dtv-rotate-phone:before{content:"";position:absolute;width:18px;height:3px;border-radius:3px;background:#fff;left:50%;top:6px;transform:translateX(-50%)}.dtv-rotate-phone i{position:absolute;inset:15px 5px 7px;border-radius:4px;background:linear-gradient(135deg,#00a884,#25d366)}@keyframes dtvRotatePhone{0%,25%{transform:rotate(0)}70%,100%{transform:rotate(90deg)}}@keyframes dtvFadeIn{from{opacity:0}to{opacity:1}}

/* Chef Carla Ramos — identidade e componentes do funil v2 */
#dtv-app.chefcarla-app {
  --wa:#008069;
  --wa-dark:#005c4b;
  --wa-light:#25d366;
  --chat:#efeae2;
  --bot:#ffffff;
  --user:#d9fdd3;
  background:radial-gradient(circle at 50% 4%,#0b5d59 0,#073f3d 42%,#031e20 100%);
}
.chefcarla-app .dtv-shell{border-color:rgba(255,255,255,.16)}
.chefcarla-app .dtv-header{grid-template-columns:36px 42px minmax(0,1fr) 36px;background:var(--wa)}
.chefcarla-app .dtv-avatar-wrap{background:#dfe5e7;border-color:rgba(255,255,255,.35)}
.chefcarla-app .dtv-avatar-text{display:grid;place-items:center;color:#54656f;font-weight:800;font-size:13px;letter-spacing:.04em;background:#dfe5e7}
.chefcarla-app .dtv-encryption{background:#ffeecd;color:#5c5b52}
.chefcarla-app .dtv-replies button{color:#007b68;border-color:#cfdadd}
.chefcarla-app .dtv-replies button:hover,.chefcarla-app .dtv-replies button:focus-visible{background:#f3faf7;border-color:#95c8bb}
.chefcarla-app .dtv-replies button.dtv-primary{background:var(--wa);border-color:var(--wa);color:#fff}
.chefcarla-app .dtv-benefit b{color:#075e54}
.chefcarla-app .dtv-sheet-options .dtv-option-icon{background:#e7f7f2}
.chefcarla-app .dtv-sheet-options .dtv-sheet-featured{background:#f4fff9}
.chefcarla-app .dtv-sheet-options .dtv-sheet-featured .dtv-option-icon{background:#dff8eb}
.chefcarla-app .dtv-send{background:var(--wa)}
.chefcarla-app .dtv-emoji,.chefcarla-app .dtv-clip{font-size:18px;color:#8696a0}

.dtv-media-card{margin:-1px -1px 2px;border-radius:7px;overflow:hidden;background:#fff;border:1px solid #e1e7e9}
.dtv-media-card img{display:block;width:100%;max-height:330px;object-fit:cover;background:#eee}
.dtv-media-card span{display:block;padding:7px 9px;color:#667781;font-size:10.5px;line-height:1.3}
.chef-diagnosis{padding:12px;border-radius:10px;background:#f0fff7;border:1px solid #cdebdc}
.chef-diagnosis small{display:block;margin-bottom:5px;color:#0b6c58;font-size:9.5px;font-weight:800;letter-spacing:.08em}
.chef-diagnosis>strong{display:block;color:#075e54;font-size:14.2px;line-height:1.3}
.chef-diagnosis p{margin:7px 0 0!important;color:#455a64!important;font-size:12.5px!important;line-height:1.48!important}
.chef-benefits .dtv-benefit{background:#f6f9fa;border:1px solid #e8eef0}
.chef-offer-card{padding:13px;border-radius:12px;background:linear-gradient(145deg,#005c4b,#008069);color:#fff;box-shadow:0 8px 22px rgba(11,73,60,.22)}
.chef-offer-kicker{display:block;margin-bottom:5px;color:#d8ffee;font-size:9px;font-weight:800;letter-spacing:.08em}
.chef-offer-card>strong{display:block;font-size:16px;line-height:1.28;color:#fff}
.chef-offer-list{display:grid;gap:6px;margin:12px 0;padding:10px;border-radius:9px;background:rgba(255,255,255,.09)}
.chef-offer-list span{font-size:11.5px;line-height:1.3;color:#fff}
.chef-offer-card>small{display:block;color:#d8ffee;font-size:10px}
.chef-price{display:block!important;margin-top:1px;color:#fff7c0!important;font-size:28px!important;line-height:1.05}
.chef-offer-note{display:block;margin-top:9px;padding-top:9px;border-top:1px solid rgba(255,255,255,.18);color:#d8ffee;font-size:9.6px;line-height:1.35}


@media (max-width:360px){
  .chefcarla-app .dtv-header{grid-template-columns:32px 39px minmax(0,1fr) 32px}
  .dtv-bubble{max-width:92%}
}
