.sophia-launch{position:fixed;z-index:25;right:26px;bottom:24px;display:flex;align-items:center;gap:10px;border:1px solid #e7d9d3;border-radius:40px;padding:9px 19px 9px 9px;background:#fffcf8;color:#765560;box-shadow:0 5px 28px #69404e17;font:500 13px 'DM Sans',sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}
.sophia-launch:hover{transform:translateY(-3px);box-shadow:0 8px 30px #69404e28}.sophia-monogram{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f0e2df;color:#805e6a;font:italic 30px 'Cormorant Garamond',serif}
#guided-intake{margin-top:24px;text-align:left}#guided-intake>summary{width:fit-content;margin:0 auto;color:#765560;font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:5px}#guided-intake[open]>summary{margin-bottom:30px}
dialog.sophia-dialog{position:fixed;inset:auto 24px 96px auto;margin:0;width:min(380px,calc(100vw - 40px));max-width:none;height:min(560px,calc(100dvh - 128px));max-height:none;padding:0;border:1px solid #e7dcd5;border-radius:24px;background:#fffcf8;color:#4d4143;box-shadow:0 24px 90px #3d23352e;overflow:hidden}
dialog.sophia-dialog::backdrop{background:#29212b40;backdrop-filter:blur(5px)}.sophia-layout{height:100%;display:flex;flex-direction:column}.sophia-header{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid #ece2dc;flex:none;background:#fbf5ef}.sophia-header h2{font:500 30px/1 'Cormorant Garamond',serif;margin:0 0 4px;color:#6d4f5b}.sophia-header p{font-size:11px;margin:0;color:#776a69}.sophia-header .sophia-monogram{width:44px;height:44px}.sophia-header .sophia-icon-button{margin-left:auto}.sophia-icon-button{border:0;background:transparent;color:#765560;font-size:25px;line-height:1;width:40px;height:40px;border-radius:50%;cursor:pointer}.sophia-icon-button:hover{background:#ecdeda}
.sophia-body{flex:1;min-height:0;overflow:auto;padding:18px;overscroll-behavior:contain}.sophia-welcome h3{font:500 28px/1.15 'Cormorant Garamond',serif;color:#755361;margin:3px 0 12px}.sophia-welcome p,.sophia-offline p{font-size:13px;line-height:1.8;margin:0 0 16px;color:#766869}.sophia-starters{display:grid;gap:8px;margin:22px 0}.sophia-starters button{font:400 12px/1.5 'DM Sans',sans-serif;padding:12px 15px;text-align:left;background:#f7eeea;border:1px solid #ebded8;border-radius:13px;color:#71545e;cursor:pointer}.sophia-starters button:hover{background:#efe0db}.sophia-offline{padding:18px;background:#f4e9e4;border-radius:16px;margin-top:18px}.sophia-offline h3{font-size:15px;margin:0 0 9px}.sophia-offline .button{margin:0 0 15px}.sophia-offline .text-link{font-size:12px}
.sophia-messages{display:flex;flex-direction:column;gap:20px}.sophia-message{font-size:13px;line-height:1.8;max-width:100%;overflow-wrap:anywhere}.sophia-message p{margin:4px 0 10px;white-space:pre-wrap}.sophia-speaker{display:block;color:#8b6b76;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.sophia-message.user{align-self:flex-end;background:#f2e6e1;border-radius:17px 17px 4px 17px;padding:12px 16px;max-width:90%}.sophia-message.user p{margin:3px 0}.sophia-message small{display:block;color:#8b7b7c;font-size:10px;line-height:1.6;margin-top:7px}.sophia-message .button{margin:12px 0 0}.sophia-prices{padding:14px;background:#f8f2ed;border:1px solid #ebdfd8;border-radius:13px;margin:14px 0}.sophia-prices>strong{font-size:11px;font-weight:500}.sophia-price-row{display:flex;justify-content:space-between;gap:15px;font-size:11px;padding:7px 0;border-bottom:1px solid #e9ded6}.sophia-price-row span:last-child{white-space:nowrap}.sophia-message.thinking{color:#8b747d}.sophia-message.thinking p{animation:sophia-breathe 1.7s infinite}
.sophia-compose{padding:14px 20px 17px;flex:none;border-top:1px solid #ece2dc;background:#fffcf8}.sophia-compose label[for=sophia-question]{font-size:11px;color:#7c626a;display:block;margin:0 0 7px}.sophia-compose textarea{width:100%;resize:none;min-height:58px;max-height:120px;margin:0;border:1px solid #dfd0c9;border-radius:13px;padding:12px 14px;background:#fffdfa;font:13px/1.6 'DM Sans',sans-serif;color:#4d4143}.sophia-compose textarea:focus{outline:2px solid #b98d9c;outline-offset:2px}.sophia-composer-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}.sophia-photo-label{font-size:11px!important;cursor:pointer;display:flex!important;align-items:center;gap:6px;margin:0!important;color:#765560}.sophia-photo-label input{position:absolute;opacity:0;width:1px;height:1px}.sophia-photo-label:focus-within{outline:2px solid #b98d9c;outline-offset:4px}.sophia-composer-actions .button{padding:10px 22px;min-height:40px;font-size:12px}.sophia-privacy{font-size:10px;line-height:1.6;color:#796b6a;margin:8px 0 0}.sophia-status{font-size:10px;line-height:1.5;min-height:15px;color:#886675;margin:5px 0 0}.sophia-footer{display:flex;justify-content:space-between;align-items:center}.sophia-footer button{font:10px 'DM Sans',sans-serif;color:#806872;background:none;border:0;padding:7px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.sophia-photo-preview{display:flex;align-items:center;gap:10px;margin:0 0 10px}.sophia-photo-preview img{width:45px;height:45px;object-fit:cover;border-radius:7px}.sophia-photo-preview button{border:0;background:none;color:#805e6a;font-size:11px;cursor:pointer}.sophia-dialog [hidden]{display:none!important}.sophia-dialog button:disabled{opacity:.45;cursor:default}.sophia-dialog :focus-visible{outline:2px solid #b98d9c;outline-offset:3px}
@keyframes sophia-breathe{50%{opacity:.4}}@media(prefers-reduced-motion:reduce){.sophia-message.thinking p{animation:none}.sophia-launch{transition:none}}
@media(max-width:600px){dialog.sophia-dialog{inset:auto 16px 88px auto;width:calc(100vw - 32px);max-width:380px;height:min(560px,calc(100dvh - 112px));border-radius:22px}.sophia-header{padding:16px 20px}.sophia-compose{padding-bottom:max(14px,env(safe-area-inset-bottom))}.sophia-compose textarea{font-size:16px}.sophia-launch{right:16px;bottom:16px;padding-right:15px}.sophia-body{padding:20px}.sophia-header h2{font-size:29px}}

.sophia-footer{gap:12px}.sophia-footer>span{flex:1}.sophia-footer>button{flex-shrink:0}

dialog.sophia-dialog.sophia-unavailable{height:auto;max-height:min(560px,calc(100dvh - 128px))}.sophia-unavailable .sophia-layout{height:auto;max-height:inherit}.sophia-unavailable .sophia-body{flex:initial}@media(max-width:600px){dialog.sophia-dialog.sophia-unavailable{inset:auto 16px 88px auto;max-height:min(560px,calc(100dvh - 112px));border-radius:22px}}

/* Paired sewing-inspired corner controls, with a compact floating conversation. */
.corner-button{position:fixed;z-index:35;bottom:max(24px,env(safe-area-inset-bottom));display:grid;place-items:center;width:58px;height:58px;padding:0;border:1px solid #dfc9bf;border-radius:50%;background:#fcf4ed;color:#805c69;box-shadow:0 4px 18px #69404e18;cursor:pointer;transition:transform .2s,box-shadow .2s}
.corner-button:hover{transform:translateY(-3px);box-shadow:0 7px 22px #69404e25}.corner-button:focus-visible{outline:2px solid #9d7483;outline-offset:4px}.sophia-launch{right:24px}.sophia-launch>img{width:40px;height:40px}.sophia-header .sophia-monogram img{width:33px;height:33px}.return-top{left:24px}.return-top>svg{width:34px;height:34px}.corner-tooltip{position:absolute;white-space:nowrap;padding:7px 11px;background:#fffcf8;border:1px solid #e7d9d3;border-radius:9px;font:11px 'DM Sans',sans-serif;opacity:0;pointer-events:none;transition:opacity .15s}.sophia-launch .corner-tooltip{right:calc(100% + 10px)}.return-top .corner-tooltip{left:calc(100% + 10px)}.corner-button:hover .corner-tooltip,.corner-button:focus-visible .corner-tooltip{opacity:1}dialog.sophia-dialog{z-index:40}.sophia-launch[aria-expanded=true]{background:#eeded6}.sophia-dialog::backdrop{background:none;backdrop-filter:none}
@media(max-width:600px){.corner-button{width:54px;height:54px;bottom:max(16px,env(safe-area-inset-bottom))}.sophia-launch{right:16px}.return-top{left:16px}.corner-tooltip{display:none}.sophia-header{padding:12px 16px}.sophia-body{padding:16px}.sophia-compose{padding:10px 16px 12px}.sophia-privacy{font-size:10px}}
@media(prefers-reduced-motion:reduce){.corner-button,.corner-tooltip{transition:none}}
