:root{--paper:#fff9ef;--ink:#171612;--red:#e73932;--green:#146138;--muted:#706b61;--mustard:#dea51c;--mono:'Courier New',monospace;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--mono);padding-bottom:104px}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--mustard);outline-offset:5px}header{height:65px;border-bottom:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;padding:0 40px}.wordmark{color:var(--ink);font:bold 29px var(--serif);letter-spacing:-1.4px;text-decoration:none}.text-button{background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:15px;padding:9px 0}
main{max-width:1120px;padding:0 28px;margin:auto}.intro{text-align:center;padding:35px 0 27px}h1{font:bold clamp(52px,7.5vw,96px)/1.1 var(--serif);letter-spacing:-5px;margin:0}.mustard{width:70px;height:7px;background:var(--mustard);margin:19px auto 18px}.intro p{font-size:19px;line-height:1.5;margin:0}.dropzone{width:100%;min-height:139px;padding:26px 15px;border:2px dashed var(--red);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;transition:background .18s,transform .18s}.dropzone strong{color:var(--red);font-size:23px}.dropzone span{font-size:15px}.dropzone:hover,.dropzone.dragging{background:#fbeedc}.dropzone.dragging{transform:scale(1.01)}#notice{min-height:20px;margin:11px 0 15px;font-size:13px;color:var(--red)}.lineup-heading{display:flex;align-items:center;gap:20px;margin-bottom:15px}h2{font:bold 30px var(--serif);letter-spacing:-1px;margin:0}.rule{height:1px;background:var(--ink);flex:1}.lineup-heading>span{font-size:14px;white-space:nowrap}.lineup{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.card{border:1px solid var(--ink);padding:14px 15px 13px;min-width:0;transition:border-color .2s,box-shadow .2s}.card-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-bottom:10px}.remove{border:0;background:transparent;color:var(--ink);font-size:21px;line-height:16px;padding:0 2px}.photo{position:relative;aspect-ratio:1.14;overflow:hidden;background:#eee4d3}.photo img{width:100%;height:100%;object-fit:cover;display:block}.card.processing{border-color:var(--red);box-shadow:0 0 0 2px var(--red)}.processing .photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,rgba(255,249,239,.65),transparent);height:35%;animation:scan 1.3s ease-in-out infinite}.stamp{position:absolute;z-index:2;left:4%;right:4%;top:51%;color:var(--green);border:6px double currentColor;border-radius:7px;padding:8px 3px;text-align:center;background:rgba(255,249,239,.92);font:bold clamp(24px,3.3vw,46px)/1 Impact,'Arial Narrow',sans-serif;letter-spacing:-1px;transform:rotate(-12deg);box-shadow:0 0 0 3px rgba(255,249,239,.95);animation:stamp .6s cubic-bezier(.17,.9,.25,1.2) both}.stamp.negative{color:#bd332c;font-size:clamp(22px,2.7vw,38px)}.card.just-stamped{animation:impact .4s ease-out}.caption{margin-top:10px;font-size:12px;line-height:1.5}.filename{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.detail{color:var(--muted);min-height:18px}.error .detail{color:var(--red)}#empty{text-align:center;padding:38px 0;color:var(--muted);font-size:14px;line-height:1.8}footer{position:fixed;z-index:5;left:0;right:0;bottom:0;min-height:73px;border:1px solid var(--ink);background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 40px}#progress{font-size:14px}.actions{display:flex;align-items:center;gap:24px}.model-label{font-size:12px;color:var(--muted);display:flex;gap:8px;align-items:center}select{background:var(--paper);border:0;border-bottom:1px solid var(--muted);padding:7px 18px 7px 3px;color:var(--ink);font-size:12px}.send{background:var(--red);color:white;border:0;padding:15px 25px;min-width:230px;font-size:15px;display:flex;align-items:center;justify-content:center;gap:25px;transition:background .15s}.send:hover:not(:disabled){background:#c92d26}.send:disabled{opacity:1;background:#dbc7ba;color:#6b625a}
@keyframes stamp{0%{opacity:0;transform:rotate(-20deg) scale(2.2)}55%{opacity:1;transform:rotate(-12deg) scale(.92)}75%{transform:rotate(-12deg) scale(1.08)}100%{transform:rotate(-12deg) scale(1)}}@keyframes impact{40%{transform:translateY(3px) rotate(.5deg)}}@keyframes scan{0%,100%{top:0}50%{top:65%}}
@media(min-width:1500px){main{max-width:1240px}.intro{padding-top:44px}.dropzone{min-height:155px}.stamp{font-size:48px}.stamp.negative{font-size:40px}}
@media(max-width:760px){header{padding:0 20px;height:60px}.wordmark{font-size:24px}main{padding:0 20px}.intro{padding:30px 0 25px}h1{letter-spacing:-3px;font-size:60px}.intro p{font-size:14px}.dropzone strong{font-size:19px}.dropzone span{font-size:12px}.lineup{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{padding:10px}.lineup-heading{gap:12px}h2{font-size:26px}.lineup-heading>span{font-size:12px}.stamp{font-size:30px;border-width:5px}.stamp.negative{font-size:24px}footer{padding:12px 20px;flex-wrap:wrap;gap:12px}.actions{width:100%;justify-content:space-between;gap:12px}.send{min-width:180px;padding:13px 16px}body{padding-bottom:145px}}
@media(max-width:440px){h1{font-size:48px;letter-spacing:-2.5px}.lineup{grid-template-columns:1fr}.stamp{font-size:46px}.stamp.negative{font-size:36px}.dropzone span{font-size:11px}.send{min-width:160px}.model-label{gap:3px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.privacy-note{font-size:11px;color:var(--muted);text-align:center;line-height:1.7;margin:30px 0 10px}@media(max-width:760px){.actions{width:auto}.intro h1{white-space:nowrap}footer{flex-wrap:nowrap}.send{min-width:150px}#progress{max-width:45%;font-size:12px}}
