.cv-btn{font-family:var(--font-body);letter-spacing:.01em;border-radius:var(--r-md);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-sm);white-space:nowrap;border:1px solid #0000;font-weight:600;transition:transform .12s,box-shadow .2s,background .2s,border-color .2s;display:inline-flex}.cv-btn:active{transform:translateY(1px)}.cv-btn:focus-visible{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--gold-glow);outline:none}.cv-btn--sm{min-height:36px;padding:0 var(--space-md);font-size:var(--font-sm);border-radius:var(--r-sm)}.cv-btn--md{min-height:48px;padding:0 var(--space-xl);font-size:var(--font-base)}.cv-btn--lg{min-height:54px;padding:0 var(--space-xl);font-size:var(--font-lg)}.cv-btn--block{width:100%}.cv-btn--primary{background:linear-gradient(180deg, var(--gold) 0%, var(--gold-dim) 130%);color:var(--btn-text-dark);box-shadow:var(--shadow-gold)}.cv-btn--primary:hover{box-shadow:0 0 28px var(--gold-glow), 0 0 56px var(--gold-glow-sm)}.cv-btn--secondary{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border-gold)}.cv-btn--secondary:hover{background:var(--bg-card-hover);border-color:var(--border-focus)}.cv-btn--ghost{color:var(--gold-ink);border-color:var(--border);background:0 0}.cv-btn--ghost:hover{background:var(--gold-glow-sm);border-color:var(--border-gold)}.cv-card{background:linear-gradient(160deg, var(--bg-card) 0%, var(--surface-2) 100%);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:var(--space-lg);color:var(--text-primary);font-family:var(--font-body)}.cv-card--hero{border-radius:var(--r-xl);padding:var(--space-xl);border-color:var(--border-gold);box-shadow:var(--shadow-card), var(--shadow-gold)}.cv-card--gold{border-color:var(--border-gold);box-shadow:var(--shadow-card), 0 0 0 1px var(--gold-glow)}.cv-card--interactive{cursor:pointer;transition:transform .15s,background .2s,border-color .2s}.cv-card--interactive:hover{background:linear-gradient(160deg, var(--bg-card-hover) 0%, var(--surface-2) 100%);border-color:var(--border-gold);transform:translateY(-2px)}.cv-pill-group{gap:var(--space-xs);padding:var(--space-xs);background:var(--bg-deep);border:1px solid var(--border-sm);border-radius:var(--r-pill);display:inline-flex}.cv-pill{height:32px;padding:0 var(--space-md);border-radius:var(--r-pill);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--font-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;font-weight:600;transition:color .15s,background .2s,border-color .2s;display:inline-flex}.cv-pill:hover{color:var(--text-primary)}.cv-pill--selected{color:var(--btn-text-dark);background:var(--gold);border-color:var(--gold);box-shadow:var(--shadow-gold)}.cv-field{gap:var(--space-sm);font-family:var(--font-body);flex-direction:column;display:flex}.cv-field__label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:var(--label-tracking);color:var(--text-secondary);font-weight:600}.cv-input{height:48px;padding:0 var(--space-md);border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-body);font-size:var(--font-base);transition:border-color .2s,box-shadow .2s}.cv-input::placeholder{color:var(--text-muted)}.cv-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--gold-glow-sm);outline:none}.cv-field__hint{font-size:var(--font-sm);color:var(--text-muted)}.cv-field--invalid .cv-input{border-color:var(--warn-ink)}.cv-field--invalid .cv-field__hint{color:var(--warn-ink)}.cv-badge{height:22px;padding:0 var(--space-sm);border-radius:var(--r-xs);font-family:var(--font-body);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:var(--label-tracking);border:1px solid #0000;align-items:center;font-weight:700;display:inline-flex}.cv-badge--gold{color:var(--gold-ink);background:var(--gold-glow-sm);border-color:var(--border-gold)}.cv-badge--violet{color:var(--violet);background:var(--violet-glow);border-color:var(--violet-dim)}.cv-badge--ok{color:var(--ok-ink);background:#4ec98a1a;border-color:#4ec98a4d}.cv-badge--warn{color:var(--warn-ink);background:#ff7b7b1a;border-color:#ff7b7b4d}.cv-badge--neutral{color:var(--text-secondary);background:var(--bg-elevated);border-color:var(--border)}.cv-heading{gap:var(--space-xs);flex-direction:column;display:flex}.cv-heading__eyebrow{font-family:var(--font-body);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:var(--label-tracking);color:var(--gold-ink);font-weight:600}.cv-heading__title{font-family:var(--font-display);font-weight:500;line-height:var(--leading-tight);color:var(--text-primary);margin:0}.cv-heading--sm .cv-heading__title{font-size:var(--font-xl)}.cv-heading--md .cv-heading__title{font-size:var(--font-2xl)}.cv-heading--lg .cv-heading__title{font-size:var(--font-3xl)}.cv-row{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-md);border-radius:var(--r-md);background:var(--bg-card);border:1px solid var(--border-sm);font-family:var(--font-body);display:flex}.cv-row__dot{border-radius:var(--r-pill);flex:none;width:10px;height:10px}.cv-row__dot--gold{background:var(--gold);box-shadow:0 0 10px var(--gold-glow)}.cv-row__dot--violet{background:var(--violet);box-shadow:0 0 10px var(--violet-glow)}.cv-row__dot--fire{background:var(--fire);box-shadow:0 0 10px var(--fire-glow)}.cv-row__dot--ok{background:var(--ok-ink)}.cv-row__dot--warn{background:var(--warn-ink)}.cv-row__body{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.cv-row__title{color:var(--text-primary);font-size:var(--font-base);font-weight:500}.cv-row__subtitle{color:var(--text-muted);font-size:var(--font-sm)}.cv-row__value{color:var(--gold-ink);font-size:var(--font-sm);white-space:nowrap;font-weight:600}.cv-stat{align-items:center;gap:var(--space-xs);padding:var(--space-md) var(--space-lg);border-radius:var(--r-lg);background:linear-gradient(160deg, var(--bg-card) 0%, var(--surface-2) 100%);border:1px solid var(--border);flex-direction:column;min-width:92px;display:inline-flex}.cv-stat__value{font-family:var(--font-display);font-size:var(--font-3xl);font-weight:500;line-height:1}.cv-stat__label{font-family:var(--font-body);font-size:var(--font-xs);text-transform:uppercase;letter-spacing:var(--label-tracking);color:var(--text-muted)}.cv-stat--gold .cv-stat__value{color:var(--gold-ink)}.cv-stat--violet .cv-stat__value{color:var(--violet)}.cv-stat--plain .cv-stat__value{color:var(--text-primary)}.cv-stat--gold{box-shadow:var(--shadow-card), var(--shadow-gold);border-color:var(--border-gold)}
