/* The Upper Room polish, piece 5e. Dividers: 28 rules taken from the site's own styles.
   Tune here: --hair-w is line thickness, --hair-mix is how much of the old color remains. */
:root{--hair-w:.5px;--hair-mix:62%}
.tabs{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.snz{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.post{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.sh-hd{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.dr-hr{height:var(--hair-w);background-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.upl{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.undo-row{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.mhr{height:var(--hair-w);background-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.cmp-ft{border-top-width:var(--hair-w);border-top-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.prof{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.ptabs{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.srow{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.skel{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.net{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.cz-tb{border-top-width:var(--hair-w);border-top-color:color-mix(in srgb,#2f3336 var(--hair-mix),transparent)}
.czp{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,#2f3336 var(--hair-mix),transparent)}
.pv-hd{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.pv-bar{border-top-width:var(--hair-w);border-top-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent);border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.pv-q{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.rp{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.pv-spin.rp{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.pv-cz{border-top-width:var(--hair-w);border-top-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.ts-sheet{border-top-width:var(--hair-w);border-top-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.qc-m{border-top-width:var(--hair-w);border-top-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.qz-hd{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.qz-tags{border-top-width:var(--hair-w);border-top-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.qv-tabs{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
.qv-card{border-bottom-width:var(--hair-w);border-bottom-color:color-mix(in srgb,var(--line) var(--hair-mix),transparent)}
/* ---- no scrollbars anywhere in the Upper Room (touch, wheel and trackpad scrolling still work) ---- */
*{scrollbar-width:none}
*::-webkit-scrollbar{display:none;width:0;height:0;background:transparent}
.pv-sc{overscroll-behavior:contain}
/* ---- press feel ---- */
button,a,label,[role="button"]{-webkit-tap-highlight-color:transparent}
.act .ic,.rp-acts button svg{transition:transform .12s ease}
.act:active .ic,.rp-acts button:active svg{transform:scale(.88)}
/* ---- Hide replies ---- */
.rp-hx{display:block}
.rp-hx .rp-tog{display:inline-flex;align-items:center;gap:3px;background:none;border:0;padding:6px 0;margin:2px 0 4px;color:var(--blue,#1D9BF0);font:inherit;font-weight:700;cursor:pointer}
.rp-hx .rp-tog svg{width:16px;height:16px;flex:none}
.rp.folded>.rp-m>.rp-hx{display:none}
.rp-sub.rp-anim{transition:height .28s cubic-bezier(.2,.8,.2,1),opacity .22s ease;will-change:height}
.rp-sub[data-hx="shut"]:not(.rp-anim){display:none!important}
.rp-flash{animation:rpflash .9s ease}
@keyframes rpflash{0%{background:rgba(255,255,255,.06)}100%{background:transparent}}
/* ---- haptics check (/room/#haptics) ---- */
.hx-test{position:fixed;inset:0;z-index:96;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:24px}
.hx-card{width:min(360px,100%);background:#16181c;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:20px;color:#e7e9ea;display:grid;gap:14px;font-size:15px}
.hx-card b{font-size:18px}
.hx-card p{margin:0;color:#8b98a5}
.hx-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.hx-row input{all:revert}
.hx-go,.hx-x{appearance:none;-webkit-appearance:none;border:0;border-radius:999px;padding:12px 16px;font:inherit;font-weight:700;cursor:pointer}
.hx-go{background:#e7e9ea;color:#0f1419}
.hx-x{background:transparent;color:#e7e9ea;border:1px solid rgba(255,255,255,.2)}
@media (prefers-reduced-motion:reduce){.rp-flash{animation:none}.act:active .ic,.rp-acts button:active svg{transform:none}}
