/* Production session boundary; layout remains measurable for the pond animation. */
.stage:not(.signed-in) .pane:not(.home) { visibility: hidden; pointer-events: none; }
.stage:not(.signed-in) .panes { overflow-x: hidden !important; touch-action: pan-y; }
.stage:not(.has-chats) .pane.chat,
.stage:not(.has-chats) .pane.gallery { display: none; }
.stage:not(.signed-in) #dock, .stage:not(.signed-in) #topbar,
.stage:not(.signed-in) #sheet, .stage:not(.signed-in) #lightbox { visibility: hidden !important; }
#lab, #labToggle { display: none !important; }
.auth[data-provider="apple"], .auth[data-provider="phone"] { display: none; }
.live-notice { position: absolute; z-index: 50; bottom: 24px; left: 18px; right: 18px; padding: 12px 16px; border-radius: 18px; background: rgba(15,18,22,.94); color: white; font: 13px/1.5 -apple-system,sans-serif; text-align: center; pointer-events: none; }
.live-panel { position: absolute; inset: 24px 12px; z-index: 45; border-radius: 30px; padding: 22px; background: rgba(15,18,22,.97); color: white; overflow-y: auto; display: flex; flex-direction: column; gap: 12px; }
.live-panel button, .live-panel input { font: inherit; color: white; border: 1px solid #ffffff38; background: #ffffff12; border-radius: 18px; padding: 12px 16px; width: 100%; }
.live-panel button { cursor: pointer; text-align: left; }
.live-panel small { color: #ccc; line-height: 1.5; }
.live-panel h2 { font: 26px 'Jost',sans-serif; }
.live-panel .close { width: auto; align-self: flex-end; }
.live-panel button:disabled { opacity: .5; cursor: wait; }
.msg p { white-space: pre-wrap; overflow-wrap: anywhere; }
.live-empty { padding: 20px; text-align: center; color: var(--ink-soft); font-size: 14px; }
#me { cursor: pointer; }
.av.human { display:grid;place-items:center;font:24px 'Jost',sans-serif;font-style:normal;background:rgba(255,255,255,.12);color:var(--ink); }
.stage .pane.contacts { overflow-y:auto; }
.pane.contacts::after { content:'';display:block;width:1px;height:var(--pond-height,100%);pointer-events:none; }
.people-controls { position:sticky;top:16px;margin:16px 14px 0;z-index:8;display:flex;gap:6px; }
.people-controls input { width:100%;min-width:0; }
.people-controls input,.people-controls button { border-radius:20px;padding:9px 12px;color:var(--ink);font:12px -apple-system,sans-serif; }
.people-controls button:disabled { opacity:.4; }
.privacy-link { position:absolute; bottom:12px; right:22px; font-size:10px; color:var(--ink-soft); z-index:2; }
.live-status { position: absolute; top: 12px; left: 18px; z-index: 10; font: 11px -apple-system,sans-serif; color: var(--ink-soft); pointer-events: none; }
.stage:not(.signed-in) .live-status { display:none; }
@media(max-width: 600px) { .stage { height: 100dvh; width: 100vw; aspect-ratio: auto; border-radius: 0; } }
