.leo-ai-panel{margin-top:12px;padding:14px;border:1px solid rgba(99,102,241,.28);border-radius:18px;background:linear-gradient(180deg,rgba(15,23,42,.9),rgba(9,15,30,.88));box-shadow:0 10px 30px rgba(0,0,0,.18)}
.leo-ai-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.leo-ai-kicker{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#a5b4fc}.leo-ai-sub{margin-left:7px;font-size:12px;color:#94a3b8}
.leo-ai-lang{display:flex;gap:6px}.leo-ai-lang button{min-width:42px;min-height:36px;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:rgba(15,23,42,.9);color:#cbd5e1;font-weight:700}.leo-ai-lang button.is-active{border-color:rgba(129,140,248,.75);background:rgba(79,70,229,.22);color:#eef2ff}
.leo-ai-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.leo-ai-row input{min-width:0;width:100%;min-height:46px;border-radius:12px;border:1px solid rgba(148,163,184,.24);background:rgba(2,6,23,.72);color:#f8fafc;padding:0 13px;font-size:16px}.leo-ai-row button{min-height:46px}.leo-ai-mic{width:48px;border-radius:12px;border:1px solid rgba(99,102,241,.28);background:rgba(30,41,59,.9);color:#fff}.leo-ai-mic.is-listening{outline:2px solid rgba(96,165,250,.55);animation:leoPulse 1s infinite}.leo-ai-meta{display:flex;gap:10px;align-items:center;margin-top:8px;min-height:22px}.leo-ai-state{font-size:12px;font-weight:700;color:#cbd5e1}.leo-ai-transcript{font-size:12px;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leo-ai-feedback{margin-top:8px;min-height:20px;color:#e2e8f0;font-size:13px;line-height:1.45}@keyframes leoPulse{50%{transform:scale(1.035);box-shadow:0 0 0 6px rgba(96,165,250,.08)}}
@media(max-width:620px){.leo-ai-head{align-items:flex-start}.leo-ai-row{grid-template-columns:minmax(0,1fr) auto}.leo-ai-row .primary{grid-column:1/-1}.leo-ai-row input{grid-column:1}.leo-ai-mic{grid-column:2;grid-row:1}}

.leo-ai-panel{margin-top:12px;padding:14px;border:1px solid rgba(99,102,241,.28);border-radius:18px;background:linear-gradient(180deg,rgba(15,23,42,.95),rgba(9,15,30,.92));box-shadow:0 10px 30px rgba(0,0,0,.18);overflow:hidden}
.leo-ai-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.leo-ai-kicker{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#a5b4fc}.leo-ai-sub{margin-left:7px;font-size:12px;color:#94a3b8}.leo-ai-controls{display:flex;align-items:center;gap:8px;min-width:0}.leo-ai-controls select{max-width:min(62vw,260px);min-height:38px;border:1px solid rgba(148,163,184,.28);border-radius:10px;padding:7px 28px 7px 10px;background:#0f172a;color:#e2e8f0;font:inherit}.leo-ai-tts{min-width:40px;min-height:38px;border:1px solid rgba(99,102,241,.35);border-radius:10px;background:#172554;color:#fff}.leo-ai-row{display:grid;grid-template-columns:minmax(0,1fr) 48px 80px;gap:8px}.leo-ai-row input{width:100%;min-width:0;border:1px solid rgba(148,163,184,.25);border-radius:12px;background:#020617;color:#f8fafc;padding:12px 13px;font:inherit}.leo-ai-row button{border:1px solid rgba(148,163,184,.24);border-radius:12px;background:#111827;color:#f8fafc}.leo-ai-row .primary{background:linear-gradient(135deg,#4f46e5,#2563eb);font-weight:700}.leo-ai-mic.is-listening{background:#7f1d1d;box-shadow:0 0 0 3px rgba(248,113,113,.25)}.leo-ai-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:12px}.leo-ai-state{color:#cbd5e1}.leo-ai-transcript{color:#93c5fd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leo-ai-feedback{margin-top:8px;min-height:20px;color:#dbeafe;overflow-wrap:anywhere;word-break:break-word}.leo-ai-help{margin-top:9px;display:flex;gap:6px;flex-wrap:wrap;align-items:center;color:#64748b;font-size:11px}.leo-ai-help button{border:1px solid rgba(148,163,184,.18);background:rgba(30,41,59,.75);color:#cbd5e1;border-radius:999px;padding:5px 9px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:640px){.leo-ai-row{grid-template-columns:minmax(0,1fr) 48px}.leo-ai-row .primary{grid-column:1/-1}.leo-ai-controls{width:100%}.leo-ai-controls select{flex:1;max-width:none}.leo-ai-meta{flex-direction:column}.leo-ai-transcript{white-space:normal}}


/* LEO v4: resilient mobile controls, no overflow, explicit free-engine status. */
.leo-ai-panel,.leo-ai-panel *{box-sizing:border-box;max-width:100%;}
.leo-ai-head>div:first-child{min-width:0;overflow-wrap:anywhere;word-break:break-word;}
.leo-ai-kicker{white-space:normal;overflow-wrap:anywhere;}
.leo-ai-free-note{margin-top:3px;color:#7dd3fc;font-size:10px;line-height:1.35;overflow-wrap:anywhere;}
.leo-ai-controls{flex:0 1 100%;}
.leo-ai-controls label{min-width:0;flex:1;}
.leo-ai-controls select{width:100%;max-width:100%;min-width:0;}
.leo-ai-row input{min-width:0;overflow-wrap:anywhere;}
@media(min-width:641px){.leo-ai-controls{flex:0 1 330px;}.leo-ai-controls select{max-width:285px;}}
@media(max-width:640px){.leo-ai-panel{padding:12px;}.leo-ai-head{gap:8px;}.leo-ai-row{grid-template-columns:minmax(0,1fr) 48px;}.leo-ai-row .primary{grid-column:1/-1;}.leo-ai-help button{min-height:38px;}.leo-ai-controls{width:100%;}.leo-ai-controls select{font-size:14px;}}


/* Root MedicalTV LEO is a transient assistive overlay, not a block in the document flow.
   The paired-phone remote keeps its existing inline panel layout. */
.leo-ai-root-panel[hidden] { display: none !important; }
.leo-ai-root-panel:not([hidden]) {
  position: fixed !important;
  left: auto !important;
  right: max(12px, env(safe-area-inset-right, 0px)) !important;
  bottom: calc(var(--medtv-mobile-primary-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 10px) !important;
  z-index: 99990 !important;
  width: min(640px, calc(100vw - 24px)) !important;
  max-height: min(58dvh, 620px) !important;
  margin: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
  box-shadow: 0 20px 56px rgba(0,0,0,.48) !important;
}
@media (max-width: 640px) {
  .leo-ai-root-panel:not([hidden]) {
    left: 10px !important;
    right: 10px !important;
    bottom: calc(var(--medtv-mobile-primary-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 9px) !important;
    width: auto !important;
    max-height: min(55dvh, 560px) !important;
    padding: 10px !important;
    border-radius: 16px !important;
  }
  .leo-ai-root-panel .leo-ai-free-note { max-height: 2.7em; overflow: hidden; }
  .leo-ai-root-panel .leo-ai-help { max-height: 72px; overflow-y: auto; overscroll-behavior: contain; }
}
@media (prefers-reduced-motion: reduce) { .leo-ai-root-panel { scroll-behavior: auto !important; } }
