/* Simple Contact Form — Public Styles */
/* Automatically inherits theme colors via CSS custom properties */

.scf-form { max-width: 100%; width: 100%; box-sizing: border-box; }
.scf-form * { box-sizing: border-box; }

.scf-fg { margin-bottom: 1.2rem; }
.scf-lbl { display: block; font-weight: 600; margin-bottom: .35rem; font-size: .9rem; color: inherit; }
.scf-req { color: #d63638; font-weight: 700; }

.scf-inp {
    display: block; width: 100%; padding: .55rem .75rem; font-size: .9rem; line-height: 1.5;
    border: 1px solid var(--scf-border, currentColor); border-radius: 4px;
    background: transparent; color: inherit;
    transition: border-color .2s, box-shadow .2s;
}
.scf-inp:focus { outline: none; border-color: var(--scf-accent, currentColor); box-shadow: 0 0 0 3px rgba(0,0,0,.08); }
.scf-inp::placeholder { opacity: .5; color: inherit; }
textarea.scf-inp { resize: vertical; min-height: 70px; }
select.scf-inp { cursor: pointer; }

.scf-opts { display: flex; flex-direction: column; gap: .4rem; margin-top: .2rem; }
.scf-opt { display: flex; align-items: center; gap: .5rem; cursor: pointer; font-size: .9rem; color: inherit; }
.scf-opt input { accent-color: var(--scf-accent, currentColor); }

.scf-sub {
    display: inline-flex; align-items: center; justify-content: center;
    width: 100%; padding: .65rem 1.2rem; font-size: .9rem; font-weight: 600;
    border: none; border-radius: 4px; cursor: pointer;
    transition: opacity .2s, transform .1s;
    background-color: var(--scf-btn-bg, #1a1a1a);
    color: var(--scf-btn-color, #fff);
}
.scf-sub:hover { opacity: .9; transform: translateY(-1px); }
.scf-sub:active { transform: translateY(0); opacity: .8; }

.scf-help { font-size: .78rem; margin-top: .25rem; opacity: .6; color: inherit; }

.scf-msg { padding: .75rem 1rem; border-radius: 4px; margin-bottom: 1.2rem; font-size: .88rem; font-weight: 500; }
.scf-msg-ok { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.scf-msg-err { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
.scf-no-fields { text-align: center; color: #8c8f94; padding: 2rem; }
.scf-hp { display: none !important; }
