/* Did Not Send — generational share receipt */
.dns-receipt{
  position:absolute;inset:0;z-index:280;display:flex;align-items:flex-end;justify-content:center;
  padding:14px;background:rgba(7,10,14,.62);opacity:0;pointer-events:none;
  transition:opacity .45s cubic-bezier(.22,.61,.36,1);border-radius:inherit;overflow:auto;
}
.device .dns-receipt{position:absolute}
.dns-receipt.in{opacity:1;pointer-events:auto}
.dns-sheet{
  width:100%;max-width:360px;margin:auto 0 8px;padding:18px 16px 16px;border-radius:4px;
  background:linear-gradient(165deg,rgba(247,243,235,.99),rgba(232,238,235,.98));
  border:1px solid rgba(196,165,116,.28);box-shadow:0 24px 60px rgba(4,9,13,.4);
  color:#1f3340;transform:translateY(22px);transition:transform .5s cubic-bezier(.22,.61,.36,1);
}
.dns-receipt.in .dns-sheet{transform:none}
.dns-kicker{
  font-family:var(--font-brand,inherit);font-size:9px;font-weight:500;
  letter-spacing:.2em;text-transform:lowercase;color:#8a7451;margin-bottom:8px;
}
.dns-title{
  font-family:var(--font-brand,inherit);font-size:clamp(1.35rem,5vw,1.7rem);font-weight:500;
  letter-spacing:-.03em;line-height:1.12;margin:0 0 8px;color:#1a2838;
}
.dns-line{font-size:13.5px;font-weight:300;line-height:1.55;color:#5f6d7e;margin:0 0 14px}
.dns-canvas-wrap{
  border-radius:4px;overflow:hidden;border:1px solid rgba(44,62,80,.1);
  background:#121820;margin-bottom:14px;
}
.dns-canvas-wrap canvas{display:block;width:100%;height:auto}
.dns-meta{font-size:11px;color:#7a8a99;letter-spacing:.04em;margin:0 0 14px;line-height:1.45}
.dns-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dns-actions .dns-share-primary{grid-column:1/-1}
.dns-btn{
  min-height:44px;border-radius:4px;border:0;cursor:pointer;font-family:var(--font-brand,inherit);
  font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:lowercase;
  transition:transform .2s,background .25s,border-color .25s;
}
.dns-share-primary{background:#1a2838;color:#f2ebe0}
.dns-share-primary:hover{background:#243746}
.dns-share-copy,.dns-share-save{background:transparent;color:#5f6d7e;border:1px solid rgba(44,62,80,.14)}
.dns-share-copy:hover,.dns-share-save:hover{border-color:#52796F;color:#52796F}
.dns-stay{
  width:100%;margin-top:8px;border:0;background:transparent;color:#8a968c;
  font:400 11px/1 var(--font-brand,inherit);letter-spacing:.06em;text-transform:lowercase;
  cursor:pointer;padding:10px 0;
}
.dns-mark{
  display:inline-flex;align-items:center;gap:6px;margin-bottom:10px;padding:5px 9px;border-radius:4px;
  background:rgba(82,121,111,.1);color:#3e6359;font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:lowercase;
}
.dns-mark::before{content:'';width:6px;height:6px;border-radius:50%;background:#52796F}
.dns-sheet.dns-loading .dns-line{opacity:.55}
.dns-sheet.dns-loading .dns-kicker{color:#a0895c}
.dns-pulse{
  margin:0 0 12px;padding:8px 10px;border-radius:4px;background:rgba(82,121,111,.08);
  font-size:11.5px;line-height:1.45;color:#3e6359;letter-spacing:.02em;
}
.dns-fire{
  display:block;margin-top:10px;text-align:center;text-decoration:none;
  font-family:var(--font-brand,inherit);font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:lowercase;
  color:#8a7451;padding:8px 0;
}
.dns-fire:hover{color:#52796F}
.dns-fire-soft{color:#7a8a99}
.dns-continuity{
  margin:14px 0 4px;padding:12px 12px 10px;border-radius:4px;
  background:rgba(26,40,56,.06);border:1px solid rgba(44,62,80,.1);
}
.dns-continuity-k{
  font-family:var(--font-brand,inherit);font-size:9px;font-weight:500;
  letter-spacing:.16em;text-transform:lowercase;color:#8a7451;margin:0 0 6px;
}
.dns-continuity-t{
  margin:0 0 10px;font-size:12.5px;font-weight:300;line-height:1.5;color:#5f6d7e;
}
.dns-continuity .dns-btn{width:100%;margin-top:6px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.dns-continuity-link{box-sizing:border-box}

/* Marketing tease on interrupt / homepage */
.dns-tease{
  margin-top:22px;padding:16px 16px 14px;border-radius:4px;
  border:1px solid rgba(242,235,224,.12);
  background:rgba(8,12,18,.28);
}
.dns-tease-k{font-size:9px;letter-spacing:.18em;text-transform:lowercase;color:rgba(196,165,116,.9);margin-bottom:6px}
.dns-tease strong{display:block;font-family:var(--font-brand,inherit);font-size:1.05rem;font-weight:500;letter-spacing:-.02em;color:#f2ebe0;margin-bottom:4px}
.dns-tease p{margin:0;font-size:12.5px;font-weight:300;line-height:1.5;color:rgba(214,228,216,.62)}
.dns-tease-pulse{margin-top:10px!important;font-size:11px!important;letter-spacing:.04em;color:rgba(196,165,116,.75)!important}

.dns-harbor-pulse{
  margin:18px auto 0;max-width:28rem;padding:14px 16px;border-radius:4px;
  border:1px solid rgba(196,165,116,.22);background:rgba(26,40,56,.06);text-align:center;
}
.dns-harbor-k{display:block;font-size:9px;letter-spacing:.16em;text-transform:lowercase;color:#8a7451;margin-bottom:6px}
.dns-harbor-pulse strong{display:block;font-family:var(--font-brand,inherit);font-size:1rem;font-weight:500;color:var(--ink,#1a2838);margin-bottom:8px}
.dns-harbor-pulse a{font-family:var(--font-brand,inherit);font-size:12px;letter-spacing:.08em;text-transform:lowercase;color:var(--sage,#52796F);text-decoration:none}

@media(prefers-reduced-motion:reduce){
  .dns-receipt,.dns-sheet{transition:none!important;animation:none!important}
}
