
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.ntm-event-selector{border:1px solid #ddd;border-radius:12px;padding:18px;margin:18px 0}
.ntm-event-selector h3{margin-top:0}
.ntm-event-option{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid #e5e7eb;border-radius:10px;margin:8px 0;cursor:pointer}
.ntm-event-option input{margin-top:4px}
.ntm-event-option span{display:flex;flex-direction:column}
.ntm-event-option small{color:#666;margin-top:3px}
.ntm-event-option.is-full{opacity:.55;cursor:not-allowed}
.ntm-fee-note{margin:14px 0 0;font-size:16px}
body.ntm-page{margin:0;min-height:100vh;background:#f3f4f6}
.ntm-wrap{max-width:680px;margin:0 auto;padding:24px 14px 60px}
.ntm-card{background:#fff;border-radius:18px;padding:26px;box-shadow:0 10px 35px rgba(0,0,0,.08)}
.ntm-brand{font-weight:800;letter-spacing:.12em;font-size:13px}
.ntm-card h1{margin:8px 0 18px;font-size:30px}
.ntm-status{display:inline-block;border-radius:999px;padding:8px 14px;font-weight:800;margin-bottom:18px}
.ntm-status.ok{background:#dcfce7;color:#166534}.ntm-status.bad{background:#fee2e2;color:#991b1b}
.ntm-qr{width:260px;height:260px;max-width:100%;display:block;margin:8px auto 22px}
.ntm-card dl{display:grid;grid-template-columns:110px 1fr;gap:12px}.ntm-card dt{font-weight:700}.ntm-card dd{margin:0}
.ntm-card label{display:block;font-weight:700;margin-bottom:8px}.ntm-card input[type=text]{width:100%;border:1px solid #bbb;border-radius:10px;padding:14px;font-size:17px}
.ntm-card button{width:100%;border:0;border-radius:10px;padding:14px;margin-top:12px;font-size:17px;font-weight:800;background:#111827;color:#fff}
.ntm-card button.ntm-checkin{background:#047857}.ntm-alert{padding:12px;border-radius:8px;background:#fff7ed;margin-bottom:16px}
.ntm-result{border-top:1px solid #ddd;margin-top:24px;padding-top:18px}.ntm-invalid{border-top:6px solid #dc2626}

.ntm-camera-box{margin:0 0 22px;padding:14px;border:1px solid #d1d5db;border-radius:12px;background:#f9fafb}
.ntm-camera-box button{margin-top:0}
.ntm-camera-box button+button{margin-top:8px;background:#6b7280}
#ntm-qr-reader{margin-top:14px;background:#fff}
#ntm-qr-reader video{border-radius:10px}
.ntm-camera-message{font-size:14px;color:#4b5563;margin:10px 0 0}
