/* ─── AffiCashPay Frontend ─── */
:root{--acp-bg:#0A0A0A;--acp-surface:#141416;--acp-card:#1C1C1E;--acp-border:#2A2A2F;--acp-gold:#C9A84C;--acp-gold-light:#E8C96A;--acp-text:#E5E5EA;--acp-muted:#8E8E93;--acp-success:#2ECC71;--acp-danger:#E74C3C;--acp-warning:#FF9F43;--acp-info:#4A9EFF;}
.acp-wrap{background:var(--acp-bg);color:var(--acp-text);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;padding:0;min-height:60vh;}
.acp-notice{padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:16px;}
.acp-notice--info{background:rgba(74,158,255,.12);color:var(--acp-info);border-left:3px solid var(--acp-info);}
.acp-notice--success{background:rgba(46,204,113,.12);color:var(--acp-success);border-left:3px solid var(--acp-success);}
.acp-notice--warning{background:rgba(255,159,67,.12);color:var(--acp-warning);border-left:3px solid var(--acp-warning);}
/* Stats */
.acp-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:24px;}
.acp-stat{background:var(--acp-card);border:1px solid var(--acp-border);border-radius:10px;padding:16px;}
.acp-stat__label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--acp-muted);margin-bottom:4px;}
.acp-stat__value{font-size:22px;font-weight:700;color:var(--acp-gold);line-height:1;margin-bottom:2px;}
.acp-stat__sub{font-size:11px;color:var(--acp-muted);}
/* Cards */
.acp-card{background:var(--acp-card);border:1px solid var(--acp-border);border-radius:12px;overflow:hidden;margin-bottom:20px;}
.acp-card__header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--acp-border);}
.acp-card__title{font-weight:600;font-size:14px;color:var(--acp-text);}
.acp-card__body{padding:18px;}
/* Tables */
.acp-table{width:100%;border-collapse:collapse;font-size:13px;}
.acp-table th{color:var(--acp-muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;text-align:left;border-bottom:1px solid var(--acp-border);}
.acp-table td{padding:10px 12px;border-bottom:1px solid var(--acp-border);color:var(--acp-text);vertical-align:middle;}
.acp-table tr:last-child td{border-bottom:none;}
.acp-table tr:hover td{background:rgba(255,255,255,.02);}
/* Badges */
.acp-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;}
.acp-badge--pending{background:rgba(255,159,67,.15);color:var(--acp-warning);}
.acp-badge--approved{background:rgba(46,204,113,.15);color:var(--acp-success);}
.acp-badge--paid{background:rgba(74,158,255,.15);color:var(--acp-info);}
.acp-badge--rejected{background:rgba(231,76,60,.15);color:var(--acp-danger);}
/* Ref code box */
.acp-ref-box{background:var(--acp-surface);border:1px solid var(--acp-border);border-radius:8px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.acp-ref-box__code{font-family:monospace;font-size:20px;font-weight:700;color:var(--acp-gold);letter-spacing:3px;}
.acp-copy-btn{background:var(--acp-gold);color:#0A0A0A;border:none;border-radius:6px;padding:6px 14px;font-weight:700;font-size:12px;cursor:pointer;transition:opacity .15s;}
.acp-copy-btn:hover{opacity:.85;}
/* Link builder */
.acp-link-builder{display:flex;gap:8px;flex-wrap:wrap;}
.acp-link-builder input{flex:1;min-width:200px;background:var(--acp-surface);border:1px solid var(--acp-border);color:var(--acp-text);border-radius:6px;padding:8px 12px;font-size:13px;outline:none;}
.acp-link-builder input:focus{border-color:var(--acp-gold);}
.acp-link-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--acp-border);gap:10px;flex-wrap:wrap;}
.acp-link-row:last-child{border-bottom:none;}
.acp-link-url{font-family:monospace;font-size:12px;color:var(--acp-gold);}
/* Buttons */
.acp-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:opacity .15s;text-decoration:none;}
.acp-btn:hover{opacity:.85;}
.acp-btn--gold{background:var(--acp-gold);color:#0A0A0A;}
.acp-btn--ghost{background:transparent;color:var(--acp-muted);border:1px solid var(--acp-border);}
.acp-btn--sm{padding:4px 10px;font-size:12px;}
/* Leaderboard */
.acp-podium{display:flex;justify-content:center;gap:16px;margin-bottom:24px;flex-wrap:wrap;}
.acp-podium-item{text-align:center;flex:1;min-width:100px;max-width:160px;}
.acp-podium-item__medal{font-size:36px;display:block;margin-bottom:6px;}
.acp-podium-item__name{font-weight:700;font-size:13px;color:var(--acp-text);}
.acp-podium-item__earned{color:var(--acp-gold);font-size:13px;font-weight:600;}
/* Form */
.acp-form-field{margin-bottom:16px;}
.acp-form-field label{display:block;font-size:12px;font-weight:600;color:var(--acp-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;}
.acp-form-field input,.acp-form-field textarea,.acp-form-field select{width:100%;background:var(--acp-surface);border:1px solid var(--acp-border);color:var(--acp-text);border-radius:8px;padding:10px 14px;font-size:13px;outline:none;box-sizing:border-box;}
.acp-form-field input:focus{border-color:var(--acp-gold);}
