
:root{--blue:#17618c;--ink:#263748;--edge:#aac4d5;--scene:#b6e2f2;--status:#63bf30;font-family:Tahoma,"Segoe UI",Arial,sans-serif;font-size:14px;color:var(--ink);color-scheme:light}*{box-sizing:border-box}body{margin:0;background:#e4eff5}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #1588bf;outline-offset:2px}button{touch-action:manipulation}.app{max-width:480px;height:100dvh;min-height:400px;margin:auto;display:flex;flex-direction:column;background:#fff;overflow:hidden;position:relative;box-shadow:0 0 40px #53748a33}.titlebar{height:36px;flex-shrink:0;padding:0 12px;display:flex;align-items:center;gap:7px;background:linear-gradient(#eaf7ff,#c9e5f3);border-bottom:1px solid #b4cfdd;font-size:12px;color:#36536c}.titlebar .version{margin-left:auto;opacity:.65;font-size:10px}.buddy{width:28px;height:26px;display:inline-block;vertical-align:middle}.scene{position:relative;background:radial-gradient(ellipse at 85% 0%,#fff9,transparent 65%),linear-gradient(135deg,#c9e9f5,#95d0e9 55%,#bfe4f0);overflow:hidden;flex-shrink:0}.scene:before,.scene:after{content:"";position:absolute;border:1px solid #ffffff70;pointer-events:none;width:480px;height:105px;border-radius:50%;transform:rotate(-20deg);left:30px;top:40px;box-shadow:0 10px 0 #ffffff14,0 20px 0 #ffffff19,0 30px 0 #ffffff20}.scene:after{transform:rotate(15deg);left:-80px;top:75px}.scene>*{position:relative;z-index:1}.profile{padding:19px 17px 15px;display:flex;align-items:center;gap:14px;min-height:111px}.avatar{--status:#65bd37;width:59px;height:59px;padding:3px;border:1px solid color-mix(in srgb,var(--status),#476775 25%);border-radius:8px;background:linear-gradient(135deg,#fff,var(--status) 48%,#fff 90%);box-shadow:0 1px 3px #42677966,inset 0 0 0 1px #ffffffb0;position:relative;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.avatar>svg,.avatar>img{width:100%;height:100%;object-fit:cover;border-radius:4px;border:1px solid #fff;background:linear-gradient(#d3e7f3,#eef6fa)}.avatar:after{content:"";position:absolute;bottom:-3px;right:-3px;width:11px;height:11px;border:2px solid #fff;border-radius:3px;background:var(--status);box-shadow:0 1px 2px #0005}.avatar.away{--status:#e9a31a}.avatar.busy{--status:#d74636}.avatar.offline{--status:#a8b2ba}.avatar.busy:after{background:linear-gradient(transparent 40%,#fff 40%,#fff 60%,transparent 60%),#d74636}.avatar.away:after{background:conic-gradient(from 0deg,#fff 0deg 25deg,transparent 25deg 90deg,#fff 90deg 115deg,transparent 115deg),#e9a31a}.profile-info{min-width:0;flex:1}.profile-name{font-size:20px;color:#264d67;letter-spacing:-.5px;background:none;border:0;padding:0;text-align:left}.status-line{font-size:12px;color:#365d78;margin-top:4px;display:flex;align-items:center;gap:4px}.status-select{border:0;background:transparent;color:#365d78;max-width:150px;padding:3px 0}.personal{font-size:12px;color:#4b7189;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{border:0;background:transparent;padding:9px;border-radius:4px;min-width:38px;min-height:40px;color:#33678b;font-size:19px}.icon-btn:hover{background:#ffffff70}.tools{display:flex;padding:5px 9px;gap:3px;align-items:center;background:linear-gradient(#f8fcff,#e4eff7);border-bottom:1px solid #bed1df;flex-shrink:0}.tools .spacer{flex:1}.tools button{border:1px solid transparent;border-radius:3px;background:none;padding:7px 8px;color:#345a75;font-size:12px;min-height:34px}.tools button:hover{background:#e1f1fc;border-color:#abcada}.search{margin:12px 13px 8px;display:flex;border:1px solid #b9c6cf;box-shadow:inset 0 1px 2px #0000000a;border-radius:2px;padding:0 9px;align-items:center;gap:6px}.search input{border:0;background:none;width:100%;padding:10px 0;font-size:12px;outline:none}.search svg{width:15px;color:#638297}.contacts{overflow:auto;flex:1;padding:4px 9px 20px}.group-title{font-size:12px;color:#627c90;padding:13px 4px 7px;width:100%;border:0;background:none;text-align:left}.group-title:before{content:'▾';margin-right:7px}.contact{width:100%;display:flex;align-items:center;gap:12px;border:1px solid transparent;background:none;border-radius:3px;padding:9px 8px;text-align:left;min-height:76px}.contact:hover{border-color:#c4deec;background:linear-gradient(#f4faff,#e9f4fc)}.contact .avatar{width:46px;height:46px;border-radius:6px}.contact .name{font-size:14px;color:#263f52}.contact .sub{font-size:11px;color:#7b8e9c;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:265px}.contact .meta{flex:1;min-width:0}.contact .state{color:#8293a1;font-size:10px;margin-left:5px}.badge{border-radius:9px;padding:2px 5px;background:#2378a9;color:#fff;font-size:10px}.footer{padding:11px 15px;background:linear-gradient(#f5fbff,#e8f2f8);border-top:1px solid #d3e3ed;font-size:11px;color:#6d8798;display:flex;align-items:center;gap:8px;flex-shrink:0}.demo{font-size:10px;background:#fff9de;color:#7c642d;padding:6px 12px;border-bottom:1px solid #e7dba5;flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.demo button{font-size:10px;border:0;background:none;text-decoration:underline;color:inherit;padding:0}.hidden{display:none!important}.chat-header{display:flex;align-items:center;gap:10px;padding:15px 13px;min-height:93px}.chat-header .avatar{width:53px;height:53px}.chat-header h2{font-size:18px;font-weight:400;margin:0 0 5px;color:#204e6d}.chat-header p{font-size:11px;margin:0;color:#507890}.chat-main{display:flex;flex:1;min-height:0}.transcript{flex:1;overflow:auto;padding:14px 10px 20px 14px;background:#fff;min-width:0;scroll-behavior:smooth}.message{margin:0 0 14px;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.speaker{font-size:11px;color:#7c8a94;margin-bottom:3px}.message.me .body{color:#225b8e}.message .body{white-space:pre-wrap}.message img{max-width:100%;border-radius:3px}.system{color:#8b8b8b;font-size:11px;line-height:1.6;margin:15px 0;font-style:italic}.rail{width:76px;background:linear-gradient(90deg,#edf5fa,#e4eff7);border-left:1px solid #ccdde8;padding:15px 9px;display:flex;flex-direction:column;align-items:center;gap:7px}.rail .avatar{width:56px;height:56px}.rail .rail-bottom{margin-top:auto;text-align:center}.rail small{font-size:9px;color:#658296;display:block;margin-top:6px}.typing{min-height:23px;font-size:10px;color:#7b94a5;padding:5px 13px;border-top:1px solid #e8eff3}.composer{margin:0 10px 10px;border:1px solid #9fbaca;border-radius:3px;background:#fff;box-shadow:0 1px 3px #0001;flex-shrink:0}.compose-tools{display:flex;align-items:center;padding:2px 5px;border-bottom:1px solid #d5e2ea;background:linear-gradient(#fff,#edf4f9)}.compose-tools button{border:1px solid transparent;background:none;padding:7px;min-height:37px;min-width:37px;font-size:19px;color:#355b7b;border-radius:3px}.compose-tools button:hover{border-color:#a6ccdf;background:#e6f4fc}.compose-tools .letter{font-size:17px;font-family:Georgia,serif;text-decoration:underline;font-weight:bold}.compose-row{display:flex;align-items:stretch;padding:7px;gap:7px}.compose-row textarea{border:0;resize:none;min-height:65px;width:100%;outline:none;font-size:13px;line-height:1.5;color:#225b8e;background:#fff}.send{border:1px solid #9bb3c5;border-radius:3px;background:linear-gradient(#fff,#e2edf5);color:#3a617d;font-size:12px;min-width:63px;padding:7px}.send:active{background:#d1e8f6}.chat-status{padding:0 12px 8px;color:#889ba9;font-size:10px;flex-shrink:0}.sheet-back{position:absolute;inset:0;background:#243d5c60;z-index:20;display:flex;align-items:flex-end}.sheet{background:#f7fbfe;border-radius:10px 10px 0 0;width:100%;padding:20px;box-shadow:0 -6px 30px #18375433;max-height:85%;overflow:auto;border:1px solid #b7d0df}.sheet h3{font-weight:400;color:#225c80;margin:0 0 15px;font-size:19px}.sheet label{display:block;font-size:12px;color:#526f83;margin:12px 0 5px}.sheet input,.sheet select{width:100%;padding:11px;border:1px solid #aac1d2;border-radius:3px;background:#fff;color:#263f52}.sheet p{font-size:12px;line-height:1.6;color:#698292}.button{border:1px solid #8baac0;border-radius:3px;background:linear-gradient(#fff,#dcecf7);padding:10px 16px;color:#315f7e;min-height:42px}.button.primary{background:linear-gradient(#8acbfa,#3a93cb);color:#fff;border-color:#3281b5;text-shadow:0 1px #287db3}.button:disabled{opacity:.6;cursor:wait}.sheet-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.emoji-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.emoji-grid button{border:1px solid #d1e1ea;background:white;border-radius:4px;padding:10px 0;font-size:25px}.wink-card{display:flex;gap:15px;align-items:center;padding:12px;border:1px solid #bdd4e2;background:#fff;border-radius:4px;width:100%;margin:10px 0;text-align:left}.wink-card svg{width:56px;height:56px}.wink-card small{display:block;font-size:11px;color:#8194a1;margin-top:4px}.wink-stage{position:absolute;inset:0;pointer-events:none;z-index:12;display:flex;align-items:center;justify-content:center;overflow:hidden}.wink-figure{width:230px;height:230px;filter:drop-shadow(0 12px 8px #28536f55);animation:winkEntry 2.8s ease both}.wink-figure.wave{animation:winkWave 2.8s ease both}.wink-figure.heart{animation:winkHeart 2.8s ease both}.shake{animation:nudge .65s linear}.toast{position:absolute;bottom:18px;left:14px;right:14px;z-index:40;background:linear-gradient(#f7fcff,#d7eaf7);border:1px solid #93b8d1;border-radius:4px;padding:13px 15px;box-shadow:0 4px 15px #27516c40;font-size:12px;color:#2d5875}.empty{font-size:12px;color:#758c9e;padding:22px;line-height:1.6}.auth{flex:1;overflow:auto;background:radial-gradient(ellipse at top,#fff,#d8eef9);padding:35px 30px;display:flex;flex-direction:column;align-items:center}.auth .buddy{width:78px;height:65px}.auth h1{font-size:26px;font-weight:300;color:#416b89;letter-spacing:-1px;margin:18px 0 7px}.auth h1 b{font-weight:600}.auth .tagline{font-size:12px;color:#6c8c9f;margin-bottom:28px}.auth form{width:100%;max-width:310px}.auth label{display:block;font-size:12px;color:#5c7c91;margin-bottom:7px}.auth input{width:100%;border:1px solid #98b7cd;border-radius:3px;padding:12px;margin-bottom:15px;background:#fffffff0}.auth .button{width:100%;margin-bottom:12px}.auth .note{font-size:11px;color:#6e8ca1;line-height:1.6;text-align:center;margin-top:13px}.auth .link{border:0;background:none;color:#266992;text-decoration:underline;padding:10px;font-size:12px}.auth .config{margin-top:auto;padding-top:22px}.error{color:#ae3e2c;font-size:12px;line-height:1.5;margin:8px 0}.connecting{font-size:10px;color:#7990a1}.theme-mint{--scene:#c4e7d4}.theme-mint .scene{background:radial-gradient(ellipse at 85% 0%,#fff9,transparent 65%),linear-gradient(135deg,#deedc7,#a2d8bf,#c5e7e4)}.theme-lilac .scene{background:radial-gradient(ellipse at 85% 0%,#fff9,transparent 65%),linear-gradient(135deg,#ede2f7,#c3b4e4,#d8d5f7)}@keyframes nudge{0%,100%{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-9px,3px)}20%,40%,60%,80%{transform:translate(9px,-3px)}}@keyframes winkEntry{0%{transform:translateY(400px) scale(.2) rotate(-30deg);opacity:0}20%{transform:translateY(0) scale(1.1);opacity:1}30%,55%{transform:scale(1) rotate(0)}40%,65%{transform:scale(1.05) rotate(8deg)}85%{opacity:1;transform:scale(1)}100%{transform:translateY(-400px) scale(.2);opacity:0}}@keyframes winkWave{0%{transform:translateX(-400px) rotate(-30deg)}25%,75%{transform:translateX(0) rotate(8deg)}40%,65%{transform:rotate(-8deg)}100%{transform:translateX(400px)}}@keyframes winkHeart{0%,100%{opacity:0;transform:scale(.1)}20%,40%,60%,80%{opacity:1;transform:scale(1.2)}30%,50%,70%{opacity:1;transform:scale(1)}}@media(min-width:600px){body{padding:24px}.app{height:calc(100dvh - 48px);border:1px solid #96b8d0;border-radius:7px}}@media(prefers-reduced-motion:reduce){.shake{animation:none}.wink-figure{animation-duration:.5s!important}.transcript{scroll-behavior:auto}}
.auth .activation{border:1px solid #bfd9e8;border-radius:4px;background:#f7fbff;padding:11px;font-size:11px;line-height:1.6;margin:0 0 17px;color:#587e97}.auth .button:disabled{background:linear-gradient(#e7f0f6,#cfdeea);color:#698399;cursor:default;border-color:#b7cbd9}.auth .country{font-size:11px;margin:-5px 0 18px;color:#64869e}.emote{display:inline-block;width:19px;height:19px;background-image:url('original/emoticons.png');background-repeat:no-repeat;vertical-align:middle}.emoji-grid .emote{transform:scale(1.5);margin:6px}.original-winks{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.original-wink{padding:12px 4px;border:1px solid #bfd5e5;border-radius:4px;background:white;font-size:10px;color:#54758c;min-height:85px}.original-wink img{width:50px;height:50px;display:block;margin:auto auto 8px}.original-stage{position:absolute;inset:0;z-index:30;background:#ffffffb0;display:flex;flex-direction:column;align-items:center;justify-content:center}.original-stage .ruffle-frame{width:100%;height:min(75dvh,640px)}.original-stage ruffle-player{width:100%;height:100%}.original-stage button{position:absolute;right:12px;top:12px;z-index:5}.media-message audio,.media-message video{max-width:100%;width:100%}.media-message a{color:#23698f}.recording{background:#fff2ed!important;color:#a93923!important}.read-state{font-size:9px;color:#6e9baf;margin-top:3px}.avatar-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}.avatar-picker button{padding:3px;background:white;border:1px solid #bfd6e4;border-radius:4px}.avatar-picker img{width:100%;height:44px;object-fit:cover}.sheet input[type=file]{font-size:11px}.call-panel{position:absolute;inset:36px 0 0;z-index:25;background:linear-gradient(#d4ebf7,#eff7fc);display:flex;flex-direction:column;align-items:center;padding:28px 18px;text-align:center}.call-panel h2{font-weight:400;color:#295e81}.call-panel video{max-height:50%;width:100%;background:#233949;border-radius:5px;margin:10px 0}.call-panel #localVideo{position:absolute;right:15px;top:90px;width:88px;height:120px;object-fit:cover;border:2px solid white}.call-panel .call-buttons{margin-top:auto;display:flex;gap:12px}.call-panel .end-call{background:linear-gradient(#ec877c,#c14236);color:white;border-color:#b64034}.unavailable{color:#7c8f9d;font-size:12px}.group-name{color:#557e95}.message .body{overflow-wrap:anywhere}
.compose-tools button{min-width:32px;padding:6px}.auth .buddy{object-fit:contain}.buddy{object-fit:contain}

@font-face{font-family:AccountRoboto;src:url('fonts/Roboto.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
.auth.account-auth{padding:0;display:flex;flex-direction:column;overflow-y:auto;background:radial-gradient(ellipse at 50% 20%,#fff 0%,#f0f9fd 50%,#dceff8 100%);flex:1;min-height:0;text-align:center}
.account-content{padding:30px 28px 22px;width:100%;margin:auto 0}
.account-auth .buddy{width:76px;height:68px;margin:0 auto 14px}
.account-auth h1{margin:0;font-size:27px;font-weight:300;letter-spacing:-1px;color:#487087;white-space:nowrap}
.account-auth h1 b{font-weight:700}
.account-auth .tagline{font-size:13px;margin:10px 0 22px;color:#7b959e}
.account-title{font-size:17px;font-weight:400;color:#47728b;margin:0 0 15px}
.account-auth form{text-align:left;max-width:none;width:100%;margin:0}
.account-auth label{font-size:13px;color:#587c91;display:block;margin:12px 0 6px}
.account-auth input{width:100%;border:1px solid #9ebbcf;border-radius:3px;min-height:43px;background:#fff;padding:10px 12px;font-size:15px;color:#263748;box-shadow:inset 0 1px 2px #63829d13}
.account-auth .primary{width:100%;min-height:44px;font-size:15px;margin-top:12px}
.account-notice{color:#447044;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.account-auth .error:empty,.account-notice:empty{display:none}
.account-auth .error{margin-top:12px;font-size:12px;line-height:1.5}
.account-explanation{line-height:1.6;color:#587c91;font-size:14px}
.account-divider{display:flex;align-items:center;gap:12px;font-size:11px;color:#78909c;margin:14px 0}
.account-divider:before,.account-divider:after{content:'';height:1px;background:#cbdce5;flex:1}
.google-button{height:44px;width:100%;border:1px solid #747775;border-radius:4px;background:#fff;color:#1f1f1f;display:flex;align-items:center;padding:0 12px;font-family:AccountRoboto,Roboto,Arial,sans-serif;font-size:14px;font-weight:500}
.google-button img{width:20px;height:20px;object-fit:contain;flex:none}
.google-button span{flex:1;padding-right:20px}
.google-button:hover{background:#f6f9fc}.google-button:disabled{opacity:.6}
.account-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px 18px;margin-top:16px}
.account-auth .link{font-size:13px;padding:6px 0;background:none;border:0;color:#356e8b;text-decoration:underline;min-height:30px;display:inline-block}
.account-auth .account-small{font-size:11px;color:#6b8a9c}.account-links .account-small{width:100%}
.account-copyright{width:100%;padding:15px 7px 17px;margin-top:auto;background:#ffffffdd;color:#8b9499;font-family:AccountRoboto,Roboto,Arial,sans-serif;font-size:11.5px;font-weight:300;line-height:1.65;flex-shrink:0;text-align:center;letter-spacing:0}
.account-copyright strong{font-weight:700;color:#7d888e}
@media(max-width:360px){.account-content{padding:22px 20px 18px}.account-auth h1{font-size:25px}.account-copyright{font-size:10.5px}}
@media(max-height:700px){.account-content{padding-top:18px}.account-auth .buddy{height:48px;width:55px;margin-bottom:8px}.account-auth .tagline{margin:7px 0 14px}.account-title{margin-bottom:8px}}
.contact-requests-bar{padding:9px 17px;background:#fff8d9;border-bottom:1px solid #e8db9e;flex-shrink:0}.contact-requests-bar button{font-size:12px;font-weight:bold;color:#446a80}.request-person{display:flex;gap:14px;align-items:center;padding:12px 0}.request-person span{font-size:12px;color:#58758a;overflow-wrap:anywhere}
