﻿main{max-width:1050px}
#scan-open{width:100%;margin-top:.75rem}
.scan-photo{display:block;width:fit-content;position:relative;margin-top:.55rem;padding:.55rem .8rem;min-height:44px;border:1px solid #94b0a0;border-radius:.65rem;background:white;color:#153d31;cursor:pointer}
.scan-photo input{position:absolute;width:1px;height:1px;opacity:0}
.scan-photo:focus-within{outline:3px solid #507eae;outline-offset:2px}
#manual-code{margin-top:.8rem}
#manual-code summary{color:#315b49;cursor:pointer}
.scan-preview{display:grid;place-items:center;position:relative;overflow:hidden;background:#12231e;border-radius:.65rem}
#scan-video{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;max-height:55vh}
.scan-guide{position:absolute;width:58%;max-width:225px;max-height:85%;aspect-ratio:1;border:2px solid #d6f6e2;border-radius:.65rem;pointer-events:none}
#scan-status{margin-top:.55rem;color:#315b49;min-height:1.5em}
.pickup{border:1px solid #a6c1b2;border-radius:.9rem;background:#f9fcfa;padding:.95rem}
#claim{display:flex;gap:.55rem;align-items:end;margin-top:.75rem;flex-wrap:wrap}
#claim label{display:grid;flex:1 1 13rem;gap:.25rem}
#code{width:100%;min-height:44px;padding:.55rem;border:1px solid #94b0a0;border-radius:.55rem}
.waiting{border:1px solid #c4d6cb;border-radius:.75rem;background:#f7fbf8;padding:.65rem .8rem}
#waiting-list{list-style:none;padding:0;margin:0;max-height:12rem;overflow:auto}
#waiting-list li{display:flex;justify-content:space-between;align-items:center;gap:.35rem .65rem;flex-wrap:wrap;padding:.35rem 0;border-top:1px solid #dce8df}
.waiting-state{font-size:.78rem;color:#694615;background:#fff0d4;border-radius:.4rem;padding:.14rem .4rem}
.waiting-state.ready{color:#19523a;background:#dcefe2}
.delivery{background:#fff;border:1px solid #b4c9bd;border-top:4px solid #29775b;border-radius:.75rem;padding:.8rem;display:grid;gap:.6rem;align-content:start;overflow-wrap:anywhere}
.delivery h3{margin:0;font-size:1.2rem}
.delivery small{color:#426052}
.delivery .address{font-size:1.1rem;font-weight:680;background:#ebf5ef;border-radius:.5rem;padding:.55rem;white-space:pre-wrap}
.delivery.cancelled{border-color:#c28079;background:#fff1ef;color:#751f23}
.delivery.done{border-top-color:#6f8e7e;background:#f8fcf9}
.delivery-actions{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.delivery-actions a{min-height:44px;padding:.55rem .75rem;border:1px solid #94b0a0;border-radius:.65rem;color:#153d31;font-weight:700}
