:root {
  --cd-pink: #ec1766;
  --cd-pink-2: #ff4d8f;
  --cd-pink-3: #ff8bb7;
  --cd-blush: #fff3f7;
  --cd-soft: #fff8fa;
  --cd-border: #f5dce6;
  --cd-text: #17131a;
  --cd-muted: #766d75;
  --cd-shadow: 0 18px 42px rgba(137, 18, 70, .12);
  --cd-shadow-soft: 0 9px 24px rgba(137, 18, 70, .09);
  --cd-radius: 24px;
}

* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html, body { margin: 0 !important; padding: 0 !important; background: #f7eef2; color: var(--cd-text); }
body.click-divas-pwa-page { min-height: 100vh; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; overflow-x: hidden; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }

.cd-pwa { min-height: 100dvh; background: radial-gradient(circle at 50% -10%, #fff 0, #fff7fa 38%, #f9eef3 100%); }
.cd-app-shell { position: relative; width: min(100%, 520px); min-height: 100dvh; margin: 0 auto; background: linear-gradient(180deg, #fff8fb 0%, #fff 44%, #fffafb 100%); box-shadow: 0 0 70px rgba(105, 21, 55, .12); overflow: hidden; }
.cd-screen { min-height: 100dvh; padding: env(safe-area-inset-top) 18px calc(92px + env(safe-area-inset-bottom)); animation: cdFade .24s ease; }
@keyframes cdFade { from { opacity: .3; transform: translateY(5px);} to { opacity:1; transform:none;} }

.cd-loading-screen { min-height: 100dvh; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; color:var(--cd-muted); }
.cd-loading-screen img { width: 210px; max-width: 58vw; border-radius: 28px; mix-blend-mode: multiply; }
.cd-loader { width:36px; height:36px; border:3px solid #f7cade; border-top-color:var(--cd-pink); border-radius:50%; animation:spin .8s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }

.cd-topbar { position:relative; display:flex; align-items:center; justify-content:center; padding: 10px 2px 8px; min-height: 126px; }
.cd-brand-lockup { display:flex; flex-direction:column; align-items:center; justify-content:center; width:min(72vw,300px); }
.cd-brand { width:min(68vw,272px); height:92px; object-fit:contain; object-position:center; mix-blend-mode:normal; filter:drop-shadow(0 5px 8px rgba(139,12,62,.16)); }
.cd-brand-tagline { margin-top:-8px; font-size:9px; line-height:1; font-weight:800; letter-spacing:.16em; color:#4c4147; white-space:nowrap; }
.cd-topbar .cd-icon-btn { position:absolute; right:2px; top:30px; }
.cd-icon-btn { width:46px; height:46px; border:none; border-radius:50%; background:#fff; box-shadow:var(--cd-shadow-soft); display:grid; place-items:center; color:#2c2228; position:relative; }
.cd-icon-btn svg { width:22px; height:22px; }
.cd-notification-button, .cd-desktop-notifications { position:relative; }
.cd-notification-badge { min-width:18px; height:18px; padding:0 5px; border-radius:999px; display:grid; place-items:center; background:var(--cd-pink); color:#fff; border:2px solid #fff; font-size:9px; font-weight:900; line-height:1; position:absolute; right:4px; top:3px; box-shadow:0 3px 10px rgba(236,23,102,.25); }

.cd-search { display:flex; align-items:center; gap:11px; padding: 0 16px; height:56px; border:1px solid rgba(236,23,102,.06); background:#fff; border-radius:19px; box-shadow:var(--cd-shadow-soft); margin: 4px 0 18px; }
.cd-search svg { color:var(--cd-pink); width:23px; height:23px; flex:0 0 auto; }
.cd-search input { border:0; outline:0; min-width:0; width:100%; background:transparent; color:var(--cd-text); font-size:14px; }
.cd-search input::placeholder { color:#8f858a; }

.cd-section-head { display:flex; align-items:end; justify-content:space-between; margin: 18px 2px 12px; gap:12px; }
.cd-section-head h2 { margin:0; font-size:20px; letter-spacing:-.02em; }
.cd-section-head button, .cd-section-link { border:0; background:transparent; color:var(--cd-pink); font-size:13px; padding:0; }
.cd-section-head-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap; }

.cd-stories { display:flex; gap:14px; overflow:auto; padding:2px 2px 6px; scrollbar-width:none; }
.cd-stories::-webkit-scrollbar { display:none; }
.cd-story { width:70px; flex:0 0 70px; text-align:center; border:0; background:transparent; padding:0; color:var(--cd-text); display:flex; flex-direction:column; align-items:center; }
.cd-story-ring { display:block; box-sizing:border-box; width:65px; height:65px; min-width:65px; min-height:65px; aspect-ratio:1/1; border-radius:50%; padding:3px; overflow:hidden; background:conic-gradient(from 215deg,#ff8bb8 0deg,#ec1766 105deg,#ff4f91 200deg,#ffb9d2 285deg,#ec1766 360deg); box-shadow:0 8px 20px rgba(236,23,102,.20); }
.cd-story-ring img, .cd-story-fallback { display:block; box-sizing:border-box; width:100%; height:100%; aspect-ratio:1/1; object-fit:cover; border-radius:50%; border:3px solid #fff; background:#ffe6ef; }
.cd-story-name { display:block; margin-top:7px; font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cd-story-empty { flex:1; min-width:270px; padding:14px 16px; border-radius:18px; background:linear-gradient(135deg,#fff,#fff0f6); border:1px dashed #f5b3cc; color:#73666d; font-size:13px; }
.cd-story-empty strong { color:var(--cd-pink); }

.cd-categories { display:grid; grid-template-columns:repeat(4, 1fr); gap:16px 8px; }
.cd-category { border:0; background:transparent; padding:0; text-align:center; color:#1d171b; }
.cd-category-icon { width:64px; height:64px; margin:0 auto 8px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(145deg,#fff,#ffe5ef); color:var(--cd-pink); box-shadow:inset 0 0 0 1px rgba(236,23,102,.05), 0 8px 18px rgba(173,34,87,.07); }
.cd-category-icon svg { width:29px; height:29px; stroke-width:1.7; }
.cd-category-name { display:block; font-size:11.5px; line-height:1.15; }

.cd-company-list { display:flex; flex-direction:column; gap:12px; }
.cd-company-card { display:grid; grid-template-columns:96px minmax(0,1fr) 72px; gap:12px; align-items:center; background:#fff; border:1px solid #f6e3ea; border-radius:22px; padding:10px; box-shadow:var(--cd-shadow-soft); position:relative; overflow:hidden; }
.cd-company-card:active { transform:scale(.995); }
.cd-company-photo { width:96px; height:104px; border-radius:17px; object-fit:cover; background:#ffe7f0; }
.cd-company-main { min-width:0; }
.cd-company-name { margin:0 0 5px; font-weight:800; font-size:15px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cd-company-meta { color:var(--cd-muted); font-size:11.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-bottom:8px; }
.cd-rating { display:flex; align-items:center; gap:5px; font-size:12px; margin:5px 0; }
.cd-rating-star { color:#ffaf1a; }
.cd-location { display:flex; align-items:center; gap:4px; color:#70666c; font-size:11.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cd-location svg { width:14px; height:14px; flex:0 0 auto; }
.cd-card-side { text-align:right; align-self:stretch; display:flex; flex-direction:column; justify-content:center; gap:7px; }
.cd-price-label { font-size:10px; color:var(--cd-pink); background:#ffe8f0; padding:5px 7px; border-radius:999px; display:inline-block; }
.cd-price { color:var(--cd-pink); font-weight:900; font-size:22px; }
.cd-fav { position:absolute; right:13px; top:9px; width:32px; height:32px; border:0; background:rgba(255,255,255,.94); border-radius:50%; color:#2b2528; display:grid; place-items:center; }
.cd-fav.active { color:var(--cd-pink); }
.cd-fav.active svg, .cd-hero-heart.active svg { fill:var(--cd-pink); stroke:var(--cd-pink); }
.cd-fav, .cd-hero-heart { transition: color .16s ease, transform .16s ease; }
.cd-fav.active, .cd-hero-heart.active { transform:scale(1.05); }

.cd-bottom-nav { position:fixed; z-index:30; bottom:0; left:50%; transform:translateX(-50%); width:min(100%,520px); height:calc(76px + env(safe-area-inset-bottom)); padding:8px 14px env(safe-area-inset-bottom); display:grid; grid-template-columns:repeat(6,1fr); background:rgba(255,255,255,.95); backdrop-filter: blur(20px); border-top:1px solid #f4e0e8; box-shadow:0 -12px 30px rgba(77,12,41,.08); }
.cd-nav-item { border:0; background:transparent; color:#746a70; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; font-size:10px; }
.cd-nav-item svg { width:24px; height:24px; }
.cd-nav-item.active { color:var(--cd-pink); font-weight:700; }

.cd-profile-hero { margin: calc(-1 * env(safe-area-inset-top)) -18px 0; height:360px; position:relative; overflow:hidden; background:#e8c1cc; }
.cd-profile-cover { width:100%; height:100%; object-fit:cover; }
.cd-hero-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(20,4,11,.06) 30%,rgba(20,4,11,.68) 100%); }
.cd-back, .cd-hero-heart, .cd-hero-share { position:absolute; top:calc(16px + env(safe-area-inset-top)); width:44px; height:44px; border:0; border-radius:50%; background:rgba(255,255,255,.94); display:grid; place-items:center; color:#241b20; box-shadow:var(--cd-shadow-soft); }
.cd-back { left:18px; }
.cd-hero-heart { right:18px; }
.cd-hero-share { right:70px; }
.cd-hero-copy { position:absolute; left:22px; bottom:36px; color:#fff; font-size:32px; line-height:1.1; font-family:Georgia, 'Times New Roman', serif; font-style:italic; text-shadow:0 3px 18px rgba(0,0,0,.28); max-width:230px; }

.cd-profile-card { margin:-34px -2px 0; position:relative; z-index:2; background:#fff; border-radius:28px 28px 0 0; padding:20px 18px 10px; box-shadow:0 -13px 34px rgba(55,12,31,.08); }
.cd-profile-head { display:grid; grid-template-columns:76px minmax(0,1fr) auto; gap:12px; align-items:center; }
.cd-avatar { width:76px; height:76px; border-radius:50%; border:4px solid #fff; object-fit:cover; box-shadow:0 8px 20px rgba(87,18,47,.15); background:#ffe5ee; }
.cd-profile-title h1 { margin:0 0 6px; font-size:22px; letter-spacing:-.03em; }
.cd-verified { color:var(--cd-pink); font-size:16px; }
.cd-profile-sub { color:#6e646a; font-size:12px; display:flex; flex-wrap:wrap; gap:5px; }
.cd-follow-btn { border:0; border-radius:999px; padding:10px 14px; background:#fff0f5; color:var(--cd-pink); font-weight:800; font-size:12px; }
.cd-follow-btn.following { background:var(--cd-pink); color:#fff; }
.cd-chips { display:flex; gap:8px; overflow:auto; padding:17px 0 4px; scrollbar-width:none; }
.cd-chip { white-space:nowrap; background:#fff0f5; color:#c91558; padding:8px 12px; border-radius:999px; font-size:11.5px; }
.cd-tabs { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid #f0e5e9; margin:14px 0 16px; }
.cd-tabs.cd-tabs-two { grid-template-columns:repeat(2,1fr); }
.cd-tab { border:0; background:transparent; padding:12px 4px; color:#776d72; font-size:12px; position:relative; }
.cd-tab.active { color:var(--cd-pink); font-weight:800; }
.cd-tab.active:after { content:""; height:3px; border-radius:999px; background:var(--cd-pink); position:absolute; left:12px; right:12px; bottom:-1px; }
.cd-about { color:#5f565b; font-size:13px; line-height:1.55; margin-bottom:16px; }
.cd-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:14px 0 20px; }
.cd-benefit { text-align:center; font-size:10.5px; color:#6d6268; }
.cd-benefit svg { display:block; margin:0 auto 7px; color:var(--cd-pink); width:24px; height:24px; }
.cd-service-list { display:flex; flex-direction:column; gap:10px; }
.cd-service-row { display:grid; grid-template-columns:58px minmax(0,1fr) auto; gap:10px; align-items:center; padding:8px 0; }
.cd-service-thumb { width:58px; height:58px; border-radius:14px; object-fit:cover; background:linear-gradient(145deg,#ffe1ec,#ffd3e4); display:grid; place-items:center; color:var(--cd-pink); }
.cd-service-thumb svg { width:25px; height:25px; }
.cd-service-row h3 { margin:0 0 4px; font-size:13px; }
.cd-service-duration { font-size:11px; color:#81767c; }
.cd-service-price { text-align:right; font-weight:800; font-size:13px; }
.cd-outline-btn { margin-top:6px; border:1px solid #ff93b8; background:#fff; color:var(--cd-pink); border-radius:999px; padding:7px 11px; font-size:11px; font-weight:700; }
.cd-main-cta { position:sticky; bottom:86px; width:100%; border:0; border-radius:19px; padding:17px 18px; margin-top:18px; background:linear-gradient(90deg,var(--cd-pink),#fa1e72); color:#fff; font-weight:900; font-size:16px; box-shadow:0 14px 28px rgba(236,23,102,.26); z-index:10; }

.cd-booking-top { display:grid; grid-template-columns:44px 1fr 44px; align-items:center; padding-top:8px; }
.cd-booking-top h1 { margin:0; text-align:center; font-size:18px; }
.cd-service-summary, .cd-booking-summary, .cd-payment-card { background:#fff; border:1px solid #f3e1e8; border-radius:22px; padding:13px; box-shadow:var(--cd-shadow-soft); }
.cd-service-summary { display:grid; grid-template-columns:68px 1fr auto; gap:12px; align-items:center; margin:18px 0 24px; }
.cd-service-summary img, .cd-summary-photo { width:68px; height:68px; border-radius:15px; object-fit:cover; }
.cd-service-summary h2 { margin:0 0 5px; font-size:14px; }
.cd-service-summary p { margin:2px 0; font-size:11px; color:#70656b; }
.cd-book-price { color:var(--cd-pink); font-weight:900; font-size:16px; }
.cd-book-section { margin:22px 0; }
.cd-book-section h2 { margin:0 0 13px; font-size:17px; }
.cd-date-strip { display:flex; gap:9px; overflow:auto; padding-bottom:4px; scrollbar-width:none; }
.cd-date { min-width:54px; border:1px solid #f4dce5; background:#fff; border-radius:16px; padding:9px 6px; text-align:center; color:#554b50; }
.cd-date small { display:block; font-size:10px; color:#8c8186; margin-bottom:5px; }
.cd-date strong { font-size:17px; }
.cd-date.active { background:linear-gradient(180deg,#f22a73,#e91460); color:#fff; border-color:transparent; box-shadow:0 10px 20px rgba(236,23,102,.2); }
.cd-date.active small { color:#fff; }
.cd-time-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }
.cd-time { border:1px solid #f2dce5; background:#fff; color:#5b5056; border-radius:13px; padding:11px 3px; font-size:12px; }
.cd-time.active { background:var(--cd-pink); color:#fff; border-color:var(--cd-pink); box-shadow:0 8px 18px rgba(236,23,102,.2); }
.cd-time:disabled { opacity:.38; cursor:not-allowed; }
.cd-booking-summary { padding:16px; }
.cd-summary-line { display:flex; gap:10px; align-items:flex-start; margin:11px 0; color:#595056; font-size:12px; }
.cd-summary-line svg { width:18px; height:18px; color:#746970; flex:0 0 auto; }
.cd-payment-card { display:flex; align-items:center; gap:12px; color:#61565c; }
.cd-payment-card svg { width:24px; color:#272127; }
.cd-payment-card strong { display:block; color:#2d2429; font-size:13px; }
.cd-payment-card span { font-size:11px; }
.cd-confirm { width:100%; border:0; border-radius:19px; padding:17px; background:linear-gradient(90deg,#ec1766,#ff2f7b); color:#fff; font-size:15px; font-weight:900; box-shadow:0 14px 28px rgba(236,23,102,.25); }
.cd-confirm:disabled { opacity:.45; box-shadow:none; }

.cd-empty { text-align:center; padding:44px 22px; color:#766c71; }
.cd-empty svg { width:44px; height:44px; color:#f078a5; margin-bottom:10px; }
.cd-toast { position:fixed; z-index:100; left:50%; bottom:105px; transform:translate(-50%,20px); width:min(calc(100% - 36px),430px); padding:13px 16px; background:#2b2227; color:#fff; border-radius:14px; text-align:center; font-size:12px; opacity:0; pointer-events:none; transition:.25s ease; box-shadow:0 16px 35px rgba(0,0,0,.2); }
.cd-toast.show { opacity:1; transform:translate(-50%,0); }
.cd-skeleton { background:linear-gradient(90deg,#f9eaf0 25%,#fff4f7 40%,#f9eaf0 60%); background-size:300% 100%; animation: shimmer 1.2s infinite; border-radius:14px; }
@keyframes shimmer { from{background-position:100% 0} to{background-position:0 0} }

.cd-install { position:fixed; z-index:50; left:50%; bottom:95px; transform:translateX(-50%); width:min(calc(100% - 28px),490px); border-radius:20px; padding:13px; display:flex; align-items:center; gap:12px; background:#fff; border:1px solid #f4dce5; box-shadow:0 18px 40px rgba(81,14,43,.18); }
.cd-install img { width:48px; height:48px; border-radius:12px; }
.cd-install-copy { flex:1; min-width:0; }
.cd-install-copy strong { display:block; font-size:13px; }
.cd-install-copy span { color:#776c72; font-size:11px; }
.cd-install button { border:0; border-radius:12px; background:var(--cd-pink); color:#fff; padding:9px 12px; font-size:11px; font-weight:800; }
.cd-install-close { background:transparent !important; color:#777 !important; padding:6px !important; }


/* ===== v0.1.1 visual refinement ===== */
.cd-brand,
.cd-desktop-brand,
.cd-loading-screen img {
  mix-blend-mode: normal;
  filter: drop-shadow(0 4px 9px rgba(171, 13, 76, .12));
}

.cd-brand { width:min(68vw,272px); height:92px; object-fit:contain; object-position:center; }
.cd-loading-screen img { border-radius:0; width:230px; }

.cd-story-prompt {
  min-width: 215px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:3px;
  color:var(--cd-muted);
  font-size:11.5px;
  line-height:1.35;
  padding-right:8px;
}
.cd-story-prompt strong { color:var(--cd-pink); font-size:12.5px; }
.cd-story-premium-ring { display:grid; place-items:center; background:linear-gradient(145deg,#fff7fa,#ffdce9); color:var(--cd-pink); }
.cd-story-premium-ring svg { width:26px; height:26px; }

.cd-company-card {
  grid-template-columns:112px minmax(0,1fr);
  gap:13px;
  align-items:stretch;
  padding:10px;
}
.cd-company-photo-wrap { position:relative; min-width:0; }
.cd-company-photo { width:112px; height:126px; border-radius:17px; object-fit:cover; object-position:center; }
.cd-card-badge {
  position:absolute; left:7px; top:7px;
  color:#fff; background:linear-gradient(135deg,var(--cd-pink),var(--cd-pink-2));
  border-radius:999px; padding:4px 7px; font-size:9px; font-weight:800;
  box-shadow:0 5px 12px rgba(236,23,102,.2);
}
.cd-company-main { padding:5px 2px 2px 0; display:flex; flex-direction:column; min-width:0; }
.cd-company-name { font-size:16px; white-space:normal; overflow:visible; text-overflow:clip; line-height:1.12; padding-right:34px; }
.cd-company-meta { font-size:11.5px; min-height:16px; }
.cd-card-price-row { margin-top:auto; display:flex; align-items:flex-end; justify-content:flex-end; gap:7px; }
.cd-price-label { padding:4px 7px; font-size:9.5px; }
.cd-price { font-size:22px; line-height:1; }
.cd-fav { right:13px; top:12px; border:1px solid #f2dde5; }

.cd-desktop-header,
.cd-desktop-hero { display:none; }

@media (min-width: 900px) {
  html, body { background:#fff7fa; }
  .cd-pwa { min-height:100vh; background:linear-gradient(180deg,#fff7fa 0,#fff 45%,#fff7fa 100%); padding:0; }
  .cd-app-shell {
    width:100%; max-width:none; min-height:100vh; margin:0; border-radius:0; box-shadow:none; overflow:visible;
    background:transparent;
  }
  .cd-screen {
    width:min(100%,1440px); margin:0 auto; min-height:100vh;
    padding:0 36px 64px;
  }
  .cd-home-screen { padding-top:0; }
  .cd-mobile-header { display:none; }
  .cd-bottom-nav { display:none; }

  .cd-desktop-header {
    display:grid;
    grid-template-columns:210px minmax(360px,1fr) auto;
    grid-template-areas:"brand search actions" "menu menu menu";
    align-items:center;
    column-gap:28px;
    row-gap:10px;
    padding:14px 0 0;
    border-bottom:1px solid rgba(236,23,102,.08);
    margin-bottom:22px;
  }
  .cd-desktop-brand-wrap { grid-area:brand; display:flex; align-items:center; }
  .cd-desktop-brand-lockup { display:flex; flex-direction:column; align-items:flex-start; width:220px; }
  .cd-desktop-brand { width:212px; height:72px; object-fit:contain; object-position:left center; filter:drop-shadow(0 4px 8px rgba(139,12,62,.14)); }
  .cd-desktop-brand-lockup .cd-brand-tagline { margin-top:-6px; margin-left:27px; font-size:7px; letter-spacing:.15em; }
  .cd-desktop-search {
    grid-area:search; height:48px; display:flex; align-items:center; gap:10px;
    padding:0 15px; border:1px solid #f3dfe7; background:#fff; border-radius:16px;
    box-shadow:0 8px 24px rgba(113,25,59,.06);
  }
  .cd-desktop-search svg { width:20px; color:var(--cd-pink); }
  .cd-desktop-search input { flex:1; border:0; outline:0; background:transparent; min-width:0; }
  .cd-desktop-actions { grid-area:actions; display:flex; align-items:center; gap:8px; }
  .cd-desktop-actions button {
    border:0; background:transparent; color:#4e454a; display:flex; align-items:center; gap:6px;
    padding:10px 9px; border-radius:12px; font-size:12px; white-space:nowrap;
  }
  .cd-desktop-actions button:hover,.cd-desktop-actions button.active { background:#fff0f5; color:var(--cd-pink); }
  .cd-desktop-actions svg { width:19px; }
  .cd-desktop-menu {
    grid-area:menu; display:flex; justify-content:center; gap:34px; padding:2px 0 13px;
  }
  .cd-desktop-menu button {
    border:0; background:transparent; color:#3d3439; padding:8px 3px; font-size:13px; position:relative;
  }
  .cd-desktop-menu button.active { color:var(--cd-pink); font-weight:800; }
  .cd-desktop-menu button.active:after { content:""; position:absolute; height:3px; left:0; right:0; bottom:-4px; border-radius:999px; background:var(--cd-pink); }

  .cd-desktop-hero {
    display:grid; grid-template-columns:1.1fr .9fr; min-height:310px; border-radius:28px; overflow:hidden;
    background:radial-gradient(circle at 78% 20%,rgba(255,255,255,.72),transparent 25%),linear-gradient(120deg,#ffd9e7,#ffb9d2 52%,#ff8eb7);
    box-shadow:var(--cd-shadow); margin:24px 0 28px; position:relative;
  }
  .cd-desktop-hero-copy { padding:46px 54px; position:relative; z-index:2; }
  .cd-eyebrow { font-size:11px; font-weight:900; letter-spacing:.18em; color:#a71a50; }
  .cd-desktop-hero h1 { margin:8px 0 12px; font-size:44px; line-height:1.02; letter-spacing:-.04em; }
  .cd-desktop-hero h1 strong { color:var(--cd-pink); }
  .cd-desktop-hero p { max-width:520px; margin:0 0 23px; color:#5f4d56; font-size:16px; line-height:1.55; }
  .cd-hero-cta { border:0; border-radius:999px; color:#fff; background:linear-gradient(135deg,var(--cd-pink),var(--cd-pink-2)); padding:13px 19px; font-weight:800; display:inline-flex; align-items:center; gap:8px; box-shadow:0 12px 28px rgba(236,23,102,.22); }
  .cd-hero-cta svg { width:18px; }
  .cd-desktop-hero-art { position:relative; display:grid; place-items:center; min-height:310px; overflow:hidden; }
  .cd-desktop-hero-art img { width:min(440px,85%); position:relative; z-index:2; filter:drop-shadow(0 16px 24px rgba(143,18,70,.19)); }
  .cd-hero-orb { position:absolute; border-radius:50%; background:rgba(255,255,255,.28); border:1px solid rgba(255,255,255,.45); }
  .cd-hero-orb-1 { width:170px;height:170px;right:10%;top:8%; }
  .cd-hero-orb-2 { width:88px;height:88px;left:8%;bottom:8%; }
  .cd-hero-orb-3 { width:44px;height:44px;right:42%;bottom:15%; }

  .cd-section-head { margin:26px 2px 14px; }
  .cd-section-head h2 { font-size:24px; }
  .cd-stories { gap:18px; padding-bottom:10px; }
  .cd-story { width:88px; flex-basis:88px; }
  .cd-story-ring { width:78px; height:78px; margin:0 auto; }
  .cd-story-name { font-size:12px; }
  .cd-story-prompt { min-width:280px; font-size:12px; }

  .cd-categories { grid-template-columns:repeat(10,minmax(78px,1fr)); gap:18px 12px; }
  .cd-category-icon { width:72px; height:72px; }
  .cd-category-name { font-size:12px; }

  .cd-company-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
  .cd-company-card { display:block; padding:0 0 14px; border-radius:20px; overflow:hidden; min-width:0; }
  .cd-company-photo-wrap { width:100%; height:176px; }
  .cd-company-photo { width:100%; height:100%; border-radius:0; object-fit:cover; }
  .cd-card-badge { left:12px; top:12px; font-size:10px; }
  .cd-company-main { padding:14px 14px 0; min-height:150px; }
  .cd-company-name { font-size:17px; padding-right:32px; }
  .cd-company-meta { font-size:12px; }
  .cd-rating,.cd-location { font-size:12px; }
  .cd-card-price-row { margin-top:12px; }
  .cd-price { font-size:24px; }
  .cd-fav { right:12px; top:12px; }

  .cd-profile-hero { margin:0 auto; max-width:900px; height:430px; border-radius:0 0 26px 26px; }
  .cd-profile-card { max-width:900px; margin:-34px auto 0; border-radius:28px; }
  .cd-booking-top,.cd-service-summary,.cd-book-section,.cd-confirm { max-width:860px; margin-left:auto; margin-right:auto; }
  .cd-booking-top { padding-top:24px; }
  .cd-confirm { display:block; }
}

@media (min-width: 1180px) {
  .cd-screen { padding-left:54px; padding-right:54px; }
  .cd-desktop-header { grid-template-columns:230px minmax(440px,1fr) auto; }
}
.cd-company-photo-placeholder { background:linear-gradient(145deg,#fff6fa,#ffdce9); }
img.cd-company-photo-placeholder { object-fit:contain; padding:14px; }
@media (min-width:900px) { img.cd-company-photo-placeholder { padding:26px; } }

/* ===== v0.1.2 brand + cache-visible refresh ===== */
@media (max-width: 899px) {
  .cd-mobile-header { padding-top: 2px; }
  .cd-topbar { min-height: 124px; }
  .cd-search { margin-top: 0; }
}

/* ===== v0.1.3 logo placement + global text contrast ===== */
:root {
  --cd-text: #151116;
  --cd-muted: #514a4f;
}

body.click-divas-pwa-page,
.cd-pwa,
.cd-screen { color: var(--cd-text); }

/* Marca do mockup: script + coroa, sem caixa de fundo. */
.cd-brand-lockup {
  width: min(76vw, 310px);
  min-height: 126px;
  gap: 4px;
}
.cd-brand {
  display: block;
  width: min(72vw, 292px);
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 4px 8px rgba(139,12,62,.16));
}
.cd-brand-tagline {
  margin-top: 0;
  font-size: 9px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .16em;
  color: #2f292d;
  white-space: nowrap;
}
.cd-topbar {
  min-height: 154px;
  padding-top: 8px;
  padding-bottom: 8px;
}
.cd-topbar .cd-icon-btn { top: 38px; }

/* Texto secundário mais escuro sem aumentar peso. */
.cd-search input::placeholder,
.cd-company-meta,
.cd-location,
.cd-nav-item,
.cd-profile-sub,
.cd-tab,
.cd-about,
.cd-benefit,
.cd-service-duration,
.cd-service-summary p,
.cd-date,
.cd-time,
.cd-summary-line,
.cd-payment-card,
.cd-empty,
.cd-install-copy span,
.cd-story-prompt,
.cd-story-empty,
.cd-date small {
  color: #514a4f;
}
.cd-story-name,
.cd-category-name,
.cd-company-name,
.cd-section-head h2,
.cd-profile-title h1,
.cd-service-name,
.cd-booking-top h1,
.cd-book-section h2,
.cd-service-summary h2 {
  color: #171318;
}
.cd-desktop-search input::placeholder { color:#6f666b; }
.cd-desktop-actions button { color:#332d31; }
.cd-desktop-menu button { color:#2f292d; }
.cd-desktop-hero p { color:#40373c; }

/* O CTA do perfil não deixa mais o SVG ocupar o botão inteiro. */
.cd-main-cta {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.cd-main-cta svg { width:20px; height:20px; flex:0 0 auto; }

@media (max-width: 899px) {
  .cd-mobile-header { padding-top: 0; }
  .cd-search { margin-top: 2px; }
}

@media (min-width: 900px) {
  .cd-desktop-brand-wrap { overflow: visible; }
  .cd-desktop-brand-lockup {
    width: 220px;
    align-items: center;
    overflow: visible;
  }
  .cd-desktop-brand {
    display:block;
    width: 205px;
    height: auto;
    max-height: none;
    object-fit: contain;
    object-position: center;
    overflow: visible;
    filter: drop-shadow(0 4px 8px rgba(139,12,62,.15));
  }
  .cd-desktop-brand-lockup .cd-brand-tagline {
    margin: 1px 0 0;
    font-size: 7px;
    line-height:1.15;
    letter-spacing: .15em;
    color:#2f292d;
  }
  .cd-desktop-header { overflow: visible; }
  .cd-desktop-hero-art { overflow: hidden; padding: 18px 28px; }
  .cd-desktop-hero-art img {
    display:block;
    width: min(420px, 92%);
    height:auto;
    max-height: 230px;
    object-fit: contain;
    object-position: center;
  }
}

/* ===== v0.1.4 official brand lockup: same logo on mobile + desktop ===== */
:root {
  --cd-text: #141116;
  --cd-muted: #494248;
}

/* One official transparent wordmark is used everywhere. The asset itself has
   transparent safety padding so the first C/crown/shadow never gets clipped. */
.cd-brand,
.cd-desktop-brand,
.cd-desktop-hero-art img {
  object-fit: contain;
  object-position: center;
  overflow: visible;
}

/* Mobile: same wordmark used on desktop, centered exactly as in the approved mockup. */
@media (max-width: 899px) {
  .cd-topbar {
    min-height: 140px;
    padding: 4px 2px 6px;
  }
  .cd-brand-lockup {
    width: min(80vw, 320px);
    min-height: 128px;
    gap: 0;
    overflow: visible;
  }
  .cd-brand {
    width: min(76vw, 300px);
    height: auto;
    max-height: 112px;
    display:block;
    filter: drop-shadow(0 4px 8px rgba(139,12,62,.16));
  }
  .cd-brand-tagline {
    margin-top: -2px;
    font-size: 9px;
    line-height: 1.15;
    letter-spacing: .16em;
    color: #292428;
  }
  .cd-topbar .cd-icon-btn {
    top: 30px;
    right: 2px;
  }
}

/* Desktop: reserve enough space and never clip the left edge of the C. */
@media (min-width: 900px) {
  .cd-desktop-header {
    grid-template-columns: 238px minmax(360px,1fr) auto;
  }
  .cd-desktop-brand-wrap,
  .cd-desktop-brand-lockup {
    overflow: visible !important;
  }
  .cd-desktop-brand-wrap {
    padding-left: 4px;
  }
  .cd-desktop-brand-lockup {
    width: 230px;
    align-items: center;
  }
  .cd-desktop-brand {
    width: 224px;
    height: auto;
    max-height: 88px;
    display:block;
    padding:0;
    filter: drop-shadow(0 4px 8px rgba(139,12,62,.15));
  }
  .cd-desktop-brand-lockup .cd-brand-tagline {
    margin: -3px 0 0;
    font-size: 7.5px;
    line-height:1.15;
    letter-spacing:.15em;
    color:#292428;
  }
  .cd-desktop-header { overflow: visible !important; }
  .cd-desktop-hero-art { overflow: hidden; }
  .cd-desktop-hero-art img {
    width: min(430px, 88%);
    max-height: 230px;
  }
}

@media (min-width:1180px) {
  .cd-desktop-header { grid-template-columns: 250px minmax(440px,1fr) auto; }
}

/* Slightly darker secondary typography across the whole interface, without
   making it heavier/bolder. */
.cd-search input::placeholder,
.cd-desktop-search input::placeholder,
.cd-company-meta,
.cd-location,
.cd-nav-item,
.cd-profile-sub,
.cd-tab,
.cd-about,
.cd-benefit,
.cd-service-duration,
.cd-service-summary p,
.cd-date,
.cd-time,
.cd-summary-line,
.cd-payment-card,
.cd-empty,
.cd-install-copy span,
.cd-story-prompt,
.cd-story-empty,
.cd-date small {
  color:#494248;
}
.cd-desktop-actions button,
.cd-desktop-menu button { color:#2e292d; }
.cd-desktop-hero p { color:#393338; }

/* ===== v0.1.5 exact official Click Divas crown logo ===== */
/* The official logo asset already contains the tagline. Do not render a second tagline. */
.cd-brand-tagline { display:none !important; }

@media (max-width: 899px) {
  .cd-topbar {
    min-height: 126px;
    padding: 8px 0 4px;
    align-items: center;
  }
  .cd-brand-lockup {
    width: min(84vw, 340px);
    min-height: 116px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:visible;
  }
  .cd-brand {
    width: min(82vw, 330px) !important;
    height: auto !important;
    max-height: 116px !important;
    object-fit: contain !important;
    object-position: center !important;
    display:block;
    filter: drop-shadow(0 5px 9px rgba(139,12,62,.16));
  }
  .cd-topbar .cd-icon-btn {
    top: 24px;
    right: 2px;
  }
}

@media (min-width: 900px) {
  .cd-desktop-brand-wrap { padding-left: 10px; }
  .cd-desktop-brand-lockup {
    width: 238px;
    min-width: 238px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    overflow:visible !important;
  }
  .cd-desktop-brand {
    width: 224px !important;
    height:auto !important;
    max-height: 86px !important;
    object-fit:contain !important;
    object-position:left center !important;
    display:block;
    filter: drop-shadow(0 4px 8px rgba(139,12,62,.14));
  }
  .cd-desktop-header {
    grid-template-columns: 258px minmax(360px,1fr) auto !important;
    overflow:visible !important;
  }
  .cd-desktop-hero-art img {
    width:min(440px, 90%) !important;
    height:auto !important;
    max-height:230px !important;
    object-fit:contain !important;
  }
}

/* ===== v0.1.6 account, auth and appointments ===== */
.cd-page-hero { margin:18px 0 16px; padding:18px; border-radius:24px; background:linear-gradient(135deg,#fff4f8,#ffe3ee); border:1px solid #f7dce6; }
.cd-page-hero > div { display:flex; align-items:center; gap:14px; }
.cd-page-hero svg { width:34px; height:34px; color:#ec1766; stroke-width:1.8; }
.cd-page-hero span { font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#8b6877; font-weight:700; }
.cd-page-hero h1 { margin:2px 0 2px; font-size:28px; color:#221d20; }
.cd-page-hero p { margin:0; color:#554d52; font-size:13px; }
.cd-account-list { display:grid; gap:12px; padding-bottom:100px; }
.cd-appointment-card { display:grid; grid-template-columns:92px minmax(0,1fr); gap:14px; padding:12px; border:1px solid #f0dce4; border-radius:20px; background:#fff; box-shadow:0 10px 26px rgba(94,22,53,.06); }
.cd-appointment-card > img { width:92px; height:112px; object-fit:cover; border-radius:15px; background:#fff3f7; }
.cd-appointment-main { min-width:0; }
.cd-appointment-top { display:flex; justify-content:space-between; gap:8px; align-items:center; margin-bottom:6px; }
.cd-status { display:inline-flex; padding:5px 9px; border-radius:999px; background:#fff1f6; color:#d7135c; font-size:10px; font-weight:700; }
.cd-status-cancelled { background:#f1edef; color:#73696e; }
.cd-status-completed { background:#eef8f1; color:#35764a; }
.cd-code { color:#7b7076; font-size:10px; }
.cd-appointment-main h3 { margin:0 0 2px; color:#251f23; font-size:16px; }
.cd-appointment-company { margin:0 0 8px; color:#625a5f; font-size:12px; }
.cd-appointment-meta { display:flex; align-items:center; gap:6px; color:#554d52; font-size:11px; margin-top:5px; }
.cd-appointment-meta svg { width:15px; height:15px; color:#ec1766; }
.cd-appointment-bottom { display:flex; justify-content:space-between; align-items:center; margin-top:10px; }
.cd-appointment-bottom strong { color:#ec1766; font-size:16px; }
.cd-link-danger { border:0; background:transparent; color:#a33d61; font-size:11px; text-decoration:underline; cursor:pointer; }
.cd-account-empty { min-height:240px; }

.cd-profile-page { padding-bottom:110px; }
.cd-user-card { display:grid; grid-template-columns:72px minmax(0,1fr); gap:14px; align-items:center; margin:18px 0; padding:18px; border:1px solid #f0dce4; border-radius:24px; background:linear-gradient(145deg,#fff,#fff5f8); }
.cd-user-card img { width:72px; height:72px; border-radius:50%; object-fit:cover; background:#fde9f1; }
.cd-user-card span { color:#a65c77; font-size:10px; letter-spacing:.08em; text-transform:uppercase; font-weight:700; }
.cd-user-card h1 { margin:2px 0 3px; color:#201b1e; font-size:24px; }
.cd-user-card p { margin:0; color:#5b5358; font-size:12px; }
.cd-account-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:22px; }
.cd-account-stats button { border:1px solid #f0dce4; border-radius:18px; background:#fff; padding:14px 8px; cursor:pointer; }
.cd-account-stats strong { display:block; color:#ec1766; font-size:22px; }
.cd-account-stats span { display:block; margin-top:3px; color:#544c51; font-size:10px; }
.cd-logout { width:100%; margin:24px 0 10px; border:1px solid #efc8d7; border-radius:16px; padding:13px; background:#fff; color:#8a3154; font-weight:700; cursor:pointer; }

.cd-auth-wrap { min-height:calc(100vh - 240px); display:flex; align-items:center; justify-content:center; padding:22px 0 110px; }
.cd-auth-card { width:min(100%,480px); border:1px solid #f0dce4; border-radius:28px; background:#fff; padding:24px; box-shadow:0 20px 50px rgba(92,20,52,.09); }
.cd-auth-icon { width:44px; height:44px; color:#ec1766; margin-bottom:12px; }
.cd-auth-kicker { display:block; color:#ec1766; font-size:10px; letter-spacing:.14em; font-weight:800; }
.cd-auth-card h1 { margin:6px 0 8px; color:#1f1a1d; font-size:28px; }
.cd-auth-card > p { margin:0 0 20px; color:#554e52; font-size:13px; line-height:1.5; }
.cd-auth-card form { display:grid; gap:13px; }
.cd-auth-card label { display:grid; gap:6px; color:#312b2f; font-size:11px; font-weight:700; }
.cd-auth-card input { width:100%; border:1px solid #ead7df; border-radius:14px; padding:13px 14px; background:#fffafb; color:#221d20; outline:none; font:inherit; font-weight:400; }
.cd-auth-card input:focus { border-color:#ec1766; box-shadow:0 0 0 3px rgba(236,23,102,.08); }
.cd-auth-switch { width:100%; margin-top:14px; border:0; background:transparent; color:#c6165a; font-size:12px; cursor:pointer; }

@media (min-width:900px) {
  .cd-page-hero, .cd-profile-page, .cd-auth-wrap, .cd-account-list { max-width:980px; margin-left:auto; margin-right:auto; }
  .cd-account-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cd-appointment-card { grid-template-columns:110px minmax(0,1fr); }
  .cd-appointment-card > img { width:110px; height:132px; }
  .cd-user-card { grid-template-columns:88px minmax(0,1fr); padding:22px; }
  .cd-user-card img { width:88px; height:88px; }
  .cd-account-stats { max-width:620px; }
}


/* ===== v0.1.7 e-mail verification + password visibility ===== */
.cd-password-field { position:relative; width:100%; }
.cd-password-field input { padding-right:50px !important; }
.cd-password-toggle {
  position:absolute; right:8px; top:50%; transform:translateY(-50%);
  width:38px; height:38px; border:0; border-radius:50%; background:transparent;
  color:#62585e; display:grid; place-items:center; cursor:pointer;
}
.cd-password-toggle:hover,.cd-password-toggle:focus-visible { background:#fff0f5; color:#d7155f; outline:none; }
.cd-password-toggle svg { width:21px; height:21px; stroke-width:1.8; }
.cd-verify-card strong { color:#2b2428; font-weight:700; overflow-wrap:anywhere; }
.cd-code-input { text-align:center; letter-spacing:.38em; font-size:24px !important; font-weight:700 !important; padding-left:calc(14px + .38em) !important; }
.cd-auth-notice { margin:-4px 0 16px; border:1px solid #f4d4e0; border-radius:14px; background:#fff5f8; color:#7a4058; padding:11px 12px; font-size:11px; line-height:1.45; }
.cd-auth-back { width:100%; border:0; background:transparent; color:#6d6268; font-size:11px; cursor:pointer; padding:7px 0 0; }
.cd-verify-help { margin:10px 0 0 !important; text-align:center; color:#71676c !important; font-size:10.5px !important; }

.cd-story-following{display:block;margin-top:2px;font-size:9px;color:var(--cd-pink);font-weight:700}.cd-story-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:8px 0 110px}.cd-story-directory-card{border:0;background:#fff;border-radius:20px;padding:16px 8px;box-shadow:0 10px 25px rgba(116,55,78,.07);color:var(--cd-text);text-align:center}.cd-story-directory-card .cd-story-ring{display:block;margin:0 auto 9px}.cd-story-directory-card strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cd-story-directory-card>span:last-child{display:block;margin-top:4px;font-size:10px;color:var(--cd-pink)}
.cd-story-viewer{position:fixed;inset:0;z-index:220;background:#11090d;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.cd-story-viewer-shell{position:relative;width:min(100%,520px);height:100%;background:#1a0d13;overflow:hidden;--cd-story-duration:15s}.cd-story-viewer-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-user-drag:none}.cd-story-progress{position:absolute;z-index:6;top:calc(12px + env(safe-area-inset-top));left:14px;right:14px;display:flex;gap:4px}.cd-story-progress span{height:3px;flex:1;background:rgba(255,255,255,.35);border-radius:999px;overflow:hidden}.cd-story-progress span i{display:block;height:100%;width:0;background:#fff}.cd-story-progress span.done i{width:100%}.cd-story-progress span.active i{animation:cdStoryProgress var(--cd-story-duration) linear forwards}.cd-story-viewer.is-paused .cd-story-progress span.active i{animation-play-state:paused}@keyframes cdStoryProgress{from{width:0}to{width:100%}}.cd-story-viewer-top{position:absolute;z-index:7;top:calc(24px + env(safe-area-inset-top));left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;color:white}.cd-story-viewer-company{display:flex;align-items:center;gap:10px}.cd-story-viewer-company img{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid white;background:#fff}.cd-story-viewer-company strong,.cd-story-viewer-company span{display:block}.cd-story-viewer-company strong{font-size:14px}.cd-story-viewer-company span{font-size:10px;opacity:.82;margin-top:2px}.cd-story-viewer-top>button{width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.34);color:#fff;display:grid;place-items:center}.cd-story-viewer-top svg{width:22px;height:22px}.cd-story-viewer-bottom{position:absolute;z-index:7;left:0;right:0;bottom:0;padding:90px 20px calc(24px + env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(0,0,0,.78));color:#fff}.cd-story-viewer-bottom p{min-height:18px;margin:0 0 12px;font-size:14px;line-height:1.45}.cd-story-viewer-bottom button{width:100%;border:0;border-radius:16px;background:var(--cd-pink);color:#fff;padding:14px;font-weight:800}.cd-story-tap{position:absolute;z-index:5;top:90px;bottom:120px;width:38%;border:0;background:transparent;-webkit-touch-callout:none;touch-action:manipulation}.cd-story-tap-prev{left:0}.cd-story-tap-next{right:0}@media(min-width:900px){.cd-story-directory{grid-template-columns:repeat(7,minmax(0,1fr));padding-bottom:40px}.cd-story-viewer-shell{height:min(92vh,900px);border-radius:22px}.cd-story-viewer{padding:4vh 0}}

/* ===== v0.3.0 Stories vistos + contraste reforçado ===== */
:root {
  --cd-text: #0b090b;
  --cd-muted: #282428;
}

/* Story visto: remove completamente o aro rosa. */
.cd-story-ring.viewed {
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.cd-story-ring.viewed img,
.cd-story-ring.viewed .cd-story-fallback {
  border-color: transparent !important;
}
.cd-story.viewed .cd-story-name,
.cd-story-directory-card.viewed strong {
  color:#2f2b2e;
}
.cd-story-directory-card.viewed { opacity:.88; }

/* Mais contraste global, sem aumentar o peso das fontes. */
.cd-search input::placeholder,
.cd-desktop-search input::placeholder,
.cd-company-meta,
.cd-location,
.cd-nav-item,
.cd-profile-sub,
.cd-tab,
.cd-about,
.cd-benefit,
.cd-service-duration,
.cd-service-summary p,
.cd-date,
.cd-time,
.cd-summary-line,
.cd-payment-card,
.cd-empty,
.cd-install-copy span,
.cd-story-prompt,
.cd-story-empty,
.cd-date small,
.cd-page-hero p,
.cd-appointment-company,
.cd-appointment-meta,
.cd-user-card p,
.cd-account-stats span,
.cd-auth-card > p {
  color:#282428 !important;
}
.cd-section-head h2,
.cd-story-name,
.cd-category-name,
.cd-company-name,
.cd-profile-title h1,
.cd-service-name,
.cd-booking-top h1,
.cd-book-section h2,
.cd-service-summary h2,
.cd-page-hero h1,
.cd-appointment-main h3,
.cd-user-card h1 {
  color:#0b090b !important;
}
.cd-desktop-actions button,
.cd-desktop-menu button { color:#1d1a1d !important; }
.cd-desktop-hero p { color:#282428 !important; }

/* ===== v0.3.1 Avaliações ===== */
.cd-reviews-head { margin-top:26px; }
.cd-reviews-head span { color:#4a4247; font-size:11px; }
.cd-review-list { display:grid; gap:10px; margin-bottom:20px; }
.cd-review-card { border:1px solid #f0dce4; border-radius:18px; background:#fff; padding:14px; box-shadow:0 8px 22px rgba(102,35,61,.05); }
.cd-review-card-top { display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:10px; align-items:center; }
.cd-review-avatar { width:42px; height:42px; border-radius:50%; display:grid; place-items:center; background:#fde8f0; color:#c41659; font-weight:800; }
.cd-review-card strong { display:block; color:#121012; font-size:12px; }
.cd-review-card time { color:#4f474c; font-size:9.5px; white-space:nowrap; }
.cd-review-card p { margin:10px 0 0; color:#292529; font-size:12px; line-height:1.5; }
.cd-review-stars { display:inline-flex; gap:1px; color:#d8ccd1; letter-spacing:.02em; }
.cd-review-stars span.filled { color:#ec1766; }
.cd-review-stars.compact { font-size:12px; }
.cd-review-empty { min-height:100px; }
.cd-review-empty svg { width:28px; height:28px; color:#ec1766; }
.cd-appointment-actions { display:flex; align-items:center; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.cd-review-action { border:0; border-radius:999px; background:#ec1766; color:#fff; padding:8px 13px; font-size:10.5px; font-weight:800; cursor:pointer; }
.cd-reviewed-badge { color:#b41150; background:#fff0f5; border:1px solid #f2cad9; border-radius:999px; padding:7px 10px; font-size:10px; font-weight:800; }
.cd-review-modal { position:fixed; inset:0; z-index:260; display:grid; place-items:center; padding:18px; background:rgba(20,8,14,.58); backdrop-filter:blur(4px); }
.cd-review-dialog { position:relative; width:min(100%,460px); border-radius:26px; background:#fff; padding:24px; box-shadow:0 28px 80px rgba(47,12,28,.28); }
.cd-review-dialog h2 { margin:5px 0 6px; color:#111; font-size:24px; }
.cd-review-dialog > p { margin:0 0 16px; color:#403a3e; font-size:12px; }
.cd-review-close { position:absolute; top:14px; right:14px; width:38px; height:38px; border:0; border-radius:50%; background:#fff1f6; color:#8c3558; display:grid; place-items:center; cursor:pointer; }
.cd-review-close svg { width:19px; height:19px; }
.cd-review-picker { display:flex; justify-content:center; gap:7px; margin:14px 0 18px; }
.cd-review-picker button { border:0; background:transparent; color:#d8ccd1; font-size:38px; line-height:1; cursor:pointer; padding:2px; transition:transform .12s ease,color .12s ease; }
.cd-review-picker button.active { color:#ec1766; transform:scale(1.06); }
.cd-review-dialog textarea { width:100%; resize:vertical; min-height:96px; border:1px solid #e9d4dd; border-radius:15px; padding:12px 13px; color:#171417; background:#fffafb; outline:none; font:inherit; }
.cd-review-dialog textarea:focus { border-color:#ec1766; box-shadow:0 0 0 3px rgba(236,23,102,.08); }
.cd-review-dialog .cd-confirm { margin-top:13px; width:100%; }
@media(min-width:900px){.cd-review-list{grid-template-columns:repeat(2,minmax(0,1fr));}.cd-review-card{padding:16px;}}


/* ===== v0.3.2 notifications ===== */
.cd-notifications-page { padding:18px 0 96px; }
.cd-notifications-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:18px; }
.cd-notifications-heading > div > span { color:var(--cd-pink); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.cd-notifications-heading h1 { margin:3px 0 4px; font-size:26px; letter-spacing:-.03em; color:#241d21; }
.cd-notifications-heading p { margin:0; color:#5f565b; font-size:12.5px; }
.cd-notification-read-all { border:0; background:#fff0f5; color:var(--cd-pink); border-radius:999px; padding:9px 12px; font-size:11px; font-weight:800; white-space:nowrap; }
.cd-notification-read-all:disabled { opacity:.55; }
.cd-notification-list { display:flex; flex-direction:column; gap:10px; }
.cd-notification-card { width:100%; border:1px solid #f0e2e8; background:#fff; border-radius:18px; padding:13px 14px; display:grid; grid-template-columns:42px minmax(0,1fr) 9px; gap:11px; align-items:center; text-align:left; box-shadow:var(--cd-shadow-soft); color:#2d2529; }
.cd-notification-card.unread { background:#fff7fa; border-color:#f8c8d9; }
.cd-notification-icon { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; background:#ffe8f0; color:var(--cd-pink); }
.cd-notification-icon svg { width:21px; height:21px; }
.cd-notification-copy { min-width:0; display:flex; flex-direction:column; gap:3px; }
.cd-notification-copy strong { font-size:13.5px; color:#241d21; }
.cd-notification-copy > span { color:#544b50; font-size:12px; line-height:1.38; }
.cd-notification-copy small { color:#80757b; font-size:10.5px; margin-top:2px; }
.cd-notification-unread-dot { width:8px; height:8px; border-radius:50%; background:var(--cd-pink); }

@media (min-width: 821px) {
  .cd-notifications-page { max-width:920px; margin:0 auto; padding:34px 0 70px; }
  .cd-notification-card { padding:16px; grid-template-columns:48px minmax(0,1fr) 10px; }
  .cd-notification-icon { width:48px; height:48px; }
  .cd-desktop-notifications .cd-notification-badge { right:-2px; top:-5px; }
}


/* ===== v0.3.3 painel da empresa ===== */
.cd-business-page{padding:18px 0 100px}.cd-business-landing,.cd-business-dashboard{max-width:980px;margin:0 auto}.cd-business-hero{padding:28px 22px;border-radius:28px;background:linear-gradient(135deg,#fff2f7,#ffe0eb);border:1px solid #f6cfde;text-align:center}.cd-business-hero h1{font-size:34px;margin:6px 0;color:#171216;letter-spacing:-.04em}.cd-business-hero p{max-width:620px;margin:0 auto 18px;color:#40383d;line-height:1.5}.cd-business-hero-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.cd-business-hero-actions .cd-confirm{width:auto;min-width:220px;margin:0}.cd-business-login-link{min-width:150px;background:#fff}.cd-business-plan-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:16px}.cd-business-plan-grid article{background:#fff;border:1px solid #efdde4;border-radius:22px;padding:20px;box-shadow:var(--cd-shadow-soft)}.cd-business-plan-grid article.premium{background:linear-gradient(145deg,#fff,#fff1f6);border-color:#f2bfd2}.cd-business-plan-grid article>span{font-size:10px;color:var(--cd-pink);font-weight:900;letter-spacing:.1em}.cd-business-plan-grid h2{margin:6px 0 8px;font-size:20px;color:#171216}.cd-business-plan-grid strong{display:block;color:#b81151;font-size:16px}.cd-business-plan-grid p{color:#463e43;font-size:12px;line-height:1.5}.cd-business-benefits{display:grid;grid-template-columns:1fr;gap:10px;margin:16px 0}.cd-business-benefits>div{display:grid;grid-template-columns:44px 1fr;column-gap:10px;background:#fff;border:1px solid #f0e0e6;border-radius:18px;padding:14px}.cd-business-benefits svg{grid-row:1/3;width:26px;height:26px;color:var(--cd-pink);align-self:center}.cd-business-benefits strong{font-size:13px;color:#1a1518}.cd-business-benefits span{font-size:11px;color:#51494e}.cd-business-auth-wrap{padding-top:12px}.cd-business-auth-card{max-width:520px}.cd-business-auth-row{display:grid;grid-template-columns:1fr 86px;gap:10px}.cd-business-dashboard-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin:10px 0 16px}.cd-business-dashboard-head h1{font-size:27px;margin:3px 0;color:#171216}.cd-business-dashboard-head p{margin:0;color:#4d4449;font-size:12px}.cd-business-plan-card{display:grid;gap:14px;background:linear-gradient(135deg,#fff1f6,#ffe3ee);border:1px solid #f3cada;border-radius:24px;padding:18px;margin-bottom:14px}.cd-business-plan-card>div>span,.cd-business-usage span{display:block;font-size:10px;color:#6f5f67}.cd-business-plan-card>div>strong{display:block;font-size:20px;color:#b31050}.cd-business-plan-card small{display:block;color:#4e454a;margin-top:4px}.cd-business-plan-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.cd-business-plan-actions .cd-confirm,.cd-business-plan-actions .cd-outline-btn{width:auto;margin:0;padding:9px 13px}.cd-business-usage{text-align:left}.cd-business-usage>strong{font-size:24px;color:#161215}.cd-business-usage i{display:block;height:6px;border-radius:99px;background:#f6c9d9;margin-top:8px;overflow:hidden}.cd-business-usage i b{display:block;height:100%;background:var(--cd-pink);border-radius:99px}.cd-business-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.cd-business-metrics article{background:#fff;border:1px solid #f0e0e6;border-radius:18px;padding:14px;display:grid;grid-template-columns:30px 1fr;align-items:center}.cd-business-metrics svg{grid-row:1/3;width:22px;height:22px;color:var(--cd-pink)}.cd-business-metrics strong{font-size:20px;color:#181317}.cd-business-metrics span{font-size:10px;color:#51494e}.cd-business-tools{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0 22px}.cd-business-tools button{border:1px solid #f0e0e6;background:#fff;border-radius:18px;padding:15px;text-align:left;color:#1c171a;box-shadow:var(--cd-shadow-soft)}.cd-business-tools svg{width:22px;height:22px;color:var(--cd-pink);margin-bottom:9px}.cd-business-tools strong,.cd-business-tools span{display:block}.cd-business-tools strong{font-size:13px}.cd-business-tools span{font-size:10.5px;color:#544b50;margin-top:2px}.cd-business-appointments{display:flex;flex-direction:column;gap:9px}.cd-business-appointments article{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #f0e1e7;background:#fff;border-radius:16px;padding:13px}.cd-business-appointments article>div:last-child{text-align:right}.cd-business-appointments strong,.cd-business-appointments span{display:block}.cd-business-appointments strong{font-size:12px;color:#1a1518}.cd-business-appointments span{font-size:10.5px;color:#534a50;margin-top:2px}.cd-business-status{display:inline-block!important;margin-top:4px!important;padding:4px 7px;border-radius:999px;background:#fff0f5;color:#b41050!important;font-weight:800}.cd-business-status.completed{background:#eaf8ef;color:#24703f!important}.cd-business-status.cancelled{background:#f3f0f1;color:#70666b!important}.cd-business-next{margin-top:18px;background:#fff7fa;border:1px dashed #e9abc2;border-radius:18px;padding:15px}.cd-business-next strong{color:#b41050}.cd-business-next p{margin:5px 0 0;color:#4e454a;font-size:11px;line-height:1.5}.cd-business-invite{margin:20px 0 12px;padding:17px;border-radius:20px;background:#fff1f6;border:1px solid #f1c8d8}.cd-business-invite span,.cd-business-invite strong,.cd-business-invite p{display:block}.cd-business-invite span{font-size:10px;color:#7b6570}.cd-business-invite strong{margin:3px 0;font-size:15px;color:#1b1519}.cd-business-invite p{font-size:11px;color:#4d4349;margin:0 0 10px}.cd-business-invite button{border:0;border-radius:999px;background:var(--cd-pink);color:#fff;padding:9px 13px;font-weight:800;font-size:11px}
@media(min-width:821px){.cd-business-page{padding:34px 0 70px}.cd-business-plan-grid{grid-template-columns:1fr 1fr}.cd-business-benefits{grid-template-columns:repeat(3,1fr)}.cd-business-plan-card{grid-template-columns:1fr 280px;align-items:center}.cd-business-usage{text-align:right}.cd-business-metrics{grid-template-columns:repeat(4,1fr)}.cd-business-tools{grid-template-columns:repeat(4,1fr)}}
.cd-business-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0 14px;border-bottom:1px solid #f0e1e7}.cd-business-topbar img{width:150px;max-height:58px;object-fit:contain;object-position:left center}.cd-business-topbar button{display:flex;align-items:center;gap:7px;border:0;background:#fff0f5;color:#a9154d;border-radius:999px;padding:9px 12px;font-size:11px;font-weight:800}.cd-business-topbar svg{width:17px;height:17px}
@media(max-width:820px){.cd-business-topbar{padding:8px 2px 12px}.cd-business-topbar img{width:122px}.cd-business-topbar button span{display:none}.cd-business-topbar button{width:40px;height:40px;padding:0;display:grid;place-items:center}}

/* v0.3.5 - cadastro empresarial com endereco completo */
.cd-business-auth-card .cd-optional{font-size:.72em;font-weight:500;color:#75646c}
.cd-business-address-top{grid-template-columns:minmax(0,1.35fr) minmax(110px,.65fr)}
.cd-resend-attention{color:#d40f5b!important;font-weight:800!important;text-decoration:underline;text-underline-offset:3px}
@media(max-width:420px){.cd-business-address-top{grid-template-columns:1fr 128px}.cd-business-auth-card{padding-left:24px;padding-right:24px}}

/* Painel da empresa — gestão de serviços e profissionais */
.cd-business-module{max-width:820px;margin:0 auto}.cd-business-module-head{display:flex;align-items:flex-start;gap:12px;margin:8px 0 18px}.cd-business-module-head h1{margin:2px 0 4px;font-size:26px;line-height:1.08;color:#171216}.cd-business-module-head p{margin:0;color:#4b4247;font-size:12px}.cd-business-back{width:42px;height:42px;flex:0 0 42px;border:1px solid #f0dbe3;border-radius:50%;background:#fff;color:#b41050;display:grid;place-items:center;box-shadow:var(--cd-shadow-soft)}.cd-business-back svg{width:20px;height:20px}.cd-business-module-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.cd-business-module-toolbar>span{font-size:12px;color:#51474c}.cd-business-module-toolbar>span strong{color:#171216;font-size:18px;margin-right:3px}.cd-business-add{width:auto!important;min-width:150px;margin:0!important;padding:12px 18px!important}.cd-business-manage-list{display:flex;flex-direction:column;gap:10px}.cd-business-manage-card{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid #eedde4;border-radius:18px;padding:14px;box-shadow:var(--cd-shadow-soft)}.cd-business-manage-card.inactive{opacity:.62;background:#faf8f9}.cd-business-manage-main{display:flex;align-items:center;gap:12px;min-width:0}.cd-business-manage-icon,.cd-business-prof-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:16px;background:#fff0f5;color:var(--cd-pink);display:grid;place-items:center;overflow:hidden}.cd-business-manage-icon svg,.cd-business-prof-avatar svg{width:23px;height:23px}.cd-business-prof-avatar img{width:100%;height:100%;object-fit:cover}.cd-business-manage-main>div:last-child{min-width:0}.cd-business-manage-main strong,.cd-business-manage-main span,.cd-business-manage-main b{display:block}.cd-business-manage-main strong{color:#191418;font-size:13px}.cd-business-manage-main span{margin-top:3px;color:#554a50;font-size:10.5px;white-space:normal}.cd-business-manage-main b{margin-top:4px;color:#b41050;font-size:12px}.cd-business-manage-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.cd-business-manage-actions button{border:1px solid #eec7d6;background:#fff;color:#a9154d;border-radius:999px;padding:8px 10px;font-size:10.5px;font-weight:800}.cd-business-manage-actions button.danger{border-color:#eadcdf;color:#76666d}.cd-business-subtitle{font-size:12px;color:#65575e;margin:10px 0 0}.cd-business-form{background:#fff;border:1px solid #eedde4;border-radius:22px;padding:18px;box-shadow:var(--cd-shadow-soft)}.cd-business-form label,.cd-business-service-checks legend{display:block;color:#2b2428;font-size:12px;font-weight:800;margin-bottom:12px}.cd-business-form input,.cd-business-form select,.cd-business-form textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #e7d3dc;background:#fffafb;border-radius:14px;padding:12px 13px;margin-top:6px;color:#211a1e;font:inherit;font-weight:500;outline:none}.cd-business-form input:focus,.cd-business-form select:focus,.cd-business-form textarea:focus{border-color:#e34d84;box-shadow:0 0 0 3px rgba(236,34,111,.08)}.cd-business-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cd-business-form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.cd-business-form-actions .cd-confirm{width:auto!important;min-width:170px;margin:0!important}.cd-business-service-checks{border:0;padding:0;margin:8px 0 2px}.cd-business-service-checks>label{display:flex;align-items:center;gap:10px;border:1px solid #f0dfe6;border-radius:14px;padding:11px 12px;margin-bottom:8px;background:#fff}.cd-business-service-checks input{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--cd-pink)}.cd-business-service-checks span{min-width:0}.cd-business-service-checks strong,.cd-business-service-checks small{display:block}.cd-business-service-checks strong{font-size:11.5px;color:#241d21}.cd-business-service-checks small{font-size:10px;color:#5f5359;margin-top:2px}.cd-business-service-checks p{font-size:11px;color:#66585f}.cd-business-loading{padding-top:8px}
@media(max-width:620px){.cd-business-module-head h1{font-size:23px}.cd-business-module-toolbar{align-items:center}.cd-business-add{min-width:0!important;padding:11px 13px!important}.cd-business-manage-card{align-items:flex-start;flex-direction:column}.cd-business-manage-actions{width:100%;justify-content:flex-end}.cd-business-form-row{grid-template-columns:1fr 1fr}.cd-business-form-actions{flex-direction:column-reverse}.cd-business-form-actions .cd-confirm,.cd-business-form-actions .cd-outline-btn{width:100%!important}}


/* v0.3.8 — verificação empresarial por WhatsApp */
.cd-verification-options{display:grid;gap:10px;margin-top:10px}
.cd-whatsapp-verify{width:100%;border:1px solid #d9eee1;background:#effaf3;color:#176b3a;border-radius:18px;padding:15px 18px;font:inherit;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.cd-whatsapp-verify svg{width:20px;height:20px}
.cd-whatsapp-verify:disabled{opacity:.6;cursor:wait}

/* Painel da empresa: horários e agenda */
.cd-business-schedule-picker{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;background:#fff;border:1px solid #eedde4;border-radius:20px;padding:16px;margin-bottom:14px;box-shadow:var(--cd-shadow-soft)}
.cd-business-schedule-picker label{display:block;min-width:min(360px,100%);font-size:12px;font-weight:800;color:#2c2429}
.cd-business-schedule-picker select{display:block;width:100%;margin-top:6px;border:1px solid #e7d3dc;border-radius:14px;background:#fffafb;padding:12px 13px;color:#211a1e;font:inherit;font-weight:600;outline:none}
.cd-business-schedule-picker p{margin:0;color:#594e54;font-size:11px;line-height:1.45}.cd-business-schedule-picker p strong{color:#1c171a}
.cd-business-inherited,.cd-business-follow-company{background:#fff3f7;border:1px solid #f1cad9;border-radius:18px;padding:14px;margin-bottom:14px}
.cd-business-inherited>div{display:flex;gap:11px;align-items:center}.cd-business-inherited svg{width:22px;height:22px;flex:0 0 22px;color:var(--cd-pink)}
.cd-business-inherited span,.cd-business-inherited strong,.cd-business-inherited small,.cd-business-follow-company span,.cd-business-follow-company strong,.cd-business-follow-company small{display:block}
.cd-business-inherited strong,.cd-business-follow-company strong{font-size:12px;color:#241d21}.cd-business-inherited small,.cd-business-follow-company small{margin-top:3px;font-size:10.5px;color:#5d5057;line-height:1.4}
.cd-business-follow-company{display:flex;justify-content:space-between;gap:12px;align-items:center}.cd-business-follow-company .cd-outline-btn{width:auto;margin:0;white-space:nowrap}
.cd-business-hours-form{margin:0}.cd-business-week{display:flex;flex-direction:column;gap:10px}
.cd-business-day{background:#fff;border:1px solid #eedde4;border-radius:20px;padding:15px;box-shadow:var(--cd-shadow-soft);transition:.18s ease}
.cd-business-day.is-closed{background:#faf8f9;opacity:.82}.cd-business-day-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}
.cd-business-day-head strong,.cd-business-day-head span{display:block}.cd-business-day-head strong{font-size:13px;color:#1c171a}.cd-business-day-head span{margin-top:2px;font-size:10px;color:#665960}
.cd-business-switch{display:flex;align-items:center;gap:7px;font-size:10px!important;font-weight:800!important;margin:0!important;color:#65575e!important;cursor:pointer}
.cd-business-switch input{position:absolute;opacity:0;pointer-events:none}.cd-business-switch span{width:36px;height:20px;border-radius:999px;background:#e6d9de;position:relative;transition:.18s ease}.cd-business-switch span:after{content:"";position:absolute;width:16px;height:16px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(40,20,30,.18);transition:.18s ease}.cd-business-switch input:checked+span{background:#d9ccd1}.cd-business-switch input:checked+span:after{transform:translateX(16px)}.cd-business-switch b{font-weight:800}
.cd-business-day-times{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.cd-business-day-times label{margin:0!important;color:#51464c!important;font-size:10.5px!important}.cd-business-day-times input{margin-top:5px!important;padding:10px!important;border-radius:12px!important}.cd-business-day-times input:disabled{background:#f2eef0;color:#988b91;cursor:not-allowed}
.cd-business-hours-actions{display:flex;justify-content:flex-end;margin:14px 0 26px}.cd-business-hours-actions .cd-confirm{width:auto!important;min-width:190px;margin:0!important}
.cd-business-block-section{border-top:1px solid #f0dfe6;padding-top:20px}.cd-business-block-section .cd-section-head{align-items:flex-start;margin-bottom:12px}.cd-business-block-section .cd-section-head h2{margin:0}.cd-business-block-section .cd-section-head p{margin:4px 0 0;color:#5c5057;font-size:10.5px;line-height:1.45}
.cd-business-block-form{background:#fff;border:1px solid #eedde4;border-radius:20px;padding:16px;box-shadow:var(--cd-shadow-soft);margin-bottom:14px}.cd-business-block-form label{display:block;color:#2b2428;font-size:12px;font-weight:800;margin-bottom:12px}.cd-business-block-form input{display:block;width:100%;box-sizing:border-box;border:1px solid #e7d3dc;background:#fffafb;border-radius:14px;padding:12px 13px;margin-top:6px;color:#211a1e;font:inherit;font-weight:500;outline:none}.cd-business-block-form .cd-confirm{width:auto!important;min-width:180px;margin:0 0 0 auto!important}
.cd-business-block-list{display:flex;flex-direction:column;gap:9px}.cd-business-block-card{display:grid;grid-template-columns:44px 1fr auto;gap:11px;align-items:center;background:#fff;border:1px solid #eedde4;border-radius:17px;padding:12px 13px}.cd-business-block-icon{width:44px;height:44px;border-radius:14px;background:#fff0f5;color:var(--cd-pink);display:grid;place-items:center}.cd-business-block-icon svg{width:21px;height:21px}.cd-business-block-main{min-width:0}.cd-business-block-main strong,.cd-business-block-main span,.cd-business-block-main small{display:block}.cd-business-block-main strong{font-size:11.5px;color:#231c20}.cd-business-block-main span{margin-top:2px;font-size:10px;color:#a5164d;font-weight:800}.cd-business-block-main small{margin-top:3px;font-size:10px;color:#5d5157}.cd-business-block-card>button{border:1px solid #ead9df;background:#fff;color:#796970;border-radius:999px;padding:8px 10px;font-size:10px;font-weight:800}.cd-business-block-empty{padding:18px 12px!important}
@media(max-width:700px){.cd-business-schedule-picker{align-items:stretch;flex-direction:column}.cd-business-schedule-picker label{min-width:0}.cd-business-follow-company{align-items:flex-start;flex-direction:column}.cd-business-follow-company .cd-outline-btn{width:100%}.cd-business-day-times{grid-template-columns:1fr 1fr}.cd-business-hours-actions .cd-confirm{width:100%!important}.cd-business-block-form .cd-confirm{width:100%!important}.cd-business-block-card{grid-template-columns:40px 1fr}.cd-business-block-icon{width:40px;height:40px}.cd-business-block-card>button{grid-column:2;justify-self:start}.cd-business-day-head{align-items:flex-start}.cd-business-switch b{display:none}}

/* PWA exclusivo do Painel da Lojista */
.cd-business-install-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:rgba(29,17,24,.58);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.cd-business-install-modal{position:relative;width:min(100%,440px);border-radius:30px;padding:24px;background:linear-gradient(180deg,#fff 0%,#fff9fb 100%);border:1px solid rgba(236,23,102,.13);box-shadow:0 30px 80px rgba(65,16,39,.28);text-align:center;animation:cdBusinessInstallIn .2s ease-out}
@keyframes cdBusinessInstallIn{from{opacity:.45;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
.cd-business-install-x{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:#fff0f5;color:#8b536b;font-size:24px;line-height:1;display:grid;place-items:center}
.cd-business-install-brand{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:10px}.cd-business-install-brand img{width:170px;height:72px;object-fit:contain}.cd-business-install-brand span{font-size:9px;font-weight:900;letter-spacing:.16em;color:#a71951}
.cd-business-install-icon{width:58px;height:58px;margin:8px auto 10px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#ffedf4,#ffdbe9);color:var(--cd-pink);box-shadow:0 12px 28px rgba(236,23,102,.12)}.cd-business-install-icon svg{width:29px;height:29px}
.cd-business-install-modal h2{margin:0;color:#181317;font-size:25px;line-height:1.08;letter-spacing:-.035em}.cd-business-install-modal>div[data-business-install-content]>p{margin:10px auto 15px;max-width:340px;color:#51464c;font-size:12px;line-height:1.55}
.cd-business-install-points{display:grid;gap:8px;margin:14px 0 18px;text-align:left}.cd-business-install-points span{display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:14px;background:#fff3f7;color:#2f252a;font-size:11.5px;font-weight:700}.cd-business-install-points svg{width:18px;height:18px;flex:0 0 18px;color:var(--cd-pink)}
.cd-business-install-button{margin:0!important;width:100%!important}.cd-business-install-later{margin-top:8px;border:0;background:transparent;color:#7b6a72;font-size:11px;font-weight:800;padding:9px 12px}
.cd-business-install-help{padding:16px 2px 6px}.cd-business-install-help strong{display:block;color:#1f171b;font-size:18px}.cd-business-install-help p{margin:8px auto 14px;max-width:340px;color:#5b4e55;font-size:12px;line-height:1.55}.cd-business-install-help a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border-radius:999px;background:var(--cd-pink);color:#fff;text-decoration:none;font-size:12px;font-weight:900}
@media(max-width:480px){.cd-business-install-overlay{padding:14px}.cd-business-install-modal{border-radius:26px;padding:22px 18px}.cd-business-install-modal h2{font-size:23px}.cd-business-install-brand img{width:150px;height:64px}}


/* v0.4.4 — geolocalizacao e proximidade */
.cd-nearby-btn{display:flex;align-items:center;justify-content:center;gap:7px;margin:9px 0 0;border:1px solid #f0d5df;background:#fff;color:#51464c;border-radius:999px;padding:9px 13px;font:inherit;font-size:11px;font-weight:800;box-shadow:0 5px 16px rgba(68,25,43,.05)}
.cd-nearby-btn svg{width:16px;height:16px;color:var(--cd-pink)}.cd-nearby-btn.active{background:#fff0f5;border-color:#f3bfd2;color:#aa174f}.cd-distance{color:#a71951;font-weight:800}.cd-desktop-location{display:inline-flex!important;align-items:center!important;gap:5px!important}.cd-desktop-location svg{width:15px;height:15px}.cd-desktop-location.active{color:var(--cd-pink)!important}
.cd-business-location-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 0;padding:15px 16px;border-radius:19px;border:1px solid #f0dce4;background:#fff;box-shadow:var(--cd-shadow-soft)}.cd-business-location-card>div{display:flex;align-items:center;gap:11px;min-width:0}.cd-business-location-card>div>svg{width:24px;height:24px;flex:0 0 24px;color:var(--cd-pink)}.cd-business-location-card strong,.cd-business-location-card span{display:block}.cd-business-location-card strong{font-size:12.5px;color:#211a1e}.cd-business-location-card span{margin-top:3px;font-size:10.5px;line-height:1.4;color:#5b4f55}.cd-business-location-card .cd-outline-btn{width:auto;margin:0;white-space:nowrap}.cd-business-location-card.ready{background:#fff8fa;border-color:#f2c6d6}
@media(max-width:700px){.cd-business-location-card{align-items:stretch;flex-direction:column}.cd-business-location-card .cd-outline-btn{width:100%}.cd-nearby-btn{width:100%}}


/* v0.5.0 - geolocalizacao completa no cadastro empresarial */
.cd-business-register-location{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 14px;padding:14px 15px;border:1px solid #efdbe3;border-radius:18px;background:#fffafb;box-shadow:0 5px 16px rgba(68,25,43,.04)}
.cd-business-register-location>div{display:flex;align-items:center;gap:10px;min-width:0}.cd-business-register-location>div>svg{width:23px;height:23px;flex:0 0 23px;color:var(--cd-pink)}
.cd-business-register-location strong,.cd-business-register-location span{display:block}.cd-business-register-location strong{font-size:12px;color:#211a1e}.cd-business-register-location span{margin-top:3px;font-size:10.5px;line-height:1.4;color:#62545b}
.cd-business-register-location .cd-outline-btn{width:auto;margin:0;white-space:nowrap}.cd-business-register-location.ready{background:#fff2f7;border-color:#efbfd1}.cd-business-register-location.ready strong{color:#a5164d}
.cd-nearby-active-label{font-size:10px;font-weight:800;color:#a71951;background:#fff0f5;border:1px solid #f1c4d5;border-radius:999px;padding:5px 9px;white-space:nowrap}
@media(max-width:700px){.cd-business-register-location{align-items:stretch;flex-direction:column}.cd-business-register-location .cd-outline-btn{width:100%}}


/* v0.5.1 - convite de geolocalizacao na abertura do marketplace */
.cd-location-prompt-overlay{position:fixed;inset:0;z-index:1250;display:grid;place-items:center;padding:20px;background:rgba(29,17,24,.58);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.cd-location-prompt-modal{position:relative;width:min(100%,420px);box-sizing:border-box;border-radius:30px;padding:26px 22px 22px;background:linear-gradient(180deg,#fff 0%,#fff9fb 100%);border:1px solid rgba(236,23,102,.13);box-shadow:0 30px 80px rgba(65,16,39,.28);text-align:center;animation:cdBusinessInstallIn .2s ease-out}
.cd-location-prompt-x{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:#fff0f5;color:#8b536b;font-size:24px;line-height:1;display:grid;place-items:center;cursor:pointer}
.cd-location-prompt-icon{width:64px;height:64px;margin:4px auto 12px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,#ffedf4,#ffdbe9);color:var(--cd-pink);box-shadow:0 12px 28px rgba(236,23,102,.12)}
.cd-location-prompt-icon svg{width:31px;height:31px}.cd-location-prompt-modal .cd-auth-kicker{display:block;margin-bottom:6px}.cd-location-prompt-modal h2{margin:0;color:#181317;font-size:25px;line-height:1.1;letter-spacing:-.035em}
.cd-location-prompt-modal>p{margin:10px auto 18px;max-width:340px;color:#51464c;font-size:12px;line-height:1.55}.cd-location-prompt-allow{width:100%!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}.cd-location-prompt-allow svg{width:18px;height:18px}
.cd-location-prompt-later{margin-top:8px;border:0;background:transparent;color:#7b6a72;font-size:11px;font-weight:800;padding:9px 12px;cursor:pointer}.cd-location-prompt-modal>small{display:block;margin:5px auto 0;max-width:340px;color:#8a7b82;font-size:9.5px;line-height:1.45}
@media(max-width:480px){.cd-location-prompt-overlay{padding:14px}.cd-location-prompt-modal{border-radius:26px;padding:24px 18px 20px}.cd-location-prompt-modal h2{font-size:23px}}

/* v0.5.2 - perfil empresarial e CEP automatico */
.cd-cep-status{display:block;margin:-7px 0 12px;color:#7d6e75;font-size:10px;line-height:1.4}
.cd-business-profile-form{padding:20px}
.cd-business-media-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;margin-bottom:18px}
.cd-business-media-field{display:flex;flex-direction:column;gap:8px;min-width:0}.cd-business-media-field>span{font-size:12px;font-weight:800;color:#2b2428}.cd-business-media-field>small{color:#796b72;font-size:9.5px;line-height:1.4}
.cd-business-logo-preview,.cd-business-cover-preview{overflow:hidden;border:1px solid #edd9e2;background:#fff6f9;box-shadow:var(--cd-shadow-soft)}
.cd-business-logo-preview{width:132px;height:132px;border-radius:24px;display:grid;place-items:center}.cd-business-logo-preview img{width:100%;height:100%;object-fit:contain;padding:8px}
.cd-business-cover-preview{width:100%;height:160px;border-radius:22px}.cd-business-cover-preview img{width:100%;height:100%;object-fit:cover}
.cd-business-upload-button{display:inline-flex!important;align-items:center;justify-content:center;gap:7px;width:max-content!important;max-width:100%;margin:0!important;padding:10px 13px;border:1px solid #efbfd1;border-radius:999px;background:#fff;color:#ac164f!important;font-size:10.5px!important;font-weight:900!important;cursor:pointer}.cd-business-upload-button svg{width:16px;height:16px}.cd-business-upload-button input{display:none!important}
.cd-business-category-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:6px 0 18px}.cd-business-category-checks legend{grid-column:1/-1}.cd-business-category-checks>label{margin:0!important;min-width:0}.cd-business-category-checks>label span{min-width:0}.cd-business-category-checks>label strong{white-space:normal}
.cd-business-profile-section-title{margin:8px 0 12px;padding-top:15px;border-top:1px solid #f0dfe6}.cd-business-profile-section-title strong,.cd-business-profile-section-title span{display:block}.cd-business-profile-section-title strong{font-size:14px;color:#211a1e}.cd-business-profile-section-title span{margin-top:3px;color:#66585f;font-size:10.5px;line-height:1.45}
@media(min-width:821px){.cd-business-tools{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:620px){.cd-business-media-grid{grid-template-columns:1fr}.cd-business-logo-preview{width:116px;height:116px}.cd-business-cover-preview{height:145px}.cd-business-category-checks{grid-template-columns:1fr}.cd-business-profile-form{padding:16px}}


/* v0.5.3 - endereco completo e distancia visivel nos cards/perfil */
.cd-location-detailed{align-items:flex-start!important;gap:6px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;margin-top:2px;min-width:0}
.cd-location-detailed>svg{margin-top:2px;width:15px;height:15px;flex:0 0 15px}
.cd-location-lines{display:flex;flex:1;min-width:0;flex-direction:column;line-height:1.2}
.cd-location-lines>span{display:block;min-width:0;white-space:normal;overflow:hidden;text-overflow:ellipsis}
.cd-location-street{color:#4f464b;font-size:10.8px;font-weight:700}
.cd-location-city{margin-top:2px;color:#70666c;font-size:10.5px}
.cd-distance-badge{flex:0 0 auto;align-self:flex-end;margin:0 0 1px 4px;padding:3px 6px;border-radius:999px;background:#fff0f5;border:1px solid #f2c4d5;color:#a71951;font-size:9.5px;line-height:1.1;white-space:nowrap}
.cd-company-main .cd-rating{margin:3px 0 2px}
.cd-company-card .cd-company-meta{margin-bottom:0}
.cd-company-card .cd-card-price-row{margin-top:auto}
.cd-profile-address{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:9px;align-items:start;margin:14px 0 4px;padding:12px 13px;border:1px solid #f1dce4;border-radius:16px;background:#fff8fb;color:#51464c}
.cd-profile-address>svg{width:20px;height:20px;color:var(--cd-pink);margin-top:1px}
.cd-profile-address strong,.cd-profile-address span{display:block}.cd-profile-address strong{font-size:12px;color:#241d21;line-height:1.25}.cd-profile-address span{margin-top:3px;font-size:11px;color:#655a60;line-height:1.25}.cd-profile-address>b{align-self:center;padding:5px 8px;border-radius:999px;background:#fff0f5;color:#a71951;font-size:10px;white-space:nowrap}
@media(max-width:520px){
  .cd-company-photo{height:136px}
  .cd-company-main{padding-top:3px}
  .cd-company-name{margin-bottom:3px}
  .cd-location-street{font-size:10.5px}.cd-location-city{font-size:10.2px}.cd-distance-badge{font-size:9px;padding:3px 5px}
  .cd-profile-address{grid-template-columns:20px minmax(0,1fr);gap:8px}.cd-profile-address>b{grid-column:2;justify-self:start;margin-top:4px}
}
@media(min-width:900px){
  .cd-company-photo{height:176px}
  .cd-location-detailed{min-height:34px}
}


/* v0.5.4 - endereco resiliente + canais de verificacao empresarial */
.cd-location-street{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.2;max-height:2.4em}
.cd-location-city{display:block;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.cd-business-verify-card{max-width:520px}
.cd-verification-channels{display:grid;gap:10px;margin:14px 0 16px}
.cd-verification-channel{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 13px;border:1px solid #eedce4;border-radius:16px;background:#fff;text-align:left;color:#2c2429;box-shadow:0 6px 18px rgba(88,24,49,.05);cursor:pointer}
.cd-verification-channel>svg{width:21px;height:21px;color:var(--cd-pink)}
.cd-verification-channel>span{min-width:0}.cd-verification-channel strong,.cd-verification-channel small{display:block}.cd-verification-channel strong{font-size:12px}.cd-verification-channel small{margin-top:2px;color:#6e6067;font-size:10px;line-height:1.35;white-space:normal}.cd-verification-channel>b{font-size:10px;color:#a71951;background:#fff0f5;border-radius:999px;padding:6px 8px;white-space:nowrap}
.cd-verification-channel.sent{border-color:#efbfd1;background:#fff8fb}.cd-verification-channel-whatsapp{border-color:#d7ecdf;background:#f7fcf8}.cd-verification-channel-whatsapp>svg,.cd-verification-channel-whatsapp>b{color:#187744}.cd-verification-channel-whatsapp>b{background:#eaf8ef}.cd-verification-channel.is-disabled{opacity:.58;cursor:not-allowed;background:#faf8f9}.cd-verification-channel.sending{opacity:.65;cursor:wait}
@media(max-width:480px){.cd-verification-channel{grid-template-columns:34px minmax(0,1fr) auto;padding:11px}.cd-verification-channel>b{font-size:9px;padding:5px 7px}}


/* v0.5.5 - Stories Premium empresarial */
.cd-story-premium-lock{margin:18px 0;padding:30px 22px;border:1px solid #efd8e2;border-radius:26px;background:linear-gradient(145deg,#fff,#fff4f8);text-align:center;box-shadow:var(--cd-shadow-soft)}
.cd-story-premium-lock>svg{width:42px;height:42px;color:var(--cd-pink);margin-bottom:8px}.cd-story-premium-lock>span{display:block;color:#a71951;font-size:10px;font-weight:900;letter-spacing:.12em}.cd-story-premium-lock h2{margin:6px 0 8px;font-size:24px;color:#20181d}.cd-story-premium-lock p{max-width:520px;margin:0 auto 16px;color:#62545c;font-size:12px;line-height:1.55}.cd-story-premium-lock>div{display:flex;justify-content:center;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.cd-story-premium-lock>div strong{color:#2b2227;font-size:11px}.cd-story-premium-lock>div span{padding:5px 9px;border-radius:999px;background:#fff0f5;color:#a71951;font-size:10px;font-weight:800}
.cd-story-publisher{margin:16px 0 22px;padding:18px;border:1px solid #efdce4;border-radius:24px;background:#fff;box-shadow:var(--cd-shadow-soft)}
.cd-story-publisher-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.cd-story-publisher-head>div{display:flex;gap:10px;align-items:center}.cd-story-publisher-head svg{width:22px;height:22px;color:var(--cd-pink)}.cd-story-publisher-head span,.cd-story-publisher-head strong{display:block}.cd-story-publisher-head span{font-size:9px;font-weight:900;letter-spacing:.12em;color:#a71951}.cd-story-publisher-head strong{margin-top:2px;font-size:14px;color:#241c20}.cd-story-publisher-head>small{color:#7b6d74;font-size:9.5px;text-align:right}
.cd-story-upload-zone{display:flex!important;min-height:132px!important;margin:0 0 12px!important;border:1.5px dashed #e8b6c9!important;border-radius:20px!important;background:#fff7fa!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:5px!important;cursor:pointer}.cd-story-upload-zone input{display:none}.cd-story-upload-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#ffe6ef;color:var(--cd-pink)}.cd-story-upload-icon svg{width:19px;height:19px}.cd-story-upload-zone strong{font-size:12px;color:#30262b}.cd-story-upload-zone small{font-size:9.5px;color:#7e6f76}
.cd-story-preview{position:relative;margin:0 0 14px;border-radius:20px;overflow:hidden;background:#1c1519}.cd-story-preview img,.cd-story-preview video{display:block;width:100%;max-height:360px;object-fit:contain;background:#171216}.cd-story-preview>span{display:block;padding:8px 11px;background:#fff7fa;color:#65565e;font-size:10px;font-weight:700}
.cd-business-story-list-head{align-items:center}.cd-business-story-list-head>span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#fff0f5;color:#a71951;font-size:11px;font-weight:900}.cd-business-story-list{display:grid;gap:10px}
.cd-business-story-card{position:relative;display:grid;grid-template-columns:88px minmax(0,1fr) 36px;gap:12px;align-items:center;padding:10px;border:1px solid #f0dee6;border-radius:18px;background:#fff}.cd-business-story-media{position:relative;width:88px;height:112px;overflow:hidden;border-radius:14px;background:#1d171a}.cd-business-story-media img,.cd-business-story-media video{width:100%;height:100%;object-fit:cover}.cd-business-story-media>span{position:absolute;left:6px;bottom:6px;padding:3px 6px;border-radius:999px;background:rgba(25,16,21,.72);color:#fff;font-size:8px;font-weight:900}.cd-business-story-info{min-width:0}.cd-business-story-info>strong{display:block;color:#2a2126;font-size:12px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cd-business-story-info>span{display:block;margin-top:4px;color:#a71951;font-size:10px;font-weight:800}.cd-business-story-info>div{margin-top:8px;color:#71646b;font-size:9.5px}.cd-business-story-info>div b{color:#2d2429}.cd-business-story-delete{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#fff0f2;color:#ae294f;cursor:pointer}.cd-business-story-delete svg{width:16px;height:16px}
@media(max-width:520px){.cd-story-publisher{padding:14px}.cd-story-publisher-head{display:block}.cd-story-publisher-head>small{display:block;margin-top:5px;text-align:left}.cd-business-story-card{grid-template-columns:72px minmax(0,1fr) 32px;gap:9px}.cd-business-story-media{width:72px;height:94px}}


/* v0.5.6 - refinamento visual do campo de legenda dos Stories */
.cd-story-publisher form{display:flex;flex-direction:column;gap:12px}
.cd-story-publisher form>label:not(.cd-story-upload-zone){display:block;width:100%;margin:0;color:#2b2428;font-size:12px;font-weight:800;line-height:1.35}
.cd-story-publisher form>label:not(.cd-story-upload-zone) .cd-optional{font-size:10px;font-weight:600;color:#8a7b82}
.cd-story-publisher form>label:not(.cd-story-upload-zone) textarea{display:block;width:100%;box-sizing:border-box;min-height:92px;resize:vertical;margin-top:7px;border:1px solid #ead6df;border-radius:16px;background:#fffafb;padding:13px 14px;color:#241d21;font:inherit;font-size:12px;font-weight:500;line-height:1.45;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.8);transition:border-color .15s ease,box-shadow .15s ease}
.cd-story-publisher form>label:not(.cd-story-upload-zone) textarea::placeholder{color:#a3939b;font-weight:500}
.cd-story-publisher form>label:not(.cd-story-upload-zone) textarea:focus{border-color:#e34d84;box-shadow:0 0 0 3px rgba(236,34,111,.08)}
.cd-story-publisher form>.cd-confirm{width:100%;margin:0!important}
@media(max-width:520px){.cd-story-publisher form>label:not(.cd-story-upload-zone) textarea{min-height:84px;border-radius:14px;padding:12px 13px}}


/* ===== v0.6.4 link publico da empresa ===== */
.cd-business-public-link{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0 18px;padding:14px 16px;border:1px solid #f0dce4;border-radius:18px;background:#fff}
.cd-business-public-link>div{display:flex;align-items:center;gap:11px;min-width:0}.cd-business-public-link svg{width:22px;height:22px;color:var(--cd-pink);flex:0 0 auto}.cd-business-public-link strong,.cd-business-public-link span{display:block}.cd-business-public-link strong{color:#211b1f;font-size:13px}.cd-business-public-link span{margin-top:3px;color:#655b61;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(54vw,520px)}.cd-business-public-link button{flex:0 0 auto}
@media(max-width:620px){.cd-business-public-link{align-items:stretch;flex-direction:column}.cd-business-public-link span{max-width:78vw}.cd-business-public-link button{width:100%}}


/* ===== v0.6.8 Galeria / feed 4:5 ===== */
.cd-tabs.cd-tabs-four{grid-template-columns:repeat(4,1fr)}
.cd-gallery-public-head{align-items:end;margin-top:28px}.cd-gallery-public-head>div p{margin:2px 0 0;color:#776b72;font-size:10.5px}.cd-gallery-public-head>button{border:0;background:transparent;color:#b31855;font-size:10.5px;font-weight:900;padding:4px 0;white-space:nowrap}.cd-gallery-preview{margin:0 0 24px;overflow:hidden}.cd-gallery-preview-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(105px,31%);gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:2px 2px 8px;scrollbar-width:none}.cd-gallery-preview-track::-webkit-scrollbar{display:none}.cd-gallery-preview-item{scroll-snap-align:start;display:block;overflow:hidden;padding:0;border:0;border-radius:14px;background:#f6eef2;box-shadow:0 5px 16px rgba(90,29,55,.08);cursor:zoom-in}.cd-gallery-preview-item img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.cd-gallery-browser-open{overflow:hidden}.cd-gallery-browser{position:fixed;inset:0;z-index:285;background:#fff7fa;overflow:auto;overscroll-behavior:contain}.cd-gallery-browser-shell{width:min(100%,720px);min-height:100%;margin:0 auto;background:#fff}.cd-gallery-browser-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid #f0e1e7;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.cd-gallery-browser-head>button{flex:0 0 auto;width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:#fff0f5;color:#9f1c50}.cd-gallery-browser-head>button svg{width:20px;height:20px}.cd-gallery-browser-head span{font-size:9px;font-weight:900;letter-spacing:.13em;color:#b31855}.cd-gallery-browser-head h2{margin:1px 0 0;font-size:18px;color:#241d21}.cd-gallery-browser-head p{margin:2px 0 0;font-size:9.5px;color:#776b72}.cd-gallery-browser-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:2px}.cd-gallery-browser-grid button{display:block;padding:0;border:0;background:#f5edf1;cursor:zoom-in}.cd-gallery-browser-grid img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}
.cd-gallery-lightbox-open{overflow:hidden}.cd-gallery-lightbox{position:fixed;inset:0;z-index:300;background:rgba(12,7,10,.94);display:flex;align-items:center;justify-content:center;padding:12px;overscroll-behavior:contain}.cd-gallery-lightbox-shell{position:relative;width:min(100%,620px);max-height:96vh;overflow:hidden;border-radius:20px;background:#171114;box-shadow:0 22px 70px rgba(0,0,0,.38)}.cd-gallery-lightbox-top{height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 10px 0 14px;color:#fff}.cd-gallery-lightbox-top>span{font-size:11px;font-weight:800;color:#e9dfe4}.cd-gallery-lightbox-top>button{width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:25px;line-height:1}.cd-gallery-lightbox-stage{position:relative;overflow:hidden;background:#0f0b0d;touch-action:pan-y;cursor:grab}.cd-gallery-lightbox-stage:active{cursor:grabbing}.cd-gallery-lightbox-stage img{display:block;width:100%;aspect-ratio:4/5;object-fit:contain;background:#0f0b0d;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;will-change:transform}.cd-gallery-lightbox-shell>p{margin:0;padding:11px 14px 14px;color:#fff;font-size:12px;line-height:1.5}.cd-gallery-lightbox-nav{position:absolute;z-index:4;top:50%;transform:translateY(-25%);width:42px;height:42px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.5);color:#fff;font-size:29px;line-height:1;box-shadow:0 3px 14px rgba(0,0,0,.25)}.cd-gallery-lightbox-nav.prev{left:9px}.cd-gallery-lightbox-nav.next{right:9px}.cd-gallery-lightbox-nav:disabled{opacity:0;pointer-events:none}@media(max-width:520px){.cd-gallery-lightbox{padding:0}.cd-gallery-lightbox-shell{width:100%;max-height:100vh;border-radius:0}.cd-gallery-lightbox-top{height:48px}.cd-gallery-lightbox-nav{width:36px;height:36px;font-size:26px}.cd-gallery-lightbox-nav.prev{left:6px}.cd-gallery-lightbox-nav.next{right:6px}}
.cd-gallery-publisher{margin:16px 0 22px;padding:18px;border:1px solid #efdce4;border-radius:24px;background:#fff;box-shadow:var(--cd-shadow-soft)}.cd-gallery-publisher-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.cd-gallery-publisher-head>div{display:flex;align-items:center;gap:10px}.cd-gallery-publisher-head svg{width:23px;height:23px;color:var(--cd-pink)}.cd-gallery-publisher-head span strong,.cd-gallery-publisher-head span small{display:block}.cd-gallery-publisher-head span strong{font-size:10px;letter-spacing:.1em;color:#a71951}.cd-gallery-publisher-head span small{margin-top:2px;color:#776b72;font-size:9.5px}.cd-gallery-publisher-head>b{font-size:9.5px;color:#695c63}.cd-gallery-publisher form{display:grid;gap:12px}.cd-gallery-publisher form>label:not(.cd-gallery-upload-zone){display:grid;gap:6px;color:#31292d;font-size:11px;font-weight:800}.cd-gallery-publisher textarea{width:100%;box-sizing:border-box;border:1px solid #ead6df;border-radius:15px;padding:12px;background:#fffafb;color:#241d21;font:inherit;resize:vertical}.cd-gallery-publisher .cd-confirm{width:100%}
.cd-gallery-upload-zone{min-height:150px;border:1.5px dashed #e6abc1;border-radius:20px;background:#fff7fa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#3b3035;cursor:pointer}.cd-gallery-upload-zone svg{width:26px;height:26px;color:var(--cd-pink)}.cd-gallery-upload-zone strong{font-size:12px}.cd-gallery-upload-zone small{font-size:9.5px;color:#7b6d74}.cd-gallery-upload-zone input{display:none}.cd-gallery-pending{position:relative;overflow:hidden;border-radius:20px;background:#fff4f8;border:1px solid #f0d8e2}.cd-gallery-pending[hidden]{display:none}.cd-gallery-pending img{display:block;width:100%;max-height:420px;aspect-ratio:4/5;object-fit:cover}.cd-gallery-pending span{display:block;padding:8px 12px 4px;font-size:10px;color:#685b62}.cd-gallery-pending button{margin:0 12px 10px;border:0;background:transparent;color:#b31855;font-size:10px;text-decoration:underline}.cd-business-gallery-limit{padding:14px;border-radius:16px;background:#fff3f7;border:1px solid #f0cad9}.cd-business-gallery-limit strong,.cd-business-gallery-limit span{display:block}.cd-business-gallery-limit strong{color:#a71951}.cd-business-gallery-limit span{margin-top:3px;color:#62545c;font-size:10.5px}.cd-business-gallery-head>div p{margin:2px 0 0;color:#776b72;font-size:10px}.cd-business-gallery-head>span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:999px;background:#fff0f5;color:#a71951;font-size:11px;font-weight:900}.cd-business-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cd-business-gallery-card{overflow:hidden;border:1px solid #f0dfe6;border-radius:18px;background:#fff}.cd-business-gallery-card>img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.cd-business-gallery-card>div{padding:9px}.cd-business-gallery-card p{min-height:28px;margin:0 0 7px;color:#51464c;font-size:9.5px;line-height:1.4}.cd-business-gallery-card button{width:100%;border:0;border-radius:10px;background:#fff0f2;color:#a82650;padding:8px;font-size:10px;font-weight:800}.cd-business-gallery-empty{grid-column:1/-1;min-height:180px}.cd-business-gallery-empty svg{width:34px;height:34px;color:var(--cd-pink)}
.cd-gallery-crop-overlay{position:fixed;inset:0;z-index:320;background:rgba(20,10,15,.86);display:flex;align-items:center;justify-content:center;padding:14px}.cd-gallery-crop-dialog{width:min(100%,430px);max-height:96vh;overflow:auto;border-radius:24px;background:#fff;padding:16px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.cd-gallery-crop-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}.cd-gallery-crop-head h2{margin:3px 0;font-size:22px;color:#21191d}.cd-gallery-crop-head p{margin:0 0 12px;color:#655960;font-size:10.5px;line-height:1.45}.cd-gallery-crop-head>button{flex:0 0 auto;width:36px;height:36px;border:0;border-radius:50%;background:#fff0f5;color:#8f3658;font-size:24px}.cd-gallery-crop-dialog canvas{display:block;width:min(100%,360px);aspect-ratio:4/5;height:auto;margin:0 auto;border-radius:18px;background:#111;touch-action:none;cursor:grab}.cd-gallery-crop-dialog canvas:active{cursor:grabbing}.cd-gallery-zoom{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin:12px 0;color:#51464c;font-size:10.5px;font-weight:800}.cd-gallery-zoom input{width:100%;accent-color:var(--cd-pink)}.cd-gallery-crop-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.cd-gallery-crop-actions button{margin:0!important}
@media(min-width:821px){.cd-business-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cd-business-tools{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1180px){.cd-business-tools{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:520px){.cd-tabs.cd-tabs-four .cd-tab{font-size:10.5px;padding-left:1px;padding-right:1px}.cd-tab.active:after{left:7px;right:7px}.cd-gallery-publisher{padding:14px}.cd-gallery-crop-dialog{padding:13px;border-radius:20px}.cd-gallery-preview-track{grid-auto-columns:31%}.cd-gallery-browser-head{padding:12px}.cd-gallery-browser-grid{gap:1px;padding:1px}}

/* ===== v0.7.1 Galeria ampliada: swipe entre fotos ===== */


/* Loja de Afiliados — v0.7.9 */
.cd-affiliate-home{margin:22px 0 8px;padding:16px 0;border-top:1px solid #f3dfe7;border-bottom:1px solid #f3dfe7}.cd-shop-kicker{display:block;color:var(--cd-pink);font-size:10px;font-weight:800;letter-spacing:.12em;margin-bottom:4px}.cd-affiliate-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,72%);gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;padding:2px 2px 10px;scrollbar-width:none}.cd-affiliate-rail::-webkit-scrollbar{display:none}.cd-affiliate-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #f0dfe6;border-radius:18px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 8px 22px rgba(77,12,41,.06);scroll-snap-align:start}.cd-affiliate-card.compact{min-height:300px}.cd-affiliate-image{position:relative;aspect-ratio:4/3;background:#faf4f7;overflow:hidden}.cd-affiliate-image img{width:100%;height:100%;object-fit:cover;display:block}.cd-affiliate-image span{position:absolute;left:10px;top:10px;background:#fff;color:var(--cd-pink);border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;box-shadow:0 4px 12px rgba(0,0,0,.08)}.cd-affiliate-body{display:flex;flex-direction:column;gap:6px;padding:12px;flex:1}.cd-affiliate-body small{color:#8d7e85;font-size:10.5px}.cd-affiliate-body>strong{font-size:14px;line-height:1.3}.cd-affiliate-body>b{margin-top:auto;color:var(--cd-pink);font-size:11px;display:flex;align-items:center;gap:3px}.cd-affiliate-body>b svg{width:14px;height:14px}.cd-affiliate-price{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.cd-affiliate-price del{font-size:10px;color:#a89ba1}.cd-affiliate-price strong{font-size:15px;color:#221a1e}.cd-affiliate-disclosure{margin:6px 2px 0;color:#95858c;font-size:9.5px;line-height:1.45}.cd-shop-page{padding-bottom:24px}.cd-shop-hero{margin:8px 0 18px;padding:22px;border-radius:22px;background:linear-gradient(135deg,#fff0f6,#fff);border:1px solid #f4dce6}.cd-shop-hero h1{margin:4px 0 7px;font-size:25px;line-height:1.05}.cd-shop-hero p{margin:0;color:#695c62;font-size:13px;line-height:1.5}.cd-shop-search{display:flex;align-items:center;gap:8px;border:1px solid #ead9e0;background:#fff;border-radius:15px;padding:0 12px;margin-bottom:12px}.cd-shop-search svg{width:18px}.cd-shop-search input{width:100%;border:0;outline:0;background:transparent;padding:13px 0;font-size:14px}.cd-shop-filters{display:flex;gap:8px;overflow-x:auto;padding:0 0 10px;scrollbar-width:none}.cd-shop-filters::-webkit-scrollbar{display:none}.cd-shop-filters button{white-space:nowrap;border:1px solid #ead9e0;background:#fff;border-radius:999px;padding:8px 12px;color:#62545b}.cd-shop-filters button.active{background:var(--cd-pink);border-color:var(--cd-pink);color:#fff}.cd-shop-count{margin:5px 2px 12px;color:#7d6e75;font-size:12px}.cd-affiliate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cd-affiliate-grid .cd-affiliate-body{padding:10px}.cd-affiliate-grid .cd-affiliate-body>strong{font-size:12.5px}.cd-affiliate-grid .cd-affiliate-price strong{font-size:13px}
@media (max-width:420px){.cd-bottom-nav{padding-left:6px;padding-right:6px}.cd-nav-item{font-size:8.5px}.cd-nav-item svg{width:21px;height:21px}.cd-affiliate-rail{grid-auto-columns:minmax(170px,70%)}.cd-shop-hero h1{font-size:23px}}
@media (min-width:900px){.cd-affiliate-home{margin:28px 0 12px}.cd-affiliate-rail{grid-auto-flow:initial;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.cd-affiliate-card.compact{min-height:360px}.cd-affiliate-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.cd-shop-hero{padding:34px}.cd-shop-hero h1{font-size:34px}.cd-shop-page{max-width:1180px;margin:0 auto}.cd-affiliate-body>strong{font-size:15px}}
