:root{--white: #ffffff;--pink-50: #fff7fa;--pink-100: #fbe4ec;--pink-200: #f3d3df;--pink-300: #efbcd0;--pink-400: #e8a3bc;--pink-500: #d98aa7;--ink: #4a2a36;--ink-2: #9a5d72;--ink-3: #b07a8e;--gold: #d9a86c;--radius: 18px;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Segoe UI,Microsoft YaHei,sans-serif;color:var(--ink);background:var(--white);-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{overscroll-behavior:none}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer}input,textarea{font:inherit;font-size:16px;color:var(--ink)}h2{font-size:13px;font-weight:500;color:var(--ink-3);margin:22px 4px 8px;text-transform:none}.splash{height:100%;display:grid;place-items:center;font-size:48px}.app{height:100%;display:flex;flex-direction:column;max-width:520px;margin:0 auto}.screen{flex:1;overflow-y:auto;padding:calc(env(safe-area-inset-top) + 14px) 16px 16px}.screen-chat{display:flex;flex-direction:column;padding:0;overflow:hidden}.tabs{display:flex;border-top:.5px solid var(--pink-200);background:var(--white);padding:6px 8px calc(env(safe-area-inset-bottom) + 6px)}.tabs button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--ink-3);padding:4px}.tabs button span{font-size:22px;position:relative;filter:grayscale(.6);opacity:.7}.tabs button.on{color:var(--pink-500)}.tabs button.on span{filter:none;opacity:1}.badge{position:absolute;top:-4px;right:-10px;background:var(--pink-500);color:var(--white);font-size:10px;font-style:normal;min-width:17px;height:17px;border-radius:9px;display:grid;place-items:center;padding:0 4px}.primary{background:var(--pink-400);color:var(--white);border-radius:var(--radius);padding:14px 18px;font-size:15px;font-weight:500;transition:transform .12s,background .2s}.primary:active{transform:scale(.97);background:var(--pink-500)}.primary:disabled{opacity:.6}.secondary{background:var(--pink-50);border:.5px solid var(--pink-200);border-radius:14px;padding:10px 14px;color:var(--ink-2)}.link{color:var(--ink-3);font-size:inherit;padding:0;text-decoration:underline;text-underline-offset:2px}.offline{background:var(--pink-100);color:var(--ink-2);text-align:center;font-size:12px;padding:calc(env(safe-area-inset-top) + 4px) 0 4px}.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 84px);transform:translate(-50%);background:var(--ink);color:var(--white);padding:10px 18px;border-radius:20px;font-size:14px;animation:pop .2s ease-out}@keyframes pop{0%{opacity:0;transform:translate(-50%,8px)}}.login{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:32px;text-align:center}.login-crown{font-size:56px}.login h1{font-weight:500;font-size:26px;margin:4px 0 0}.login p{color:var(--ink-2);margin:0 0 8px}.login input{width:100%;max-width:300px;text-align:center;letter-spacing:2px;padding:14px;border-radius:var(--radius);border:1px solid var(--pink-200);background:var(--pink-50);outline:none}.login input:focus{border-color:var(--pink-400)}.login .primary{width:100%;max-width:300px}.error{color:#c0496f!important;font-size:14px}.topbar{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--ink-3);gap:8px}.topbar .dist{background:var(--pink-50);border:.5px solid var(--pink-200);border-radius:12px;padding:3px 10px;color:var(--ink-2);white-space:nowrap}.partner{text-align:center;margin-top:18px}.emblem{font-size:34px}.nickname{color:var(--ink-3);font-size:15px;margin-top:2px}.presence{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--ink-3);background:var(--pink-50);border:.5px solid var(--pink-200);border-radius:12px;padding:2px 9px;margin-top:4px}.presence i{width:7px;height:7px;border-radius:50%;background:#c9b3bc}.presence.on{color:#3f7d5c;background:#eef8f2;border-color:#cde9d9}.presence.on i{background:#4cbf7f;box-shadow:0 0 0 3px #4cbf7f2e}.chat-head{display:flex;align-items:center;justify-content:center;gap:8px;padding:calc(env(safe-area-inset-top) + 8px) 16px 8px;border-bottom:.5px solid var(--pink-100);flex-shrink:0}.chat-head .presence{margin-top:0}.chat-head-name{font-size:14px;color:var(--ink-2)}.status-card{background:var(--pink-100);border-radius:22px;padding:18px 14px;margin:12px 0 10px}.status-big{font-size:24px;font-weight:500}.status-big span{margin-right:4px}.status-meta{color:var(--ink-2);font-size:13px;margin-top:4px}.replies{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chip{background:var(--white);border:.5px solid var(--pink-200);border-radius:16px;padding:8px 12px;font-size:13px;color:var(--ink-2)}.chip:active{background:var(--pink-50)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.status-btn{background:var(--pink-50);border:.5px solid var(--pink-200);border-radius:16px;padding:12px 4px 10px;font-size:12px;color:var(--ink-2);line-height:1.25;transition:transform .12s,background .2s}.status-btn .emo{display:block;font-size:24px;margin-bottom:4px}.status-btn:active{transform:scale(.95)}.status-btn.on{background:var(--pink-100);border-color:var(--pink-400);color:var(--ink)}.my-preview{margin-top:12px;border:.5px solid var(--pink-200);border-radius:var(--radius);padding:12px}.my-preview-label{font-size:12px;color:var(--ink-3)}.my-preview-status{font-size:16px;font-weight:500;margin-top:2px}.my-preview-note{font-size:14px;color:var(--ink-2);margin-top:2px;display:flex;gap:8px;align-items:center}.my-preview-note .link{text-decoration:none;font-size:13px;padding:2px 6px}.note-row{display:flex;gap:8px;margin-top:10px}.note-row input{flex:1;min-width:0;padding:10px 14px;border-radius:14px;border:.5px solid var(--pink-200);background:var(--white);outline:none}.note-row input:focus{border-color:var(--pink-400)}.nudge{width:100%;margin-top:18px}.chat{flex:1;display:flex;flex-direction:column;min-height:0}.chat-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:12px 16px 10px}.empty{text-align:center;color:var(--ink-3);margin-top:40%}.bubble{max-width:78%;padding:9px 13px;border-radius:18px;font-size:15px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word}.bubble.mine{align-self:flex-end;background:var(--pink-400);color:var(--white);border-bottom-right-radius:6px}.bubble.theirs{align-self:flex-start;background:var(--pink-50);border:.5px solid var(--pink-200);border-bottom-left-radius:6px}.bubble.quick.mine{background:var(--pink-100);color:var(--ink)}.bubble-meta{font-size:11px;opacity:.7;margin-top:2px}.bubble.mine .bubble-meta{text-align:right}.bubble.mine .link{color:inherit}.nudge-line{align-self:center;font-size:12px;color:var(--ink-3);padding:4px 0}.composer{flex-shrink:0;display:flex;gap:8px;align-items:flex-end;background:var(--white);padding:8px 16px 10px;border-top:.5px solid var(--pink-100)}.composer textarea{flex:1;resize:none;max-height:120px;padding:10px 14px;border-radius:20px;border:.5px solid var(--pink-200);background:var(--pink-50);outline:none;field-sizing:content}.composer .primary{width:44px;height:44px;padding:0;border-radius:22px}.settings section{margin-bottom:8px}.seg{display:flex;background:var(--pink-50);border:.5px solid var(--pink-200);border-radius:14px;padding:3px}.seg button{flex:1;padding:9px;border-radius:11px;color:var(--ink-2);font-size:14px}.seg button.on{background:var(--white);color:var(--ink);box-shadow:0 0 0 .5px var(--pink-300)}.row{display:flex;align-items:center;gap:10px;justify-content:space-between}.row input[type=time]{flex:1;padding:10px;border-radius:12px;border:.5px solid var(--pink-200);background:var(--pink-50)}.hint{color:var(--ink-2);font-size:13px;margin:6px 4px;line-height:1.5}.settings .primary{width:100%}.logout{display:block;margin:30px auto 10px}
