/* TELEBUILD Messenger. Memakai variabel tema proyek (--paper, --card, --ink, --acc, --coral, --bd, --bw, --sd) sehingga Tema Gelap & 3D Premium otomatis berlaku. */
.tbm{--tbc:var(--coral,#ff4458);position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;background:var(--paper,#fff1d6);color:var(--ink,#111);font-family:var(--ff,'Share Tech Mono',ui-monospace,monospace);-webkit-tap-highlight-color:transparent}
.tbm.hide{display:none!important}
.tbm *{box-sizing:border-box}
.tbm button{font-family:inherit;color:inherit;cursor:pointer}
.tb-i{flex:none}
.tb-h{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:calc(env(safe-area-inset-top) + 14px) 16px 14px;background:var(--acc,#ffd83d);border-bottom:var(--bw,3px) solid var(--bd,#111);color:#111}
.tb-h b{font-size:20px;letter-spacing:.14em;font-weight:700}
.tb-clk{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:var(--card,#fff);border:2px solid var(--bd,#111);border-radius:12px;box-shadow:3px 3px 0 var(--bd,#111);font-size:15px}
.tb-clk i{font-style:normal}
.tb-hx{margin-left:auto}.tb-hx:empty{display:none}
html.tb-on{overflow:hidden}
.tb-main{flex:1;min-height:0;position:relative;overflow:hidden}
.tb-pg{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;display:none;-webkit-overflow-scrolling:touch}
.tb-pg.on{display:block}
.tb-pg.slide{animation:tbSlide .26s cubic-bezier(.2,0,0,1)}
@keyframes tbSlide{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:none}}
.tb-scr{max-width:640px;margin:0 auto;padding:14px 16px calc(var(--tb-nav-h,76px) + 96px)}
.tb-pad{max-width:640px;margin:0 auto;padding:14px 16px calc(env(safe-area-inset-bottom) + 48px)}
.tb-nav{flex:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;padding:8px 6px calc(env(safe-area-inset-bottom) + 8px);background:var(--navbg,#fff);border-top:var(--bw,3px) solid var(--bd,#111)}
.tb-nav.hide{display:none}
.tb-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;height:60px;padding:0;border:0;background:none;font-size:12px;line-height:1.1;border-radius:0;color:var(--ink,#111)}
.tb-nav button span:last-child{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-nav button .tb-nic{position:relative;display:grid;place-items:center;width:64px;height:32px;border-radius:999px;transition:background .25s}
.tb-nav button.on .tb-nic{background:var(--acc,#ffd83d);color:#111}
.tb-nav button.on{font-weight:700}
.tb-bdg{position:absolute;top:-5px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--tbc);color:#fff;font:700 11px/18px var(--ff,monospace);font-style:normal;text-align:center}
.tb-bdg.hide,.tb-un.hide{display:none}
/* pencarian, marquee, story, chip */
.tb-sr{display:flex;align-items:center;gap:10px;padding:0 14px;height:54px;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:16px;box-shadow:4px 4px 0 var(--bd,#111);margin-bottom:16px}
.tb-sr input{flex:1;min-width:0;border:0!important;outline:0;background:transparent!important;color:inherit;font:inherit;font-size:16px;box-shadow:none!important}
.tb-qx{border:0;background:none;display:grid;place-items:center;padding:4px}
.tb-mq{display:flex;align-items:stretch;margin-bottom:16px;border:var(--bw,3px) solid var(--bd,#111);border-radius:14px;box-shadow:4px 4px 0 var(--bd,#111);overflow:hidden;background:var(--acc,#ffd83d);color:#111;height:44px}
.tb-mqi{flex:none;display:grid;place-items:center;width:46px;background:var(--tbc);color:#fff;border-right:var(--bw,3px) solid var(--bd,#111)}
.tb-mqt{flex:1;overflow:hidden;white-space:nowrap;display:flex;align-items:center}
.tb-mqt span{display:inline-block;padding-left:100%;animation:tbMq 28s linear infinite;font-size:15px}
@keyframes tbMq{to{transform:translateX(-100%)}}
body.noanim .tb-mqt span{animation:none;padding-left:10px}
.tb-stories{display:flex;gap:14px;overflow-x:auto;padding:4px 2px 10px;margin-bottom:6px;scrollbar-width:none}.tb-stories::-webkit-scrollbar{display:none}
.tb-story{flex:none;width:76px;display:flex;flex-direction:column;align-items:center;gap:6px;border:0;background:none;padding:0}
.tb-story small{font-size:12px;max-width:76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-sring{position:relative;display:grid;place-items:center;width:68px;height:68px;border-radius:50%;padding:3px;border:3px solid var(--bd,#111)}
.tb-sring .gl-av{width:100%;height:100%;border-width:2px}
.tb-sring.new{border-color:var(--tbc)}.tb-sring.seen{border-color:#9a9a9a}.tb-sring.has{border-color:var(--acc,#ffd83d);outline:2px solid var(--bd,#111)}.tb-sring.none{border-color:var(--bd,#111)}
.tb-sp,.tb-plus{position:absolute;right:-4px;bottom:-2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--tbc);color:#fff;border:2px solid var(--card,#fff);font-style:normal}
.tb-chips{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 12px;scrollbar-width:none}.tb-chips::-webkit-scrollbar{display:none}
.tb-chips button{flex:none;display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border:var(--bw,3px) solid var(--bd,#111);border-radius:999px;background:var(--card,#fff);box-shadow:3px 3px 0 var(--bd,#111);font-size:15px}
.tb-chips button.on{background:var(--tbc);color:#fff}
.tb-chip2{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:2px solid var(--bd,#111);border-radius:999px;background:var(--card,#fff);font-size:14px;box-shadow:2px 2px 0 var(--bd,#111)}
.tb-ibtn{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;border:2px solid var(--bd,#111);background:var(--card,#fff);box-shadow:2px 2px 0 var(--bd,#111)}
/* baris daftar */
.tb-list{display:flex;flex-direction:column;gap:12px}
.tb-row{display:flex;align-items:center;gap:12px;padding:12px;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:18px;box-shadow:4px 4px 0 var(--bd,#111);user-select:none;-webkit-user-select:none;position:relative}
.tb-row:active{translate:2px 2px;box-shadow:2px 2px 0 var(--bd,#111)}
.tb-row.picked{outline:3px solid var(--tbc)}
.tb-row .gl-av{width:52px;height:52px}
.tb-rb{flex:1;min-width:0}
.tb-r1,.tb-r2{display:flex;align-items:center;justify-content:space-between;gap:8px}
.tb-r1{font-size:17px;font-weight:700}.tb-r1 time{font-size:13px;font-weight:400;opacity:.6;flex:none}
.tb-r2{margin-top:3px;font-size:15px}
.tb-last{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.72}
.tb-nm{display:inline-flex;align-items:center;gap:5px;min-width:0}.tb-nm>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-vb{flex:none}
.tb-ki{opacity:.6;display:inline-flex}
.tb-un{flex:none;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--tbc);color:#fff;font:700 13px/22px var(--ff,monospace);font-style:normal;text-align:center}.tb-un.mute{background:#8a8a8a}
.tb-pn{opacity:.5;display:inline-flex}
.tb-tag{flex:none;padding:2px 9px;border-radius:999px;border:2px solid var(--bd,#111);font-size:12px;font-weight:700;background:var(--card2,#eee);letter-spacing:.06em}.tb-tag.pub{background:#4a90e2;color:#fff}.tb-tag.adm{background:var(--acc,#ffd83d);color:#111}.tb-tag.big{font-size:13px;padding:4px 14px}
.tb-archrow .tb-archic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--card2,#eee);border:2px solid var(--bd,#111)}
.tb-sec{margin:20px 4px 10px;font-size:13px;letter-spacing:.12em;opacity:.6;font-weight:400}
h4.tb-sec{text-transform:uppercase}
.tb-empty{padding:38px 18px;text-align:center;opacity:.65;line-height:1.7;font-size:15px}.tb-empty.sm{padding:16px 10px;font-size:14px}
.tb-note{margin:16px 2px 0;font-size:13px;opacity:.65;line-height:1.6}
.tb-note.warn{display:flex;gap:10px;align-items:flex-start;opacity:1;padding:12px 14px;background:var(--card,#fff);border:2px dashed var(--bd,#111);border-radius:14px;margin:0 0 16px;font-size:14px}
.tb-mini{flex:none;padding:6px 14px;border-radius:999px;border:2px solid var(--bd,#111);background:var(--tbc);color:#fff;font-size:13px}.tb-mini:disabled{opacity:.5}
/* FAB */
.tb-fab{position:absolute;right:16px;bottom:calc(var(--tb-nav-h,76px) + 16px);z-index:5;width:58px;height:58px;padding:0;display:grid;place-items:center;border:var(--bw,3px) solid var(--bd,#111);border-radius:18px;background:var(--tbc);color:#fff;box-shadow:4px 4px 0 var(--bd,#111);transition:box-shadow .2s,translate .12s}
.tb-fab.hide{display:none}
.tb-fab svg{transition:transform .28s cubic-bezier(.3,1.4,.5,1)}
.tb-fab.open svg{transform:rotate(45deg)}
.tb-fab.pop{animation:tbPop .34s cubic-bezier(.3,1.5,.5,1)}
@keyframes tbPop{0%{transform:scale(1)}45%{transform:scale(1.14)}100%{transform:scale(1)}}
.tb-fab:active{translate:4px 4px;box-shadow:1px 1px 0 var(--bd,#111)}
/* sheet bawah */
.tb-shw{position:fixed;inset:0;z-index:310;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;font-family:var(--ff,'Share Tech Mono',monospace);color:var(--ink,#111)}
.tb-scrim{position:absolute;inset:0;background:rgba(0,0,0,.5);opacity:0;transition:opacity .24s}
.tb-sheet{position:relative;width:100%;max-width:560px;max-height:88vh;overflow-y:auto;background:var(--sheet,#fff);border-radius:26px 26px 0 0;padding:10px 18px calc(env(safe-area-inset-bottom) + 20px);transform:translate3d(0,100%,0);transition:transform .28s cubic-bezier(.2,0,0,1);border-top:var(--bw,3px) solid var(--bd,#111)}
.tb-shw.in{pointer-events:auto}.tb-shw.in .tb-scrim{opacity:1}.tb-shw.in .tb-sheet{transform:none}
.tb-grab{display:block;width:44px;height:5px;border-radius:3px;background:#bbb;margin:2px auto 12px}
.tb-sh{margin:0 0 12px;font-size:19px;letter-spacing:.04em}.tb-sp{margin:0 0 16px;font-size:15px;opacity:.7;line-height:1.5}
.tb-menu{display:flex;flex-direction:column}.tb-menu hr{border:0;border-top:2px solid var(--line,#ddd);margin:6px 0;width:100%}
.tb-mi{display:flex;align-items:center;gap:14px;padding:12px 4px;border:0;background:none;text-align:left;width:100%;font-size:17px}
.tb-mic{display:grid;place-items:center;width:46px;height:46px;flex:none;border-radius:14px;background:var(--pinkbox,#ffe3e7);color:var(--tbc);border:2px solid var(--bd,#111)}
.tb-mt{display:flex;flex-direction:column;gap:2px;min-width:0}.tb-mt small{font-size:13px;opacity:.65}
.tb-mi.danger b{color:var(--tbc)}
.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 20px;border:2px solid var(--bd,#111);border-radius:999px;background:var(--card,#fff);font-size:16px;flex:1}
.tb-btn.main{background:var(--tbc);color:#fff;border-color:var(--tbc)}.tb-btn.danger{background:var(--tbc);color:#fff;border-color:var(--tbc)}.tb-btn.wide{width:100%;margin-top:14px}.tb-btn:disabled{opacity:.45}
.tb-row2{display:flex;gap:12px;margin-top:14px}
.tb-in,.tb-lbl input,.tb-lbl textarea{width:100%;padding:13px 14px;border:2px solid var(--bd,#111);border-radius:14px;background:var(--card,#fff);color:inherit;font:inherit;font-size:16px;margin:4px 0 10px;resize:none}
.tb-lbl{display:block;font-size:13px;opacity:.9;margin-top:8px}.tb-lbl input,.tb-lbl textarea{opacity:1}
.tb-cc{display:block;text-align:right;opacity:.6;font-size:13px;margin:-6px 6px 8px}
.tb-card{background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:20px;box-shadow:5px 5px 0 var(--bd,#111);padding:14px;margin-bottom:16px}
.tb-card.ctr{text-align:center;padding:24px 14px}.tb-big{font-size:34px;font-weight:700;margin:8px 0 2px}
.tb-card.sto{display:flex;align-items:center;gap:14px}
.tb-link{border:0;background:none;color:var(--tbc);font-size:16px}.tb-link:disabled{opacity:.35}
.tb-fl{display:flex;align-items:center;gap:12px;padding:6px 12px;border:2px solid var(--bd,#111);border-radius:12px;margin-bottom:12px;background:var(--card,#fff)}.tb-fl input,.tb-fl textarea{flex:1;border:0!important;outline:0;background:transparent!important;color:inherit;font:inherit;font-size:16px;padding:10px 0;resize:none;box-shadow:none!important}.tb-fl.ta{align-items:flex-start;padding-top:10px}
.tb-rd{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 4px;border:0;background:none;font-size:16px;text-align:left}
.tb-rd i{width:28px;height:28px;border:3px solid var(--bd,#111);border-radius:50%;background:var(--card,#fff)}.tb-rd.on i{background:var(--tbc) radial-gradient(#fff 28%,transparent 30%);border-color:var(--tbc)}
/* Info Kontak */
.tb-ic{position:relative;text-align:center;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:22px;box-shadow:5px 5px 0 var(--bd,#111);overflow:hidden;padding-bottom:22px}
.tb-ban{height:130px;background:var(--acc,#ffd83d);overflow:hidden}.tb-ban img,.tb-ban video{width:100%;height:100%;object-fit:cover;display:block}
.tb-icav{margin-top:-52px;display:flex;justify-content:center}
.tb-icav .gl-av.xl,.tb-pav2 .gl-av.xl{width:104px;height:104px;font-size:44px;border:5px solid var(--bd,#111);outline:4px solid var(--acc,#ffd83d);outline-offset:-9px;background-color:var(--acc,#ffd83d)}
.tb-ic h2{margin:12px 0 4px;font-size:25px;display:flex;justify-content:center}.tb-num{opacity:.6;font-size:15px;margin-bottom:10px}.tb-seen{font-size:13px;opacity:.6;margin-top:10px}.tb-bio{margin:12px 20px 0;font-size:14px;line-height:1.5;opacity:.85;white-space:pre-wrap}
.tb-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 14px}
.tb-3 button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 4px;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:18px;box-shadow:4px 4px 0 var(--bd,#111);font-size:15px}.tb-3 svg{color:var(--tbc)}
.tb-wide{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px;border:var(--bw,3px) solid var(--bd,#111);border-radius:999px;background:var(--paper,#fff1d6);font-size:16px}
/* profil */
.tb-pcard{text-align:center;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:22px;box-shadow:5px 5px 0 var(--bd,#111);padding:22px 16px;margin-bottom:16px}
.tb-pav2{display:flex;justify-content:center;margin-bottom:12px}
.tb-pnm{display:flex;align-items:center;justify-content:center;gap:8px;font-size:24px}.tb-pnm button{border:0;background:none;padding:2px}
.tb-vst{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:12px;padding:14px;border-radius:999px;border:0;font-size:16px}
.tb-vst.wait{background:#2196f3;color:#fff}.tb-vst.ok{background:var(--card2,#eee);border:2px solid var(--bd,#111)}.tb-vst.ask{background:#2196f3;color:#fff}
.tb-pi{display:flex;align-items:center;gap:14px;padding:14px;margin-bottom:12px;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:18px;box-shadow:4px 4px 0 var(--bd,#111);cursor:pointer}
.tb-pi.plain{box-shadow:none;border-width:2px;cursor:default}
.tb-pi:active{translate:2px 2px}
.tb-pic{display:grid;place-items:center;width:34px;flex:none;color:var(--tbc)}
.tb-pt{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;font-size:17px}.tb-pt small{font-size:13px;opacity:.62;line-height:1.4}
.tb-pi.danger .tb-pt b{color:var(--tbc)}
.tb-tg{position:relative;flex:none;width:56px;height:32px}.tb-tg input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:2}
.tb-tg i{position:absolute;inset:0;border:3px solid var(--bd,#111);border-radius:999px;background:var(--card,#fff);transition:background .2s}
.tb-tg i::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--bd,#111);transition:transform .2s}
.tb-tg input:checked+i{background:var(--acc,#ffd83d)}.tb-tg input:checked+i::after{transform:translateX(24px)}
.tb-wsw,.tb-rsw{display:block;width:26px;height:26px;border-radius:8px;border:2px solid var(--bd,#111)}.tb-rsw{border-radius:50%}
.tb-wsw[data-w="w0"]{background:#fff1d6}.tb-wsw[data-w="w1"]{background:#fff3b0}.tb-wsw[data-w="w2"]{background:repeating-linear-gradient(45deg,#fff1d6 0 5px,#ffe2a0 5px 10px)}.tb-wsw[data-w="w3"]{background:conic-gradient(#fff1d6 25%,#ffe2a0 0 50%,#fff1d6 0 75%,#ffe2a0 0) 0 0/10px 10px}.tb-wsw[data-w="w4"]{background:#ffd3d8}.tb-wsw[data-w="w5"]{background:#d6ecff}.tb-wsw[data-w="w6"]{background:#1e1b12}
/* favorit */
.tb-fv{background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:18px;box-shadow:4px 4px 0 var(--bd,#111);padding:14px;margin-bottom:14px}.tb-fh{display:flex;justify-content:space-between;gap:8px;font-size:14px}.tb-fh span{opacity:.6}.tb-fv p{margin:10px 0;font-size:16px;line-height:1.5;word-break:break-word;white-space:pre-wrap}.tb-fa{display:flex;gap:10px;flex-wrap:wrap}.tb-fa button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:2px solid var(--bd,#111);border-radius:999px;background:var(--paper,#fff1d6);font-size:14px}
/* grup */
.tb-gc .gp-body{display:flex;flex-direction:column}.tb-gl{flex:1}
.tb-gmsg{align-self:flex-start;max-width:82%;padding:9px 12px;background:var(--card,#fff);border:2px solid var(--bd,#111);border-radius:14px 14px 14px 4px;margin:3px 0;font-size:15px;display:flex;flex-direction:column;gap:2px;word-break:break-word}.tb-gmsg.me{align-self:flex-end;background:var(--acc,#ffd83d);color:#111;border-radius:14px 14px 4px 14px}.tb-gmsg b{font-size:12px;color:var(--tbc)}.tb-gmsg time{font-size:11px;opacity:.55;align-self:flex-end}.tb-gmsg span{white-space:pre-wrap}
.tb-gf{flex:none;display:flex;gap:10px;padding:10px 12px calc(env(safe-area-inset-bottom) + 10px);background:var(--navbg,#fff);border-top:var(--bw,3px) solid var(--bd,#111)}.tb-gf input{flex:1;min-width:0;padding:12px 16px;border:2px solid var(--bd,#111);border-radius:999px;background:var(--card,#fff);color:inherit;font:inherit;font-size:16px}
.tb-send{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:2px solid var(--bd,#111);background:var(--tbc);color:#fff;flex:none}
.tb-ck{position:relative;flex:none;width:26px;height:26px}.tb-ck input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0}.tb-ck i{position:absolute;inset:0;border:3px solid var(--bd,#111);border-radius:8px;background:var(--card,#fff)}.tb-ck input:checked+i{background:var(--tbc)}
.tb-exl{max-height:48vh;overflow-y:auto;padding:4px 4px 8px}.tb-exl .tb-row{box-shadow:none;border-width:2px}
.tb-grav{background:var(--card2,#eee)!important}.tb-chav.xl,.tb-chav .xl{width:104px;height:104px}
/* pembaruan */
.tb-h2{margin:6px 2px 12px;font-size:25px}.tb-h3{margin:22px 2px 10px;font-size:16px;opacity:.7;font-weight:400}.tb-h2row{display:flex;align-items:center;justify-content:space-between;margin-top:22px}.tb-hbtns{display:flex;gap:8px;align-items:center}
.tb-stgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.tb-scard{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:3px;min-height:170px;padding:12px;border:var(--bw,3px) solid var(--bd,#111);border-radius:20px;box-shadow:4px 4px 0 var(--bd,#111);background:var(--card2,#2d2d3a);color:#fff;overflow:hidden;text-align:left}
.tb-scard.me{background:#2a2f3d}.tb-scard .tb-sring{position:absolute;top:10px;left:10px;width:54px;height:54px;background:var(--card,#fff)}.tb-scard b{font-size:16px;z-index:1}.tb-scard small{font-size:12px;opacity:.85;z-index:1}
.tb-sprev{position:absolute;inset:0;display:grid;place-items:center;padding:18px 10px 40px;font-style:normal;font-size:17px;text-align:center;opacity:.9;word-break:break-word}
/* pembuat status */
.tb-cmp .gp-body{display:flex;flex-direction:column;padding:0}
.tb-cv{flex:1;min-height:0;position:relative;display:flex;flex-direction:column}
.tb-txt{flex:1;position:relative;display:grid;place-items:center;padding:24px;color:#fff;transition:background .3s}.tb-txt.dk{color:#111}
.tb-txt textarea{width:100%;background:transparent;border:0;outline:0;color:inherit;font:700 30px/1.3 var(--ff,monospace);text-align:center;resize:none}.tb-txt textarea::placeholder{color:inherit;opacity:.55}
.tb-txt small{position:absolute;left:18px;bottom:14px;opacity:.8;font-size:14px}
.tb-pal{position:absolute;right:16px;top:16px;width:46px;height:46px;border-radius:50%;border:2px solid var(--bd,#111);background:var(--card,#fff);display:grid;place-items:center;color:var(--ink,#111)}
.tb-pick{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px;position:relative;background:#111;color:#fff}.tb-pick img,.tb-pick video{max-width:100%;max-height:100%;object-fit:contain}.tb-pick small{opacity:.7}.tb-pick .tb-btn{flex:none}
.tb-playov{position:absolute;inset:0;margin:auto;width:76px;height:76px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;display:grid;place-items:center}.tb-playov.hide{display:none}
.tb-cap{position:relative;padding:10px 14px;background:var(--navbg,#fff);border-top:2px solid var(--bd,#111)}.tb-cap input{width:100%;padding:12px 56px 12px 14px;border:2px solid var(--bd,#111);border-radius:999px;background:var(--card,#fff);color:inherit;font:inherit;font-size:16px}.tb-cap small{position:absolute;right:24px;top:50%;translate:0 -50%;opacity:.6;font-size:12px}
.tb-aud{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px;text-align:center}.tb-aud small{opacity:.6;font-size:13px;max-width:260px}.tb-aud audio{width:100%;max-width:320px}
.tb-timer{font-size:46px;font-weight:700}.tb-micbtn{display:grid;place-items:center;width:96px;height:96px;border-radius:50%;border:var(--bw,3px) solid var(--bd,#111);background:var(--tbc);color:#fff;box-shadow:4px 4px 0 var(--bd,#111)}.tb-micbtn.hide{display:none}.tb-micbtn.rec{animation:tbRec 1s infinite}@keyframes tbRec{50%{box-shadow:0 0 0 14px rgba(255,68,88,.25)}}
.tb-actrl.hide{display:none}.tb-actrl .tb-btn{flex:none}
.tb-cbar{flex:none;display:flex;gap:10px;align-items:center;padding:10px 14px;background:var(--navbg,#fff);border-top:2px solid var(--bd,#111)}.tb-rpl input{margin-right:6px}
.tb-ctabs{flex:none;display:grid;grid-template-columns:repeat(4,1fr);background:var(--navbg,#fff);border-top:var(--bw,3px) solid var(--bd,#111);padding-bottom:env(safe-area-inset-bottom)}.tb-ctabs button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 0;border:0;background:none;font-size:13px}.tb-ctabs button.on{color:var(--tbc)}
.tb-sendfab{position:absolute;right:16px;bottom:16px;width:58px;height:58px;border-radius:50%;border:var(--bw,3px) solid var(--bd,#111);background:var(--tbc);color:#fff;display:grid;place-items:center;box-shadow:3px 3px 0 var(--bd,#111);z-index:3}.tb-sendfab.busy{opacity:.5}
.tb-cv .tb-sendfab{bottom:16px}
/* viewer status */
.tb-sv .gp-h{display:none}.tb-sv .gp-body{padding:0;background:#000}.tb-sv{background:#000!important}
.tb-vw{position:absolute;inset:0;display:flex;flex-direction:column;background:#000;color:#fff;touch-action:manipulation;user-select:none;-webkit-user-select:none}
.tb-bars{position:absolute;left:8px;right:8px;top:calc(env(safe-area-inset-top) + 8px);display:flex;gap:4px;z-index:5}
.tb-bar{flex:1;height:3px;border-radius:2px;background:rgba(255,255,255,.35);overflow:hidden}.tb-bar i{display:block;height:100%;background:#fff}
.tb-vh{position:absolute;left:0;right:0;top:calc(env(safe-area-inset-top) + 18px);display:flex;align-items:center;gap:10px;padding:8px 12px;z-index:5;background:linear-gradient(rgba(0,0,0,.45),transparent)}
.tb-vh .gl-av{width:42px;height:42px}.tb-vn{flex:1;min-width:0;display:flex;flex-direction:column}.tb-vn b{font-size:16px}.tb-vn small{font-size:12px;opacity:.8}
.tb-vb2{display:grid;place-items:center;width:42px;height:42px;border:0;background:none;color:#fff}.tb-vb2.hide{display:none}
.tb-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:manipulation}
.tb-stage img,.tb-stage video{width:100%;height:100%;object-fit:contain;pointer-events:none}
.tb-stx{padding:28px;text-align:center;font:700 32px/1.3 var(--ff,monospace);word-break:break-word;color:#fff}.tb-stage.dk .tb-stx{color:#111}
.tb-scap{position:absolute;left:0;right:0;bottom:120px;text-align:center;padding:10px 16px;background:rgba(0,0,0,.5);font-size:17px}
.tb-sau{display:flex;flex-direction:column;align-items:center;gap:12px;opacity:.85}
.tb-sload{display:flex;flex-direction:column;align-items:center;gap:14px;padding:20px;text-align:center}.tb-sload i{width:34px;height:34px;border-radius:50%;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;animation:tbSpin .8s linear infinite}.tb-sload .tb-btn{flex:none}@keyframes tbSpin{to{transform:rotate(360deg)}}
.tb-vw.holding .tb-bars{opacity:.55}
.tb-act{position:absolute;right:14px;bottom:calc(env(safe-area-inset-bottom) + 80px);display:flex;gap:12px;z-index:5}
.tb-rnd{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:2px solid rgba(255,255,255,.25);background:rgba(0,0,0,.45);color:#fff}.tb-rnd.hide{display:none}.tb-rnd.on{color:var(--tbc)}.tb-rnd.on svg{fill:currentColor}
.tb-rep{position:absolute;left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 12px);display:flex;align-items:center;gap:8px;z-index:5}.tb-rep.hide{display:none}
.tb-rep input{flex:1;min-width:0;padding:14px 18px;border-radius:999px;border:2px solid rgba(255,255,255,.25);background:rgba(0,0,0,.45);color:#fff;font:inherit;font-size:16px;outline:0}.tb-rep input::placeholder{color:rgba(255,255,255,.6)}
.tb-rb2{display:grid;place-items:center;width:46px;height:46px;border:0;background:none;color:#fff;border-radius:50%;flex:none}.tb-rb2.mic{background:var(--tbc);border:2px solid #111}.tb-rb2.rec{animation:tbRec 1s infinite}
.tb-own{position:absolute;left:14px;right:14px;bottom:calc(env(safe-area-inset-bottom) + 16px);display:flex;align-items:center;gap:18px;z-index:5;font-size:16px}.tb-own.hide{display:none}.tb-own span{display:inline-flex;align-items:center;gap:6px}.tb-own button{margin-left:auto;border:0;background:rgba(0,0,0,.45);color:#fff;width:46px;height:46px;border-radius:50%;display:grid;place-items:center}
/* halaman saluran */
.tb-cover{height:120px;margin:-14px -14px 0;background:var(--acc,#ffd83d) center/cover no-repeat}
.tb-chb{text-align:center}.tb-chav{display:flex;justify-content:center;margin-top:18px}.tb-chav .gl-av{width:104px;height:104px;border-width:4px;box-shadow:4px 4px 0 var(--bd,#111);background-color:#3a1f24;color:var(--tbc)}.tb-cover+.tb-chav{margin-top:-52px}
.tb-chn{margin:14px 0 4px;font-size:27px;letter-spacing:.06em}.tb-chm{opacity:.6;font-size:15px}.tb-chd{margin:10px 0 0;font-size:15px;white-space:pre-wrap;word-break:break-word}
.tb-chbt{display:flex;gap:12px;margin:18px 0 14px}.tb-chbt .tb-btn{min-height:54px}
.tb-sm3{display:flex;justify-content:center;gap:14px;margin-bottom:18px}.tb-sm3 button{display:flex;flex-direction:column;align-items:center;gap:5px;width:84px;padding:12px 4px;border:var(--bw,3px) solid var(--bd,#111);border-radius:16px;background:var(--card,#fff);box-shadow:3px 3px 0 var(--bd,#111);font-size:13px}
.tb-info{background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:18px;box-shadow:4px 4px 0 var(--bd,#111);text-align:left}.tb-info div{display:flex;justify-content:space-between;padding:15px 18px;font-size:16px}.tb-info div+div{border-top:var(--bw,3px) solid var(--bd,#111)}.tb-info span{opacity:.55}
.tb-chb .tb-sec{text-align:left}
.tb-post{text-align:left;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:18px;box-shadow:4px 4px 0 var(--bd,#111);padding:14px;margin-bottom:14px}.tb-ph{display:flex;align-items:center;gap:10px;margin-bottom:8px}.tb-ph time{margin-left:auto;font-size:12px;opacity:.55}.tb-pav{width:34px;height:34px;font-size:14px}.tb-post p{margin:4px 0 8px;font-size:16px;line-height:1.5;word-break:break-word;white-space:pre-wrap}
.tb-pim{min-height:60px;border-radius:12px;overflow:hidden;background:var(--card2,#eee);margin:6px 0}.tb-pim img{display:block;width:100%;max-height:420px;object-fit:cover}.tb-pim i{display:block;height:80px}.tb-imerr{display:block;padding:20px;text-align:center;opacity:.6}
.tb-pa{display:flex;gap:6px;justify-content:flex-end}.tb-pa button{border:0;background:none;padding:6px}
.tb-prow{display:flex;align-items:center;justify-content:space-between;margin:2px 0 6px}.tb-pvw{position:relative;margin:4px 0 8px}.tb-pvw img{width:100%;max-height:220px;object-fit:cover;border-radius:12px;border:2px solid var(--bd,#111)}.tb-pvw .tb-ibtn{position:absolute;top:8px;right:8px}
.tb-gate{max-width:420px;margin:0 auto;padding:40px 22px;text-align:center}.tb-gate h2{font-size:24px}.tb-gate p{opacity:.7;line-height:1.6;font-size:15px}.tb-gate .tb-btn{width:100%;flex:none}
/* wallpaper chat & ring avatar (diatur di Profil > Tampilan) */
html[data-tbw=w0] .gp.chat .ch-list{background:#fff1d6!important}
html[data-tbw=w1] .gp.chat .ch-list{background:#fff3b0!important}
html[data-tbw=w2] .gp.chat .ch-list{background:repeating-linear-gradient(45deg,#fff1d6 0 8px,#ffe2a0 8px 16px)!important}
html[data-tbw=w3] .gp.chat .ch-list{background:conic-gradient(#fff1d6 25%,#ffe2a0 0 50%,#fff1d6 0 75%,#ffe2a0 0) 0 0/24px 24px!important}
html[data-tbw=w4] .gp.chat .ch-list{background:#ffd3d8!important}
html[data-tbw=w5] .gp.chat .ch-list{background:#d6ecff!important}
html[data-tbw=w6] .gp.chat .ch-list{background:#1e1b12!important}
html[data-tbr=r0] .gl-av[data-me],html[data-tbr=r0] .tb-sring.has{border-color:#ff4458}
html[data-tbr=r1] .gl-av[data-me],html[data-tbr=r1] .tb-sring.has{border-color:#4a90e2}
html[data-tbr=r2] .gl-av[data-me],html[data-tbr=r2] .tb-sring.has{border-color:#2fb877}
html[data-tbr=r3] .gl-av[data-me],html[data-tbr=r3] .tb-sring.has{border-color:#8b5cf6}
html[data-tbr=r4] .gl-av[data-me],html[data-tbr=r4] .tb-sring.has{border-color:#ff8a3d}
/* tema gelap: elemen yang memakai warna tetap */
html.dark .tb-gmsg.me,html.dark .tb-h,html.dark .tb-h b{color:#111}
html.dark .tb-sheet{background:var(--sheet,#1c1a12)}
body.noanim .tb-pg.slide,body.noanim .tb-fab.pop,body.noanim .tb-sheet,body.noanim .tb-scrim{animation:none;transition:none}
@media (min-width:760px){.tbm{max-width:560px;width:100%;right:auto;left:50%;translate:-50% 0;border-left:var(--bw,3px) solid var(--bd,#111);border-right:var(--bw,3px) solid var(--bd,#111)}}
/* sheet "Dilihat / Suka" pada status sendiri */
.tb-vtabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:2px solid var(--bd,#111)}
.tb-vtabs button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px 14px;border:0;background:none;font-size:16px;position:relative;color:var(--ink,#111)}
.tb-vtabs button svg{color:#111}.tb-vtabs button[data-t=l] svg{color:#2fb877;fill:#2fb877}
.tb-vtabs button.on{color:var(--tbc)}.tb-vtabs button.on[data-t=v] svg{color:var(--tbc)}
.tb-vtabs button.on::after{content:'';position:absolute;left:0;right:0;bottom:-2px;height:4px;border-radius:3px 3px 0 0;background:var(--tbc)}
.tb-vl{padding:8px 16px;max-height:50vh;overflow-y:auto}.tb-vr{display:flex;align-items:center;gap:14px;padding:12px 0}.tb-vr .gl-av{width:56px;height:56px}.tb-vr>div{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.tb-vr b{font-size:18px}.tb-vr small{flex-basis:100%;font-size:14px;font-weight:700}
.tb-hint{margin-left:auto;font-style:normal;font-size:13px;opacity:.7;display:inline-flex;align-items:center;gap:4px}
.tb-own button{margin-left:12px}
/* saluran: tampilan chat */
.tb-chc .gp-body{display:flex;flex-direction:column;padding:0}
.tb-chh{display:flex;align-items:center;gap:10px;cursor:pointer;min-width:0}.tb-chh .gl-av{width:42px;height:42px}.tb-chh>span:last-child{display:flex;flex-direction:column;min-width:0;text-align:left}.tb-chh b{font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-chh small{font-size:12px;opacity:.7}
.tb-cl{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px 12px 18px}
.tb-sys{align-self:center;max-width:92%;padding:8px 14px;border-radius:12px;background:var(--card2,rgba(0,0,0,.08));border:2px solid var(--bd,#111);font-size:13px;line-height:1.5;text-align:center;opacity:.95;cursor:pointer}.tb-sys.d{cursor:default;font-size:12px;padding:4px 12px;border-radius:999px}
.tb-dev{align-self:center;width:100%;max-width:420px;padding:20px 16px;background:var(--card,#fff);border:var(--bw,3px) solid var(--bd,#111);border-radius:22px;box-shadow:4px 4px 0 var(--bd,#111);display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.tb-dev .gl-av{width:84px;height:84px}.tb-dev b{font-size:18px}
.tb-lk{display:inline-flex;align-items:center;gap:8px;border:0;background:none;color:var(--tbc);font-size:16px;padding:6px}
.tb-outl{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:13px;border:2px solid var(--bd,#111);border-radius:999px;background:var(--paper,#fff1d6);color:var(--tbc);font-size:16px}
.tb-bub{position:relative;align-self:flex-start;max-width:88%;padding:10px 12px 6px;background:var(--card,#fff);border:2px solid var(--bd,#111);border-radius:14px 14px 14px 4px;box-shadow:3px 3px 0 var(--bd,#111)}
.tb-bub p{margin:0 0 4px;font-size:16px;line-height:1.5;word-break:break-word;white-space:pre-wrap;padding-right:14px}.tb-bub time{display:block;text-align:right;font-size:11px;opacity:.55}.tb-bub .tb-pim{margin:0 0 6px;min-width:200px}
.tb-bm{position:absolute;top:6px;right:6px;border:0;background:none;padding:2px;rotate:90deg;opacity:.55}
.tb-comp{flex:none;padding:8px 10px calc(env(safe-area-inset-bottom) + 8px);background:var(--navbg,#fff);border-top:var(--bw,3px) solid var(--bd,#111)}.tb-comp.fol{display:flex;justify-content:center}.tb-comp.fol .tb-btn{max-width:320px}
.tb-cbx{display:flex;align-items:center;gap:6px;padding:4px 4px 4px 8px;border:2px solid var(--bd,#111);border-radius:999px;background:var(--card,#fff)}.tb-cbx input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:inherit;font:inherit;font-size:16px;padding:10px 4px}.tb-cb{display:grid;place-items:center;width:40px;height:40px;border:0;background:none;opacity:.75}
.tb-pvw.sm{margin:0 0 8px}.tb-pvw.sm img{max-height:120px;width:auto}
/* info & edit saluran */
.tb-info2{text-align:center}.tb-iav{position:relative;display:flex;justify-content:center}.tb-iav .tb-cover{position:absolute;left:-14px;right:-14px;top:-14px;height:110px}.tb-iav .gl-av{position:relative;margin-top:30px}
.gl-av.xl.round{width:112px;height:112px;border-radius:50%;background-color:#3a1f24;color:var(--tbc)}
.tb-sm3.r button{border:0;background:none;box-shadow:none;width:92px}.tb-sm3.r button i{display:grid;place-items:center;width:88px;height:52px;border-radius:999px;background:var(--card2,#eee);border:2px solid var(--bd,#111);font-style:normal}
.tb-blk{text-align:left;margin:0 -14px;padding:16px 18px;border-top:2px solid var(--line,rgba(0,0,0,.15));display:flex;flex-direction:column;gap:8px}.tb-blk small{opacity:.6;font-size:13px}.tb-blk.row{flex-direction:row;align-items:flex-start;gap:14px;cursor:pointer}.tb-blk.row.plain{cursor:default}
.tb-chd.l{margin:0;font-size:16px}.tb-chd.dim{opacity:.55}.tb-lk.l{padding:0;font-size:17px;text-align:left}
.tb-h2row.sm{margin:4px -14px 0;padding:14px 18px;border-top:2px solid var(--line,rgba(0,0,0,.15));text-align:left}
.tb-act2{display:flex;flex-direction:column;text-align:left}.tb-act2 button{display:flex;align-items:center;gap:16px;padding:10px 0;border:0;background:none;font-size:17px}.tb-act2 button i{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--tbc);color:#fff;font-style:normal}
.tb-fol{display:flex;align-items:center;gap:14px;padding:10px 0;text-align:left}.tb-fol .gl-av{width:50px;height:50px}.tb-fol>div{flex:1;display:flex;flex-direction:column}.tb-fol small{opacity:.6;font-style:italic}.tb-tag.own{border:0;background:rgba(255,68,88,.2);color:var(--tbc)}
.tb-dz{margin:14px -14px 0;border-top:2px solid var(--line,rgba(0,0,0,.15));text-align:left}.tb-dz button{display:flex;align-items:center;gap:16px;width:100%;padding:16px 18px;border:0;background:none;font-size:17px;color:var(--tbc)}
.tb-che .tb-eav{position:relative;display:flex;justify-content:center;margin:10px 0 24px}.tb-cam{position:absolute;left:calc(50% + 24px);bottom:0;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--tbc);color:#111;font-style:normal;border:3px solid var(--paper,#fff1d6)}
.tb-lbl.ul{position:relative;font-size:15px;opacity:1;margin:0 0 18px}.tb-lbl.ul input{border:0;border-bottom:2px solid var(--bd,#111);border-radius:0;background:transparent;padding:10px 40px 10px 0;margin:2px 0 0}.tb-cc2{position:absolute;right:2px;bottom:12px;font-size:14px;opacity:.6}
.tb-in.soft{background:var(--card2,#eee);border:0;border-bottom:2px solid var(--bd,#111);border-radius:10px 10px 0 0}
html body .tbm .tb-sr input,html body .tbm .tb-cbx input,html body .tbm .tb-fl input,html body .tbm .tb-fl textarea{border:0!important;box-shadow:none!important;background:transparent!important;outline:0!important;height:auto;min-height:0;padding-left:0;padding-right:0;border-radius:0!important}
html body .tbm .tb-cap input,html body .tbm .tb-gf input{box-shadow:none!important}
/* penguat spesifisitas: elemen di layer/sheet berada di luar .tbm sehingga rawan tertimpa gaya global lama */
html body .tb-btn{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 20px;border:2px solid var(--bd,#111)!important;border-radius:999px!important;font-size:16px;box-shadow:none!important;flex:1;background:var(--card,#fff);color:var(--ink,#111)}
html body .tb-btn.main,html body .tb-btn.danger{background:var(--coral,#ff4458)!important;color:#fff!important;border-color:var(--coral,#ff4458)!important}
html body .tb-btn.wide{width:100%;flex:none}
html body .tb-rep input{background:rgba(0,0,0,.45)!important;color:#fff!important;border:2px solid rgba(255,255,255,.25)!important;border-radius:999px!important;box-shadow:none!important}
html body .tb-txt textarea{background:transparent!important;border:0!important;box-shadow:none!important;color:inherit!important;outline:0!important}
html body .tb-cap input,html body .tb-gf input{background:var(--card,#fff)!important;color:var(--ink,#111)!important;border:2px solid var(--bd,#111)!important;border-radius:999px!important}
html body .tb-vtabs button{background:none!important;border:0!important;box-shadow:none!important;color:#111!important;border-radius:0!important}
html body .tb-vtabs button.on{color:var(--coral,#ff4458)!important}
html body .tb-vtabs button.on[data-t=v] svg{color:var(--coral,#ff4458)}
html body .tb-cbx input{background:transparent!important;border:0!important;box-shadow:none!important;color:inherit!important}
html body .tb-comp .tb-cbx{border:2px solid var(--bd,#111);border-radius:999px;background:var(--card,#fff)}
html body .tb-in{background:var(--card,#fff)!important;color:var(--ink,#111)!important;border:2px solid var(--bd,#111)!important;border-radius:14px!important;box-shadow:none!important}
html body .tb-in.soft{background:var(--card2,#eee)!important;border-width:0 0 2px!important;border-radius:10px 10px 0 0!important}
html body .tb-lbl.ul input{background:transparent!important;border:0!important;border-bottom:2px solid var(--bd,#111)!important;border-radius:0!important;box-shadow:none!important;color:inherit!important}
:root{--tbc:var(--coral,#ff4458)}
html body .tb-send{background:var(--coral,#ff4458)!important;color:#fff!important;border:2px solid var(--bd,#111)!important;border-radius:50%!important;box-shadow:none!important;display:grid!important;place-items:center!important}
html body .tb-comp .tb-cbx input#tbCt2{background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;border-radius:0!important}
html body .tb-cb,html body .tb-ibtn,html body .tb-bm{box-shadow:none}
html body .tb-cb{background:none!important;border:0!important;color:inherit!important}
.tb-chc .gp-r,.tb-chc .gp-rt{display:flex!important;flex-wrap:nowrap!important;align-items:center}
html body .tbm .tb-clk{color:var(--ink,#111)}
html.dark body .tbm .tb-clk{background:var(--card,#1c1a12);color:var(--ink,#f5efe0)}
.tb-intro{text-align:center;padding:6px 4px 4px}.tb-introic{display:inline-grid;place-items:center;width:110px;height:110px;border-radius:50%;background:var(--coral,#ff4458);color:#fff;border:var(--bw,3px) solid var(--bd,#111);box-shadow:4px 4px 0 var(--bd,#111);margin:6px 0 14px}
.tb-intro h3{margin:0 0 16px;font-size:21px;line-height:1.35}.tb-pt2{display:flex;gap:14px;text-align:left;margin:14px 2px}.tb-pt2>svg{flex:none;margin-top:3px;color:var(--coral,#ff4458)}.tb-pt2 b{display:block;font-size:16px}.tb-pt2 small{display:block;opacity:.65;line-height:1.5;margin-top:3px;font-size:14px}
.tb-tabs{display:flex;justify-content:space-around;margin:18px -14px 0;border-bottom:2px solid var(--line,rgba(0,0,0,.15))}.tb-tabs button{flex:1;padding:14px 4px;border:0!important;background:none!important;box-shadow:none!important;font-size:16px;opacity:.6;position:relative;color:inherit}.tb-tabs button.on{opacity:1;font-weight:700}.tb-tabs button.on::after{content:'';position:absolute;left:18%;right:18%;bottom:-2px;height:4px;border-radius:3px;background:var(--coral,#ff4458)}
.tb-fol small{font-style:normal}.tb-gi .tb-blk.row small{line-height:1.5}

/* =====================================================================
   PERBAIKAN UI (rapi, presisi, konsisten). Ditaruh di akhir agar menang atas gaya global lama.
   Selektor memakai html:root:root supaya tidak kalah oleh aturan global input/textarea di dark.css/native.css.
   ===================================================================== */
/* --- ikon: selalu block + center di wadahnya (tidak miring / bergeser karena baseline inline) --- */
.tb-nic>.tb-i,.tb-fab>.tb-i,.tb-ibtn>.tb-i,.tb-send>.tb-i,.tb-cb>.tb-i,.tb-mic>.tb-i,.tb-pic>.tb-i,.tb-introic>.tb-i,.tb-micbtn>.tb-i,.tb-cam>.tb-i,.tb-plus>.tb-i,i.tb-sp>.tb-i,
.tb-vb2>.tb-i,.tb-rnd>.tb-i,.tb-rb2>.tb-i,.tb-sendfab>.tb-i,.tb-pal>.tb-i,.tb-playov>.tb-i,.tb-archic>.tb-i,.tb-qx>.tb-i,.tb-uhb button>.tb-i,.tb-up>.tb-i,.tb-del>.tb-i,.tb-sm3 i>.tb-i,.tb-act2 i>.tb-i,.tb-bm>.tb-i,.tb-ow>.tb-i,.tb-mqi>.tb-i,.gl-av>.tb-i{display:block;margin:0}
.tb-ibtn,.tb-send,.tb-cb,.tb-mic,.tb-qx,.tb-vb2,.tb-rnd,.tb-rb2,.tb-sendfab,.tb-pal,.tb-playov,.tb-micbtn,.tb-cam,.tb-plus,i.tb-sp,.tb-bm{display:grid;place-items:center;padding:0;line-height:0}
.tb-sys .tb-i{display:inline-block;vertical-align:-2px}
/* lencana + pada story punya kelas yang sama dengan teks subjudul sheet: pisahkan agar tidak ikut margin bawah */
i.tb-sp{margin:0;font-size:0;opacity:1;line-height:0}
p.tb-sp,.tb-sheet .tb-sp:not(i){margin:0 0 16px}

/* --- toolbar bawaan disembunyikan di Pembaruan; judul memakai baris polos tanpa latar --- */
.tbm.tb-noh .tb-h{display:none}
.tb-uh{position:sticky;top:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:12px;height:calc(env(safe-area-inset-top) + 60px);padding:env(safe-area-inset-top) 8px 0 16px;background:var(--paper,#fff1d6)}
.tb-uh h1{margin:0;font-size:24px;line-height:1;font-weight:700;letter-spacing:.06em}
.tb-uhb{display:flex;align-items:center;gap:2px}
html:root:root body .tb-uhb button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0!important;border-radius:50%;background:transparent!important;box-shadow:none!important;color:var(--ink,#111)}
.tb-uhb button:active{background:rgba(127,127,127,.18)!important}
.tb-upg{padding-top:2px}
.tb-upg .tb-h2{margin:0;font-size:22px;line-height:1.2}
.tb-upg>.tb-h2:first-child{margin:4px 0 12px}

/* --- kartu status: baris horizontal, ukuran tetap --- */
.tb-strow{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;margin:0 -16px;padding:2px 16px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tb-strow::-webkit-scrollbar{display:none}
.tb-scard{position:relative;flex:none;width:104px;height:176px;display:block;padding:0;border:0;border-radius:18px;box-shadow:none;background:var(--card2,#2d2d3a);color:#fff;overflow:hidden;text-align:left;isolation:isolate}
.tb-scard::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,.28) 0,transparent 34%,transparent 52%,rgba(0,0,0,.72) 100%);pointer-events:none}
.tb-scard.me{background:linear-gradient(180deg,#38405a,#1a1d29)}
.tb-scard:active{transform:scale(.98)}
.tb-scard .tb-sring{position:absolute;z-index:2;top:8px;left:8px;width:42px;height:42px;padding:2px;border-width:3px;background:transparent}
.tb-scard .tb-sring .gl-av{width:100%;height:100%;border-width:0;font-size:16px}
.tb-scard .tb-sring.none{border-color:var(--acc,#ffd83d)}
.tb-scard .tb-plus{right:-5px;bottom:-5px;width:20px;height:20px;border-width:2px}
.tb-scard b{position:absolute;z-index:2;left:10px;right:8px;bottom:9px;font-size:13px;line-height:1.2;font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tb-sprev{position:absolute;inset:0;z-index:0;display:grid;place-items:center;padding:56px 10px 36px;margin:0;font-style:normal;font-size:15px;line-height:1.3;text-align:center;color:#fff;word-break:break-word;overflow:hidden}
.tb-sprev.dk{color:#111}
.tb-sprev .tb-i{display:block}

/* --- daftar saluran: baris datar (tanpa kartu besar) --- */
.tb-h2row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 6px;min-height:40px}
.tb-upg .tb-h3{margin:14px 0 4px;font-size:14px;line-height:1.3;opacity:.62;font-weight:400}
html:root:root body .tb-jel{display:inline-grid;place-items:center;height:36px;min-width:84px;padding:0 18px;border:0!important;border-radius:999px;background:var(--card2,rgba(127,127,127,.2))!important;box-shadow:none!important;color:var(--ink,#111);font-size:15px}
.tb-clist{display:flex;flex-direction:column}
.tb-crow{display:flex;align-items:center;gap:14px;min-height:68px;padding:10px 0;cursor:pointer;-webkit-tap-highlight-color:rgba(127,127,127,.15)}
.tb-crow:active{background:rgba(127,127,127,.1)}
.tb-crow .gl-av{width:48px;height:48px;flex:none;border:0;background-color:var(--pinkbox,#ffe3e7);color:var(--coral,#ff4458)}
.tb-crow .gl-av .tb-i{width:22px;height:22px}
.tb-cbd{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.tb-c1,.tb-c2{display:flex;align-items:center;gap:8px;min-width:0}
.tb-cnm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:700;line-height:1.25}
.tb-c1 time{margin-left:auto;flex:none;font-size:12px;opacity:.55}
.tb-c1 .tb-tag{flex:none;padding:1px 7px;border:0;border-radius:6px;background:var(--coral,#ff4458);color:#fff;font-size:10px;line-height:16px;letter-spacing:.06em}
.tb-clast{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;opacity:.62}
.tb-c2 .tb-un{margin-left:auto}
html:root:root body .tb-crow .tb-mini{flex:none;height:34px;padding:0 18px;border:0!important;border-radius:999px;background:var(--pinkbox,#ffd9dd)!important;color:var(--coral,#ff4458)!important;font-size:14px;box-shadow:none!important}
.tb-crow .tb-mini:disabled{opacity:.5}

/* --- FAB: ukuran & posisi seragam, anak tombol muncul dari tombol utama --- */
.tb-fab.mini{position:static;width:46px;height:46px;border-radius:15px;box-shadow:3px 3px 0 var(--bd,#111)}
.tb-fab.mini .tb-i{width:22px;height:22px}
.tb-fabg{position:absolute;inset:0;z-index:7;pointer-events:none}
.tb-fabg.hide{display:none}
.tb-fabscrim{position:absolute;inset:0;background:rgba(0,0,0,.38);opacity:0;transition:opacity .2s}
.tb-fabg.open{pointer-events:auto}.tb-fabg.open .tb-fabscrim{opacity:1}
.tb-fabcol{position:absolute;right:16px;bottom:calc(var(--tb-nav-h,76px) + 16px);display:flex;flex-direction:column;align-items:center;gap:12px;width:58px;pointer-events:none}
.tb-fabcol>*{pointer-events:auto}
.tb-fabcol .mini{opacity:0;transform:translateY(16px) scale(.6);pointer-events:none;transition:opacity .18s,transform .22s cubic-bezier(.3,1.3,.5,1)}
.tb-fabg.open .mini{opacity:1;transform:none;pointer-events:auto}
.tb-fabg.open .mini:nth-child(3){transition-delay:.02s}.tb-fabg.open .mini:nth-child(2){transition-delay:.05s}.tb-fabg.open .mini:nth-child(1){transition-delay:.08s}
.tb-fabcol .tb-fab:not(.mini){position:static;order:9}
.tb-fabg.open #tbFabUm svg{transform:rotate(45deg)}
body.noanim .tb-fabcol .mini,body.noanim .tb-fabscrim{transition:none}

/* --- popover ⋮ --- */
.tb-popw{position:fixed;inset:0;z-index:330}
.tb-popscrim{position:absolute;inset:0}
.tb-pop{position:absolute;min-width:236px;max-width:calc(100vw - 16px);padding:6px 0;border-radius:14px;background:var(--sheet,#fff);color:var(--ink,#111);border:2px solid var(--bd,#111);box-shadow:4px 4px 0 var(--bd,#111);transform-origin:top right;opacity:0;transform:scale(.92);transition:opacity .12s,transform .14s}
.tb-popw.in .tb-pop{opacity:1;transform:none}
html:root:root body .tb-pop button{display:block;width:100%;min-height:48px;padding:0 18px;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;color:inherit;font:inherit;font-size:15px;text-align:left}
.tb-pop button:active{background:rgba(127,127,127,.16)!important}
html.dark .tb-pop{background:var(--sheet,#1c1a12)}

/* --- pembuat status: kanvas polos, kolom ketik TANPA kotak/latar --- */
html:root:root body #tbT,html:root:root body .tb-txt textarea{display:block;width:100%;min-height:44px;max-height:50vh;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;background-color:transparent!important;-webkit-appearance:none;appearance:none;color:inherit!important;-webkit-text-fill-color:currentColor;caret-color:currentColor;font:700 28px/1.3 var(--ff,monospace)!important;text-align:center;resize:none;overflow:hidden}
html:root:root body .tb-txt textarea::placeholder{color:currentColor!important;-webkit-text-fill-color:currentColor!important;opacity:.55!important;font-weight:700!important;font-family:inherit!important}
.tb-txt small{left:20px;bottom:18px}
.tb-cv .tb-sendfab,.tb-sendfab{right:18px;bottom:18px;width:58px;height:58px}
.tb-pal{display:grid;place-items:center;top:16px;right:16px;width:46px;height:46px;padding:0}
/* bar privasi + tab bawah rata */
.tb-cbar{min-height:60px;padding:10px 16px}
.tb-cbar .tb-chip2{height:40px;padding:0 14px;line-height:1}
.tb-rpl{cursor:pointer}.tb-rpl input{width:18px;height:18px;margin:0 8px 0 0;accent-color:var(--tbc)}
.tb-ctabs button{height:60px;justify-content:center;padding:0}

/* --- viewer status: bar bawah milik sendiri, daftar Dilihat/Suka selalu terbaca --- */
.tb-vw,.tb-stage{touch-action:none}
.tb-own{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom) + 14px);height:52px;margin:0}
.tb-own .tb-ow{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:16px;margin-right:16px}
.tb-own>div{display:flex;align-items:center}
.tb-own .tb-ow b{font-weight:700}
.tb-own .tb-ow.hrt svg{color:#2fb877;fill:#2fb877;stroke:#2fb877}
html:root:root body .tb-own .tb-up,html:root:root body .tb-own .tb-del{display:grid;place-items:center;width:48px;height:48px;margin:0;padding:0;border:0!important;border-radius:50%;background:transparent!important;color:#fff!important;box-shadow:none!important}
html:root:root body .tb-own .tb-del{justify-self:end;background:rgba(0,0,0,.4)!important}
html:root:root body .tb-own .tb-up{justify-self:center}
.tb-own .tb-up svg{animation:tbNudge 1.6s ease-in-out infinite}
@keyframes tbNudge{50%{transform:translateY(-4px)}}
body.noanim .tb-own .tb-up svg{animation:none}

/* --- saluran: latar chat polos, bubble selebar layar dengan margin aman, kartu intro diperkecil --- */
html body .gp.chat.tb-chc,html body .gp.chat.tb-chc .gp-body{background:var(--paper,#fff1d6)}
html body .gp.chat.tb-chc .ch-list.tb-cl,html body .gp.chat.tb-chc .tb-cl{background:transparent!important;background-image:none!important;max-width:none;width:100%;margin:0;gap:8px;padding:12px 16px 16px;overflow-x:hidden}
html[data-tbw] body .gp.chat.tb-chc .ch-list,html[data-tbw] .gp.chat.tb-chc .ch-list.tb-cl{background:transparent!important;background-image:none!important}
.tb-cl>*{flex:none;min-width:0}
.tb-bub{align-self:stretch;box-sizing:border-box;width:100%;max-width:100%;min-width:0;overflow:hidden;padding:10px 14px 7px;border-radius:14px;box-shadow:2px 2px 0 var(--bd,#111)}
.tb-bub p{padding-right:18px;overflow-wrap:anywhere}
.tb-bub .tb-pim{min-width:0;width:100%}
.tb-bub .tb-pim img{width:100%;height:auto}
.tb-sys{max-width:100%;box-sizing:border-box;padding:7px 12px;font-size:12.5px;line-height:1.45;box-shadow:none}
.tb-dev{box-sizing:border-box;max-width:100%;width:100%;padding:14px 14px 16px;gap:8px;border-width:2px;border-radius:18px;box-shadow:none}
.tb-dev .gl-av{width:64px;height:64px}
.tb-dev b{font-size:16px;line-height:1.3}
.tb-dev .tb-outl{padding:0 12px;min-height:44px;font-size:14px}
.tb-dev .tb-lk{font-size:14px;padding:2px}
.tb-comp{padding:8px 12px calc(env(safe-area-inset-bottom) + 8px)}
.tb-cbx{min-height:50px;padding:4px 4px 4px 6px}
.tb-send{width:42px;height:42px;flex:none}
.tb-cb{width:40px;height:40px;flex:none}

/* --- izin & lainnya --- */
.tb-ps{font-weight:700;opacity:1!important}.tb-ps.granted{color:#2fb877}.tb-ps.denied{color:var(--coral,#ff4458)}
.tb-card.sto{gap:12px;padding:12px 14px;box-shadow:3px 3px 0 var(--bd,#111)}
.tb-pic{width:32px;height:32px;flex:none}
.tb-mic{width:44px;height:44px}

/* --- warna tombol: menang atas aturan global button (color:inherit pada .tbm, .mini global, dll) --- */
html:root:root body .tb-fab,html:root:root body .tb-fab.mini{background:var(--coral,#ff4458)!important;color:#fff!important;border:var(--bw,3px) solid var(--bd,#111)!important;border-radius:18px!important;padding:0!important}
html:root:root body .tb-fab.mini{border-radius:15px!important;width:46px;height:46px;min-width:0;min-height:0;box-shadow:3px 3px 0 var(--bd,#111)}
html:root:root body .tb-fab svg{color:#fff;stroke:#fff}
.tb-scard{background:#23232d}
.tb-sprev{z-index:2}
/* viewer status: teks header & angka selalu putih di atas latar status */
html:root:root body .tb-sv .tb-vh,html:root:root body .tb-sv .tb-vn b,html:root:root body .tb-sv .tb-vn small,html:root:root body .tb-sv .tb-own,html:root:root body .tb-sv .tb-own b,html:root:root body .tb-sv .tb-own span{color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.35)}
html:root:root body .tb-sv .tb-vn small{opacity:.85}
html:root:root body #tbT,html:root:root body .tb-txt textarea{font-size:24px!important}
/* kolom input di dalam pil/kapsul: tanpa kotak kedua. :is(#tbm,…) memberi bobot ID sehingga menang atas aturan global input (theme.css, native.css, theme3d.css) */
html:root :is(#tbm,.gp,.tb-shw) :is(.tb-sr,.tb-cbx,.tb-fl) :is(input,textarea){border:0!important;border-radius:0!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;outline:0!important;padding:0!important;margin:0!important;height:auto!important;min-height:0!important;width:100%;color:inherit!important;-webkit-text-fill-color:currentColor;font:inherit!important;font-size:16px!important}
html:root :is(#tbm,.gp,.tb-shw) .tb-sr :is(input)::placeholder{color:currentColor!important;-webkit-text-fill-color:currentColor!important;opacity:.55!important}
html:root :is(#tbm,.gp,.tb-shw) :is(.tb-cap,.tb-gf,.tb-rep) input{border-radius:999px!important}
html:root :is(#tbm,.gp,.tb-shw) .tb-lbl.ul input{border:0!important;border-bottom:2px solid var(--bd,#111)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;padding:10px 48px 10px 0!important;margin:2px 0 0!important;height:auto!important;min-height:0!important;width:100%;color:inherit!important;font:inherit!important;font-size:16px!important}

/* ===== margin pas: konten penuh lebar, satu lapis padding ===== */
.tb-pad{width:100%;max-width:640px;margin:0 auto;box-sizing:border-box}
.gp-body>.tb-pad{align-self:stretch;margin:0 -16px;width:calc(100% + 32px);max-width:none;padding-left:16px;padding-right:16px}
.gp-body>.tb-pad>*{max-width:100%}

/* sheet mengikuti tema terang/gelap */
html:root body .tb-sheet{background:var(--sheet,#fff)!important;color:var(--ink,#111)!important}
html:root body .tb-sheet.vs{min-height:52vh;padding:8px 0 calc(env(safe-area-inset-bottom) + 12px)}
html:root body .tb-sheet .tb-vr b,html:root body .tb-sheet .tb-vtabs button{color:var(--ink,#111)!important}
html:root body .tb-sheet .tb-vtabs button.on{color:var(--coral,#ff4458)!important}
html:root body .tb-sheet .tb-vr small,html:root body .tb-sheet .tb-empty{color:var(--ink,#111)!important;opacity:.65}
html.dark .tb-grab{background:#555}

/* dialog tengah (konfirmasi / isian) */
.tb-dlw{position:fixed;inset:0;z-index:320;display:grid;place-items:center;padding:24px;pointer-events:none;font-family:var(--ff,'Share Tech Mono',monospace)}
.tb-dlw .tb-scrim{opacity:0;transition:opacity .2s}
.tb-dlw.in{pointer-events:auto}.tb-dlw.in .tb-scrim{opacity:1}
.tb-dlg{position:relative;width:100%;max-width:360px;background:var(--sheet,#fff);color:var(--ink,#111);border:var(--bw,3px) solid var(--bd,#111);border-radius:22px;box-shadow:6px 6px 0 var(--bd,#111);padding:20px 18px 16px;transform:scale(.9);opacity:0;transition:transform .2s cubic-bezier(.2,1.2,.4,1),opacity .2s}
.tb-dlw.in .tb-dlg{transform:none;opacity:1}
.tb-dlg h3{margin:0 0 8px;font-size:19px;letter-spacing:.03em}
.tb-dlg p{margin:0 0 16px;font-size:15px;line-height:1.5;opacity:.75}
.tb-dlg .tb-in{margin:6px 0 16px}
.tb-dlg .tb-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
body.noanim .tb-dlg,body.noanim .tb-dlw .tb-scrim{transition:none}

/* audio status ala WhatsApp: avatar bulat + gelombang + waktu */
.tb-sau{width:100%;padding:0 28px;gap:22px;opacity:1}
.tb-sav{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 0 0 10px rgba(37,211,102,.18)}
.tb-sav svg{display:block}
.tb-wave{display:flex;align-items:center;gap:3px;height:64px;width:100%;max-width:320px}
.tb-wave i{flex:1;min-width:2px;border-radius:2px;background:rgba(255,255,255,.35);transition:background .15s}
.tb-wave i.on{background:#25d366}
.tb-sau small{font-size:15px;color:#fff;opacity:.85;font-variant-numeric:tabular-nums}

/* ===== pembuat status layar penuh ===== */
.tb-cmx .gp-h{display:none!important}
.tb-cmx .gp-body,.tb-cmx{padding:0!important;max-width:none!important;gap:0!important;background:#000!important}
.cx{position:absolute;inset:0;display:flex;flex-direction:column;color:#fff;overflow:hidden;font-family:var(--ff,monospace)}
.cx-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.cx-stage img,.cx-stage video{width:100%;height:100%;object-fit:contain;background:#000}
.cx-top{position:absolute;z-index:6;top:0;left:0;right:0;display:flex;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top) + 10px) 12px 24px;background:linear-gradient(rgba(0,0,0,.5),transparent)}
.cx-sp{flex:1}
html:root body .cx button,html:root body .cx label{color:#fff!important}
html:root body .cx .cx-ib{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;padding:0;border:0!important;background:rgba(0,0,0,.35)!important;box-shadow:none!important}
.cx .cx-ib svg{display:block}.cx .hide{display:none!important}
html:root body .cx .cx-chip{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:99px;border:0!important;background:rgba(0,0,0,.4)!important;box-shadow:none!important;font-size:14px;cursor:pointer}
.cx-chip input{display:none}.cx-chip:has(input:checked){outline:2px solid #25d366}
.cx-modes{position:absolute;z-index:6;left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 84px);display:flex;justify-content:center;gap:8px}
html:root body .cx-modes button{height:34px;padding:0 16px;border-radius:99px;border:0!important;background:rgba(0,0,0,.4)!important;box-shadow:none!important;font-size:14px}
html:root body .cx-modes button.on{background:#fff!important;color:#111!important}
.cx-bot{position:absolute;z-index:6;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:24px 12px calc(env(safe-area-inset-bottom) + 12px);background:linear-gradient(transparent,rgba(0,0,0,.55))}
.cx[data-t=text] .cx-bot{justify-content:space-between}
.cx-cap{flex:1;min-width:0;display:flex;align-items:center;height:48px;border-radius:99px;background:rgba(0,0,0,.45);padding:0 16px;gap:8px}
html:root:root .cx .cx-cap input{flex:1;min-width:0;height:100%;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:#fff!important;font-size:16px;padding:0!important;margin:0!important;border-radius:0!important}
.cx-cap input::placeholder{color:rgba(255,255,255,.7)}.cx-cap small{opacity:.7;font-size:12px}
html:root body .cx .cx-send{flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;padding:0;border:0!important;background:#25d366!important;box-shadow:0 2px 8px rgba(0,0,0,.35)!important;margin-left:auto}
.cx .cx-send svg{display:block;margin-left:2px}.cx-send.busy{opacity:.5}
.cx-stage textarea{width:100%;max-width:520px;margin:0 auto;display:block;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;resize:none;text-align:center;color:#fff!important;font:700 32px/1.3 var(--ff,monospace);padding:20px 28px!important;border-radius:0!important;overflow:hidden}
.cx-stage.dk textarea{color:#111!important}.cx-stage textarea::placeholder{color:rgba(255,255,255,.7)}.cx-stage.dk textarea::placeholder{color:rgba(0,0,0,.5)}
.cx-stage>small{position:absolute;right:18px;bottom:calc(env(safe-area-inset-bottom) + 150px);opacity:.7;font-size:13px}
.cx-pick{display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff}
html:root body .cx-big{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;padding:0;border:0!important;background:#25d366!important;box-shadow:none!important}
.cx-pick small{opacity:.7}
html:root body .cx .cx-change{position:absolute;z-index:5;left:50%;translate:-50% 0;bottom:calc(env(safe-area-inset-bottom) + 134px);height:34px;padding:0 16px;border-radius:99px;border:0!important;background:rgba(0,0,0,.5)!important}
.cx-aud{width:100%;max-width:420px;padding:0 24px;display:flex;flex-direction:column;align-items:center;gap:18px}
.cx-tm{font-size:44px;font-variant-numeric:tabular-nums;letter-spacing:.05em}
.cx-aud canvas{width:100%;height:84px}
.cx-hint{opacity:.7;font-size:14px;text-align:center}
.cx-rrow{display:flex;justify-content:center;min-height:96px}
html:root body .cx-mic{width:88px;height:88px;border-radius:50%;display:grid;place-items:center;padding:0;border:0!important;background:#25d366!important;box-shadow:0 0 0 10px rgba(37,211,102,.2)!important}
html:root body .cx-mic.rec{background:#ff4458!important;box-shadow:0 0 0 10px rgba(255,68,88,.25)!important;animation:cxPulse 1.2s ease-in-out infinite}
@keyframes cxPulse{50%{box-shadow:0 0 0 20px rgba(255,68,88,.05)}}
body.noanim .cx-mic.rec{animation:none}
.cx-pv{width:100%;display:flex;align-items:center;gap:10px;background:#1f2c34;border-radius:99px;padding:8px 12px 8px 8px}
html:root body .cx-play{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;padding:0;border:0!important;background:#25d366!important;box-shadow:none!important}
.cx-play svg{display:block}
.cx-seek{flex:1;display:flex;align-items:center;gap:2px;height:36px;cursor:pointer}
.cx-seek i{flex:1;min-width:2px;border-radius:2px;background:rgba(255,255,255,.35)}.cx-seek i.on{background:#25d366}
.cx-pv>span{font-size:13px;font-variant-numeric:tabular-nums;opacity:.85}
html:root body .cx-del{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;padding:0;border:0!important;background:rgba(255,255,255,.1)!important;box-shadow:none!important}

/* ===== performa & kehalusan: ringan di HP biasa ===== */
.tb-row,.tb-strow,.tb-scard,.tb-crow{contain:layout paint style}
.tb-list{content-visibility:auto;contain-intrinsic-size:auto 72px}
.tb-scr{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.tb-sheet,.tb-dlg,.gp,.tb-fab,.tb-pop{will-change:transform;backface-visibility:hidden}
.tb-shw .tb-scrim,.tb-dlw .tb-scrim{backdrop-filter:none!important}
button,.tb-row,.tb-pi,.tb-mi{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.tb-row:active,.tb-pi:active,.tb-mi:active{transform:scale(.985);transition:transform .08s}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
html:root:root body #cx .cx-stage textarea{background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;color:#fff!important;border-radius:0!important}
html:root:root body #cx .cx-stage.dk textarea{color:#111!important}
html:root:root body #cx .cx-chip span,html:root:root body #cx .cx-chip{color:#fff!important}
html:root:root body #cx .cx-cap input,html:root:root body #cx .cx-cap input:focus{background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;color:#fff!important;border-radius:0!important;height:100%!important;padding:0!important;margin:0!important;min-width:0}
html:root:root body #cx .cx-pick b,html:root:root body #cx .cx-pick small,html:root:root body #cx .cx-hint,html:root:root body #cx .cx-tm{color:#fff!important}
