/* Canonical floating World experiences surface shared by each semantic World. */
/* Navigation emphasis is owned by tours/tour-highlights.js; no legacy boxes. */

@media (prefers-reduced-motion: reduce) {
  .sfi-world-guide-launcher-icon::before { animation: none !important; }
}
.sfi-world-guide-dock {
  position: absolute;
  z-index: 41;
  top: calc(var(--sfi-global-action-top) + var(--sfi-global-action-height) + 8px);
  right: var(--sfi-global-action-right);
  width: min(410px, calc(100vw - 32px));
  color: rgba(244, 250, 255, .94);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  pointer-events: none;
}
.sfi-world-guide-launchers {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  pointer-events: auto;
}
.sfi-world-guide-launcher {
  position: relative;
  display: inline-flex;
  min-height: var(--sfi-global-action-height);
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 7px 11px;
  border: 1px solid rgba(191, 232, 251, .34);
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(14, 31, 44, .92), rgba(4, 10, 17, .92));
  box-shadow: 0 10px 28px rgba(0, 0, 0, .36), inset 0 1px rgba(255, 255, 255, .045);
  color: rgba(240, 250, 255, .92);
  cursor: pointer;
  overflow: hidden;
  font: inherit;
  font-size: 8px;
  letter-spacing: .065em;
  text-transform: uppercase;
  backdrop-filter: blur(18px) saturate(116%);
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease, transform 180ms ease;
}
.sfi-world-guide-launcher:hover,
.sfi-world-guide-launcher:focus-visible,
.sfi-world-guide-launcher[aria-pressed="true"] {
  border-color: rgba(190, 232, 253, .64);
  outline: none;
  background: linear-gradient(135deg, rgba(24, 49, 66, .95), rgba(7, 18, 28, .94));
  color: #fff;
}
.sfi-world-guide-launcher-icon {
  position: relative;
  display: block;
  width: 13px;
  min-width: 13px;
  height: 13px;
}
.sfi-world-guide-launcher-icon.is-ask::before,
.sfi-world-guide-launcher-icon.is-ask::after {
  position: absolute;
  top: 3px;
  width: 2px;
  height: 7px;
  border-radius: 99px;
  background: rgba(154, 222, 255, .88);
  content: "";
}
.sfi-world-guide-launcher-icon.is-ask::before { left: 2px; box-shadow: 4px -2px rgba(154, 222, 255, .88), 8px 1px rgba(154, 222, 255, .88); }
.sfi-world-guide-launcher-icon.is-ask::after { display: none; }
.sfi-world-guide-launcher-icon.is-tours::before {
  position: absolute;
  top: 2px;
  left: 3px;
  width: 0;
  height: 0;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid rgba(235, 243, 249, .76);
  content: "";
}
.sfi-world-guide-launcher-icon.is-record::before {
  position: absolute;
  inset: 2px;
  border: 1px solid rgba(255, 172, 157, .52);
  border-radius: 50%;
  background: rgba(235, 92, 66, .28);
  content: "";
}
.sfi-world-guide-launcher[data-activity="recording"] .is-record::before,
.sfi-world-guide-launcher[data-activity="requesting"] .is-record::before,
.sfi-world-guide-launcher[data-activity="publishing"] .is-record::before { animation: sfi-world-guide-recording 1.1s ease-in-out infinite alternate; }
.sfi-world-guide-launcher[data-activity="thinking"] .is-ask::before,
.sfi-world-guide-launcher[data-activity="speaking"] .is-ask::before,
.sfi-world-guide-launcher[data-activity="acting"] .is-ask::before,
.sfi-world-guide-launcher[data-activity="learner-speaking"] .is-ask::before,
.sfi-world-guide-launcher[data-activity="transcribing"] .is-ask::before { animation: sfi-world-guide-voice .72s ease-in-out infinite alternate; }
@keyframes sfi-world-guide-recording { to { box-shadow: 0 0 9px rgba(245, 107, 78, .7); transform: scale(.72); } }
@keyframes sfi-world-guide-voice { to { opacity: .5; transform: scaleY(.45); } }
.sfi-world-guide-surface[hidden] { display: none; }
.sfi-world-guide-surface {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-top: 7px;
  pointer-events: auto;
  max-height: min(720px, calc(100dvh - var(--sfi-global-action-top) - var(--sfi-global-action-height) - 58px));
  overflow: hidden;
  border: 1px solid rgba(191, 232, 251, .28);
  border-radius: 19px;
  background: linear-gradient(150deg, rgba(8, 15, 24, .97), rgba(2, 6, 11, .94));
  box-shadow: 0 24px 78px rgba(0, 0, 0, .58), inset 0 1px rgba(255, 255, 255, .05);
  backdrop-filter: blur(22px) saturate(118%);
}
.sfi-world-guide-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 12px;
  padding: 10px 1px 8px;
  border-bottom: 1px solid rgba(191, 232, 251, .13);
}
.sfi-world-guide-header > div { display: grid; gap: 2px; }
.sfi-world-guide-header span { color: rgba(154, 213, 247, .58); font-size: 7px; letter-spacing: .15em; }
.sfi-world-guide-header strong { font-family: Georgia, "Times New Roman", serif; font-size: 15px; font-weight: 400; }
.sfi-world-guide-header button {
  width: 31px;
  min-width: 31px;
  height: 31px;
  padding: 0;
  border: 1px solid rgba(199, 232, 255, .18);
  border-radius: 50%;
  background: rgba(199, 232, 255, .045);
  color: rgba(241, 250, 255, .72);
  cursor: pointer;
  font: 400 20px/1 system-ui, sans-serif;
}
.sfi-world-guide-content { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; max-height: min(640px, calc(100dvh - var(--sfi-global-action-top) - var(--sfi-global-action-height) - 116px)); overflow: auto; scrollbar-width: thin; }
.sfi-world-guide-panel { box-sizing: border-box; display: grid; width: 100%; max-width: 100%; min-width: 0; gap: 10px; padding: 9px 12px 12px; overflow-x: hidden; }
.sfi-world-guide-panel[hidden] { display: none; }
.sfi-world-lesson-reminder[hidden] { display: none; }
.sfi-world-lesson-reminder {
  display: grid;
  gap: 10px;
  box-sizing: border-box;
  width: 100%;
  margin-top: 7px;
  padding: 13px;
  pointer-events: auto;
  border: 1px solid rgba(191, 232, 251, .34);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(11, 25, 37, .98), rgba(3, 9, 15, .97));
  box-shadow: 0 18px 54px rgba(0, 0, 0, .52), inset 0 1px rgba(255, 255, 255, .05);
  backdrop-filter: blur(20px) saturate(118%);
}
.sfi-world-lesson-reminder strong {
  display: block;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 16px;
  font-weight: 400;
}
.sfi-world-lesson-reminder p {
  margin: 4px 0 0;
  color: rgba(229, 240, 247, .68);
  font-size: 10px;
  line-height: 1.45;
}
.sfi-world-lesson-reminder-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.sfi-world-lesson-reminder-actions button {
  min-height: 32px;
  padding: 7px 10px;
  border: 1px solid rgba(191, 232, 251, .2);
  border-radius: 9px;
  background: rgba(191, 232, 251, .055);
  color: rgba(239, 248, 253, .82);
  cursor: pointer;
  font: inherit;
  font-size: 9px;
}
.sfi-world-lesson-reminder-actions button:hover,
.sfi-world-lesson-reminder-actions button:focus-visible { border-color: rgba(191, 232, 251, .58); color: #fff; outline: none; }
.sfi-world-lesson-reminder-actions .is-primary { border-color: rgba(154, 213, 247, .46); background: rgba(64, 145, 190, .2); color: #fff; }
.sfi-world-tour-studio-link { display: grid; gap: 8px; padding: 10px; border: 1px solid rgba(210, 175, 103, .2); border-radius: 12px; background: rgba(210, 175, 103, .05); }
.sfi-world-tour-studio-link p { margin: 0; color: rgba(236, 243, 247, .68); font-size: 9px; line-height: 1.45; }
.sfi-world-tour-studio-link a { width: fit-content; padding: 7px 10px; border: 1px solid rgba(210, 175, 103, .34); border-radius: 9px; background: rgba(210, 175, 103, .09); color: rgba(255, 239, 198, .88); font-size: 9px; text-decoration: none; }

.sfi-world-guide-panel > .sfi-adam-ai,
.sfi-world-guide-panel > .sfi-share,
.sfi-world-guide-panel > .sfi-official-player,
.sfi-world-guide-panel > .sfi-official-authoring,
.sfi-world-guide-panel > .sfi-world-teaching-pilot {
  position: static;
  inset: auto;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  min-height: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  transform: none;
}
.sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-header { display: none; }
.sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-body { padding: 0; }
.sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-call { grid-template-columns: 42px minmax(0, 1fr); gap: 8px; }
.sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-call-controls {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
}
.sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-call-controls button { width: 100%; min-width: 0; }
.sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-voice {
  margin: 0;
  padding: 7px 9px;
  border: 1px solid rgba(199, 232, 255, .09);
  border-radius: 9px;
  background: rgba(199, 232, 255, .025);
}
.sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-transcript { max-height: min(290px, 34dvh); }
.sfi-world-guide-panel > .sfi-share { grid-template-columns: minmax(0, 1fr); gap: 8px; }
.sfi-world-guide-panel > .sfi-share .sfi-share-identity { display: none; }
.sfi-world-guide-panel > .sfi-share .sfi-share-instruments,
.sfi-world-guide-panel > .sfi-share .sfi-share-state,
.sfi-world-guide-panel > .sfi-share .sfi-share-copy,
.sfi-world-guide-panel > .sfi-share .sfi-share-command { width: 100%; max-width: 100%; min-width: 0; }
.sfi-world-guide-panel > .sfi-official-player { grid-template-columns: minmax(0, 1fr); gap: 8px; }
.sfi-world-guide-panel > .sfi-official-player .sfi-official-player-identity { display: none; }
.sfi-world-guide-panel > .sfi-official-player .sfi-official-program,
.sfi-world-guide-panel > .sfi-official-player .sfi-official-telemetry,
.sfi-world-guide-panel > .sfi-official-player .sfi-official-command { width: 100%; max-width: 100%; min-width: 0; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot {
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 7px 8px;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  color: rgba(242, 251, 255, .94);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot > * { box-sizing: border-box; max-width: 100%; min-width: 0; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-identity {
  display: grid;
  grid-column: 1 / -1;
  gap: 2px;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-identity span {
  color: rgba(154, 213, 247, .58);
  font-size: 7px;
  letter-spacing: .14em;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-identity strong {
  color: rgba(245, 251, 255, .92);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
  font-weight: 400;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-presence {
  display: flex;
  grid-column: 1;
  grid-row: 2;
  align-items: center;
  gap: 2px;
  width: 24px;
  height: 28px;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-presence i {
  width: 2px;
  height: 20px;
  border-radius: 999px;
  background: rgba(129, 220, 247, .82);
  transform: scaleY(var(--sfi-world-teaching-level, .24));
  transition: transform 90ms linear, background-color 180ms ease;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot[data-state="recording"] .sfi-world-teaching-presence i { background: rgba(255, 150, 125, .9); }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-copy { grid-column: 2; grid-row: 2; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-copy { display: grid; align-content: center; gap: 2px; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-status {
  overflow: hidden;
  color: rgba(238, 247, 251, .77);
  font-size: 9px;
  line-height: 1.4;
  text-overflow: ellipsis;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-time {
  color: rgba(191, 232, 251, .54);
  font-size: 8px;
  font-variant-numeric: tabular-nums;
  letter-spacing: .04em;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-controls {
  display: grid;
  grid-column: 1 / -1;
  grid-row: 3;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: 6px;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-world-teaching-pilot-controls button {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding-inline: 7px;
  white-space: normal;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot button {
  min-height: 34px;
  border: 1px solid rgba(191, 232, 251, .3);
  border-radius: 9px;
  background: rgba(191, 232, 251, .09);
  color: rgba(242, 251, 255, .94);
  cursor: pointer;
  font: inherit;
  font-size: 9px;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot button.is-secondary {
  border-color: rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .035);
  color: rgba(255, 255, 255, .66);
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot button:hover,
.sfi-world-guide-panel > .sfi-world-teaching-pilot button:focus-visible {
  border-color: rgba(191, 232, 251, .68);
  outline: none;
  background: rgba(191, 232, 251, .16);
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot button:disabled { opacity: .42; cursor: wait; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot button[hidden] { display: none; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-teaching-storage {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: 7px;
  padding-top: 8px;
  border-top: 1px solid rgba(191, 232, 251, .12);
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-teaching-storage-copy { display: grid; gap: 2px; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-teaching-storage-copy strong { color: rgba(154, 213, 247, .58); font-size: 7px; letter-spacing: .12em; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-teaching-storage-copy span { color: rgba(238, 247, 251, .69); font-size: 8px; line-height: 1.4; }
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-teaching-storage-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-teaching-storage-controls button {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  white-space: normal;
}
.sfi-world-guide-panel > .sfi-official-authoring {
  contain: inline-size;
  grid-template-columns: minmax(0, 100%);
  justify-self: stretch;
  width: auto;
  max-width: 100%;
  min-width: 0;
  gap: 8px;
  padding-top: 10px;
  overflow: hidden;
  border-top: 1px solid rgba(191, 232, 251, .12);
}
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-heading { display: none; }
.sfi-world-guide-content,
.sfi-world-guide-panel,
.sfi-world-guide-panel > .sfi-official-authoring,
.sfi-world-guide-panel > .sfi-official-authoring > * { box-sizing: border-box; max-width: 100%; min-width: 0; }
.sfi-world-guide-panel > .sfi-official-authoring > * { width: auto; overflow: hidden; }
.sfi-world-guide-content { overflow-x: hidden; }
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-heading,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-kind,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-guide,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-fields,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-status,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-actions { grid-column: 1; }
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-fields {
  grid-template-columns: minmax(0, 100%);
  justify-self: stretch;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-field,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-field > input,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-field > select {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-field { overflow: hidden; }
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-field > input,
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-field > select { text-overflow: ellipsis; }
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-status {
  overflow-wrap: anywhere;
  text-align: left;
  text-overflow: clip;
  white-space: normal;
}
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-actions {
  justify-self: stretch;
  display: grid;
  grid-template-columns: minmax(0, 100%);
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-actions button {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding-inline: 6px;
  overflow-wrap: anywhere;
  white-space: normal;
}

/* The private studio is a single-column instrument panel. These constraints
   preserve the proven no-overflow authoring layout at every dock width. */
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-world-guide-panel > * { display: none; }
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-world-guide-panel > .sfi-world-teaching-pilot {
  display: grid;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(191, 232, 251, .12);
}
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-world-guide-panel > .sfi-official-authoring {
  display: block;
  width: 100%;
  padding: 0;
}
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > * { display: none; }
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-authoring-guide,
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-authoring-status {
  display: block;
  width: 100%;
  overflow: visible;
  overflow-wrap: anywhere;
  text-align: left;
  white-space: normal;
}
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-authoring-guide { margin: 0 0 9px; }
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-authoring-status { margin: 8px 0 0; }
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-kind,
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-authoring-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  gap: 6px;
  margin: 0 0 9px;
}
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
  gap: 8px;
}
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-fields > .sfi-official-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  width: 100%;
}
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring > .sfi-official-authoring-actions { margin: 9px 0 0; }
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-kind > button,
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring-actions > button:not([hidden]) {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  white-space: normal;
}
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring-actions > button[hidden] { display: none; }
.sfi-world-guide-dock[aria-label$="Tour Studio"] .sfi-official-authoring-actions > button:nth-child(n + 3):not([hidden]) { grid-column: 1 / -1; }

.sfi-world-guide-surface:has(.sfi-official-player[data-compact="true"]) .sfi-world-guide-header,
.sfi-world-guide-surface:has(.sfi-share[data-compact="true"]) .sfi-world-guide-header {
  margin-inline: 7px;
  padding-block: 5px;
}
.sfi-world-guide-surface:has(.sfi-official-player[data-compact="true"]) .sfi-world-guide-panel,
.sfi-world-guide-surface:has(.sfi-share[data-compact="true"]) .sfi-world-guide-panel { padding: 5px 7px 7px; }
.sfi-world-guide-panel > .sfi-official-player[data-compact="true"] {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
}
.sfi-world-guide-panel > .sfi-official-player[data-compact="true"] .sfi-official-command { width: auto; }
.sfi-world-guide-panel > .sfi-share[data-compact="true"] {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 6px;
}
.sfi-world-guide-panel > .sfi-share[data-compact="true"] .sfi-share-command { width: auto; }

@media (min-width: 641px) and (max-width: 1119px) {
  .sfi-world-guide-surface { max-height: min(58dvh, calc(100dvh - 106px)); }
  .sfi-world-guide-content { max-height: min(calc(58dvh - 55px), calc(100dvh - 161px)); }
}

@media (max-width: 640px) {
  .sfi-app-shell .sfi-world-global-controls { right: 9px; gap: 4px; flex-wrap: nowrap; }
  .sfi-app-shell .sfi-world-global-controls button {
    width: 34px;
    min-width: 34px;
    min-height: 34px;
    height: 34px;
    gap: 0;
    padding: 6px;
  }
  .sfi-app-shell .sfi-world-global-controls .sfi-world-global-primary {
    width: auto;
    min-width: 78px;
    gap: 7px;
    padding-inline: 10px;
    border-radius: 999px;
  }
  .sfi-app-shell .sfi-world-global-controls .sfi-world-global-utility [data-sfi-control-label],
  .sfi-app-shell .sfi-world-guide-launcher > span:last-child { display: none; }
  .sfi-world-guide-dock { right: 9px; width: min(410px, calc(100vw - 18px)); }
  .sfi-world-guide-launchers { gap: 4px; }
  .sfi-world-guide-surface { max-height: 62dvh; border-radius: 15px; }
  .sfi-world-guide-content { max-height: calc(62dvh - 50px); }
  .sfi-world-guide-header { margin-inline: 9px; padding: 8px 1px 7px; }
  .sfi-world-guide-panel { padding: 7px 9px 9px; }
  .sfi-world-lesson-reminder { padding: 11px; border-radius: 14px; }
  .sfi-world-lesson-reminder-actions button { flex: 1 1 auto; }
  .sfi-world-guide-panel > .sfi-adam-ai { left: auto; bottom: auto; width: 100%; }
  .sfi-world-guide-panel > .sfi-adam-ai .sfi-adam-ai-transcript { min-height: 60px; max-height: 15dvh; }
  .sfi-world-guide-panel > .sfi-share[data-compact="true"] { grid-template-columns: auto minmax(0, 1fr); }
  .sfi-world-guide-panel > .sfi-share[data-compact="true"] .sfi-share-command { grid-column: 1 / -1; width: 100%; }
}

@media (max-width: 360px) {
  .sfi-world-guide-launcher-icon { width: 11px; min-width: 11px; transform: scale(.88); }
  .sfi-world-guide-panel > .sfi-official-authoring .sfi-official-authoring-actions,
  .sfi-world-guide-panel > .sfi-world-teaching-pilot .sfi-teaching-storage-controls { grid-template-columns: minmax(0, 1fr); }
}
