.modal-backdrop{background:var(--backdrop);z-index:1070;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.modal-panel{background:var(--background);border:1px solid var(--border-subtle);box-shadow:0 1.5rem 5rem var(--shadow-color);border-radius:1rem;width:100%;max-height:calc(100vh - 2.5rem);overflow:hidden}.modal-panel--sm{max-width:28rem}.modal-panel--md{max-width:42rem}.modal-panel--lg{max-width:47.5rem}.modal-panel--xl{max-width:70rem}.modal-panel>form,.modal-form{flex-direction:column;max-height:calc(100vh - 2.5rem);display:flex}.modal-panel>.modal-header+form{max-height:calc(100vh - 7.5rem)}.modal-header{background:linear-gradient(135deg, color-mix(in srgb, var(--marketplace-accent) 8%, var(--surface-raised)), var(--surface-raised));border-bottom:1px solid var(--border-subtle);flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.9rem;padding:1.25rem 1.4rem;display:grid}.modal-header__content{align-items:center;gap:.75rem;min-width:0;display:flex}.modal-header__icon{background:var(--accent-surface);color:var(--marketplace-accent);border-radius:.55rem;flex:0 0 2.35rem;justify-content:center;align-items:center;height:2.35rem;display:flex}.modal-header__eyebrow{color:var(--marketplace-accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .15rem;font-size:.65rem;font-weight:800}.modal-header__title{color:var(--foreground);margin:0;font-size:1.2rem;font-weight:750}.modal-header__description{color:var(--text-secondary);margin:.18rem 0 0;font-size:.76rem;line-height:1.45}.modal-header__close{color:var(--text-secondary);background:0 0;border:0;border-radius:.45rem;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}.modal-header__close:hover:not(:disabled),.modal-header__close:focus-visible{background:var(--surface-hover);color:var(--foreground)}.modal-header__close:disabled{cursor:not-allowed;opacity:.5}.modal-body{flex:auto;padding:1.25rem 1.4rem;overflow-y:auto}.modal-body--compact{padding-bottom:0}.modal-body>.modal-field+.modal-field,.modal-body>.modal-field+.modal-grid,.modal-body>.modal-grid+.modal-field,.modal-body>.modal-field__help+.modal-field{margin-top:.9rem}.modal-section+.modal-section{border-top:1px solid var(--border-subtle);margin-top:1.35rem;padding-top:1.35rem}.modal-section__heading{align-items:flex-start;gap:.7rem;margin-bottom:1rem;display:flex}.modal-section__heading>span{background:var(--accent-surface);color:var(--marketplace-accent);border-radius:.5rem;flex:0 0 2.1rem;justify-content:center;align-items:center;height:2.1rem;display:flex}.modal-section__heading h3{color:var(--foreground);margin:0 0 .15rem;font-size:.9rem;font-weight:750}.modal-section__heading p{color:var(--text-secondary);margin:0;font-size:.72rem}.modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.modal-grid+.modal-grid,.modal-spaced{margin-top:.9rem}.modal-location-grid,.modal-price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;display:grid}.modal-field{min-width:0}.modal-field--layered{z-index:2;position:relative}.modal-field--full{grid-column:1/-1}.modal-field>label{color:var(--foreground);margin-bottom:.4rem;font-size:.76rem;font-weight:700;display:block}.modal-field>label>span{color:var(--text-secondary);margin-left:.3rem;font-size:.65rem;font-weight:600}.modal-field>input,.modal-field>select,.modal-field>textarea{background:var(--background);border:1px solid var(--border-subtle);color:var(--foreground);border-radius:.48rem;width:100%;min-height:2.7rem;padding:.65rem .75rem;font-size:.84rem;transition:border-color .18s,box-shadow .18s}.modal-field>textarea{resize:vertical;min-height:6rem}.modal-field>input:focus,.modal-field>select:focus,.modal-field>textarea:focus{border-color:var(--marketplace-accent);box-shadow:0 0 0 .2rem color-mix(in srgb, var(--marketplace-accent) 14%, transparent);outline:0}.modal-field>input.is-invalid,.modal-field>select.is-invalid,.modal-field>textarea.is-invalid{border-color:var(--danger)}.modal-field>input:disabled,.modal-field>select:disabled,.modal-field>textarea:disabled{background:var(--surface-muted);cursor:not-allowed;opacity:.72}.modal-field__error{color:var(--danger);margin-top:.3rem;font-size:.69rem;display:block}.modal-field__help{color:var(--text-secondary);margin-top:.35rem;font-size:.68rem;line-height:1.45;display:block}.modal-field__logo-preview{border:1px solid var(--border-subtle);object-fit:cover;border-radius:.65rem;width:4rem;height:4rem}.modal-password{position:relative}.modal-password>input{padding-right:2.75rem}.modal-password__toggle{color:var(--text-secondary);background:0 0;border:0;border-radius:.25rem;justify-content:center;align-items:center;padding:.375rem;display:flex;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.modal-password__toggle:hover,.modal-password__toggle:focus-visible{background:var(--surface-hover);color:var(--foreground)}.modal-retry{color:var(--danger);text-align:left;background:0 0;border:0;margin-top:.32rem;padding:0;font-size:.68rem}.modal-retry:hover,.modal-retry:focus-visible{text-decoration:underline}.modal-price-input{position:relative}.modal-price-input>input{background:var(--background);border:1px solid var(--border-subtle);color:var(--foreground);font:inherit;border-radius:.48rem;width:100%;min-height:2.7rem;padding:.65rem 2rem .65rem .75rem;font-size:.84rem}.modal-price-input>input:focus{border-color:var(--marketplace-accent);box-shadow:0 0 0 .2rem color-mix(in srgb, var(--marketplace-accent) 14%, transparent);outline:0}.modal-price-input>input.is-invalid{border-color:var(--danger)}.modal-price-input>span{color:var(--text-secondary);pointer-events:none;font-size:.76rem;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.modal-toggle{background:var(--surface-raised);border:1px solid var(--border-subtle);cursor:pointer;border-radius:.65rem;align-items:center;gap:.7rem;min-height:3.35rem;margin-top:1.4rem;padding:.65rem .75rem;display:flex}.modal-toggle>input{opacity:0;width:1px;height:1px;position:absolute}.modal-toggle>input+span{background:var(--surface-muted);border:1px solid var(--border-subtle);border-radius:999px;flex:0 0 2.3rem;height:1.3rem;transition:background .18s,border-color .18s;position:relative}.modal-toggle>input+span:after{background:var(--text-secondary);content:"";border-radius:50%;width:.85rem;height:.85rem;transition:transform .18s,background .18s;position:absolute;top:.17rem;left:.2rem}.modal-toggle>input:checked+span{background:var(--marketplace-accent);border-color:var(--marketplace-accent)}.modal-toggle>input:checked+span:after{background:var(--background);transform:translate(1rem)}.modal-toggle>input:focus-visible+span{box-shadow:0 0 0 .2rem color-mix(in srgb, var(--marketplace-accent) 20%, transparent)}.modal-toggle>span:last-child{flex-direction:column;min-width:0;display:flex}.modal-toggle strong{color:var(--foreground);font-size:.75rem}.modal-toggle small{color:var(--text-secondary);font-size:.66rem}.modal-alert{border:1px solid;border-radius:.65rem;align-items:flex-start;gap:.6rem;margin-bottom:1rem;padding:.75rem .85rem;font-size:.8rem;display:flex}.modal-alert:last-child{margin-bottom:0}.modal-alert--danger{background:var(--danger-surface);border-color:color-mix(in srgb, var(--danger) 35%, transparent);color:var(--danger)}.modal-alert--warning{background:var(--warning-surface);border-color:color-mix(in srgb, var(--warning) 35%, transparent);color:var(--warning)}.modal-alert--info{background:var(--info-surface);border-color:color-mix(in srgb, var(--info) 35%, transparent);color:var(--info)}.modal-alert--success{background:var(--success-surface);border-color:color-mix(in srgb, var(--success) 35%, transparent);color:var(--success)}.modal-discard{background:color-mix(in srgb, var(--danger) 8%, var(--surface-raised));border:1px solid color-mix(in srgb, var(--danger) 30%, transparent);border-radius:.7rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;margin-top:1rem;padding:.8rem;display:grid}.modal-discard__icon{background:var(--danger-surface);color:var(--danger);border-radius:.5rem;justify-content:center;align-items:center;width:2.15rem;height:2.15rem;display:flex}.modal-discard strong{color:var(--foreground);font-size:.78rem;display:block}.modal-discard p{color:var(--text-secondary);margin:.1rem 0 0;font-size:.7rem}.modal-discard__actions{gap:.4rem;display:flex}.modal-discard__actions button{border:1px solid var(--border-subtle);color:var(--foreground);background:0 0;border-radius:.4rem;padding:.4rem .55rem;font-size:.7rem;font-weight:700}.modal-discard__actions button.is-danger{border-color:var(--danger);color:var(--danger)}.modal-footer{background:var(--surface-raised);border-top:1px solid var(--border-subtle);flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.4rem;display:flex}.modal-footer__status{color:var(--text-secondary);font-size:.68rem}.modal-footer__actions{gap:.55rem;margin-left:auto;display:flex}.modal-button{border:1px solid #0000;border-radius:.48rem;justify-content:center;align-items:center;gap:.4rem;min-height:2.45rem;padding:.55rem .85rem;font-size:.76rem;font-weight:750;display:inline-flex}.modal-button--secondary{border-color:var(--border-subtle);color:var(--foreground);background:0 0}.modal-button--secondary:hover:not(:disabled){background:var(--surface-hover)}.modal-button--primary{background:var(--marketplace-accent);color:var(--on-accent)}.modal-button--primary:hover:not(:disabled){background:var(--marketplace-accent-hover)}.modal-button--danger{background:var(--danger);color:var(--background)}.modal-button:disabled{cursor:not-allowed;opacity:.5}.modal-spinner,.modal-button__spinner{border:2px solid color-mix(in srgb, var(--on-accent) 35%, transparent);border-top-color:var(--on-accent);border-radius:50%;width:.9rem;height:.9rem;animation:.65s linear infinite modal-spin;display:inline-block}@keyframes modal-spin{to{transform:rotate(360deg)}}.modal-change-state{color:var(--text-secondary);align-items:center;gap:.4rem;font-size:.68rem;display:flex}.modal-change-state>i{color:var(--success);font-size:.55rem}.modal-change-state.is-dirty>i{color:var(--marketplace-accent)}@media (max-width:640px){.modal-backdrop{align-items:flex-end;padding:0}.modal-panel{border-bottom:0;border-radius:1rem 1rem 0 0;max-height:96vh}.modal-panel>form,.modal-form{max-height:96vh}.modal-panel>.modal-header+form{max-height:calc(96vh - 5rem)}.modal-header,.modal-body{padding:1rem}.modal-grid,.modal-location-grid,.modal-price-grid{grid-template-columns:1fr}.modal-toggle{margin-top:0}.modal-field--full{grid-column:auto}.modal-discard{grid-template-columns:auto 1fr;align-items:flex-start}.modal-discard__actions{grid-column:1/-1;justify-content:flex-end}.modal-footer{padding:.8rem 1rem max(.8rem, env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.modal-footer__actions{grid-template-columns:.7fr 1.3fr;margin-left:0;display:grid}.modal-footer__status{text-align:center;order:2}}@media (prefers-reduced-motion:reduce){.modal-spinner,.modal-button__spinner,.modal-toggle>input+span,.modal-toggle>input+span:after{transition:none;animation:none}}@media (max-width:380px){.modal-footer__actions{grid-template-columns:1fr}}
