/* Founders Guild — Components. Depends on tokens.css. */
*{box-sizing:border-box}
body{font-family:var(--font);color:var(--n800);line-height:1.6;-webkit-font-smoothing:antialiased;margin:0;
  background:radial-gradient(ellipse at top left,color-mix(in oklab,var(--fg-teal) 7%,white) 0,transparent 55%),
             radial-gradient(ellipse at bottom right,color-mix(in oklab,var(--fg-purple) 6%,white) 0,transparent 55%),#fff;}
/* Signature sweep bar */
.fg-sweep{height:6px;background:var(--fg-sweep)}
/* Headings with gradient accent */
.fg-gradient-text{background:var(--fg-grad-cool);-webkit-background-clip:text;background-clip:text;color:transparent}
/* Buttons */
.fg-btn{font-family:var(--font);font-weight:600;font-size:var(--t-body);border:none;border-radius:var(--r-md);
  padding:.7rem 1.4rem;cursor:pointer;color:#fff;background:var(--fg-grad-cool);transition:transform .15s,box-shadow .15s}
.fg-btn:hover{transform:translateY(-1px);box-shadow:var(--e-2)}
.fg-btn.warm{background:var(--fg-grad-warm)}
.fg-btn.ghost{background:#fff;color:var(--n700);border:1px solid var(--n200)}
.fg-btn.ghost:hover{border-color:var(--fg-purple);color:var(--fg-purple);box-shadow:none}
/* Cards */
.fg-card{background:#fff;border:1px solid var(--n200);border-radius:var(--r-lg);padding:1.5rem;box-shadow:var(--e-1);
  transition:transform .15s,box-shadow .15s,border-color .15s}
.fg-card.interactive:hover{transform:translateY(-3px);box-shadow:var(--e-2);border-color:color-mix(in oklab,var(--fg-purple) 35%,white)}
/* Tabs */
.fg-tabs{display:flex;flex-wrap:wrap;gap:.5rem}
.fg-tab{flex:1 1 110px;border:1px solid var(--n200);background:#fff;border-radius:var(--r-md);padding:.6rem .9rem;
  font-family:var(--font);font-weight:600;font-size:var(--t-small);color:var(--n600);cursor:pointer;text-align:center}
.fg-tab.active{color:#fff;border-color:transparent;background:var(--fg-grad-cool)}
/* Badges / tags */
.fg-tag{font-size:var(--t-micro);font-weight:700;padding:.1rem .4rem;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}
.fg-tag.success{background:var(--success-subtle);color:var(--success)}
.fg-tag.warning{background:var(--warning-subtle);color:var(--warning)}
.fg-tag.danger{background:var(--danger-subtle);color:var(--danger)}
/* Chips */
.fg-chip{display:inline-block;border:1px solid var(--n200);background:#fff;border-radius:var(--r-pill);padding:.3rem .8rem;
  font-size:var(--t-small);font-weight:500;color:var(--n600);cursor:pointer}
.fg-chip.active{background:var(--n900);color:#fff;border-color:transparent}
/* Table */
.fg-table{width:100%;border-collapse:collapse;font-size:var(--t-body)}
.fg-table th{text-align:left;font-size:var(--t-micro);text-transform:uppercase;letter-spacing:.04em;color:var(--n400);
  padding:.4rem .5rem;border-bottom:1px solid var(--n200)}
.fg-table td{padding:.5rem;border-bottom:1px solid var(--n100)}
/* Input */
.fg-input{font-family:var(--font);font-size:var(--t-body);padding:.8rem 1.1rem;border:1.5px solid var(--n200);
  border-radius:var(--r-md);outline:none;width:100%}
.fg-input:focus{border-color:var(--fg-purple)}
