:root{--ink:#203b32;--dark:#193b32;--green:#bdebcf;--paper:#f6f7f3;--muted:#758079;--border:#dde3dc;--danger:#a63d3d;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--paper)}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #76bfa0;outline-offset:4px}input:focus,textarea:focus{outline:2px solid #76bfa0;outline-offset:1px}input{width:100%;height:54px;border:1px solid var(--border);border-radius:9px;padding:0 16px;background:#fff;color:var(--ink)}input::placeholder,textarea::placeholder{color:#8b958e}label{display:block;font-weight:600;font-size:13px;margin:22px 0 9px}button{border:0}h1,h2,h3,p{margin-top:0}p{line-height:1.65}[hidden]{display:none!important}.entry{min-height:100svh;display:grid;grid-template-columns:46% 54%;padding:22px;gap:22px}.intro{position:relative;background:var(--dark);border-radius:19px;color:#f3f8f2;padding:38px 42px;overflow:hidden;display:flex;flex-direction:column;min-height:720px}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-size:25px;font-weight:650;letter-spacing:-1px}.brand-dot{color:var(--green)}.intro-body{margin:auto 0;position:relative;padding:62px 0 44px}.eyebrow,.overline{font-size:10px;font-weight:700;letter-spacing:2.3px;display:block}.eyebrow{color:var(--green);margin-bottom:27px}.intro h1{font-size:clamp(44px,4.6vw,70px);font-weight:450;line-height:1.07;letter-spacing:-3.4px;margin-bottom:28px}.intro h1 em{font-style:normal;color:var(--green)}.intro p{font-size:15px;color:#adc2b6;line-height:1.8}.intro-footer{font-size:11px;color:#b4c9bc;display:flex;gap:9px;align-items:center}.small-lock{font-size:20px}.conversation-art{position:absolute;right:-22px;bottom:4px;width:210px;height:124px;border:1px solid #658071;border-radius:18px 18px 3px 18px;transform:rotate(-7deg);background:#214a3d80;opacity:.5}.art-dot{display:block;width:20px;height:20px;border:1px solid #a3d3b5;border-radius:50%;margin:18px}.art-line{height:4px;background:#688a77;position:absolute;left:52px;border-radius:5px}.art-line.one{top:23px;width:98px}.art-line.two{top:38px;width:73px}.art-line.three{top:70px;left:22px;width:155px}.art-time{position:absolute;font-size:10px;letter-spacing:1px;right:20px;bottom:16px;color:#d5ecd9}.entry-form{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 45px 45px}.version{position:absolute;top:22px;right:22px;font-size:9px;letter-spacing:1.4px;color:#858d83;border:1px solid #dce2d8;padding:8px 10px;border-radius:30px}.login-wrap{width:100%;max-width:355px;margin:auto 0}.overline{color:#6f8777;margin-bottom:16px}.login-wrap h2{font-size:32px;letter-spacing:-1.1px;font-weight:550;margin-bottom:12px}.muted{color:var(--muted);font-size:14px}.login-wrap form{margin-top:33px}.password-field{position:relative}.password-field input{padding-right:78px}.password-field button{position:absolute;right:12px;top:16px;font-size:11px}.text-button{padding:0;background:none;color:#6e7d72;font-size:12px}.primary{width:100%;display:flex;justify-content:space-between;align-items:center;min-height:53px;border-radius:9px;background:var(--dark);color:white;font-weight:550;font-size:14px;padding:14px 18px;margin-top:16px;transition:background .2s}.primary:hover{background:#285846}.primary span{font-size:21px}.error{font-size:12px;color:var(--danger);margin:10px 0;min-height:0}.error:empty{display:none}.entry-note{border-top:1px solid var(--border);margin-top:35px;padding-top:22px;display:flex;gap:12px;align-items:flex-start}.entry-note p{font-size:11px;color:#819084;margin:0}.entry-note strong{font-weight:550;color:#526958}.note-icon{font-size:23px;line-height:1.2;color:#809b87}.setup-open{display:block;text-decoration:underline;text-underline-offset:4px;margin:21px auto 0}.entry-bottom{display:flex;justify-content:space-between;width:100%;gap:20px;align-items:center;padding-top:68px}.entry-bottom span{font-size:8px;letter-spacing:1.4px;color:#8a9387}.entry-bottom button{font-size:10px}.chat{height:100svh;display:grid;grid-template-columns:270px minmax(0,1fr)}.sidebar{background:var(--dark);color:white;padding:30px 22px;display:flex;flex-direction:column}.sidebar .brand{font-size:23px;margin-bottom:62px}.sidebar-label{font-size:9px;letter-spacing:1.8px;color:#90ab9a;margin-bottom:19px;padding-left:10px}.contact{display:flex;align-items:center;gap:12px;padding:14px 11px;background:#315245;border:1px solid #496354;border-radius:11px}.avatar{width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;background:#e4eee3;color:#3c634b;font-size:15px;font-weight:650;text-transform:uppercase;border-radius:50%}.contact strong{font-size:13px;display:block;max-width:132px;overflow:hidden;text-overflow:ellipsis}.contact span:not(.contact-dot){display:block;font-size:10px;color:#b9cdbf;margin-top:5px}.contact-dot{width:5px;height:5px;border-radius:50%;background:var(--green);margin-left:auto}.sidebar-note{margin:auto 11px;color:#b9d0c0;padding:35px 0}.large-clock{font-size:34px;font-weight:300;color:#8fbb9b;display:block;margin-bottom:18px}.sidebar-note h3{font-size:23px;font-weight:400;line-height:1.3;letter-spacing:-.6px}.sidebar-note p{font-size:12px;color:#90ab9a;max-width:175px}.sidebar-bottom{margin-top:auto}.experimental{font-size:9px;color:#a9bbaa;display:block;margin:0 10px 18px}.side-button{display:flex;justify-content:space-between;width:100%;padding:13px 10px;font-size:11px;background:transparent;color:#c7d9ca;border-top:1px solid #335044}.side-button:hover{color:white;background:#234638}.conversation{min-width:0;display:flex;flex-direction:column;position:relative;background:#f7f8f4}.chat-header{height:91px;flex-shrink:0;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 42px;gap:14px}.header-person{display:flex;align-items:center;gap:13px;min-width:0}.header-person h1{font-size:15px;margin:0 0 5px;font-weight:650;max-width:250px;overflow:hidden;text-overflow:ellipsis}.header-person p{font-size:10px;color:#7d8c7e;margin:0}.pill{background:#eef3ec;border:1px solid #dce7d9;color:#57725c;padding:8px 13px;font-size:14px;border-radius:30px;display:flex;align-items:center;gap:6px;white-space:nowrap}.pill span{font-size:10px}.messages{padding:30px 48px 20px;overflow:auto;flex:1;display:flex;flex-direction:column;gap:15px;scrollbar-width:thin}.bubble-row{display:flex;flex-direction:column;align-items:flex-start}.bubble-row.mine{align-items:flex-end}.bubble{background:#fff;border:1px solid #e0e6dc;box-shadow:0 2px 3px #173d3303;border-radius:13px 13px 13px 3px;padding:13px 17px;max-width:min(78%,520px);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65}.mine .bubble{background:#dcecd8;border-color:#d0e1cc;border-radius:13px 13px 3px 13px}.message-meta{display:flex;gap:8px;color:#869283;font-size:9px;margin-top:7px;padding:0 4px}.message-meta .countdown{color:#6f8a6c}.empty-chat{position:absolute;inset:90px 15px 130px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.empty-symbol{width:88px;height:88px;border:1px solid #dce7d8;border-radius:50%;display:grid;place-items:center;margin-bottom:29px;background:#edf3e8}.empty-symbol img{opacity:.8}.empty-chat .overline{font-size:8px;letter-spacing:1.8px;margin-bottom:13px}.empty-chat h2{font-size:25px;font-weight:450;letter-spacing:-.7px;margin-bottom:12px}.empty-chat p{font-size:12px;color:#8b9786}.composer-area{padding:15px 40px 19px;flex-shrink:0;background:#f7f8f4}.composer{display:flex;gap:12px;align-items:flex-end;background:white;border:1px solid #dce4d7;border-radius:12px;padding:10px 11px 10px 17px}.composer textarea{resize:none;min-height:35px;max-height:130px;flex:1;border:0;outline:0;padding:8px 0;font-size:13px;background:transparent;color:var(--ink)}.composer button{width:37px;height:37px;flex-shrink:0;border-radius:9px;background:var(--dark);color:white;font-size:23px}.composer-note{text-align:center;font-size:9px;color:#8d9987;margin:12px 0 0}.composer-note span{margin:0 7px}.sync-notice{font-size:12px;padding:12px 20px;background:#f5ead6;color:#6f5631;text-align:center}.mobile-only{display:none}dialog{border:1px solid #e1e6dd;border-radius:17px;padding:30px;width:min(520px,calc(100% - 28px));max-height:90svh;color:var(--ink);box-shadow:0 25px 120px #10271c33}dialog::backdrop{background:#142c2266;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dialog-heading h2{font-size:25px;letter-spacing:-.7px;font-weight:550}.dialog-heading .overline{font-size:9px}.close-dialog{background:#f0f3ed;color:#59705c;border-radius:50%;width:29px;height:29px;flex-shrink:0;font-size:20px}fieldset{border:1px solid var(--border);border-radius:10px;padding:5px 17px 18px;margin:22px 0}legend{font-size:11px;font-weight:650;padding:0 6px}fieldset label{margin-top:12px;font-size:11px}fieldset input{height:44px;font-size:13px}.privacy-item{border-top:1px solid var(--border);padding-top:18px;margin-top:18px}.privacy-item strong{font-size:13px}.privacy-item p,dialog #safety-section p{font-size:12px;color:var(--muted);margin:8px 0 0}#safety-section{padding-top:20px;margin-top:20px;border-top:1px solid var(--border)}#safety-section strong{font-size:13px}#safety-code{display:block;line-height:1.8;font-size:13px;padding:15px;margin-top:12px;background:#edf3e8;border-radius:8px;overflow-wrap:anywhere}.secondary{border:1px solid var(--border);border-radius:8px;padding:11px 16px;background:white;color:var(--ink);margin-top:18px;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1500px){.entry{max-width:1600px;margin:auto}.intro{padding:48px 58px}.intro-body{padding:70px 0}.conversation-art{right:0;bottom:0}}@media(max-width:1000px){.entry{grid-template-columns:43% 57%;padding:16px;gap:10px}.intro{padding:30px 26px;min-height:670px}.intro h1{font-size:49px}.conversation-art{width:170px;right:-65px;bottom:8px}.entry-form{padding:60px 30px 25px}.entry-bottom{flex-direction:column;gap:12px;padding-top:45px}.chat{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding:27px 16px}.chat-header{padding:0 25px}.messages{padding:25px}.composer-area{padding:15px 22px}.contact strong{max-width:100px}}@media(max-width:640px){.entry{display:block;padding:0}.intro{min-height:0;padding:25px 26px 28px;border-radius:0 0 22px 22px}.intro .brand{font-size:22px}.intro .brand img{width:35px;height:35px}.intro-body{padding:31px 0 0}.eyebrow{font-size:8px;margin-bottom:16px}.intro h1{font-size:37px;line-height:1.12;letter-spacing:-1.7px;margin-bottom:0}.intro h1 br:first-of-type{display:none}.intro h1 em{display:block}.intro h1 br:last-of-type{display:none}.intro p,.intro-footer,.conversation-art{display:none}.entry-form{padding:33px 27px 24px;align-items:stretch}.version{position:static;align-self:flex-start;font-size:7px;letter-spacing:1px;margin-bottom:23px;padding:6px 9px}.login-wrap{max-width:none}.login-wrap .overline{display:none}.login-wrap h2{font-size:25px;margin-bottom:9px}.login-wrap .muted{font-size:13px}.desktop{display:none}.login-wrap form{margin-top:25px}label{margin-top:19px}.entry-note{margin-top:26px;padding-top:20px}.entry-bottom{padding-top:32px;flex-direction:row;align-items:center;gap:15px}.entry-bottom span{font-size:7px}.chat{display:block}.sidebar{display:none}.conversation{height:100svh}.chat-header{height:77px;padding:0 18px;gap:10px}.header-person{gap:10px}.header-person h1{max-width:130px;font-size:13px}.header-person .avatar{width:35px;height:35px}.pill{margin-left:auto;padding:7px 9px}.pill span{font-size:8px}.mobile-only{display:block}.messages{padding:24px 18px 16px;gap:14px}.bubble{max-width:88%;font-size:13px;padding:11px 14px}.composer-area{padding:10px 15px max(13px,env(safe-area-inset-bottom))}.composer-note{font-size:8px}.empty-chat h2{font-size:23px}.empty-chat{inset:77px 12px 120px}.empty-chat p{font-size:11px}dialog{padding:24px 21px}.dialog-heading h2{font-size:23px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Discreet Talk interface. */
.entry{display:flex;min-height:100svh;align-items:center;justify-content:center;padding:26px;background:#f7f8f5;gap:0}.entry-form{width:100%;max-width:380px;padding:30px 10px;display:block}.login-wrap{max-width:340px;margin:0 auto}.quiet-brand{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:42px}.quiet-brand h1{font-size:25px;font-weight:550;letter-spacing:-.8px;margin:0}.quiet-brand img{border-radius:13px}.login-wrap form{margin:0}.entry-bottom{justify-content:center;flex-direction:row;padding-top:32px}.entry-bottom button{font-size:17px;letter-spacing:3px;padding:8px}.primary{margin-top:25px;justify-content:center;gap:15px}.primary span{font-size:18px}.setup-open{font-size:11px}.brand{letter-spacing:-.5px}.sidebar .brand{font-size:23px}.contact{margin-top:0}.sidebar-bottom{margin-top:auto}.composer-area{padding-bottom:max(23px,env(safe-area-inset-bottom))}.empty-chat{inset:78px 15px 95px}.empty-chat p{font-size:12px;color:#9aa495}#mobile-privacy{font-size:17px;letter-spacing:2px;margin-left:auto;padding:12px}.security-details{margin-top:28px}details{font-size:12px;margin-top:20px}summary{cursor:pointer;color:#718072;padding:8px 0}#safety-section{border:0;padding:0;margin-top:12px}#safety-section .secondary{margin-top:0}.privacy-item{margin-top:8px;padding-top:12px}.chat-header{height:78px}.sidebar{background:#203b32}.entry-form .text-button{color:#65776b}@media(max-width:640px){.entry{padding:35px 28px}.entry-form{padding:12px 0;max-width:340px}.quiet-brand{margin-bottom:34px}.entry-bottom{padding-top:28px}.conversation{height:100svh}.composer-area{padding-bottom:max(16px,env(safe-area-inset-bottom))}.chat-header{height:72px}.empty-chat{inset:72px 15px 90px}}

.message-toast{position:fixed;top:max(18px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:20;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 32px);padding:15px 20px;background:#203b32;color:#fff;border:1px solid #587363;border-radius:30px;box-shadow:0 8px 30px #203b3230;font-size:14px;white-space:nowrap}.message-toast span:first-child{color:#bdebcf;font-size:10px}

/* Keep the conversation inside the visible viewport, including keyboard resize. */
.composer{border-radius:22px;align-items:flex-end}
.composer textarea{height:44px;max-height:none;overflow-y:hidden;scrollbar-width:thin}
#connection{display:flex;align-items:center;gap:6px}
#connection.is-online::before{content:"";display:inline-block;width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#27ae60}
.chat{height:100dvh;height:var(--app-height,100dvh);min-height:0;overflow:hidden}
.conversation{min-height:0;height:100%;overflow:hidden}
.messages{min-height:0;overscroll-behavior:contain;overflow-x:hidden}
.bubble-row{flex-shrink:0;min-width:0}
.composer textarea{min-width:0;font-size:16px;line-height:1.4}
.composer button,.close-dialog{min-width:44px;min-height:44px}
.message-meta{flex-wrap:wrap}
dialog{max-height:calc(var(--app-height,100dvh) - 24px);width:min(520px,calc(var(--app-width,100vw) - 28px));position:fixed;top:calc(var(--app-top,0px) + var(--app-height,100dvh)/2);left:calc(var(--app-left,0px) + var(--app-width,100vw)/2);margin:0;transform:translate(-50%,-50%);overflow:auto;overscroll-behavior:contain}
@media(max-width:900px){
  body:has(#chat:not([hidden])){overflow:hidden}
  .chat{position:fixed;top:var(--app-top,0px);left:var(--app-left,0px);width:var(--app-width,100%);display:block}
  .sidebar{display:none}.mobile-only{display:block}
  .chat-header{height:auto;min-height:60px;padding:calc(6px + env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) 6px max(12px,env(safe-area-inset-left));gap:6px}
  .header-person{flex:1;gap:8px}.header-person>div:last-child{min-width:0}
  .header-person h1{max-width:none;font-size:14px;overflow-wrap:anywhere;margin-bottom:2px}
  .header-person p{font-size:11px}.header-person .avatar{width:32px;height:32px}
  #mobile-privacy,#mobile-logout{min-width:44px;min-height:44px;margin-left:0}
  .messages{padding:14px max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left));gap:12px}
  .bubble{max-width:92%;padding:10px 12px;font-size:15px;line-height:1.5}
  .message-meta{font-size:10px}
  .composer-area{padding:6px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
  .composer{padding:6px;gap:6px;align-items:flex-end}.composer textarea{padding:8px 4px;min-height:44px}
  .empty-chat{inset:60px 12px 76px}
  dialog{padding:20px 16px}fieldset input{font-size:16px}
}

.composer .attach-button{background:transparent;color:var(--ink);font-size:27px}.attachment-draft{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;margin-bottom:6px;border:1px solid var(--border);border-radius:12px;background:#fff}#attachment-preview{display:flex;align-items:center;gap:12px;font-size:12px}#attachment-preview img{width:54px;height:54px;object-fit:cover;border-radius:7px}#remove-attachment{width:44px;height:44px;font-size:24px;background:transparent;color:var(--ink)}#send-status{font-size:12px;margin:4px 0}#send-status:empty{display:none}.bubble.has-media{width:min(92%,420px);padding:6px;overflow:hidden}.bubble.has-media>div:not(.media-view){padding:6px;white-space:pre-wrap}.media-view{width:100%;min-width:0}.media-view img,.media-view video{display:block;width:100%;max-height:min(48dvh,460px);object-fit:contain;border-radius:8px;background:#e9eee7}.media-open{display:grid;place-items:center;width:100%;min-height:130px;background:#eaf0e6;color:var(--ink);border-radius:8px;font-size:15px}.mine .media-open{background:#d4e7cf}

#device-screen .lock-caption{text-align:center}#device-screen .secondary{width:100%;margin-top:12px}

.avatar{overflow:hidden;flex-shrink:0}.avatar img{display:block;width:100%;height:100%;object-fit:cover}.profile-settings{display:flex;align-items:center;gap:14px;padding:8px 0 18px}.profile-settings>div:last-of-type{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px}.profile-settings strong{width:100%;font-size:14px}#own-avatar{width:56px;height:56px}.profile-settings button{min-height:44px}#avatar-preview{width:112px;height:112px;margin:8px auto}.avatar-actions{display:flex;gap:18px;align-items:center}#avatar-editor{text-align:center}#avatar-status:empty{display:none}

/* Keep touch scrolling, without persistent pinch/double-tap page zoom. */
html,body{touch-action:pan-x pan-y}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:900px){input,textarea{font-size:16px}}
