/* AIVF Find Your Rep */

#afrep-wrapper {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background: #f9f9f9;
    box-sizing: border-box;
}
#afrep-wrapper *,
#afrep-wrapper *::before,
#afrep-wrapper *::after { box-sizing: border-box; }

#afrep-form {
    width: 100%;
    margin: 60px auto;
}
#afrep-form label,
#afrep-wrapper .afrep-sandbox-label {
    display: block;
    margin-bottom: 5px;
    font-family: "Montserrat", Sans-serif;
    font-size: 16px;
    font-weight: bold;
}
#afrep-form input[type="text"],
#afrep-subject {
    width: 100%;
    padding: 9px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    background: #fff;
}

/* Buttons */
#afrep-form button,
#afrep-copy-message,
#afrep-wrapper .afrep-copy-for,
#afrep-wrapper .afrep-copy-subject,
#afrep-wrapper .afrep-btn {
    display: inline-block;
    padding: 9px 14px;
    background: #0073aa;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}
#afrep-form button,
#afrep-copy-message { width: 100%; font-size: 16px; }
#afrep-form button:hover,
#afrep-copy-message:hover,
#afrep-wrapper .afrep-copy-for:hover,
#afrep-wrapper .afrep-copy-subject:hover,
#afrep-wrapper .afrep-btn:hover { background: #005177; color: #fff; text-decoration: none; }
#afrep-wrapper .afrep-copied { background: #1e8a3a !important; }

/* Honeypot */
#afrep-wrapper .afrep-hp {
    position: absolute !important;
    left: -9999px !important;
    width: 1px; height: 1px; overflow: hidden;
}

/* Headings */
#afrep-wrapper h2,
#afrep-results h2 {
    font-family: "Montserrat", Sans-serif;
    font-size: 20px;
    margin-bottom: 1em;
    color: #333;
}
#afrep-wrapper h2.afrep-title {
    font-size: 38px;
    font-weight: 800;
}
#afrep-wrapper h3 {
    font-family: "Montserrat", Sans-serif;
    font-size: 20px;
    margin-bottom: 1em;
    margin-top: 40px;
    color: #333;
}

/* Instructions */
#afrep-wrapper ol li {
    padding: 6px 0;
    font-family: "Montserrat", Sans-serif;
    font-size: 16px;
}

/* Results */
#afrep-results { margin-top: 60px; scroll-margin-top: 120px; }
#afrep-results:empty { margin-top: 0; }
#afrep-results ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
#afrep-results li.afrep-rep {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 1em;
    padding: 14px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background: #fff;
    font-family: "Montserrat", Sans-serif;
    font-size: 16px;
}
#afrep-results .afrep-photo {
    width: 80px;
    height: 98px;
    object-fit: cover;
    border-radius: 4px;
    flex-shrink: 0;
    background: #eee;
}
#afrep-results .afrep-rep-info { flex: 1; min-width: 0; }
#afrep-results .afrep-afrep-title {
    display: block;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #666;
}
#afrep-results .afrep-rep-name {
    display: block;
    font-size: 18px;
    margin: 2px 0 6px;
}
#afrep-results .afrep-rep-line {
    display: block;
    font-size: 15px;
    margin-bottom: 3px;
    overflow-wrap: anywhere;
}
#afrep-results .afrep-rep-line a { color: #0073aa; text-decoration: none; }
#afrep-results .afrep-rep-line a:hover { text-decoration: underline; }
#afrep-results .afrep-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

/* Messages */
#afrep-wrapper .afrep-error,
#afrep-wrapper .afrep-warning,
#afrep-wrapper .afrep-admin-note {
    padding: 10px 12px;
    border-radius: 4px;
    font-family: "Montserrat", Sans-serif;
    font-size: 15px;
}
#afrep-wrapper .afrep-error { background: #fbeaea; border-left: 4px solid #b32d2e; }
#afrep-wrapper .afrep-warning { background: #fff8e5; border-left: 4px solid #dba617; }
#afrep-wrapper .afrep-admin-note { background: #eef4fa; border-left: 4px solid #0073aa; font-size: 13px; }

/* Sandbox */
#afrep-wrapper .afrep-subject-row { display: flex; gap: 8px; align-items: flex-start; }
#afrep-wrapper .afrep-subject-row #afrep-subject { flex: 1; }
#afrep-message {
    width: 100%;
    height: 510px;
    padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: "Montserrat", Sans-serif;
    font-size: 16px;
    resize: vertical;
    background: #fff;
}
#afrep-wrapper .afrep-copy-status {
    min-height: 1.2em;
    margin-top: 8px;
    font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    color: #1e8a3a;
}

@media (max-width: 480px) {
    #afrep-results li.afrep-rep { flex-direction: column; }
    #afrep-wrapper .afrep-subject-row { flex-direction: column; }
    #afrep-wrapper .afrep-subject-row button { width: 100%; }
}
