/* ISO Metrik Dental Labs — AI Smile Assistant v2.0
   Resources showcase, Contact entry points, footer launcher, chat + browser voice. */

.imd-ai-smile-link{
  appearance:none;border:0;padding:0;margin:0;background:transparent;color:inherit;
  font:inherit;line-height:inherit;cursor:pointer;
}
.imd-ai-smile-link:hover,.imd-ai-smile-link:focus{color:#0869d5;text-decoration:underline;outline:none}

/* Resources showcase */
.imd-ai-resource{
  position:relative;overflow:hidden;margin-top:30px;display:grid;grid-template-columns:1.08fr .92fr;
  min-height:390px;border:1px solid #d4e4f3;border-radius:24px;
  background:linear-gradient(135deg,#073c79 0%,#075ab4 48%,#0b74d8 100%);
  box-shadow:0 24px 60px rgba(6,57,111,.16);color:#fff;
}
.imd-ai-resource:before,.imd-ai-resource:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.imd-ai-resource:before{width:360px;height:360px;right:-110px;top:-170px;background:rgba(255,255,255,.08)}
.imd-ai-resource:after{width:210px;height:210px;left:-85px;bottom:-125px;background:rgba(106,195,255,.12)}
.imd-ai-resource-copy{position:relative;z-index:2;padding:50px 28px 45px 50px;display:flex;flex-direction:column;justify-content:center}
.imd-ai-kicker{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:#cfe7ff;font-size:11px;font-weight:800;letter-spacing:.08em}
.imd-ai-live-dot{width:8px;height:8px;border-radius:50%;background:#5dda6b;box-shadow:0 0 0 5px rgba(93,218,107,.14)}
.imd-ai-resource h2{margin:0 0 14px;max-width:560px;color:#fff;font-size:34px;line-height:1.13;letter-spacing:-.6px}
.imd-ai-resource-copy>p{max-width:600px;margin:0;color:#e0edfb;font-size:13px;line-height:1.7}
.imd-ai-resource-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.imd-ai-primary-action{display:flex;align-items:center;gap:11px;min-width:190px;padding:12px 16px;border:1px solid rgba(255,255,255,.42);border-radius:12px;background:#fff;color:#0a4d91;box-shadow:0 10px 24px rgba(0,31,76,.14);cursor:pointer;text-align:left}
.imd-ai-primary-action.voice{background:#49a949;color:#fff;border-color:#49a949}
.imd-ai-primary-action:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,31,76,.19)}
.imd-ai-action-icon{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eaf4ff;color:#0967c8;flex:0 0 38px}
.imd-ai-primary-action.voice .imd-ai-action-icon{background:rgba(255,255,255,.18);color:#fff}
.imd-ai-action-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.imd-ai-primary-action strong{display:block;font-size:12px;line-height:1.15}.imd-ai-primary-action small{display:block;margin-top:3px;font-size:9px;font-weight:500;opacity:.72}
.imd-ai-resource-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:20px}.imd-ai-resource-links a{color:#fff;font-size:10px;font-weight:800;text-decoration:none}.imd-ai-resource-links a:hover{text-decoration:underline}
.imd-ai-resource .imd-ai-disclaimer{margin-top:18px;color:#c4ddf7;font-size:8.5px;line-height:1.55;max-width:580px}
.imd-ai-resource-demo{position:relative;z-index:2;align-self:center;justify-self:center;width:min(390px,calc(100% - 48px));min-height:300px;padding:22px;border:1px solid rgba(255,255,255,.3);border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 22px 55px rgba(0,34,80,.28);color:#25445f}
.imd-ai-demo-top{display:flex;align-items:center;gap:11px}.imd-ai-demo-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0c6bd6,#054d9b);color:#fff}.imd-ai-demo-avatar svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.imd-ai-demo-top strong{display:block;color:#0a3a79;font-size:13px}.imd-ai-demo-top span{display:flex;align-items:center;gap:5px;margin-top:3px;color:#71859b;font-size:8.5px}.imd-ai-demo-top i{width:6px;height:6px;border-radius:50%;background:#4cab56}
.imd-ai-demo-bubble{margin:22px 0 14px;padding:13px 14px;border-radius:14px 14px 14px 4px;background:#f0f6fd;color:#36506b;font-size:11px;line-height:1.55}
.imd-ai-demo-prompts{display:flex;gap:6px;flex-wrap:wrap}.imd-ai-demo-prompts span{padding:7px 9px;border:1px solid #d7e5f2;border-radius:999px;background:#fff;color:#0a5fb9;font-size:8px;font-weight:700}
.imd-ai-voice-orb{width:62px;height:62px;margin:20px auto 8px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#49a949,#2f8b39);color:#fff;box-shadow:0 0 0 9px rgba(73,169,73,.12)}.imd-ai-voice-orb svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.imd-ai-wave{height:25px;display:flex;gap:4px;align-items:center;justify-content:center}.imd-ai-wave b{width:3px;border-radius:10px;background:#0c6bd6;animation:imd-ai-wave 1.2s ease-in-out infinite}.imd-ai-wave b:nth-child(1),.imd-ai-wave b:nth-child(7){height:7px}.imd-ai-wave b:nth-child(2),.imd-ai-wave b:nth-child(6){height:13px;animation-delay:.1s}.imd-ai-wave b:nth-child(3),.imd-ai-wave b:nth-child(5){height:20px;animation-delay:.2s}.imd-ai-wave b:nth-child(4){height:25px;animation-delay:.3s}@keyframes imd-ai-wave{0%,100%{transform:scaleY(.55);opacity:.55}50%{transform:scaleY(1);opacity:1}}
.imd-ai-demo-caption{display:block;text-align:center;color:#7a8da1;font-size:7.5px}

/* Contact AI entry */
.imd-ai-contact-section{background:#fff}
.imd-ai-contact-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:22px}.imd-ai-contact-head h2{margin:0 0 7px;color:#0a3a79;font-size:29px}.imd-ai-contact-head p{margin:0;max-width:720px;color:#607287;font-size:12px;line-height:1.65}.imd-ai-contact-human{color:#0869d5;font-size:10px;font-weight:800;white-space:nowrap}
.imd-ai-contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.imd-ai-contact-card{display:grid;grid-template-columns:64px 1fr;gap:17px;align-items:center;padding:24px;border:1px solid #d9e6f2;border-radius:16px;background:linear-gradient(145deg,#fff,#f8fbff);text-align:left;cursor:pointer;box-shadow:0 10px 25px rgba(29,68,108,.05)}.imd-ai-contact-card.voice{background:linear-gradient(145deg,#f8fff8,#f3fbf4);border-color:#cee6d0}.imd-ai-contact-card:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(29,68,108,.10)}
.imd-ai-contact-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eaf4ff;color:#0869d5}.imd-ai-contact-card.voice .imd-ai-contact-icon{background:#e8f7ea;color:#3d9c49}.imd-ai-contact-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.imd-ai-contact-card strong{display:block;color:#0a3a79;font-size:17px}.imd-ai-contact-card small{display:block;margin:5px 0 8px;color:#63758a;font-size:10.5px;line-height:1.55}.imd-ai-contact-card em{color:#0869d5;font-style:normal;font-size:9.5px;font-weight:800}.imd-ai-contact-card.voice em{color:#3d9748}.imd-ai-contact-note{margin:13px 0 0;color:#7b8c9d;font-size:8.5px;line-height:1.55}

/* AI panel */
.imd-ai-smile-panel{position:fixed;z-index:999999;right:24px;bottom:24px;width:min(420px,calc(100vw - 32px));max-height:min(700px,calc(100vh - 48px));overflow:hidden;border:1px solid #d8e4ef;border-radius:20px;background:#fff;box-shadow:0 26px 80px rgba(7,44,83,.27);opacity:0;transform:translateY(12px) scale(.985);transition:opacity .16s ease,transform .16s ease;font-family:Poppins,Arial,sans-serif}
.imd-ai-smile-panel.is-open{opacity:1;transform:translateY(0) scale(1)}.imd-ai-smile-panel[hidden]{display:none!important}
.imd-ai-smile-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 17px;background:linear-gradient(135deg,#073c79,#0868d7);color:#fff}.imd-ai-smile-brand{display:flex;align-items:center;gap:11px}.imd-ai-smile-avatar{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.16)}.imd-ai-smile-avatar svg,.imd-ai-smile-head-actions svg,.imd-ai-smile-form svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.imd-ai-smile-avatar svg{width:24px;height:24px}.imd-ai-smile-brand strong{display:block;font-size:14px;line-height:1.25}.imd-ai-smile-brand small{display:flex;align-items:center;gap:5px;margin-top:3px;color:#d9ebff;font-size:8.5px}.imd-ai-smile-dot{width:7px;height:7px;border-radius:50%;background:#5dcc62}.imd-ai-smile-head-actions{display:flex;align-items:center;gap:4px}.imd-ai-smile-close,.imd-ai-smile-speaker{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:#fff;cursor:pointer}.imd-ai-smile-close{font-size:25px;line-height:1}.imd-ai-smile-speaker svg{width:17px;height:17px}.imd-ai-smile-close:hover,.imd-ai-smile-speaker:hover,.imd-ai-smile-speaker.is-on{background:rgba(255,255,255,.14)}.imd-ai-smile-speaker.is-on{color:#9cf0a5}.imd-ai-smile-speaker:disabled{opacity:.38;cursor:not-allowed}
.imd-ai-smile-voice-status{display:flex;align-items:center;gap:7px;padding:8px 15px;background:#eaf8ec;border-bottom:1px solid #d8ecdb;color:#31743a;font-size:8.5px}.imd-ai-smile-voice-status strong{font-size:9px}.imd-ai-listening-dot{width:7px;height:7px;border-radius:50%;background:#48a652;box-shadow:0 0 0 0 rgba(72,166,82,.5);animation:imd-ai-pulse 1.3s infinite}@keyframes imd-ai-pulse{70%{box-shadow:0 0 0 8px rgba(72,166,82,0)}100%{box-shadow:0 0 0 0 rgba(72,166,82,0)}}
.imd-ai-smile-messages{height:320px;overflow-y:auto;padding:17px 15px 10px;background:#f7faff;overscroll-behavior:contain}.imd-ai-smile-message{display:flex;margin:0 0 10px}.imd-ai-smile-message.user{justify-content:flex-end}.imd-ai-smile-bubble{max-width:84%;padding:10px 12px;border:1px solid #dce7f1;border-radius:13px 13px 13px 4px;background:#fff;color:#34506b;box-shadow:0 3px 10px rgba(18,62,103,.035);font-size:10.5px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.imd-ai-smile-message.user .imd-ai-smile-bubble{border-color:#0868d7;border-radius:13px 13px 4px 13px;background:#0868d7;color:#fff}.imd-ai-smile-message.typing .imd-ai-smile-bubble{display:flex;align-items:center;gap:4px;min-width:42px}.imd-ai-smile-message.typing span{width:5px;height:5px;border-radius:50%;background:#7790a8;animation:imd-ai-dot 1s infinite ease-in-out}.imd-ai-smile-message.typing span:nth-child(2){animation-delay:.12s}.imd-ai-smile-message.typing span:nth-child(3){animation-delay:.24s}@keyframes imd-ai-dot{0%,60%,100%{transform:translateY(0);opacity:.55}30%{transform:translateY(-3px);opacity:1}}
.imd-ai-smile-quick{display:flex;gap:6px;overflow-x:auto;padding:9px 12px 8px;border-top:1px solid #e5edf4;background:#fff;scrollbar-width:thin}.imd-ai-smile-quick button{flex:0 0 auto;min-height:29px;padding:6px 9px;border:1px solid #cddfee;border-radius:999px;background:#fff;color:#0a4f91;font-size:8px;font-weight:700;cursor:pointer}.imd-ai-smile-quick button:hover{background:#f0f6fc}
.imd-ai-smile-form{display:grid;grid-template-columns:38px 1fr 38px;gap:7px;align-items:end;padding:10px 12px;border-top:1px solid #e5edf4;background:#fff}.imd-ai-smile-form textarea{width:100%;min-height:40px;max-height:100px;resize:vertical;box-sizing:border-box;padding:10px 11px;border:1px solid #cedce9;border-radius:10px;outline:none;background:#fff;color:#25445f;font:inherit;font-size:10px;line-height:1.4}.imd-ai-smile-form textarea:focus{border-color:#0868d7;box-shadow:0 0 0 2px rgba(8,104,215,.10)}.imd-ai-smile-form button{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:0;border-radius:10px;color:#fff;cursor:pointer}.imd-ai-smile-send{background:#43a447}.imd-ai-smile-mic{background:#0968ce}.imd-ai-smile-mic.is-listening{background:#e54c4c;animation:imd-ai-mic-glow 1.2s infinite}@keyframes imd-ai-mic-glow{50%{box-shadow:0 0 0 6px rgba(229,76,76,.15)}}.imd-ai-smile-form button:disabled{opacity:.45;cursor:not-allowed}.imd-ai-smile-form button svg{width:18px;height:18px}.imd-ai-smile-foot{padding:0 13px 11px;background:#fff;color:#8292a1;font-size:7.2px;line-height:1.4;text-align:center}

/* Footer AI button-like links inherit footer typography cleanly */
.footer a[data-imd-ai-smile-open]{cursor:pointer}

@media(max-width:900px){.imd-ai-resource{grid-template-columns:1fr}.imd-ai-resource-copy{padding:40px 34px 22px}.imd-ai-resource-demo{margin:0 auto 34px;width:min(430px,calc(100% - 56px))}.imd-ai-contact-head{align-items:flex-start;flex-direction:column}.imd-ai-contact-grid{grid-template-columns:1fr}}
@media(max-width:600px){.imd-ai-resource{border-radius:18px}.imd-ai-resource-copy{padding:32px 22px 18px}.imd-ai-resource h2{font-size:27px}.imd-ai-resource-actions{display:grid;grid-template-columns:1fr}.imd-ai-primary-action{width:100%;min-width:0}.imd-ai-resource-demo{width:calc(100% - 36px);padding:18px;margin-bottom:26px}.imd-ai-contact-grid{grid-template-columns:1fr}.imd-ai-contact-card{grid-template-columns:54px 1fr;padding:18px}.imd-ai-contact-icon{width:54px;height:54px}.imd-ai-smile-panel{right:12px;bottom:12px;width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.imd-ai-smile-messages{height:300px}}

/* v2.6.55 — OpenAI Realtime natural voice */
.imd-ai-smile-voice-status{justify-content:flex-start;gap:9px;padding:9px 13px}.imd-ai-voice-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:1px}.imd-ai-voice-copy strong{font-size:9px}.imd-ai-voice-copy span{font-size:8px;color:#5d7b64}.imd-ai-voice-end{flex:0 0 auto;padding:6px 9px;border:1px solid #d6e6d9;border-radius:999px;background:#fff;color:#34723d;font-size:7.5px;font-weight:800;cursor:pointer}.imd-ai-voice-end:hover{background:#f6fff7}.imd-ai-smile-voice-status[data-state="connecting"],.imd-ai-smile-voice-status[data-state="thinking"]{background:#edf5ff;border-bottom-color:#d8e6f5;color:#1a5f9d}.imd-ai-smile-voice-status[data-state="speaking"]{background:#eef7ff;color:#0b64b7}.imd-ai-smile-voice-status[data-state="muted"],.imd-ai-smile-voice-status[data-state="error"]{background:#fff4f1;border-bottom-color:#f1ddd7;color:#984b3b}.imd-ai-smile-voice-status[data-state="ended"]{background:#f5f7f9;color:#63758a}.imd-ai-listening-dot.is-thinking{background:#2f83cf}.imd-ai-listening-dot.is-speaking{background:#0869d5}.imd-ai-listening-dot.is-muted{background:#c05b4d;animation:none}.imd-ai-smile-mic.is-muted{background:#6e7f90}.imd-ai-realtime-audio{position:fixed;width:1px;height:1px;opacity:0;pointer-events:none;left:-9999px;top:-9999px}.imd-ai-smile-foot{font-size:7.4px}

/* v2.6.56 — Customer + Provider dashboard AI entry points */
.imd-dashboard-ai-card{
  position:relative;
  display:grid;
  grid-template-columns:68px minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  overflow:hidden;
  padding:22px 24px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  background:
    radial-gradient(circle at 84% 16%,rgba(75,183,255,.22),transparent 30%),
    linear-gradient(135deg,#082f67 0%,#0a5ec2 58%,#0b76d8 100%);
  box-shadow:0 12px 28px rgba(9,59,121,.16);
  color:#fff;
}
.imd-dashboard-ai-card:after{
  content:"";
  position:absolute;
  right:-24px;
  bottom:-46px;
  width:170px;
  height:170px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  box-shadow:0 0 0 28px rgba(255,255,255,.035),0 0 0 58px rgba(255,255,255,.025);
  pointer-events:none;
}
.imd-dashboard-ai-card.provider{
  background:
    radial-gradient(circle at 84% 16%,rgba(74,209,151,.18),transparent 31%),
    linear-gradient(135deg,#082f67 0%,#0a57b0 56%,#0868d7 100%);
}
.imd-dashboard-ai-icon{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:62px;
  height:62px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:18px;
  background:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(6px);
}
.imd-dashboard-ai-icon .ico{width:33px;height:33px}
.imd-dashboard-ai-icon svg{width:100%;height:100%;fill:none!important;stroke:#fff!important;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.imd-dashboard-ai-copy{position:relative;z-index:1;min-width:0}
.imd-dashboard-ai-eyebrow{margin:0 0 5px;color:#bfe0ff;font-size:8.5px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.imd-dashboard-ai-card.provider .imd-dashboard-ai-eyebrow{color:#c9f5dd}
.imd-dashboard-ai-copy h2{margin:0 0 6px;color:#fff;font-size:18px;line-height:1.15;letter-spacing:-.15px}
.imd-dashboard-ai-copy p{max-width:660px;margin:0;color:#edf6ff;font-size:10px;line-height:1.55}
.imd-dashboard-ai-copy small{display:block;max-width:690px;margin-top:7px;color:#c9def4;font-size:8.5px;line-height:1.45}
.imd-dashboard-ai-actions{position:relative;z-index:1;display:flex;gap:9px;align-items:center;justify-content:flex-end}
.imd-dashboard-ai-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:9px 13px;
  border-radius:7px;
  border:1px solid rgba(255,255,255,.68);
  cursor:pointer;
  font-family:inherit;
  font-size:9.5px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.imd-dashboard-ai-btn .ico{width:16px;height:16px}
.imd-dashboard-ai-btn svg{width:100%;height:100%;fill:none!important;stroke:currentColor!important;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.imd-dashboard-ai-btn.primary{background:#fff;color:#075db8;border-color:#fff;box-shadow:0 6px 16px rgba(3,32,70,.15)}
.imd-dashboard-ai-btn.voice{background:rgba(255,255,255,.10);color:#fff}
.imd-dashboard-ai-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(3,32,70,.19)}
.imd-dashboard-ai-btn:focus-visible{outline:3px solid rgba(255,255,255,.55);outline-offset:2px}

@media(max-width:980px){
  .imd-dashboard-ai-card{grid-template-columns:58px minmax(0,1fr);padding:20px}
  .imd-dashboard-ai-icon{width:54px;height:54px;border-radius:15px}
  .imd-dashboard-ai-actions{grid-column:1/-1;justify-content:flex-start;padding-left:76px}
}
@media(max-width:640px){
  .imd-dashboard-ai-card{display:block;padding:19px}
  .imd-dashboard-ai-icon{width:48px;height:48px;margin-bottom:13px;border-radius:14px}
  .imd-dashboard-ai-icon .ico{width:27px;height:27px}
  .imd-dashboard-ai-copy h2{font-size:17px}
  .imd-dashboard-ai-copy p{font-size:9.5px}
  .imd-dashboard-ai-actions{display:grid;grid-template-columns:1fr 1fr;padding-left:0;margin-top:14px}
  .imd-dashboard-ai-btn{width:100%;min-height:40px}
}
