/* Rosary Adviser v2 panel (preview) — glass navy and gold, minimal controls. Media/clip styles are untouched. */
body.rosary-adviser-v2 { --a2-navy: #102c40; --a2-navy2: #173a52; --a2-gold: #c9a45c; --a2-gold2: #e9d39e; --a2-ink: #13293a; }

/* Clutter removed in v2 (language and mode are automatic; extras live in the ⋯ menu) */
body.rosary-adviser-v2 #main-content .rosary-adviser-page-tools,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-audience-help,
body.rosary-adviser-v2 #rosary-voice-panel .rd4-chips,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-quick,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-primary-actions,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-capture-controls,
body.rosary-adviser-v2 #rosary-voice-panel .rd4-privacy,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-status,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-advisor-badge,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-presence-caption,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-privacy,
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-eyebrow,
body.rosary-adviser-v2 #rosary-voice-panel [data-voice-close],
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic [data-voice-mic-label],
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic .rosary-voice-mic-icon,
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic .rosary-voice-level { display: none !important; }

/* Chat card */
body.rosary-adviser-v2 #rosary-voice-panel .rosary-advisor-chat {
  display: flex; flex-direction: column; gap: 12px; min-height: 0;
  background: linear-gradient(160deg, rgba(255,255,255,.86), rgba(250,246,236,.78));
  -webkit-backdrop-filter: blur(14px) saturate(1.2); backdrop-filter: blur(14px) saturate(1.2);
  border: 1px solid rgba(201,164,92,.45); border-radius: 22px; padding: 18px 18px 14px;
  box-shadow: 0 18px 44px rgba(16,44,64,.14), inset 0 1px 0 rgba(255,255,255,.7);
}
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-header { display: block; margin: 0; padding: 0 0 10px; border-bottom: 1px solid rgba(201,164,92,.35); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-head { display: flex; align-items: center; gap: 8px; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-title { flex: 1; min-width: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-title h2 { margin: 0; font-size: 22px; line-height: 1.25; color: var(--a2-navy); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-sub { margin: 6px 0 0; font-size: 13.5px; color: #4b5f6e; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state { display: inline-flex; align-items: center; gap: 7px; padding: 4px 11px 4px 9px; border-radius: 999px; font-size: 12.5px; font-weight: 600;
  color: var(--a2-navy); background: rgba(233,211,158,.35); border: 1px solid rgba(201,164,92,.55); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state i { width: 8px; height: 8px; border-radius: 50%; background: #8a9aa6; flex: none; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="listening"] { background: #e6f4ec; border-color: #7cc39a; color: #0f5132; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="listening"] i { background: #1f9d55; animation: a2pulse 1.2s ease-in-out infinite; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="thinking"] i, body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="connecting"] i { background: var(--a2-gold); animation: a2blink .9s ease-in-out infinite; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="speaking"] { background: var(--a2-navy); color: #fff; border-color: var(--a2-navy); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="speaking"] i { background: var(--a2-gold2); animation: a2pulse .7s ease-in-out infinite; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="error"] { background: #fdecec; border-color: #e3a3a3; color: #842029; }
@keyframes a2pulse { 0%,100% { transform: scale(1); opacity: 1 } 50% { transform: scale(1.5); opacity: .55 } }
@keyframes a2blink { 0%,100% { opacity: 1 } 50% { opacity: .25 } }

body.rosary-adviser-v2 #rosary-voice-panel .a2-icon { width: 40px; height: 40px; flex: none; display: inline-grid; place-items: center; border-radius: 50%; border: 1px solid rgba(201,164,92,.55);
  background: rgba(255,255,255,.7); color: var(--a2-navy); cursor: pointer; padding: 0; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-icon svg { width: 20px; height: 20px; fill: currentColor; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-icon:hover { background: #fff; border-color: var(--a2-gold); }
body.rosary-adviser-v2 #rosary-voice-panel :is(.a2-icon, .a2-mic, .a2-send, .a2-chip, .a2-mi):focus-visible { outline: 3px solid var(--a2-gold); outline-offset: 2px; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-menu-wrap { position: relative; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-menu { position: absolute; top: 46px; inset-inline-end: 0; z-index: 30; min-width: 250px; padding: 6px; border-radius: 14px;
  background: rgba(16,44,64,.96); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid rgba(201,164,92,.6); box-shadow: 0 16px 36px rgba(0,0,0,.25); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-menu[hidden] { display: none; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mi { display: block; width: 100%; text-align: start; padding: 10px 12px; border: 0; border-radius: 10px; background: transparent; color: #f4efe2; font: inherit; font-size: 14px; cursor: pointer; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mi:hover { background: rgba(233,211,158,.16); color: #fff; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mi[hidden] { display: none; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mi-note { margin: 4px 12px 8px; padding-top: 8px; border-top: 1px solid rgba(233,211,158,.25); font-size: 12px; line-height: 1.6; color: #c9d3da; }

/* Transcript */
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-transcript { flex: 1; min-height: 220px; max-height: 420px; overflow-y: auto; display: flex; flex-direction: column; gap: 10px; padding: 4px 2px; margin: 0; background: transparent; border: 0; }
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-welcome { padding: 12px 14px; border-radius: 16px; background: rgba(16,44,64,.05); border: 1px solid rgba(201,164,92,.35); border-inline-start: 3px solid var(--a2-gold); }
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-turn { max-width: 88%; padding: 10px 14px; border-radius: 16px; line-height: 1.7; font-size: 15px; white-space: pre-wrap; }
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-turn[data-role="user"] { align-self: flex-end; background: var(--a2-navy); color: #fff; border-end-end-radius: 6px; }
body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-turn[data-role="assistant"] { align-self: flex-start; background: #fff; color: var(--a2-ink); border: 1px solid rgba(201,164,92,.4); border-end-start-radius: 6px; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-typing { letter-spacing: 3px; color: var(--a2-gold); animation: a2blink 1s infinite; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-links { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-links a { display: inline-block; padding: 5px 11px; border-radius: 999px; font-size: 13px; text-decoration: none; color: var(--a2-navy); background: rgba(233,211,158,.35); border: 1px solid rgba(201,164,92,.6); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-links a::after { content: " ›"; }
body.rosary-adviser-v2 [dir="rtl"] #rosary-voice-panel .a2-links a::after, body.rosary-adviser-v2 #rosary-voice-panel .a2-links a:dir(rtl)::after { content: " ‹"; }

/* Chips (first message only) */
body.rosary-adviser-v2 #rosary-voice-panel .a2-chips { display: flex; flex-wrap: wrap; gap: 8px; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-chips[hidden] { display: none; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-chip { min-height: 40px; padding: 8px 15px; border-radius: 999px; border: 1px solid rgba(201,164,92,.7); background: rgba(255,255,255,.8); color: var(--a2-navy); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-chip:hover { background: var(--a2-navy); color: #fff; }

/* Composer: one mic, one input, one send */
body.rosary-adviser-v2 #rosary-voice-panel .a2-composer { display: flex; align-items: center; gap: 10px; padding-top: 10px; border-top: 1px solid rgba(201,164,92,.35); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic { position: relative; flex: 0 0 auto !important; width: 56px !important; min-width: 56px !important; height: 56px !important; min-height: 56px !important; padding: 0 !important; margin: 0 !important;
  border-radius: 50% !important; display: inline-grid !important; place-items: center; border: 2px solid var(--a2-gold) !important;
  background: radial-gradient(circle at 30% 25%, #24506d, var(--a2-navy)) !important; color: #fff !important; cursor: pointer; box-shadow: 0 8px 20px rgba(16,44,64,.3); order: 0 !important; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic .a2-mic-icon svg { width: 26px; height: 26px; fill: currentColor; display: block; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic[data-a2-mic="listening"] { background: radial-gradient(circle at 30% 25%, #2a8a5a, #146c43) !important; border-color: #9fe0bb !important; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic[data-a2-mic="listening"]::after { content: ""; position: absolute; inset: -7px; border-radius: 50%; border: 2px solid rgba(31,157,85,.45); animation: a2ring 1.4s ease-out infinite; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic[data-a2-mic="speaking"] { background: radial-gradient(circle at 30% 25%, #e9d39e, #c9a45c) !important; color: var(--a2-navy) !important; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic[data-a2-mic="muted"] { background: #6b7b87 !important; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-mic:disabled { opacity: .7; cursor: progress; }
@keyframes a2ring { from { transform: scale(.9); opacity: 1 } to { transform: scale(1.25); opacity: 0 } }
body.rosary-adviser-v2 #rosary-voice-panel .a2-composer .rosary-voice-text-form { flex: 1; min-width: 0; display: flex !important; align-items: center; gap: 6px; margin: 0 !important; padding: 5px !important;
  border-radius: 999px; background: #fff; border: 1px solid rgba(201,164,92,.6); box-shadow: inset 0 1px 2px rgba(16,44,64,.06); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-composer [data-voice-text-input] { flex: 1; min-width: 0; height: 44px; border: 0 !important; outline: 0; background: transparent !important; padding: 0 12px !important; font: inherit; font-size: 15.5px; color: var(--a2-ink); box-shadow: none !important; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-send { flex: none; width: 44px !important; min-width: 44px !important; height: 44px !important; min-height: 44px !important; padding: 0 !important; border-radius: 50% !important; border: 0 !important;
  display: inline-grid !important; place-items: center; background: linear-gradient(145deg, var(--a2-gold2), var(--a2-gold)) !important; color: var(--a2-navy) !important; cursor: pointer; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-send svg { width: 20px; height: 20px; fill: currentColor; }
body.rosary-adviser-v2 [dir="rtl"] #rosary-voice-panel .a2-send svg { transform: scaleX(-1); }

@media (max-width: 700px) {
  /* The site-wide floating adviser button stays visible; on this page it sits above the composer. */
  body.rosary-adviser-v2 .rd5-fab { transform: translateY(-92px); }
  body.rosary-adviser-v2 #rosary-voice-panel .rosary-advisor-chat { padding: 14px 12px 12px; border-radius: 18px; }
  body.rosary-adviser-v2 #rosary-voice-panel .a2-title h2 { font-size: 19px; }
  body.rosary-adviser-v2 #rosary-voice-panel .rosary-voice-transcript { min-height: 160px; max-height: 52vh; }
  body.rosary-adviser-v2 #rosary-voice-panel .a2-mic { width: 52px !important; min-width: 52px !important; height: 52px !important; min-height: 52px !important; }
  body.rosary-adviser-v2 #rosary-voice-panel .a2-menu { min-width: 230px; }
}
/* 2.0.14: honest connection states */
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="busy"] { background: #fff6e0; border-color: #e0b85a; color: #6b4e00; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="busy"] i { background: #d39b16; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-state[data-a2-state="reconnecting"] i { background: var(--a2-gold); animation: a2blink .9s ease-in-out infinite; }
/* 2.1.0 relay voice notice */
body.rosary-adviser-v2 #rosary-voice-panel .a2-relay-notice { margin: 6px 0 0; font-size: .86rem; color: #6b4e00; background: #fff6e0; border: 1px solid #e0b85a; border-radius: 10px; padding: 6px 10px; }
/* 2.2.0 teacher document downloads */
body.rosary-adviser-v2 #rosary-voice-panel .a2-files { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-file { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 999px; background: var(--a2-navy); color: #fff; border: 1.5px solid var(--a2-gold); text-decoration: none; font-weight: 600; font-size: .9rem; }
body.rosary-adviser-v2 #rosary-voice-panel .a2-file::before { content: "⬇"; color: var(--a2-gold2); }
body.rosary-adviser-v2 #rosary-voice-panel .a2-file:hover, body.rosary-adviser-v2 #rosary-voice-panel .a2-file:focus-visible { background: var(--a2-navy2); }
/* 2.4.4 (?talkbtn=v2): phone talk button — small round button centred under the full-body adviser */
body.rosary-adviser-v2 #rosary-voice-panel .a2-talk-slot { display: none; }
@media (max-width: 700px) {
  body.rosary-adviser-v2.a2-talk-under #rosary-voice-panel .rosary-advisor-visual { height: auto !important; max-height: none !important; }
  body.rosary-adviser-v2.a2-talk-under #rosary-voice-panel .a2-talk-slot { display: flex; justify-content: center; align-items: center; flex: none; min-height: 70px; margin: -6px 0 -4px; position: relative; z-index: 2; }
  body.rosary-adviser-v2.a2-talk-under #rosary-voice-panel .a2-talk-slot .a2-mic { width: 54px !important; min-width: 54px !important; height: 54px !important; min-height: 54px !important; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
  body.rosary-adviser-v2.a2-talk-under #rosary-voice-panel .a2-talk-slot .a2-mic::before { content: ""; position: absolute; inset: -5px; border-radius: 50%; } /* 64px tap target */
  body.rosary-adviser-v2.a2-talk-under #rosary-voice-panel .a2-talk-slot .a2-mic .a2-mic-icon svg { width: 26px; height: 26px; }
}
