/* AdProof public review styles */
.adp-review-wrap { max-width: 1100px; margin: 0 auto; padding: 32px 20px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; color: #1d2327; }
.adp-review-empty { color: #646970; font-style: italic; padding: 40px 0; text-align: center; }

.adp-review-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; margin-bottom: 32px; flex-wrap: wrap; }
.adp-review-eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: 12px; color: #2271b1; font-weight: 700; margin: 0 0 6px; }
.adp-review-header h1 { font-size: 30px; margin: 0 0 4px; font-weight: 700; }
.adp-review-client { font-size: 15px; color: #646970; margin: 0; }
.adp-review-desc { font-size: 14px; color: #50575e; margin: 8px 0 0; max-width: 560px; }
.adp-review-progress { text-align: right; }
.adp-progress-num { font-size: 28px; font-weight: 700; display: block; }
.adp-progress-label { font-size: 12px; color: #646970; text-transform: uppercase; letter-spacing: .06em; }

.adp-review-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 24px; }
.adp-review-card { background: #fff; border: 1px solid #e2e4e7; border-radius: 12px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.adp-review-preview { background: repeating-conic-gradient(#f6f7f7 0% 25%, #fff 0% 50%) 50% / 20px 20px; display: flex; align-items: center; justify-content: center; padding: 16px; overflow: auto; }
.adp-review-preview iframe { border: 0; }

.adp-review-card-body { padding: 16px; }
.adp-review-card-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 4px; }
.adp-review-card-head h3 { font-size: 16px; margin: 0; font-weight: 600; }
.adp-dim { font-size: 12px; color: #646970; display: block; margin-bottom: 12px; }

.adp-status { display: inline-block; font-size: 11px; font-weight: 600; padding: 2px 10px; border-radius: 999px; text-transform: capitalize; }
.adp-status-pending { background: #f0f0f1; color: #646970; }
.adp-status-approved { background: #e6f4ea; color: #1a7f37; }
.adp-status-changes { background: #fef7e6; color: #b26a00; }

.adp-review-actions { display: flex; gap: 8px; margin-bottom: 12px; flex-wrap: wrap; }
.adp-btn { border: 1px solid #c3c4c7; background: #fff; border-radius: 6px; padding: 6px 12px; font-size: 13px; cursor: pointer; transition: all .15s; }
.adp-btn:hover { border-color: #2271b1; color: #2271b1; }
.adp-btn-approve { background: #1a7f37; color: #fff; border-color: #1a7f37; }
.adp-btn-approve:hover { background: #146a2c; color: #fff; }
.adp-btn-changes { background: #fef7e6; color: #b26a00; border-color: #f0c674; }
.adp-btn-changes:hover { background: #fdeec9; color: #b26a00; }

.adp-comment-form { display: none; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.adp-comment-form.open { display: flex; }
.adp-comment-form input, .adp-comment-form textarea { border: 1px solid #c3c4c7; border-radius: 6px; padding: 6px 8px; font-size: 13px; font-family: inherit; }
.adp-btn-send { align-self: flex-start; background: #2271b1; color: #fff; border-color: #2271b1; }
.adp-btn-send:hover { background: #135e96; color: #fff; }

.adp-comments { display: flex; flex-direction: column; gap: 8px; }
.adp-comment { background: #f6f7f7; border-radius: 8px; padding: 8px 10px; font-size: 13px; }
.adp-comment-author { font-weight: 600; font-size: 12px; color: #2271b1; }
.adp-comment-text { margin: 2px 0; }
.adp-comment-time { font-size: 11px; color: #646970; }
.adp-comment-status { font-size: 11px; font-weight: 600; text-transform: uppercase; }
.adp-comment-status.approved { color: #1a7f37; }
.adp-comment-status.changes { color: #b26a00; }
