
:root {
  --yk-vh: 1vh;
  --yk-visual-height: 100vh;
  --yk-keyboard-offset: 0px;
  --yk-safe-top: env(safe-area-inset-top, 0px);
  --yk-safe-right: env(safe-area-inset-right, 0px);
  --yk-safe-bottom: env(safe-area-inset-bottom, 0px);
  --yk-safe-left: env(safe-area-inset-left, 0px);
}
@supports (height: 100dvh) {
  :root { --yk-visual-height: 100dvh; }
}
html.yk-safari,
html.yk-ios {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: auto;
}
html.yk-safari *,
html.yk-ios * {
  -webkit-tap-highlight-color: rgba(13, 110, 253, 0.12);
}
html.yk-ios body {
  min-height: -webkit-fill-available;
  min-height: calc(var(--yk-vh, 1vh) * 100);
  overscroll-behavior-y: none;
}
html.yk-safari body,
html.yk-ios body {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
}
html.yk-ios input,
html.yk-ios select,
html.yk-ios textarea,
html.yk-ios [contenteditable="true"] {
  font-size: 16px !important;
  -webkit-user-select: text;
}
html.yk-ios input,
html.yk-ios textarea,
html.yk-ios select {
  border-radius: 10px;
  -webkit-appearance: none;
  appearance: none;
}
html.yk-ios select {
  -webkit-appearance: menulist;
  appearance: auto;
}
html.yk-ios button,
html.yk-ios .btn,
html.yk-ios a[role="button"],
html.yk-ios input[type="button"],
html.yk-ios input[type="submit"] {
  touch-action: manipulation;
  -webkit-touch-callout: none;
}
html.yk-safari button,
html.yk-safari .btn,
html.yk-ios button,
html.yk-ios .btn {
  cursor: pointer;
}
html.yk-ios .app-shell,
html.yk-ios .app-layout,
html.yk-ios .main-container,
html.yk-ios main,
html.yk-ios .main-content,
html.yk-ios .content-area {
  min-height: -webkit-fill-available;
  min-height: calc(var(--yk-vh, 1vh) * 100);
}
html.yk-safari .app-layout,
html.yk-safari .main-content,
html.yk-safari .content-area {
  min-height: var(--yk-visual-height, 100vh);
}
html.yk-safari .main-content,
html.yk-safari .main-container,
html.yk-ios .main-content,
html.yk-ios .main-container {
  max-width: 100vw;
  overflow-x: clip;
}
html.yk-safari .table-responsive,
html.yk-ios .table-responsive,
html.yk-safari .yk-table-scroll,
html.yk-ios .yk-table-scroll,
html.yk-safari .yk-media-thumb-strip,
html.yk-ios .yk-media-thumb-strip,
html.yk-safari .sidebar,
html.yk-ios .sidebar {
  -webkit-overflow-scrolling: touch;
}
html.yk-safari.yk-safari-safe,
html.yk-safari.yk-safari-safe * {
  scroll-behavior: auto !important;
}
html.yk-safari.yk-safari-safe .glass,
html.yk-safari.yk-safari-safe [style*="backdrop-filter"],
html.yk-safari.yk-safari-safe [style*="-webkit-backdrop-filter"],
html.yk-safari.yk-safari-safe .yk-patient-command,
html.yk-safari.yk-safari-safe .yk-media-thumb-strip,
html.yk-safari.yk-safari-safe .sidebar,
html.yk-safari.yk-safari-safe .top-header,
html.yk-safari.yk-safari-safe .mobile-bottom-nav {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
html.yk-safari.yk-safari-safe .yk-media-section,
html.yk-safari.yk-safari-safe .yk-media-card,
html.yk-safari.yk-safari-safe .patient-card {
  content-visibility: visible !important;
  contain-intrinsic-size: auto !important;
}
html.yk-ios .mobile-bottom-nav,
html.yk-ios .yk-floating-shortcuts,
html.yk-ios .yk-voice-dock,
html.yk-ios .yk-smart-banner {
  padding-bottom: max(8px, env(safe-area-inset-bottom)) !important;
}
html.yk-ios .top-header,
html.yk-ios .app-header {
  padding-top: max(0px, env(safe-area-inset-top)) !important;
}
html.yk-ios .top-header {
  min-height: calc(var(--header-h, 76px) + env(safe-area-inset-top, 0px));
}
html.yk-ios .main-content {
  padding-top: calc(var(--header-h, 76px) + env(safe-area-inset-top, 0px)) !important;
}
html.yk-ios .main-container {
  padding-left: max(12px, env(safe-area-inset-left, 0px)) !important;
  padding-right: max(12px, env(safe-area-inset-right, 0px)) !important;
  padding-bottom: calc(112px + env(safe-area-inset-bottom, 0px)) !important;
}
html.yk-ios .mobile-bottom-nav {
  bottom: max(8px, env(safe-area-inset-bottom, 0px)) !important;
  left: max(10px, env(safe-area-inset-left, 0px)) !important;
  right: max(10px, env(safe-area-inset-right, 0px)) !important;
}
html.yk-ios .theme-panel,
html.yk-ios .yk-smart-guide-button,
html.yk-ios .yk-floating-shortcuts,
html.yk-ios .yk-voice-agent,
html.yk-ios .yk-dictate-dock,
html.yk-ios .yk-mic-chip,
html.yk-ios .yk-speak-chip,
html.yk-ios .yk-mic-log,
html.yk-ios .yk-web-mic-help,
html.yk-ios .yk-shortcut-control {
  margin-bottom: env(safe-area-inset-bottom, 0px);
}
html.yk-ios.yk-keyboard-open .mobile-bottom-nav,
html.yk-ios.yk-keyboard-open .yk-smart-guide-button,
html.yk-ios.yk-keyboard-open .yk-floating-shortcuts,
html.yk-ios.yk-keyboard-open .yk-mic-chip,
html.yk-ios.yk-keyboard-open .yk-speak-chip {
  transform: translateY(calc(-1 * min(var(--yk-keyboard-offset, 0px), 280px))) translateZ(0);
}
html.yk-ios .modal,
html.yk-ios .dropdown-menu,
html.yk-ios .yk-mode-window,
html.yk-ios .yk-media-viewer,
html.yk-ios .yk-smart-banner,
html.yk-ios .yk-floating-shortcuts,
html.yk-ios .yk-voice-dock {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
html.yk-safari .modal,
html.yk-safari .modal-dialog,
html.yk-ios .modal,
html.yk-ios .modal-dialog {
  max-width: calc(100vw - max(20px, env(safe-area-inset-left, 0px) + env(safe-area-inset-right, 0px))) !important;
}
html.yk-safari img,
html.yk-ios img,
html.yk-safari video,
html.yk-ios video,
html.yk-safari canvas,
html.yk-ios canvas {
  max-width: 100%;
}
@media (hover: none) and (pointer: coarse) {
  .yk-hd-send,
  .yk-patient-open-hint,
  .dropdown-menu,
  .tools-panel {
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  .yk-media-card:hover,
  .patient-card:hover,
  .btn:hover {
    transform: none !important;
  }
}
@media (max-width: 820px) {
  html.yk-safari .top-header,
  html.yk-ios .top-header {
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    max-width: 100vw !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  html.yk-safari .header-actions,
  html.yk-ios .header-actions {
    flex-wrap: nowrap !important;
  }
  html.yk-safari .main-content,
  html.yk-ios .main-content {
    margin-left: 0 !important;
  }
  html.yk-safari .main-container,
  html.yk-ios .main-container,
  html.yk-safari .container,
  html.yk-ios .container,
  html.yk-safari .container-fluid,
  html.yk-ios .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
  }
  html.yk-safari .card,
  html.yk-ios .card,
  html.yk-safari .yk-service-agent-card,
  html.yk-ios .yk-service-agent-card,
  html.yk-safari .yk-know-card,
  html.yk-ios .yk-know-card {
    max-width: 100% !important;
    overflow-wrap: anywhere;
  }
  html.yk-safari table,
  html.yk-ios table {
    max-width: 100%;
  }
}
@media (max-width: 480px) {
  .yk-login-shell {
    width: 100% !important;
    max-width: calc(100vw - 24px) !important;
    box-sizing: border-box !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .yk-login-shell *,
  .yk-login-shell *::before,
  .yk-login-shell *::after {
    box-sizing: border-box;
  }
  .yk-login-shell .card {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 22px !important;
  }
  .yk-login-shell .card-body {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  .yk-login-shell .lede,
  .yk-login-shell p,
  .yk-login-shell div {
    max-width: 100% !important;
    overflow-wrap: anywhere;
  }
  .yk-login-shell h1 {
    letter-spacing: 0 !important;
    font-size: 34px !important;
  }
  .yk-login-shell .btn,
  .yk-login-shell .form-control {
    width: 100% !important;
    max-width: 100% !important;
  }
}
