.solar-approval-wrap { max-width: 540px; margin: 0 auto; font-family: inherit; }
.sa-field-group { margin-bottom: 18px; position: relative; }
.sa-field-group label { display: block; font-weight: 600; margin-bottom: 6px; color: #ffffff; font-size: 14px; }
.sa-required { color: #ff6b6b; }
.sa-field-group input[type="text"], .sa-field-group input[type="email"], .sa-field-group input[type="tel"] { width: 100%; padding: 12px 14px; border: 2px solid rgba(255,255,255,0.25); border-radius: 6px; font-size: 15px; transition: border-color .2s; box-sizing: border-box; background: rgba(255,255,255,0.1); color: #ffffff; }
.sa-field-group input::placeholder { color: rgba(255,255,255,0.5); }
.sa-field-group input:focus { outline: none; border-color: #00b398; box-shadow: 0 0 0 3px rgba(0,179,152,.25); background: rgba(255,255,255,0.15); }
.sa-field-group input[readonly] { background: rgba(255,255,255,0.07); color: rgba(255,255,255,0.7); cursor: default; border-color: rgba(255,255,255,0.15); }
.sa-status-badge { display: inline-block; margin-top: 6px; padding: 4px 10px; border-radius: 20px; font-size: 13px; font-weight: 600; }
.sa-status-badge.active { background: rgba(0,179,152,.2); color: #00e8c6; border: 1px solid rgba(0,179,152,.4); }
.sa-status-badge.inactive { background: rgba(200,0,0,.2); color: #ff8080; border: 1px solid rgba(200,0,0,.4); }
.sa-suggestions { position: absolute; top: 100%; left: 0; right: 0; background: #1a2a3e; border: 1px solid rgba(255,255,255,0.2); border-top: none; border-radius: 0 0 6px 6px; z-index: 999; box-shadow: 0 4px 12px rgba(0,0,0,.4); max-height: 220px; overflow-y: auto; }
.sa-suggestion-item { padding: 10px 14px; cursor: pointer; border-bottom: 1px solid rgba(255,255,255,0.08); font-size: 14px; }
.sa-suggestion-item:last-child { border-bottom: none; }
.sa-suggestion-item:hover { background: rgba(0,179,152,.15); }
.sa-suggestion-item strong { display: block; color: #ffffff; }
.sa-suggestion-item small { color: rgba(255,255,255,0.6); }
.sa-submit-btn { width: 100%; padding: 15px; background: #00b398; color: #fff; border: none; border-radius: 6px; font-size: 16px; font-weight: 700; cursor: pointer; transition: background .2s, opacity .2s; letter-spacing: .3px; margin-top: 4px; }
.sa-submit-btn:hover:not(:disabled) { background: #009980; }
.sa-submit-btn:disabled { opacity: .55; cursor: not-allowed; }
.sa-privacy-note { font-size: 12px; color: rgba(255,255,255,0.55); text-align: center; margin-top: 10px; }
.sa-privacy-note a { color: #00b398; }
.sa-alert { padding: 14px 16px; border-radius: 6px; margin-bottom: 16px; font-size: 15px; line-height: 1.5; }
.sa-alert-error { background: rgba(170,0,0,.15); color: #ff8080; border: 1px solid rgba(170,0,0,.4); }
.sa-alert-approved { background: rgba(0,179,152,.15); color: #00e8c6; border: 1px solid rgba(0,179,152,.4); }
.sa-alert-review { background: rgba(180,140,0,.15); color: #ffd966; border: 1px solid rgba(180,140,0,.4); }
.sa-alert-rejected { background: rgba(170,0,0,.15); color: #ff8080; border: 1px solid rgba(170,0,0,.4); }
#sa_result .sa-result-icon { font-size: 42px; text-align: center; margin-bottom: 12px; }
#sa_result h3 { text-align: center; margin: 0 0 10px; font-size: 20px; color: #ffffff; }
#sa_result p { text-align: center; font-size: 15px; line-height: 1.6; margin: 0; color: rgba(255,255,255,0.85); }