:root{--ink:#1d1d1f;--muted:#6e6e73;--line:#e5e5ea;--bg:#f5f5f7;--card:#fff;--accent:#111;--danger:#c62828;--ok:#1b7f3b;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{min-height:100vh;margin:0}main{max-width:30rem;margin:0 auto;padding:1.5rem 1rem 2.5rem}.page{background:var(--card);border-radius:1rem;padding:1.5rem 1.25rem}.brand{align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.logo{object-fit:contain;max-width:8rem;max-height:3rem}.business{overflow-wrap:anywhere;margin:0;font-weight:600}h1{margin:0 0 .25rem;font-size:1.5rem}h2{margin:0;font-size:1.25rem}.muted{color:var(--muted);overflow-wrap:anywhere;margin:.25rem 0}.small{font-size:.85rem}.summary{margin:1.25rem 0 .5rem}.summary dt{color:var(--muted);font-size:.9rem}.summary dd{margin:.25rem 0 0;font-size:2rem;font-weight:700}.status{margin:1rem 0 0;font-weight:600}.status-approved,.status-paid{color:var(--ok)}.status-declined,.status-void{color:var(--danger)}.actions{gap:.75rem;margin-top:1.5rem;display:grid}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:.75rem;width:100%;min-height:3rem;font-weight:600;position:relative}.btn:disabled{cursor:default;opacity:.5}.btn.primary{background:var(--accent);color:#fff}.btn.secondary{color:var(--ink);border-color:var(--line);background:#fff}.btn.ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn.danger{background:var(--danger);color:#fff}.btn.waiting{color:#0000;opacity:1}.btn.waiting:after,.spinner{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:1.25rem;height:1.25rem;animation:.8s linear infinite spin;display:block}.btn.waiting:after{color:var(--muted);margin:auto;position:absolute;inset:0}.spinner{color:var(--muted);margin:30vh auto 0}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--danger);text-align:center;margin:.75rem 0 0}.notice{text-align:center;color:var(--muted);margin:30vh 0 0}.contacts{border-top:1px solid var(--line);text-align:center;margin-top:1.75rem;padding-top:1rem}.contacts p{overflow-wrap:anywhere;margin:.25rem 0}.contacts a{color:var(--ink)}.sheet{border:0;border-radius:1rem 1rem 0 0;gap:.75rem;width:100%;max-width:30rem;margin:auto auto 0;padding:1.25rem;display:grid}.sheet:not([open]){display:none}.sheet::backdrop{background:#0006}.sheet-head{justify-content:space-between;align-items:center;display:flex}.close{cursor:pointer;color:var(--muted);background:0 0;border:0;font-size:1.75rem;line-height:1}.sheet label{font-weight:600}.sheet input{font:inherit;border:1px solid var(--line);border-radius:.75rem;padding:.75rem}.pad{aspect-ratio:3;border:1px dashed var(--line);touch-action:none;background:#fff;border-radius:.75rem;width:100%}
