#listingForm{--lc-ivory:#f6f3ea;--lc-paper:#fffdf7;--lc-green:#164c39;--lc-green-2:#1f5d46;--lc-green-deep:#0f2f24;--lc-ink:#17251e;--lc-muted:#56665d;--lc-line:#e3e3d8;--lc-olive:#8a9a7b;--lc-error:#9a3412;--lc-focus:#2f7a5c;--lc-radius:14px;--lc-shadow:0 10px 24px rgba(18,38,30,.08);max-width:960px;margin:0 auto;padding:clamp(20px,4vw,40px);background:var(--lc-ivory);color:var(--lc-ink);font-family:inherit;line-height:1.6;box-sizing:border-box}
#listingForm *,#listingForm *::before,#listingForm *::after{box-sizing:border-box}
#listingForm h2{color:var(--lc-green-deep);font-size:clamp(24px,3.5vw,32px);font-weight:700;margin:0 0 12px;letter-spacing:-.5px}
#listingForm .muted{color:var(--lc-muted);font-size:14px;margin:0 0 28px;line-height:1.7}
#listingForm label,#listingForm legend{display:block;font-size:14px;font-weight:600;color:var(--lc-ink);margin-bottom:6px}
#listingForm input:not([type=checkbox]),#listingForm select,#listingForm textarea{width:100%;min-height:48px;padding:12px 16px;border:1px solid var(--lc-olive);border-radius:var(--lc-radius);background:var(--lc-paper);color:var(--lc-ink);font-size:16px;line-height:1.5;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
#listingForm textarea{min-height:120px;resize:vertical;line-height:1.7}
#listingForm input::placeholder,#listingForm textarea::placeholder{color:var(--lc-muted);opacity:.8}
#listingForm input:focus,#listingForm select:focus,#listingForm textarea:focus{outline:none;border-color:var(--lc-focus);box-shadow:0 0 0 3px rgba(47,122,92,.18);background:#fff}
#listingForm input:disabled,#listingForm select:disabled,#listingForm textarea:disabled{opacity:.6;cursor:not-allowed;background:#f0efe8}
#listingForm input:user-invalid,#listingForm select:user-invalid,#listingForm textarea:user-invalid{border-color:var(--lc-error)}
#listingForm .two{display:grid;grid-template-columns:1fr;gap:16px;margin-bottom:20px}
@media(min-width:480px){#listingForm .two{grid-template-columns:1fr 1fr}}
#listingForm>label{margin-bottom:20px}
#listingForm .check{display:flex;align-items:center;gap:10px;margin-bottom:20px;cursor:pointer;font-weight:500}
#listingForm .check input[type=checkbox]{width:20px;height:20px;min-height:auto;padding:0;accent-color:var(--lc-green);cursor:pointer}
#listingForm .check input[type=checkbox]:focus-visible{outline:3px solid var(--lc-focus);outline-offset:2px;border-radius:4px}
#listingForm fieldset{border:1px solid var(--lc-olive);border-radius:var(--lc-radius);padding:20px;margin-bottom:24px;background:var(--lc-paper)}
#listingForm fieldset legend{padding:0 8px;font-size:15px;font-weight:700;color:var(--lc-green)}
#listingForm fieldset legend small{font-weight:400;color:var(--lc-muted);font-size:12px;margin-inline-start:6px}
#listingForm .photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-bottom:16px}
#listingForm .photo-grid figure{position:relative;margin:0;border-radius:10px;overflow:hidden;border:1px solid var(--lc-line);background:#e8e6de}
#listingForm .photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
#listingForm .photo-grid figcaption{position:absolute;bottom:0;right:0;left:0;background:rgba(22,76,57,.85);color:#fff;font-size:11px;padding:4px 8px;text-align:center}
#listingForm .photo-grid button{position:absolute;top:6px;left:6px;width:44px;height:44px;border:none;border-radius:50%;background:rgba(255,255,255,.9);color:var(--lc-ink);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}
#listingForm .photo-grid button:hover{background:#fff}
#listingForm .photo-grid button:focus-visible{outline:3px solid var(--lc-focus);outline-offset:2px}
#listingForm .photo-grid [data-remove]{top:6px;right:6px;left:auto;color:var(--lc-error);font-weight:700}
#listingForm .photo-grid [data-first]{left:6px;top:6px}
#listingForm .upload-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:1px dashed var(--lc-olive);border-radius:var(--lc-radius);background:transparent;color:var(--lc-green);font-size:14px;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease}
#listingForm .upload-btn:hover{border-color:var(--lc-green);background:rgba(22,76,57,.04)}
#listingForm .upload-btn:focus-within{outline:3px solid var(--lc-focus);outline-offset:2px;border-color:var(--lc-focus)}
#listingForm .upload-btn input[type=file]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#listingForm #uploadStatus{margin-top:12px;font-size:13px;min-height:1.4em}
#listingForm .solid{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 32px;border:none;border-radius:var(--lc-radius);background:var(--lc-green);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background .2s ease,transform .15s ease,box-shadow .2s ease;width:100%}
#listingForm .solid:hover{background:var(--lc-green-2);box-shadow:var(--lc-shadow)}
#listingForm .solid:active{transform:translateY(1px)}
#listingForm .solid:focus-visible{outline:3px solid var(--lc-focus);outline-offset:3px}
#listingForm .solid:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
#listingForm .muted.small{font-size:13px}
@media(prefers-reduced-motion:reduce){#listingForm *{transition:none!important;animation:none!important}#listingForm .solid:active{transform:none}}
@media(max-width:320px){#listingForm{padding:16px}#listingForm .solid{padding:12px 20px;font-size:15px}#listingForm .photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:768px){#listingForm{padding:32px 48px}#listingForm .photo-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}
@media(min-width:1440px){#listingForm{max-width:1100px}}
#listingForm{min-width:0;overflow-wrap:anywhere}#listingForm .two{grid-template-columns:minmax(0,1fr)}#listingForm label,#listingForm fieldset{min-width:0}#listingForm input,#listingForm select,#listingForm textarea{min-width:0;max-width:100%}#listingForm [hidden]{display:none!important}@media(min-width:480px){#listingForm .two{grid-template-columns:repeat(2,minmax(0,1fr))}}
