:root{color:#21353e;font-synthesis:none;--ink:#21353e;--muted:#75858c;--accent:#236b70;--line:#dfe6e9;--paper:#fbfcfd;background:#edf2f5;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;white-space:nowrap;border:0;justify-content:center;align-items:center;gap:8px;transition:background .15s,color .15s;display:inline-flex}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #78bec8}input,textarea{color:var(--ink)}input{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;min-width:0;padding:13px 14px}input:focus,textarea:focus{border-color:#74a9ad}label{color:#536971;margin:20px 0 9px;font-size:13px;display:block}.primary{background:var(--accent);color:#fff;border-radius:9px;min-height:48px;padding:14px 20px;font-size:14px;font-weight:600}.primary:hover:not(:disabled),.send-button:hover:not(:disabled){background:#1a5358}.full{width:100%}.entry-shell{max-width:1440px;min-height:100dvh;margin:0 auto;padding:0 6%}.site-header{border-bottom:1px solid #dce5e9;justify-content:space-between;align-items:center;height:104px;display:flex}.brand{flex-shrink:0;align-items:center;gap:12px;display:flex}.brand>span:last-child{letter-spacing:3px;align-items:center;gap:14px;font-family:Songti SC,Noto Serif CJK SC,serif;font-size:25px;display:flex}.brand small{letter-spacing:1px;color:var(--muted);font-family:-apple-system,PingFang SC,sans-serif;font-size:12px;font-weight:400}.brand-mark{width:37px;height:37px;color:var(--accent);background:#d9e8e9;border-radius:12px;place-items:center;display:grid}.subtle{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:inline-flex}.entry-main{grid-template-columns:1.25fr 1fr;align-items:center;gap:80px;max-width:1090px;min-height:calc(100dvh - 193px);margin:0 auto;padding:65px 0;display:grid}.eyebrow{letter-spacing:2px;color:var(--accent);font-size:12px}.intro h1{letter-spacing:3px;margin:24px 0;font-family:Songti SC,Noto Serif CJK SC,serif;font-size:clamp(45px,5vw,68px);font-weight:500;line-height:1.3}.intro>p{color:#6d7f87;font-size:15px;line-height:2}.intro-detail{color:var(--muted);flex-direction:column;gap:14px;margin-top:44px;font-size:12px;display:flex}.seats{gap:6px;display:flex}.seats i{border:1px solid #a2b8bd;border-radius:50%;width:13px;height:13px;display:block}.seats i.occupied{background:#45868c;border-color:#45868c;box-shadow:inset 0 0 0 3px #f1f7f7}.entry-card{background:var(--paper);border:1px solid #fff;border-radius:18px;padding:38px;box-shadow:0 12px 48px #52677108}.card-icon{width:59px;height:59px;color:var(--accent);background:#e7eff0;border-radius:16px;place-items:center;margin-bottom:28px;display:grid}.entry-card h2{letter-spacing:.2px;margin:12px 0;font-size:24px;font-weight:600}.entry-card>p{color:var(--muted);margin-bottom:28px;font-size:14px;line-height:1.8}.entry-card form .primary{margin-top:20px}.card-note{border-top:1px solid var(--line);color:var(--muted);align-items:flex-start;gap:8px;margin-top:28px;padding-top:21px;font-size:11px;line-height:1.6;display:flex}.card-note svg{flex-shrink:0}.entry-footer{color:#8a989e;letter-spacing:.5px;border-top:1px solid #dce5e9;justify-content:space-between;align-items:center;height:89px;font-size:11px;display:flex}.error{background:#fcf0ef;border-radius:6px;margin:12px 0;padding:10px 12px;line-height:1.7;color:#ac4848!important;font-size:12px!important}.helper{color:var(--muted);font-size:12px;line-height:1.8}.waiting-card,.ended-card{text-align:center;max-width:480px;margin:12vh auto;padding:35px}.waiting-card p,.ended-card p{color:var(--muted);font-size:14px;line-height:1.9}.ended-card h1{font-family:Songti SC,serif;font-size:42px;font-weight:500;line-height:1.5}.ended-card .card-icon{margin:0 auto}.ended-card .primary{margin-top:20px}.waiting-orbit{width:96px;height:96px;color:var(--accent);background:#e4eef0;border:1px dashed #a4c5ca;border-radius:50%;place-items:center;margin:0 auto 28px;display:grid}.waiting-card .quiet{margin:30px auto;display:flex}.quiet{color:var(--accent);background:0 0;border-radius:7px;padding:10px 14px;font-size:13px}.quiet:hover{background:#e8f0f0}.chat-shell{background:var(--paper);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:40px;height:78px;padding:0 32px;display:flex}.chat-header .brand small{display:none}.room-heading{color:#617881;align-items:center;gap:8px;font-size:13px;display:flex}.live-dot{background:#51857c;border-radius:50%;width:6px;height:6px}.room-code{color:#a0adb3;margin-left:6px;font-family:ui-monospace,monospace;font-size:11px}.header-actions{align-items:center;gap:18px;margin-left:auto;display:flex}.invite-button{color:var(--accent);background:#e7f0ef;border-radius:7px;padding:10px 13px;font-size:12px}.icon-button{color:#74878f;background:0 0;border-radius:7px;min-width:34px;min-height:34px;padding:8px;position:relative}.icon-button:hover:not(:disabled){color:var(--accent);background:#e8eff1}.chat-layout{flex:1;width:100%;max-width:1440px;min-height:0;margin:0 auto;display:flex}.conversation{flex-direction:column;flex:1;min-width:0;display:flex}.privacy-line{color:#8a9aa0;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:17px;font-size:11px;display:flex}.messages{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d2dddf transparent;flex:1;padding:12px 42px 24px;overflow:auto}.empty-chat{height:100%;min-height:220px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:25px;display:flex}.empty-symbol{color:#8da9ae;background:#eff4f5;border-radius:24px;place-items:center;width:80px;height:80px;margin-bottom:14px;display:grid}.empty-chat h2{color:#5a747e;margin:12px 0;font-family:Songti SC,serif;font-size:24px;font-weight:500}.empty-chat p{font-size:12px;line-height:1.9}.empty-chat .quiet{margin-top:5px}.message{flex-direction:column;align-items:flex-start;max-width:100%;margin:19px 0;display:flex}.message.mine{align-items:flex-end}.message-meta{color:#98a5aa;align-items:center;gap:9px;margin:0 2px 7px;font-size:11px;display:flex}.message-meta strong{color:#71828a;font-weight:500}.mine .message-meta{flex-direction:row-reverse}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;background:#ecf1f3;border-radius:3px 13px 13px;max-width:min(80%,650px);padding:12px 16px;font-size:14px;line-height:1.75}.mine .bubble{color:#24494c;background:#dceceb;border-radius:13px 3px 13px 13px}.image-message{border:1px solid var(--line);background:0 0;border-radius:9px;max-width:65%;padding:4px}.image-message img{object-fit:contain;border-radius:5px;max-width:100%;max-height:350px;display:block}.composer-area{flex-shrink:0;padding:0 32px 18px}.composer{background:#fff;border:1px solid #dae4e7;border-radius:12px;position:relative;box-shadow:0 2px 6px #1b464904}.composer:focus-within{border-color:#a9c5c8}.composer textarea{resize:none;background:0 0;border:0;outline:none;width:100%;min-height:75px;max-height:150px;padding:16px 18px 3px;font-size:14px;line-height:1.6;display:block}.composer textarea::placeholder{color:#a4b0b5}.composer-toolbar{justify-content:space-between;align-items:center;padding:5px 12px 11px;display:flex}.tools{align-items:center;gap:2px;display:flex}.image-limit{color:#a2afb5;margin-left:8px;font-size:10px}.send-button{background:var(--accent);color:#fff;border-radius:7px;min-width:78px;padding:9px 14px;font-size:12px}.composer-foot{color:#9caab0;justify-content:space-between;margin:9px 3px 0;font-size:10px;display:flex}.composer-notice{color:#6f868d;text-align:center;margin-bottom:10px;font-size:11px}.file-input{display:none}.emoji-picker{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:repeat(6,1fr);padding:10px;display:grid;position:absolute;bottom:50px;left:18px;box-shadow:0 8px 24px #28393e12}.emoji-picker button{background:0 0;border-radius:5px;padding:7px;font-size:23px}.emoji-picker button:hover{background:#edf3f4}.room-sidebar{border-left:1px solid var(--line);background:#f6f9fa;flex-direction:column;flex-shrink:0;width:294px;padding:26px 25px;display:flex;overflow:auto}.sidebar-title{justify-content:space-between;align-items:center;display:flex}.sidebar-title h2{margin:0 0 19px;font-size:14px;font-weight:600}.sidebar-title h2 span{color:#8a9a9f;margin-left:7px;font-family:ui-monospace,monospace;font-size:11px;font-weight:400}.room-sidebar .seats{gap:7px}.room-sidebar .seats i{width:12px;height:12px}.members{margin:24px 0 8px;padding:0;list-style:none}.members li{align-items:center;gap:10px;min-width:0;margin:15px 0;display:flex}.avatar{color:#69808b;background:#e4ebef;border-radius:11px;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:13px;display:grid}.avatar.host{color:#4d7770;background:#dcece8}.members li>div{flex:1;min-width:0}.members strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;display:block;overflow:hidden}.members small{color:#8a9aa0;font-size:11px;font-weight:400}.member-status{color:#94a2a8;margin-top:4px;font-size:10px;display:block}.remove-member{opacity:.55}.members li:hover .remove-member{opacity:1}.requests{border-top:1px solid var(--line);margin-top:20px;padding-top:22px}.requests h3{margin:0 0 15px;font-size:12px;font-weight:500}.requests h3 span{color:#8a9a9f;margin-left:8px}.requests p{color:#96a4aa;font-size:11px;line-height:1.8}.request{background:#fff;border:1px solid #dce7e7;border-radius:8px;margin-top:10px;padding:12px}.request strong{overflow-wrap:anywhere;font-size:12px;font-weight:500}.request>div{justify-content:flex-end;gap:7px;margin-top:10px;display:flex}.mini{color:#70858b;background:#f0f4f5;border-radius:5px;padding:6px 12px;font-size:11px}.mini.accept{color:#236b70;background:#e2eeeb}.sidebar-bottom{color:#91a4aa;margin-top:auto;padding-top:40px}.sidebar-bottom>svg{color:#84a4a6}.sidebar-bottom p{color:#758c94;margin:14px 0;font-family:Songti SC,serif;font-size:20px;line-height:1.6}.sidebar-bottom small{font-size:10px;line-height:1.9}.end-button{color:#a2857c;background:0 0;border:1px solid #e2dedc;border-radius:7px;width:100%;margin-top:24px;padding:10px;font-size:11px;display:flex}.end-button:hover{background:#f8eeeb}.mobile-members{display:none}.connection-banner{color:#a37530;text-align:center;background:#fff1d9;padding:11px 15px;font-size:12px}.modal-backdrop{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#20333e55;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fbfcfd;border-radius:16px;width:100%;max-width:430px;padding:32px;position:relative;box-shadow:0 24px 90px #17343d33}.modal>svg{color:var(--accent)}.modal h2{margin:17px 0 12px;font-size:23px;font-weight:500}.modal p{color:var(--muted);font-size:13px;line-height:1.85}.modal-close{position:absolute;top:15px;right:15px}.invite-modal{text-align:center}.qr{border:1px solid var(--line);border-radius:12px;width:220px;height:220px;margin:23px auto;display:block}.invite-modal label{text-align:left;font-size:11px}.copy-field{border:1px solid var(--line);background:#fff;border-radius:7px;align-items:center;padding-right:5px;display:flex}.copy-field input{text-overflow:ellipsis;border:0;padding:12px;font-size:11px;overflow:hidden}.invite-modal small{color:var(--muted);margin-top:15px;font-size:10px;display:block}.modal-actions{justify-content:flex-end;gap:15px;margin-top:25px;display:flex}.danger{color:#fff;background:#ad665c;border-radius:7px;padding:10px 18px;font-size:13px}.image-backdrop{cursor:zoom-out;background:#12232bea}.image-backdrop>img{object-fit:contain;max-width:95vw;max-height:88dvh}.zoom-close{color:#fff;position:absolute;top:20px;right:25px}.badge{color:#fff;background:#236b70;border-radius:20px;min-width:14px;padding:2px;font-size:9px;font-style:normal;position:absolute;top:0;right:0}@media (width>=1600px){.chat-layout{border-left:1px solid var(--line);border-right:1px solid var(--line)}}@media (width<=900px){.entry-main{grid-template-columns:1fr 1fr;gap:35px}.entry-card{padding:28px}.intro h1{font-size:46px}.room-sidebar{width:250px;padding:24px 20px}.chat-header{gap:25px}.messages{padding:10px 25px 24px}.composer-area{padding:0 22px 15px}}@media (width<=680px){.entry-shell{padding:0 23px}.site-header{height:78px}.brand>span:last-child{gap:10px;font-size:23px}.brand small{letter-spacing:0;font-size:10px}.entry-main{flex-direction:column;align-items:stretch;gap:32px;min-height:auto;padding:36px 0 42px;display:flex}.intro .eyebrow{font-size:11px}.intro h1{margin:16px 0;font-size:40px;line-height:1.35}.intro>p{margin:0;font-size:12px;line-height:1.9}.intro-detail{display:none}.entry-card{border-radius:13px;padding:25px}.card-icon{width:49px;height:49px;margin-bottom:20px}.entry-card h2{font-size:22px}.entry-card>p{font-size:12px}.entry-footer{gap:20px;height:65px;font-size:10px}.entry-footer span:last-child{display:none}.chat-header{gap:20px;height:64px;padding:0 16px}.chat-header .brand-mark{border-radius:9px;width:29px;height:29px}.chat-header .brand{gap:7px}.chat-header .brand>span:last-child{font-size:21px}.room-heading{gap:5px;font-size:10px}.room-code{display:none}.header-actions{gap:4px}.invite-button{gap:4px;padding:8px;font-size:11px}.invite-button span{display:none}.mobile-members{display:inline-flex}.room-sidebar{display:none}.room-sidebar.visible{z-index:5;width:min(310px,90vw);display:flex;position:fixed;top:64px;bottom:0;right:0;box-shadow:-12px 10px 35px #25485516}.privacy-line{padding:12px;font-size:10px}.messages{padding:5px 16px 15px}.message{margin:16px 0}.bubble{max-width:88%;padding:10px 13px;font-size:14px}.image-message{max-width:80%}.composer-area{padding:0 12px max(10px, env(safe-area-inset-bottom))}.composer textarea{min-height:61px;padding:13px 13px 0;font-size:16px}.composer-toolbar{padding:4px 8px 8px}.composer-foot{font-size:9px}.composer-foot span:first-child{visibility:hidden}.image-limit{margin-left:4px;font-size:9px}.empty-chat{min-height:180px;padding:15px}.empty-chat h2{font-size:22px}.empty-chat p{font-size:11px}.empty-symbol{border-radius:20px;width:62px;height:62px}.modal{padding:26px}.modal h2{font-size:21px}.waiting-card,.ended-card{margin:11vh auto;padding:25px 0}.ended-card h1{font-size:35px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
