/* TechBullion Payments brand layer (1.10.38).
   Source: TechBullion Brand Guidelines, September 2026, Product pages 26 to 29.
   Loaded after the compiled stylesheets. Tokens first; nothing below hard-codes a colour that has a token. */
:root{
  --tb-navy:#002F56;--tb-header-navy:#104561;--tb-night-navy:#001A2E;--tb-link:#22698F;--tb-sky:#66CCFF;
  --tb-gold:#FFC45C;--tb-gold-hover:#CC9D4A;--tb-gold-pressed:#997637;
  --tb-canvas:#F3F6F8;--tb-surface:#FFFFFF;--tb-line:#E4E8ED;--tb-line-strong:#D2D9E1;--tb-ground:#EFEFEF;
  --tb-text:#131A21;--tb-muted:#596672;
  --tb-ok:#1F7A4D;--tb-ok-wash:#E6F4EA;--tb-warn:#B7791F;--tb-warn-wash:#FFF4DB;--tb-bad:#A52B22;--tb-bad-wash:#FBE9E7;--tb-info-wash:#E8F0F6;--tb-neutral-wash:#EFEFEF;
  --tb-radius-sm:6px;--tb-radius:8px;--tb-radius-lg:10px;--tb-radius-xl:12px;
}

/* ---- Buttons: rounded rectangles, radius one sixth of height. Standard 48/8, small 36/6, large 60/10. ---- */
.tb-contributor-primary-btn,.tb-contributor-secondary-btn,.tb-btn-gold{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;min-width:120px;padding:0 24px;border-radius:var(--tb-radius);
  font-size:15px;font-weight:600;line-height:1.2;letter-spacing:0;text-decoration:none;box-shadow:none;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease;cursor:pointer;
}
.tb-contributor-primary-btn{background-color:var(--tb-navy);border:1px solid var(--tb-navy);color:#fff}
.tb-contributor-primary-btn:hover:not(:disabled){background-color:var(--tb-header-navy);border-color:var(--tb-header-navy);color:#fff}
.tb-contributor-primary-btn:active:not(:disabled){background-color:var(--tb-night-navy);border-color:var(--tb-night-navy)}
.tb-contributor-secondary-btn{background-color:var(--tb-surface);border:1px solid var(--tb-line-strong);color:var(--tb-text)}
.tb-contributor-secondary-btn:hover:not(:disabled){border-color:#222222;color:var(--tb-text);background-color:var(--tb-surface)}
.tb-contributor-secondary-btn:active:not(:disabled){background-color:var(--tb-ground)}
.tb-btn-gold,.tb-btn-gold:visited{background-color:var(--tb-gold);border:1px solid var(--tb-gold);color:#000}
.tb-btn-gold:hover:not(:disabled){background-color:var(--tb-gold-hover);border-color:var(--tb-gold-hover);color:#000}
.tb-btn-gold:active:not(:disabled){background-color:var(--tb-gold-pressed);border-color:var(--tb-gold-pressed);color:#000}
.tb-btn-gold svg{color:#000}
.tb-contributor-primary-btn:focus-visible,.tb-contributor-secondary-btn:focus-visible,.tb-btn-gold:focus-visible,
.tb-dashboard-nav-item:focus-visible,a.bg-primary:focus-visible,button.bg-primary:focus-visible{outline:2px solid var(--tb-link);outline-offset:2px}
.tb-contributor-primary-btn:disabled,.tb-contributor-secondary-btn:disabled,.tb-btn-gold:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}
/* Small buttons: toolbars, table rows, dense panels. */
.tb-btn-sm,.tb-btn-sm.tb-contributor-primary-btn,.tb-btn-sm.tb-contributor-secondary-btn{min-height:36px;min-width:0;padding:0 16px;border-radius:var(--tb-radius-sm);font-size:13px;gap:6px}
/* Utility-class buttons used across the admin views: keep the small spec. */
a.bg-primary.rounded-lg,button.bg-primary.rounded-lg{border-radius:var(--tb-radius-sm);min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;transition:background-color .15s ease}
a.bg-primary.rounded-lg:hover,button.bg-primary.rounded-lg:hover{background-color:var(--tb-header-navy)}
a.bg-primary.rounded-lg:active,button.bg-primary.rounded-lg:active{background-color:var(--tb-night-navy)}
button.border.border-gray-medium.rounded,button.border.border-gray-medium.rounded-lg,a.border.border-gray-medium.rounded,a.border.border-gray-medium.rounded-lg{border-color:var(--tb-line-strong);color:var(--tb-text);background-color:var(--tb-surface)}
button.border.border-gray-medium.rounded:hover,a.border.border-gray-medium.rounded:hover,button.border.border-gray-medium.rounded-lg:hover,a.border.border-gray-medium.rounded-lg:hover{border-color:#222222;background-color:var(--tb-surface)}
/* Text buttons and links: Link Blue, underline on hover. */
.tb-text-link,.tb-dashboard-card a.underline,.tb-dashboard-card a.text-text-muted.underline{color:var(--tb-link)}
.tb-text-link:hover{text-decoration:underline}
/* Destructive: red fill, white text; confirmation dialogs only. */
.tb-btn-danger{background-color:#A52B22;border:1px solid #A52B22;color:#fff}
.tb-btn-danger:hover{background-color:#8E251D;border-color:#8E251D}

/* ---- Inputs line up with the standard button. ---- */
.tb-contributor-input,input.tb-contributor-input,select.tb-contributor-input{border-radius:var(--tb-radius-sm);border-color:var(--tb-line-strong);color:var(--tb-text)}
.tb-contributor-input:focus{border-color:var(--tb-navy);outline:2px solid transparent}

/* ---- Status: black text on a pale wash, marked with a dot. Amber is never gold. Never pills. ---- */
.tb-status-pill,.tb-submission-status-pill,.tb-account-type-pill{
  display:inline-flex;align-items:center;gap:6px;border-radius:var(--tb-radius-sm);padding:3px 10px;
  font-size:12px;font-weight:600;line-height:1.5;text-transform:none;white-space:nowrap;border:0;
  color:var(--tb-text) !important;background-color:var(--tb-neutral-wash) !important;
}
.tb-status-pill::before,.tb-submission-status-pill::before{content:"";width:7px;height:7px;border-radius:50%;flex:none;background-color:var(--tb-muted)}
.tb-status-pill:first-letter,.tb-submission-status-pill:first-letter{text-transform:uppercase}
/* Success */
.tb-status-verified,.tb-status-approved,.tb-status-completed,.tb-status-published,.tb-status-active,
.tb-submission-status-pill.bg-green-100,.tb-submission-status-pill.bg-green-50,.tb-status-pill.bg-green-100,.tb-status-pill.bg-green-50{background-color:var(--tb-ok-wash) !important}
.tb-status-verified::before,.tb-status-approved::before,.tb-status-completed::before,.tb-status-published::before,.tb-status-active::before,
.tb-submission-status-pill.bg-green-100::before,.tb-submission-status-pill.bg-green-50::before,.tb-status-pill.bg-green-100::before,.tb-status-pill.bg-green-50::before{background-color:var(--tb-ok)}
/* Attention */
.tb-status-pending,.tb-status-in_progress,.tb-status-in-progress,.tb-status-review,.tb-status-draft,
.tb-submission-status-pill.bg-yellow-100,.tb-status-pill.bg-yellow-100,.tb-submission-status-pill.bg-blue-100,.tb-status-pill.bg-blue-100{background-color:var(--tb-warn-wash) !important}
.tb-status-pending::before,.tb-status-in_progress::before,.tb-status-in-progress::before,.tb-status-review::before,.tb-status-draft::before,
.tb-submission-status-pill.bg-yellow-100::before,.tb-status-pill.bg-yellow-100::before,.tb-submission-status-pill.bg-blue-100::before,.tb-status-pill.bg-blue-100::before{background-color:var(--tb-warn)}
/* Problem */
.tb-status-rejected,.tb-status-cancelled,.tb-status-canceled,.tb-status-failed,.tb-status-expired,.tb-submission-status-rejected,
.tb-submission-status-pill.bg-red-100,.tb-submission-status-pill.bg-red-50,.tb-status-pill.bg-red-100,.tb-status-pill.bg-red-50{background-color:var(--tb-bad-wash) !important}
.tb-status-rejected::before,.tb-status-cancelled::before,.tb-status-canceled::before,.tb-status-failed::before,.tb-status-expired::before,.tb-submission-status-rejected::before,
.tb-submission-status-pill.bg-red-100::before,.tb-submission-status-pill.bg-red-50::before,.tb-status-pill.bg-red-100::before,.tb-status-pill.bg-red-50::before{background-color:var(--tb-bad)}
/* Verified author badge in the header. */
.tb-contributor-verified-badge,.tb-author-verified-badge{color:var(--tb-text) !important;background-color:var(--tb-ok-wash) !important;border:1px solid #CFE8D6 !important;border-radius:var(--tb-radius-sm) !important;font-weight:600}
.tb-contributor-verified-badge svg,.tb-author-verified-badge svg{color:var(--tb-ok)}
/* Plan badge: an information label, Link Blue on the canvas. */
.tb-author-plan-badge{border-radius:var(--tb-radius-sm)}
/* Gold marks value only: the credits badge keeps its gold and loses the pill. */
.tb-contributor-credits-pill{border-radius:var(--tb-radius);color:#000}

/* ---- Surfaces: 1px lines, no shadows; radii from the 6/8/10/12 scale. ---- */
.tb-dashboard-card,.tb-contributor-card,.tb-contributor-panel{box-shadow:none;border-color:var(--tb-line)}
.tb-dashboard-card.rounded-lg{border-radius:var(--tb-radius-lg)}
hr,.border-gray-light,.border-gray-medium{border-color:var(--tb-line)}

/* ---- Phone layout: the fixed 220px menu becomes a scrollable strip under the header. Desktop is unchanged. ---- */
@media (max-width:767px){
  .tb-dashboard-layout{flex-direction:column;min-height:0}
  .tb-dashboard-sidebar{width:100%;flex:none;border-right:0;border-bottom:1px solid var(--tb-line);padding:0;position:sticky;top:0;z-index:20;background:var(--tb-surface)}
  .tb-dashboard-nav{flex-direction:row;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0 8px}
  .tb-dashboard-nav::-webkit-scrollbar{display:none}
  .tb-dashboard-nav-item{flex:none;flex-direction:column;gap:4px;padding:10px 12px;font-size:12px;border-bottom:2px solid transparent;white-space:nowrap}
  .tb-dashboard-nav-item.is-active{background:transparent;color:var(--tb-navy);border-bottom-color:var(--tb-navy)}
  .tb-dashboard-nav-icon svg{width:20px;height:20px}
  .tb-dashboard-sidebar .tb-sidebar-footer,.tb-dashboard-sidebar .tb-dashboard-sidebar-footer{display:none}
  .tb-dashboard-main,.tb-dashboard-layout > main,.tb-dashboard-layout > .flex-1{width:100%;min-width:0;padding-left:16px;padding-right:16px}
  .tb-contributor-dashboard-header{padding-left:16px;padding-right:16px}
  .tb-contributor-primary-btn,.tb-contributor-secondary-btn,.tb-btn-gold{min-width:0;max-width:100%}
  .tb-contributor-credits-pill{font-size:13px;padding:6px 10px}
  .tb-mail-grid{grid-template-columns:1fr}
  .tb-pending-cards{grid-template-columns:1fr}
  .overflow-x-auto table{min-width:560px}
}

/* 1.10.44.48: the header credit pill doubles as the Buy button (gold fill, dark text). Compact, and shorter on small screens. */
.tb-contributor-credits-pill.tb-credits-buy{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;font-size:12.5px;font-weight:600;line-height:1;white-space:nowrap;flex-shrink:0;text-decoration:none!important;color:#131A21!important;transition:filter .15s}
.tb-credits-buy svg{width:14px!important;height:14px!important;margin:0!important;flex-shrink:0}
.tb-credits-buy:hover{filter:brightness(.95)}.tb-credits-buy:focus-visible{outline:2px solid #002F56;outline-offset:2px}
.tb-credits-buy-n{font-weight:700}.tb-credits-buy-sep{width:1px;height:12px;background:rgba(19,26,33,.25);margin:0 2px}.tb-credits-buy-l{font-weight:700}
@media (max-width:480px){.tb-contributor-credits-pill.tb-credits-buy{height:26px;padding:0 8px;gap:4px;font-size:12px}.tb-credits-buy svg{width:13px!important;height:13px!important}.tb-credits-buy-w{display:none}}
