.aaf-wrap{--aaf-green:#2f6b3a;--aaf-soft:#f3f8f1;--aaf-line:#e2e8df;display:flex;flex-direction:column;gap:18px;font-size:15px}
.aaf-card{border:1px solid var(--aaf-line);border-radius:10px;padding:18px;background:#fff}
.aaf-card h3,.aaf-card h4{margin:0 0 10px}
.aaf-hero{background:var(--aaf-soft)}
.aaf-rule{font-weight:600;color:var(--aaf-green);margin:0 0 12px}
.aaf-link-row{display:flex;gap:8px;flex-wrap:wrap}
.aaf-link-row input{flex:1 1 260px;min-width:0;padding:10px;border:1px solid var(--aaf-line);border-radius:6px;background:#fff}
.aaf-wrap *{box-sizing:border-box}
.aaf-wrap .button{padding:9px 16px;border-radius:6px;cursor:pointer;text-decoration:none;display:inline-block;white-space:nowrap}
.aaf-wa{background:#25d366!important;color:#fff!important;border-color:#25d366!important}
.aaf-hint{font-size:13px;color:#666;margin:8px 0 0}
.aaf-note{background:#fff8e5;padding:10px;border-radius:6px}
.aaf-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.aaf-stats div{border:1px solid var(--aaf-line);border-radius:10px;padding:12px;font-size:13px;color:#555;background:#fff}
.aaf-stats .aaf-num{display:block;font-size:20px;font-weight:700;color:#222;margin-bottom:4px;white-space:nowrap}
.aaf-stats .aaf-num span{display:inline}
.aaf-stats .aaf-hl{border-color:var(--aaf-green);background:var(--aaf-soft)}
.aaf-stats .aaf-hl .aaf-num{color:var(--aaf-green)}
.aaf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.aaf-card form label{display:block;font-size:13px;margin-bottom:4px;color:#444}
.aaf-card form input,.aaf-card form select{width:100%;padding:8px;border:1px solid var(--aaf-line);border-radius:6px}
.aaf-card form p{margin:0 0 10px}
.aaf-table{width:100%;border-collapse:collapse;font-size:14px}
.aaf-table th,.aaf-table td{text-align:left;padding:8px;border-bottom:1px solid var(--aaf-line)}
.aaf-badge{padding:2px 8px;border-radius:20px;font-size:12px;background:#eee}
.aaf-approved{background:#e3f4e5;color:#1d6b2a}.aaf-pending{background:#fff4d6;color:#8a6100}
.aaf-rejected,.aaf-reversed{background:#fde8e8;color:#9b1c1c}
.aaf-terms summary{cursor:pointer;font-weight:600}
.aaf-terms[open] summary{margin-bottom:12px}
.aaf-terms h4{margin:16px 0 6px;font-size:15px}
.aaf-terms ul{margin:0 0 10px 18px}
.aaf-terms-accept{font-size:13px}
.aaf-terms-accept input{width:auto!important;margin-right:6px}
.aaf-inline{display:inline;margin-left:6px}
.aaf-link-btn{background:none;border:0;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font-size:12px}
