:root{font:16px -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:#302728;background:#fff5f3;--coral:#f98d8d}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer;border:0;background:transparent;touch-action:manipulation}button:disabled{opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #ad4154;outline-offset:3px}[hidden]{display:none!important}
#home{min-height:100dvh;background:radial-gradient(ellipse at 86% -25%,#ffc5c0 0 38%,transparent 38.2%),linear-gradient(152deg,#f58b8b,#faaba4 70%,#ffd2c7);padding:0 6vw 48px;overflow:hidden}.homewrap{max-width:920px;margin:auto}.brand{display:inline-flex;align-items:center;gap:8px;color:white;text-decoration:none;font-weight:700;font-size:22px}.brand small{font-size:12px;font-weight:500}.soundmark{font-style:normal;font-size:22px;line-height:1}#home header{padding-top:30px}#home h1{color:white;font-size:clamp(36px,5.3vw,68px);letter-spacing:-.05em;margin:clamp(36px,6vh,70px) 0 22px}.profile{position:relative;isolation:isolate;min-height:clamp(310px,46vh,470px);overflow:hidden;border-radius:26px;background:#fff2ed;box-shadow:0 14px 40px #913e491a}.profile>img{position:absolute;inset:0 0 0 auto;width:58%;height:100%;object-fit:contain;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent,#000 24%)}.profile-copy{position:absolute;left:7%;top:50%;transform:translateY(-50%)}.profile h2{font-size:clamp(37px,5.6vw,68px);margin:0 0 26px;letter-spacing:-.045em}#enter{border-radius:24px;background:#943d49;color:white;font-weight:600;padding:12px 21px}#enter span{margin-left:14px}
#chat{padding:24px 16px;background:#fcebe8;min-height:100dvh}.room{height:calc(100dvh - 48px);width:min(100%,720px);margin:auto;display:flex;flex-direction:column;background:#f0eeee;border-radius:24px;overflow:hidden;box-shadow:0 10px 30px #93474612}.chathead{min-height:64px;padding:0 12px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;border-bottom:1px solid #dfdada;text-align:center}.chathead button,#mic,.send{width:44px;height:44px;display:grid;place-items:center}.chathead #back{font-size:32px}.chathead strong{font-size:17px}.chathead svg,#compose svg,#hang svg{width:20px;height:20px;display:block}
#feed{flex:1;min-height:0;overflow:auto;padding:24px 18px}.message{display:flex;gap:9px;align-items:flex-start;margin-bottom:18px}.message.star:before{content:"";width:34px;height:34px;flex:none;border-radius:50%;background:white url('/portrait.png') center/cover}.message.user{justify-content:flex-end}.bubble{max-width:min(80%,450px);border-radius:15px;background:white;padding:11px 14px;line-height:1.5;font-size:15px;overflow-wrap:anywhere}.user .bubble{background:#ffacaa;color:#452729;border-top-right-radius:5px;white-space:pre-wrap}.star .bubble{border-top-left-radius:5px}.bubble img{max-width:100%;max-height:220px;border-radius:8px;display:block}.bubble p{margin:8px 0 0}.voicebtn{display:flex;gap:12px;align-items:center;min-width:106px;min-height:26px;text-align:left;color:#763e46}.voicebtn:before{content:"▶";font-size:12px}.voicebtn.playing:before{content:"Ⅱ"}.bubble audio{display:none}.bubble summary{font-size:12px;color:#776c6d;cursor:pointer;margin-top:4px}.dock{padding:6px 16px max(12px,env(safe-area-inset-bottom));background:#faf8f8}.dock #notice{font-size:12px;color:#9c4450;padding:0 4px}.dock #notice:not(:empty){padding-block:6px}#chips{display:flex;gap:6px;overflow:auto}#chips button{white-space:nowrap;border-radius:16px;padding:6px 10px;font-size:12px;color:#776164;background:#f3ebeb}#compose{display:flex;align-items:center;gap:6px;margin-top:8px}#compose input{flex:1;min-width:0;background:white;border:1px solid #e8dddd;border-radius:24px;padding:11px 16px}#mic.active,.send{border-radius:50%;background:#f59b98}.send{font-size:23px}
dialog{border:0;border-radius:26px;background:#fff6f3;padding:32px 24px;color:#302728}dialog::backdrop{background:#36252988}.callcard{text-align:center;width:min(300px,68vw)}.callcard img{width:90px;border-radius:50%}.callcard h2{margin:12px 0 4px}.callcard p{min-height:30px;font-size:14px}#hang,#retry{border-radius:24px;padding:10px 20px}#hang{background:#ad4958;color:white;display:inline-flex;align-items:center;gap:7px}
@media(max-width:650px){#home{padding:0 22px 32px}#home header{padding-top:max(20px,env(safe-area-inset-top))}#home h1{margin-top:9vh;margin-bottom:20px}.profile{min-height:0;height:clamp(320px,58dvh,510px)}.profile>img{inset:0;width:100%;height:87%;object-fit:cover;object-position:50% 30%;mask-image:linear-gradient(#000 68%,transparent)}.profile-copy{top:auto;bottom:24px;left:22px;right:22px;transform:none;display:flex;align-items:center;justify-content:space-between}.profile-copy h2{margin:0;font-size:34px}#enter{font-size:14px;padding:11px 16px}#chat{padding:0}.room{height:100dvh;border-radius:0}.chathead{min-height:calc(54px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}#feed{padding:18px 12px}}
