.screen-reader-text{
  position:absolute !important;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  border:0;
  white-space:nowrap;
}

.hernestra-wrap{max-width:1180px;margin:0 auto;padding:18px 16px 32px}
.hernestra-header{position:sticky;top:0;z-index:20;background:#fff;padding:12px 0 14px;border-bottom:1px solid rgba(15,23,42,.08)}
.hernestra-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.hernestra-header h2{margin:0;font-size:32px;line-height:1.1;color:#111827}
.hernestra-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.hernestra-tab,.hernestra-btn,.hernestra-entry-action,.hernestra-entry-toggle,.hernestra-search-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:11px 16px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.14);
  background:#fff;
  color:#111827;
  text-decoration:none;
  font-weight:700;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,color .16s ease;
}
.hernestra-tab:hover,.hernestra-btn:hover,.hernestra-entry-action:hover,.hernestra-entry-toggle:hover,.hernestra-search-submit:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
.hernestra-tab:focus-visible,.hernestra-btn:focus-visible,.hernestra-entry-action:focus-visible,.hernestra-entry-toggle:focus-visible,.hernestra-search-submit:focus-visible,.hernestra-search-input:focus-visible,.hernestra-toggle input:focus-visible,.camera-action:focus-visible,.camera-zoom__option:focus-visible,.scan-button:focus-visible,.scan-result-card__close:focus-visible,.scan-result-card__action:focus-visible{
  outline:3px solid #93c5fd;
  outline-offset:2px;
}
.hernestra-tab.is-active{border-color:#1d4ed8;background:#eff6ff;color:#1e3a8a;box-shadow:0 10px 22px rgba(37,99,235,.12)}

.hernestra-card{margin-top:18px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);border:1px solid rgba(15,23,42,.08);border-radius:22px;padding:20px;box-shadow:0 18px 44px rgba(15,23,42,.06)}
.hernestra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hernestra-event{border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:14px;background:#fff}
.hernestra-event.is-selected{outline:2px solid rgba(29,78,216,.16)}
.hernestra-event-cover{margin:-14px -14px 14px;overflow:hidden;border-radius:18px 18px 0 0;aspect-ratio:16/9;background:#e5e7eb}
.hernestra-event-cover img{width:100%;height:100%;display:block;object-fit:cover}
.hernestra-event-title{margin-bottom:12px;font-weight:800;font-size:18px;line-height:1.25;color:#111827}
.hernestra-event-actions{display:flex;gap:10px;flex-wrap:wrap}

.hernestra-btn.primary{font-weight:800}
.hernestra-btn-list{border-color:#bfdbfe;background:#eef4ff;color:#1e3a8a}
.hernestra-btn-list.is-active{border-color:#1d4ed8;background:#dbeafe;color:#1e3a8a}
.hernestra-btn-scan{
  min-width:240px;
  min-height:54px;
  padding:14px 20px;
  border-color:#9f1239 !important;
  background:#c1121f !important;
  color:#fff !important;
  font-size:15px;
  box-shadow:0 14px 30px rgba(193,18,31,.28);
}
.hernestra-btn-scan,.hernestra-btn-scan span,.hernestra-btn-scan i{color:#fff !important}
.hernestra-btn-scan:hover,.hernestra-btn-scan.is-active{background:#9f1239 !important;border-color:#881337 !important;color:#fff !important}
.hernestra-btn-scan:active{transform:translateY(0);box-shadow:0 8px 18px rgba(159,18,57,.22)}
.hernestra-btn-scan:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}

.hernestra-help{margin:0;color:#4b5563;line-height:1.55}
.hernestra-note{margin:0;padding:14px 16px;border-radius:16px;border:1px dashed rgba(15,23,42,.16);background:#fff}
.hernestra-list{margin:8px 0 0 18px}
.hernestra-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px}
.hernestra-section-head h3{margin:0 0 6px;font-size:30px;line-height:1.12;color:#0f172a}

.hernestra-event-hero{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:18px;align-items:stretch;margin-bottom:18px}
.hernestra-event-hero-media{overflow:hidden;border-radius:18px;background:#e5e7eb;min-height:180px}
.hernestra-event-hero-media img{width:100%;height:100%;display:block;object-fit:cover}
.hernestra-event-hero-copy{display:flex;flex-direction:column;justify-content:center;gap:10px}
.hernestra-event-hero-copy h3{margin:0;font-size:28px;line-height:1.12;color:#0f172a}
.hernestra-eyebrow{display:inline-flex;align-self:flex-start;padding:7px 12px;border-radius:999px;background:#fee2e2;color:#b91c1c;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}

.hernestra-checkin-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.hernestra-checkin-settings{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.hernestra-toggle{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-weight:800;
}
.hernestra-toggle-light{
  background:#f8fafc;
  border-color:#cbd5e1;
  color:#0f172a;
}
.hernestra-toggle input{margin:0;width:18px;height:18px;accent-color:#1d4ed8}

.hernestra-search-wrap{display:flex;align-items:stretch;gap:12px;margin:0 0 14px}
.hernestra-search-wrap-placeholder{display:none}
.hernestra-search-input{
  flex:1;
  min-width:0;
  min-height:52px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid #94a3b8;
  background:#fff;
  color:#0f172a;
  font-size:16px;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.03);
}
.hernestra-search-input::placeholder{color:#64748b;opacity:1}
.hernestra-search-input:focus{outline:none;border-color:#1d4ed8;box-shadow:0 0 0 4px rgba(59,130,246,.14)}
.hernestra-search-submit{
  min-width:56px;
  padding:0 16px;
  border-color:#1d4ed8;
  background:#1d4ed8;
  color:#fff;
}
.hernestra-search-submit:hover{background:#1e40af;border-color:#1e40af;color:#fff}
.hernestra-search-submit.is-loading{opacity:.75;pointer-events:none}

.hernestra-inline-message{margin:0 0 16px;padding:14px 16px;border-radius:16px;font-weight:700}
.hernestra-inline-message.is-info{background:#eff6ff;color:#1d4ed8}
.hernestra-inline-message.is-success{background:#ecfdf3;color:#166534}
.hernestra-inline-message.is-warning{background:#fff7ed;color:#c2410c}
.hernestra-inline-message.is-error{background:#fef2f2;color:#b91c1c}

.hernestra-entry-panel{display:grid;gap:16px}
.hernestra-entry-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.hernestra-entry-panel-head h4{margin:0 0 6px;font-size:18px;line-height:1.2;color:#0f172a}
.hernestra-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:min(100%,420px)}
.hernestra-summary-card{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
}
.hernestra-summary-card.is-filter{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  text-align:left;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;
}
.hernestra-summary-card.is-filter:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
.hernestra-summary-card.is-filter.is-active{
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(59,130,246,.14),0 12px 28px rgba(15,23,42,.08);
}
.hernestra-summary-card strong{font-size:22px;line-height:1;color:#0f172a}
.hernestra-summary-card.is-success{background:#ecfdf3;border-color:#bbf7d0}
.hernestra-summary-card.is-muted{background:#f8fafc;border-color:#cbd5e1}
.hernestra-summary-label{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#475569}

.hernestra-entry-list{display:grid;gap:14px}
.hernestra-entry{
  border:1px solid rgba(15,23,42,.1);
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 32px rgba(15,23,42,.05);
  overflow:hidden;
  content-visibility:auto;
  contain-intrinsic-size:280px;
}
.hernestra-entry.is-highlighted{border-color:#1d4ed8;box-shadow:0 0 0 3px rgba(59,130,246,.14),0 14px 32px rgba(15,23,42,.08)}
.hernestra-entry-main{padding:18px}
.hernestra-entry-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.hernestra-entry-identity{display:flex;align-items:flex-start;gap:14px;min-width:0;flex:1}
.hernestra-entry-status-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 42px;
  width:42px;
  height:42px;
  border-radius:999px;
  background:#94a3b8;
  color:#fff;
  font-size:18px;
}
.hernestra-entry-status-icon.is-checked{background:#15803d}
.hernestra-entry-status-icon.is-pending{background:#dc2626}
.hernestra-entry-head{display:grid;gap:8px;min-width:0}
.hernestra-entry-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.hernestra-entry-title-row h5{margin:0;font-size:28px;line-height:1.05;color:#0f172a}
.hernestra-entry-meta{display:flex;flex-wrap:wrap;gap:8px 12px;color:#475569;font-size:15px;line-height:1.45}
.hernestra-entry-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}

.hernestra-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.hernestra-chip.is-success{background:#dcfce7;color:#166534}
.hernestra-chip.is-warning{background:#ffedd5;color:#c2410c}
.hernestra-chip.is-neutral{background:#e2e8f0;color:#334155}

.hernestra-entry-action{
  min-height:46px;
  padding:11px 14px;
}
.hernestra-entry-action.is-success{background:#166534;border-color:#166534;color:#fff}
.hernestra-entry-action.is-success:hover{background:#14532d;border-color:#14532d;color:#fff}
.hernestra-entry-action.is-danger{background:#b91c1c;border-color:#b91c1c;color:#fff}
.hernestra-entry-action.is-danger:hover{background:#991b1b;border-color:#991b1b;color:#fff}
.hernestra-entry-action.is-secondary{background:#f8fafc;border-color:#cbd5e1;color:#1f2937}
.hernestra-entry-action.is-loading,.hernestra-entry-action:disabled{opacity:.75;pointer-events:none}

.hernestra-entry-toggle{background:#fff;color:#0f172a}
.hernestra-entry.is-open .hernestra-entry-toggle .fa{transform:rotate(180deg)}

.hernestra-entry-details{margin-top:18px;padding-top:18px;border-top:1px solid rgba(15,23,42,.08)}
.hernestra-entry-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.hernestra-overview-item{padding:12px 14px;border-radius:16px;background:#f8fafc;border:1px solid rgba(148,163,184,.24)}
.hernestra-overview-item.is-wide{grid-column:1 / -1}
.hernestra-overview-item.is-empty{min-height:72px}
.hernestra-overview-item.is-noted{
  background:#fff7ed;
  border-color:#fdba74;
}
.hernestra-overview-item.is-noted .hernestra-overview-label{
  color:#c2410c;
}
.hernestra-overview-item.is-noted strong{
  color:#7c2d12;
}
.hernestra-overview-label{display:block;margin-bottom:4px;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#475569}
.hernestra-overview-item strong{font-size:15px;line-height:1.45;color:#0f172a}

.hernestra-entry-detail-stack{display:grid;gap:14px}
.hernestra-entry-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hernestra-detail-section{padding:14px;border-radius:18px;background:#fff;border:1px solid rgba(15,23,42,.08)}
.hernestra-detail-section h6{margin:0 0 12px;font-size:15px;line-height:1.2;color:#0f172a}
.hernestra-detail-accordion{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;overflow:hidden}
.hernestra-detail-accordion-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;cursor:pointer;list-style:none;font-size:15px;font-weight:800;line-height:1.3;color:#0f172a}
.hernestra-detail-accordion-summary::-webkit-details-marker{display:none}
.hernestra-detail-accordion-summary .fa{color:#64748b;transition:transform .2s ease}
.hernestra-detail-accordion[open] .hernestra-detail-accordion-summary .fa{transform:rotate(180deg)}
.hernestra-detail-accordion-content{padding:0 14px 14px}
.hernestra-detail-list{display:grid;gap:12px;margin:0}
.hernestra-detail-item{display:grid;gap:4px;padding:0 0 12px;border-bottom:1px solid rgba(15,23,42,.06)}
.hernestra-detail-item:last-child{padding-bottom:0;border-bottom:0}
.hernestra-detail-item dt{margin:0;font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:#475569}
.hernestra-detail-item dd{margin:0;color:#0f172a;line-height:1.55;word-break:break-word}
.hernestra-related-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.hernestra-related-list li{display:flex;flex-wrap:wrap;gap:8px 10px;padding:10px 12px;border-radius:14px;background:#f8fafc;border:1px solid rgba(15,23,42,.06)}
.hernestra-empty-search{margin:0;padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px dashed #cbd5e1;color:#475569;font-weight:700}

.hernestra-yith-proxy{display:none !important}

.hernestra-scanner-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  width:100vw;
  height:100vh;
  height:100dvh;
  background:#020617;
}
.hernestra-scanner-modal[aria-hidden='false']{display:block}
.hernestra-scan-overlay[hidden],
.camera-focus-indicator[hidden]{display:none !important}
.hernestra-scanner-shell,
.camera-screen{
  --camera-safe-top: calc(env(safe-area-inset-top, 0px) + 16px);
  --camera-safe-bottom: calc(env(safe-area-inset-bottom, 0px) + 16px);
  --camera-button-height: 72px;
  --camera-button-offset: max(calc(var(--camera-safe-bottom) + 16px), 104px);
  --camera-overlay-offset: calc(var(--camera-button-offset) + var(--camera-button-height) + 18px);
  position:relative;
  width:100vw;
  height:100vh;
  height:100dvh;
  background:#020617;
  color:#fff;
  overflow:hidden;
}
.hernestra-scanner-stage,
.camera-stage{
  position:relative;
  width:100%;
  height:100%;
  background:#000;
  overflow:hidden;
  touch-action:none;
}
.hernestra-qr-reader,
.hernestra-qr-reader video{
  width:100% !important;
  height:100% !important;
  min-height:100%;
  object-fit:cover;
}
.hernestra-qr-reader video{
  transform-origin:center center;
  transition:transform .18s ease;
}
.hernestra-qr-reader{height:100%}
.hernestra-qr-reader #qr-shaded-region{border-width:0 !important}
.hernestra-qr-reader__status-span,.hernestra-qr-reader__dashboard_section_csr button,.hernestra-qr-reader__dashboard_section_swaplink{display:none !important}

.camera-topbar{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:4;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  padding:var(--camera-safe-top) 18px 10px;
  background:linear-gradient(180deg,rgba(2,6,23,.88) 0%,rgba(2,6,23,.52) 100%);
  backdrop-filter:blur(10px);
}
.camera-action{
  appearance:none;
  -webkit-appearance:none;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:86px;
  padding:2px 4px;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff;
  text-align:center;
  cursor:pointer;
}
.camera-action:hover{transform:none;box-shadow:none;background:transparent !important}
.camera-action:disabled{opacity:.58;cursor:not-allowed}
.camera-action__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  height:auto;
  border-radius:0;
  background:transparent;
  border:0;
  font-size:36px;
  line-height:1;
}
.camera-action:disabled .camera-action__icon{
  color:rgba(255,255,255,.72);
}
.camera-action__text{
  max-width:112px;
  font-size:15px;
  line-height:1.2;
  font-weight:500;
  text-wrap:balance;
}
#hernestra-scan-torch{
  gap:11px;
}
.camera-action.is-active .camera-action__icon,
.camera-action[aria-pressed='true'] .camera-action__icon{
  color:#fde68a;
}

.camera-focus-area{
  position:fixed;
  inset:calc(var(--camera-safe-top) + 86px) 0 calc(var(--camera-button-offset) + var(--camera-button-height) + 20px) 0;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
.camera-frame,
.hernestra-scanner-frame{
  position:absolute;
  top:50%;
  left:50%;
  width:min(calc(100vw - 126px),540px);
  aspect-ratio:1.52 / 1;
  transform:translate(-50%, -50%);
  border:2px solid rgba(255,255,255,.84);
  border-radius:26px;
  background:transparent;
  box-shadow:0 0 0 9999px rgba(2,6,23,.24);
  pointer-events:none;
}
.camera-frame__corner{
  position:absolute;
  width:44px;
  height:44px;
  border:5px solid #fff;
  border-radius:12px;
}
.camera-frame__corner--tl{top:-3px;left:-3px;border-right:0;border-bottom:0}
.camera-frame__corner--tr{top:-3px;right:-3px;border-left:0;border-bottom:0}
.camera-frame__corner--bl{left:-3px;bottom:-3px;border-right:0;border-top:0}
.camera-frame__corner--br{right:-3px;bottom:-3px;border-left:0;border-top:0}

.camera-zoom,
.hernestra-scanner-zoom{
  position:fixed;
  top:50%;
  right:16px;
  left:auto;
  transform:translateY(-40%);
  z-index:3;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:62px;
  min-height:206px;
  padding:18px 8px;
  border-radius:999px;
  background:rgba(2,6,23,.46);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 42px rgba(2,6,23,.32);
  backdrop-filter:blur(10px);
  pointer-events:auto;
}
.camera-zoom::before,
.hernestra-scanner-zoom::before{
  display:none;
}
.camera-zoom__option{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  height:auto;
  border-radius:0;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  opacity:.92;
}
.camera-zoom__option.is-active{
  color:#fff;
}
.camera-zoom__rail{
  position:relative;
  width:100%;
  flex:1 1 auto;
  min-height:100px;
  margin:4px 0;
}
.camera-zoom__rail::before{
  content:'';
  position:absolute;
  top:6px;
  bottom:6px;
  left:50%;
  width:2px;
  transform:translateX(-50%);
  border-radius:999px;
  background:rgba(255,255,255,.56);
}
.camera-zoom__thumb{
  appearance:none;
  -webkit-appearance:none;
  position:absolute;
  left:50%;
  top:0;
  z-index:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  transform:translateX(-50%);
  border:0 !important;
  border-radius:999px;
  background:#fff !important;
  color:#0f172a !important;
  font-size:16px;
  font-weight:800;
  box-shadow:0 10px 24px rgba(255,255,255,.16) !important;
  cursor:pointer;
}
.camera-zoom__native{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

.scan-button{
  appearance:none;
  -webkit-appearance:none;
  position:fixed;
  left:0;
  right:0;
  bottom:var(--camera-button-offset);
  z-index:7;
  width:min(calc(100vw - 32px),360px);
  max-width:calc(100vw - 32px);
  margin-inline:auto;
  min-height:var(--camera-button-height);
  padding:18px 24px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg,#2857f7 0%,#1d4ed8 100%);
  color:#fff !important;
  box-shadow:0 20px 48px rgba(29,78,216,.34);
  font-size:clamp(16px,2.5vw,22px);
  font-weight:900;
  letter-spacing:.04em;
}
.scan-button:hover{
  background:linear-gradient(180deg,#1e40af 0%,#1d4ed8 100%);
  color:#fff !important;
  transform:none;
}
.scan-button:active,
.scan-button:disabled{transform:none}
.scan-button i,
.scan-button span{color:#fff !important}
.scan-button i{font-size:24px}
.scan-button span{display:inline-flex;align-items:center;justify-content:center}

.camera-focus-indicator{
  position:absolute;
  z-index:3;
  width:72px;
  height:72px;
  margin-left:-36px;
  margin-top:-36px;
  border:2px solid rgba(255,255,255,.92);
  border-radius:18px;
  box-shadow:0 0 0 1px rgba(255,255,255,.14) inset;
  pointer-events:none;
}
.camera-focus-indicator.is-animating{
  animation:cameraFocusPulse .72s ease;
}
@keyframes cameraFocusPulse{
  0%{transform:scale(1.22);opacity:0}
  20%{opacity:1}
  100%{transform:scale(1);opacity:1}
}

.hernestra-scan-overlay{
  position:fixed;
  left:16px;
  right:16px;
  bottom:var(--camera-overlay-offset);
  z-index:6;
  display:flex;
  justify-content:center;
  padding:0;
  pointer-events:auto;
}
.scan-result-card{
  position:relative;
  width:min(100%,520px);
  max-height:min(56dvh,460px);
  overflow:auto;
  display:grid;
  grid-template-rows:auto auto;
  gap:14px;
  padding:22px 18px 16px;
  border-radius:24px;
  color:#fff;
  box-shadow:0 28px 64px rgba(2,6,23,.36);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(18px);
  pointer-events:auto;
  text-align:center;
  justify-items:center;
  align-items:stretch;
}
.scan-result-card--ok{background:linear-gradient(180deg,rgba(7,77,31,.96) 0%,rgba(8,56,26,.96) 100%)}
.scan-result-card--ko{background:linear-gradient(180deg,rgba(95,18,18,.97) 0%,rgba(61,16,16,.97) 100%)}
.scan-result-card--warning{background:linear-gradient(180deg,rgba(120,53,15,.97) 0%,rgba(98,39,15,.97) 100%)}
.scan-result-card--info{background:linear-gradient(180deg,rgba(30,58,138,.97) 0%,rgba(30,41,59,.97) 100%)}
.scan-result-card__close{
  appearance:none;
  -webkit-appearance:none;
  position:absolute;
  top:10px;
  right:12px;
  z-index:4;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border:0 !important;
  border-radius:999px;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
  font-size:36px;
  line-height:1;
  font-weight:300;
  text-shadow:0 1px 2px rgba(2,6,23,.35);
  cursor:pointer;
}
.scan-result-card__body{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  align-items:center;
  justify-items:center;
  text-align:center;
  align-content:center;
  min-height:0;
}
.scan-result-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:56px;
  height:56px;
  border-radius:999px;
  font-size:28px;
  background:rgba(255,255,255,.16);
}
.scan-result-card--ok .scan-result-card__icon{background:#5ce36d;color:#043b12}
.scan-result-card--ko .scan-result-card__icon{background:#ff4c4c;color:#3b0b0b}
.scan-result-card--warning .scan-result-card__icon{background:#ffd27d;color:#5b2a05}
.scan-result-card--info .scan-result-card__icon{background:#93c5fd;color:#0f172a}
.scan-result-card__copy{display:grid;gap:6px;padding-right:0;justify-items:center;text-align:center}
.scan-result-card__title{font-size:clamp(30px,5vw,44px);line-height:1;font-weight:900;letter-spacing:.02em}
.scan-result-card__status{font-size:clamp(16px,2.5vw,20px);line-height:1.35;font-weight:700}
.scan-result-card__meta,
.scan-result-card__message{
  font-size:14px;
  line-height:1.4;
  color:rgba(255,255,255,.92);
}
.scan-result-card__meta[hidden],
.scan-result-card__message[hidden]{display:none !important}
.scan-result-card__action{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  width:100%;
  border:0 !important;
  border-radius:999px;
  font-size:clamp(17px,2.4vw,20px);
  font-weight:900;
  letter-spacing:.08em;
  color:#fff;
  cursor:pointer;
}
.scan-result-card--ok .scan-result-card__action{background:#4cd964}
.scan-result-card--ko .scan-result-card__action{background:#ef4444}
.scan-result-card--warning .scan-result-card__action{background:#f59e0b}
.scan-result-card--info .scan-result-card__action{background:#3b82f6}

#hernestra-print-header{display:none}
html,body{max-width:100%;overflow-x:hidden}
body.hernestra-camera-open{overflow:hidden}
body.hernestra-checkin-mobile-page{overflow-x:hidden}

@media (prefers-reduced-motion: reduce){
  .hernestra-tab,.hernestra-btn,.hernestra-entry-action,.hernestra-entry-toggle,.hernestra-search-submit{
    transition:none;
  }
  .hernestra-tab:hover,.hernestra-btn:hover,.hernestra-entry-action:hover,.hernestra-entry-toggle:hover,.hernestra-search-submit:hover{
    transform:none;
  }
}

@media print{
  .hernestra-header,.hernestra-checkin-actions,.hernestra-checkin-settings,.hernestra-search-wrap,.hernestra-inline-message,.hernestra-scanner-modal,.hernestra-empty-search{display:none !important}
  #hernestra-print-header{display:block;margin:0 0 16px;padding:0 0 10px;border-bottom:1px solid #cbd5e1}
  #hernestra-print-header h1{margin:0 0 4px;font-size:18px}
  #hernestra-print-header .meta{font-size:12px;color:#475569}
  .hernestra-card,.hernestra-entry{box-shadow:none;border-color:#cbd5e1}
  .hernestra-entry-details{display:block !important}
}

@media (max-width: 1024px){
  .hernestra-event-hero{grid-template-columns:1fr}
  .hernestra-summary{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
  .hernestra-entry-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width: 820px){
  .hernestra-wrap{padding:14px 12px 28px}
  .hernestra-wrap--checkin{max-width:none;width:100%;max-width:100%;padding:0 0 24px}
  .hernestra-wrap--checkin,
  .hernestra-wrap--checkin .hernestra-card,
  .hernestra-wrap--checkin .hernestra-entry-panel,
  .hernestra-wrap--checkin .hernestra-entry,
  .hernestra-wrap--checkin .hernestra-entry-main,
  .hernestra-wrap--checkin .hernestra-entry-identity,
  .hernestra-wrap--checkin .hernestra-entry-head,
  .hernestra-wrap--checkin .hernestra-entry-title-row,
  .hernestra-wrap--checkin .hernestra-entry-meta{max-width:100%;min-width:0;box-sizing:border-box;overflow-x:hidden}
  .hernestra-wrap--checkin .hernestra-header{display:none}
  .hernestra-wrap--checkin .hernestra-card{
    margin-top:0;
    width:100%;
    max-width:100%;
    padding:16px 12px 22px;
    border-radius:0;
    border-left:0;
    border-right:0;
    box-shadow:none;
  }
  .hernestra-wrap--checkin .hernestra-checkin-actions .hernestra-btn-list{display:none !important}
  .hernestra-wrap--checkin .hernestra-event-hero{grid-template-columns:1fr;gap:10px;margin-bottom:14px}
  .hernestra-wrap--checkin .hernestra-event-hero-media{display:none}
  .hernestra-wrap--checkin .hernestra-checkin-actions{margin-bottom:12px}
  .hernestra-wrap--checkin .hernestra-checkin-actions .hernestra-btn-scan{width:100%;min-width:0}
  .hernestra-wrap--checkin .hernestra-search-wrap.is-sticky-mobile{
    display:grid;
    grid-template-columns:minmax(0,1fr) 54px;
    align-items:stretch;
    position:sticky;
    top:var(--hernestra-mobile-header-offset, 0px);
    z-index:30;
    margin:0;
    padding:8px 12px 10px;
    box-sizing:border-box;
    background:#fff;
    border-bottom:1px solid rgba(15,23,42,.08);
    box-shadow:0 8px 18px rgba(15,23,42,.06);
    overflow:hidden;
  }
  .hernestra-wrap--checkin .hernestra-search-wrap.is-sticky-mobile .hernestra-search-submit{min-width:54px;padding:0}
  .hernestra-wrap--checkin .hernestra-search-wrap.is-sticky-mobile .hernestra-search-input{
    font-size:16px;
  }
  .hernestra-wrap--checkin .hernestra-entry-panel-head{gap:12px}
  .hernestra-wrap--checkin .hernestra-summary{width:100%;max-width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}
  .hernestra-wrap--checkin .hernestra-summary-card{min-height:84px;min-width:0}
  .hernestra-wrap--checkin .hernestra-entry-main{padding:16px 14px}
  .hernestra-wrap--checkin .hernestra-entry-top > *{min-width:0;max-width:100%}
  .hernestra-entry{content-visibility:visible;contain-intrinsic-size:auto}
  .hernestra-header h2{font-size:28px}
  .hernestra-grid{grid-template-columns:1fr}
  .hernestra-section-head,.hernestra-entry-panel-head,.hernestra-entry-top{flex-direction:column}
  .hernestra-checkin-actions,.hernestra-checkin-settings{flex-direction:column}
  .hernestra-checkin-actions .hernestra-btn,.hernestra-checkin-settings .hernestra-toggle,.hernestra-btn-scan{width:100%}
  .hernestra-btn-mobile-hide{display:none !important}
  .hernestra-search-wrap{gap:10px}
  .hernestra-entry-title-row h5{font-size:24px}
  .hernestra-wrap--checkin .hernestra-entry-title-row h5,
  .hernestra-wrap--checkin .hernestra-entry-meta,
  .hernestra-wrap--checkin .hernestra-entry-meta span,
  .hernestra-wrap--checkin .hernestra-overview-item strong,
  .hernestra-wrap--checkin .hernestra-detail-item dd{
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .hernestra-entry-actions{width:100%;justify-content:stretch}
  .hernestra-entry-action,.hernestra-entry-toggle{width:100%}
  .hernestra-entry-detail-grid,.hernestra-entry-overview{grid-template-columns:1fr}
}

@media (max-width: 720px){
  .hernestra-tab{flex:1}
  .hernestra-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hernestra-search-input{font-size:16px}
  .hernestra-wrap--checkin .hernestra-card{padding:14px 10px 22px}
  .hernestra-wrap--checkin .hernestra-search-wrap.is-sticky-mobile{
    padding:8px 10px 10px;
  }
  .hernestra-wrap--checkin .hernestra-summary-card{
    min-height:78px;
    padding:12px;
  }
  .hernestra-wrap--checkin .hernestra-summary-card strong{font-size:20px}
  .hernestra-wrap--checkin .hernestra-entry-main{padding:15px 12px}
  .hernestra-wrap--checkin .hernestra-entry-title-row h5{font-size:22px}
  .hernestra-scanner-shell,
  .camera-screen{
    --camera-safe-top: calc(env(safe-area-inset-top, 0px) + 10px);
    --camera-safe-bottom: calc(env(safe-area-inset-bottom, 0px) + 12px);
    --camera-button-height: 68px;
    --camera-button-offset: max(calc(var(--camera-safe-bottom) + 14px), 118px);
  }
  .camera-topbar{
    gap:2px;
    padding:var(--camera-safe-top) 10px 8px;
  }
  .camera-action{
    min-height:74px;
    gap:10px;
    padding:6px 2px;
  }
  .camera-action__icon{
    font-size:32px;
  }
  .camera-action__text{
    max-width:96px;
    font-size:12px;
  }
  #hernestra-scan-torch .camera-action__icon{font-size:28px}
  .camera-frame,
  .hernestra-scanner-frame{
    width:min(calc(100vw - 112px),420px);
    border-radius:24px;
  }
  .camera-frame__corner{
    width:34px;
    height:34px;
    border-width:4px;
  }
  .camera-zoom,
  .hernestra-scanner-zoom{
    right:10px;
    width:58px;
    min-height:178px;
    padding:14px 6px;
  }
  .camera-zoom__option{
    font-size:14px;
  }
  .camera-zoom__thumb{
    width:40px;
    height:40px;
    font-size:15px;
  }
  .scan-button{
    left:0;
    right:0;
    width:min(calc(100vw - 24px),360px);
    max-width:calc(100vw - 24px);
    margin-inline:auto;
    min-height:var(--camera-button-height);
    padding:15px 18px;
    font-size:18px;
  }
  .hernestra-scan-overlay{
    left:12px;
    right:12px;
  }
  .scan-result-card{
    width:100%;
    max-height:min(60dvh,500px);
    padding:18px 16px 16px;
    border-radius:22px;
  }
  .scan-result-card__body{
    gap:10px;
    min-height:0;
  }
  .scan-result-card__title{
    font-size:32px;
  }
  .scan-result-card__status,
  .scan-result-card__meta,
  .scan-result-card__message{
    font-size:13px;
    line-height:1.35;
  }
}
