*{box-sizing:border-box}body{margin:0;background:#f4f6f8;color:#163b38;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}header{display:flex;align-items:center;gap:24px;padding:22px 5vw;background:#123e3b;color:white}header form{margin-left:auto}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}.brand{font-size:27px;font-weight:800;letter-spacing:-1px}.strap{font-size:13px;opacity:.7}main{max-width:1320px;margin:auto;padding:36px 5vw 64px;min-height:80vh}nav,.toolbar{display:flex;gap:24px;flex-wrap:wrap;font-size:14px;margin-bottom:28px}nav a:last-child{margin-left:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:32px;margin:30px 0}h1{font-size:clamp(32px,4.2vw,58px);line-height:1.08;letter-spacing:-2px;margin:16px 0 24px}h2{font-size:24px;letter-spacing:-.6px;margin:0 0 15px}p{margin:10px 0 18px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px}.muted,small{color:#627775}.panel{background:white;border:1px solid #dce5e3;border-radius:18px;padding:28px;margin-bottom:24px;box-shadow:0 5px 16px #123e3b03}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}.two{grid-template-columns:1fr 1fr}.pill{display:inline-block;background:#edf5e9;color:#31562e;border-radius:7px;padding:5px 9px;font-size:10px;font-weight:800;letter-spacing:1px}.counts{display:flex;gap:40px;border-top:1px solid #e4ebe9;padding-top:20px;margin-top:28px}.counts strong{display:block;font-size:38px;line-height:1.2}.counts span{font-size:12px;color:#627775}.arrow{margin-top:28px;font-weight:700}.badge{padding:25px;background:#e4eddf;border-radius:12px;font-weight:700}.warning,.notice{border-radius:10px;padding:18px 22px;margin:20px 0 28px;font-size:14px}.warning{background:#fff1d5;color:#73521c;border:1px solid #edd9aa}.notice{background:#e9f2ee;color:#315a4b}.auth{max-width:580px;margin:40px auto}.auth h1{font-size:42px}label{display:block;font-size:14px;font-weight:650;margin-bottom:6px}input,select,textarea{font:inherit;width:100%;border:1px solid #bccdca;background:#fff;border-radius:9px;padding:13px;color:#163b38}input[type=checkbox]{width:22px;height:22px;vertical-align:middle}button,.button{display:inline-block;border:0;border-radius:9px;background:#123e3b;color:#fff;font:650 15px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:14px 22px;cursor:pointer;min-height:48px;text-align:center}button:hover,.button:hover{filter:brightness(1.15);text-decoration:none}button.quiet{background:#e8efed;color:#163b38}.danger{background:#a3312d}.secondary{background:#e6eeea;color:#163b38}.errorlist{color:#a3312d;padding-left:20px;font-size:14px}.helptext{display:block;color:#627775;font-size:12px}.person{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #e4ebe9;padding:18px 0}.person p{margin:4px 0;font-size:13px}.qr-panel{display:flex;align-items:center;gap:28px}.qr-panel img{width:160px;height:160px}.break{overflow-wrap:anywhere}.kiosk{max-width:840px;margin:25px auto;text-align:center}.kiosk h1{font-size:clamp(54px,7vw,82px)}.kiosk-buttons{display:flex;gap:20px;margin:40px 0}.kiosk-buttons a{flex:1;padding:28px;font-size:23px;text-align:left}.kiosk-buttons span{float:right}.kiosk-qr{justify-content:center;margin:35px 0}.kiosk-qr img{width:130px;height:130px}.code{font:800 35px/1.5 monospace;letter-spacing:4px;background:#edf3ee;padding:18px;border-radius:10px}.roll-person form{display:grid;grid-template-columns:1fr 2fr auto;align-items:end;gap:12px}.roll-person form label{grid-row:1}.roll-person form select,.roll-person form input,.roll-person form button{grid-row:2}.roll-person form input[type=hidden]{display:none}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 5vw;border-top:1px solid #dce5e3;font-size:12px;color:#627775}dialog{border:0;border-radius:18px;padding:30px;max-width:500px;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#0007}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #80af54;outline-offset:3px}[hidden]{display:none!important}@media(max-width:750px){.two{grid-template-columns:1fr}.heading{display:block}.heading form{margin:25px 0}.badge,.strap{display:none}.kiosk-buttons{flex-direction:column}.qr-panel{flex-direction:column}.roll-person form{display:flex;flex-direction:column;align-items:stretch}footer{flex-direction:column}.code{font-size:26px;letter-spacing:2px}}@media print{header,footer,nav,form,button{display:none!important}body{background:white}main{padding:0}.panel{break-inside:avoid;box-shadow:none}.warning{background:white;border:1px solid #aaa}}
