/* GPS Action Center — Public Styles */
/* Follows GPS dark theme conventions */

.gps-ac-page {
    background: #0a0a0f;
    min-height: 80vh;
}

.gps-ac-container {
    max-width: 720px;
    margin: 0 auto;
    padding: 2em 1.5em 4em;
}

/* Page Header */
.gps-ac-page-header {
    text-align: center;
    margin-bottom: 2em;
    padding-bottom: 1.5em;
    border-bottom: 2px solid #dc2626;
}

.gps-ac-title {
    color: #ffffff;
    font-size: 2.2em;
    font-weight: 800;
    margin: 0 0 0.3em;
    letter-spacing: -0.5px;
}

.gps-ac-subtitle {
    color: #888;
    font-size: 1em;
    margin: 0;
    font-style: italic;
}

/* Banner */
.gps-ac-banner {
    background: #141418;
    border: 1px solid #2a2a35;
    border-left: 4px solid #dc2626;
    border-radius: 10px;
    padding: 1.5em;
    margin-bottom: 1.5em;
}

.gps-ac-banner-text {
    color: #e0e0e0;
    font-size: 1.15em;
    line-height: 1.6;
    margin: 0 0 0.8em;
    font-style: italic;
}

.gps-ac-banner-link {
    color: #f87171;
    text-decoration: none;
    font-size: 0.9em;
    font-weight: 600;
    transition: color 0.2s;
}

.gps-ac-banner-link:hover {
    color: #dc2626;
}

/* Cards Container */
.gps-ac-cards {
    display: flex;
    flex-direction: column;
    gap: 1em;
}

/* Action Card */
.gps-ac-card {
    background: #141418;
    border: 1px solid #2a2a35;
    border-radius: 10px;
    padding: 1.5em;
    transition: border-color 0.2s;
}

.gps-ac-card:hover {
    border-color: #3a3a45;
}

/* Effort Badge */
.gps-ac-effort {
    display: inline-block;
    color: #f87171;
    font-size: 0.7em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 0.6em;
}

.gps-ac-effort-ongoing {
    color: #fbbf24;
}

/* Card Content */
.gps-ac-card-headline {
    color: #e0e0e0;
    font-size: 1.15em;
    font-weight: 700;
    margin: 0 0 0.4em;
    line-height: 1.3;
}

.gps-ac-card-desc {
    color: #999;
    font-size: 0.9em;
    line-height: 1.5;
    margin: 0 0 1em;
}

/* Call Script */
.gps-ac-script {
    background: #1a1a25;
    border: 1px solid #2a2a35;
    border-radius: 6px;
    padding: 1em;
    margin-bottom: 1em;
    color: #bbb;
    font-size: 0.85em;
    line-height: 1.6;
}

.gps-ac-script strong {
    color: #e0e0e0;
}

/* Buttons */
.gps-ac-card-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.gps-ac-btn {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 0.85em;
    font-weight: 700;
    transition: all 0.2s;
    cursor: pointer;
    border: none;
}

.gps-ac-btn-primary {
    background: #dc2626;
    color: #ffffff;
}

.gps-ac-btn-primary:hover {
    background: #b91c1c;
    color: #ffffff;
}

.gps-ac-btn-secondary {
    background: #1a1a25;
    color: #e0e0e0;
    border: 1px solid #2a2a35;
}

.gps-ac-btn-secondary:hover {
    border-color: #dc2626;
    color: #f87171;
}

/* Advocate Network Card */
.gps-ac-card-advocate {
    border-color: #3a3a45;
    background: linear-gradient(135deg, #141418 0%, #1a1a25 100%);
}

/* Advocate Form */
.gps-ac-advocate-form {
    margin-top: 0.5em;
}

.gps-ac-form-row {
    margin-bottom: 0.6em;
}

.gps-ac-form-row input[type="text"],
.gps-ac-form-row input[type="email"] {
    width: 100%;
    padding: 10px 14px;
    background: #0a0a0f;
    border: 1px solid #2a2a35;
    border-radius: 6px;
    color: #e0e0e0;
    font-size: 0.9em;
    box-sizing: border-box;
    transition: border-color 0.2s;
}

.gps-ac-form-row input:focus {
    outline: none;
    border-color: #dc2626;
}

.gps-ac-form-row input::placeholder {
    color: #555;
}

/* Willingness Checkboxes */
.gps-ac-willingness {
    border: none;
    padding: 0;
    margin: 0.8em 0;
}

.gps-ac-willingness legend {
    color: #999;
    font-size: 0.8em;
    margin-bottom: 0.5em;
    font-weight: 600;
}

.gps-ac-willingness label {
    display: block;
    color: #bbb;
    font-size: 0.85em;
    padding: 4px 0;
    cursor: pointer;
}

.gps-ac-willingness input[type="checkbox"] {
    accent-color: #dc2626;
    margin-right: 8px;
}

/* Submit button */
.gps-ac-btn-submit {
    width: 100%;
    justify-content: center;
    padding: 12px 20px;
    margin-top: 0.5em;
    font-size: 0.95em;
}

/* Success/Error Messages */
.gps-ac-advocate-success p,
.gps-ac-advocate-exists p,
.gps-ac-advocate-error p {
    padding: 1em;
    border-radius: 6px;
    font-size: 0.9em;
    line-height: 1.5;
    margin: 0;
}

.gps-ac-advocate-success p {
    background: #14532d;
    color: #86efac;
    border: 1px solid #166534;
}

.gps-ac-advocate-exists p {
    background: #1a1a25;
    color: #fbbf24;
    border: 1px solid #2a2a35;
}

.gps-ac-advocate-error p {
    background: #450a0a;
    color: #fca5a5;
    border: 1px solid #7f1d1d;
}

.gps-ac-advocate-error a {
    color: #f87171;
}

/* Responsive */
@media (max-width: 600px) {
    .gps-ac-container {
        padding: 1em 1em 3em;
    }

    .gps-ac-title {
        font-size: 1.7em;
    }

    .gps-ac-banner-text {
        font-size: 1em;
    }

    .gps-ac-card {
        padding: 1.2em;
    }

    .gps-ac-card-headline {
        font-size: 1.05em;
    }
}
