/* Shared app and website controls, with the same readable charcoal palette. */
:root { --event-readable:var(--accent); --event-tint:#20252b; }
.pixel-ai-controls { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); }
.pixel-ai-controls p { font-size:15px; line-height:1.65; }
.pixel-ai-controls .text-link { background:none; border:0; color:var(--accent); padding:12px 0; font-size:16px; }
.pixel-ai-controls [aria-pressed=true] { color:var(--text); }
.pixel-ai-controls #pixel-ai-status { color:var(--muted); }
.pixel-composer[aria-busy=true] button { opacity:.65; }
.pixel-dialog { padding:0; }
.pixel-dialog .chat-message a { display:block; padding-block:8px; }
.pixel-header > div { min-width:0; flex:1; }
.pixel-header .icon-button { flex:0 0 44px; }
.pixel-dialog .booking-form input { width:100%; max-width:100%; min-width:0; box-sizing:border-box; }
.booking-heading:focus { outline:none; }
.payment-return { padding:24px; border:1px solid var(--line); border-radius:var(--radius); }
.payment-return .button { margin-top:24px; }
.payment-return iframe { width:100%; border:0; min-height:720px; background:var(--panel); margin-top:24px; }
body[data-brand] .app-promo { background:var(--panel); border-color:var(--line); }
body[data-brand] .app-promo h2 { font-family:Barlow,Impact,sans-serif; font-size:32px; }
body[data-brand] .app-promo p { font-size:16px; }
body[data-brand] .app-promo .small-label { font-size:14px; color:var(--muted); }
body[data-brand] .app-promo .button, body[data-brand] #app-install-native { background:var(--accent); color:#0b0d10; }
body[data-brand] #app-install { background:var(--panel); border-color:#66727d; }
body[data-brand] #app-install h2 { font-family:Barlow,Impact,sans-serif; }
body[data-brand] #app-install p, body[data-brand] #app-install ol, body[data-brand] #app-install summary { font-size:17px; }
body[data-brand] #app-install .small-label,body[data-brand] #app-install .app-install-note { font-size:14px; }
body[data-brand] .app-install-done { font-size:16px; }
body[data-brand] .app-connection { top:env(safe-area-inset-top); font-size:16px; }
html[data-app-mode=standalone] body[data-brand] .app-connection { top:env(safe-area-inset-top); }
html[data-app-mode=standalone] .app-tabs :is(a,button) { font:700 14px/1.35 var(--font); min-height:60px; }
html[data-app-mode=standalone] body[data-brand] .site-header { padding-top:env(safe-area-inset-top); }
html[data-app-mode=standalone] body[data-brand] { padding-bottom:calc(96px + env(safe-area-inset-bottom)); }
html[data-app-mode=standalone] .site-footer { padding-bottom:42px; }
@media(max-width:700px) {
 .pixel-dialog { top:max(var(--visual-top,10px),env(safe-area-inset-top)); max-height:calc(var(--visual-height,100dvh) - 20px); }
 .pixel-dialog .booking-heading { font-size:24px; }
 .pixel-header h2 { line-height:1.15; }
 .pixel-header .eyebrow { font-size:12px; }
 .pixel-composer { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
 .pixel-composer input { min-width:0; font-size:17px; }
 body[data-brand] .app-promo h2 { font-size:30px; }
 body[data-brand] .app-promo p { font-size:16px; }
 .payment-return { padding:20px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }

body[data-brand] #app-install .small-label{color:var(--muted)}
body[data-brand] #app-install h2 em{color:var(--text)}
