/* Floating print button (like "back to top" style) */
    .print-btn {
      position: fixed;
      right: 20px; /* 20px from right */
      bottom: 20px; /* 20px from bottom */
      z-index: 9999;

      display: inline-grid;
      place-items: center;
      width: 56px;
      height: 56px;
      border-radius: 50%;
      background: #073D7D; /* rgba(17,24,39,0.95); */
      color: white;
      box-shadow: 0 6px 18px rgba(2,6,23,0.35);
      cursor: pointer;
      border: none;
      -webkit-tap-highlight-color: transparent;

      transition: transform 160ms ease, box-shadow 160ms ease, opacity 120ms ease;
    }

    .print-btn:hover,
    .print-btn:focus {
      transform: translateY(-4px);
      box-shadow: 0 10px 26px rgba(2,6,23,0.45);
      outline: none;
    }

    .print-btn:active { transform: translateY(-1px) scale(.99); }

    .print-btn svg { width: 22px; height: 22px; display: block; }

    .print-btn .label {
      position: absolute;
      right: 70px;
      bottom: 28px;
      background: #073D7D; /* rgba(2,6,23,0.9); */
      color: #fff;
      padding: 6px 10px;
      font-size: 13px;
      border-radius: 6px;
      white-space: nowrap;
      transform-origin: right bottom;
      transform: translateY(6px) scale(.95);
      opacity: 0;
      pointer-events: none;
      transition: opacity 120ms ease, transform 120ms ease;
    }

    .print-btn:hover .label,
    .print-btn:focus .label { transform: translateY(0) scale(1); opacity: 1; }

    /* Hide the button while printing */
    @media print {
      .print-btn { display: none !important; }
    }

    /* Respect user prefers-reduced-motion */
    @media (prefers-reduced-motion: reduce) {
      .print-btn { transition: none; }
      .print-btn .label { transition: none; }
    }
