/**
 * Cupcake 2048 - Trust & Institutional Surface Styles
 * 
 * Implements the 'Institutional Armor' system for About, Contact, Privacy, etc.
 * focuses on long-form readability, clear hierarchy, and calm mode-awareness.
 */

/* 1. Global Reset for Trust Shell */
.page-template-template-cupcake2048-contact-php,
.page-template-cupcake2048-about,
.page-template-cupcake2048-trust,
.error404 {
    background-color: var(--color-surface);
    color: var(--color-text-primary);
}

/* 2. Shared Layout (Reading Width Guard) */
.trust-surface-container {
    max-width: 72ch; /* Approx 760px - Optimal for long reading */
    margin: 0 auto;
    padding: var(--spacing-16) var(--spacing-6);
}

/* 3. Authority Hero */
.trust-hero {
    margin-bottom: var(--spacing-12);
    border-bottom: 2px solid var(--color-border);
    padding-bottom: var(--spacing-8);
}

.trust-hero h1 {
    font-size: var(--font-size-4xl);
    font-weight: 800;
    margin-bottom: var(--spacing-4);
    color: var(--color-text-primary);
}

.trust-hero .mission-summary {
    font-size: var(--font-size-xl);
    color: var(--color-text-secondary);
    line-height: 1.4;
    max-width: 60ch;
}

/* 4. Narrative & Content Blocks */
.trust-content {
    line-height: 1.7;
    font-size: 1.125rem;
    color: var(--color-text-primary);
}

.trust-content h2 {
    font-size: var(--font-size-2xl);
    margin: var(--spacing-12) 0 var(--spacing-4);
    font-weight: 700;
    color: var(--color-text-primary);
}

.trust-content p {
    margin-bottom: var(--spacing-6);
}

/* 5. Policy & Institutional List Patterns */
.trust-content ul {
    margin-bottom: var(--spacing-8);
    padding-left: var(--spacing-6);
}

.trust-content li {
    margin-bottom: var(--spacing-3);
}

/* 6. Mode-Aware Reading Adjustments */
/* In Dark Mode, we slightly soften the body text to prevent glare */
[data-theme="dark"] .trust-content {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .trust-content h2,
[data-theme="dark"] .trust-hero h1 {
    color: var(--color-text-primary);
}

/* 7. Reusable Component: Verified Trust Cues */
.trust-badge-cluster {
    display: flex;
    gap: var(--spacing-6);
    margin-top: var(--spacing-12);
    padding-top: var(--spacing-8);
    border-top: 1px solid var(--color-border);
    flex-wrap: wrap;
}

.trust-badge {
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
    font-size: var(--font-size-sm);
    font-weight: 700;
    color: var(--color-state-success);
}

.trust-badge .icon {
    width: 20px;
    height: 20px;
}

/* 8. Responsiveness */
/* 9. FORM & INTERACTION PATTERNS (Low-Friction) */
.trust-form {
    margin-top: var(--spacing-12);
}

.trust-form-field {
    margin-bottom: var(--spacing-6);
}

.trust-form-label {
    display: block;
    font-weight: 700;
    font-size: var(--font-size-sm);
    margin-bottom: var(--spacing-2);
    color: var(--color-text-primary);
}

.trust-form-input,
.trust-form-textarea {
    width: 100%;
    background: var(--color-surface-elevated);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--spacing-3) var(--spacing-4);
    color: var(--color-text-primary);
    font-family: inherit;
    font-size: 1rem;
    transition: border-color var(--motion-duration-fast), box-shadow var(--motion-duration-fast);
    box-sizing: border-box;
}

.trust-form-textarea {
    min-height: 150px;
    resize: vertical;
}

.trust-form-input:focus,
.trust-form-textarea:focus {
    outline: none;
    border-color: var(--color-brand);
    box-shadow: 0 0 0 2px var(--color-state-focus);
}

.trust-form-submit {
    display: inline-block;
    background: var(--color-brand);
    color: var(--color-text-inverse);
    padding: var(--spacing-4) var(--spacing-8);
    border: none;
    border-radius: var(--radius-md);
    font-weight: 800;
    font-size: var(--font-size-lg);
    cursor: pointer;
    transition: transform var(--motion-duration-fast), background var(--motion-duration-fast);
}

.trust-form-submit:hover {
    transform: translateY(-2px);
    background: var(--color-brand-muted);
}

/* 9.1 Form Feedback States */
.trust-form-feedback {
    padding: var(--spacing-4);
    border-radius: var(--radius-md);
    margin-bottom: var(--spacing-8);
    font-weight: 700;
    line-height: 1.4;
    font-size: var(--font-size-md);
    border: 1px solid transparent;
}

.trust-form-feedback.success {
    background: var(--color-state-success-muted, rgba(16, 185, 129, 0.1));
    color: var(--color-state-success, #10b981);
    border-color: var(--color-state-success, #10b981);
}

.trust-form-feedback.error {
    background: var(--color-state-error-muted, rgba(225, 29, 72, 0.1));
    color: var(--color-state-error, #e11d48);
    border-color: var(--color-state-error, #e11d48);
}

/* 10. Secondary Contact Info */
.contact-sidebar {
    margin-top: var(--spacing-12);
    padding: var(--spacing-8);
    background: var(--color-surface-elevated);
    border-radius: var(--radius-lg);
    border: 1px solid var(--color-border);
}

.contact-sidebar h3 {
    margin-top: 0;
    font-size: var(--font-size-lg);
    color: var(--color-text-primary);
}

/* 10.1 Sidebar Meta Labels */
.contact-sidebar .feature-desc {
    color: var(--color-text-secondary);
    font-size: var(--font-size-sm);
    margin-bottom: var(--spacing-4);
}

/* 10.2 Breadcrumb Contrast */
.breadcrumb {
    font-size: var(--font-size-sm);
    color: var(--color-text-secondary);
    margin-bottom: var(--spacing-2);
}

.breadcrumb a {
    color: var(--color-brand);
    text-decoration: none;
}

.breadcrumb a:hover {
    text-decoration: underline;
}

/* 10.3 Form Placeholder Clarity */
.trust-form-input::placeholder,
.trust-form-textarea::placeholder {
    color: var(--color-text-secondary);
    opacity: 0.7;
}

/* Dark Mode Form Adjustments */
[data-theme="dark"] .trust-form-input,
[data-theme="dark"] .trust-form-textarea {
    border-color: var(--color-border); /* Subtle on dark */
    background: rgba(255, 255, 255, 0.03);
}
/* 11. Responsiveness */
@media screen and (max-width: 768px) {
    .trust-hero h1 {
        font-size: var(--font-size-3xl);
    }
    
    .trust-hero .mission-summary {
        font-size: var(--font-size-lg);
    }
    
    .trust-surface-container {
        padding: var(--spacing-8) var(--spacing-4);
    }
}
