/* aAura website panel. Uses the catalogue's own tokens (--navy, --gold, --serif, --sans). */
.aura { --aura-navy: var(--navy, #0e2239); --aura-gold: var(--gold, #d4af37); }

.aura-field-mic:focus-visible, .aura button:focus-visible, .aura a:focus-visible, .aura-form input:focus-visible {
    outline: 2px solid var(--aura-gold); outline-offset: 2px;
}

.aura-panel {
    /* Same convention as the Room Explorer compare tray: sit above the consent banner while it shows,
       above the tray (900) and below the banner itself (1000). */
    position: fixed; z-index: 950; inset: auto 0 var(--aalabu-consent-banner-space, 0px) 0;
    display: flex; flex-direction: column; max-height: calc(82vh - var(--aalabu-consent-banner-space, 0px));
    padding-bottom: env(safe-area-inset-bottom, 0px);
    background: var(--aura-navy); color: #f4f1ea;
    border-radius: 18px 18px 0 0; box-shadow: 0 -12px 40px rgba(14, 34, 57, .28);
    font-family: var(--sans, system-ui, sans-serif);
}
.aura-panel[hidden] { display: none; }
@media (min-width: 760px) {
    .aura-panel { inset: auto 24px calc(24px + var(--aalabu-consent-banner-space, 0px)) auto; width: 400px; max-height: min(640px, calc(100vh - 48px - var(--aalabu-consent-banner-space, 0px))); border-radius: 18px; padding-bottom: 0; }
}

.aura-head { display: flex; justify-content: space-between; gap: 1rem; padding: 1.1rem 1.15rem .6rem; border-bottom: 1px solid rgba(212, 175, 55, .25); }
.aura-head h2 { margin: 0; font: 700 1.35rem/1.1 var(--serif, Georgia, serif); color: #fff; }
.aura-head p { margin: .25rem 0 0; font-size: .85rem; color: rgba(244, 241, 234, .75); }

.aura-icon { flex: none; width: 2.25rem; height: 2.25rem; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .08); color: #fff; font-size: 1.25rem; line-height: 1; cursor: pointer; }
.aura-icon:hover { background: rgba(255, 255, 255, .16); }

.aura-log { flex: 1; overflow-y: auto; padding: .9rem 1.15rem; display: flex; flex-direction: column; gap: .7rem; overscroll-behavior: contain; }
.aura-hint { margin: 0; font-size: .9rem; color: rgba(244, 241, 234, .7); }
.aura-msg { margin: 0; max-width: 92%; font-size: .93rem; line-height: 1.5; }
.aura-msg-guest { align-self: flex-end; padding: .5rem .8rem; border-radius: 14px 14px 4px 14px; background: rgba(212, 175, 55, .18); color: #fff; }
.aura-msg-aura { align-self: flex-start; display: flex; flex-direction: column; gap: .45rem; }
.aura-msg-notice { align-self: flex-start; color: #f1d98a; }
.aura-statement { margin: 0; }
.aura-ask { font-weight: 600; color: #fff; }
.aura-basis-unavailable { color: rgba(244, 241, 234, .7); }
.aura-tag { display: inline-block; margin-right: .45rem; padding: .05rem .45rem; border-radius: 6px; font-size: .68rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; vertical-align: .1em; background: rgba(212, 175, 55, .2); color: var(--aura-gold); }
.aura-basis-suggestion .aura-tag { background: rgba(255, 255, 255, .12); color: #fff; }
.aura-basis-unavailable .aura-tag { background: transparent; border: 1px solid rgba(244, 241, 234, .35); color: rgba(244, 241, 234, .8); }

.aura-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .2rem; }
.aura-cta, .aura-property { display: inline-block; padding: .5rem .9rem; border-radius: 999px; font-size: .88rem; font-weight: 600; text-decoration: none; }
.aura-cta { background: var(--aura-gold); color: var(--aura-navy); }
.aura-cta:hover { background: #e2c25a; }
.aura-property { border: 1px solid rgba(212, 175, 55, .6); color: #fff; }
.aura-property:hover { background: rgba(212, 175, 55, .15); }

.aura-chips { display: flex; flex-wrap: wrap; gap: .4rem; }
.aura-chip { padding: .35rem .7rem; border: 1px solid rgba(244, 241, 234, .3); border-radius: 999px; background: transparent; color: #f4f1ea; font: inherit; font-size: .82rem; cursor: pointer; }
.aura-chip:hover { border-color: var(--aura-gold); color: #fff; }

.aura-voice-note { margin: 0 1.15rem .6rem; padding: .7rem .8rem; border-radius: 10px; background: rgba(255, 255, 255, .07); font-size: .82rem; color: rgba(244, 241, 234, .85); }
.aura-voice-note[hidden] { display: none; }
.aura-voice-note-actions { display: flex; gap: .5rem; margin-top: .5rem; }
.aura-voice-note-actions button { padding: .35rem .75rem; border: 1px solid rgba(212, 175, 55, .6); border-radius: 999px; background: transparent; color: #fff; font: inherit; cursor: pointer; }
.aura-voice-note-actions button:first-child { background: var(--aura-gold); border-color: var(--aura-gold); color: var(--aura-navy); font-weight: 600; }

.aura-form { display: flex; gap: .45rem; padding: .7rem 1.15rem; border-top: 1px solid rgba(212, 175, 55, .25); }
.aura-form input { flex: 1; min-width: 0; padding: .65rem .85rem; border: 1px solid rgba(244, 241, 234, .25); border-radius: 999px; background: rgba(255, 255, 255, .06); color: #fff; font: inherit; font-size: 1rem; }
.aura-form input::placeholder { color: rgba(244, 241, 234, .55); }
.aura-form[aria-busy="true"] .aura-send { opacity: .6; }
.aura-send { padding: .6rem 1.05rem; border: 0; border-radius: 999px; background: var(--aura-gold); color: var(--aura-navy); font: 700 .92rem var(--sans, system-ui, sans-serif); cursor: pointer; }
.aura-mic[hidden] { display: none; }
.aura-mic.is-listening { background: var(--aura-gold); color: var(--aura-navy); animation: aura-pulse 1.4s ease-in-out infinite; }
@keyframes aura-pulse { 50% { box-shadow: 0 0 0 6px rgba(212, 175, 55, .25); } }
@media (prefers-reduced-motion: reduce) { .aura-mic.is-listening { animation: none; } }

.aura-foot { display: flex; justify-content: space-between; gap: .75rem; margin: 0; padding: 0 1.15rem .9rem; font-size: .74rem; color: rgba(244, 241, 234, .6); }
.aura-link { padding: 0; border: 0; background: none; color: var(--aura-gold); font: inherit; text-decoration: underline; cursor: pointer; }

/* Recommended stays: compact, factual cards */
.aura-results { display: flex; flex-direction: column; gap: .5rem; }
.aura-order, .aura-assumption { margin: 0; font-size: .8rem; color: rgba(244, 241, 234, .7); }
.aura-assumption { color: #f1d98a; }
.aura-cards { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .45rem; }
.aura-card { display: flex; flex-direction: column; gap: .1rem; padding: .6rem .75rem; border: 1px solid rgba(212, 175, 55, .35); border-radius: 12px; background: rgba(255, 255, 255, .05); }
.aura-card-name { font: 700 1rem/1.25 var(--serif, Georgia, serif); color: #fff; text-decoration: none; }
.aura-card-name:hover { text-decoration: underline; text-decoration-color: var(--aura-gold); }
.aura-card-place { font-size: .8rem; color: rgba(244, 241, 234, .7); }
.aura-card-price { font-size: .86rem; font-weight: 600; color: var(--aura-gold); }
.aura-more { align-self: flex-start; padding: .4rem .9rem; border: 1px solid rgba(212, 175, 55, .6); border-radius: 999px; background: transparent; color: #fff; font: 600 .85rem var(--sans, system-ui, sans-serif); cursor: pointer; }
.aura-more:hover { background: rgba(212, 175, 55, .15); }
.aura-more[hidden] { display: none; }
