
:root{--gold:#b8892f;--gold2:#d4ad57;--dark:#241f19;--cream:#fbf7ef;--line:#dfcfb1}
*{box-sizing:border-box}html{min-height:100%}body{margin:0;min-height:100vh;font-family:Montserrat,Arial,sans-serif;color:var(--dark);background:linear-gradient(rgba(20,16,12,.45),rgba(20,16,12,.55)),url("../assets/hero_pool.jpg") center/cover fixed no-repeat}
.topbar{position:fixed;z-index:5;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:15px 5vw;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(184,137,47,.2)}
.home{font-family:"Playfair Display",serif;letter-spacing:4px;color:var(--gold);font-size:22px;text-decoration:none}.home span{font-family:"Great Vibes",cursive}.langs{display:flex;gap:6px}.langs button{border:0;background:transparent;padding:7px 9px;border-radius:99px;cursor:pointer;font:600 11px Montserrat;color:#5a4a36}.langs button.active{background:var(--gold);color:white}
.upload-shell{min-height:100vh;display:grid;place-items:center;padding:100px 18px 45px}.upload-card{width:min(650px,100%);background:rgba(255,255,255,.97);padding:42px;border:1px solid rgba(184,137,47,.35);box-shadow:0 28px 80px rgba(0,0,0,.3);text-align:center}.monogram{font-family:"Playfair Display",serif;color:var(--gold);font-size:26px;letter-spacing:8px}.monogram span{font-family:"Great Vibes",cursive}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:3px;font-size:12px;margin:20px 0 8px}.upload-card h1{font-family:"Playfair Display",serif;font-size:clamp(36px,7vw,52px);font-weight:400;line-height:1.08;margin:8px 0 18px}.lead{line-height:1.75;color:#5f554a;margin:0 auto 22px;max-width:540px}.privacy-note{font-size:12px;line-height:1.55;background:#fbf5e8;border:1px solid #ead9b8;padding:12px 14px;margin:18px 0 25px;color:#6e5b3d}
.field{text-align:left;display:block;margin-bottom:18px}.field span{display:block;font-weight:600;font-size:12px;margin:0 0 7px}.field input{width:100%;border:1px solid var(--line);padding:13px 14px;font:inherit;background:white}.dropzone{display:block;border:2px dashed #c8a55f;padding:28px 18px;background:#fffaf0;cursor:pointer;transition:.2s}.dropzone:hover,.dropzone.drag{background:#fbf0d9;border-color:#9d7326}.dropzone input{display:none}.camera{font-size:34px;margin-bottom:8px}.dropzone strong{display:block;font-family:"Playfair Display",serif;font-size:22px;color:#8f6723}.dropzone span{display:block;font-size:11px;color:#786a58;margin-top:8px}
.selection{margin:16px 0;text-align:left;background:#fff;border:1px solid #eadfc9;padding:12px}.selection .row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #eee5d8;padding:7px 0;font-size:12px}.selection .row:last-child{border-bottom:0}.selection .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection .size{white-space:nowrap;color:#887250}.upload-btn{width:100%;border:0;margin-top:18px;padding:15px 20px;background:linear-gradient(135deg,#c99b3a,#95681e);color:#fff;text-transform:uppercase;letter-spacing:1.4px;font-weight:700;cursor:pointer}.upload-btn:disabled{opacity:.45;cursor:not-allowed}.progress-wrap{margin-top:18px}.progress-track{height:8px;background:#eee5d6;overflow:hidden}.progress-bar{height:100%;width:0;background:linear-gradient(90deg,#a87b28,#d4ad57);transition:width .2s}.progress-wrap p{font-size:12px;color:#7b6747}.status{margin-top:15px;line-height:1.6;font-size:14px;min-height:22px}.status.success{color:#386b3b}.status.error{color:#9f352f}.back{display:inline-block;margin-top:24px;color:#8c6727;font-size:12px;text-decoration:none}
@media(max-width:600px){.upload-card{padding:30px 20px}.upload-shell{padding-top:90px}.topbar{padding:12px 14px}.langs button{padding:6px 7px}}
