/* Rules unique to checklist.html — shared rules live in css/microsite.css?v=20260723-visual-parity */
    .wrap { max-width: 720px; }
    .hero { padding: 56px 0 24px; text-align: center; }
    .lead { margin: 0 auto; }

    .gate { background: var(--panel); border: 1px solid var(--line2); border-radius: 16px; padding: 28px; margin: 32px 0; text-align: center; }
    .gate p { color: var(--dim); font-size: 13.5px; margin-bottom: 16px; }
    .gate form { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
    .gate input { flex: 1; min-width: 220px; height: 46px; padding: 0 16px; border-radius: 10px; background: rgba(0,0,0,0.3); border: 1px solid var(--line2); color: var(--ink); font-size: 14px; }
    .gate input::placeholder { color: var(--dim); }
    .gate button { height: 46px; padding: 0 22px; border-radius: 10px; background: var(--teal); color: #082f49; font-weight: 700; font-size: 13.5px; border: none; cursor: pointer; }
    .gate .skip { display: block; margin: 14px auto 0; padding: 0; border: 0; background: transparent; font-size: 12.5px; color: var(--dim); text-decoration: underline; cursor: pointer; }
    .gate.is-hidden { display: none; }
    .form-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; }
    .privacy-note { margin: 12px auto 0 !important; max-width: 560px; font-size: 11px !important; line-height: 1.5; }
    .privacy-note a { color: var(--accent); text-decoration: underline; }
    .status--error { color: var(--color-danger); }
    .status--pending { color: var(--dim); }
    .gate .status { font-size: 12.5px; margin-top: 10px; min-height: 16px; }

    #checklist-body { display: none; }
    #checklist-body.unlocked { display: block; }
    .item { display: flex; gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--line); }
    .item:last-child { border-bottom: none; }
    .item .n { font-family: 'JetBrains Mono',monospace; font-size: 13px; color: var(--accent); font-weight: 700; flex-shrink: 0; width: 26px; }
    .item h3 { font-size: 15px; font-weight: 600; margin-bottom: 4px; }
    .item p { font-size: 13px; color: var(--dim); }

    .print-cta { text-align: center; margin: 28px 0; }

    @media print {
      header.top, .gate, .print-cta, footer, .no-print { display: none !important; }
      body { background: #fff; color: #000; }
      #checklist-body { display: block !important; }
      .item p, .lead { color: #333; }
      .item .n { color: #000; }
    }
