.city-input{position:relative}.city-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.4rem}.city-chips:not([hidden]){display:flex!important}.city-chip{display:inline-flex;align-items:center;gap:.4rem;background:var(--c-marine);color:#fff;padding:.35rem .7rem;border-radius:999px;font-size:.88rem;font-weight:500}.city-chip button{background:#fff3;border:none;color:#fff;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;cursor:pointer;font-size:.78rem;line-height:1}.city-chip button:hover{background:#fff6}.city-search{position:relative}.city-suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--c-gris-clair);border-top:none;max-height:280px;overflow-y:auto;list-style:none;padding:0;margin:0;z-index:50;box-shadow:0 8px 24px -8px #00000026}.city-suggestions li{padding:.6rem .9rem;cursor:pointer;border-bottom:1px solid var(--c-gris-clair);font-size:.95rem}.city-suggestions li:last-child{border-bottom:none}.city-suggestions li:hover,.city-suggestions li[aria-selected=true]{background:var(--c-ivoire)}.city-suggestions .ci-meta{display:block;font-size:.8rem;color:var(--c-gris);margin-top:.1rem}.pdz{display:flex;flex-direction:column;gap:1rem}.pdz-zone{border:2px dashed var(--c-gris-clair);border-radius:8px;background:var(--c-ivoire);padding:3rem 1.5rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s,transform .1s;position:relative}.pdz-zone:hover,.pdz-zone:focus-visible{border-color:var(--c-ocre);background:#fff;outline:none}.pdz-zone.is-dragover{border-color:var(--c-ocre);border-style:solid;background:#c9a96e14;transform:scale(1.005)}.pdz-icon{color:var(--c-marine);margin-bottom:.6rem}.pdz-zone.is-dragover .pdz-icon{color:var(--c-ocre)}.pdz-title{font-family:var(--f-serif);font-size:1.55rem;color:var(--c-marine);margin:.3rem 0 .5rem;font-weight:600}.pdz-sub{color:var(--c-anthracite);font-size:1rem;margin-bottom:.35rem}.pdz-sub strong{color:var(--c-marine)}.pdz-meta{color:var(--c-gris);font-size:.85rem;margin-bottom:1.2rem}.pdz-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.4rem;background:var(--c-marine);color:#fff;border:none;border-radius:4px;font-family:var(--f-sans);font-weight:600;font-size:.95rem;cursor:pointer;transition:background .15s}.pdz-btn:hover{background:var(--c-marine-dark)}.pdz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.6rem}.pdz-tile{position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;background:var(--c-ivoire-dark);border:1px solid var(--c-gris-clair);cursor:grab}.pdz-tile:active{cursor:grabbing}.pdz-tile img{width:100%;height:100%;object-fit:cover;display:block}.pdz-tile.is-uploading:after{content:"";position:absolute;inset:0;background:#ffffffd9;backdrop-filter:blur(2px)}.pdz-tile .pdz-progress{position:absolute;inset:0;display:grid;place-items:center;color:var(--c-marine);font-size:.85rem;font-weight:600;pointer-events:none;z-index:1}.pdz-tile.is-uploading .pdz-progress{display:grid}.pdz-tile:not(.is-uploading) .pdz-progress{display:none}.pdz-tile.is-error{border-color:var(--c-alert)}.pdz-tile.is-error .pdz-progress{color:var(--c-alert);display:grid!important}.pdz-tile-remove{position:absolute;top:6px;right:6px;background:#0d1220d9;color:#fff;width:26px;height:26px;border-radius:50%;border:none;cursor:pointer;display:grid;place-items:center;font-size:1rem;line-height:1;z-index:2;transition:background .15s}.pdz-tile-remove:hover{background:var(--c-alert)}.pdz-tile-badge{position:absolute;bottom:6px;left:6px;background:#1b2a4eeb;color:#fff;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:999px;z-index:2}.pdz-counter{font-size:.85rem;color:var(--c-gris);text-align:center;margin:0}.pdz-overlay{position:fixed;inset:0;background:#0d1220c7;display:none;align-items:center;justify-content:center;z-index:9999;pointer-events:none}.pdz-overlay.is-active{display:flex}.pdz-overlay-box{background:#fff;border:3px dashed var(--c-ocre);border-radius:12px;padding:4rem 5rem;text-align:center;color:var(--c-marine)}.pdz-overlay-box svg{color:var(--c-ocre);margin-bottom:1rem}.pdz-overlay-box h2{font-family:var(--f-serif);font-size:2rem;color:var(--c-marine)}@media(max-width:520px){.pdz-zone{padding:2rem 1rem}.pdz-title{font-size:1.25rem}.pdz-overlay-box{padding:2rem}.pdz-overlay-box h2{font-size:1.4rem}}
