*{box-sizing:border-box}body{margin:0;background:#f3f5f8;color:#172033;font-family:Arial,Helvetica,sans-serif}.shell{max-width:680px;margin:38px auto;padding:0 18px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.brand{font-weight:900;letter-spacing:1px;font-size:19px}.brand span{color:#c8102e}.event-label,.eyebrow{font-size:10px;letter-spacing:2px;color:#8a93a4;font-weight:700}.panel{background:#fff;border:1px solid #e5e9f0;border-radius:16px;padding:34px;box-shadow:0 12px 34px rgba(24,39,75,.06)}h1{font-size:28px;margin:10px 0 8px;letter-spacing:-.7px}.muted{color:#778196;line-height:1.6}.tiny{font-size:12px}label,small{display:block;font-size:11px;color:#7e8798;font-weight:700;letter-spacing:1px;margin:20px 0 8px}input{width:100%;padding:15px;border:1px solid #dce1e9;border-radius:9px;font-size:17px;outline:none}input:focus{border-color:#c8102e}button{width:100%;border:0;border-radius:9px;background:#c8102e;color:#fff;padding:15px;font-size:14px;font-weight:700;margin-top:18px;cursor:pointer}button.secondary{background:#263247}.error{background:#fff0f1;color:#a30c25;padding:12px;border-radius:8px;margin:18px 0;font-size:13px}.confirm-data,.details{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:12px 0 22px}.confirm-data div,.details div{border-bottom:1px solid #edf0f4;padding:4px 0 12px}.confirm-data b,.details b{font-size:15px;display:block}.confirm-data small,.details small{margin:0 0 7px}.back{display:block;text-align:center;margin-top:18px;color:#778196;text-decoration:none;font-size:13px}.center{text-align:center}.person h2{margin-bottom:5px}.qr{width:260px;height:260px;margin:22px auto 8px;padding:10px;border:1px solid #edf0f4;border-radius:12px;display:flex;align-items:center;justify-content:center}.qr img,.qr canvas{max-width:100%;height:auto}.warning{font-weight:700;color:#a30c25;font-size:13px;line-height:1.5;margin:20px auto;max-width:390px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.actions button{margin-top:8px}.notice{background:#f0f6ff;color:#31527d;border-radius:8px;padding:10px;font-size:13px}footer{text-align:center;color:#a0a8b6;font-size:11px;margin:25px 0}@media(max-width:520px){.shell{margin:18px auto}.panel{padding:24px 20px}h1{font-size:24px}.actions{grid-template-columns:1fr}header{gap:10px}.event-label{font-size:8px}}@media print{body{background:#fff}.shell{margin:0 auto}.panel{box-shadow:none;border:0}header,footer,.actions,.tiny{display:none!important}.warning{color:#111}}
