.footer-credit-row { align-items: center; flex-wrap: wrap; gap: 12px 24px; }
.allotropic-support { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; color: var(--muted); font-size: 12px; }
.allotropic-support button {
  min-height: 44px; padding: 8px 13px; border: 1px solid var(--line); border-radius: 100px;
  background: transparent; color: var(--ink); font-size: 13px; font-weight: 600;
}
.allotropic-support button:hover { background: #f8f3f0; }
html.tk-open { overflow: hidden; }
#tickets {
  position: fixed; inset: 0; width: min(560px, calc(100% - 32px)); max-width: none;
  max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: auto;
  border: 1px solid var(--line); border-radius: 16px; background: var(--paper); color: var(--ink);
  font: 16px/1.5 var(--sans); overscroll-behavior: contain; box-shadow: 0 24px 80px #12251f3d;
}
#tickets::backdrop { background: rgb(92 80 73 / 37%); }
#tickets:not([open]), #tickets [hidden] { display: none !important; }
#tickets *, #tickets *::before, #tickets *::after { box-sizing: border-box; }
#tickets :is(h2, h3, p, fieldset) { margin: 0; }
#tickets :is(button, input, select, textarea) { font: inherit; }
#tickets :is(button, input, select, textarea, a):focus-visible { outline: 3px solid #a34024; outline-offset: 3px; }
#tickets .tk-titlebar {
  position: sticky; top: 0; z-index: 2; display: flex; align-items: flex-start; justify-content: space-between;
  gap: 16px; padding: 20px 24px; background: var(--paper); border-bottom: 1px solid var(--line);
}
#tickets .tk-titlebar > div { min-width: 0; }
#tickets h2 { font: 600 clamp(24px, 3vw, 30px)/1.25 var(--sans); letter-spacing: normal; }
#tickets .tk-titlebar p { margin-top: 6px; font-size: 14px; color: var(--muted); }
#tickets .tk-close {
  flex: 0 0 44px; height: 44px; padding: 0; border: 1px solid var(--line); border-radius: 50%;
  background: transparent; color: var(--ink); font: 400 28px/1 Arial, sans-serif;
}
#tickets .tk-body { padding: 20px 24px 24px; }
#tickets .tk-service { color: var(--muted); font-size: 14px; }
#tickets .tk-service:not(:empty) { margin-bottom: 16px; }
#tickets .tk-fields { display: grid; gap: 16px; min-width: 0; border: 0; padding: 0; }
#tickets .tk-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
#tickets label { display: block; min-width: 0; font-size: 14px; font-weight: 600; }
#tickets label > span { color: var(--muted); font-weight: 400; }
#tickets :is(input, select, textarea) {
  display: block; width: 100%; min-width: 0; min-height: 48px; margin-top: 7px; padding: 10px 12px;
  border: 1px solid #b7aca5; border-radius: 8px; background: #fff; color: var(--ink); font-size: 16px;
}
#tickets textarea { min-height: 140px; resize: vertical; }
#tickets .tk-message-meta { display: flex; justify-content: space-between; gap: 12px; margin-top: 6px; color: var(--muted); font-size: 13px; }
#tickets #ticket-message-help { min-width: 0; }
#tickets #ticket-count { white-space: nowrap; }
#tickets .tk-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
#tickets .tk-verification { margin-top: 16px; min-width: 0; }
#tickets .tk-challenge { min-width: 0; }
#tickets .tk-verification-status { margin-top: 6px; color: var(--muted); font-size: 13px; }
#tickets .tk-retry { min-height: 44px; border: 0; padding: 8px 0; background: transparent; font-size: 14px; text-decoration: underline; text-underline-offset: 3px; }
#tickets .tk-actions { margin-top: 16px; }
#tickets .tk-submit { min-height: 48px; padding: 11px 20px; border: 1px solid #6f4b58; border-radius: 100px; background: #6f4b58; color: var(--paper); font-weight: 600; }
#tickets .tk-submit:hover:not(:disabled) { background: #593f47; border-color: #593f47; }
#tickets button:disabled { cursor: default; opacity: .55; }
#tickets .tk-status:not(:empty) { margin-top: 12px; color: #6f4b58; font-size: 14px; }
#tickets .tk-success { scroll-margin-top: 120px; }
#tickets .tk-success h3 { font: 600 20px/1.35 var(--sans); }
#tickets .tk-success p { margin-top: 10px; }
#tickets .tk-ticket-id { overflow-wrap: anywhere; }
#tickets .tk-email { margin-top: 20px; color: var(--muted); font-size: 14px; }
#tickets .tk-email a { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 480px) {
  #tickets { width: 100%; max-height: 100dvh; margin: 0; border: 0; border-radius: 0; padding-bottom: env(safe-area-inset-bottom, 0px); }
  #tickets .tk-titlebar { padding: max(14px, env(safe-area-inset-top, 0px)) 16px 14px; gap: 12px; }
  #tickets .tk-body { padding: 18px 16px 22px; }
  #tickets .tk-pair { grid-template-columns: minmax(0, 1fr); }
  #tickets .tk-submit { width: 100%; }
}
@media (max-height: 500px) {
  #tickets .tk-titlebar { padding-block: 12px; }
  #tickets .tk-titlebar p { display: none; }
}
