:root{--cream: #fef9ed;--blush: #ffc8c9;--rose: #f28486;--cocoa: #493225;--muted: #75655c;--card: #fefbf6;--line: #e8dbd1}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;color:var(--cocoa);font-family:Nunito,PingFang SC,Hiragino Sans GB,sans-serif;background:radial-gradient(circle at 12% 18%,#ffd5d6 0,transparent 26%),radial-gradient(circle at 78% 8%,#ddd8f6 0,transparent 24%),radial-gradient(circle at 70% 88%,#fde59c 0,transparent 30%),#f7efe4}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{border:0;cursor:pointer}.stage{min-height:100vh;display:flex;justify-content:center}.phone{width:min(430px,100%);min-height:100vh;position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,#fff7f5,#fff3e6 48%,#fff8dc)}.wide .phone{width:min(860px,100%);background:var(--cream)}@media(min-width:760px){.phone{margin:24px 0;min-height:calc(100vh - 48px);border-radius:36px;overflow:hidden;border:8px solid #fffaf4;box-shadow:0 24px 70px #4932251f}}main{padding:1.4rem 1.15rem 6.2rem}h1{margin:.2rem 0 .8rem;font-size:1.7rem;font-weight:700;letter-spacing:-.02em}h2{margin:1.2rem 0 .4rem;font-size:1rem}nav{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-around;padding:.55rem .4rem .7rem;background:#fffbf6eb;border-top:1px solid rgb(232 219 209 / 80%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}nav a{display:grid;justify-items:center;gap:.1rem;color:var(--muted);font-size:.72rem;font-weight:700}nav a .mark{font-size:1.05rem}nav a.router-link-active{color:var(--rose)}.stack{display:grid;gap:.7rem}.card,.tile,.moment{background:#fefbf6e0;border:1px solid rgb(255 255 255 / 70%);border-radius:22px;box-shadow:0 10px 24px #4932250d}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:16px;padding:.75rem .85rem;background:#fffbf6e5}button.primary,main>button,.stack>button{border-radius:999px;padding:.75rem 1rem;background:#fff;border:1px solid var(--line);font-weight:700}button.danger{color:var(--rose)}.vibe-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.tile{padding:1rem .6rem;text-align:center}.tile strong{display:block;margin-top:.25rem}.tile small,.moment small{color:var(--muted)}.glimmer{padding:1rem 1.05rem}.moment{display:flex;gap:.8rem;align-items:center;width:100%;text-align:left;padding:.85rem 1rem;margin-bottom:.7rem}.moment .badge{width:2.4rem;height:2.4rem;border-radius:999px;display:grid;place-items:center;background:#fff}.chat-head{display:flex;gap:.7rem;align-items:center;margin-bottom:.8rem}.avatar{width:2.6rem;height:2.6rem;border-radius:999px;display:grid;place-items:center;background:var(--blush);color:var(--rose);font-weight:800}.chat-head p{margin:0;color:var(--muted);font-size:.85rem}.bubble{max-width:80%;border-radius:18px;padding:.7rem .85rem;background:#fff}.bubble.user{margin-left:auto;background:#fff6f5}main.chat{flex:1;display:flex;flex-direction:column}.thread{display:grid;gap:.45rem;align-content:start}.composer{display:flex;gap:.5rem;align-items:center;margin-top:auto}.composer textarea{border-radius:999px;resize:none}.composer button{border-radius:999px;background:var(--rose);color:#fff;padding:.7rem .95rem}.center{min-height:70vh;display:grid;align-content:center;justify-items:center;text-align:center}.center .stack{width:min(100%,22rem)}.brand{margin:.4rem 0 0;color:var(--rose);font-weight:800}.tile.on{background:#fff6f5;border-color:var(--blush)}.moment small,.empty{display:block;color:var(--muted)}.bubble{margin:.35rem 0}label{color:var(--muted);font-size:.85rem}
