:root{--ink:#202622;--muted:#657069;--paper:#fffdfa;--line:#d8ded9;--dark:#1e2925;--accent:#d98738;--work:#e4f0ea;--private:#eee9f6;--danger:#a13b35}*{box-sizing:border-box}body{margin:0;background:#edf0ed;color:var(--ink);font:16px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif}.app{max-width:720px;min-height:100dvh;margin:auto;background:var(--paper);box-shadow:0 0 40px #1e29251a}.panel{padding:32px 22px}.brand{display:flex;align-items:center;gap:12px}.brand>span{display:grid;place-items:center;width:44px;height:44px;background:var(--dark);color:white;font-weight:800;border-radius:8px}.brand small,.chat-head small{display:block;color:var(--muted)}h1{margin-top:40px}label{display:grid;gap:6px;margin:16px 0;font-weight:650}input,textarea,button{font:inherit}input,textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:white}button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:white;cursor:pointer}.primary{background:var(--dark);color:white;border-color:var(--dark)}.login .primary{width:100%}.error{color:var(--danger)}header{padding:14px 16px;border-bottom:1px solid var(--line)}.filters{display:flex;gap:8px;padding:12px 16px;overflow:auto}.filters button{padding:0 18px}.filters .active{background:var(--dark);color:white}.new-chat,.push-button{margin:0 16px 10px;width:calc(100% - 32px)}.new-chat{border-style:dashed}.push-button{background:#fff3d9;border-color:#e7c98a;color:#634416;font-weight:700}.push-status{margin:0 16px 10px;padding:9px 12px;border-radius:8px;background:var(--work);color:#315844;font-size:13px}.conversation{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:12px 16px;border:0;border-top:1px solid var(--line);border-radius:0;text-align:left}.conversation .icon{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:var(--work)}.conversation.private .icon{background:var(--private)}.conversation-body{display:block;min-width:0}.conversation-top{display:flex;align-items:baseline;gap:8px}.conversation-top b{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-top time{flex:0 0 auto;color:var(--muted);font-size:12px;font-weight:400}.conversation-preview{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:13px;font-weight:400;line-height:1.3;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.conversation-side{display:grid;place-items:center}.count{display:grid;place-items:center;min-width:24px;height:24px;padding:2px 7px;background:var(--accent);color:white;border-radius:999px}.chat{display:grid;grid-template-rows:auto auto 1fr auto;height:100dvh}.chat-head{display:flex;gap:12px;align-items:center}.chat-head button{width:44px;font-size:22px}.audience{padding:8px 16px;background:#fff3d9;color:#634416;font-size:13px}.messages{padding:16px;overflow:auto;display:flex;flex-direction:column;gap:10px}.message{max-width:82%;padding:10px 12px;border:1px solid var(--line);border-radius:12px 12px 12px 3px;background:white}.message.mine{align-self:flex-end;background:var(--work);border-radius:12px 12px 3px 12px}.message b,.message time{display:block;font-size:12px}.message time{color:var(--muted);margin-top:4px}.composer{display:grid;grid-template-columns:1fr 48px;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.composer textarea{resize:none}.directory{display:grid;gap:8px;max-height:55vh;overflow:auto}.directory button{text-align:left;padding:8px 12px}dialog{width:min(92vw,420px);border:1px solid var(--line);border-radius:12px}dialog::backdrop{background:#1118}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.message-meta{display:flex;justify-content:flex-end;align-items:center;gap:7px;margin-top:4px}.message-meta time{margin-top:0}.receipt{color:#47735d;font-size:11px;white-space:nowrap}
.chat-head>button:first-child{width:44px;font-size:22px}.chat-title-button{display:block!important;width:auto!important;min-width:0;flex:1;border:0;background:transparent;text-align:left;padding:3px 0}.chat-title-button b,.chat-title-button small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-members{display:grid;gap:8px;margin:16px 0}.group-member{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 12px;background:#f5f7f5;border:1px solid var(--line);border-radius:8px}.group-member small{display:block;color:var(--muted)}.group-member button{padding:0 12px;white-space:nowrap}
.invite-kicker{display:inline-block;margin:38px 0 0;padding:6px 10px;border-radius:999px;background:var(--work);color:#315844;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.security-note{margin-top:18px;padding:12px;border-left:3px solid var(--accent);background:#fff3d9;color:#634416;font-size:13px}
.team-dialog select{font:inherit;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:white}.team-dialog{width:min(94vw,620px);max-height:90dvh;overflow:auto;padding:20px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.dialog-head h2,.dialog-head p{margin:0}.dialog-head>button{width:44px;font-size:24px}.team-dialog form{padding:14px 0;border-bottom:1px solid var(--line)}.team-dialog h3{margin:22px 0 8px}.team-list{display:grid;gap:8px}.team-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f7f8f7}.team-row small{display:block;color:var(--muted)}.team-row button{padding:0 12px}.danger-button{color:var(--danger);border-color:#ddb7b3}.invite-result{margin:14px 0;padding:12px;border-radius:8px;background:#fff3d9}.invite-result input{margin:8px 0;font-size:13px}.invite-result button{width:100%}
.people-dialog{width:min(94vw,520px);max-height:90dvh;overflow:auto;padding:20px}.people-dialog form{padding:12px 0}.people-dialog h3{margin:20px 0 8px}.phone-result{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid #b9d5c5;border-radius:10px;background:var(--work)}.phone-result button{padding:0 18px}.privacy-section{margin:18px -4px 0;padding:14px;border-radius:12px;background:#f4f6f4}.privacy-toggle{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:0}.privacy-toggle input{width:22px;height:22px;min-height:22px}.privacy-toggle small{display:block;color:var(--muted);font-weight:400}.privacy-section .team-row{background:white}#blockChatUser{width:100%;margin:8px 0}
.member-picker{display:grid;gap:8px;max-height:260px;overflow:auto}.member-choice{display:flex;align-items:center;gap:10px;margin:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:white}.member-choice input{width:20px;min-height:20px}.group-admin-tools{margin:18px 0;padding:14px;border-radius:12px;background:#f4f6f4}.group-admin-tools h3{margin:8px 0}.group-admin-tools select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;background:white;padding:8px}.group-admin-tools>button{width:100%}
.journal-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px}.journal-head .brand{min-width:0;flex:1;gap:9px}.journal-head .brand>span{width:38px;height:38px;flex:0 0 38px}.journal-head .brand>div{min-width:0}.journal-head .brand b,.journal-head .brand small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.icon-action,.header-more>summary{display:grid;place-items:center;width:42px;height:42px;min-height:42px;padding:0;border:1px solid var(--line);border-radius:8px;background:white;font-size:21px;line-height:1;box-shadow:0 2px 8px #1e29250a}.icon-action.group-action{font-size:17px}.icon-action:active,.header-more>summary:active{transform:translateY(1px);box-shadow:none}.icon-action.notify-action{background:#fff3d9;border-color:#e7c98a}.icon-action:disabled{opacity:.5;cursor:not-allowed}.icon-action span{pointer-events:none}.header-more{position:relative}.header-more>summary{list-style:none;cursor:pointer;font-size:25px}.header-more>summary::-webkit-details-marker{display:none}.header-menu{position:absolute;z-index:20;top:48px;right:0;min-width:170px;padding:6px;border:1px solid var(--line);border-radius:10px;background:white;box-shadow:0 12px 30px #1e292526}.header-menu button{width:100%;padding:0 12px;border:0;text-align:left;white-space:nowrap}.push-status{margin-top:10px}@media(max-width:390px){.journal-head{padding-inline:10px}.journal-head .brand>span{width:34px;height:34px;flex-basis:34px;font-size:14px}.header-actions{gap:4px}.icon-action,.header-more>summary{width:38px;height:40px;min-height:40px}.journal-head .brand small{font-size:12px}}
.message.mine:not(.deleted){cursor:pointer}.message.mine:not(.deleted):active{filter:brightness(.97)}.message.deleted{background:#f4f5f4;color:var(--muted);border-style:dashed}.deleted-message{font-style:italic}.edited{color:var(--muted);font-size:11px}.message-actions-dialog{width:min(92vw,440px);padding:20px}.message-actions-dialog form{margin:0}.message-actions-dialog textarea{resize:vertical}.message-action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.message-action-buttons button{width:100%}
