:root{color:#182b31;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f7f8f5;font-family:system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}main{max-width:640px;margin:auto;padding:32px 20px 60px}main.dashboard{max-width:1040px}h1{margin-bottom:16px;font-size:clamp(2rem,7vw,3rem);line-height:1.1}h2{font-size:1.25rem}p{line-height:1.6}button,input,.picker{font:inherit}button,.picker{color:#fff;cursor:pointer;background:#680b24;border:0;border-radius:12px;min-height:48px;padding:14px 20px}button:disabled{opacity:.6;cursor:default}button.secondary{color:#182b31;background:#e1e9e4}button.danger{background:#923c3c}button:focus-visible,input:focus-visible,a:focus-visible,.picker:focus-within{outline-offset:4px;outline:3px solid #be7618}input[type=text]{background:#fff;border:1px solid #8b9b96;border-radius:10px;width:100%;margin:8px 0 24px;padding:14px;display:block}.picker{text-align:center;padding:28px 12px;font-size:1.2rem;font-weight:700;display:block}.picker.disabled{opacity:.6;cursor:default}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;padding:0;list-style:none;display:grid}.card{background:#fff;border:1px solid #d9e2db;border-radius:14px;min-width:0;padding:12px}.thumbnail{object-fit:contain;background:#edf1ed;border-radius:8px;width:100%;height:140px}.filename{overflow-wrap:anywhere;margin:8px 0;font-size:.9rem}.muted{color:#4e635b;font-size:.9rem}.actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.actions button{padding:10px 12px;font-size:.9rem}.upload-button{width:100%;margin-top:12px}progress{accent-color:#680b24;width:100%;height:18px}.error{color:#922b2b;overflow-wrap:anywhere}.success{background:#e0eee5;border-radius:12px;padding:18px}.qr{width:200px;height:200px}a{color:#680b24;overflow-wrap:anywhere}header{margin-bottom:28px}
