/* Smart Requests v1.0.4 — the native Form 8 controls remain the only form inputs. */
#hfsmart-overlay[hidden]{display:none!important}
#hfsmart-overlay,#hfsmart-overlay *{box-sizing:border-box}
#hfsmart-overlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(14,22,33,.72)}
html.hfsmart-lock{overflow:hidden!important}
#hfsmart-overlay .hfsmart-shell{width:min(890px,100%);height:min(790px,96dvh);background:#fff;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 100px rgba(0,0,0,.28)}
#hfsmart-overlay .hfsmart-header{height:80px;min-height:80px;display:flex;align-items:center;justify-content:space-between;padding:12px 26px;border-bottom:1px solid #e9edf2;background:#fff}
#hfsmart-overlay .hfsmart-brand{display:block;width:195px;max-width:60%;height:62px;object-fit:contain;object-position:left center}
#hfsmart-overlay .hfsmart-close{width:44px;height:44px;display:grid;place-items:center;border:0;background:#f2f3f6;border-radius:13px;font:30px Arial,sans-serif;line-height:1;cursor:pointer;color:#243244}
#hfsmart-overlay .hfsmart-close:hover{background:#e8ecf1}
#hfsmart-overlay iframe{display:block;border:0;flex:1;min-height:0;width:100%;background:#fff}
body.hfsmart-frame{box-sizing:border-box!important;background:#fff!important;margin:0!important;padding:0 28px 30px!important;font:16px/1.55 system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;color:#172339!important;min-height:100vh!important}
html:has(body.hfsmart-frame){margin-top:0!important;background:#fff!important}
body.hfsmart-frame #wpadminbar,body.hfsmart-frame #wp-admin-bar-root-default,body.hfsmart-frame #wp-admin-bar-top-secondary{display:none!important}
body.hfsmart-frame #hfsmart-root{max-width:790px;margin:0 auto;padding:0 0 10px;min-height:100%}
body.hfsmart-frame .hfsmart-loading{padding:48px 8px;text-align:center;color:#64748b}
body.hfsmart-frame #hfsmart-ui{padding:22px 0 0}
body.hfsmart-frame .hfsmart-title{font-size:27px!important;line-height:1.25!important;font-weight:800!important;letter-spacing:-.55px!important;margin:4px 0 8px!important;color:#152137!important}
body.hfsmart-frame .hfsmart-subtitle{font-size:15px!important;color:#5c6b7d!important;margin:0 0 18px!important}
body.hfsmart-frame .hfsmart-description{display:block;box-sizing:border-box;width:100%;min-height:164px;padding:16px 18px;border:1px solid #c8d2df;border-radius:14px;resize:vertical;font:inherit;color:#172339;outline:0;box-shadow:none;background:#fff}
body.hfsmart-frame .hfsmart-description:focus{border-color:#ff6600;box-shadow:0 0 0 3px rgba(255,102,0,.12)}
body.hfsmart-frame .hfsmart-description::placeholder{color:#8794a7}
body.hfsmart-frame .hfsmart-privacy{color:#66758b;font-size:12px;margin:8px 0 0}
body.hfsmart-frame .hfsmart-controls{position:relative;z-index:1;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 0 20px;margin-top:6px;border-top:1px solid #eff2f5;background:#fff;box-shadow:none}
body.hfsmart-frame .hfsmart-button{background:#ff6600;color:#fff;border:0;border-radius:12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:11px 23px;font:750 15px/1.4 system-ui,-apple-system,Segoe UI,Arial,sans-serif;transition:background .15s}
body.hfsmart-frame .hfsmart-button:hover{background:#e95b00}
body.hfsmart-frame .hfsmart-button:disabled{opacity:.62;cursor:wait}
body.hfsmart-frame .hfsmart-link,body.hfsmart-frame .hfsmart-edit{border:0;background:transparent;color:#16634b;text-decoration:underline;text-underline-offset:2px;cursor:pointer;font:600 14px system-ui,-apple-system,Segoe UI,Arial,sans-serif;padding:9px 7px}
body.hfsmart-frame .hfsmart-error{color:#a82728;font-size:14px;font-weight:600;margin:12px 0}
body.hfsmart-frame .hfsmart-error:empty{display:none}
body.hfsmart-frame .hfsmart-warning{color:#94420d;background:#fff8ed;border:1px solid #f7ddbd;border-radius:9px;padding:10px 12px;font-size:13px}
body.hfsmart-frame .hfsmart-fields-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:15px;row-gap:11px;padding-top:6px}
body.hfsmart-frame .hfsmart-field-cell{min-width:0;grid-column:1/-1}
body.hfsmart-frame .hfsmart-field-cell:has([name="first_name"]),body.hfsmart-frame .hfsmart-field-cell:has([name="last_name"]),body.hfsmart-frame .hfsmart-field-cell:has([name="email"]),body.hfsmart-frame .hfsmart-field-cell:has([name="phone_mobile"]),body.hfsmart-frame .hfsmart-field-cell:has([name="address[city]"]),body.hfsmart-frame .hfsmart-field-cell:has([name="address[state]"]){grid-column:auto}
/* Hide the whole ORIGINAL form structure, including labels such as 'My Location', unless its actual field was moved into the visible host. */
body.hfsmart-frame form.hfsmart-managed > :not(.hfsmart-native-host){display:none!important}
body.hfsmart-frame form.hfsmart-managed > .hfsmart-native-host{display:block!important;min-width:0}
body.hfsmart-frame form.hfsmart-managed .hfsmart-real-field{position:static!important;left:auto!important;top:auto!important;opacity:1!important;pointer-events:auto!important;width:auto!important;height:auto!important;max-width:100%!important;overflow:visible!important}
body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host .hf-original-hidden-field{display:block!important}
body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host .hf-cascade-wrapper{display:block!important}
body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host .hf-cascade-wrapper.hf-location-hidden{display:none!important}
body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host .ff-el-group{margin-bottom:13px!important}
body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host input[type="text"],body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host input[type="email"],body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host input[type="tel"],body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host select,body.hfsmart-frame form.hfsmart-managed .hfsmart-native-host textarea{max-width:100%!important;box-sizing:border-box}
body.hfsmart-frame .hfsmart-group-title{font-size:15px;font-weight:800;margin:19px 0 7px;color:#26364a}
body.hfsmart-frame .hfsmart-summary{background:#fff;border:1px solid #e0e6ef;border-radius:12px;overflow:hidden}
body.hfsmart-frame .hfsmart-review-row{display:flex;gap:9px;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid #edf0f4}
body.hfsmart-frame .hfsmart-review-row:last-child{border-bottom:0}
body.hfsmart-frame .hfsmart-summary-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
body.hfsmart-frame .hfsmart-summary-compact .hfsmart-review-row{border-bottom:1px solid #edf0f4}
body.hfsmart-frame .hfsmart-summary-compact .hfsmart-review-row:nth-child(odd){border-right:1px solid #edf0f4}
body.hfsmart-frame .hfsmart-review-content{min-width:0;flex:1}
body.hfsmart-frame .hfsmart-review-content small{display:block;color:#6b788c;font-size:12px;margin:0 0 2px}
body.hfsmart-frame .hfsmart-review-content strong{display:block;font-weight:600;font-size:14px;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap;color:#1e293b}
body.hfsmart-frame .hfsmart-optional{border:1px solid #e1e7ec;border-radius:10px;margin:18px 0 8px;padding:0 14px}
body.hfsmart-frame .hfsmart-optional summary{cursor:pointer;padding:12px 0;font-weight:600;font-size:14px;color:#355063}
body.hfsmart-frame .hfsmart-file-host{padding-bottom:10px}
body.hfsmart-frame .hfsmart-consent{border-top:1px solid #eff2f5;margin:16px 0 2px;padding:16px 2px 4px;font-size:14px}
body.hfsmart-frame .hfsmart-consent label{display:flex;align-items:flex-start;gap:5px;flex-wrap:wrap;font-weight:500;line-height:1.55;color:#27384b}
body.hfsmart-frame .hfsmart-consent input[type="checkbox"]{margin:3px 5px 0 0!important;width:18px;height:18px;flex:none;accent-color:#ff6600}
body.hfsmart-frame .hfsmart-consent a{color:#16634b;text-decoration:underline}
body.hfsmart-frame form.hfsmart-manual{display:block!important}
body.hfsmart-frame form.hfsmart-manual .hf-cascade-wrapper.hf-location-hidden{display:none!important}
@media(max-width:650px){#hfsmart-overlay{padding:0}#hfsmart-overlay .hfsmart-shell{width:100%;height:100dvh;border-radius:0}#hfsmart-overlay .hfsmart-header{height:66px;min-height:66px;padding:8px 16px}#hfsmart-overlay .hfsmart-brand{width:154px;height:54px}body.hfsmart-frame{padding:0 17px 20px!important}body.hfsmart-frame .hfsmart-title{font-size:23px!important}body.hfsmart-frame .hfsmart-fields-grid{grid-template-columns:1fr}body.hfsmart-frame .hfsmart-field-cell{grid-column:1/-1!important}body.hfsmart-frame .hfsmart-review-row{padding:8px 10px}body.hfsmart-frame .hfsmart-summary-compact{grid-template-columns:1fr}body.hfsmart-frame .hfsmart-summary-compact .hfsmart-review-row:nth-child(odd){border-right:0}body.hfsmart-frame .hfsmart-controls{padding:13px 0 18px}}

/* Immediate launcher: preload the iframe, show progress only until its UI is ready. */
#hfsmart-overlay .hfsmart-framewrap{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;background:#fff}
#hfsmart-overlay .hfsmart-framewrap iframe{width:100%;height:100%;flex:1;min-height:0;border:0;display:block;background:#fff}
#hfsmart-overlay .hfsmart-frame-loading{position:absolute;inset:0;z-index:2;background:white;display:flex;justify-content:center;align-items:flex-start;padding:60px 20px;color:#586b83;font-size:16px;text-align:center}
#hfsmart-overlay .hfsmart-frame-loading[hidden]{display:none!important}

/* v1.0.4: clear, responsive activity status while the real native fields stay usable. */
body.hfsmart-frame .hfsmart-ai-progress,body.hfsmart-frame .hfsmart-submit-progress{display:flex;gap:10px;align-items:center;background:#f5f8fc;border:1px solid #dce5ef;border-radius:12px;padding:12px 14px;color:#465c73;font-size:14px;line-height:1.5;margin:16px 0 8px}
body.hfsmart-frame .hfsmart-submit-progress{flex-basis:100%;margin:8px 0 0}
body.hfsmart-frame .hfsmart-spinner{display:inline-block;flex:none;width:17px;height:17px;border:2px solid #c9d4df;border-top-color:#ff6600;border-radius:50%;animation:hfsmart-spin .8s linear infinite}
@keyframes hfsmart-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){body.hfsmart-frame .hfsmart-spinner{animation:none;border-top-color:#ff6600}}
