/* Host Conecta V7.4.1 — correção de mídia desktop
   1) mídia inteligente no hero desktop;
   2) PWA operacional mobile-first aprovado.
   Painel e Admin permanecem congelados na composição V7.3/V7.2. */

/* ---------- Desktop V7.4.1: quadro proporcional à mídia ----------
   No desktop existe espaço para preservar a informação. O quadro acompanha
   a proporção do arquivo (dentro de limites seguros) e a mídia nunca é cortada. */
@media(min-width:900px){
  body.host-public .desktop-hero-visual-v73{
    min-height:535px!important;
  }
  body.host-public .desktop-cover-v73{
    isolation:isolate;
    left:0!important;
    right:0!important;
    top:50%!important;
    bottom:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:var(--desktop-media-ratio,16/10)!important;
    transform:translateY(-50%);
    background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,#EEF3F4),#F7F9FA)!important;
  }
  body.host-public .desktop-cover-v73::before{
    content:"";
    position:absolute;
    inset:-18px;
    z-index:0;
    background-image:var(--desktop-cover-bg,none);
    background-size:cover;
    background-position:var(--cover-position,center);
    filter:blur(24px) saturate(.72);
    transform:scale(1.06);
    opacity:.16;
  }
  body.host-public .desktop-cover-v73>.desktop-cover-media-v74{
    position:relative;
    z-index:1;
    width:100%!important;
    height:100%!important;
    display:block!important;
    object-fit:contain!important;
    object-position:var(--cover-position,center)!important;
    padding:0!important;
  }
  body.host-public .desktop-cover-v73[data-media-shape="portrait"]>.desktop-cover-media-v74,
  body.host-public .desktop-cover-v73[data-media-shape="square"]>.desktop-cover-media-v74{
    padding:14px!important;
  }
  body.host-public .desktop-cover-v73[data-media-type="video"]>.desktop-cover-media-v74{
    background:rgba(255,255,255,.12);
  }
  body.host-public .desktop-cover-shade-v73{z-index:2;opacity:.34}
  body.host-public .desktop-cover-v73 .cover-fallback{position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 14%,#EFF5F6),#F4F0FF)}
}

/* ---------- PWA: app operacional, não painel responsivo ---------- */
body.host-pwa{
  background:#EEF2F4!important;
  --pwa-purple:#6A35D9;
  --pwa-violet:#885CF6;
  --pwa-host:#0D3B4C;
  --pwa-muted:#718286;
  --pwa-line:#E3E9EC;
}
body.host-pwa .app-shell{
  max-width:480px!important;
  background:#F4F6F8!important;
  box-shadow:0 28px 80px rgba(13,59,76,.13)!important;
}
body.host-pwa .top{
  padding:15px 16px!important;
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid var(--pwa-line)!important;
}
body.host-pwa .identity .avatar{width:44px!important;height:44px!important;border-radius:14px!important}
body.host-pwa .identity b{font:800 13px "Plus Jakarta Sans",Inter,sans-serif!important;color:var(--pwa-host)!important}
body.host-pwa .identity span{font-size:8px!important;color:#81909A!important}
body.host-pwa .host-pwa-logo{height:25px!important;max-width:90px!important}
body.host-pwa .top-actions .icon-btn{padding:8px 9px!important;font-size:8px!important}
body.host-pwa .main{padding:13px 13px 22px!important}

body.host-pwa .pwa-home-welcome{
  margin-bottom:10px;
  padding:15px 15px 14px;
  border:1px solid #E5DFFF;
  border-radius:18px;
  background:
    radial-gradient(circle at 92% 8%,rgba(136,92,246,.16),transparent 28%),
    linear-gradient(135deg,#F5F1FF,#F1F7F8);
}
body.host-pwa .pwa-home-welcome small{display:block;font-size:8px;color:var(--pwa-purple);font-weight:800}
body.host-pwa .pwa-home-welcome h1{margin:5px 0 3px;font-size:20px;color:var(--pwa-host)}
body.host-pwa .pwa-home-welcome p{margin:0;font-size:9px;line-height:1.5;color:#71828C}
body.host-pwa .app-mode{margin-top:8px!important;background:#fff!important;border-color:#E3E8EB!important}

body.host-pwa .pwa-priority{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin:0 0 10px;padding:13px 14px;border-radius:16px;
  background:#fff;border:1px solid var(--pwa-line);box-shadow:0 8px 22px rgba(13,59,76,.05)
}
body.host-pwa .pwa-priority[data-empty="true"]{background:#F9FBFB}
body.host-pwa .pwa-priority strong{display:block;font-size:11px;color:var(--pwa-host)}
body.host-pwa .pwa-priority span{display:block;margin-top:3px;font-size:8px;color:#7E8D96}
body.host-pwa .pwa-priority button{border:0;border-radius:10px;background:#F0EBFF;color:var(--pwa-purple);padding:9px 10px;font-size:8px;font-weight:800;white-space:nowrap}

body.host-pwa .pwa-home-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:0 0 10px}
body.host-pwa .pwa-home-kpi{padding:12px;border-radius:15px;border:1px solid var(--pwa-line);background:#fff;box-shadow:0 7px 20px rgba(13,59,76,.045)}
body.host-pwa .pwa-home-kpi small{display:block;font-size:7px;color:#7C8C96;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
body.host-pwa .pwa-home-kpi b{display:block;margin-top:5px;font:800 20px "Plus Jakarta Sans",Inter,sans-serif;color:var(--pwa-host)}
body.host-pwa .pwa-home-kpi span{font-size:7px;color:#80909A}

body.host-pwa .pwa-section-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin:16px 1px 8px}
body.host-pwa .pwa-section-head h2{margin:0;font-size:15px;color:var(--pwa-host)}
body.host-pwa .pwa-section-head p{margin:3px 0 0;font-size:8px;color:#80909A}
body.host-pwa .pwa-section-head button{border:0;background:transparent;color:var(--pwa-purple);font-size:8px;font-weight:800;padding:4px}

body.host-pwa .pwa-home-appointments{display:grid;gap:7px}
body.host-pwa .pwa-appointment-compact{display:grid;grid-template-columns:50px 1fr auto;gap:9px;align-items:center;padding:11px 12px;border:1px solid var(--pwa-line);border-radius:15px;background:#fff}
body.host-pwa .pwa-appointment-compact time{font:800 11px "Plus Jakarta Sans",Inter,sans-serif;color:var(--pwa-host)}
body.host-pwa .pwa-appointment-compact b{display:block;font-size:9px;color:#334650}
body.host-pwa .pwa-appointment-compact span.meta{display:block;margin-top:2px;font-size:7px;color:#84929A}
body.host-pwa .pwa-appointment-compact .status{font-size:6px!important;padding:5px 6px!important}

body.host-pwa .pwa-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
body.host-pwa .pwa-quick-action{border:1px solid var(--pwa-line);background:#fff;border-radius:14px;padding:11px 6px;color:#526570;font-size:8px;font-weight:700;text-align:center}
body.host-pwa .pwa-quick-action i{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;margin:0 auto 6px;background:#F0EBFF;color:var(--pwa-purple);font-style:normal;font-weight:900}

body.host-pwa .pwa-insight{margin-top:8px;padding:13px 14px;border:1px solid #E6DFFF;border-radius:16px;background:linear-gradient(135deg,#FAF8FF,#F5F9FA)}
body.host-pwa .pwa-insight small{font-size:7px;color:var(--pwa-purple);font-weight:900;text-transform:uppercase;letter-spacing:.07em}
body.host-pwa .pwa-insight b{display:block;margin-top:5px;font-size:10px;color:var(--pwa-host)}
body.host-pwa .pwa-insight p{margin:5px 0 0;font-size:8px;line-height:1.5;color:#74858F}

body.host-pwa .pwa-results-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
body.host-pwa .pwa-result-card{padding:14px;border:1px solid var(--pwa-line);border-radius:15px;background:#fff}
body.host-pwa .pwa-result-card small{display:block;color:#7C8C96;font-size:7px;text-transform:uppercase;letter-spacing:.06em}
body.host-pwa .pwa-result-card b{display:block;margin-top:5px;font:800 19px "Plus Jakarta Sans",Inter,sans-serif;color:var(--pwa-host)}
body.host-pwa .pwa-result-card.wide{grid-column:1/-1}
body.host-pwa .pwa-result-card.wide b{font-size:10px;line-height:1.45}

body.host-pwa .pwa-contact-list{display:grid;gap:7px}
body.host-pwa .pwa-contact-row{padding:12px;border:1px solid var(--pwa-line);border-radius:14px;background:#fff}
body.host-pwa .pwa-contact-row b{display:block;font-size:10px;color:var(--pwa-host)}
body.host-pwa .pwa-contact-row span{display:block;margin-top:3px;font-size:8px;color:#7C8C96}

body.host-pwa .pwa-more-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
body.host-pwa .pwa-more-button{border:1px solid var(--pwa-line);border-radius:14px;background:#fff;padding:13px;text-align:left;color:var(--pwa-host);font-size:9px;font-weight:800}
body.host-pwa .pwa-more-button span{display:block;margin-top:4px;color:#84929A;font-size:7px;font-weight:500;line-height:1.4}

body.host-pwa .bottom{width:min(480px,100%)!important;grid-template-columns:repeat(5,1fr)!important;padding-top:7px!important}
body.host-pwa .bottom button{font-size:7px!important;padding:6px 2px!important}
body.host-pwa .bottom button i{font-size:16px!important;margin-bottom:2px!important}

@media(max-width:520px){
  body.host-pwa .app-shell{max-width:none!important;box-shadow:none!important}
  body.host-pwa .top-actions .host-pwa-logo{display:none}
}
