:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#171717;background:#fafaf8;line-height:1.45}*{box-sizing:border-box}body{margin:0}.minimal{width:min(100% - 32px,720px);margin:0 auto;padding:34px 0 42px}.mast{text-align:center}.hero-photo{display:block;width:min(82vw,430px);height:min(82vw,430px);max-height:430px;object-fit:cover;object-position:50% 25%;border-radius:2px;margin:0 auto 28px}h1{font-size:clamp(1.65rem,6vw,2.25rem);font-weight:600;letter-spacing:-.025em;margin:0}.positioning{font-size:clamp(1.25rem,5vw,1.8rem);line-height:1.2;letter-spacing:-.02em;margin:10px auto 0;max-width:620px}.invitation{color:#666;margin:10px 0 30px}.chat{background:#fff;border:1px solid #e4e4df;border-radius:18px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.035)}.messages{min-height:125px;max-height:430px;overflow:auto;padding:20px}.message{max-width:88%;padding:11px 14px;border-radius:14px;margin-bottom:10px;min-width:0;overflow-wrap:anywhere;word-break:break-word}.message p{margin:0;white-space:pre-wrap}.message a{color:inherit;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}.assistant{background:#f2f2ee}.user{background:#1d1d1b;color:#fff;margin-left:auto}.chips{display:flex;gap:7px;overflow-x:auto;padding:0 16px 14px;scrollbar-width:none}.chips button{flex:0 0 auto;border:1px solid #deded8;background:#fff;border-radius:999px;padding:9px 12px;font-size:.78rem;color:#333}.composer{display:flex;align-items:stretch;gap:8px;border-top:1px solid #eee;padding:12px}.composer textarea{font:inherit;resize:none;flex:1;border:0;outline:0;padding:10px;background:transparent;min-width:0}.composer button{width:46px;border:0;border-radius:12px;background:#1d1d1b;color:#fff;font-size:1.3rem}.notice,.disclosure{font-size:.7rem;color:#777;margin:0;padding:0 16px 7px}.disclosure{padding-bottom:14px}footer{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:24px;font-size:.7rem;color:#777}footer a{color:inherit;text-decoration:none}footer strong{font-weight:500}.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}@media(max-width:520px){.minimal{width:min(100% - 22px,720px);padding-top:18px}.hero-photo{width:calc(100vw - 44px);height:auto;aspect-ratio:1/1;object-fit:contain;margin-bottom:22px}.invitation{margin-bottom:22px}.chat{border-radius:16px}.messages{padding:14px;max-height:360px}.message{max-width:94%;font-size:.95rem;line-height:1.45}.chips{padding:0 12px 12px}.composer{padding:10px}.notice,.disclosure{padding-left:12px;padding-right:12px}}

.message p{margin:0 0 .55em}.message p:last-child{margin-bottom:0}.message ul{margin:.25em 0 .55em;padding-left:1.25em}.message li{margin:.18em 0}.message strong{font-weight:650}.message em{font-style:italic}.message a{color:inherit;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}

.legal{max-width:720px;text-align:left}.legal h1{font-size:2rem;margin:1rem 0}.legal h2{font-size:1.05rem;margin:1.6rem 0 .35rem}.legal p{color:#444;line-height:1.65}.legal a{color:inherit;text-decoration:underline;text-underline-offset:2px}

.notice a{color:inherit;text-decoration:underline;text-underline-offset:2px;font-weight:600}

.footer-link{border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer}
.privacy-banner{position:fixed;left:0;right:0;bottom:0;z-index:1000;padding:12px;background:rgba(250,250,248,.97);border-top:1px solid #ddd}
.privacy-card{width:min(100% - 24px,760px);margin:0 auto;font-size:.82rem;color:#333}.privacy-card p{margin:.45rem 0}.privacy-impact{color:#555}.privacy-actions{display:flex;gap:8px;flex-wrap:wrap;margin:.7rem 0}.privacy-actions button{border:1px solid #bbb;border-radius:999px;padding:8px 13px;background:#fff;cursor:pointer}.privacy-actions button:first-child{background:#1d1d1b;color:#fff;border-color:#1d1d1b}.privacy-links a{color:inherit;text-decoration:underline}

/* Layout refinements */
.mast .invitation{text-align:left;max-width:620px;margin-left:auto;margin-right:auto}
.chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;padding:10px 16px 14px}
.chips button{width:100%;min-width:0;white-space:normal;text-align:left;line-height:1.3;font-size:.82rem;padding:9px 11px}
.messages:empty{display:none}.messages:empty+.composer{border-top:0}
.privacy-banner{padding:6px 10px}.privacy-card{font-size:.72rem;line-height:1.3;width:min(100% - 16px,760px)}.privacy-card p{margin:.25rem 0}.privacy-actions{margin:.35rem 0;gap:6px}.privacy-actions button{padding:6px 10px;font-size:.72rem}.privacy-links{margin-bottom:0!important}
@media(max-width:520px){.mast .invitation{max-width:none}.chips{grid-template-columns:1fr;padding:8px 10px 10px;gap:6px}.chips button{font-size:.8rem;padding:8px 10px}.privacy-banner{padding:5px 7px}.privacy-card{font-size:.68rem}.privacy-card p{margin:.2rem 0}.privacy-impact{display:none}.privacy-actions{margin:.25rem 0}.privacy-actions button{padding:5px 8px;font-size:.68rem}}

.input-stack{flex:1;min-width:0}.input-stack textarea{width:100%;display:block}.input-stack .notice{padding:0 10px 7px;margin-top:3px;line-height:1.35}.composer>.input-stack+.composer button{flex:0 0 46px}
.privacy-card a{color:inherit;text-decoration:underline;text-underline-offset:2px}

.privacy-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:.35rem 0;font-weight:600}.switch{position:relative;display:inline-block;width:40px;height:22px;flex:0 0 auto}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;inset:0;cursor:pointer;background:#bbb;border-radius:999px;transition:.15s}.slider:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.15s}.switch input:checked+.slider{background:#1d1d1b}.switch input:checked+.slider:before{transform:translateX(18px)}.switch input:focus-visible+.slider{outline:2px solid #555;outline-offset:2px}

.privacy-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.privacy-close{border:0;background:none;color:inherit;font:inherit;font-size:1.15rem;line-height:1;padding:0 2px;cursor:pointer}.privacy-close:hover{opacity:.65}

/* Compact question composer */
.composer{align-items:center;padding:7px 9px;gap:6px}
.input-stack textarea{min-height:34px;height:34px;padding:6px 8px;line-height:1.25}
.composer button[type="submit"]{width:34px;height:34px;flex:0 0 34px;border-radius:9px;font-size:1rem;padding:0}
.input-stack .notice{padding:2px 8px 3px;margin:0;font-size:.64rem;line-height:1.25}
@media(max-width:520px){.composer{padding:6px 8px}.input-stack textarea{min-height:32px;height:32px;padding:5px 7px}.composer button[type="submit"]{width:32px;height:32px;flex-basis:32px;border-radius:8px}.input-stack .notice{font-size:.62rem;padding:2px 7px}}

/* Restore comfortable question field; keep only send control compact */
.input-stack textarea{min-height:52px;height:auto;padding:10px;line-height:1.45}
@media(max-width:520px){.input-stack textarea{min-height:48px;height:auto;padding:9px}}

/* Final presentation polish */
footer{flex-direction:column;align-items:center;gap:6px;line-height:1.45}.footer-primary,.footer-legal{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px}.footer-legal{font-size:.66rem;color:#888}.footer-primary a,.footer-primary button{text-decoration:none}.footer-primary a:hover,.footer-primary button:hover{text-decoration:underline;text-underline-offset:2px}
.chat{box-shadow:0 10px 30px rgba(0,0,0,.045)}.composer textarea::placeholder{color:#8a8a84}.chips button{cursor:pointer;transition:border-color .15s ease,background .15s ease}.chips button:hover{background:#f7f7f3;border-color:#c9c9c2}.chips button:focus-visible,.composer button:focus-visible,.footer-link:focus-visible{outline:2px solid #555;outline-offset:2px}
@media(max-width:520px){.footer-legal{max-width:340px;text-align:center}.footer-primary{gap:5px}}

/* Cross-mobile rendering safeguards */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
button,textarea{font-family:inherit}
.composer textarea{font-size:16px}
.chips{-webkit-overflow-scrolling:touch}
@media(max-width:520px){
  .minimal{width:calc(100% - 20px);padding-top:16px;padding-bottom:28px}
  .hero-photo{max-width:100%;height:auto}
  .chat{width:100%;overflow:hidden}
  .composer{width:100%;align-items:center}
  .input-stack{min-width:0;width:100%}
  .input-stack textarea{font-size:16px;width:100%;max-width:100%}
  .chips{width:100%;grid-template-columns:1fr}
  .chips button{max-width:100%;overflow-wrap:anywhere}
  .privacy-banner{max-height:46vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .privacy-card{width:100%;max-width:100%}
  footer{padding:0 6px;overflow-wrap:anywhere}
}
@media(max-width:360px){
  .minimal{width:calc(100% - 14px)}
  .positioning{font-size:1.18rem}
  .invitation{font-size:.9rem}
  .composer{padding:6px}
  .footer-primary{font-size:.68rem}
}

/* Reading-scale chat responses */
.message{font-size:.9rem;line-height:1.42}
.message.assistant{max-width:92%}
.message.user{font-size:.88rem}
@media(max-width:520px){.message{font-size:.88rem;line-height:1.4}.message.user{font-size:.86rem}}

/* Integrated UX acceptance fixes */
.composer button[type="submit"]{align-self:center}
.message.assistant,.message.user{font-size:.9rem}
@media(max-width:520px){.message.assistant,.message.user{font-size:.88rem}}
