/* A single paper surface spans the iPhone safe areas and first-run pages. */
:root{--lw-safe-top:max(env(safe-area-inset-top,0px),var(--lw-native-safe-top,0px));--lw-safe-bottom:max(env(safe-area-inset-bottom,0px),var(--lw-native-safe-bottom,0px))}
body.lw-body dialog.lw-onboarding[open],body.lw-body dialog.lw-onboarding::backdrop{background:var(--lw-panel,#fff)}
.lw-onboarding .lw-onboarding-signin-form{justify-content:flex-end;gap:20px}
.lw-onboarding .lw-onboarding-signin-brand{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:15px;margin:0;padding:24px 0;text-align:center}
.lw-onboarding .lw-onboarding-signin-brand img{width:70px;height:70px}
.lw-onboarding .lw-onboarding-signin-brand h1{font-size:32px;font-weight:600;letter-spacing:-.04em}
.lw-onboarding .lw-onboarding-signin-brand p{font-size:16px;color:var(--lw-ink-2,#666b70);margin:2px 0 0}
body.lw-body .lw-context-menu .lw-context-row:is(:hover,:active,:focus-visible){background:var(--lw-shell-hover,#ededeb);color:inherit}
body.lw-body .lw-context-menu .lw-context-row:focus:not(:focus-visible){background:transparent;outline:none}
body.lw-body .lw-context-menu .lw-context-row:focus-visible{outline:2px solid #888;outline-offset:-2px}
@media(max-width:700px){
 body.lw-body{--lw-mobile-side-w:min(420px,calc(100vw - 68px));--lw-shell-surface:var(--lw-panel,#fff)}
 body.lw-body .lw-shell{background:var(--lw-panel,#fff);overflow:hidden}
 body.lw-body .lw-side{box-sizing:border-box;inset:0;width:100vw;height:100dvh;max-height:100dvh;padding-right:calc(100vw - var(--lw-mobile-side-w));background:var(--lw-panel,#fff);overflow:hidden}
 body.lw-body .lw-side-body{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain}
 body.lw-body .lw-shell-profile{box-sizing:border-box;background:var(--lw-panel,#fff);border-top:0;left:0;bottom:0}
 body.lw-body .lw-main{box-sizing:border-box;height:100%;max-height:100%;padding-top:var(--lw-safe-top);overflow:hidden;border-radius:0;transition:transform .26s cubic-bezier(.22,.8,.28,1),border-radius .26s ease;transform-origin:center}
 body.lw-body.lw-side-open .lw-main{border-left:0;border-radius:34px 34px 34px 34px;box-shadow:-10px 0 40px #0000000c}
 body.lw-body .lw-space-phone-temporary{grid-column:3;grid-row:1;margin:0;width:44px;height:44px;border:0;background:var(--lw-paper,#f5f5f4);color:var(--lw-ink,#202326)}
 body.lw-body .lw-space-phone-temporary svg{width:25px;height:25px}
 body.lw-body .lw-space-phone-temporary[aria-pressed=true]{background:var(--lw-shell-hover,#ededeb)}
 body.lw-body .lw-space-phone-temporary[hidden],body.lw-body .lw-space-phone-call[hidden]{display:none!important}
 body.lw-body .lw-space-phone-call{grid-column:3;grid-row:1}
}
@media(prefers-reduced-motion:reduce){body.lw-body .lw-main{transition:none}}
/* The main surface owns the top inset once for every app. Compact headers
   must never replace it when the keyboard opens after signing in. */
@media(max-width:700px){
 body.lw-body.lw-space-mobile .lw-space-phone-head:not([hidden]),
 body.lw-body.lw-space-mobile:not(.lw-agent-conversation) #lwConversationHeader:not([hidden]){padding-top:10px}
 body.lw-body.lw-space-mobile:is(.lw-composing,.lw-keyboard-open) .lw-space-phone-head:not([hidden]),
 body.lw-body.lw-space-mobile.lw-keyboard-open #lwConversationHeader:not([hidden]){padding-top:4px}
}
/* Find stays in the existing composer, with neutral ink and match navigation. */
#lwChatForm.lw-finding .lw-space-composer-shell{display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-template-rows:minmax(40px,auto);align-items:center;gap:2px;padding:6px 8px;border-radius:28px;border-color:var(--lw-line,#e3e5e4);box-shadow:none}
#lwChatForm.lw-finding .lw-space-composer-shell>:is(.lw-context-add,.lw-space-send,.lw-space-form-apps,.lw-context-chips){display:none!important}
#lwChatForm.lw-finding .lw-space-composer-text{display:flex;align-items:center;grid-column:2;grid-row:1;min-width:0;padding:0}
#lwChatForm.lw-finding .lw-space-composer-highlight{display:none!important}
#lwChatForm.lw-finding .lw-space-composer{box-sizing:border-box;flex:1;min-width:0;margin:0;color:var(--lw-ink,#202326);-webkit-text-fill-color:var(--lw-ink,#202326);caret-color:var(--lw-ink,#202326);font-size:16px;line-height:24px;padding:4px 2px;min-height:32px;max-height:72px}
#lwChatForm.lw-finding .lw-space-composer:empty::before{content:attr(data-placeholder);color:var(--lw-ink-2,#777c80);-webkit-text-fill-color:var(--lw-ink-2,#777c80);pointer-events:none}
#lwChatForm.lw-finding .lw-composer-find-symbol{display:grid;place-items:center;grid-column:1;grid-row:1;color:var(--lw-ink-2,#777c80)}
#lwChatForm.lw-finding .lw-composer-find-symbol svg{width:19px;height:19px}
#lwChatForm.lw-finding .lw-composer-find-controls{grid-column:3;grid-row:1}
#lwChatForm.lw-finding .lw-space-composer-shell:focus-within{border-color:var(--lw-line,#dce0df);outline:none;box-shadow:none}
/* The shell already follows the visible viewport. Composer and Find occupy
   its final flex row; the keyboard replaces the bottom home-indicator inset. */
@media(max-width:700px){
 body.lw-body .lw-space-stage,body.lw-body .lw-leaf-layout,body.lw-body .lw-leaf-chat,body.lw-body .lw-space-thread{min-height:0}
 body.lw-body .lw-space-form{flex:0 0 auto}
 body.lw-body.lw-keyboard-open .lw-space-form{margin-bottom:0;padding-bottom:8px}
}
/* The account control floats above the drawer: no rectangular footer edges. */
@media(max-width:700px){
 body.lw-body .lw-shell-profile{border:0!important;outline:0;box-shadow:none;background:transparent;padding:10px 18px calc(14px + var(--lw-safe-bottom,env(safe-area-inset-bottom)))}
 body.lw-body .lw-shell-profile .lw-profile-trigger{gap:11px;min-height:56px;width:100%;padding:8px 10px;border:0;border-radius:999px;background:var(--lw-panel,#fff);box-shadow:0 4px 22px #0000000a}
 body.lw-body .lw-shell-profile .lw-profile-trigger:hover{background:var(--lw-paper,#f7f7f5)}
 body.lw-body .lw-shell-profile .lw-profile-trigger:focus-visible{outline:2px solid #a1a5a7;outline-offset:3px}
 body.lw-body .lw-shell-profile .lw-avatar{flex:0 0 34px;width:34px;height:34px;border:0;box-shadow:none}
 body.lw-body .lw-shell-profile-copy{min-width:0;flex:1;text-align:left}
 body.lw-body .lw-shell-profile-copy strong{font-size:14px;font-weight:550;line-height:1.4}
 body.lw-body .lw-shell-profile-copy small{display:none}
 body.lw-body .lw-shell-profile .lw-shell-profile-more{box-sizing:border-box;width:34px;height:34px;padding:9px;border:0;border-radius:50%;background:var(--lw-paper,#f4f4f3);color:var(--lw-ink-2,#59616a)}
}
/* A pan exposes the same full-height underlay without making it interactive
   until the drawer action commits. No easing runs while the finger moves. */
@media(max-width:700px){
 body.lw-body:is(.lw-side-dragging,.lw-side-settling) .lw-side{display:flex;visibility:visible;transition:none}
 body.lw-body:is(.lw-side-dragging,.lw-side-settling) .lw-shell-profile{display:flex}
 body.lw-body.lw-side-dragging .lw-main{transform:translateX(var(--lw-edge-offset,0px));border-left:0;border-radius:calc(34px * var(--lw-edge-progress,0));box-shadow:-10px 0 40px #0000000c;transition:none!important;user-select:none;-webkit-user-select:none}
}
/* Keep the drawer's search glyph neutral; accent focus styling must not leave
   a green square around it after a tap on iOS. Keyboard focus stays visible. */
@media(max-width:700px){
 body.lw-body .lw-side-head .lw-shell-search,
 body.lw-body .lw-side-head .lw-shell-search:is(:hover,:active,:focus){border:0;border-radius:50%;background:transparent;box-shadow:none;color:var(--lw-ink-2,#596168);-webkit-tap-highlight-color:transparent}
 body.lw-body .lw-side-head .lw-shell-search:focus:not(:focus-visible){outline:none}
 body.lw-body .lw-side-head .lw-shell-search:focus-visible{outline:1.5px solid var(--lw-muted,#858b88);outline-offset:2px;border-radius:50%}
}

/* Header controls share the composer's quiet glass surface. Only mobile
   navigation openers opt in; the separate Space glyph and voice button stay put. */
@media(max-width:700px){
 body.lw-body.lw-space-mobile{
  --lw-mobile-header-glass:color-mix(in srgb,var(--lw-panel,#fff) 90%,transparent);
  --lw-mobile-header-edge:color-mix(in srgb,var(--lw-line,#e3e5e4) 65%,transparent);
  --lw-mobile-header-shadow:0 8px 32px rgb(24 30 35 / .065),0 1px 4px rgb(24 30 35 / .025),inset 0 1px 0 color-mix(in srgb,var(--lw-panel,#fff) 90%,transparent);
 }
 body.lw-body.lw-space-mobile .lw-space-mode-tabs,
 body.lw-body.lw-space-mobile .lw-space-phone-head .lw-space-phone-call:not([hidden]),
 body.lw-body.lw-space-mobile button[data-lw-side-open][data-lw-sidebar-toggle-icon="starter"]{
  box-sizing:border-box;
  border:1px solid var(--lw-mobile-header-edge);
  border-radius:999px;
  background:var(--lw-panel,#fff);
  background:var(--lw-mobile-header-glass);
  color:var(--lw-ink,#171a1d);
  box-shadow:var(--lw-mobile-header-shadow);
  backdrop-filter:blur(24px) saturate(145%);
  -webkit-backdrop-filter:blur(24px) saturate(145%);
  -webkit-tap-highlight-color:transparent;
 }
 body.lw-body.lw-space-mobile .lw-space-mode-tabs{height:44px;padding:4px}
 body.lw-body.lw-space-mobile .lw-space-mode-tabs::before{
  background:color-mix(in srgb,var(--lw-line,#e5e7e5) 65%,var(--lw-panel,#fff));
  box-shadow:0 1px 4px rgb(24 30 35 / .035),inset 0 1px 0 color-mix(in srgb,var(--lw-panel,#fff) 70%,transparent);
 }
 body.lw-body.lw-space-mobile .lw-space-mode-tabs button{font-weight:500}
 body.lw-body.lw-space-mobile .lw-space-mode-tabs button[aria-pressed="true"]{font-weight:600}
 body.lw-body.lw-space-mobile .lw-space-phone-head .lw-space-phone-call.is-connected:not([hidden]){color:var(--lw-accent,var(--lw-blue,#2f7394))}
 body.lw-body.lw-space-mobile button[data-lw-side-open][data-lw-sidebar-toggle-icon="starter"]{
  place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:7px;
 }
 body.lw-body.lw-space-mobile button[data-lw-side-open][data-lw-sidebar-toggle-icon="starter"] svg[data-home-icon="starter"]{width:28px;height:28px}
 body.lw-body.lw-space-mobile .lw-space-mode-tabs button:focus-visible,
 body.lw-body.lw-space-mobile .lw-space-phone-head .lw-space-phone-call:focus-visible,
 body.lw-body.lw-space-mobile button[data-lw-side-open][data-lw-sidebar-toggle-icon="starter"]:focus-visible{
  outline:2px solid var(--lw-accent,var(--lw-blue,#2f7394));outline-offset:3px;
 }
}
@media(max-width:700px) and (prefers-reduced-transparency:reduce){
 body.lw-body.lw-space-mobile .lw-space-mode-tabs,
 body.lw-body.lw-space-mobile .lw-space-phone-head .lw-space-phone-call:not([hidden]),
 body.lw-body.lw-space-mobile button[data-lw-side-open][data-lw-sidebar-toggle-icon="starter"]{
  background:var(--lw-panel,#fff);backdrop-filter:none;-webkit-backdrop-filter:none;
 }
}
@media(max-width:700px) and (forced-colors:active){
 body.lw-body.lw-space-mobile .lw-space-mode-tabs,
 body.lw-body.lw-space-mobile .lw-space-phone-head .lw-space-phone-call:not([hidden]),
 body.lw-body.lw-space-mobile button[data-lw-side-open][data-lw-sidebar-toggle-icon="starter"]{
  background:Canvas;color:ButtonText;border-color:ButtonText;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
 }
 body.lw-body.lw-space-mobile .lw-space-mode-tabs::before{background:ButtonFace;box-shadow:none}
 body.lw-body.lw-space-mobile .lw-space-mode-tabs button[aria-pressed="true"]{color:HighlightText;background:Highlight}
}
/* Daisy's answer tools stay easy to tap while the visible row is quieter. */
@media(max-width:700px){
 body.lw-body.lw-space-mobile.lw-daisy-continuous .lw-message--bot .lw-message-actions{gap:0;margin-top:7px;margin-left:-5px}
 body.lw-body.lw-space-mobile.lw-daisy-continuous .lw-message--bot .lw-message-actions button{flex-basis:36px;width:36px;height:36px;min-width:36px;min-height:36px;padding:9px}
 body.lw-body.lw-space-mobile.lw-daisy-continuous .lw-message--bot .lw-message-actions button svg{width:18px;height:18px}
}
