/* All selectors are scoped. No remote fonts, resets, images, or dependencies. */
.juna-call-view {
  position: relative;
  --jcv-pearl: #f3f0e8;
  --jcv-cream: #fcf8ef;
  --jcv-green: #334937;
  --jcv-text: #3a4030;
  --jcv-muted: #676b59;
  --jcv-border: #dddfd2;
  --jcv-gold: #a08049;
  --jcv-end: #71463b;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  color: var(--jcv-text);
  background: var(--jcv-cream);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
  isolation: isolate;
  color-scheme: light;
  container-type: inline-size;
}
.juna-call-view *, .juna-call-view *::before, .juna-call-view *::after { box-sizing: border-box; }
.juna-call-view [hidden] { display: none !important; }
.juna-call-view p, .juna-call-view h2 { margin: 0; }
.juna-call-view button { font: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
.juna-call-view button:disabled { cursor: default; opacity: .55; }
.juna-call-view button:focus-visible, .juna-call-view a:focus-visible, .juna-call-view [tabindex]:focus-visible {
  outline: 3px solid var(--jcv-green);
  outline-offset: 4px;
}
.juna-call-view svg { display: block; flex: 0 0 auto; width: 21px; height: 21px; }
.juna-call-view .jcv-topbar {
  display: flex;
  flex: 0 0 auto;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  padding: 15px 27px 0;
}
.juna-call-view .jcv-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--jcv-muted);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.8px;
  text-transform: uppercase;
}
.juna-call-view .jcv-eyebrow svg { width: 15px; height: 15px; }
.juna-call-view .jcv-guard-trigger { min-height: 44px; padding: 7px 11px; border: 1px solid var(--jcv-border); border-radius: 9px; background: transparent; color: var(--jcv-green); font-size: 12px; font-weight: 600; }
.juna-call-view .jcv-guard-trigger:hover { background: var(--jcv-pearl); }
.juna-call-view .jcv-back {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  padding: 7px 4px 7px 10px;
  border: 0;
  border-radius: 6px;
  color: var(--jcv-green);
  background: transparent;
  font-size: 12px;
  font-weight: 500;
}
.juna-call-view .jcv-back svg { width: 16px; height: 16px; }
.juna-call-view .jcv-back:not(:disabled):hover { background: var(--jcv-pearl); }
.juna-call-view .jcv-main {
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 22px 28px 31px;
  text-align: center;
}
.juna-call-view .jcv-emblem {
  position: relative;
  display: grid;
  place-items: center;
  width: 208px;
  height: 208px;
  margin: 0 0 26px;
  border: 1px solid #d3d8c9;
  border-radius: 50%;
  background: var(--jcv-pearl);
  color: var(--jcv-green);
}
.juna-call-view .jcv-emblem::before {
  position: absolute;
  inset: -9px;
  content: '';
  border: 1px solid #e5e4d8;
  border-radius: 50%;
}
.juna-call-view .jcv-emblem-inner { position: relative; display: grid; place-items: center; width: 188px; height: 188px; overflow: hidden; border: 1px solid #ddd9c9; border-radius: 50%; }
.juna-call-view .jcv-monogram { padding: 0 3px 5px 0; font: italic 59px/1 Georgia, 'Times New Roman', serif; }
.juna-call-view .jcv-star { position: absolute; top: 12px; right: 18px; color: var(--jcv-gold); font: 25px/1 Georgia, serif; }
.juna-call-view .jcv-emblem-dot { position: absolute; right: 12%; bottom: 12%; transform: translate(50%, 50%); width: 17px; height: 17px; border: 4px solid var(--jcv-cream); border-radius: 50%; background: var(--jcv-green); }
.juna-call-view .jcv-overline { color: var(--jcv-muted); font-size: 10px; font-weight: 500; letter-spacing: 1.6px; text-transform: uppercase; }
.juna-call-view .jcv-title {
  max-width: 100%;
  margin: 10px 0 17px;
  border-radius: 3px;
  color: var(--jcv-green);
  font: 400 clamp(29px, 5.8cqi, 38px)/1.18 Georgia, 'Times New Roman', serif;
  letter-spacing: -.8px;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
.juna-call-view .jcv-status-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 13px; }
.juna-call-view .jcv-phase { display: inline-flex; align-items: center; gap: 7px; min-height: 28px; color: var(--jcv-green); font-size: 12px; font-weight: 600; }
.juna-call-view .jcv-status-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.juna-call-view .jcv-timer { display: inline-flex; align-items: center; gap: 6px; padding-left: 13px; border-left: 1px solid var(--jcv-border); color: var(--jcv-muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.juna-call-view .jcv-timer svg { width: 13px; height: 13px; }
.juna-call-view .jcv-remaining { margin-top: 3px; color: var(--jcv-muted); font-size: 11px; font-variant-numeric: tabular-nums; }
.juna-call-view .jcv-detail { max-width: 345px; margin-top: 14px; color: var(--jcv-muted); font-size: 13px; line-height: 1.75; overflow-wrap: anywhere; text-wrap: pretty; }
.juna-call-view .jcv-detail:empty { display: none; }
.juna-call-view .jcv-cleanup { max-width: 340px; margin-top: 10px; color: var(--jcv-green); font-size: 12px; overflow-wrap: anywhere; }
.juna-call-view .jcv-bottom { flex: 0 0 auto; padding: 0 28px 20px; }
.juna-call-view .jcv-handover { display: flex; align-items: flex-start; gap: 12px; max-width: 460px; margin: 0 auto 23px; padding: 16px 17px; border: 1px solid var(--jcv-border); border-radius: 12px; background: #f6f3ea; }
.juna-call-view .jcv-note-icon { flex: 0 0 auto; margin-top: 2px; color: var(--jcv-gold); }
.juna-call-view .jcv-handover > div { min-width: 0; }
.juna-call-view .jcv-handover-title { color: var(--jcv-green); font-size: 12px; font-weight: 600; line-height: 1.55; overflow-wrap: anywhere; }
.juna-call-view .jcv-handover-detail { margin-top: 3px; color: var(--jcv-muted); font-size: 11px; line-height: 1.7; overflow-wrap: anywhere; }
.juna-call-view .jcv-controls { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; max-width: 460px; margin: 0 auto; }
.juna-call-view .jcv-button { display: inline-flex; flex: 1 1 140px; justify-content: center; align-items: center; gap: 10px; min-height: 56px; padding: 13px 18px; border: 1px solid transparent; border-radius: 12px; font-size: 14px; font-weight: 600; line-height: 1.3; transition: background-color 120ms ease, border-color 120ms ease; }
.juna-call-view .jcv-start { color: var(--jcv-cream); background: var(--jcv-green); }
.juna-call-view .jcv-start:not(:disabled):hover { background: #283c2c; }
.juna-call-view .jcv-speaker { color: var(--jcv-green); background: var(--jcv-pearl); border-color: #a4ab98; }
.juna-call-view .jcv-speaker:not(:disabled):hover { background: #e9e6dc; }
.juna-call-view .jcv-speaker[aria-pressed="true"] { color: var(--jcv-cream); background: var(--jcv-green); border-color: var(--jcv-green); }
.juna-call-view .jcv-speaker[aria-pressed="true"]:not(:disabled):hover { background: #283c2c; }
.juna-call-view .jcv-end { color: var(--jcv-cream); background: var(--jcv-end); }
.juna-call-view .jcv-end:not(:disabled):hover { background: #603b32; }
.juna-call-view .jcv-return { color: var(--jcv-green); background: var(--jcv-pearl); border-color: #a4ab98; text-decoration: none; }
.juna-call-view .jcv-return:not(:disabled):hover { background: #e9e6dc; }
.juna-call-view .jcv-footnote { margin-top: 16px; color: var(--jcv-muted); text-align: center; font-size: 10px; letter-spacing: .15px; }
.juna-call-view .jcv-footnote span { margin: 0 5px; }
.juna-call-view:fullscreen { width: 100vw; height: 100dvh; max-height: none; border-radius: 0; }
.juna-call-view .jcv-guard-overlay { position: absolute; inset: 0; z-index: 5; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 16px; padding: 32px; background: #2b4132; color: #fcf8ef; text-align: center; touch-action: none; }
.juna-call-view .jcv-guard-mark { display: grid; place-items: center; width: 92px; height: 92px; margin-bottom: 7px; border: 1px solid #a4ab98; border-radius: 50%; font: italic 53px/1 Georgia, serif; }
.juna-call-view .jcv-guard-title { font: 400 31px/1.2 Georgia, serif; }
.juna-call-view .jcv-guard-message { max-width: 290px; color: #e1e5da; font-size: 13px; line-height: 1.7; }
.juna-call-view .jcv-unlock { min-height: 58px; margin-top: 18px; padding: 12px 22px; border: 1px solid #cbd3c1; border-radius: 12px; background: transparent; color: #fcf8ef; font-weight: 600; }
.juna-call-view .jcv-unlock[data-holding="true"] { background: #526d55; }
.juna-call-view .jcv-unlock:focus-visible { outline-color: #fcf8ef; }
.juna-call-view[data-phase='speaking'] .jcv-emblem { border-color: var(--jcv-gold); }
.juna-call-view[data-phase='connecting'] .jcv-emblem-dot, .juna-call-view[data-phase='ending'] .jcv-emblem-dot { background: var(--jcv-gold); }
.juna-call-view[data-phase='error'] .jcv-emblem-dot, .juna-call-view[data-phase='error'] .jcv-phase { color: var(--jcv-end); }
.juna-call-view[data-phase='error'] .jcv-emblem-dot { background: var(--jcv-end); }
.juna-call-view[data-phase='ended'] .jcv-emblem-dot { background: var(--jcv-muted); }
.juna-call-view[data-handover='received'] .jcv-handover { background: #f0f2e9; }
.juna-call-view[data-handover='failed'] .jcv-handover { border-color: #cdb9a6; }
.juna-call-view .jcv-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@container (max-width: 430px) {
  .juna-call-view .jcv-topbar { padding: 10px 19px 0; }
  .juna-call-view .jcv-eyebrow { letter-spacing: 1.25px; font-size: 10px; }
  .juna-call-view .jcv-back { font-size: 11px; }
  .juna-call-view .jcv-main { padding: 23px 23px 25px; }
  .juna-call-view .jcv-emblem { width: 184px; height: 184px; margin-bottom: 24px; }
  .juna-call-view .jcv-emblem-inner { width: 164px; height: 164px; }
  .juna-call-view .jcv-monogram { font-size: 52px; }
  .juna-call-view .jcv-star { top: 8px; right: 12px; }
  .juna-call-view .jcv-title { font-size: 30px; }
  .juna-call-view .jcv-overline { font-size: 9px; letter-spacing: 1.25px; }
  .juna-call-view .jcv-detail { font-size: 12px; }
  .juna-call-view .jcv-bottom { padding: 0 19px 18px; }
  .juna-call-view .jcv-handover { padding: 13px 14px; margin-bottom: 18px; gap: 10px; }
  .juna-call-view .jcv-button { flex-basis: 115px; min-height: 54px; padding: 12px 13px; font-size: 13px; }
  .juna-call-view .jcv-controls { gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .juna-call-view *, .juna-call-view *::before, .juna-call-view *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
  .juna-call-view .jcv-button, .juna-call-view .jcv-emblem, .juna-call-view .jcv-handover { border: 1px solid ButtonText; }
}


/* Isolated pilot shell adapted from Kael's supplied Call Juna preview. */
.juna-call-view .jcv-logo { width: 78%; height: 65%; object-fit: contain; }
.juna-call-view .jcv-portrait { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.6); transform-origin: 50% 10%; }
.juna-call-view .jcv-mute { display: none; }
html { background: #f3f0e8; color: #3a4030; }
body { margin: 0; }
.pilot-page { max-width: 1112px; margin: auto; padding: 30px 36px 35px; font: 14px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
.pilot-page *, .pilot-page *::before, .pilot-page *::after { box-sizing: border-box; }
.pilot-masthead { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-bottom: 25px; margin-bottom: 30px; border-bottom: 1px solid #dddfd2; }
.pilot-brand { display: flex; align-items: center; gap: 13px; min-width: 0; }
.pilot-brand img { display: block; width: 118px; max-height: 36px; object-fit: contain; object-position: left center; }
.pilot-brand span { padding-left: 13px; border-left: 1px solid #c9ccbd; color: #676b59; font-size: 10px; line-height: 1.5; letter-spacing: 2px; }
.pilot-edition { color: #676b59; font-size: 10px; letter-spacing: 1.4px; text-align: right; text-transform: uppercase; }
.pilot-layout { display: grid; grid-template-columns: minmax(0, 320px) minmax(0, 640px); justify-content: space-between; align-items: start; gap: 42px; }
.pilot-intro { padding-top: 29px; min-width: 0; }
.pilot-kicker { margin: 0 0 20px; color: #676b59; font-size: 10px; font-weight: 600; letter-spacing: 1.7px; text-transform: uppercase; }
.pilot-intro h1 { margin: 0; color: #334937; font: 400 43px/1.16 Georgia, "Times New Roman", serif; letter-spacing: -1.2px; text-wrap: balance; }
.pilot-description { max-width: 250px; margin: 25px 0 0; color: #676b59; font-size: 13px; line-height: 1.9; }
.pilot-stage { min-width: 0; }
.pilot-card { width: 100%; max-width: 680px; overflow: hidden; border: 1px solid #d3d8c9; border-radius: 21px; background: #fcf8ef; box-shadow: 0 16px 50px rgba(43, 65, 50, .065), 0 3px 10px rgba(43, 65, 50, .025); }
.pilot-card-header { display: flex; justify-content: space-between; align-items: center; gap: 15px; min-height: 88px; padding: 17px 27px; color: #fcf8ef; background: #2b4132; }
.pilot-card-identity { display: flex; align-items: center; gap: 13px; min-width: 0; }
.pilot-juna-logo { display: block; width: 104px; max-height: 53px; object-fit: contain; object-position: left center; filter: brightness(0) invert(1); }
.pilot-card-brandline { display: grid; gap: 1px; padding-left: 13px; border-left: 1px solid rgba(255,255,255,.24); color: #d4d9c9; font-size: 10px; letter-spacing: .3px; }
.juna-call-view { height: 634px; }
.juna-call-view[data-phase="idle"] .jcv-end,
.juna-call-view[data-phase="idle"] .jcv-speaker,
.juna-call-view[data-phase="connecting"] .jcv-start,
.juna-call-view[data-phase="connecting"] .jcv-speaker,
.juna-call-view[data-phase="listening"] .jcv-start,
.juna-call-view[data-phase="waiting"] .jcv-start,
.juna-call-view[data-phase="speaking"] .jcv-start,
.juna-call-view[data-phase="audio-check"] .jcv-start,
.juna-call-view[data-phase="ended"] .jcv-controls { display: none; }
.juna-call-view[data-phase="error"] .jcv-speaker,
.juna-call-view[data-phase="error"] .jcv-end { display: none; }
.juna-call-view[data-phase="connecting"] .jcv-end { flex-grow: 0; min-width: 190px; }
.juna-call-view[data-phase="ended"] .jcv-emblem-dot { background: var(--jcv-muted); }
.juna-call-view[data-phase="error"] .jcv-phase { color: var(--jcv-end); }
.pilot-diagnostics { margin: 16px 4px 0; border-top: 1px solid #dddfd2; color: #676b59; font-size: 11px; }
.pilot-diagnostics summary { min-height: 44px; padding: 12px 0; color: #334937; cursor: pointer; }
.pilot-diagnostics summary:focus-visible { outline: 3px solid #334937; outline-offset: 3px; }
.pilot-transcript { padding: 3px 0 12px; }
.pilot-transcript p { display: grid; grid-template-columns: 86px 1fr; gap: 12px; margin: 9px 0; overflow-wrap: anywhere; }
.pilot-transcript strong { color: #334937; }
#input-transcript, #output-transcript, #lookup-debug { white-space: pre-wrap; }
.pilot-transcript .pilot-usage { display: block; color: #676b59; font-size: 10px; }
@media (max-width: 800px) {
  .pilot-page { max-width: 590px; padding: 17px 15px 27px; }
  .pilot-masthead { padding-bottom: 15px; margin-bottom: 16px; gap: 12px; }
  .pilot-brand img { width: 94px; max-height: 30px; }
  .pilot-brand span { font-size: 9px; padding-left: 10px; }
  .pilot-edition { font-size: 8px; letter-spacing: .7px; }
  .pilot-layout { display: flex; flex-direction: column; gap: 0; }
  .pilot-intro { display: contents; }
  .pilot-intro h1, .pilot-kicker, .pilot-description { display: none; }
  .pilot-stage { order: 1; width: 100%; }
  .pilot-card { border-radius: 16px; }
  .pilot-card-header { min-height: 75px; padding: 15px 18px; }
  .pilot-juna-logo { width: 86px; max-height: 42px; }
  .pilot-card-brandline { font-size: 9px; }
  .juna-call-view { height: 590px; }
}
@media (max-width: 430px) {
  .pilot-card-header { padding: 14px 16px; }
  .pilot-juna-logo { width: 75px; }
  .pilot-card-brandline { padding-left: 9px; }
  .pilot-edition { max-width: 120px; }
  .pilot-transcript p { grid-template-columns: 1fr; gap: 2px; }
}
@media (prefers-reduced-motion: reduce) {
  .pilot-page *, .pilot-page *::before, .pilot-page *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* The same Voice page, contained inside Public Concierge. No duplicate header. */
html[data-chat-frame] .pilot-page { width: 100%; max-width: none; height: 100dvh; padding: 0; }
html[data-chat-frame] .pilot-masthead,
html[data-chat-frame] .pilot-intro,
html[data-chat-frame] .pilot-card-header { display: none; }
html[data-chat-frame] .pilot-layout { display: block; height: 100%; }
html[data-chat-frame] .pilot-stage, html[data-chat-frame] .pilot-card { height: 100%; max-width: none; border: 0; border-radius: 0; box-shadow: none; }
html[data-chat-frame] .juna-call-view { height: 100%; min-height: 0; }
html[data-chat-frame] .jcv-main { padding-block: clamp(12px, 5vh, 40px); }
html[data-chat-frame] .jcv-start { display: none; }
html[data-chat-frame] .jcv-title { font-size: clamp(25px, 6vw, 36px); }
@media (max-height: 530px) {
  html[data-chat-frame] .jcv-emblem { width: 128px; height: 128px; margin-bottom: 14px; }
  html[data-chat-frame] .jcv-emblem-inner { width: 112px; height: 112px; }
  html[data-chat-frame] .jcv-remaining, html[data-chat-frame] .jcv-detail { margin-block: 6px; }
}
