.hana { --hana-edge: max(1rem, env(safe-area-inset-right)); }
.hana [hidden] { display: none !important; }
body.menu-open .hana { display: none; }
@media screen { body.hana-enabled .site-footer, body.hana-enabled #haltseal-site .site-footer { padding-bottom: max(6rem, calc(env(safe-area-inset-bottom) + 6rem)); } }
.hana-launcher {
  position: fixed; z-index: 120; right: var(--hana-edge); bottom: max(1rem, env(safe-area-inset-bottom));
  display: inline-flex; align-items: center; gap: .65rem; min-height: 3rem; padding: .75rem 1rem;
  border: 1px solid var(--rule-strong); border-radius: 999px; background: var(--ink-strong); color: var(--canvas);
  font-family: var(--font-sans); font-size: .875rem; font-weight: 600; line-height: 1.25; cursor: pointer;
  box-shadow: 0 4px 24px #0003;
}
.hana-launcher svg { flex: none; }
.hana-launcher:hover { opacity: .92; }
.hana-launcher:focus-visible, .hana-close:focus-visible, .hana-retry:focus-visible, .hana a:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
.hana-dialog {
  position: fixed; z-index: 150; inset: auto var(--hana-edge) max(5rem, calc(env(safe-area-inset-bottom) + 4rem)) auto;
  width: min(25rem, calc(100vw - 2rem)); max-width: none; max-height: calc(100dvh - 6rem - env(safe-area-inset-bottom));
  padding: 0; margin: 0; overflow: hidden; border: 1px solid var(--rule-strong); border-radius: 1rem;
  background: var(--surface); color: var(--ink); font-family: var(--font-sans); box-shadow: 0 12px 60px #0005;
}
.hana-dialog[open] { display: flex; flex-direction: column; }
.hana-heading { display: flex; flex: none; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; border-bottom: 1px solid var(--rule-soft); }
.hana-heading h2 { margin: 0; font-size: 1rem; font-weight: 600; line-height: 1.4; letter-spacing: -.02em; }
.hana-heading p { margin: .1rem 0 0; color: var(--ink-muted); font-size: .75rem; line-height: 1.4; }
.hana-close { display: grid; place-items: center; flex: none; width: 2.75rem; height: 2.75rem; padding: 0; border: 1px solid var(--rule-soft); border-radius: .5rem; background: transparent; color: var(--ink); font: 1.6rem/1 var(--font-sans); cursor: pointer; }
.hana-body { min-height: 0; padding: .85rem; overflow-y: auto; overscroll-behavior: contain; }
.hana-notice { margin: 0 0 .85rem; color: var(--ink-muted); font-size: .75rem; line-height: 1.55; }
.hana-notice a, .hana-contact a { color: var(--link); text-underline-offset: .18em; }
.hana-status { margin: .5rem .15rem; font-size: .875rem; line-height: 1.5; }
.hana-status:empty { display: none; }
.hana-retry { min-height: 2.75rem; margin: .5rem .15rem; padding: .5rem .85rem; border: 1px solid var(--rule-strong); border-radius: .5rem; background: var(--surface); color: var(--ink); font: inherit; font-size: .875rem; cursor: pointer; }
.hana-widget { width: 100%; }
.hana-widget anam-agent { display: block; width: 100%; }
.hana-contact { flex: none; margin: 0; padding: .8rem 1rem; border-top: 1px solid var(--rule-soft); color: var(--ink-muted); font-size: .8125rem; line-height: 1.5; }
@media (max-width: 360px) { .hana-launcher { gap: .5rem; padding-inline: .85rem; font-size: .8125rem; } }
@media (forced-colors: active) { .hana-launcher, .hana-dialog, .hana-close, .hana-retry { border-color: CanvasText; } }
@media print { .hana { display: none !important; } }
