:root{--ink:#172027;--green:#147660;--paper:#f6f3eb;--line:#d7d2c7;--red:#a52e2e}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);line-height:1.5}main{max-width:720px;margin:48px auto;padding:40px;background:#fff;box-shadow:0 10px 36px #20202012;border-radius:12px}.wide{max-width:1100px}.eyebrow{color:var(--green);font-size:.78rem;font-weight:800;letter-spacing:.16em;margin:0}h1{font-size:2.2rem;line-height:1.1;margin:.25rem 0 1rem}.intro{font-size:1.1rem;color:#43515a;margin-bottom:2rem}.capacity,.fee-info{margin:0 0 1rem;padding:14px 16px;background:#e7f5ef;border-left:4px solid var(--green);border-radius:5px}.capacity.full{background:#f9e8e8;border-color:var(--red)}.fee-info{margin-bottom:2rem}.fee-info span{display:block;margin-top:6px}form{margin-top:1.5rem}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label,fieldset{display:block;margin:0 0 18px;font-weight:650}label span,legend span,.small{font-weight:400;color:#53616a}input,select{display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid var(--line);border-radius:6px;font:inherit;background:#fff}fieldset{border:1px solid var(--line);border-radius:8px;padding:16px}legend{padding:0 5px;font-weight:700}.checkbox{display:flex;align-items:flex-start;gap:9px;font-weight:400}.checkbox input{display:inline-block;width:auto;margin:5px 0 0}.delete{background:var(--red)}button{border:0;border-radius:6px;padding:13px 20px;background:var(--green);color:#fff;font:700 1rem inherit;cursor:pointer}.error{color:var(--red);font-size:.88rem;font-weight:500;margin:5px 0 0}.notice{background:#e7f5ef;border-radius:6px;padding:12px 14px}.notice.error{background:#f9e8e8}.confirmation{text-align:center;max-width:600px}.qr{width:250px;height:250px;max-width:100%;height:auto;image-rendering:auto}.status{display:inline-block;padding:7px 14px;border-radius:100px;font-weight:700}.paid{background:#dff3e9;color:#075a40}.unpaid{background:#fff0d5;color:#835100}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}td form{margin:6px 0 0}td button{font-size:.8rem;padding:7px 10px}@media(max-width:600px){main{margin:0;border-radius:0;padding:28px 20px;min-height:100vh}.grid{grid-template-columns:1fr}h1{font-size:1.8rem}table{font-size:.75rem}th,td{padding:6px 4px}}
