/* Shared styling for the brain dump add-on pages. */
.ad-wrap { max-width: 720px; margin: 0 auto; padding: 40px 20px 72px; }
.ad-kicker { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--text-dim); margin: 0 0 10px; }
.ad-wrap h1 { margin: 0 0 12px; line-height: 1.15; }
.ad-promise { font-size: 19px; color: var(--text-muted); margin: 0 0 28px; max-width: 60ch; }
.ad-card { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-soft); padding: 24px; margin: 0 0 20px; }
.ad-card dl { margin: 0; display: grid; grid-template-columns: max-content 1fr; gap: 8px 14px; font-size: 15px; }
.ad-card dt { color: var(--text-dim); }
.ad-card dd { margin: 0; }
.tag { display: inline-block; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; background: var(--primary-soft); color: var(--primary-deep); vertical-align: middle; margin-left: 8px; }
.ad-back { display: inline-block; margin-top: 28px; color: var(--text-muted); font-size: 15px; }

.f-go { font-size: 17px; padding: 15px 20px; cursor: pointer; }
.f-step { color: var(--text-dim); font-size: 14px; margin: 0 0 8px; }
.f-q { font-size: 20px; margin: 0 0 16px; line-height: 1.3; }
.f-help { color: var(--text-muted); font-size: 15px; margin: -8px 0 16px; }
.f-sub { color: var(--text-muted); margin: 0 0 16px; }
.f-choice { display: block; width: 100%; text-align: left; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 14px 16px; margin: 0 0 10px; font: inherit; color: var(--text); cursor: pointer; transition: background .12s, border-color .12s; }
.f-choice:hover { background: var(--surface-hover); border-color: var(--primary); }
.f-input { width: 100%; box-sizing: border-box; border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 14px 16px; font: inherit; color: var(--text); background: var(--surface); }
.f-prompt { white-space: pre-wrap; background: var(--bg2); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 18px; font-size: 14px; line-height: 1.55; max-height: 420px; overflow: auto; margin: 0 0 16px; }
.f-err { background: var(--accent-soft); border: 1px solid var(--accent); color: var(--accent2); border-radius: var(--radius-sm); padding: 14px 16px; font-size: 15px; margin: 0; }
.f-quiet { color: var(--text-dim); font-size: 14px; margin: 16px 0 0; }
.btn { cursor: pointer; }
.ad-price { display: flex; align-items: baseline; gap: 10px; margin: 0 0 6px; }
.ad-price strong { font-size: 32px; color: var(--text); }
.ad-price span { color: var(--text-dim); font-size: 14px; }

/* The optional tick before the prompt is built. Deliberately plain: a box, a
   line saying what is kept, and nothing that nudges either way. */
.f-share { display: flex; align-items: flex-start; gap: 10px; font-size: 16px; margin: 0 0 12px; cursor: pointer; }
.f-share input { margin: 3px 0 0; width: 18px; height: 18px; flex: none; cursor: pointer; }

/* "Email me a copy" under a free add-on's prompt */
.f-copy { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--border); }
.f-copy .f-input { margin-top: 6px; }
.f-copy .btn { margin-top: 12px; }
.f-copy .f-share { margin-top: 14px; }
