@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_67a1af{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.__variable_67a1af{--font-serif:"Cormorant Garamond","Cormorant Garamond Fallback"}@font-face{font-family:Sacramento;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4e063e4da012536e-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sacramento;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/dd053ec84d009e81-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Sacramento Fallback;src:local("Arial");ascent-override:126.38%;descent-override:71.91%;line-gap-override:0.00%;size-adjust:73.60%}.__className_5e311b{font-family:Sacramento,Sacramento Fallback;font-weight:400;font-style:normal}.__variable_5e311b{--font-script:"Sacramento","Sacramento Fallback"}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Montserrat Fallback;src:local("Arial");ascent-override:85.79%;descent-override:22.25%;line-gap-override:0.00%;size-adjust:112.83%}.__className_a9c335{font-family:Montserrat,Montserrat Fallback;font-style:normal}.__variable_a9c335{--font-sans:"Montserrat","Montserrat Fallback"}:root{--ink:#1c1b19;--muted:#857f76;--paper:#f8f0df;--paper-deep:#ead9bd;--linen:#fffaf0;--taupe:#c8b6a3;--olive:#6d7350;--terracotta:#b76e4b;--wine:#6f3f3f;--shadow:0 24px 70px rgba(58,46,31,0.22)}*{box-sizing:border-box}body{min-height:100vh;margin:0;color:var(--ink);background:linear-gradient(120deg,rgba(255,250,240,.94),rgba(234,217,189,.88)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cpath fill='%23b76e4b' fill-opacity='0.08' d='M0 60h180v2H0zM60 0h2v180h-2z'/%3E%3C/svg%3E");font-family:var(--font-serif),Georgia,"Times New Roman",serif}button,input,textarea{font:inherit}a{color:inherit}.app-shell{min-height:100vh;padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.brand{display:flex;flex-direction:column;gap:4px}.brand h1,.brand h2{margin:0;font-size:clamp(1.8rem,4vw,3.2rem);font-weight:500;letter-spacing:0}.brand span{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:.92rem}.panel{border:1px solid rgba(111,63,63,.16);border-radius:8px;background:rgba(255,250,240,.82);box-shadow:var(--shadow)}.admin-grid{display:grid;grid-template-columns:minmax(300px,420px) 1fr;grid-gap:22px;gap:22px}.panel-section{padding:20px}.panel-section+.panel-section{border-top:1px solid rgba(111,63,63,.14)}.field{display:grid;grid-gap:8px;gap:8px;margin-bottom:14px}.check-row,.field label{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:.9rem}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(47,41,35,.2);border-radius:6px;padding:12px 13px;color:var(--ink);background:rgba(255,255,255,.72);outline:none}.field input:focus,.field textarea:focus{border-color:var(--terracotta);box-shadow:0 0 0 3px rgba(183,110,75,.18)}.button-row{display:flex;flex-wrap:wrap;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid rgba(47,41,35,.18);border-radius:6px;padding:10px 14px;color:var(--ink);background:var(--linen);cursor:pointer;text-decoration:none}.btn.primary{border-color:var(--wine);color:#fffaf0;background:var(--wine)}.btn.olive{border-color:var(--olive);color:#fffaf0;background:var(--olive)}.btn.danger{border-color:rgba(183,83,66,.45);color:#8f342b;background:#fff3ef}.btn:disabled{cursor:not-allowed;opacity:.55}.status{margin-top:12px;color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:.92rem}.session-card{display:grid;grid-gap:12px;gap:12px}.qr-card{display:grid;justify-items:center;grid-gap:10px;gap:10px;padding:16px;border:1px solid rgba(47,41,35,.12);border-radius:8px;background:#fffaf0}.qr-card img{width:min(220px,100%);height:auto}.code-pill{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid rgba(200,182,163,.6);border-radius:999px;padding:7px 16px;background:rgba(200,182,163,.22);font-family:var(--font-sans),Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:.12em}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:18px;gap:18px}.polaroid{position:relative;display:grid;grid-template-rows:auto 1fr;grid-gap:10px;gap:10px;padding:12px 12px 18px;border:1px solid rgba(47,41,35,.1);background:#fffdf7;box-shadow:0 18px 42px rgba(52,40,27,.18)}.polaroid img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--paper-deep)}.polaroid-caption{display:grid;grid-gap:3px;gap:3px;min-height:52px;text-align:center}.polaroid-caption strong{font-size:1rem;font-weight:600}.polaroid-caption span{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:.86rem;line-height:1.25;overflow-wrap:anywhere}.show-stage{position:relative;display:grid;min-height:100vh;place-items:center;overflow:hidden;padding:clamp(18px,4vw,54px)}.fullscreen-btn{position:fixed;top:22px;right:22px;z-index:8;display:inline-grid;width:44px;height:44px;place-items:center;border:1px solid rgba(47,41,35,.18);border-radius:8px;color:var(--ink);background:rgba(255,250,240,.84);box-shadow:0 12px 28px rgba(52,40,27,.14);cursor:pointer}.slideshow-fade{animation:fadeInPolaroid .7s ease both}@keyframes fadeInPolaroid{0%{opacity:0;transform:translateY(10px) rotate(-1.5deg) scale(.985)}to{opacity:1;transform:translateY(0) rotate(-1.5deg) scale(1)}}.show-title{z-index:4;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.1em clamp(12px,1.6vw,32px);width:100%;margin:0 auto;text-align:center;line-height:1}.show-title .title-names{font-family:var(--font-script),"Segoe Script",cursive;font-size:clamp(2.2rem,4.2vw,5rem);font-weight:400;color:var(--ink)}.show-title .title-occasion{font-family:var(--font-serif),Georgia,serif;font-size:clamp(1.6rem,3vw,3.6rem);font-weight:500;letter-spacing:.04em;color:var(--ink)}.show-qr{position:fixed;right:24px;bottom:24px;z-index:5;display:grid;justify-items:center;grid-gap:8px;gap:8px;width:178px;padding:14px 12px 12px;border:1px solid rgba(28,27,25,.1);border-radius:10px;background:rgba(255,252,246,.94);box-shadow:0 18px 42px rgba(52,40,27,.18)}.show-qr img{width:124px}.show-hint{display:grid;grid-gap:3px;gap:3px;width:100%;margin:0 0 2px;padding:0;list-style:none;font-family:var(--font-sans),Arial,sans-serif;font-weight:300;font-size:.82rem;color:var(--muted)}.show-hint li{display:flex;align-items:baseline;gap:7px}.show-hint li:before{content:"\2665";color:var(--taupe);font-size:.78em}.show-qr .photo-count{font-family:var(--font-sans),Arial,sans-serif;font-weight:400;font-size:.74rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qr-loading{display:grid;width:124px;aspect-ratio:1;place-items:center;color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:.82rem;background:#fffaf0}.hero-polaroid{width:min(54vw,720px);min-width:min(88vw,360px);transform:rotate(-1.5deg)}.hero-polaroid .polaroid{padding:clamp(12px,2vw,22px) clamp(12px,2vw,22px) clamp(22px,3vw,34px)}.hero-polaroid .polaroid-caption strong{font-size:clamp(1.15rem,2vw,2rem)}.hero-polaroid .polaroid-caption span{font-size:clamp(.95rem,1.3vw,1.18rem)}.frame-stage{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:clamp(8px,1.6vh,22px);padding:clamp(12px,2vh,30px) clamp(12px,2vw,30px);overflow:hidden}.frame{display:flex;flex:1 1 auto;width:min(96vw,2200px);aspect-ratio:16/9;max-height:100%;padding:clamp(14px,1.8vw,34px);border-radius:5px;background:linear-gradient(145deg,#ffffff,#f4f1ea 55%,#e8e3d8);box-shadow:0 30px 80px rgba(60,50,35,.28),inset 0 0 0 1px rgba(255,255,255,.9),inset 0 0 0 6px #fbfaf7,inset 0 0 16px rgba(150,135,110,.22)}.frame-mat{padding:clamp(16px,2.4vw,46px);overflow:hidden;border-radius:2px;background:linear-gradient(135deg,#fbf8f2,#f1ece1);box-shadow:inset 0 0 0 1px rgba(180,160,130,.32),inset 0 2px 14px rgba(120,100,70,.16)}.clotheslines,.frame-mat{position:relative;display:flex;flex:1 1;width:100%}.clotheslines{z-index:1;flex-direction:column;justify-content:space-around;height:100%}.clothesline{position:relative;width:100%;--string-y:clamp(14px,2.4vh,32px)}.string{position:absolute;top:var(--string-y);left:-4%;right:-4%;height:2px;background:repeating-linear-gradient(90deg,#cbb78d 0 4px,#b69d72 4px 7px);box-shadow:0 1px 0 rgba(120,90,50,.18);z-index:0}.clothesline-track{display:flex;width:max-content;margin-top:calc(var(--string-y) - 7px);gap:clamp(16px,2vw,40px);will-change:transform;animation:marquee var(--marquee-duration,60s) linear infinite}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.polaroid-hang{display:flex;flex-direction:column;align-items:center;margin:0;transform:rotate(var(--hang-tilt,0deg));transform-origin:top center}.peg{position:relative;z-index:3;width:12px;height:22px;margin-bottom:-7px;border-radius:3px;background:linear-gradient(180deg,#e8c89b,#d4a96f 58%,#c0925a);box-shadow:0 2px 4px rgba(60,40,20,.35)}.peg:after{content:"";position:absolute;left:50%;top:28%;width:1.5px;height:44%;transform:translateX(-50%);background:rgba(90,60,30,.45)}.clothesline .polaroid{width:clamp(132px,15vw,224px);gap:6px;padding:7px 7px 10px;box-shadow:0 12px 24px rgba(52,40,27,.2)}.clothesline .polaroid img{aspect-ratio:auto;height:clamp(76px,11vh,150px)}.clothesline .polaroid-caption{min-height:0;gap:1px}.clothesline .polaroid-caption strong{font-size:clamp(.7rem,.95vw,.95rem)}.clothesline .polaroid-caption>span{font-size:clamp(.6rem,.78vw,.8rem);line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.polaroid-year{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:clamp(.56rem,.72vw,.74rem);letter-spacing:.08em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.frame-deco{position:absolute;inset:0;z-index:0;pointer-events:none}.deco{position:absolute;opacity:.65}.deco-svg{display:block;width:100%;height:auto}.deco-tl{top:clamp(4px,1vw,14px);left:clamp(4px,1vw,14px);width:clamp(110px,13vw,200px);transform:rotate(-6deg)}.deco-tr{top:clamp(4px,.9vw,12px);right:clamp(10px,1.6vw,26px);transform:rotate(8deg)}.deco-bl,.deco-tr{width:clamp(32px,3.2vw,50px)}.deco-bl{bottom:clamp(8px,1.2vw,18px);left:clamp(12px,1.8vw,30px);transform:rotate(-10deg)}.deco-br{right:clamp(6px,1.2vw,18px);bottom:clamp(4px,.8vw,12px);width:clamp(58px,7vw,108px);transform:rotate(5deg)}@media (max-width:820px){.frame{aspect-ratio:3/4}}@media (prefers-reduced-motion:reduce){.clothesline-track{animation:none}}.empty-state{max-width:520px;color:var(--muted);text-align:center;font-family:Arial,Helvetica,sans-serif;line-height:1.5}.upload-shell{display:grid;min-height:100vh;place-items:center;padding:20px}.upload-card{width:min(100%,680px)}.upload-list{display:grid;grid-gap:14px;gap:14px}.file-row{display:grid;grid-gap:12px;gap:12px;padding:14px;border:1px solid rgba(47,41,35,.12);border-radius:8px;background:rgba(255,255,255,.45)}.preview-row{display:grid;grid-template-columns:94px 1fr;grid-gap:12px;gap:12px;align-items:center}.preview-row img{width:94px;height:76px;object-fit:cover;border:5px solid #fffdf7;box-shadow:0 8px 18px rgba(52,40,27,.14)}.check-row{display:flex;gap:10px;align-items:flex-start;line-height:1.4}.archive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:22px;gap:22px;padding:24px 0}@media (max-width:900px){.admin-grid{grid-template-columns:1fr}.show-title{position:static;max-width:none;margin-bottom:22px;text-align:center}.show-stage{align-content:start;padding-bottom:210px}.hero-polaroid{width:min(92vw,620px)}.show-qr{right:50%;transform:translateX(50%)}}@media (max-width:560px){.app-shell{padding:18px}.topbar{align-items:flex-start;flex-direction:column}.preview-row{grid-template-columns:1fr}}.upload-preview{display:grid;justify-items:center;grid-gap:12px;gap:12px}.upload-preview .polaroid{width:min(100%,320px)}.cropper-modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:rgba(28,22,16,.66);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cropper-box{width:min(100%,560px);display:grid;grid-gap:14px;gap:14px;padding:18px}.cropper-stage{position:relative;width:100%;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:#15110c}.cropper-controls{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.cropper-zoom{flex:1 1 200px}.cropper-zoom input[type=range]{width:100%}.upload-success{display:grid;justify-items:center;grid-gap:6px;gap:6px;padding:22px 18px;text-align:center;border:1px solid rgba(47,41,35,.14);border-radius:10px;background:rgba(255,250,240,.92);box-shadow:0 14px 32px rgba(52,40,27,.14);animation:pop-in .32s ease}.upload-success svg{color:#7a5b2e}.upload-success strong{font-size:1.6rem;font-weight:700}.upload-success span{color:var(--muted);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.35}@keyframes pop-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}