/* Vista Web Renderer: service forms and upload surfaces. Structural web rendering only; values come from Vista Design Package. */
.favorite-home-section{position:relative}
.favorite-home-section:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}
.favorite-home-section .section-head h3:before{content:"\f02e";font-family:"Font Awesome 6 Free";font-weight:900;margin-left:var(--vd-u7);color:var(--color-text-6557dc-e030713b)}
.faq-image{display:block;width:var(--vp-r1);max-height:var(--vd-u260);object-fit:cover;border-radius:var(--vd-u16);margin:var(--vd-u12) 0}
.service-order-form .field{position:relative;transition:border-color var(--vt-ms180) ease,background var(--vt-ms180) ease,box-shadow var(--vt-ms180) ease}
.service-order-form .field .input,.service-order-form .field .select,.service-order-form .field .textarea{transition:border-color var(--vt-ms180) ease,box-shadow var(--vt-ms180) ease,background var(--vt-ms180) ease}
.service-order-form .field-invalid .input,.service-order-form .field-invalid .select,.service-order-form .field-invalid .textarea,.service-order-form .field-invalid .radio-options,.service-order-form .field-invalid .boolean-field{border-color:var(--color-border-d63f50-4c97df9b)!important;background:var(--color-background-fff7f8-c94eb89b)!important;box-shadow:0 0 0 var(--vd-u3) var(--color-shadow-rgba-214-63-80-10-0a5a0b96)!important}
.service-order-form .field-invalid>label{color:var(--color-text-bd2f41-4b2184f7)}
.service-order-form .field-error{display:none;color:var(--color-text-bd2f41-4b2184f7);font-size:calc(var(--vd-u11) * var(--ui-font-scale));font-weight:800;margin-top:var(--vd-u6);line-height:1.7}
.service-order-form .field-invalid .field-error{display:block}
.service-terms-loading,.service-terms-empty{display:flex;align-items:center;gap:var(--vd-u9);min-height:var(--vd-u48);color:var(--color-text-747987-a067dba9);padding:var(--vd-u8) var(--vd-u2)}
.service-card,.item.click,.category-tile,.btn{touch-action:manipulation}
.service-drawer .drawer-panel{will-change:transform;contain:layout paint}
.service-drawer{background:var(--color-background-f7f8fb-21809767)!important;backdrop-filter:none!important;align-items:stretch!important;justify-content:center!important}
.service-drawer .service-form-panel{width:min(var(--vd-u860),var(--vwr-r1))!important;height:var(--vdhr-r1)!important;max-height:var(--vdhr-r1)!important;margin:0 auto!important;border-radius:0!important;box-shadow:none!important;padding:var(--vd-u14) var(--vd-u22) max(var(--vd-u30),env(safe-area-inset-bottom))!important;animation:fade var(--vt-ms160) ease!important}
@media (max-width:760px){.service-drawer .service-form-panel{height:var(--vdhr-r1)!important;max-height:var(--vdhr-r1)!important;border-radius:0!important;padding:var(--vd-u10) var(--vd-u15) max(var(--vd-u24),env(safe-area-inset-bottom))!important}
.service-form-topbar{position:sticky;top:0;z-index:var(--vz-z8);background:var(--color-background-rgba-247-248-251-94-43797a0c);backdrop-filter:blur(var(--vd-u14));padding:var(--vd-u7) 0 var(--vd-u5)}}
html{background:var(--color-surface-page)}
.service-form-panel .service-form-topbar{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;display:flex;justify-content:space-between;padding:0!important;min-height:var(--vd-u44);position:relative}
.service-form-topbar .icon-btn{width:var(--vd-u44);height:var(--vd-u44);border-radius:var(--vp-r0-5);border:0;box-shadow:none}
.service-upload{border:var(--vd-u1) solid color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-22),var(--color-border-default));border-radius:var(--vd-u20);overflow:hidden;background:var(--color-surface-card);box-shadow:0 var(--vd-u8) var(--vd-u24) color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-07),transparent)}
.service-upload-zone{display:flex!important;position:relative;flex-direction:column;align-items:center;gap:var(--vd-u8);padding:var(--vd-u25) var(--vd-u16)!important;min-height:var(--vd-u155);justify-content:center;text-align:center;background:linear-gradient(var(--va-deg145),color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-09),transparent),transparent);cursor:pointer;border:var(--vd-u1) dashed color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-42),transparent);border-radius:var(--vd-u19);margin:0!important;transition:border-color var(--vt-ms180) ease,background var(--vt-ms180) ease,box-shadow var(--vt-ms180) ease,transform var(--vt-ms180) ease}
.service-upload-symbol{display:grid;place-items:center;width:var(--vd-u46);height:var(--vd-u46);border-radius:var(--vd-u15);background:color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-12),var(--color-surface-card));color:var(--color-brand-primary);font-size:var(--vd-u23);box-shadow:inset 0 0 0 var(--vd-u1) color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-16),transparent)}
.service-upload-zone>b{font-size:var(--vd-u14)}
.service-upload-zone>small{font-size:var(--vd-u12);opacity:var(--vo-o0-7);line-height:1.8}
.service-upload-zone input{position:absolute;inset:0;opacity:var(--vo-o0);width:var(--vp-r1);height:var(--vp-r1);cursor:pointer;z-index:var(--vz-z1)}
.service-upload-zone:focus-within,.service-upload.is-dragging .service-upload-zone{outline:0;border-color:var(--color-brand-primary);background:color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-1),var(--color-surface-card));box-shadow:0 0 0 var(--vd-u4) color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-11),transparent)}
.service-upload-file{display:flex;align-items:center;gap:var(--vd-u12);padding:var(--vd-u12);border-top:var(--vd-u1) solid color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-12),var(--color-border-default));min-width:0}
.service-upload-preview{display:grid;place-items:center;flex:none;width:var(--vd-u46);height:var(--vd-u46);border-radius:var(--vd-u12);overflow:hidden;background:color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-1),var(--color-surface-muted));color:var(--color-brand-primary)}
.service-upload-preview img{width:var(--vp-r1);height:var(--vp-r1);object-fit:cover}
.service-upload-info{display:flex;flex-direction:column;gap:var(--vd-u3);flex:1;min-width:0}
.service-upload-info b{font-size:var(--vd-u12);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:ltr;text-align:start}
.service-upload-info small{font-size:var(--vd-u11);opacity:var(--vo-o0-65)}
.service-upload-file button{flex:none;width:var(--vd-u36);height:var(--vd-u36)}
.service-upload progress{width:calc(var(--vp-r1) - var(--vd-u24));height:var(--vd-u5);accent-color:var(--color-brand-primary);margin:var(--vd-u10) var(--vd-u12)}
.service-upload progress[hidden]{display:none}
html[data-theme="dark"] .service-upload{background:var(--color-surface-card);border-color:color-mix(in srgb,var(--color-brand-primary) var(--vp-r0-32),var(--color-border-default))}

.profile-choice{display:flex;gap:var(--space-2)}.profile-choice button{flex:1}.location-trigger{display:flex;align-items:center;justify-content:space-between;cursor:pointer}.location-picker{display:flex;flex-direction:column;gap:var(--space-3)}.location-results{overflow:auto;max-height:var(--vdhr-r0-5)}.location-results .ui-list-row{width:100%}
