/* Jamoa 14 — distinct internal/private and external/TG surfaces. No web fonts. */
:root{--focus:#49b9ac;--ink:#101e24;--ink-2:#172830;--ink-3:#213840;--on-ink:#edf5f6;--on-ink-dim:#a3b8bf;--accent:#0f8f85;--accent-strong:#08796f;--r:14px}
html{color-scheme:dark light}body{overscroll-behavior:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button:disabled{cursor:not-allowed}button{touch-action:manipulation}.sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.app{height:100dvh}.sidebar{width:348px;flex-basis:348px}.side-head{flex-wrap:wrap;gap:.75rem;padding:1.05rem 1rem}.brand-name{letter-spacing:-.03em;font-size:1.15rem}.side-actions{gap:5px}.icon-btn{min-width:36px;height:36px}.chat-section-label{font-size:.64rem;letter-spacing:.14em;color:var(--on-ink-dim);padding:.8rem 1.1rem .25rem;font-weight:650}.conv-list{padding:.4rem .55rem}.conv-item{padding:.8rem .65rem;gap:.75rem;margin-bottom:3px}.conv-item.active{box-shadow:inset 3px 0 var(--accent)}.conv-sub{line-height:1.55}.conv-title{font-weight:650}.side-foot{padding:1rem}.chat-head{min-height:78px}.messages{padding:1.25rem 1.5rem}.bubble{border-radius:16px;box-shadow:0 2px 4px #00000006}.msg-body{line-height:1.55;overflow-wrap:anywhere}.msg-meta{gap:.45rem}.auth-card{border-radius:22px;max-width:430px;padding:2rem;box-shadow:0 22px 80px #0005}.auth-card h1{font-size:1.65rem;letter-spacing:-.03em}.auth-card .brand{margin-bottom:1.7rem}.auth-card input{min-height:46px}.auth-card label{text-transform:none;font-family:inherit;font-size:.84rem;letter-spacing:0}.btn-primary{min-height:46px;border-radius:11px}.auth{background:radial-gradient(ellipse at 15% 0,#234754 0,transparent 50%),radial-gradient(ellipse at 100% 90%,#19413c 0,transparent 55%),var(--ink)}.security-warning{font-size:.83rem;border:1px solid #dbb36980;color:#e9c88a;padding:.7rem 1rem;border-radius:12px;background:#4a3b1922}.ghost-cancel{border:0;background:transparent;color:var(--text-dim);font-size:.72rem;text-align:left;margin-top:.3rem;padding:.35rem 0;cursor:pointer}.uploading .btn{border:1px solid var(--line);border-radius:8px;padding:.35rem .7rem;margin-top:.5rem;cursor:pointer}.modal-card{border-radius:20px}.call-card{border-radius:24px}.modal{backdrop-filter:blur(8px)}
.tg-nav{margin:.7rem .7rem 0;padding:.85rem .8rem;display:flex;align-items:center;gap:.8rem;width:calc(100% - 1.4rem);background:linear-gradient(115deg,#244253,#1b3340);color:#eef7ff;border:1px solid #42607070;border-radius:15px;text-align:left;cursor:pointer}.tg-nav:hover,.tg-nav.active{background:#2b4b5b;border-color:#698a99}.tg-brand{display:grid;place-items:center;flex-shrink:0;width:43px;height:43px;background:#4d92b5;color:#fff;font-weight:800;font-size:1.03rem;border-radius:13px;letter-spacing:-.03em}.tg-nav strong{display:block;font-size:.93rem;font-weight:650}.tg-nav small{display:block;font-size:.74rem;margin-top:.2rem;color:#c0d4df}.tg-nav-arrow{margin-left:auto;font-size:1.3rem;color:#b6d4e4}.tg-panel{--tg-bg:#f3f6f8;--tg-card:#fff;--tg-fg:#1b303b;--tg-dim:#526975;--tg-border:#dce5e9;--tg-field:#f9fbfc;flex:1;display:flex;min-height:0;flex-direction:column;background:var(--tg-bg);color:var(--tg-fg)}body[data-theme="night"] .tg-panel{--tg-bg:#112029;--tg-card:#1a2d37;--tg-fg:#ecf3f6;--tg-dim:#abc0ca;--tg-border:#304650;--tg-field:#13242c}.tg-head{display:flex;align-items:center;gap:.8rem;padding:1rem 1.5rem;background:var(--tg-card);border-bottom:1px solid var(--tg-border);min-height:88px}.tg-heading{flex:1;min-width:0}.tg-heading h1{font-size:1.15rem;letter-spacing:-.025em;margin:0}.tg-heading p{font-size:.8rem;color:var(--tg-dim);margin:.25rem 0 0}.tg-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--tg-field);color:var(--tg-fg);border:1px solid var(--tg-border);border-radius:10px;padding:.65rem .85rem;min-height:41px;font-size:.83rem;font-weight:550;cursor:pointer;text-decoration:none;margin:0}.tg-button:hover{filter:brightness(1.08)}.tg-button.primary{background:#23799d;border-color:#23799d;color:#fff}.tg-button.danger{color:#df6d65;border-color:#a5565080}.tg-privacy{font-size:.79rem;line-height:1.55;padding:.8rem 1.5rem;background:#b7832414;color:#785712;border-bottom:1px solid #b7832430}body[data-theme="night"] .tg-privacy{color:#e3c68e;background:#dca64c0e}.tg-privacy strong{margin-right:.3rem}.tg-content{flex:1;overflow:auto;min-height:0;padding:1.2rem 1.5rem;scrollbar-gutter:stable}.tg-settings{background:var(--tg-card);border:1px solid var(--tg-border);border-radius:13px;margin-bottom:.8rem}.tg-settings summary{padding:.9rem 1rem;font-size:.84rem;cursor:pointer}.tg-settings summary span{float:right;font-size:.72rem;color:var(--tg-dim);margin-left:.5rem}.tg-settings summary .linked{color:#37a68b}.tg-link-body{padding:.1rem 1rem 1rem;border-top:1px solid var(--tg-border)}.tg-help{font-size:.78rem;color:var(--tg-dim);line-height:1.6;overflow-wrap:anywhere}.tg-link-body label{display:block;font-size:.8rem;line-height:1.6;margin:.75rem 0 .3rem}.tg-link-body input[type="password"]{width:min(100%,400px);min-height:43px;color:var(--tg-fg);background:var(--tg-field);border:1px solid var(--tg-border);border-radius:9px;padding:.6rem}.tg-action-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.tg-bot-link{display:block;margin-top:.85rem;color:#58afd3;font-weight:600;font-size:.87rem}.tg-pending{border-top:1px solid var(--tg-border);margin-top:1rem;padding-top:.6rem;font-size:.86rem}.tg-consent{display:flex!important;align-items:flex-start;gap:.6rem;max-width:680px}.tg-consent input{margin-top:.25rem;flex-shrink:0;accent-color:#23799d;width:17px;height:17px}.tg-error{font-size:.83rem;line-height:1.5;color:#c9604f;margin:.5rem 0;min-height:0;overflow-wrap:anywhere}.tg-error:empty{display:none}.tg-older{display:flex;margin:0 auto 1rem}.tg-messages{display:flex;flex-direction:column;gap:.9rem;padding:.3rem 0}.tg-empty{margin:3rem auto;text-align:center;max-width:400px;color:var(--tg-dim)}.tg-empty-icon{display:grid;place-items:center;width:65px;height:65px;background:#5192b018;border:1px solid #5192b038;border-radius:20px;color:#559cbf;font-size:2rem;margin:auto}.tg-empty h2{font-size:1.15rem;color:var(--tg-fg);letter-spacing:-.02em;margin:1rem 0 .6rem}.tg-empty p{font-size:.86rem;line-height:1.75;margin:0}.tg-mail{background:var(--tg-card);border:1px solid var(--tg-border);border-radius:15px;padding:1rem;max-width:min(740px,95%);align-self:flex-start;min-width:260px;overflow-wrap:anywhere}.tg-mail.mine{align-self:flex-end;border-top-right-radius:5px;border-color:#47788a70}.tg-mail.theirs{border-top-left-radius:5px}.tg-mail-top{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;font-size:.79rem;color:var(--tg-dim)}.tg-source{font-size:.68rem;padding:.15rem .45rem;background:#5192b014;border-radius:5px}.tg-mail-text{font-size:.94rem;line-height:1.65;white-space:pre-wrap;margin:.65rem 0}.tg-attachment{display:block;color:#4b9fbf;padding:.85rem;background:#5192b00d;border:1px solid var(--tg-border);border-radius:9px;margin:.7rem 0;text-decoration:none;font-size:.87rem}.tg-mail-footer{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem .8rem;font-size:.66rem;color:var(--tg-dim);margin-top:.6rem}.tg-mail-footer .tg-uncertain{color:#c58c33}.tg-reply{border:0;background:none;color:#439bbe;font-size:.73rem;margin-left:auto;cursor:pointer;padding:.3rem}.tg-compose{flex-shrink:0;padding:1rem 1.5rem max(1rem,env(safe-area-inset-bottom));background:var(--tg-card);border-top:1px solid var(--tg-border)}.tg-recipient-row{display:flex;align-items:center;gap:.8rem;font-size:.79rem;margin-bottom:.65rem}.tg-recipient-row label{color:var(--tg-dim)}.tg-recipient-row select{background:var(--tg-field);border:1px solid var(--tg-border);color:var(--tg-fg);border-radius:8px;padding:.45rem;max-width:75%;min-width:170px}.tg-channel-tag{margin-left:auto;color:var(--tg-dim);font-size:.68rem;letter-spacing:.02em}.tg-compose textarea{width:100%;max-height:140px;min-height:64px;resize:vertical;border:1px solid var(--tg-border);background:var(--tg-field);color:var(--tg-fg);border-radius:11px;padding:.8rem;font-size:.9rem;line-height:1.5}.tg-compose-bottom{display:flex;align-items:center;gap:.6rem;margin-top:.65rem}.tg-compose-bottom #tg-file-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-file-label{flex-shrink:0}.tg-file-label:focus-within{outline:3px solid var(--focus)}.tg-mail.mine .tg-mail-top strong{color:var(--tg-fg)}
@media(max-width:900px){.sidebar{width:304px;flex-basis:304px}.side-head{padding:.8rem}.side-actions{gap:3px}.side-head>.brand{flex:1 0 100%}.tg-head{padding:1rem}.tg-content{padding:1rem}.tg-compose{padding:1rem}.tg-privacy{padding:.75rem 1rem}}
@media(max-width:700px){.sidebar{width:100%;flex-basis:100%}.side-head>.brand{flex:initial}.side-head{padding:.85rem .7rem}.icon-btn{min-width:33px;width:33px;height:36px}.app:not(.chat-open)>.chat{display:none}.app.chat-open>.sidebar{display:none}.app.chat-open>.chat{display:flex;width:100%}.chat-head{min-height:69px;padding:.65rem .75rem}.messages{padding:.8rem}.tg-head{gap:.6rem;padding:.8rem .75rem;min-height:79px}.tg-head .tg-brand{width:37px;height:37px}.tg-heading h1{font-size:1.02rem}.tg-heading p{font-size:.68rem}.tg-head #tg-refresh{font-size:.7rem;padding:.5rem}.tg-privacy{font-size:.7rem;padding:.65rem .8rem}.tg-content{padding:.75rem}.tg-settings summary{padding:.75rem;font-size:.76rem}.tg-settings summary span{float:none;display:block;margin:.4rem 0 0 1rem}.tg-mail{max-width:98%;min-width:220px;padding:.8rem}.tg-compose{padding:.75rem .75rem max(.75rem,env(safe-area-inset-bottom))}.tg-compose-bottom{gap:.4rem}.tg-compose .tg-button{padding:.5rem .65rem;font-size:.77rem}.tg-channel-tag{display:none}.tg-mail-top{font-size:.72rem}.tg-recipient-row select{flex:1;max-width:none}.auth-card{padding:1.5rem}.auth{padding:1rem}.tg-empty{margin:1.5rem auto}.tg-empty p{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.session-row{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border)}
.session-row span{font-size:12px;overflow-wrap:anywhere}.session-row button{flex-shrink:0}
