/* Kolom ketik di semua chat memakai satu rupa: bar transparan, kolom ber-garis tebal berlatar transparan, tombol bulat aksen. */
html:root:root body :is(.ch-in,.tb-gf,.tb-comp:not(.fol),.mx-bar){background:transparent!important;border-top:0!important;box-shadow:none!important;
  padding:8px 10px calc(env(safe-area-inset-bottom,0px) + 10px)!important;position:relative;z-index:2}
html:root:root body :is(.ch-in,.tb-gf,.mx-bar){display:flex;align-items:center!important;gap:8px}
html:root:root body :is(.gp.chat .ch-in textarea,.gp.chat .ch-in textarea:focus,.tb-gf input,.tb-gf input:focus,.tb-comp .tb-cbx,.mx-field){
  background:transparent!important;border:var(--bw,3px) solid var(--bd,#111)!important;border-radius:26px!important;box-shadow:none!important;
  color:var(--ink,#111)!important;min-height:48px;font-size:16px}
html:root:root body .tb-comp .tb-cbx{display:flex;align-items:center;gap:4px;padding:0 4px 0 6px}
html:root:root body .tb-comp .tb-cbx input#tbCt2{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;min-height:44px}
html:root:root body :is(.ch-in textarea,.tb-gf input,.tb-comp input,.mx-field textarea)::placeholder{color:var(--ink,#111);opacity:.5}
html:root:root body :is(.ch-in .ch-send,.ch-in .ch-mic,.tb-gf .tb-send,.tb-comp .tb-send,.mx-act){
  flex:none;width:46px;height:46px;border-radius:50%!important;border:var(--bw,3px) solid var(--bd,#111)!important;background:var(--acc,#ffd83d)!important;color:#111!important;padding:0;box-shadow:2px 2px 0 var(--bd,#111)!important}
html:root:root body :is(.ch-in .ch-send,.ch-in .ch-mic,.tb-gf .tb-send,.tb-comp .tb-send,.mx-act):active{translate:2px 2px;box-shadow:0 0 0 var(--bd,#111)!important}
html:root:root body .tb-comp .tb-send{width:42px;height:42px}

/* latar jendela (kiri/kanan keyboard) ikut warna halaman yang sedang terbuka */
html:has(.gp){background:var(--paper,#fff1d6)!important}
html,body{overscroll-behavior-y:contain}
/* halaman penuh ikut tinggi area yang kelihatan, jadi kolom ketik naik bersama keyboard */
html.kb .gp{top:var(--vvt,0px);bottom:auto;height:var(--vvh,100dvh)}

/* tarik-untuk-refresh */
#ptr{position:fixed;left:50%;top:0;z-index:400;width:42px;height:42px;margin-left:-21px;border-radius:50%;display:grid;place-items:center;
  background:var(--acc,#ffd83d);color:#111;border:var(--bw,3px) solid var(--bd,#111);box-shadow:2px 2px 0 var(--bd,#111);
  transform:translateY(-70px);opacity:0;pointer-events:none;will-change:transform}
#ptr svg{width:22px;height:22px;transition:transform .15s}
#ptr.spin svg{animation:ptrSpin .8s linear infinite}
#ptr.snap{transition:transform .28s cubic-bezier(.3,1.3,.5,1),opacity .2s}
@keyframes ptrSpin{to{transform:rotate(360deg)}}
body.noanim #ptr.spin svg{animation:none}
