:root{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;color:#20392d;background:#ede7d8}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 10% 0%,#f7eed9,#e7e0d2 72%);min-height:100vh}.shell{max-width:780px;margin:auto;padding:22px 16px 45px}header{text-align:center;padding:25px 10px 28px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.22em;color:#9b472e}h1{font-family:Georgia,serif;font-size:clamp(38px,8vw,64px);line-height:1.05;margin:12px 0;color:#183f31}h1 em{display:block;font-weight:normal;color:#ad4f33}.subtitle{max-width:540px;line-height:1.65;margin:15px auto;color:#5c655b}.panel{background:#fffdf7;border:1px solid #d9ceba;border-radius:18px;padding:24px;margin:15px 0;box-shadow:0 6px 24px #263f2310}h2{font:normal 26px Georgia,serif;margin:0 0 15px}.panel>p{line-height:1.5}label{display:block;font-weight:600;margin:12px 0 8px}input[type=password]{border:1px solid #baaa92;border-radius:9px;padding:13px;width:100%;font-size:16px}.primary,.secondary{border:0;border-radius:11px;padding:14px 20px;font-size:16px;font-weight:750;cursor:pointer}.primary{background:#235443;color:white}.primary:hover{background:#143b2e}.primary:disabled{opacity:.4;cursor:not-allowed}.secondary{background:#ece3d0;color:#214432}.big{display:block;width:100%;font-size:18px;margin-top:18px;padding:19px}.upload{margin:16px 0;border:2px dashed #c5ae8c;background:#f8f2e7;border-radius:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:155px;cursor:pointer;gap:7px}.upload input{position:absolute;width:1px;height:1px;opacity:0}.upload small,.note,footer{color:#77776c;font-size:13px}.camera{font-size:34px}.decades{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.decade{background:#f5efe4;border:2px solid #e4d8c5;border-radius:12px;color:#30483a;padding:17px 4px;font-family:Georgia,serif;font-size:21px;cursor:pointer}.decade span{display:block;font:12px system-ui,sans-serif;margin-top:4px;color:#75695e}.decade.selected{border-color:#24543e;background:#dcebdc;box-shadow:0 0 0 2px #24543e24}.between{display:flex;align-items:center;justify-content:space-between;gap:9px}.between h2{margin:0}.pill{border-radius:18px;background:#e7efe6;color:#2d583f;font-size:12px;padding:8px 11px}#originalHolder{text-align:center}#original{max-width:100%;max-height:380px;border-radius:10px}.hidden{display:none!important}.note{text-align:center;line-height:1.6}.error{color:#a52f26;font-weight:650;white-space:pre-wrap}.spinner{width:40px;height:40px;border-radius:50%;border:4px solid #d9e5d4;border-top-color:#24543e;animation:spin 1s linear infinite;margin:8px auto 22px}@keyframes spin{to{transform:rotate(360deg)}}#progress{text-align:center}.compare{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compare img{width:100%;border-radius:9px;display:block;object-fit:contain;background:#eee3d2}.compare small{font-size:11px;font-weight:800;letter-spacing:.12em;display:block;margin:0 0 8px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}footer{text-align:center;padding:22px}@media(max-width:480px){.panel{padding:17px}.decades{grid-template-columns:repeat(2,1fr)}.compare{grid-template-columns:1fr}.between{align-items:start}.pill{white-space:nowrap}}

.compare > div{min-width:0}.compare img{width:100%;height:auto;object-fit:contain;aspect-ratio:1/1;background:#f2ebdf}.compare{align-items:start}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:13px}.mini-photo{background:#f7f1e7;border-radius:12px;padding:10px;font-size:13px;min-width:0}.mini-photo p{margin:0 0 7px}.mini-photo img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;border-radius:8px;background:#eee}.mini-photo a{display:inline-block;margin-top:9px;color:#1e5742;font-weight:750}.admin-shell{max-width:1150px}.admin-shell header{text-align:left}.admin-shell h1{font-size:42px}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.toolbar button{padding:11px 15px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:12px}.dashboard-photo{background:#f4ecdf;border:1px solid #ddd1bb;border-radius:12px;padding:12px}.dashboard-photo img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#e7e1d4;border-radius:8px}.dashboard-photo p{font-size:13px;color:#575f55}.dashboard-photo button{font-size:13px;padding:10px 12px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px}.settings-grid input:not([type=checkbox]){width:100%;padding:10px;border:1px solid #bcad96;border-radius:8px;font-size:16px}.settings-grid label{font-size:14px}.stats{display:flex;gap:16px;flex-wrap:wrap;color:#4a584b}.status-dot{font-size:13px;font-weight:750}.status-dot.pending{color:#9c6519}.status-dot.approved{color:#1c6540}.status-dot.hidden{color:#8d4240}.display-page{background:#101c19;color:#f9f1dd;min-height:100vh}.display-page .shell{max-width:none}.display-page h1{color:#e5c997;text-align:center;font-size:clamp(28px,4vw,55px)}.slide-area{width:min(94vw,1100px);margin:auto;display:flex;align-items:center;justify-content:center;min-height:64vh;flex-direction:column;gap:12px}.slide-area img{max-width:100%;max-height:75vh;object-fit:contain;box-shadow:0 10px 50px #000a}.display-page .panel{color:#20392d;max-width:570px;margin:30px auto}.display-actions{position:fixed;bottom:12px;right:12px;opacity:.4}.display-actions:hover{opacity:1}.display-actions button{padding:8px}.projector-caption{color:#e8cfa9;font-size:clamp(16px,2.3vw,28px)}.muted{color:#73766e;font-size:14px}@media(max-width:560px){.admin-shell header{padding-left:0}.admin-shell h1{font-size:34px}}

/* Longer historical-era labels */
.decade{font-size:clamp(15px,1.8vw,21px);min-height:94px;padding:13px 6px;line-height:1.15}
.decade span{line-height:1.3}

/* Version 0.4: one clear action per guest screen */
.wizard-shell{max-width:800px}.wizard-brand{padding:20px 10px 10px}.wizard-brand h1{font-size:clamp(34px,7vw,52px)}.wizard-brand h1 em{display:inline}.step-panel{min-height:320px;padding:clamp(20px,4vw,36px)}.step-panel h2{font-size:clamp(26px,4vw,34px)}.step-panel>p{font-size:17px;line-height:1.55}.stepbar{text-align:center;font-weight:800;letter-spacing:.04em;color:#597263;padding-top:8px}.big-actions{display:flex;flex-direction:column;gap:14px;margin-top:24px}.choice-button{width:100%;min-height:64px;font-size:18px;text-align:center}.hint{background:#f3eddf;border-radius:12px;padding:12px}.text-button{display:block;margin:20px auto 4px;border:0;background:transparent;font-size:16px;color:#28533f;text-decoration:underline;cursor:pointer;padding:12px}.visually-hidden-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.review-frame{display:flex;justify-content:center;background:#eee7db;padding:12px;border-radius:14px}.review-frame img{max-width:100%;max-height:50vh;object-fit:contain;border-radius:8px}.wizard-shell .decades{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.wizard-shell .decade{min-height:100px;font-size:18px}.wizard-shell .gallery-footer{text-align:center}.wizard-shell .compare{margin-top:22px}.wizard-shell .compare img{aspect-ratio:1/1;object-fit:contain}.wizard-shell .error:not(:empty){background:#fff1ed;border-radius:10px;padding:12px}
.darkroom{position:relative;height:290px;max-width:430px;margin:22px auto 18px;overflow:hidden;border-radius:18px;background:radial-gradient(circle at 75% 8%,#6d2921 0%,#341612 26%,#120f10 74%);box-shadow:inset 0 0 50px #000a}.darkroom-light{position:absolute;top:-15px;right:18%;width:170px;height:230px;background:linear-gradient(#d7784519,#e66c3900);transform:skewX(-20deg)}.polaroid{position:absolute;width:165px;height:201px;top:38px;left:calc(50% - 82px);background:#fff9e9;padding:11px 11px 27px;box-shadow:3px 10px 26px #000b;transform:rotate(-8deg);animation:photo-in 3.8s ease-in-out infinite}.polaroid-picture{height:143px;background:#c7a381;overflow:hidden;position:relative}.polaroid-picture:after{content:'';position:absolute;inset:0;background:#e5d7b6;animation:develop 4s ease-in-out infinite}.develop-scene{display:grid;place-items:center;height:100%;font-size:72px;background:radial-gradient(circle,#bd7b57,#60463b)}.polaroid-caption{text-align:center;color:#5b4a3b;font:9px Georgia,serif;letter-spacing:1px;margin-top:8px}.darkroom-sparkle{position:absolute;color:#ffcf88;font-size:32px;animation:twinkle 2s ease-in-out infinite}.star1{left:17%;top:27%}.star2{right:15%;bottom:26%;animation-delay:1s}@keyframes photo-in{0%{transform:translateY(-22px) rotate(-12deg);opacity:.65}25%,75%{transform:translateY(0) rotate(-5deg);opacity:1}100%{transform:translateY(-22px) rotate(-12deg);opacity:.65}}@keyframes develop{0%{opacity:.98}60%,85%{opacity:.04}100%{opacity:.98}}@keyframes twinkle{0%,100%{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1.15)}}@media(max-width:550px){.wizard-shell .decades{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-shell .compare{grid-template-columns:1fr}.step-panel{padding:20px}.darkroom{height:260px}}@media(prefers-reduced-motion:reduce){.polaroid,.polaroid-picture:after,.darkroom-sparkle{animation:none}.polaroid-picture:after{opacity:.08}}
