.place-photo-manager{margin-top:24px}.photo-manager-header{margin-bottom:16px}.photo-manager-header h3{font-size:18px;font-weight:600;margin:0 0 8px;color:#111}.photo-tip{font-size:14px;color:#666;margin:0}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-bottom:20px}.sortable-photo-item{position:relative;background:#f8f8f8;border-radius:8px;overflow:hidden;cursor:move;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.08)}.sortable-photo-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.12)}.sortable-photo-item.large .photo-container{height:150px}.photo-container{position:relative;width:100%;height:150px;overflow:hidden;background:#f5f5f5}.photo-container img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.delete-btn{position:absolute;top:8px;right:8px;background:rgba(239,68,68,.9);color:white;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all .2s ease;font-size:20px;font-weight:700;line-height:1;box-shadow:0 2px 4px rgba(0,0,0,.2)}.sortable-photo-item:hover .delete-btn{opacity:1}.delete-btn:hover{background:#dc2626;transform:scale(1.1)}.photo-dropzone{border:2px dashed #d1d5db;border-radius:8px;padding:32px;text-align:center;transition:all .2s ease;background-color:#fafafa}.photo-dropzone.active,.photo-dropzone:hover{border-color:#e05c33;background-color:#fff5f0}.photo-dropzone.active{box-shadow:0 0 0 4px rgba(224,92,51,.1)}.select-photos-btn{padding:10px 24px;background-color:#e05c33;color:white;border:none;border-radius:6px;font-weight:500;font-size:14px;cursor:pointer;transition:background-color .2s ease;margin-bottom:12px}.select-photos-btn:hover{background-color:#d04020}.dropzone-text{margin:12px 0 4px;font-size:14px;color:#666}.dropzone-hint{margin:0;font-size:13px;color:#999}.upload-progress{display:flex;flex-direction:column;align-items:center;gap:8px}.progress-bar{width:200px;height:6px;background-color:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background-color:#e05c33;transition:width .3s ease}.place-photo-gallery h3{font-size:18px;font-weight:600;margin:24px 0 16px;color:#111}.photo-grid-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.photo-item-view{position:relative;height:150px;border-radius:8px;overflow:hidden;background:#f5f5f5}.photo-item-view img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.photo-lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:1000}.photo-lightbox-content{position:relative;max-width:90vw;max-height:90vh}.photo-lightbox-content img{max-width:90vw;max-height:90vh;border-radius:8px;-o-object-fit:contain;object-fit:contain}.photo-lightbox-content.delete-modal{max-width:480px;padding:24px;background:#fff;border-radius:12px;color:#111}.lightbox-close{top:-40px;right:0;background:none;font-size:32px}.lightbox-close,.lightbox-nav{position:absolute;border:none;color:white;cursor:pointer}.lightbox-nav{top:50%;transform:translateY(-50%);background:rgba(0,0,0,.4);font-size:40px;width:48px;height:48px;border-radius:50%}.lightbox-prev{left:-60px}.lightbox-next{right:-60px}.delete-modal-preview{margin:16px 0;border-radius:8px;overflow:hidden;background:#f5f5f5}.delete-modal-preview img{width:100%;height:240px;-o-object-fit:cover;object-fit:cover;display:block}.skip-confirm-toggle{display:flex;align-items:center;gap:8px;font-size:14px;color:#555;margin-bottom:16px}.delete-modal-actions{display:flex;justify-content:flex-end;gap:12px}.btn-cancel,.btn-delete{border:none;border-radius:6px;padding:10px 18px;font-weight:600;cursor:pointer}.btn-cancel{background:#e5e7eb;color:#111}.btn-delete{background:#dc2626;color:white}@media (max-width:768px){.photo-grid,.photo-grid-view{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px}.photo-container,.photo-item-view,.sortable-photo-item.large .photo-container{height:100px}.delete-btn{width:24px;height:24px;font-size:16px}.photo-dropzone{padding:24px}}