:root{--ink:#16181d;--muted:#5b6270;--line:#dfe3ea;--bg:#f6f7f9;--card:#fff;--accent:#7c1d2b;--accent-ink:#fff;--ok:#1f6b3a;--warn:#8a5a00;--radius:12px}@media (prefers-color-scheme:dark){:root{--ink:#f2f4f7;--muted:#a2abb9;--line:#2b3038;--bg:#101216;--card:#181b21;--accent:#c8455c;--accent-ink:#14161a}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%;margin:0;padding:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.shell{max-width:34rem;margin:0 auto;padding:2rem 1.1rem 4rem}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.35rem}h1{letter-spacing:-.01em;margin:0 0 .5rem;font-size:1.5rem;line-height:1.25}h2{margin:1.75rem 0 .5rem;font-size:1.05rem}p{margin:0 0 1rem}.lede{color:var(--muted);margin-bottom:1.75rem}.muted{color:var(--muted);font-size:.9rem}.holdings{margin:0 0 1.5rem;padding:0;list-style:none}.holdings li{border:1px solid var(--line);border-radius:10px;margin-bottom:.5rem;padding:.7rem .9rem}.holdings strong{display:block}.holdings span{color:var(--muted);font-size:.85rem}fieldset{border:0;margin:0 0 1.25rem;padding:0}legend{margin-bottom:.5rem;padding:0;font-weight:600}.consent{border:1px solid var(--line);cursor:pointer;border-radius:10px;align-items:flex-start;gap:.75rem;margin-bottom:.6rem;padding:.85rem .9rem;display:flex}.consent input{width:1.15rem;height:1.15rem;accent-color:var(--accent);flex:none;margin:.18rem 0 0}.consent span{font-size:.94rem}button{width:100%;font:inherit;background:var(--accent);color:var(--accent-ink);cursor:pointer;border:0;border-radius:10px;padding:.85rem 1rem;font-weight:600}button:hover{filter:brightness(1.08)}button:disabled{opacity:.6;cursor:default}.wallets{gap:.6rem;margin:1.25rem 0;display:grid}.wallet-stub{border:1px dashed var(--line);text-align:center;color:var(--muted);border-radius:10px;padding:1rem;font-size:.92rem}.notice{border-left:3px solid var(--warn);color:var(--muted);margin:1.25rem 0;padding:.2rem 0 .2rem .9rem;font-size:.92rem}.notice.good{border-left-color:var(--ok)}.error{border-left-color:var(--accent)}.shell:has(.staff){max-width:56rem}.bar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;padding-bottom:.9rem;display:flex}.bar-name{color:var(--ink);letter-spacing:-.01em;font-weight:700;text-decoration:none}.bar-who{align-items:center;gap:.9rem;font-size:.9rem;display:flex}.bar-who form{margin:0}button.link{width:auto;color:var(--muted);background:0 0;padding:0;font-weight:400;text-decoration:underline}button.link:hover{filter:none;color:var(--ink)}.field{margin-bottom:1rem;display:block}.field span{margin-bottom:.35rem;font-size:.94rem;font-weight:600;display:block}input[type=text],input[type=email],input[type=password],input:not([type]),select{width:100%;font:inherit;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:.7rem .8rem}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.search{gap:.6rem;margin-bottom:1.5rem;display:flex}.search input{flex:1}.search button{width:auto;padding-inline:1.4rem}.grid{border-collapse:collapse;width:100%;margin:.75rem 0 2rem;font-size:.94rem}.grid th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--line);padding:.4rem .6rem .4rem 0;font-size:.78rem}.grid td{border-bottom:1px solid var(--line);vertical-align:top;padding:.55rem .6rem .55rem 0}.grid a{color:var(--ink)}.pill{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);vertical-align:middle;border-radius:999px;margin-left:.5rem;padding:.05rem .45rem;font-size:.72rem;display:inline-block}.pill-ok{color:var(--ok);border-color:var(--ok)}.facts{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.6rem 1.5rem;margin:0 0 1.25rem;display:grid}.facts dt{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.78rem}.facts dd{margin:.1rem 0 0}.facts code{word-break:break-all;font-size:.88rem}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);margin-bottom:1.1rem;padding:1.1rem 1.15rem}.panel-dim{opacity:.62}.panel h3{margin:0 0 .9rem;font-size:1.05rem}.panel h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:1.4rem 0 .6rem;font-size:.78rem}.actions{gap:.7rem;margin-top:1rem;display:grid}.action{border:1px solid var(--line);border-radius:10px;gap:.5rem;padding:.85rem .9rem;display:grid}.action-what{color:var(--muted);font-size:.9rem}.action button{justify-self:start;width:auto;padding-inline:1.3rem}.action-danger{border-color:var(--accent)}button.danger{color:var(--accent);border:1px solid var(--accent);background:0 0}button.danger:hover{background:var(--accent);color:var(--accent-ink);filter:none}.check{align-items:center;gap:.55rem;font-size:.92rem;display:flex}.check input{width:1.1rem;height:1.1rem;accent-color:var(--accent);flex:none}.bar-nav{flex-wrap:wrap;gap:1.1rem;margin-right:auto;font-size:.94rem;display:flex}.bar-nav a{color:var(--ink);text-decoration:none}.bar-nav a:hover{text-decoration:underline}textarea{width:100%;font:inherit;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:.7rem .8rem}.card-edit{grid-template-columns:minmax(0,18rem) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}@media (max-width:40rem){.card-edit{grid-template-columns:minmax(0,1fr)}}.colours{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.8rem;display:grid}input[type=color]{border:1px solid var(--line);background:var(--card);border-radius:10px;width:100%;height:2.6rem;padding:.2rem}input[type=datetime-local]{width:100%;font:inherit;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:.6rem .7rem}.gw{gap:.45rem;display:grid}.gw-caption{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0;font-size:.75rem}.gw-caption:not(:first-child){margin-top:.6rem}.gw-tile,.gw-open{font-family:Google Sans,Product Sans,Roboto,system-ui,sans-serif;box-shadow:0 1px 3px #0000004d}.gw-tile{border-radius:16px;padding:.85rem 1rem 1.1rem}.gw-tile-head{align-items:center;gap:.7rem;display:flex}.gw-tile-issuer{font-size:1.05rem}.gw-rule{opacity:.2;background:currentColor;height:1px;margin:.7rem 0}.gw-tile-program{font-size:1.4rem;font-weight:500;line-height:1.2}.gw-logo{background:#7f7f7f40;border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.gw-logo img{object-fit:cover;width:100%;height:100%}.gw-logo-small{width:2.3rem;height:2.3rem}.gw-logo-big{width:4.2rem;height:4.2rem;margin:0 auto}.gw-nologo{opacity:.8;font-size:.55rem}.gw-open{text-align:center;border-radius:20px;gap:.55rem;padding:1.4rem 1.1rem 1.3rem;display:grid}.gw-open-issuer{font-size:.95rem}.gw-open-program{overflow-wrap:anywhere;font-size:1.85rem;font-weight:700;line-height:1.1}.gw-qr{background:#fff;border-radius:14px;width:8.5rem;margin:.4rem auto 0;padding:.8rem}.gw-qr svg{width:100%;height:auto;display:block}.gw-module{text-align:left;margin-top:.5rem;font-size:.9rem}.gw-module-head{opacity:.75;font-size:.75rem}.gw-module-body{white-space:pre-line}.gw-note{color:var(--muted);margin:.3rem 0 0;font-size:.78rem}.previews{gap:1.2rem;display:grid}.aw{gap:.45rem;display:grid}.aw-card{border-radius:12px;padding:.7rem 0 .9rem;font-family:-apple-system,SF Pro Text,Helvetica Neue,system-ui,sans-serif;overflow:hidden;box-shadow:0 1px 3px #0000004d}.aw-top{align-items:center;gap:.5rem;min-height:2.2rem;padding:0 .8rem;display:flex}.aw-logo{object-fit:contain;object-position:left center;max-width:6.7rem;height:2.1rem}.aw-logo-text{font-size:1rem;font-weight:500}.aw-strip{aspect-ratio:375/144;background-position:50%;background-size:cover;align-items:flex-end;margin-top:.45rem;padding:.5rem .8rem;display:flex}.aw-strip:not(.has-image){aspect-ratio:auto;min-height:3rem}.aw-primary{overflow-wrap:anywhere;font-size:1.9rem;font-weight:300;line-height:1.1}.aw-fields{justify-content:space-between;gap:.8rem;padding:.55rem .8rem 0;display:flex}.aw-right{text-align:right}.aw-label{text-transform:uppercase;letter-spacing:.02em;font-size:.62rem;font-weight:600}.aw-value{font-size:1.05rem}.aw-qr{background:#fff;border-radius:8px;width:7.5rem;margin:1rem auto 0;padding:.5rem}.aw-qr svg{width:100%;height:auto;display:block}.aw-back{border:1px solid #7f7f7f59;border-radius:12px;gap:.6rem;padding:.6rem .8rem;font-size:.9rem;display:grid}.aw-back-label{color:var(--muted);font-size:.75rem}.apple-fields{gap:.8rem;display:grid}.qr-row{grid-template-columns:11rem minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}@media (max-width:40rem){.qr-row{grid-template-columns:minmax(0,1fr)}}.qr{background:#fff;border-radius:10px;max-width:11rem;padding:.4rem}.qr svg{width:100%;height:auto;display:block}details.action summary{cursor:pointer;font-size:.94rem;font-weight:600}details.action[open] summary{margin-bottom:.8rem}.wallet-button{text-align:center;color:#fff;background:#000;border-radius:999px;padding:.9rem 1rem;font-weight:600;text-decoration:none;display:block}.wallet-button:hover{filter:brightness(1.25)}.temp-card{border-radius:var(--radius);outline-offset:-1px;outline:1px solid #39435a;max-width:21rem;margin:1.25rem auto;overflow:hidden;box-shadow:0 1px 3px #00000040}.temp-flag{color:#2a1f00;text-transform:uppercase;letter-spacing:.12em;text-align:center;background:#f0b429;margin:0;padding:.45rem .9rem;font-size:.72rem;font-weight:700}.temp-body{color:#fff;background:#232a38;padding:1.1rem 1.1rem 1.25rem}.temp-program{letter-spacing:-.01em;margin:0 0 1rem;font-size:1.05rem;font-weight:700}.temp-label{text-transform:uppercase;letter-spacing:.08em;color:#9aa6bd;margin:0 0 .1rem;font-size:.68rem}.temp-name{letter-spacing:-.01em;margin:0 0 .85rem;font-size:1.45rem;font-weight:700;line-height:1.2}.temp-until{margin:0;font-size:1.15rem;font-weight:600}.temp-qr{background:#fff;border-radius:10px;width:8.5rem;margin:1.1rem auto .25rem;padding:.6rem}.temp-qr svg{width:100%;height:auto;display:block}.temp-venues{color:#9aa6bd;text-align:center;margin:.9rem 0 0;font-size:.75rem}.temp-code-label{text-transform:uppercase;letter-spacing:.08em;color:#9aa6bd;border-top:1px solid #39435a;margin:1.1rem 0 .15rem;padding-top:.9rem;font-size:.62rem}.temp-code{color:#c3cbdb;word-break:break-all;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;line-height:1.5}.filters{flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;display:flex}.filters .field{flex:9rem;min-width:9rem;margin:0}.filters button{flex:none}@media (max-width:34rem){.filters{flex-direction:column;align-items:stretch}}
