:root{color-scheme:dark;--bg:#141310;--text:#eee8df;--muted:#c7bbb0;--accent:#d4b89b;--border:#ffffff24}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:18px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI","Yu Gothic",sans-serif}button,a,textarea{-webkit-tap-highlight-color:transparent}button,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.chat-page{padding:24px}.room{max-width:1440px;margin:auto;height:calc(100dvh - 48px);min-height:440px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px}.portrait{position:relative;overflow:hidden;min-width:0;min-height:0;border-radius:20px;background:radial-gradient(ellipse at 50% 35%,#66544755,transparent 72%),linear-gradient(110deg,#292522,#3a3029 48%,#282420);isolation:isolate}.video-home{position:absolute;inset:0;z-index:-2}.video-stack{position:absolute;inset:0}.video-stack video{pointer-events:none}.video-stack video[aria-hidden="true"]{opacity:0}.portrait video{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center}.portrait video{position:absolute;inset:0;margin:auto}.portrait-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0004,transparent 20%);z-index:-1}.portrait-top{padding:16px;display:flex;justify-content:flex-end}.portrait-actions{display:flex;align-items:center;gap:8px}.glass{min-height:44px;min-width:44px;border:1px solid #ffffff50;border-radius:24px;background:#211b17c9;color:var(--text);font-size:14px;padding:8px 14px}.glass{padding:8px 12px}.chat-toggle{display:none}.video-status{position:absolute;z-index:2;left:16px;right:16px;top:35%;padding:12px;border:1px solid var(--border);border-radius:12px;background:#171512eb;color:var(--text);font-size:16px;text-align:center}
.conversation{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;background:linear-gradient(120deg,#25221e,#1d1c19);border:1px solid var(--border);border-radius:20px}.transcript-frame{position:relative;flex:1;min-height:0;min-width:0;overflow:hidden;border-radius:20px 20px 0 0}.transcript{height:100%;overflow-y:auto;padding:24px;scrollbar-width:thin;scrollbar-color:#827364 transparent;overscroll-behavior:contain;overflow-anchor:none;scroll-padding-block:20px 64px}.welcome{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.flower{font-size:32px;color:#b59a7d;line-height:1;margin-bottom:16px}.welcome h3{font-size:22px;font-weight:400;margin:0 0 12px}.welcome p{font-size:18px;line-height:1.8;color:var(--muted);margin:0}.message{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:20px;animation:arrive .2s ease-out}.message.user{align-items:flex-end}.message-label{font-size:14px;letter-spacing:.8px;color:#c6b9aa;margin:0 3px 5px}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;max-width:96%;padding:12px 16px;border-radius:3px 16px 16px 16px;background:#ffffff0d;color:#f0e9e0;font-size:18px;line-height:1.8}.user .bubble{background:#d4b89b24;border-radius:16px 3px 16px 16px}.message.pending .bubble{color:var(--muted)}#latest{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);max-width:calc(100% - 24px);white-space:nowrap;border:1px solid #d4b89b77;border-radius:24px;padding:8px 15px;min-height:44px;background:#302a24;color:var(--text);font-size:14px;box-shadow:0 3px 14px #0006}
.conversation-footer{position:relative;flex-shrink:0;padding:0 18px 12px}.suggestions{display:flex;gap:7px;flex-wrap:wrap;margin:4px 0 12px}.suggestions button{font-size:14px;color:#e3d3c1;border:1px solid #ffffff38;border-radius:20px;background:#211d19b3;padding:7px 12px;min-height:40px}#chat-form{border:1px solid #d4b89b66;border-radius:13px;background:#14131099;padding:10px 12px}textarea{display:block;width:100%;resize:vertical;background:none;border:0;color:var(--text);font-size:18px;line-height:1.55;min-height:56px;max-height:140px;outline:none}textarea::placeholder{color:#c1b4a5}.composer-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:6px}#counter{font-size:14px;color:var(--muted)}#send{border:0;border-radius:8px;background:var(--accent);color:#2f261f;padding:9px 17px;font-size:16px;min-height:44px}.composer-hint{margin:6px 2px 0;color:var(--muted);font-size:14px}.session-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;font-size:14px;color:var(--muted)}.session-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.session-meta button{border:0;background:transparent;color:#dfcfbc;padding:6px 0;font-size:14px;min-height:40px}.privacy-details{position:static}.privacy-details>summary{display:flex;align-items:center;justify-content:center;list-style:none;cursor:pointer;min-height:44px;min-width:44px;border-radius:50%;font-size:24px;color:#ead8c3}.privacy-details>summary::-webkit-details-marker{display:none}.privacy-details[open]>summary{background:#d4b89b24}.info-content{position:absolute;z-index:5;bottom:60px;left:12px;right:12px;max-height:min(65dvh,550px);overflow:auto;overscroll-behavior:contain;border:1px solid #a9957d;border-radius:14px;background:#231f1af5;box-shadow:0 8px 32px #0009;padding:18px;font-size:16px;line-height:1.65}.info-content p{margin:10px 0}.info-content>#video-toggle{display:block;margin-bottom:12px}.demo-tag{font-size:14px;letter-spacing:.5px;color:#ebcdb0}.info-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:14px}.info-content a{text-decoration:underline;text-underline-offset:3px}.disclosure{color:var(--muted)}.error,.expiry-card,.verification-card{font-size:16px;color:#f0cfbb;background:#32251ff0;border:1px solid #b7734977;border-radius:8px;padding:10px 12px;margin-bottom:8px;overflow-wrap:anywhere;max-height:150px;overflow:auto}.expiry-card button,.verification-card button{display:block;border:1px solid #a9957d;border-radius:6px;background:transparent;color:var(--text);font-size:14px;padding:7px 10px;margin-top:8px;min-height:44px}.verification-card p{margin:0 0 8px}#turnstile-widget{max-width:100%;min-width:0}
@keyframes arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.message{animation:none}}@media(hover:none){.composer-hint{display:none}}
@media(max-width:1000px) and (min-width:761px){.chat-page{padding:16px}.room{height:calc(100dvh - 32px);gap:16px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.session-meta{align-items:flex-start;flex-wrap:wrap}.session-actions{margin-left:auto}}
@media(max-width:760px){
 .chat-page{padding:0;overflow:hidden}.room{position:relative;height:var(--room-viewport-height,100dvh);min-height:0;max-width:none;display:block;padding:0}.portrait{position:absolute;inset:0;border-radius:0}.portrait-top{padding:calc(8px + env(safe-area-inset-top,0px)) max(10px,env(safe-area-inset-right,0px)) 8px 10px}.portrait-actions{gap:6px}.chat-toggle{display:block;border-radius:24px;padding:7px 10px;font-size:14px}.video-status{font-size:16px}
 .conversation{position:absolute;bottom:0;left:0;right:0;height:clamp(280px,46%,460px);max-height:100%;border-radius:18px 18px 0 0;border-bottom:0;background:linear-gradient(#211d1940,#17151273)}.transcript-frame{border-radius:18px 18px 0 0}.transcript{padding:12px}.welcome{min-height:100%;height:auto;padding-block:4px}.flower{display:none}.welcome h3{font-size:16px;line-height:1.4;margin-bottom:4px}.welcome p{font-size:14px;line-height:1.5}.message{margin-bottom:12px}.bubble{font-size:15px;line-height:1.65;padding:9px 12px;background:#1f1b178c;color:#fff}.user .bubble{background:#5947358c}.bubble,.message-label,.welcome,.session-meta{text-shadow:0 1px 3px #000}.message-label{font-size:11px;margin-bottom:3px}.conversation-footer{padding:0 10px calc(4px + env(safe-area-inset-bottom,0px))}.suggestions{gap:5px;margin:2px 0 6px}.suggestions button{font-size:12px;padding:4px 8px;min-height:32px}#chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;padding:7px 10px}#message{grid-column:1;grid-row:1;height:32px;min-height:32px;max-height:70px;resize:none;font-size:16px;line-height:1.45}.composer-bottom{display:contents}#counter{grid-column:1;grid-row:2;font-size:11px;line-height:1.4}#send{grid-column:2;grid-row:1 / span 2;align-self:center;min-height:44px;padding:8px 12px}.composer-hint{display:none}.session-meta{margin-top:1px;font-size:12px;line-height:1.3;gap:5px}.session-actions{gap:3px}.session-meta button{font-size:14px;min-height:44px}.info-content{bottom:54px;left:8px;right:8px;max-height:calc(var(--room-viewport-height,100dvh) - 120px);font-size:16px;padding:16px}.error,.expiry-card,.verification-card{font-size:14px;max-height:88px;padding:7px 9px;margin-bottom:6px}
 html[data-chat-collapsed="true"] .conversation{visibility:hidden;pointer-events:none}
 html[data-mobile-keyboard="true"] .conversation{height:100%;border-radius:0;background:#1c191673}
 html[data-mobile-keyboard="true"] .suggestions{display:none}
 .expiry-card{max-height:none;overflow:visible}
 html .conversation[data-expired="true"]{height:auto;padding-top:10px}
 .conversation[data-expired="true"] .transcript-frame,.conversation[data-expired="true"] #chat-form{display:none}
 .expiry-card button{width:100%;background:var(--accent);color:#2f261f}
}
@media(max-width:360px){.session-meta{font-size:12px}.portrait-actions{gap:4px}.chat-toggle{font-size:14px;padding-inline:8px}.conversation{height:clamp(280px,50%,460px)}}
/* Local entrance examples share this stylesheet. */
.entry{max-width:900px;padding:50px 24px;margin:auto;font-size:15px}.entry h1{font-weight:400;line-height:1.5}.eyebrow{font-size:14px;letter-spacing:2px;color:var(--accent)}.entry-demo{font-size:14px;color:var(--muted)}.entry-card{display:block;position:relative;height:400px;overflow:hidden;border-radius:20px;background:#302a25;margin-top:28px}.entry-card video{width:100%;height:100%;object-fit:cover;object-position:center 40%}.entry-card .entry-overlay{position:absolute;inset:0;background:linear-gradient(transparent,#000e);padding:30px;display:flex;flex-direction:column;justify-content:end}.entry-overlay strong{font-size:25px;font-weight:400}.entry-overlay span{font-size:15px;color:#e1d7cc}.entry-overlay small{font-size:11px;letter-spacing:1px}.entry-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:25px}.entry-links a{text-decoration:underline;text-underline-offset:4px;color:#d0c0ad}.entry>#entry-video-toggle{margin-top:14px}@media(max-width:360px){.entry{padding:30px 16px}.entry-overlay strong{font-size:21px}.entry-card .entry-overlay{padding:22px}}

.trial-notice {margin:0 0 6px;color:var(--muted,#bcb5a9);font-size:11px;line-height:1.45;}
/* Playback notices stay below the portrait, away from the face. */
.video-status{top:auto;bottom:12px;left:12px;right:auto;max-width:calc(100% - 24px);padding:6px 10px;font-size:13px;text-align:left;pointer-events:none}
.session-meta{flex-wrap:nowrap}.session-actions{margin-left:auto;justify-content:flex-end}#save-conversation{white-space:nowrap}
@media(max-width:760px){.video-status{bottom:calc(8px + env(safe-area-inset-bottom,0px));font-size:12px}.session-actions{gap:8px}}

.extension-info{margin:4px 0;color:var(--muted,#bcb5a9);font-size:11px;line-height:1.45}#daily-extension{white-space:normal;max-width:100%;text-align:left}

/* Secondary actions stay in the existing information popup. */
#session-info{white-space:nowrap}.info-utilities{display:flex;flex-wrap:wrap;gap:8px 16px}.info-utilities button{border:1px solid var(--border);border-radius:8px;padding:7px 10px;min-height:44px}.info-utilities #extension-info{flex-basis:100%}

.privacy-details>summary{gap:5px;padding-inline:8px}#menu-label{font-size:12px;line-height:1.3;white-space:nowrap}
