:root{--primary-color:#e67e6a;--primary-color-hover:#d86b57;--text-main:#1a1a1a;--text-muted:#4b5563;--border-color:#e2e8f0;--bg-light:#f8fafc;--bg-lighter:#fafafa;--font-heading:"Playfair Display", Georgia, serif;--font-sans:"Inter", -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--text-main);background-color:#fff;line-height:1.5;overflow-x:hidden}.upload-header{border-bottom:1px solid var(--border-color);z-index:100;background:#fff;padding:16px 24px;position:sticky;top:0;box-shadow:0 2px 4px #00000008}.upload-header-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.logo-btn{color:var(--text-main);cursor:pointer;font-size:1rem;font-weight:700;font-family:var(--font-heading);background:0 0;border:none;align-items:center;gap:12px;text-decoration:none;transition:color .2s;display:flex}.logo-btn:hover{color:var(--primary-color)}.header-info{align-items:center;gap:16px;display:flex}.step-badge{color:#2563eb;background:#eff6ff;border-radius:20px;padding:6px 12px;font-size:.85rem;font-weight:600}.upload-main{background:linear-gradient(135deg,#fafafa 0%,#fff 100%);flex-direction:column;min-height:100vh;display:flex}.upload-progress{width:100%;max-width:1200px;margin:0 auto;padding:40px 24px 32px}.progress-bar{background:var(--border-color);border-radius:2px;height:4px;margin-bottom:32px;overflow:hidden}.progress-fill{background:var(--primary-color);border-radius:2px;height:100%;transition:width .3s}.progress-steps{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.step-item{opacity:.5;flex-direction:column;align-items:center;gap:8px;transition:opacity .2s;display:flex}.step-item.active{opacity:1}.step-num{background:var(--border-color);width:40px;height:40px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.step-item.active .step-num{background:var(--primary-color);color:#fff}.step-label{color:var(--text-muted);text-align:center;font-size:.9rem;font-weight:500}.step-item.active .step-label{color:var(--text-main);font-weight:600}.upload-container{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:0 24px 48px}.upload-zone-wrapper{max-width:800px;margin:0 auto}.upload-title{font-size:2.5rem;font-weight:700;font-family:var(--font-heading);text-align:center;color:var(--text-main);margin-bottom:12px}.upload-subtitle{text-align:center;color:var(--text-muted);margin-bottom:40px;font-size:1.1rem}.upload-dropzone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;background:#fff;border-radius:16px;margin-bottom:40px;padding:80px 40px;transition:all .3s}.upload-dropzone:hover{border-color:var(--primary-color);background:#fafafa;box-shadow:0 8px 24px #e67e6a14}.upload-dropzone.drag-active{border-color:var(--primary-color);background:#fafafa;transform:scale(1.01);box-shadow:0 12px 32px #e67e6a1f}.dropzone-content{flex-direction:column;align-items:center;gap:16px;display:flex}.dropzone-content i{color:var(--primary-color);opacity:.8}.dropzone-content h3{color:var(--text-main);margin:0;font-size:1.4rem;font-weight:700}.dropzone-content p{color:var(--text-muted);margin:0;font-size:1rem}.file-hint{color:#94a3b8;margin-top:8px;font-size:.85rem}.trust-section{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;display:grid}.trust-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;align-items:flex-start;gap:16px;padding:24px;transition:all .2s;display:flex}.trust-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #e67e6a14}.trust-card i{color:var(--primary-color);flex-shrink:0;margin-top:2px}.trust-card h4{color:var(--text-main);font-size:.95rem;font-weight:600;font-family:var(--font-heading);margin-bottom:4px}.trust-card p{color:var(--text-muted);margin:0;font-size:.85rem}.gallery-wrapper{animation:.3s fadeIn}.gallery-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;display:flex}.gallery-title{font-size:1.8rem;font-weight:700;font-family:var(--font-heading);color:var(--text-main)}.btn-secondary{border:1px solid var(--border-color);color:var(--text-main);cursor:pointer;font-size:.9rem;font-weight:600;font-family:var(--font-sans);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;transition:all .2s;display:flex}.btn-secondary:hover{border-color:var(--primary-color);color:var(--primary-color);background:#fafafa}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin-bottom:32px;display:grid}.photo-card{border:1px solid var(--border-color);aspect-ratio:1;cursor:pointer;group:photo-card;background:#fff;border-radius:12px;transition:all .2s;animation:.3s slideIn;position:relative;overflow:hidden}.photo-card:hover{border-color:var(--primary-color);transform:translateY(-4px);box-shadow:0 8px 24px #e67e6a1f}.photo-card img{object-fit:cover;width:100%;height:100%}.photo-overlay{opacity:0;background:#00000080;justify-content:center;align-items:center;gap:12px;transition:opacity .2s;display:flex;position:absolute;inset:0}.photo-card:hover .photo-overlay{opacity:1}.btn-preview,.btn-delete{width:44px;height:44px;color:var(--text-main);cursor:pointer;background:#fff;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.btn-preview:hover{background:var(--primary-color);color:#fff;transform:scale(1.1)}.btn-delete:hover{color:#fff;background:#ef4444;transform:scale(1.1)}.photo-info{color:#fff;opacity:0;background:linear-gradient(#0000,#000c);flex-direction:column;gap:2px;padding:12px;transition:opacity .2s;display:flex;position:absolute;bottom:0;left:0;right:0}.photo-card:hover .photo-info{opacity:1}.photo-name{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:600;overflow:hidden}.photo-size{opacity:.8;font-size:.75rem}.upload-footer{border-top:1px solid var(--border-color);background:#fff;margin-top:auto;padding:24px}.footer-content{max-width:1200px;margin:0 auto}.footer-info{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer-info span{color:var(--text-muted);font-size:1rem}.footer-info strong{color:var(--text-main);font-weight:700}.footer-hint{color:var(--text-muted);justify-content:center;align-items:center;gap:8px;font-size:.95rem;display:flex}.footer-hint i{opacity:.6}.btn-primary{background:var(--primary-color);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;font-family:var(--font-sans);border:none;border-radius:8px;align-items:center;gap:8px;padding:12px 32px;transition:all .2s;display:flex}.btn-primary:hover{background:var(--primary-color-hover);transform:translateY(-2px);box-shadow:0 8px 16px #e67e6a4d}.btn-close{cursor:pointer;width:44px;height:44px;color:var(--text-main);z-index:10;background:#fff;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:16px;right:16px}.btn-close:hover{background:var(--border-color);transform:rotate(90deg)}.preview-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.preview-modal{background:#fff;border-radius:16px;max-width:90vw;max-height:90vh;animation:.3s slideUp;position:relative;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.preview-image{object-fit:contain;width:100%;height:100%;max-height:calc(90vh - 80px);display:block}.preview-info{background:var(--bg-light);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.preview-filename{color:var(--text-main);margin:0;font-size:.95rem;font-weight:600}.preview-size{color:var(--text-muted);margin:0;font-size:.85rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.upload-title{font-size:1.8rem}.upload-dropzone{padding:60px 24px}.dropzone-content h3{font-size:1.2rem}.progress-steps{grid-template-columns:1fr;gap:12px}.step-item{flex-direction:row;justify-content:center;gap:12px}.gallery-header{flex-direction:column;align-items:stretch}.btn-secondary{justify-content:center;width:100%}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.footer-info{flex-direction:column;align-items:stretch}.btn-primary{justify-content:center;width:100%}.trust-section{grid-template-columns:1fr}}
