:root{--qs-bg: #f5f6fa;--qs-fg: #1a1c23;--qs-fg-muted: #5a5e6b;--qs-card-bg: #ffffff;--qs-card-border: #e0e3eb;--qs-accent: #2a6df4;--qs-accent-fg: #ffffff;--qs-error: #c0392b;--qs-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--qs-radius: 12px;--qs-spacing: 1.25rem;--qs-card-width: 28rem}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{font-family:var(--qs-font);background:var(--qs-bg);color:var(--qs-fg);line-height:1.5}#app{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--qs-spacing)}.qs-card{width:100%;max-width:var(--qs-card-width);background:var(--qs-card-bg);border:1px solid var(--qs-card-border);border-radius:var(--qs-radius);padding:calc(var(--qs-spacing) * 1.5);text-align:center}.qs-card--error{border-color:var(--qs-error)}.qs-heading{margin:0 0 var(--qs-spacing);font-size:1.5rem;font-weight:600}.qs-bucket{margin:0 0 calc(var(--qs-spacing) * .5);font-size:1.125rem;color:var(--qs-accent);font-weight:500}.qs-meta{margin:0;color:var(--qs-fg-muted);font-size:.95rem}.qs-countdown{margin:0 0 var(--qs-spacing);font-size:2.25rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--qs-accent)}.qs-button{margin-top:var(--qs-spacing);padding:.6rem 1.25rem;border:none;border-radius:calc(var(--qs-radius) / 2);background:var(--qs-accent);color:var(--qs-accent-fg);font:inherit;cursor:pointer}.qs-button:focus-visible{outline:2px solid var(--qs-accent);outline-offset:2px}.qs-button:disabled{opacity:.6;cursor:not-allowed}.qs-form{display:flex;flex-direction:column;gap:calc(var(--qs-spacing) * .5);margin-top:var(--qs-spacing);text-align:left}.qs-label{font-size:.9rem;color:var(--qs-fg-muted)}.qs-input{width:100%;padding:.6rem .75rem;border:1px solid var(--qs-card-border);border-radius:calc(var(--qs-radius) / 2);background:var(--qs-card-bg);color:var(--qs-fg);font:inherit}.qs-input:focus-visible{outline:2px solid var(--qs-accent);outline-offset:1px;border-color:var(--qs-accent)}.qs-banner{margin:var(--qs-spacing) 0 0;padding:.6rem .75rem;border-radius:calc(var(--qs-radius) / 2);background:var(--qs-bg);border:1px solid var(--qs-card-border);color:var(--qs-fg);font-size:.95rem}.qs-banner[data-kind=rejected],.qs-banner[data-kind=error]{border-color:var(--qs-error);color:var(--qs-error)}.qs-banner[data-kind=info]{border-left:3px solid var(--qs-accent);white-space:pre-line}
