:root{--ink:#342e2b;--muted:#7a716b;--cream:#faf8f4;--sand:#eae1d7;--accent:#9b675c;--accent-dark:#785047;--white:#fff;--border:#e9e2da}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.container{max-width:1140px;padding:0 22px;margin:auto}.hero{text-align:center;padding:78px 12px 70px;background:radial-gradient(ellipse at center,#fff 0%,#fbf5ef 64%,transparent 100%)}.eyebrow{font-size:11px;letter-spacing:.25em;font-weight:700;color:var(--accent);text-transform:uppercase}.hero h1{font:normal clamp(46px,8vw,82px)/1.1 Georgia,serif;margin:17px 0;color:#63443e}.hero p,.section-heading p,.share p{color:var(--muted);margin:8px 0 0}.topnav{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{border-radius:50px;border:1px solid transparent;padding:12px 22px;font-weight:600;transition:background .15s,transform .15s;display:inline-block;text-decoration:none}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-primary{background:var(--accent);color:white}.btn-primary:hover{background:var(--accent-dark)}.btn-outline{border-color:#c9aaa1;background:transparent;color:var(--accent-dark)}.btn-secondary{background:#ede0da;color:#6f443c}.panel{background:white;border:1px solid var(--border);border-radius:24px;padding:30px;margin-bottom:28px;box-shadow:0 8px 35px #6c55410a}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:24px}h2{font:normal clamp(29px,4vw,39px)/1.18 Georgia,serif;margin:9px 0 0;color:#63443e}.drop-area{border:2px dashed #d6c6bb;background:#fcfaf8;border-radius:17px;text-align:center;padding:34px 20px;display:flex;align-items:center;flex-direction:column;gap:9px}.drop-area.dragover{background:#f3e8e1;border-color:var(--accent)}.drop-area strong{font-size:18px}.drop-area span,.drop-area small{color:var(--muted)}.drop-area small{margin-top:6px}.upload-icon{font-size:38px;line-height:1;color:var(--accent)}.file-queue{margin:16px 0;display:grid;gap:10px}.file-row{display:grid;grid-template-columns:62px minmax(0,1fr) 190px 32px;align-items:center;gap:14px;padding:10px;border-radius:12px;border:1px solid var(--border)}.file-preview{height:60px;width:60px;background:#efe6e0;color:var(--accent-dark);display:grid;place-items:center;border-radius:9px;font-size:23px;overflow:hidden}.file-preview img{width:100%;height:100%;object-fit:cover}.file-name{min-width:0}.file-name strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-name small{color:var(--muted)}select{min-width:0;width:100%;border:1px solid var(--border);padding:10px;border-radius:9px;background:#fff;color:var(--ink)}.remove{border:0;background:transparent;color:#956759;font-size:25px}.upload-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.upload-footer #uploadMessage{color:#487358;font-size:13px}.upload-footer .error{color:#b33f38!important}.share{display:flex;align-items:center;justify-content:space-between;gap:30px}.share .btn{margin-top:20px}.qr-wrap{text-align:center;min-width:220px}.qr-wrap #qrcode{min-height:180px;display:grid;place-items:center}.qr-wrap #qrcode img,.qr-wrap #qrcode canvas{border:8px solid #fff}.link-button{background:none;border:0;color:var(--accent);text-decoration:underline;margin-top:8px}.album-section{padding:42px 0}.filters{min-width:180px}.filters label{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.tile{position:relative;width:100%;aspect-ratio:1;border:0;border-radius:12px;overflow:hidden;padding:0;background:#e9ded6;text-align:left}.tile img,.tile video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.tile:hover img,.tile:hover video{transform:scale(1.05)}.tile-badge{position:absolute;bottom:9px;left:9px;background:#ffffffeb;padding:4px 10px;border-radius:20px;font-size:11px;color:#5e423e}.play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;display:grid;place-items:center;background:#0008;border-radius:50%;color:white;font-size:19px}.loadmore{text-align:center;margin:26px 0}.empty{text-align:center;padding:40px 0;color:var(--muted)}footer{text-align:center;padding:45px 0;color:#a28e81;font-size:13px}dialog{max-width:min(96vw,1100px);max-height:94vh;width:max-content;border:0;padding:18px;background:#201b19;color:#fff;border-radius:15px}dialog::backdrop{background:#000c}#viewerBody img,#viewerBody video{display:block;max-width:min(88vw,1000px);max-height:77vh;object-fit:contain}.close-viewer{position:absolute;right:10px;top:4px;background:#333b;color:#fff;border:0;border-radius:50%;height:33px;width:33px;font-size:24px}.viewer-info{display:flex;justify-content:space-between;gap:20px;margin-top:12px;color:#d7c9c1;font-size:13px}.viewer-info a{color:#fff}@media(max-width:800px){.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{padding:60px 0}.share{flex-direction:column;text-align:center}.file-row{grid-template-columns:50px minmax(0,1fr) 30px}.file-preview{width:50px;height:50px}.file-row select{grid-column:2/3;grid-row:2}.file-row .remove{grid-column:3;grid-row:1}}@media(max-width:520px){.container{padding:0 14px}.panel{padding:19px;border-radius:17px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.section-heading{align-items:stretch;flex-direction:column}.hero h1{font-size:51px}.drop-area{padding:26px 12px}.upload-footer{justify-content:center}.filters{width:100%}}
