@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{color:#171918;font-synthesis:none;--ink:#171918;--soft:#6f756f;--line:#dedfd9;--card:#fff;--accent:#1c5b45;--accent2:#dff1e8;background:#f6f7f4;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 78% 8%,#e8f0e7 0,#0000 28%),#f6f7f4;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}.topbar{justify-content:space-between;align-items:center;max-width:1180px;height:72px;margin:auto;padding:0 22px;display:flex}.brand{align-items:center;gap:10px;font:700 18px Manrope;display:flex}.mark{color:#fff;background:#171918;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.topnote{color:var(--soft);align-items:center;gap:7px;font-size:13px;display:flex}.shell{max-width:1180px;margin:auto;padding:26px 22px 70px}.hero{grid-template-columns:1.3fr .7fr;align-items:center;gap:70px;min-height:520px;display:grid}.eyebrow{letter-spacing:.16em;color:var(--accent);margin-bottom:14px;font-size:12px;font-weight:700}.hero h1,.adminHero h1,.guestIntro h1,.resultsHead h1{letter-spacing:-.05em;margin:0;font:800 clamp(42px,6vw,76px)/.98 Manrope}.hero p,.guestIntro>p,.adminHero p,.resultsHead p{max-width:680px;color:var(--soft);font-size:18px;line-height:1.55}.heroActions{align-items:center;gap:20px;margin-top:30px;display:flex}.primary,.secondary{cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:9px;padding:13px 18px;font-weight:700;display:inline-flex}.primary{background:var(--ink);color:#fff;box-shadow:0 8px 30px #1112}.primary:disabled{opacity:.42;cursor:not-allowed}.secondary{border:1px solid var(--line);background:#fff}.muted{color:var(--soft);align-items:center;gap:7px;font-size:13px;display:flex}.heroCard{border:1px solid var(--line);background:#fff;border-radius:30px;padding:22px;transform:rotate(1.5deg);box-shadow:0 35px 70px #1a2a1e16}.miniPhoto{background:linear-gradient(140deg,#d1d8d0,#eceae5 55%,#b9c6bd);border-radius:22px;place-items:center;height:300px;display:grid}.faceRing{color:#fff;border:2px solid #fff;border-radius:44% 44% 48% 48%;place-items:center;width:96px;height:118px;font-size:50px;display:grid}.matchLine{justify-content:space-between;align-items:center;padding:17px 2px 10px;display:flex}.pill{background:var(--accent2);color:var(--accent);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.thumbRow{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.thumbRow span{background:#edf0eb;border-radius:10px;height:50px}.section{margin-top:48px}.sectionHead,.panelTitle,.adminHero,.resultsHead{justify-content:space-between;align-items:center;gap:25px;display:flex}.sectionHead h2,.panel h2,.galleryTitle h2{margin:0;font:700 26px Manrope}.sectionHead p,.panelTitle p{color:var(--soft);margin:6px 0 0}.eventGrid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;display:grid}.eventCard{border:1px solid var(--line);background:#fff;border-radius:20px;padding:22px;transition:all .2s}.eventCard:hover{transform:translateY(-3px);box-shadow:0 16px 40px #1b2e2312}.eventTop{justify-content:space-between;display:flex}.eventIcon{background:#eef0ec;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.statusDot{color:var(--accent);background:var(--accent2);border-radius:999px;height:max-content;padding:5px 8px;font-size:12px}.eventCard h3{margin:28px 0 14px;font:700 20px Manrope}.metrics{color:var(--soft);gap:18px;font-size:13px;display:flex}.metrics b{color:var(--ink)}.openLine{border-top:1px solid #eee;justify-content:space-between;margin-top:28px;padding-top:15px;font-weight:600;display:flex}.empty{text-align:center;color:var(--soft);border:1px dashed #cfd3cb;border-radius:20px;grid-column:1/-1;padding:45px}.empty.small{padding:24px}.modalBack{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:10;background:#14171466;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:25px;width:min(480px,100%);padding:30px;box-shadow:0 30px 80px #0003}.modal h2{font:700 28px Manrope}.modal input{border:1px solid var(--line);border-radius:14px;outline:none;width:100%;margin:8px 0 14px;padding:15px}.full{width:100%}.back{color:var(--soft);margin-bottom:32px;font-size:13px}.adminHero h1{font-size:50px}.statRow{grid-template-columns:repeat(3,1fr);gap:14px;margin:34px 0;display:grid}.statRow>div{border:1px solid var(--line);background:#fff;border-radius:18px;align-items:center;gap:13px;padding:20px;display:flex}.statRow svg{color:var(--accent)}.statRow span{color:var(--soft);flex-direction:column;font-size:12px;display:flex}.statRow b{color:var(--ink);font-size:19px}.panel{border:1px solid var(--line);background:#fff;border-radius:22px;margin-top:16px;padding:24px}.dropzone{min-height:180px;color:var(--soft);cursor:pointer;background:#fafbf8;border:1px dashed #c5cbc3;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin-top:20px;display:flex}.dropzone b{color:var(--ink)}.copy{color:var(--soft);cursor:pointer;align-items:center;gap:7px;font-size:13px;display:flex}.photoList{margin-top:18px}.photoRow{border-top:1px solid #eee;align-items:center;gap:12px;padding:12px 4px;display:flex}.fileIcon{background:#eff1ed;border-radius:10px;place-items:center;width:42px;height:42px;font-size:10px;font-weight:700;display:grid}.grow{flex-direction:column;flex:1;display:flex}.grow b{font-size:13px}.grow span{color:var(--soft);margin-top:3px;font-size:12px}.state{color:#71766f;background:#f0f1ee;border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;display:flex}.state.ready{background:var(--accent2);color:var(--accent)}.state.failed{color:#9e3434;background:#fdeaea}.guestWrap{grid-template-columns:1fr 440px;align-items:center;gap:80px;min-height:700px;display:grid}.guestIntro h1{font-size:64px}.privacyNote{color:var(--accent);background:#eaf3ee;border-radius:14px;gap:10px;max-width:620px;padding:13px 15px;font-size:13px;line-height:1.45;display:flex}.selfieCard{border:1px solid var(--line);background:#fff;border-radius:26px;padding:20px;box-shadow:0 25px 70px #18352412}.selfieBox{cursor:pointer;height:330px;color:var(--soft);background:#f8f9f6;border:1px dashed #c6cbc4;border-radius:19px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;overflow:hidden}.selfieBox b{color:var(--ink)}.selfieBox img{object-fit:cover;width:100%;height:100%}.consent{color:var(--soft);gap:10px;margin:16px 2px;font-size:12px;line-height:1.45;display:flex}.consent input{margin-top:3px}.big{padding:16px}.tiny{text-align:center;color:#969a94;margin-top:12px;font-size:11px}.error{color:#a33;background:#fff0f0;border-radius:10px;margin-bottom:10px;padding:10px;font-size:12px}.resultsHead{margin:40px 0 50px}.resultsHead h1{font-size:58px}.emailBox{border:1px solid var(--line);background:#fff;border-radius:15px;align-items:center;gap:8px;padding:7px 7px 7px 13px;display:flex}.emailBox input{border:0;outline:none;width:210px}.emailBox button{color:#fff;cursor:pointer;background:#171918;border:0;border-radius:10px;padding:10px 12px;font-weight:600}.gallerySection{margin-top:38px}.galleryTitle{align-items:center;gap:10px;margin-bottom:15px;display:flex}.galleryTitle span{background:#e7e9e4;border-radius:999px;padding:4px 8px;font-size:11px}.gallery{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.shot{aspect-ratio:4/5;background:#e8eae5;border-radius:16px;position:relative;overflow:hidden}.shot img{object-fit:cover;width:100%;height:100%;transition:all .25s}.shot:hover img{transform:scale(1.025)}.score{color:#fff;background:#111d;border-radius:999px;padding:6px 9px;font-size:11px;position:absolute;bottom:9px;right:9px}.mutedGallery .shot{opacity:.88}.noMatches{text-align:center;color:var(--soft);padding:100px 20px}.noMatches h2{color:var(--ink)}.loading{text-align:center;color:var(--soft);padding:80px}@media (width<=850px){.hero,.guestWrap{grid-template-columns:1fr;gap:30px}.hero{padding-top:50px}.heroCard{max-width:420px}.eventGrid,.gallery{grid-template-columns:repeat(2,1fr)}.adminHero,.resultsHead,.panelTitle{flex-direction:column;align-items:flex-start}.statRow{grid-template-columns:1fr}.emailBox{width:100%}.emailBox input{flex:1}.guestWrap{padding-top:50px}.guestIntro h1{font-size:48px}}@media (width<=520px){.topnote{display:none}.hero h1{font-size:46px}.heroActions{flex-direction:column;align-items:flex-start}.eventGrid,.gallery{grid-template-columns:1fr 1fr}.eventCard{padding:16px}.guestIntro h1,.resultsHead h1,.adminHero h1{font-size:40px}.selfieCard{padding:14px}.selfieBox{height:300px}.gallery{gap:7px}.shot{border-radius:11px}}.driveRow{gap:10px;margin-top:18px;display:flex}.driveRow input{border:1px solid var(--line);border-radius:13px;outline:none;flex:1;padding:13px}.driveMsg{color:var(--soft);margin-top:10px;font-size:12px}@media (width<=600px){.driveRow{flex-direction:column}}.featureStrip{grid-template-columns:repeat(4,1fr);gap:12px;margin:8px 0 54px;display:grid}.featureStrip>div{border:1px solid var(--line);background:#ffffffb8;border-radius:16px;grid-template-columns:26px 1fr;align-items:center;column-gap:8px;padding:16px;display:grid}.featureStrip svg{color:var(--accent);grid-row:1/3}.featureStrip b{font-size:13px}.featureStrip span{color:var(--soft);font-size:11px}.adminActions,.resultActions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sourceBadge{color:var(--accent);background:#edf5f0;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;font-weight:700;display:flex}.hint{color:var(--soft);background:#f5f7f3;border-radius:12px;margin-top:12px;padding:11px 13px;font-size:12px;line-height:1.45}.progressTrack{background:#edf0eb;border-radius:999px;height:7px;margin-top:18px;overflow:hidden}.progressTrack span{background:var(--accent);height:100%;transition:width .3s;display:block}.qrModal{text-align:center}.qrModal h2{margin-bottom:18px}.qrBox{border:1px solid var(--line);background:#fff;border-radius:20px;place-items:center;padding:12px;display:inline-grid}.qrLink{color:var(--soft);word-break:break-all;margin:12px 0 16px;font-size:11px}.resultActions{justify-content:flex-end}.mark{font-family:Manrope}.faceRing{font:800 38px Manrope}@media (width<=850px){.featureStrip{grid-template-columns:repeat(2,1fr)}.resultActions{justify-content:flex-start;width:100%}.adminActions{width:100%}}@media (width<=520px){.featureStrip{grid-template-columns:1fr 1fr}.featureStrip>div{padding:12px}.resultActions .secondary{width:100%}}.qrImage{object-fit:contain;width:240px;height:240px;display:block}
