/* One button system for ThirstCheck. Loaded last so it wins over older per-page rules.
   Primary: brand gradient. Secondary: dark surface + hairline. Ghost/icon: round, quiet. */
:root{--b-h:44px;--b-h-lg:52px;--b-r:999px;--b-px:18px;--b-fs:14.5px;--b-sec:var(--card2,var(--card));--b-sec-h:color-mix(in srgb,var(--card2,var(--card)) 88%,var(--text));--b-line:var(--line);--b-ring:0 0 0 3px rgba(var(--acrgb,255,106,61),.45)}
.btn,.acctb,.sm,.tcb,.tcp-b,#tlab .go,#tlab .chip,#tlab .tabs button,#tlab .libbtn,#tcm .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--b-h);padding:0 var(--b-px);border-radius:var(--b-r);font-family:var(--fd,inherit);font-size:var(--b-fs);font-weight:700;letter-spacing:.01em;line-height:1.1;white-space:nowrap;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,filter .2s ease;user-select:none}
.btn svg,.acctb svg,.sm svg,.tcb svg,.tcp-b svg,#tlab .go svg{width:18px;height:18px;flex:none}
/* primary */
.btn,.acctb.pri,.tcb-pri,#tlab .go{background:var(--heat,linear-gradient(135deg,#FF7A2F,#E0367A));color:#fff;border:0;box-shadow:0 6px 18px -6px rgba(var(--acrgb,255,106,61),.55),inset 0 1px 0 rgba(255,255,255,.18)}
.btn:hover,.acctb.pri:hover,.tcb-pri:hover,#tlab .go:hover{transform:none;filter:brightness(1.07);box-shadow:0 8px 24px -6px rgba(var(--acrgb,255,106,61),.7),inset 0 1px 0 rgba(255,255,255,.2)}
/* secondary */
.btn.ghost,.acctb,.sm,.tcb-sec,.tcp-b,#tlab .go.ghost,#tlab .chip,#tlab .tabs button,#tlab .libbtn{background:var(--b-sec);color:var(--text);border:1px solid var(--b-line);box-shadow:none;filter:none}
.btn.ghost:hover,.acctb:hover,.sm:hover,.tcb-sec:hover,.tcp-b:hover,#tlab .go.ghost:hover,#tlab .chip:hover,#tlab .tabs button:hover,#tlab .libbtn:hover{background:var(--b-sec-h);border-color:rgba(var(--acrgb,255,106,61),.55);filter:none;box-shadow:none}
.sm{min-height:36px;padding:0 14px;font-size:13px;font-weight:650}
#tlab .tabs button.on,#tlab .chip.on{background:var(--heat,var(--ac));color:#fff;border-color:transparent;box-shadow:none}
.tcp-b.on{color:#ff4d79;border-color:rgba(255,77,121,.5)}
.tcp-b.dng,.sm.dng{color:#F87171}
/* pressed / focus / disabled */
.btn:active,.acctb:active,.sm:active,.tcb:active,.tcp-b:active,#tlab .go:active,#tlab .chip:active,#tlab .tabs button:active,.rb2:active,#tlab .x:active,#tlab .ptile:active{transform:scale(.97)}
.btn:focus-visible,.acctb:focus-visible,.sm:focus-visible,.tcb:focus-visible,.tcp-b:focus-visible,#tlab .go:focus-visible,#tlab .chip:focus-visible,#tlab .tabs button:focus-visible,.rb2:focus-visible,#tlab .x:focus-visible,#tlab .ptile:focus-visible,#tlab .ptile:focus-within{outline:none;box-shadow:var(--b-ring)}
.btn:disabled,.tcb:disabled,#tlab .go:disabled{opacity:.55;cursor:not-allowed;transform:none;filter:saturate(.6)}
/* icon buttons */
.rb2,#tlab .x{width:var(--b-h);height:var(--b-h);border-radius:50%;background:var(--b-sec);border:1px solid var(--b-line);color:var(--text);display:inline-grid;place-items:center;padding:0;font-size:20px;line-height:1;transition:transform .12s ease,background-color .2s ease}
.rb2:hover,#tlab .x:hover{background:var(--b-sec-h)}
/* header: one compact row on phones */
nav .acctw{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.acctb{min-height:38px;padding:0 14px;font-size:13.5px}
.acctb.crchip{padding:0 12px 0 6px;gap:6px}
.acctb.crchip .tcc img{width:24px;height:24px;display:block}
.acctb.me{padding:0 14px 0 4px;gap:0}
.acctb.me .avx{width:30px!important;height:30px!important;margin-right:8px!important}
@media(max-width:640px){
  nav:not(.fl){flex-wrap:nowrap!important}
  nav .acctw,.dr .acctw{gap:6px;flex-wrap:nowrap!important}
  .acctw .hm{display:none!important}
  .acctb.me{width:38px;height:38px;min-height:38px;padding:0!important;border-radius:50%}
  .acctb.me .un{display:none}
  .acctb.me .avx{margin:0!important}
  .acctb{min-height:38px;padding:0 12px!important;font-size:13px!important}
  .acctb.crchip{padding:0 10px 0 4px!important}
}
/* account sheet quick links */
.tc-qk{display:flex;gap:8px;margin:4px 0 14px}.tc-qk .tcb{flex:1}
/* Thirst Lab: photo source tiles */
#tlab .you{display:flex;gap:10px;align-items:stretch}
#tlab .ptiles{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#tlab .ptile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:96px;padding:12px 6px;border-radius:16px;background:var(--b-sec);border:1px solid var(--b-line);color:var(--text);font:700 12.5px/1.2 var(--fd,inherit);text-align:center;cursor:pointer;transition:transform .12s ease,background-color .2s ease,border-color .2s ease;-webkit-tap-highlight-color:transparent}
#tlab .ptile:hover{background:var(--b-sec-h);border-color:rgba(var(--acrgb,255,106,61),.55)}
#tlab .ptile svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:var(--ac2,var(--ac))}
#tlab .ptile span{white-space:normal}
#tlab .thumb{height:auto;min-height:96px}
#tlab .sec h3{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#tlab .tc-face-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;background:rgba(var(--acrgb,255,106,61),.16);color:var(--ac2,var(--ac));border:1px solid rgba(var(--acrgb,255,106,61),.35)}
#tlab .dock .go:not(.ghost){min-height:var(--b-h-lg);font-size:16.5px}
#tlab .dock .idea .go{min-height:40px;padding:0 14px;font-size:13.5px}
@media(prefers-reduced-motion:reduce){.btn,.acctb,.sm,.tcb,.tcp-b,#tlab .go,#tlab .ptile{transition:none}}
#tlab .ptiles>.ptile{box-sizing:border-box;margin:0;height:100%;min-height:104px;align-self:stretch;vertical-align:top;flex:none;width:auto}
