/* Baab v24 - layout fixes: gateway screen, cover crop, brand mark, short windows */
.baab-brand-mark{object-fit:contain!important;border-radius:18px;padding:5px;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.18);box-shadow:0 8px 28px rgba(10,132,255,.22), inset 0 1px 0 rgba(255,255,255,.28)}
/* Cover: never stretched, never blurred; crops around the arch + book. */
.cover-card{display:block;width:100%;max-width:420px;aspect-ratio:16/10;object-fit:cover;object-position:50% 38%;border-radius:20px;margin-inline:auto;border:1px solid rgba(255,255,255,.16);box-shadow:0 14px 40px rgba(0,0,0,.45)}
/* Gateway (first open): full screen, scrolls on short windows instead of cropping. */
.gateway{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));overflow-y:auto;
  background:radial-gradient(900px 600px at 15% -10%,rgba(10,132,255,.32),transparent 60%),radial-gradient(800px 560px at 105% 10%,rgba(217,178,107,.22),transparent 58%),linear-gradient(180deg,#0b1020,#05060d)}
.gateway.hidden{display:none}
.gateway-card{width:100%;max-width:460px;margin:auto;text-align:center}
.gateway-hero{position:relative;width:100%;aspect-ratio:16/10;max-height:44dvh;border-radius:26px;overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 60px rgba(0,0,0,.55)}
.gateway-cover{width:100%;height:100%;object-fit:cover;object-position:50% 36%;display:block}
.gateway-fade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,6,13,.78))}
.gateway-logo{position:absolute;left:50%;bottom:-1px;transform:translate(-50%,40%);width:84px;height:84px;background:rgba(12,16,34,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.gateway-title{margin-top:56px;font-size:30px;font-weight:800;letter-spacing:.28em;color:#e9d7a8;padding-inline-start:.28em}
.gateway-line{margin:10px auto 0;max-width:340px;font-size:16px;line-height:1.5;color:rgba(255,255,255,.88)}
.gateway-btn{margin-top:22px;min-height:56px;padding:0 34px;border-radius:999px;border:0;cursor:pointer;font-size:17px;font-weight:700;color:#fff;background:linear-gradient(180deg,#3da0ff,#0A84FF 55%,#0071E3);box-shadow:0 10px 30px rgba(10,132,255,.5),inset 0 1px 0 rgba(255,255,255,.4);display:inline-flex;align-items:center;gap:10px}
.gateway-hint{margin-top:14px;font-size:12px;color:rgba(235,235,245,.55)}
@media (max-height:560px){.gateway-hero{max-height:30dvh}.gateway-title{margin-top:50px;font-size:24px}}
/* Chat keeps most of the screen; bars never crowd the message area. */
.chat-input-bar{flex-wrap:wrap}
.chat-input-bar #chatInput{flex:1 1 180px;min-width:0}
