.chat-app{background:var(--app-body);flex-direction:column;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.app-header{z-index:30;border-bottom:1px solid var(--line);min-height:68px;padding:max(10px, env(safe-area-inset-top)) 20px 10px;background:var(--app-header);flex:none;justify-content:space-between;align-items:center;gap:14px;display:flex;position:relative}.app-header-identity{align-items:center;gap:6px;min-width:0;display:flex}.owner-lockup{gap:10px}.owner-avatar{color:#f8f4eb;background:0 0;border-radius:50%;place-items:center;width:100%;height:100%;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1;display:grid;overflow:hidden}.owner-name{color:var(--ink);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:500;line-height:1.15;overflow:hidden}.representative-label{color:var(--ink-soft);letter-spacing:.055em;align-items:center;gap:5px;margin-top:0;font-size:11px;font-weight:600;line-height:1;display:flex}.representative-kind{text-transform:uppercase}.representative-label svg{color:#567663}.conversation-counts{min-width:0;color:var(--ink-soft);font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;align-items:center;gap:4px;font-size:10px;font-weight:500;line-height:1.2;display:flex;overflow:hidden}.conversation-counts>span{flex:none}.conversation-counts-separator{color:var(--ink-faint)}.header-actions{flex:none;align-items:center;gap:8px;display:flex}.exposure-progress{gap:4px;width:64px;transition:width .28s cubic-bezier(.22,1,.36,1);animation:2.2s cubic-bezier(.22,1,.36,1) exposure-progress-reveal;display:grid}.exposure-progress:is(:hover,:active){width:145px}.exposure-progress-summary{justify-content:flex-end;align-items:center;min-width:0;height:18px;display:flex}.exposure-progress-value{color:var(--ink-soft);font-variant-numeric:tabular-nums;text-align:right;flex:none;font-size:11px;font-weight:650;line-height:1}.exposure-progress-pill{background:color-mix(in srgb, var(--forest) 24%, var(--line-strong));border-radius:999px;flex:none;justify-content:center;align-items:center;width:12px;height:8px;margin-left:5px;transition:width .28s cubic-bezier(.22,1,.36,1),height .22s,background-color .22s;animation:2.2s cubic-bezier(.22,1,.36,1) exposure-pill-reveal;display:inline-flex;overflow:hidden}.exposure-progress-pill-label{color:#0000;letter-spacing:.015em;opacity:0;white-space:nowrap;font-size:9px;font-weight:650;line-height:1;transition:color .12s,opacity .12s,transform .22s;animation:2.2s exposure-pill-label-reveal;transform:translate(5px)}.exposure-progress:is(:hover,:active) .exposure-progress-pill{background:var(--forest);width:86px;height:18px}.exposure-progress:is(:hover,:active) .exposure-progress-pill-label{color:#f8f4eb;opacity:1;transition-delay:70ms;transform:translate(0)}@keyframes exposure-progress-reveal{0%,8%,to{width:64px}22%,72%{width:145px}}@keyframes exposure-pill-reveal{0%,8%,to{background:color-mix(in srgb, var(--forest) 24%, var(--line-strong));width:12px;height:8px}22%,72%{background:var(--forest);width:86px;height:18px}}@keyframes exposure-pill-label-reveal{0%,14%,86%,to{color:#0000;opacity:0;transform:translate(5px)}26%,70%{color:#f8f4eb;opacity:1;transform:translate(0)}}.exposure-progress-track{background:var(--line-strong);border-radius:999px;width:100%;height:3px;display:block;overflow:hidden}.exposure-progress-fill{border-radius:inherit;background:var(--forest);height:100%;transition:width .24s;display:block}.icon-button{width:40px;height:40px;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:grid;position:relative}.icon-button:hover:not(:disabled){border-color:var(--line);color:var(--ink);background:#ffffff80}.icon-button:active:not(:disabled){transform:scale(.96)}.icon-button:disabled{opacity:.34}.icon-button[data-tooltip]:after{z-index:20;background:var(--ink);color:#fff;content:attr(data-tooltip);opacity:0;pointer-events:none;border-radius:7px;width:max-content;max-width:160px;padding:6px 8px;font-size:11px;font-weight:500;line-height:1.2;transition:opacity .14s,transform .14s;position:absolute;top:calc(100% + 7px);right:0;transform:translateY(-3px)}.icon-button[data-tooltip]:hover:after,.icon-button[data-tooltip]:focus-visible:after{opacity:1;transform:translateY(0)}.transcript-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:0;overflow:hidden auto}.transcript{width:min(100%, var(--reading-column));min-height:100%;margin-inline:auto;padding:30px 25px 24px}.transcript-empty{place-items:center;display:grid}.empty-nudge{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:32px 18px 6vh;display:flex}.empty-rule{background:var(--line);width:24px;height:1px;display:block}.empty-privacy-note{color:var(--ink-faint);letter-spacing:-.005em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:14px;font-style:italic;font-weight:400;line-height:1.45}.message-list{flex-direction:column;gap:24px;display:flex}.message-day-group{display:contents}.message-day-divider{color:var(--ink-faint);letter-spacing:.06em;opacity:.75;text-transform:uppercase;background:0 0;align-self:center;margin:0;padding:2px 4px;font-size:10px;font-weight:600;line-height:1.2}.message-row{width:100%;display:flex}.message-row-user{justify-content:flex-end}.message-bubble{overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.message-bubble-user{background:var(--forest);color:#fbfaf6;border-radius:20px 20px 6px;width:fit-content;max-width:min(82%,510px);padding:11px 46px 12px 15px;font-size:14.5px;line-height:1.55;position:relative;box-shadow:0 3px 12px #1f382f1a}.message-time{color:#fbfaf6b3;font-variant-numeric:tabular-nums;font-family:ui-sans-serif,system-ui,sans-serif;font-size:9px;line-height:1;position:absolute;bottom:9px;right:12px}.assistant-turn{width:100%}.assistant-turn-layout{grid-template-columns:27px minmax(0,1fr);align-items:start;gap:10px;display:grid}.mini-avatar{background:var(--forest);color:#f8f4eb;border-radius:50%;place-items:center;width:27px;height:27px;margin-top:19px;font-family:Georgia,Times New Roman,serif;font-size:13px;display:grid;overflow:hidden}.assistant-bubbles{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex;position:relative}.speaker-label{color:var(--ink-faint);letter-spacing:.045em;text-transform:uppercase;margin:0 0 0 3px;font-size:10px;font-weight:650;line-height:1.2}.message-bubble-assistant{border:1px solid var(--line);width:fit-content;max-width:min(92%,570px);color:var(--ink);background:#fbfaf6eb;border-radius:7px 19px 19px;padding:11px 14px 12px;font-size:14.5px;line-height:1.62;box-shadow:0 3px 14px #2a302b09}.assistant-bubbles .message-bubble-assistant+.message-bubble-assistant{border-top-left-radius:13px}.chat-image-bubble{border:1px solid var(--line);background:#fbfaf6eb;border-radius:7px 19px 19px;width:min(92%,570px);margin:0;overflow:hidden;box-shadow:0 3px 14px #2a302b09}.chat-image-bubble img{object-fit:contain;background:var(--surface-soft);width:100%;height:auto;max-height:min(62vh,620px);display:block}.typing-bubble{border:1px solid var(--line);background:#fbfaf6eb;border-radius:7px 18px 18px;justify-content:center;align-items:center;gap:4px;min-width:52px;height:40px;display:flex}.typing-bubble span{background:var(--ink-faint);border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite typing-pulse}.typing-bubble span:nth-child(2){animation-delay:.14s}.typing-bubble span:nth-child(3){animation-delay:.28s}@keyframes typing-pulse{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.response-actions{flex-direction:row;align-items:center;gap:2px;margin-left:3px;display:flex}.retry-response,.rewind-response{min-height:30px;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;margin:0;padding:5px 7px;font-size:11px;font-weight:600;transition:color .15s,background-color .15s;display:flex}.retry-response:hover:not(:disabled),.rewind-response:hover:not(:disabled){color:var(--forest);background:#29483c12}.retry-response:disabled,.rewind-response:disabled{opacity:.42}.response-actions--history{z-index:1;opacity:0;pointer-events:none;margin-top:2px;transition:opacity .15s;position:absolute;top:100%;left:0}.response-actions--history .retry-response,.response-actions--history .rewind-response{min-height:22px;padding:2px 5px}.assistant-turn:hover .response-actions--history,.assistant-turn:focus-within .response-actions--history{opacity:1;pointer-events:auto}@media (hover:none){.response-actions--history{opacity:1;pointer-events:auto;margin-top:0;position:static}}.share-turn-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1f242152;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.share-turn-dialog{border:1px solid var(--line-strong);background:var(--surface);border-radius:16px;flex-direction:column;width:min(100%,660px);max-height:100%;padding:18px;display:flex;box-shadow:0 24px 70px #1f24213d}.share-turn-dialog>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.share-turn-dialog h2{font-family:Georgia,Times New Roman,serif;font-size:21px;font-weight:500}.share-turn-dialog>header button{width:32px;height:32px;color:var(--ink-faint);cursor:pointer;border-radius:50%;place-items:center;display:grid}.share-turn-hint{color:var(--ink-faint);margin:8px 0 12px;font-size:11px;line-height:1.4}.share-turn-preview-scroll{border:1px solid var(--line);background:var(--surface-soft);border-radius:11px;flex:auto;min-height:0;max-height:52vh;overflow:auto}.share-turn-card{background:var(--app-body);flex-direction:column;gap:18px;width:min(520px,100%);min-height:100%;margin-inline:auto;padding:16px 18px;display:flex;position:relative}.share-turn-edge{z-index:2;background:color-mix(in srgb, var(--surface-soft) 92%, transparent);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex;position:sticky}.share-turn-edge:first-child{border-bottom:1px solid var(--line);top:0}.share-turn-edge:last-child{border-top:1px solid var(--line);bottom:0}.share-turn-edge button{border:1px solid var(--line);color:var(--forest);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:650;display:inline-flex}.share-turn-edge button:hover{background:var(--surface)}.share-turn-item{position:relative}.share-turn-item-messages{flex-direction:column;gap:10px;display:flex}.share-turn-watermark{color:var(--ink-faint);letter-spacing:.04em;opacity:.6;font-size:9px;position:absolute;bottom:2px;right:18px}.share-turn-card .message-bubble-user{max-width:82%}.share-turn-card .message-bubble-assistant,.share-turn-card .chat-image-bubble{max-width:94%}.share-turn-card .chat-image-bubble img{max-height:300px}.share-turn-error{color:#9b3939;margin-top:10px;font-size:11px;line-height:1.4}.share-turn-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.share-turn-actions button{border:1px solid var(--line);min-height:35px;color:var(--forest);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:11px;font-weight:650;display:inline-flex}.share-turn-actions button.share-turn-primary{background:var(--forest);color:#fff}.share-turn-actions button:disabled{opacity:.5;cursor:default}.share-turn-direct{border-top:1px solid var(--line);gap:8px;margin-top:14px;padding-top:14px;display:grid}.share-turn-direct label{color:var(--ink-soft);font-size:11px;font-weight:650}.share-turn-direct textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:68px;color:var(--forest-deep);background:#fff;border-radius:8px;padding:9px 10px;font-family:inherit;font-size:12px;line-height:1.5}.share-turn-direct textarea:focus{border-color:var(--forest);outline:none}.share-turn-direct textarea:disabled{opacity:.6}.share-turn-direct-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.share-turn-direct-footer>span{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:10px}.share-turn-direct-footer button{border:1px solid var(--forest);background:var(--forest);color:#fff;cursor:pointer;border-radius:8px;align-items:center;gap:6px;min-height:35px;padding:7px 10px;font-size:11px;font-weight:650;display:inline-flex}.share-turn-direct-footer button:disabled{opacity:.5;cursor:default}.share-turn-direct-footer button.share-turn-direct-secondary{border-color:var(--line);color:var(--forest);background:#fff}.share-turn-spin{animation:.9s linear infinite share-turn-spin}@keyframes share-turn-spin{to{transform:rotate(360deg)}}.share-turn-direct-status{color:var(--ink-soft);font-size:11px;line-height:1.4}.share-turn-direct-success{color:#1e5b2e;background:#eef7ee;border:1px solid #bfe0c3;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.share-turn-direct-success p{margin:0;font-size:12px;line-height:1.45}.share-turn-direct-success p:first-child{font-weight:700}@media (max-width:520px){.share-turn-backdrop{padding:10px}.share-turn-dialog,.share-turn-card{padding:14px}.share-turn-watermark{right:14px}}.scroll-anchor{width:1px;height:1px}.composer-region{z-index:4;padding:8px 18px max(13px, env(safe-area-inset-bottom));flex:none}.history-truncated-divider{color:var(--muted-foreground,#6b7280);text-align:center;align-self:center;margin:0;font-size:.78rem}.composer-inner{width:min(100%,690px);margin-inline:auto}.chat-transcript-stage{flex:auto;min-height:0;display:flex;position:relative}.chat-transcript-stage>.transcript-scroll{flex:auto}.conversation-hydrating{color:var(--muted-foreground,#6b7280);flex:auto;justify-content:center;align-items:center;padding:1.5rem;display:flex}.conversation-footer{z-index:4;border-top:1px solid var(--line);background:var(--app-body);flex:none}.message-bubble-assistant a{color:var(--forest-deep);text-underline-offset:2px;text-decoration-thickness:1px}.conversation-ended-bubble{background:var(--surface-soft);color:var(--ink-soft)}.inline-error{background:var(--error-bg);color:var(--error);border:1px solid #8b3e352e;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:9px;padding:9px 10px 9px 12px;display:flex}.inline-error p{margin:0;font-size:12.5px;font-weight:570;line-height:1.35}.inline-error span{letter-spacing:.055em;opacity:.72;text-transform:uppercase;margin-top:3px;font-size:9px;display:block}.inline-error button{min-width:60px;min-height:34px;color:var(--error);cursor:pointer;background:#ffffff6b;border:1px solid #8b3e3538;border-radius:9px;flex:none;padding-inline:10px;font-size:12px;font-weight:700}.suggested-replies{flex-wrap:wrap;gap:7px;margin-bottom:9px;display:flex}.suggested-replies button{overflow-wrap:anywhere;max-width:100%;min-height:34px;color:var(--forest);cursor:pointer;font:inherit;text-align:left;background:#ffffff94;border:1px solid #29483c38;border-radius:999px;padding:7px 12px;font-size:12.5px;line-height:1.35;transition:background-color .15s,border-color .15s}.suggested-replies button:hover:not(:disabled){background:var(--surface);border-color:#29483c6b}.suggested-replies button:disabled{cursor:default;opacity:.55}.composer{border:1px solid var(--line-strong);background:var(--surface);border-radius:18px;align-items:flex-end;gap:8px;padding:7px 7px 7px 14px;transition:border-color .16s,box-shadow .16s;display:flex;box-shadow:0 8px 28px #282d280f}.composer:focus-within{border-color:var(--forest-focus);box-shadow:0 0 0 3px var(--forest-focus-ring), 0 8px 28px #282d280f}.composer textarea{resize:none;width:100%;min-height:38px;max-height:144px;color:var(--ink);background:0 0;border:0;outline:0;padding:8px 2px 6px;font-size:15px;line-height:1.5;overflow-y:auto}.composer textarea::placeholder,.composer textarea:disabled{color:var(--ink-faint)}.send-button{background:var(--forest);color:#fff;cursor:pointer;border:0;border-radius:13px;flex:0 0 38px;place-items:center;width:38px;height:38px;transition:background-color .15s,transform .15s,opacity .15s;display:grid}.send-button:hover:not(:disabled){background:var(--forest-deep)}.send-button:active:not(:disabled){transform:translateY(1px)}.send-button:disabled{background:var(--surface-soft);color:var(--ink-faint);opacity:.75}.composer-meta{color:var(--ink-faint);letter-spacing:.015em;justify-content:space-between;padding:7px 5px 0;font-size:9.5px;display:flex}.live-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:640px){.chat-app{box-shadow:none;border-inline:0}.app-header{min-height:64px;padding:max(8px, env(safe-area-inset-top)) 12px 8px;gap:7px}.owner-avatar{font-size:16px}.owner-name{font-size:17px}.representative-label{font-size:10px}.transcript{padding:22px 13px 20px}.message-list{gap:21px}.message-bubble-user{max-width:86%;font-size:14px}.assistant-turn-layout{grid-template-columns:25px minmax(0,1fr);gap:7px}.mini-avatar{width:25px;height:25px;font-size:12px}.message-bubble-assistant{max-width:96%;padding:10px 12px 11px;font-size:14px}.composer-region{padding:7px 10px max(10px, env(safe-area-inset-bottom))}.composer{border-radius:17px;padding-left:12px}.composer textarea{font-size:16px}}@media (max-width:360px){.representative-label{letter-spacing:.03em}.header-actions{gap:2px}}
