/* Runtime UI is isolated from the approved static site's layout and typography. */
#labarna-site-runtime .cookie-consent { box-sizing:border-box; position:fixed; z-index:1000; inset-inline-start:max(18px, env(safe-area-inset-left)); bottom:max(18px, env(safe-area-inset-bottom)); width:min(430px, calc(100vw - 36px)); max-height:calc(100dvh - 36px); overflow:auto; padding:24px; color:#09251d; border:1px solid #9bbdb0; background:rgba(248,248,241,.98); box-shadow:0 16px 56px #09251d25; font-family:Geist,Arial,sans-serif; }
#labarna-site-runtime .cookie-consent > span { color:#00877b; font-family:'Geist Mono',monospace; font-size:10px; letter-spacing:.1em; }
#labarna-site-runtime .cookie-consent h2 { margin:16px 0 12px; color:#09251d; font-family:Geist,Arial,sans-serif; font-size:28px; font-weight:800; line-height:1.06; letter-spacing:-.04em; }
#labarna-site-runtime .cookie-consent p { margin:0; color:#496459; font-family:Geist,Arial,sans-serif; font-size:13px; line-height:1.6; }
#labarna-site-runtime .cookie-consent nav { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:12px; }
#labarna-site-runtime .cookie-consent nav a { display:inline-flex; align-items:center; min-height:44px; color:#00796d; font-family:'Geist Mono',monospace; font-size:10px; text-decoration:underline; text-underline-offset:4px; }
#labarna-site-runtime .cookie-consent__actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:12px; }
#labarna-site-runtime .cookie-consent__actions button { min-width:0; min-height:46px; padding:12px 8px; border:1px solid #00877b; color:#006f64; background:transparent; font-family:'Geist Mono',monospace; font-size:10px; font-weight:600; cursor:pointer; }
#labarna-site-runtime .cookie-consent__actions button:last-child { color:#fff; background:#007d70; }
#labarna-site-runtime .cookie-consent__actions button:disabled { opacity:.6; cursor:wait; }
#labarna-site-runtime .cookie-consent :is(button,a):focus-visible { outline:3px solid #007d70; outline-offset:3px; }
#labarna-site-runtime .cookie-consent__signal { display:none; }
#labarna-site-runtime .cookie-consent p.cookie-consent__error { margin-top:12px; color:#9c3526; }
@media(max-width:480px) {
  #labarna-site-runtime .cookie-consent { inset-inline:12px; bottom:max(12px, env(safe-area-inset-bottom)); width:auto; max-height:calc(100dvh - 24px); padding:18px; }
  #labarna-site-runtime .cookie-consent h2 { font-size:24px; }
}

/* Enable the existing install footer when its production behavior is mounted. */
#site-footer .footer-install[data-runtime-ready] { grid-column:1 / -1; display:grid; grid-template-columns:72px minmax(0,1fr) auto; align-items:center; gap:24px; padding:24px; border:1px solid #ffffff25; }
#site-footer .footer-install[data-runtime-ready] > img { display:block; width:72px; height:72px; border-radius:16px; }
#site-footer .footer-install[data-runtime-ready] small { display:block; color:var(--mint); }
#site-footer .footer-install[data-runtime-ready] h2 { margin:8px 0 12px; color:#fff; font-family:Geist,Arial,sans-serif; font-size:22px; line-height:1.25; letter-spacing:-.02em; font-weight:700; }
#site-footer .footer-install[data-runtime-ready] p { color:#a6b8af; font-family:Geist,Arial,sans-serif; font-size:14px; line-height:1.65; letter-spacing:0; }
#site-footer .footer-install[data-runtime-ready] > a { grid-column:auto; justify-content:space-between; max-width:24rem; min-height:48px; padding:10px 14px; border:1px solid #5ce4ce70; }
#site-footer .footer-install[data-runtime-ready] > a[aria-disabled="true"] { cursor:default; }
@media(max-width:820px) {
  #site-footer .footer-install[data-runtime-ready] { grid-template-columns:72px minmax(0,1fr); gap:20px; }
  #site-footer .footer-install[data-runtime-ready] > a { grid-column:1 / -1; max-width:none; }
}
@media(max-width:680px) {
  #site-footer .footer-install[data-runtime-ready] { grid-template-columns:52px minmax(0,1fr); gap:17px; padding:20px 16px; }
  #site-footer .footer-install[data-runtime-ready] > img { width:52px; height:52px; border-radius:12px; }
  #site-footer .footer-install[data-runtime-ready] h2 { font-size:20px; }
}



.labarna-chat-layer { position: fixed; z-index: 1090; top: var(--chat-viewport-top, 0px); right: auto; bottom: auto; left: var(--chat-viewport-left, 0px); display: flex; align-items: flex-end; justify-content: flex-end; width: var(--chat-viewport-width, 100dvw); height: var(--chat-viewport-height, 100dvh); padding: 24px; overflow: hidden; overscroll-behavior: none; isolation: isolate; }
.chat-backdrop { position: absolute; z-index: 0; inset: 0; padding: 0; border: 0; background: linear-gradient(135deg, rgba(1,12,9,.34), rgba(5,28,22,.22)); box-shadow: inset 0 0 180px rgba(2,14,11,.24); cursor: default; -webkit-backdrop-filter: blur(18px) saturate(1.32) contrast(1.04); backdrop-filter: blur(18px) saturate(1.32) contrast(1.04); animation: chat-frost-in .28s ease both; }
@keyframes chat-frost-in { from { opacity: 0; } }
.labarna-chat { position: relative; z-index: 1; display: grid; grid-template-columns: .72fr 1.28fr; width: min(1040px, calc(var(--chat-viewport-width, 100dvw) - 48px)); height: min(730px, calc(var(--chat-viewport-height, 100dvh) - 48px)); max-width: calc(var(--chat-viewport-width, 100dvw) - 48px); max-height: calc(var(--chat-viewport-height, 100dvh) - 48px); overflow: hidden; overscroll-behavior: contain; color: var(--ink); border: 1px solid rgba(7,21,18,.28); border-radius: 58px 18px 58px 18px; background: #f2f4ef; box-shadow: 0 42px 120px rgba(0,12,9,.34), 0 0 0 1px rgba(255,255,255,.75) inset; animation: chat-aperture-in .5s cubic-bezier(.16,1,.3,1) both; }
.labarna-chat::before { position: absolute; inset: 0; opacity: .28; background: repeating-linear-gradient(0deg, transparent 0 39px, rgba(7,21,18,.045) 40px), repeating-linear-gradient(90deg, transparent 0 39px, rgba(7,21,18,.045) 40px); content: ""; mask-image: radial-gradient(circle at 50% 50%, black, transparent 82%); }
.labarna-chat::after { position: absolute; right: 54px; bottom: -13px; width: 34px; height: 34px; border-right: 1px solid rgba(7,21,18,.28); border-bottom: 1px solid rgba(7,21,18,.28); background: #f2f4ef; content: ""; transform: rotate(45deg); }
@keyframes chat-aperture-in { from { opacity: 0; transform: translateY(30px) scale(.94); filter: blur(10px); } }
.chat-close { position: absolute; z-index: 8; top: 12px; right: 14px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; color: var(--mint); border: 0; border-radius: 50%; background: transparent; font-family: var(--font-sans); font-size: 29px; font-weight: 400; line-height: 1; cursor: pointer; transition: color .2s ease, background .2s ease, transform .2s ease; }
.chat-close:hover { color: white; background: rgba(94,232,209,.18); transform: rotate(90deg); }
.chat-field { position: absolute; z-index: 1; top: 43%; left: 23%; width: 1px; height: 1px; pointer-events: none; }
.chat-field i { --chat-angle: calc(var(--chat-signal) * 16.36deg); position: absolute; width: 75px; height: 1px; transform-origin: left; background: linear-gradient(90deg, rgba(94,232,209,0), rgba(94,232,209,.6)); animation: chat-signal 5.2s linear infinite; animation-delay: calc(var(--chat-signal) * -.22s); }
@keyframes chat-signal { from { opacity: 0; transform: rotate(var(--chat-angle)) translateX(90px) scaleX(.1); } 15% { opacity: .8; } to { opacity: 0; transform: rotate(var(--chat-angle)) translateX(690px) scaleX(1.2); } }
.chat-identity, .chat-console { position: relative; z-index: 3; }
.chat-identity { display: flex; flex-direction: column; justify-content: center; padding: 64px 34px 44px 42px; color: white; background: radial-gradient(circle at 24% 42%, rgba(10,158,143,.26), transparent 34%), #071512; }
.chat-core { position: relative; display: grid; place-items: center; width: 116px; height: 116px; margin-bottom: 34px; border: 1px solid rgba(94,232,209,.42); border-radius: 50%; background: rgba(4,19,15,.84); box-shadow: 0 0 0 21px rgba(94,232,209,.03), 0 0 75px rgba(94,232,209,.15); }
.chat-core img { width: 50px; height: 50px; }
.chat-core i { position: absolute; inset: -18px; border: 1px solid rgba(94,232,209,.16); border-radius: 50%; animation: chat-core-ring 12s linear infinite; }
.chat-core i:nth-child(3) { inset: -42px; border-style: dashed; animation-duration: 18s; animation-direction: reverse; }
.chat-core i:nth-child(4) { inset: -65px; animation-duration: 24s; }
@keyframes chat-core-ring { to { rotate: 360deg; } }
.chat-identity > span { color: var(--mint); font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 700; letter-spacing: .14em; }
.chat-identity h2 { margin: 18px 0 25px; font-size: clamp(48px, 4.1vw, 68px); font-weight: 690; letter-spacing: -.075em; line-height: .82; }
.chat-identity h2 em { color: var(--mint); font-family: var(--font-editorial), "Bodoni 72", Didot, serif; font-weight: 430; }
.chat-identity > p { max-width: 420px; margin: 0; color: #dce5df; font-size: 16px; line-height: 1.65; }
.chat-identity > small { display: block; margin-top: 28px; color: #a8b9b0; font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 650; letter-spacing: .1em; }
.labarna-chat .chat-identity { color: var(--ink); background: var(--paper); }
.labarna-chat .chat-identity h2 { color: var(--ink); }
.labarna-chat .chat-identity > span { color: var(--teal); }
.labarna-chat .chat-identity > p { color: #30483e; }
.labarna-chat .chat-identity > small { color: #52675e; }
.labarna-chat .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.chat-console { display: grid; grid-template-rows: auto minmax(0, 1fr) auto auto; min-width: 0; min-height: 0; height: 100%; overflow: hidden; overscroll-behavior: contain; border-left: 1px solid rgba(7,21,18,.18); background: rgba(246,248,243,.96); box-shadow: -24px 0 70px rgba(0,22,16,.08); }
.chat-console[data-voice-bar] { grid-template-rows: auto auto minmax(0, 1fr) auto auto; }
.chat-console-head { display: flex; justify-content: space-between; min-width: 0; min-height: 64px; padding: 14px 72px 14px 20px; color: #d3dfd8; border-bottom: 1px solid rgba(94,232,209,.22); background: #071512; font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 650; letter-spacing: .1em; }
.chat-console-head span { display: flex; align-items: center; gap: 8px; }
.chat-console-head span i { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 12px var(--mint); }
.chat-console-head b { color: var(--mint); font-size: 10px; font-weight: 750; }
.chat-console-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; min-width: 0; }
.chat-console-actions button { min-height: 38px; padding: 9px 12px; color: white; border: 1px solid rgba(94,232,209,.38); background: rgba(94,232,209,.08); font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 800; letter-spacing: .09em; cursor: pointer; }
.chat-console-actions button:hover { color: #03100d; background: var(--mint); }
.chat-console-actions button.is-active { color: var(--ink); border-color: var(--mint); background: var(--mint); }
.chat-console-actions button:disabled { opacity: .5; cursor: wait; }
.chat-voice-bar { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px 16px; min-width: 0; min-height: 64px; padding: 11px 20px; color: #142822; border-bottom: 1px solid rgba(7,21,18,.15); background: #e5eee8; font-family: var(--font-sans), Arial, sans-serif; font-size: 12px; font-weight: 700; letter-spacing: .01em; }
.chat-voice-summary { display: flex; align-items: center; min-width: 0; gap: 8px; overflow-wrap: anywhere; }
.chat-voice-summary > i { flex: 0 0 auto; width: 8px; height: 8px; border-radius: 50%; background: var(--teal); box-shadow: 0 0 0 4px rgba(10,158,143,.12); }
.chat-voice-summary b { min-width: 0; font: inherit; }
.chat-voice-summary small { min-width: 0; overflow: hidden; color: #40574d; font-size: 11px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.chat-voice-meter { position: relative; flex: 0 0 64px; width: 64px; height: 7px; overflow: hidden; border: 1px solid rgba(7,21,18,.24); background: white; }
.chat-voice-meter i { display: block; width: var(--voice-level); height: 100%; background: var(--teal); transition: width .12s linear; }
.chat-voice-actions { display: flex; flex: 0 0 auto; gap: 7px; }
.chat-voice-bar button { min-height: 38px; padding: 8px 12px; color: white; border: 1px solid #071512; background: #071512; font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 800; letter-spacing: .08em; cursor: pointer; }
.chat-voice-bar button:hover { color: var(--ink); border-color: var(--mint); background: var(--mint); }
.chat-voice-bar button:disabled { opacity: .46; cursor: wait; }
.chat-voice-devices { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.chat-voice-devices label { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 7px; min-width: 0; }
.chat-voice-devices label > span { color: #30483e; font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 750; letter-spacing: .08em; }
.chat-voice-devices select { min-width: 0; height: 40px; padding: 7px 32px 7px 10px; overflow: hidden; color: #071512; border: 1px solid rgba(7,21,18,.28); border-radius: 2px; outline: none; background: white; font-family: var(--font-sans), Arial, sans-serif; font-size: 13px; font-weight: 650; letter-spacing: 0; text-overflow: ellipsis; }
.chat-voice-devices select:focus-visible { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(10,158,143,.14); }
.chat-voice-bar.has-warning { color: #4f3300; border-bottom-color: rgba(128,82,0,.25); background: #fff1cc; }
.chat-voice-bar.has-warning .chat-voice-summary > i { background: #a26700; box-shadow: 0 0 0 4px rgba(162,103,0,.12); }
.chat-voice-bar.has-error { color: #632307; border-bottom-color: rgba(132,48,9,.25); background: #ffe5d7; }
.chat-voice-bar.has-error .chat-voice-summary > i { background: #b14315; box-shadow: 0 0 0 4px rgba(177,67,21,.12); }
.chat-voice-bar.has-error { grid-template-columns: 1fr; align-items: stretch; gap: 9px; padding-block: 10px; }
.chat-voice-bar.has-error .chat-voice-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
.chat-voice-bar.has-error button { width: 100%; }
.chat-messages { min-height: 0; overflow-y: auto; overscroll-behavior: contain; overflow-anchor: none; padding: 26px; background: #f2f4ef; -webkit-overflow-scrolling: touch; scrollbar-width: thin; scrollbar-color: var(--teal) transparent; }
.chat-message { display: grid; grid-template-columns: 58px 1fr; gap: 14px; margin-bottom: 20px; animation: message-in .45s cubic-bezier(.16,1,.3,1) both; }
@keyframes message-in { from { opacity: 0; transform: translateY(10px); } }
.chat-message > span { padding-top: 15px; color: #087f73; font-family: var(--font-mono), monospace; font-size: 11px; font-weight: 850; letter-spacing: .1em; }
.chat-message p { margin: 0; padding: 15px 18px; color: #071512; border: 1px solid rgba(7,21,18,.18); border-radius: 3px 18px 18px 18px; background: white; box-shadow: 0 8px 24px rgba(7,21,18,.045); font-family: var(--font-sans), Arial, sans-serif; font-size: 16px; font-weight: 500; line-height: 1.55; white-space: pre-line; }
.chat-message.user > span { color: #385048; }
.chat-message.user p { color: var(--ink); border-radius: 18px 3px 18px 18px; background: var(--mint); }
.chat-message.is-typing p { display: flex; align-items: center; gap: 5px; min-height: 45px; }
.chat-message.is-typing p i { width: 5px; height: 5px; border-radius: 50%; background: var(--mint); animation: typing-dot 1s ease-in-out infinite; }
.chat-message.is-typing p i:nth-child(2) { animation-delay: .16s; }
.chat-message.is-typing p i:nth-child(3) { animation-delay: .32s; }
@keyframes typing-dot { 50% { opacity: .2; transform: translateY(-4px); } }
.chat-prompts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; max-height: 124px; gap: 7px; padding: 0 19px 15px; overflow-x: hidden; overflow-y: auto; scrollbar-width: none; }
.chat-prompts::-webkit-scrollbar { display: none; }
.chat-prompts button { min-width: 0; min-height: 48px; padding: 11px 12px; overflow-wrap: anywhere; color: #071512; border: 1px solid rgba(7,21,18,.25); background: white; font-family: var(--font-sans), Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .01em; line-height: 1.4; white-space: normal; cursor: pointer; }
.chat-prompts button:hover { color: var(--ink); background: var(--mint); }
.chat-channel-choice { max-height: none; padding-bottom: 22px; }
.chat-channel-note { grid-column: 1 / -1; margin: 0 0 4px; padding: 14px 16px; color: #263c34; border: 1px solid rgba(7,21,18,.2); background: white; font-family: var(--font-sans), Arial, sans-serif; font-size: 14px; letter-spacing: 0; line-height: 1.55; }
.chat-channel-note strong { display: block; margin-bottom: 6px; color: #087f73; font-family: var(--font-mono), monospace; font-size: 11px; letter-spacing: .1em; }
.chat-channel-choice button { min-height: 58px; color: white; border-color: #071512; background: #071512; font-family: var(--font-mono), monospace; font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.chat-channel-choice button:first-child { color: var(--ink); background: var(--mint); }
.chat-offer button:first-child { color: var(--ink); background: var(--mint); }
.chat-request-shortcut { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-width: 0; padding: 0 19px 15px; }
.chat-request-shortcut span { color: #40574d; font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 700; letter-spacing: .08em; line-height: 1.45; }
.chat-request-shortcut button { flex: 0 0 auto; min-height: 44px; padding: 10px 14px; color: var(--ink); border: 1px solid rgba(7,21,18,.18); background: var(--mint); font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 800; letter-spacing: .08em; cursor: pointer; transition: transform .25s ease, box-shadow .25s ease; }
.chat-request-shortcut button:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(94,232,209,.16); }
.chat-lead-form { position: absolute; z-index: 5; inset: 64px 0 0; display: flex; flex-direction: column; gap: 20px; min-height: 0; padding: 24px; overflow-y: auto; overscroll-behavior: contain; color: var(--ink); background: #f2f4ef; -webkit-overflow-scrolling: touch; scrollbar-width: thin; scrollbar-color: var(--teal) transparent; }
.chat-console[data-voice-active] .chat-lead-form { inset-block-start: 136px; }
.chat-lead-heading > span { color: #087f73; font-family: var(--font-mono), monospace; font-size: 11px; font-weight: 750; letter-spacing: .1em; }
.chat-lead-heading h3 { margin: 12px 0 8px; color: var(--ink); font-size: clamp(30px, 3vw, 46px); letter-spacing: -.045em; line-height: .95; }
.chat-lead-heading p { max-width: 650px; margin: 0; color: #30483e; font-size: 15px; line-height: 1.6; }
.chat-lead-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid rgba(94,232,209,.18); border-left: 1px solid rgba(94,232,209,.18); }
.chat-lead-summary > div { min-width: 0; padding: 13px; border-right: 1px solid rgba(94,232,209,.18); border-bottom: 1px solid rgba(94,232,209,.18); }
.chat-lead-summary span, .chat-lead-fields label { display: block; color: #087f73; font-family: var(--font-mono), monospace; font-size: 10px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.chat-lead-summary p { margin: 7px 0 0; overflow-wrap: anywhere; color: #172722; font-size: 14px; line-height: 1.5; }
.chat-lead-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.chat-lead-fields label:last-child { grid-column: 1 / -1; }
.chat-lead-fields input { width: 100%; min-height: 50px; margin-top: 8px; padding: 12px; color: var(--ink); border: 1px solid rgba(7,21,18,.25); outline: 0; background: white; font-family: var(--font-sans); font-size: 16px; }
.chat-lead-fields input:focus { border-color: var(--mint); box-shadow: 0 0 0 2px rgba(94,232,209,.08); }
.chat-lead-fields label small { display: block; margin-top: 7px; color: #52655e; font-size: 8px; line-height: 1.45; overflow-wrap: anywhere; text-transform: none; }
.chat-lead-error { margin: -6px 0 0; color: #8d2d08; font-size: 14px; font-weight: 650; }
.chat-lead-submit { flex: 0 0 auto; min-height: 54px; padding: 14px 20px; color: var(--ink); border: 1px solid rgba(7,21,18,.18); background: var(--mint); font-family: var(--font-mono), monospace; font-size: 11px; font-weight: 800; letter-spacing: .09em; cursor: pointer; }
.chat-lead-submit:disabled { opacity: .55; cursor: wait; }
.chat-lead-back { flex: 0 0 auto; align-self: flex-start; min-height: 44px; padding: 10px 2px; color: rgba(7,21,18,.72); border: 0; background: none; font-family: var(--font-mono), monospace; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.chat-lead-back:hover { color: var(--ink); }
.chat-input { display: grid; grid-template-columns: 1fr auto; border-top: 1px solid rgba(7,21,18,.2); background: white; }
.chat-input input { min-width: 0; padding: 20px; color: var(--ink); border: 0; outline: 0; background: white; font-family: var(--font-sans), Arial, sans-serif; font-size: 16px; font-weight: 500; }
.chat-input input::placeholder { color: #52675e; opacity: 1; }
.chat-input button { padding: 0 24px; color: var(--ink); border: 0; border-left: 1px solid rgba(7,21,18,.18); background: var(--mint); font-family: var(--font-mono), monospace; font-size: 11px; font-weight: 800; letter-spacing: .08em; cursor: pointer; }
.chat-input button:disabled { opacity: .32; cursor: not-allowed; }
.chat-close, .chat-prompts button, .chat-input button {
  min-height: 44px;
}
.chat-prompts button { min-height: 46px; }
.chat-input input, .chat-input button { min-height: 58px; }
.chat-close, .chat-identity > span, .chat-console-head, .chat-input button { font-size: 10px; }
.chat-identity > small { font-size: 10px; }
.chat-core img { width: 78px; height: 78px; }
@media (max-width: 1100px) {
  .labarna-chat { grid-template-columns: .72fr 1.28fr; gap: 3vw; }
}
@media (max-width: 1180px), (max-height: 820px) {
  .labarna-chat {
    grid-template-columns: minmax(0, 1fr);
    width: min(760px, calc(var(--chat-viewport-width, 100dvw) - 32px));
    height: min(700px, calc(var(--chat-viewport-height, 100dvh) - 32px));
    max-width: calc(var(--chat-viewport-width, 100dvw) - 32px);
    max-height: calc(var(--chat-viewport-height, 100dvh) - 32px);
    border-radius: 38px 14px 38px 14px;
  }
  .chat-identity { display: none; }
  .chat-console { border-left: 0; }
  .labarna-chat::after, .chat-field { display: none; }
  .chat-prompts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 124px; overflow-x: hidden; overflow-y: auto; }
  .chat-channel-choice { max-height: none; overflow: visible; }
  .chat-prompts button { min-width: 0; min-height: 42px; overflow-wrap: anywhere; line-height: 1.35; white-space: normal; }
  .chat-offer { grid-template-columns: minmax(0, 1fr) minmax(0, .65fr); }
}
@media (max-width: 820px) {
  .labarna-chat-layer { padding: 8px; }
  .labarna-chat { inset: auto; width: 100%; height: 100%; max-width: none; max-height: none; }
  .labarna-chat { inset: auto; grid-template-columns: minmax(0, 1fr); width: 100%; height: 100%; max-width: none; max-height: none; border-radius: 30px 12px 30px 12px; }
  .labarna-chat::after, .chat-field { display: none; }
  .chat-identity { display: none; }
  .chat-console { height: 100%; border-left: 0; }
  .chat-lead-form { inset: 54px 0 0; padding: 18px 14px 24px; }
  .chat-lead-summary, .chat-lead-fields { grid-template-columns: 1fr; }
  .chat-lead-fields label:last-child { grid-column: auto; }
}
@media (max-width: 520px) {
  .chat-console-head b { display: none; }
  .chat-close { top: 12px; right: 12px; }
  .chat-console-head { min-height: 54px; padding: 18px 64px 15px 15px; line-height: 1.45; }
  .chat-console-actions { gap: 6px; }
  .chat-console-actions button { padding-inline: 8px; }
  .chat-voice-bar { grid-template-columns: 1fr; align-items: stretch; gap: 8px; padding: 9px 13px; }
  .chat-voice-summary { flex-wrap: wrap; }
  .chat-voice-summary small { flex: 1 1 100%; }
  .chat-voice-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .chat-voice-devices { grid-template-columns: 1fr; }
  .chat-voice-bar button { width: 100%; }
  .chat-console[data-voice-active] .chat-lead-form { inset-block-start: 206px; }
  .chat-message { grid-template-columns: 50px 1fr; gap: 8px; }
  .chat-messages { padding: 15px; }
  .chat-prompts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 124px; padding: 0 13px 12px; overflow-x: hidden; overflow-y: auto; }
  .chat-prompts button { min-width: 0; min-height: 42px; padding: 9px; overflow-wrap: anywhere; line-height: 1.35; white-space: normal; }
  .chat-offer { grid-template-columns: minmax(0, 1fr) minmax(0, .65fr); }
  .chat-request-shortcut { align-items: stretch; padding: 0 13px 12px; }
  .chat-request-shortcut span { display: none; }
  .chat-request-shortcut button { width: 100%; }
  .chat-input input { padding: 16px 13px; font-size: 16px; }
  .chat-lead-fields input { font-size: 16px; scroll-margin-block: 12px; }
  .chat-input button { padding-inline: 14px; font-size: 10px; }
}
@media (max-width: 350px) {
  .labarna-chat-layer { padding: 5px; }
  .labarna-chat { inset: auto; border-radius: 22px 9px 22px 9px; }
  .chat-console-head { padding-left: 12px; font-size: 9px; }
  .chat-console-head > span { display: none; }
  .chat-console-actions { width: 100%; justify-content: flex-start; }
  .chat-console-actions button { flex: 1 1 0; padding-inline: 5px; }
  .chat-messages { padding: 12px; }
  .chat-message { grid-template-columns: 1fr; gap: 5px; }
  .chat-message > span { padding: 0 3px; }
  .chat-prompts { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: none; padding-inline: 10px; }
  .chat-offer { grid-template-columns: 1fr 1fr; }
  .chat-input input { padding-inline: 10px; }
  .chat-input button { padding-inline: 10px; font-size: 10px; }
}
html[dir="rtl"] .chat-close { right: auto; left: 18px; }
html[dir="rtl"] .chat-console { border-right: 1px solid rgba(94,232,209,.25); border-left: 0; box-shadow: 35px 0 90px rgba(0,0,0,.16); }
html[dir="rtl"] .chat-console-head { padding-right: 19px; padding-left: 72px; }
html[dir="rtl"] .chat-message p { border-radius: 18px 3px 18px 18px; }
html[dir="rtl"] .chat-message.user p { border-radius: 3px 18px 18px 18px; }
html[dir="rtl"] .labarna-chat::after { right: auto; left: 54px; }
@media (max-width: 820px) {
  html[dir="rtl"] .chat-console { border-right: 0; }
  html[dir="rtl"] .chat-console-head { padding-right: 15px; padding-left: 64px; }
}
html[data-gpu-tier="legacy"] .chat-backdrop {
  background: rgba(1,12,9,.74);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.chat-close, .chat-prompts button, .chat-input button { min-width: 44px; min-height: 44px; }
.chat-prompts button { min-height: 46px; }
.chat-input input, .chat-input button { min-height: 58px; }
@media (max-width: 820px) {

  .chat-console-head, .chat-prompts button, .chat-request-shortcut span, .chat-request-shortcut button, .chat-lead-heading > span, .chat-lead-summary span, .chat-lead-fields label, .chat-lead-submit, .chat-input button {
    font-size: max(9px, .58rem);
  }
}
@media (max-width: 820px) {
  .chat-console-head, .chat-prompts button, .chat-request-shortcut span, .chat-request-shortcut button, .chat-lead-heading > span, .chat-lead-summary span, .chat-lead-fields label, .chat-lead-submit, .chat-input button { font-size: max(9px, .58rem); }
}
/* The modal's actual visual rules are copied from the complete app/globals.css
   cascade at build time. These declarations only provide its static-page host. */
#labarna-site-runtime .rai-host-dialog {
  position: fixed; inset: 0; width: 100dvw; height: 100dvh;
  max-width: none; max-height: none; margin: 0; padding: 0;
  border: 0; background: transparent; overflow: hidden;
}
#labarna-site-runtime .rai-host-dialog::backdrop { background: transparent; }
#labarna-site-runtime .labarna-chat-layer {
  --font-sans: Geist; --font-mono: 'Geist Mono'; --font-editorial: 'Bodoni Moda';
  --paper: #f4f6f1; --paper-clear: #fbfcf8; --ink: #071512;
  --ink-soft: #172722; --teal: #0a9e8f; --mint: #5ee8d1;
  --fog: #aab5ae; --line: rgba(7,21,18,.14);
  font-family: var(--font-sans), Arial, Helvetica, sans-serif;
  font-weight: 400; line-height: normal; letter-spacing: normal;
}
#labarna-site-runtime .labarna-chat-layer,
#labarna-site-runtime .labarna-chat-layer *,
#labarna-site-runtime .labarna-chat-layer *::before,
#labarna-site-runtime .labarna-chat-layer *::after { box-sizing: border-box; }
#labarna-site-runtime .labarna-chat-layer :is(button,a,select,input):focus-visible {
  outline: 2px solid var(--teal); outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  #labarna-site-runtime .labarna-chat-layer *,
  #labarna-site-runtime .labarna-chat-layer *::before,
  #labarna-site-runtime .labarna-chat-layer *::after { animation: none !important; transition: none !important; }
}
