/* Shared UI foundation tokens and small reusable helpers */
:root{
  --tfo-bg:#ffffff;
  --tfo-card:#ffffff;
  --tfo-text:#0b0b0b;
  --tfo-muted:#6b7280;
  --tfo-border:#e7e7e7;
  --tfo-shadow:0 8px 24px rgba(0,0,0,.06);
  --tfo-radius:16px;
  --tfo-radius-sm:12px;
  --tfo-gap:14px;

  --tfo-gold:#bba87e;
  --tfo-gold-2:#d6c08a;
  --tfo-gold-strong:#8f6b13;
  --tfo-primary:#6d28d9;
  --tfo-primary-600:#5b21b6;
  --tfo-primary-50:rgba(109,40,217,.10);
  --tfo-success:#15803d;
  --tfo-success-soft:#ecfdf3;
  --tfo-success-border:#86efac;
  --tfo-warning:#9a3412;
  --tfo-warning-soft:#fff7ed;
  --tfo-warning-border:#fdba74;
  --tfo-info:#7a6526;
  --tfo-info-soft:#fff8e6;
  --tfo-info-border:#d8c079;
  --tfo-danger:#991b1b;
  --tfo-danger-soft:#fff1f2;
  --tfo-danger-border:#fda4af;

  --tfo-overlay:rgba(17,24,39,.42);
  --tfo-panel-radius:22px;
  --tfo-panel-shadow:0 20px 70px rgba(0,0,0,.18);
}

.tfo-is-hidden{display:none !important;}
.tfo-empty-dash{opacity:.8;display:inline-block;}


/* Naming convention bridge: semantic aliases for legacy selectors */
.tfo-panel{background:var(--tfo-card);border:1px solid var(--tfo-border);border-radius:var(--tfo-radius);box-shadow:var(--tfo-shadow);}
.tfo-panel-body{padding:18px;}
.tfo-table-responsive{overflow:auto;width:100%;}
.tfo-text-muted{color:var(--tfo-muted);}
.tfo-status-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;text-transform:capitalize;border:1px solid transparent;}
.tfo-status-pill--success{background:rgba(22,163,74,.12);color:var(--tfo-success);border-color:rgba(22,163,74,.22);}
.tfo-status-pill--warning{background:rgba(245,158,11,.12);color:var(--tfo-warning);border-color:rgba(245,158,11,.22);}
.tfo-status-pill--danger{background:rgba(239,68,68,.12);color:var(--tfo-danger);border-color:rgba(239,68,68,.22);}
.tfo-status-pill--neutral{background:rgba(100,116,139,.12);color:var(--tfo-muted);border-color:rgba(100,116,139,.22);}


/* Admin naming bridge */
.tfo-admin-page{display:block;}
.tfo-admin-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap;margin:0 0 14px;}
.tfo-admin-page-title{margin:0;font-size:24px;line-height:1.35;}
.tfo-admin-page-note{margin:8px 0 0;color:var(--tfo-muted);max-width:980px;}
.tfo-admin-page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.tfo-admin-page-panel{background:var(--tfo-card);border:1px solid var(--tfo-border);border-radius:var(--tfo-radius);box-shadow:var(--tfo-shadow);margin:0 0 16px;}
.tfo-admin-page-panel-body{padding:18px;}
.tfo-admin-page-table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;}
.tfo-admin-page-grid{display:grid;gap:16px;}
@media (max-width:782px){.tfo-admin-page-title{font-size:22px}.tfo-admin-page-head{align-items:stretch}.tfo-admin-page-actions{width:100%}}
