:root{--zoom-factor:1}#paper{aspect-ratio:8.27/11.69;box-sizing:border-box;background-color:#fff;flex-direction:column;justify-content:center;align-items:center;width:8.27in;height:11.69in;margin:2rem auto;padding:0 29px;display:flex}#watermark{text-align:center;z-index:99;pointer-events:none;opacity:0;font-size:6rem;position:absolute;top:calc(50% + 29px);left:calc(50% + 29px);transform:translate(-50%,-50%)rotate(-45deg)}.exporting #watermark{opacity:.125}.exporting#paper{transform:scale(var(--zoom-factor))}
#dropzone{z-index:900;pointer-events:none;background:#121212bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dropzone-panel{color:#fff;letter-spacing:.05rem;background:#ffffff0d;border:2px dashed #ffffff80;border-radius:.75rem;padding:2rem 3rem;font-size:1.1rem}#dropzone.working .dropzone-panel{border-style:solid}
#access-gate{z-index:1000;color:#fff;background-color:#121212;flex-direction:column;justify-content:center;align-items:center;gap:2.5rem;display:flex;position:fixed;inset:0}.access-title{letter-spacing:.1rem;text-transform:uppercase;color:#fff9;font-size:.85rem}.access-dots{gap:.9rem;display:flex}.access-dots span{box-sizing:border-box;background:0 0;border:1px solid #fff6;border-radius:50%;width:.8rem;height:.8rem;transition:background-color .1s,border-color .1s}.access-dots span.filled{background:#fff;border-color:#fff}.access-dots.error{animation:.4s access-shake}.access-dots.error span{border-color:#ff4d4d}.access-dots.error span.filled{background:#ff4d4d;border-color:#ff4d4d}.access-keypad{grid-template-columns:repeat(3,4.5rem);gap:1.1rem;display:grid}.access-keypad button{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #fff3;border-radius:50%;width:4.5rem;height:4.5rem;font-family:inherit;font-size:1.4rem}.access-keypad button:hover{background:#ffffff26}.access-keypad button:active{background:#ffffff40}.access-keypad span.spacer{width:4.5rem;height:4.5rem}@keyframes access-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-.4rem)}40%,80%{transform:translate(.4rem)}}.access-message{color:#ff6b6b;margin-top:-1.5rem;font-size:.75rem}
