/* Scope sizing to the integrated Concierge; no changes to other homepage cards. */
.vaihc-root.has-question-browser .vaihc-console { min-width:0; }
.has-question-browser .lc-browser-nav { display:flex; flex-wrap:wrap; align-items:center; gap:6px; padding:12px 18px; border-bottom:1px solid #0abab533; background:#061314; }
.has-question-browser .lc-browser-tab,.has-question-browser .lc-browser-back { min-height:42px; padding:9px 12px; border:1px solid #0abab54d; border-radius:999px; background:#0a1c1e; color:#a5d7d5; font-size:12px; line-height:1.25; }
.has-question-browser .lc-browser-tab[aria-pressed="true"] { color:#041213; background:#0abab5; border-color:#7ffffa; box-shadow:0 0 15px #0abab529; font-weight:700; }
.has-question-browser .lc-browser-back { margin-left:auto; border-color:transparent; background:transparent; color:#7ffffa; }
.has-question-browser .lc-browser-stage { position:relative; height:560px; min-height:0; flex:1 1 560px; width:100%; min-width:0; overflow:hidden; }
.vaihc-root.has-question-browser .lc-browser-stage > .vaihc-chat { position:absolute; inset:0; min-height:0; height:100%; width:100%; overflow-y:auto; overflow-x:hidden; padding:22px; scrollbar-gutter:stable; overscroll-behavior:contain; }
.has-question-browser .lc-question-browser { position:absolute; inset:0; display:flex; flex-direction:column; gap:0; min-width:0; padding:16px; background:radial-gradient(ellipse at 100% 0,#0abab512,transparent 55%),#061011; }
.has-question-browser [hidden] { display:none !important; }
.has-question-browser .lc-browser-nav .lc-browser-back[hidden] { display:block !important; visibility:hidden; }
.has-question-browser .lc-browser-controls { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
.has-question-browser .lc-browser-search,.has-question-browser .lc-browser-topic { min-width:0; margin:0; }
.has-question-browser .lc-browser-search input,.has-question-browser .lc-browser-topic select { display:block; width:100%; max-width:100%; min-width:0; min-height:44px; padding:10px 12px; border:1px solid #0abab54d; border-radius:12px; background:#0c2022; color:#eafffd; font:inherit; font-size:14px; color-scheme:dark; }
.has-question-browser .lc-browser-search input::placeholder { color:#9cc5c3; opacity:1; }
.has-question-browser .lc-browser-count { flex:none; margin:10px 2px; color:#9ac1bf; font-size:12px; }
.has-question-browser .lc-browser-list { flex:1; min-height:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; scrollbar-gutter:stable; padding:2px 5px 2px 2px; }
.has-question-browser .lc-browser-row { margin:0 0 7px; }
.has-question-browser .lc-browser-question { display:grid; grid-template-columns:28px minmax(0,1fr) 14px; align-items:center; gap:10px; width:100%; min-height:66px; text-align:left; padding:11px; border:1px solid #0abab52e; border-radius:12px; background:#0a1a1c; color:#e9fffd; }
.has-question-browser .lc-browser-question:hover { border-color:#0abab5; background:#103033; }
.has-question-browser .lc-browser-number { font:12px ui-monospace,monospace; color:#52d8d3; }
.has-question-browser .lc-browser-question-title { display:block; font-size:14px; line-height:1.45; overflow-wrap:anywhere; }
.has-question-browser .lc-browser-question-copy small { display:block; margin-top:4px; color:#85b2af; font-size:10px; line-height:1.4; }
.has-question-browser .lc-browser-arrow { color:#0abab5; font-size:24px; }
.has-question-browser .lc-browser-footer { flex:none; padding:12px 2px 0; font-size:11px; color:#98bfbc; line-height:1.5; }
.has-question-browser .lc-browser-empty { padding:18px 8px; color:#c2dcda; }
.has-question-browser .lc-browser-question:focus-visible,.has-question-browser .lc-browser-tab:focus-visible,.has-question-browser select:focus-visible { outline:2px solid #7ffffa; outline-offset:2px; }
@media (max-width:600px) {
 .has-question-browser .lc-browser-nav { padding:10px; gap:5px; }
 .has-question-browser .lc-browser-tab { font-size:11px; padding:8px 9px; }
 .has-question-browser .lc-browser-back { width:100%; margin:0; min-height:30px; padding:4px 8px; text-align:left; }
 .has-question-browser .lc-browser-stage { height:500px; flex-basis:500px; }
 .vaihc-root.has-question-browser .lc-browser-stage > .vaihc-chat { padding:14px; }
 .has-question-browser .lc-question-browser { padding:12px; }
}

/* V9.1: keep the full-text reference compact below the primary Concierge. */
.limoette-canonical-reference { margin:24px auto; width:min(1180px,calc(100% - 32px)); border:1px solid #0abab5; border-radius:22px; background:#081011; }
.limoette-canonical-reference > summary { padding:20px 24px; color:#8ce6e3; font-weight:700; cursor:pointer; }
.limoette-canonical-reference .limoette-canonical-system { width:auto; margin:0; }
.limoette-canonical-grid { align-items:start; }

/* V9.2 quick Hear beside each menu question; playback stays in the list. */
.has-question-browser .lc-browser-row { display:grid; grid-template-columns:minmax(0,1fr) 76px; align-items:start; gap:7px; }
.has-question-browser .lc-browser-quick-audio { display:flex; flex-direction:column; gap:5px; min-width:0; }
.has-question-browser .lc-browser-quick-audio button { min-height:44px; width:100%; padding:8px 4px; border:1px solid #0abab580; border-radius:12px; background:#103033; color:#affff9; font-size:12px; cursor:pointer; }
.has-question-browser .lc-browser-quick-audio button[aria-pressed="true"] { background:#0abab5; color:#041213; }
.has-question-browser .lc-browser-quick-audio [data-v830-status] { margin:0; font-size:10px; line-height:1.3; color:#a5d7d5; overflow-wrap:anywhere; }
.has-question-browser .lc-browser-hear:focus-visible { outline:2px solid #7ffffa; outline-offset:2px; }
@media(max-width:600px){ .has-question-browser .lc-browser-row { grid-template-columns:minmax(0,1fr) 64px; gap:5px; } .has-question-browser .lc-browser-question { grid-template-columns:20px minmax(0,1fr) 10px; gap:5px; padding:8px; } }
/* V9.3: readable welcome copy and compact editorial narration controls. */
.lc-welcome-copy { white-space:pre-line; }
.lc-editorial-audio { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:14px; }
.lc-editorial-audio button { min-height:44px; padding:9px 18px; border:1px solid #0abab5; border-radius:999px; background:#0b2022; color:#aafff9; cursor:pointer; }
.lc-editorial-audio button[aria-pressed="true"] { background:#0abab5; color:#031111; }
.lc-editorial-audio button[hidden] { display:none; }
.lc-editorial-audio [data-v830-status] { margin:0; color:#9ac1bf; font-size:12px; }

/* V9.7: calibrated iris lights; SVG uses the portrait's cover/top crop. */
.vaihc-portrait .lc-eye-overlay {
  position:absolute; inset:0; width:100%; height:100%; pointer-events:none;
  transition:transform .5s ease; overflow:hidden;
}
.vaihc-portrait:hover .lc-eye-overlay { transform:scale(1.025); }
.lc-eye-overlay ellipse {
  fill:#b9fffc; opacity:0;
  filter:drop-shadow(0 0 5px #0abab5);
  transform-box:fill-box; transform-origin:center;
}
.lc-eyes-welcome .lc-eye-overlay ellipse { animation:lc-eye-welcome .9s ease-in-out 3; }
.lc-eyes-speaking .lc-eye-overlay ellipse { animation:lc-eye-speaking 1.8s ease-in-out infinite; }
@keyframes lc-eye-welcome {
  0%,75%,100% { opacity:0; }
  25%,45% { opacity:.85; }
}
@keyframes lc-eye-speaking {
  0%,100% { opacity:.35; transform:scaleY(1); }
  25% { opacity:.8; transform:scaleY(1); }
  43% { opacity:.2; transform:scaleY(.18); }
  52% { opacity:.7; transform:scaleY(1); }
  78% { opacity:.4; transform:scaleY(1); }
}
@media (prefers-reduced-motion:reduce) {
  .lc-eyes-welcome .lc-eye-overlay ellipse { animation:none; opacity:.45; }
  .lc-eyes-speaking .lc-eye-overlay ellipse { animation:none; opacity:.6; }
}

/* Separate welcome playback target from the neighboring home link. */
.lc-header-greeting { padding:0; cursor:pointer; background:transparent; color:inherit; }
.lc-header-greeting:focus-visible { outline:2px solid #7ffffa; outline-offset:4px; }
.lc-header-greeting[aria-pressed="true"] { box-shadow:0 0 18px #0abab5; }
.limoette-circuit-brand-copy { color:inherit; text-decoration:none; }
.lc-header-audio-controls { max-width:1200px; margin:0 auto; padding:4px 20px 10px; font-size:13px; }
.lc-header-audio-controls[hidden] { display:none; }
.lc-header-audio-controls button { border:1px solid #0abab5; background:#071718; color:#bffffb; border-radius:18px; padding:6px 12px; }
.lc-header-audio-controls p { display:inline; margin-left:12px; }
.lc-index-intro-audio { text-align:center; margin-bottom:20px; }
