:root{--bg0:#070717;--bg1:#0c0a22;--panel:#120f2e;--panel2:#0e0b24;--soft:#ffe3f0;--rose:#ff6aa8;--rose2:#ff3b7b;--mint:#79ffd1;--text:#f6f1ff;--muted:#d7cfe6;--r:18px;--shadow:0 14px 60px #0000008c;--glass:#ffffff14}*{box-sizing:border-box}html,body{height:100%;margin:0}body{color:var(--text);background:radial-gradient(1200px 800px at 10% 10%,#1f0a38 0%,#0000 55%),radial-gradient(1100px 820px at 90% 5%,#240b2c 0%,#0000 60%),radial-gradient(1000px 900px at 50% 120%,#0a1630 0%,#070717 85%);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji}.app{min-height:100vh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.bg-orb{filter:blur(22px);opacity:.9;pointer-events:none;mix-blend-mode:screen;border-radius:999px;position:fixed}.bg-orb--a{background:radial-gradient(circle at 30% 30%,#ff8bd2,#0000 65%);width:340px;height:340px;top:80px;left:-80px}.bg-orb--b{background:radial-gradient(circle at 30% 30%,#7effd6,#0000 70%);width:420px;height:420px;top:120px;right:-120px}.bg-orb--c{background:radial-gradient(circle at 40% 40%,#ffd07a,#0000 72%);width:520px;height:520px;bottom:-220px;left:35%}.shell{width:min(1180px,100%);height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));gap:12px;margin:0 auto;padding:14px;display:grid}@media (min-width:820px){.shell{grid-template-columns:340px 1fr;gap:14px;padding:18px}}.sidebar,.chat{border-radius:calc(var(--r) + 6px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);background:linear-gradient(#ffffff1f,#ffffff08);border:1px solid #ffffff2e;flex-direction:column;display:flex;overflow:hidden}.sidebar{padding:12px}.sidebar__top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand__mark{background:#ffffff1f;border:1px solid #ffffff38;border-radius:14px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.brand__name{letter-spacing:.2px;font-weight:800}.brand__sub{color:var(--muted);margin-top:2px;font-size:12px}.sidebar__create{gap:8px;margin:10px 0;display:flex}.field{color:var(--text);background:#0c0a24a6;border:1px solid #ffffff38;border-radius:12px;outline:none;flex:1;padding:10px}.field::placeholder{color:#f6f1ff99}.btn{cursor:pointer;letter-spacing:.2px;-webkit-user-select:none;user-select:none;border:none;border-radius:12px;padding:10px 12px;font-weight:800;transition:transform .12s,filter .12s,background .2s}.btn:active{transform:scale(.98)}.btn--soft{color:var(--text);background:#ffffff24;border:1px solid #ffffff38}.btn--primary{background:linear-gradient(135deg,var(--rose)0%,var(--rose2)100%);color:#1a0620;box-shadow:0 10px 24px #ff3a8e57}.sidebar__list{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:8px;margin-top:8px;display:flex;overflow-y:auto}.chatItem{cursor:pointer;background:#0a081e8c;border:1px solid #ffffff24;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:12px;transition:background .18s,transform .18s;display:flex}.chatItem:hover{background:#120f2ee6;transform:translateY(-1px)}.chatItem.is-active{background:#160c34f2;outline:2px solid #ff6aa88c}.chatItem__left{align-items:center;gap:10px;display:flex}.chatItem__avatar{background:#ffffff1f;border:1px solid #fff3;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.chatItem__title{letter-spacing:.15px;font-weight:900}.chatItem__hint{color:var(--muted);margin-top:2px;font-size:12px}.iconBtn{width:36px;height:36px;color:var(--text);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff38;border-radius:12px}.chat{flex-direction:column;min-height:62vh;display:flex}.chat__top{border-bottom:1px solid #ffffff29;padding:12px 12px 6px}.chat__title{letter-spacing:.2px;font-size:18px;font-weight:950}.chat__subtitle{color:var(--muted);margin-top:2px;font-size:12px}.chat__body{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;flex:1;padding:12px 6px;overflow-y:auto}@media (width:430px) and (height:932px){.sidebar__list{height:calc((932px - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 12px*2 - 8px*2)/3*3 + 8px*2);flex-direction:column;gap:8px;margin-top:8px;display:flex;overflow-y:auto}.chatItem{cursor:pointer;background:#0a081e8c;border:1px solid #ffffff24;border-radius:16px;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:12px;transition:background .18s,transform .18s;display:flex}.chat{height:642px}}.empty{justify-content:center;align-items:center;height:100%;display:flex}.empty__card{text-align:center;background:#09091ca6;border:1px solid #ffffff2e;border-radius:18px;max-width:440px;padding:18px}.empty__emoji{margin-bottom:8px;font-size:30px}.empty__text{color:#f6f1ffeb}.bubble{background:#120f2ed1;border:1px solid #ffffff2e;border-radius:18px;max-width:min(760px,92%);min-height:44px;margin:8px 0;padding:14px 12px 12px;font-size:15px;animation:.22s ease-out both pop}.bubble--me{color:#1a0620;background:linear-gradient(135deg,#ff6aa8eb,#ff3b7bb3);margin-left:auto}.bubble--them{background:#0a081eb8;margin-right:auto}.bubble--system{background:#ffffff1a}.bubble__text{white-space:pre-wrap;line-height:1.35}.bubble__meta{opacity:.9;margin-top:6px;font-size:10px}.bubble--typing .bubble__text:after{content:"";background:#ffffffe6;border-radius:999px;width:6px;height:6px;animation:1.2s infinite dot;position:absolute;top:.15em;right:-14px}.composer{background:linear-gradient(#ffffff0f,#ffffff05);border-top:1px solid #ffffff29;gap:8px;padding:12px 10px;display:flex}.composer__input{resize:none;color:var(--text);background:#090818b3;border:1px solid #ffffff38;border-radius:14px;outline:none;flex:1;padding:14px;font-size:15px;line-height:1.35}.composer__input:disabled{opacity:.55}.modal-overlay{z-index:999;background:#fff;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{text-align:center;color:#333;background:#fff5f9;border-radius:20px;max-width:360px;padding:24px;animation:.3s ease-out modal-pop;position:relative;box-shadow:0 8px 30px #0003}.modal-card h2{margin-bottom:12px;font-size:20px;font-weight:900}.modal-card p{margin-bottom:12px;font-size:14px;line-height:1.4}.modal-card .btn--primary{color:#fff;cursor:pointer;background:#ff4da6;border:none;border-radius:12px;padding:10px 18px;font-weight:700}.heart-animation{pointer-events:none;position:absolute;inset:0;overflow:hidden}.heart{opacity:.8;font-size:18px;animation:4s linear infinite floatHeart;position:absolute}.heart:first-child{animation-delay:0s;left:10%}.heart:nth-child(2){animation-delay:.5s;left:25%}.heart:nth-child(3){animation-delay:1s;left:40%}.heart:nth-child(4){animation-delay:1.5s;left:55%}.heart:nth-child(5){animation-delay:2s;left:70%}.heart:nth-child(6){animation-delay:2.5s;left:85%}.heart:nth-child(7){animation-delay:3s;left:15%}.heart:nth-child(8){animation-delay:3.5s;left:50%}@keyframes floatHeart{0%{opacity:0;transform:translateY(100%)scale(.8)}10%{opacity:1}to{opacity:0;transform:translateY(-200%)scale(1.2)}}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes dot{0%,20%{opacity:0;transform:translate(-2px)}50%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(2px)}}@keyframes modal-pop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width:430px){.chatItem{border-radius:16px;min-height:48px;padding:14px 12px}.chatItem__avatar{width:42px;height:42px}.btn{border-radius:16px;padding:12px 16px;font-size:15px}.iconBtn{border-radius:14px;width:40px;height:40px}.composer__input{padding:14px;font-size:15px}.bubble{min-height:44px;padding:14px 12px 12px;font-size:15px}}
