:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif;color:#1d2433;background:#f7f8fb;--green:#16b777;--green2:#0fa66a;--line:#e8ebf0;--muted:#8992a3;--shadow:0 10px 36px rgba(29,36,51,.09)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;min-height:100%;background:#f7f8fb}button,input,textarea,select{font:inherit}button{cursor:pointer}.hidden{display:none!important}.page{min-height:100dvh}.home-page{background:linear-gradient(180deg,#fff 0,#f7f8fb 48%,#f7f8fb 100%)}.home-head{height:74px;padding:0 max(18px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(232,235,240,.75);background:rgba(255,255,255,.93);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.logo-wrap{display:flex;align-items:center;gap:10px}.logo-mark{width:37px;height:37px;border-radius:12px;background:linear-gradient(145deg,#20ca88,#0fa66a);display:grid;place-items:center;color:#fff;font-size:22px;font-weight:800;box-shadow:0 6px 16px rgba(22,183,119,.23)}.logo-text{font-size:17px;font-weight:760;letter-spacing:-.2px}.logo-sub{font-size:10px;color:#a0a7b3;margin-top:1px}.home-head-actions{display:flex;gap:7px}.ghost-pill,.avatar-pill{height:36px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:0 10px;color:#394150;font-size:12px}.avatar-pill{display:flex;align-items:center;gap:6px}.avatar-pill>span:first-child{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#eaf9f3;color:var(--green2);font-size:11px;font-weight:700}.home-main{width:min(760px,100%);margin:0 auto;padding:42px 18px 60px}.hero{text-align:center;margin:16px 0 34px}.hero h1{font-size:31px;line-height:1.28;letter-spacing:-1px;margin:0;color:#222a37}.hero h1 span{color:var(--green2)}.hero p{font-size:14px;line-height:1.65;color:#8c95a3;margin:14px auto 0;max-width:460px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.action-card{min-height:178px;border:1px solid var(--line);border-radius:22px;background:#fff;padding:22px;text-align:left;box-shadow:var(--shadow);position:relative;overflow:hidden}.action-card:active{transform:scale(.99)}button.action-card{color:inherit}.create-card{background:linear-gradient(145deg,#17b978,#0ea268);color:#fff;border:0}.create-card:after{content:"";position:absolute;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,.07);right:-55px;top:-55px}.action-icon{width:45px;height:45px;border-radius:15px;background:#eef9f5;color:var(--green2);display:grid;place-items:center;font-size:25px;margin-bottom:20px}.create-card .action-icon{background:rgba(255,255,255,.16);color:#fff}.action-title{font-size:19px;font-weight:760}.action-desc{font-size:12px;color:#929baa;margin-top:6px}.create-card .action-desc{color:rgba(255,255,255,.76)}.join-inline{display:flex;gap:7px;margin-top:15px}.join-inline input{min-width:0;flex:1;height:40px;border:1px solid #dfe3e9;border-radius:11px;padding:0 11px;outline:none}.join-inline input:focus{border-color:#85d7b7}.join-inline button{height:40px;border:0;border-radius:11px;background:#edf8f3;color:var(--green2);font-weight:700;padding:0 14px}.recent-section{margin-top:28px}.section-title{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:700;margin:0 2px 10px}.section-title button{border:0;background:none;color:#9aa2af;font-size:12px}.recent-list{display:flex;flex-direction:column;gap:9px}.recent-item{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px 14px;box-shadow:0 3px 14px rgba(29,36,51,.035)}.recent-room-icon{width:36px;height:36px;border-radius:12px;background:#eef9f5;color:var(--green2);display:grid;place-items:center;margin-right:11px}.recent-info{flex:1;min-width:0}.recent-info b{font-size:13px}.recent-info small{display:block;color:#a0a7b3;margin-top:3px}.recent-item button{border:0;background:#eff9f5;color:var(--green2);border-radius:10px;padding:7px 11px;font-size:12px}.home-error{text-align:center;color:#e14b55;font-size:12px;margin-top:16px;min-height:18px}
.chat-page{background:#f4f6f8;display:flex;flex-direction:column}.chat-head{height:66px;padding:0 10px calc(0px + env(safe-area-inset-top));background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.icon-btn{border:0;background:transparent;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:#343c4a;font-size:19px}.icon-btn:active{background:#f1f3f6}#backBtn{font-size:34px;font-weight:300;line-height:1}.room-heading{flex:1;min-width:0;text-align:center;margin-left:2px}.room-title{font-weight:760;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-code{border:0;background:transparent;color:#9aa2af;font-size:10px;padding:2px 4px}.chat-head-actions{display:flex;align-items:center}.count-btn{position:relative;font-size:16px}.count-btn span{position:absolute;right:0px;top:2px;min-width:16px;height:16px;border-radius:8px;background:#eaf9f3;color:var(--green2);font-size:9px;display:grid;place-items:center;font-weight:700}.status-strip{height:26px;display:flex;align-items:center;justify-content:center;gap:10px;color:#8d96a3;font-size:10px;background:#f9fafb;border-bottom:1px solid #eef0f3}.messages{flex:1;overflow-y:auto;padding:12px 12px 112px;overscroll-behavior:contain}.msg{display:flex;margin:10px 0}.msg.mine{justify-content:flex-end}.bubble-wrap{max-width:min(82%,680px)}.meta{font-size:10px;color:#98a1ad;margin:0 4px 4px}.mine .meta{text-align:right}.bubble{background:#fff;border:1px solid #edf0f3;border-radius:6px 18px 18px 18px;padding:10px 12px;box-shadow:0 2px 9px rgba(29,36,51,.035)}.mine .bubble{background:#dff7ec;border-color:#d4f2e4;border-radius:18px 6px 18px 18px}.original,.translation{white-space:pre-wrap;word-break:break-word;line-height:1.52;font-size:14px}.translation{margin-top:8px;padding-top:8px;border-top:1px solid rgba(110,123,140,.15);font-weight:650;color:#17202c}.status{font-size:10px;color:#a0a8b4;margin-top:6px}.msg img{max-width:100%;display:block;border-radius:11px;margin-bottom:8px}.msg audio{width:100%;height:35px;margin:4px 0 8px}.msg-actions{display:flex;gap:6px;margin-top:7px;align-items:center}.msg-actions button{border:0;background:rgba(255,255,255,.62);border-radius:9px;padding:5px 8px;color:#687282;font-size:10px}.mine .msg-actions button{background:rgba(255,255,255,.48)}.system{text-align:center;color:#a1a9b4;font-size:10px;margin:13px auto}.composer{position:fixed;left:0;right:0;bottom:0;z-index:22;display:flex;align-items:flex-end;gap:7px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);backdrop-filter:blur(15px)}.composer-btn{flex:0 0 39px;width:39px;height:39px;border:0;background:#f2f4f6;border-radius:13px;color:#4d5664;font-size:23px;display:grid;place-items:center}.mic-btn{font-size:17px}.composer textarea{flex:1;min-width:0;max-height:110px;min-height:39px;resize:none;border:1px solid #e2e5e9;background:#f5f6f8;border-radius:14px;padding:9px 12px;outline:none;line-height:20px}.composer textarea:focus{background:#fff;border-color:#cbd2da}.send-btn{height:39px;padding:0 14px;border:0;border-radius:12px;background:var(--green);color:#fff;font-size:13px;font-weight:700}.record-panel{position:fixed;left:12px;right:12px;bottom:72px;z-index:25;background:#fff;border:1px solid #f0dddd;box-shadow:var(--shadow);border-radius:17px;padding:12px 13px;display:flex;align-items:center;gap:10px}.record-dot{width:11px;height:11px;background:#f04b55;border-radius:50%;animation:pulse 1s infinite}.record-panel div:nth-child(2){display:flex;flex-direction:column;flex:1}.record-panel b{font-size:12px}.record-panel span{font-size:10px;color:#a0a7b3;margin-top:2px}.record-panel button{border:0;background:#f4f5f7;border-radius:10px;padding:8px 10px;font-size:11px}.record-panel .record-finish{background:#17b978;color:white}@keyframes pulse{50%{opacity:.35}}
.backdrop{position:fixed;inset:0;background:rgba(13,19,28,.36);z-index:40;backdrop-filter:blur(1px)}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;background:#fff;border-radius:22px 22px 0 0;padding:8px 14px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -15px 40px rgba(21,28,38,.15);max-height:80dvh;overflow:auto}.tall-sheet{min-height:280px}.sheet-handle{width:36px;height:4px;background:#d9dde3;border-radius:2px;margin:3px auto 13px}.sheet-title{text-align:center;font-size:15px;font-weight:750;margin-bottom:14px}.attach-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.attach-options button{border:1px solid var(--line);background:#f9fafb;border-radius:15px;padding:16px 8px;font-size:12px}.attach-options span{display:block;font-size:26px;margin-bottom:5px}.sheet-cancel{width:100%;height:44px;border:0;border-radius:14px;background:#f3f5f7;margin-top:12px;color:#566070}.sheet-row{width:100%;display:flex;align-items:center;gap:11px;border:0;border-bottom:1px solid #f0f1f3;background:#fff;padding:13px 5px;text-align:left}.sheet-row>span{width:34px;height:34px;border-radius:11px;background:#f2f5f6;display:grid;place-items:center}.sheet-row>div{flex:1}.sheet-row b{font-size:13px}.sheet-row small{display:block;font-size:10px;color:#9ba3af;margin-top:3px}.sheet-row em{font-style:normal;color:#bbc1ca;font-size:22px}.sheet-row.danger b{color:#e14b55}.member-item{display:flex;align-items:center;padding:11px 4px;border-bottom:1px solid #f1f2f4}.member-avatar{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#eaf9f3;color:#139d69;font-weight:700;margin-right:10px}.member-info{flex:1}.member-info b{font-size:13px}.member-info small{display:block;font-size:10px;color:#9ba3ae;margin-top:2px}.online-dot{width:8px;height:8px;border-radius:50%;background:#19bc7c}.offline-dot{background:#cbd0d7}.setting-label{display:block;font-size:11px;color:#9099a7;margin:13px 3px 6px}.setting-row{display:flex;gap:8px}.setting-row input,.bottom-sheet select{width:100%;height:44px;border:1px solid #dfe3e8;border-radius:12px;padding:0 12px;background:#fff;outline:none}.setting-row button{border:0;border-radius:12px;background:#eaf9f3;color:#119e69;font-weight:700;padding:0 15px}.setting-hint{font-size:10px;color:#9ba3ae;margin:6px 3px}.language-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.language-item{height:45px;border:1px solid #e6e9ed;background:#fff;border-radius:12px;text-align:left;padding:0 13px;color:#4b5564}.language-item.active{border-color:#83d9b5;background:#effaf5;color:#0e9e67;font-weight:700}#toast{position:fixed;left:50%;bottom:108px;transform:translateX(-50%) translateY(8px);z-index:100;background:#202631;color:#fff;border-radius:999px;padding:9px 14px;font-size:11px;opacity:0;pointer-events:none;transition:.18s;max-width:86vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#toast.show{opacity:.94;transform:translateX(-50%) translateY(0)}
@media(max-width:620px){.home-head{height:64px}.logo-sub{display:none}.logo-text{font-size:15px}.ghost-pill{padding:0 8px}.home-head-actions{gap:5px}.home-main{padding:25px 14px 45px}.hero{text-align:left;margin:8px 4px 24px}.hero h1{font-size:27px}.hero p{font-size:12px;margin-left:0}.action-grid{grid-template-columns:1fr}.action-card{min-height:145px;padding:18px}.action-icon{margin-bottom:12px}.join-inline{position:absolute;left:18px;right:18px;bottom:15px}.join-card{padding-bottom:68px}.messages{padding-left:9px;padding-right:9px}.bubble-wrap{max-width:87%}}@media(min-width:760px){.chat-head,.status-strip,.composer{left:50%;transform:translateX(-50%);max-width:900px;width:100%}.chat-page{max-width:900px;margin:auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}.bottom-sheet{left:50%;right:auto;transform:translateX(-50%);width:min(520px,100%)}.record-panel{left:50%;right:auto;transform:translateX(-50%);width:min(876px,calc(100% - 24px))}}
