@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;900&family=Raleway:wght@300;400;600&display=swap";
:root{--gold:#c9a84c;--gold-light:#e0c97f;--gold-dark:#a8872e;--black:#0a0a0a;--dark:#1a1a1a;--dark-mid:#2a2a2a;--cream:#f5f0e8;--white:#fefefe;--gray:#888}html,body{background-color:var(--black);color:var(--cream);margin:0;padding:0;font-family:Raleway,sans-serif;font-weight:300;line-height:1.6}*{box-sizing:border-box}h1,h2,h3,h4{letter-spacing:.04em;font-family:Playfair Display,serif;font-weight:700}.deco-divider{justify-content:center;align-items:center;gap:12px;margin:2rem 0;display:flex}.deco-divider:before,.deco-divider:after{content:"";background:linear-gradient(90deg,transparent,var(--gold),transparent);flex:1;max-width:120px;height:1px}.deco-divider span{color:var(--gold);font-size:1.2rem}.page-wrapper{flex-direction:column;min-height:100vh;display:flex}.site-header{text-align:center;border-bottom:1px solid var(--dark-mid);background:linear-gradient(180deg,var(--dark)0%,var(--black)100%);padding:3rem 1.5rem 1rem}.site-header h1{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;margin:0 0 .25rem;font-size:3rem;font-weight:900}.site-header .tagline{color:var(--gray);letter-spacing:.2em;text-transform:uppercase;margin:0;font-family:Raleway,sans-serif;font-size:1rem;font-weight:300}.site-nav{background:var(--dark);border-bottom:2px solid var(--gold-dark);justify-content:center;gap:2rem;padding:1rem;display:flex}.site-nav button{color:var(--cream);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-family:Raleway,sans-serif;font-size:.85rem;font-weight:600;transition:color .3s;position:relative}.site-nav button:hover,.site-nav button.active{color:var(--gold)}.site-nav button.active:after{content:"";background:var(--gold);width:30px;height:2px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.gallery-item{background:var(--dark);border:1px solid var(--dark-mid);transition:border-color .3s,transform .3s;position:relative;overflow:hidden}.gallery-item:hover{border-color:var(--gold-dark);transform:translateY(-4px)}.gallery-item img{object-fit:cover;width:100%;height:250px;display:block}.gallery-item .item-info{border-top:2px solid var(--gold-dark);padding:1rem 1.2rem}.gallery-item .item-info h3{color:var(--gold-light);margin:0 0 .4rem;font-size:1rem}.gallery-item .item-info p{color:var(--gray);margin:0;font-size:.85rem;line-height:1.5}.gallery-item .delete-btn{border:1px solid var(--dark-mid);color:var(--gray);cursor:pointer;opacity:0;background:#0a0a0acc;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;transition:opacity .3s,color .3s,border-color .3s;display:flex;position:absolute;top:8px;right:8px}.gallery-item:hover .delete-btn{opacity:1}.gallery-item .delete-btn:hover{color:#e74c3c;border-color:#e74c3c}.upload-section{max-width:600px;margin:0 auto}.upload-area{border:2px dashed var(--dark-mid);text-align:center;cursor:pointer;background:var(--dark);margin-bottom:1.5rem;padding:3rem 2rem;transition:border-color .3s,background .3s}.upload-area:hover,.upload-area.drag-over{border-color:var(--gold);background:var(--dark-mid)}.upload-area .upload-icon{color:var(--gold);margin-bottom:.75rem;font-size:2.5rem}.upload-area p{color:var(--gray);margin:0;font-size:.9rem}.upload-area .browse-link{color:var(--gold);cursor:pointer;text-decoration:underline}.upload-preview{margin-bottom:1.5rem}.upload-preview img{object-fit:contain;border:1px solid var(--dark-mid);width:100%;max-height:300px}.form-group{margin-bottom:1.2rem}.form-group label{letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem;font-size:.8rem;font-weight:600;display:block}.form-group input,.form-group textarea{background:var(--dark);border:1px solid var(--dark-mid);width:100%;color:var(--cream);padding:.75rem 1rem;font-family:Raleway,sans-serif;font-size:.9rem;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{border-color:var(--gold);outline:none}.form-group textarea{resize:vertical;min-height:80px}.btn-primary{background:var(--gold);color:var(--black);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:none;width:100%;padding:.8rem 2rem;font-family:Raleway,sans-serif;font-size:.85rem;font-weight:600;transition:background .3s}.btn-primary:hover{background:var(--gold-light)}.btn-primary:disabled{background:var(--dark-mid);color:var(--gray);cursor:not-allowed}.empty-state{text-align:center;color:var(--gray);padding:4rem 2rem}.empty-state .empty-icon{color:var(--dark-mid);margin-bottom:1rem;font-size:3rem}.empty-state h3{color:var(--cream);margin:0 0 .5rem}.empty-state p{margin:0;font-size:.9rem}.site-footer{text-align:center;border-top:1px solid var(--dark-mid);background:var(--dark);padding:2rem 1.5rem}.site-footer .footer-deco{color:var(--gold);letter-spacing:.5em;margin-bottom:.5rem;font-size:1.2rem}.site-footer p{color:var(--gray);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.75rem}.loading{text-align:center;color:var(--gray);padding:3rem}.loading-spinner{border:2px solid var(--dark-mid);border-top-color:var(--gold);border-radius:50%;width:24px;height:24px;margin-bottom:.5rem;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.status-message{text-align:center;border:1px solid;margin-bottom:1rem;padding:.75rem;font-size:.85rem}.status-message.success{color:#4caf50;background:#4caf501a;border-color:#4caf50}.status-message.error{color:#e74c3c;background:#e74c3c1a;border-color:#e74c3c}@media (max-width:600px){.site-header h1{font-size:2rem}.gallery-grid{grid-template-columns:1fr}.site-nav{gap:1rem}.site-nav button{padding:.4rem .6rem;font-size:.75rem}}
