/* TriagePass: pricing and waitlist shortcodes. Uses CSS variables so the theme can skin it. */
.tp-pricing,.tp-waitlist-wrap{--tp-accent:#1E5EFF;--tp-ink:#0B1B3F;--tp-muted:#5b6785;--tp-line:#dfe5f2;--tp-bg:#fff;color:var(--tp-ink);font-family:inherit}
.tp-exam-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.tp-exam-tab{border:1px solid var(--tp-line);background:var(--tp-bg);color:var(--tp-ink);padding:8px 14px;border-radius:999px;font:inherit;font-weight:600;cursor:pointer}
.tp-exam-tab.is-active{background:var(--tp-accent);border-color:var(--tp-accent);color:#fff}
.tp-exam-tab:focus-visible,.tp-month:focus-visible,.tp-buy:focus-visible,.tp-waitlist button:focus-visible{outline:3px solid var(--tp-accent);outline-offset:2px}
.tp-exam-title{margin:0 0 12px;font-size:1.25rem}
.tp-exam-title span{display:block;font-size:.9rem;font-weight:400;color:var(--tp-muted)}
.tp-months{display:inline-flex;border:1px solid var(--tp-line);border-radius:999px;padding:3px;margin:0 0 20px;background:var(--tp-bg)}
.tp-month{border:0;background:transparent;padding:8px 18px;border-radius:999px;font:inherit;font-weight:600;color:var(--tp-ink);cursor:pointer}
.tp-month.is-active{background:var(--tp-accent);color:#fff}
.tp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.tp-card{position:relative;border:1px solid var(--tp-line);border-top:6px solid var(--tp-accent);border-radius:14px;padding:22px 20px;background:var(--tp-bg);display:flex;flex-direction:column;gap:10px}
.tp-card.is-featured{box-shadow:0 8px 28px rgba(11,27,63,.12)}
.tp-card h4{margin:0;font-size:1.1rem}
.tp-badge{position:absolute;top:-14px;inset-inline-end:14px;background:var(--tp-accent);color:#fff;font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:999px}
.tp-price{display:none}
.tp-exam-panel[data-months="1"] .tp-price[data-months="1"],.tp-exam-panel[data-months="3"] .tp-price[data-months="3"],.tp-exam-panel[data-months="6"] .tp-price[data-months="6"]{display:block}
.tp-price strong{font-size:2rem;line-height:1.1}
.tp-price span{color:var(--tp-muted)}
.tp-price small{display:block;color:var(--tp-muted);font-size:.85rem}
.tp-card ul{margin:0;padding:0;list-style:none;flex:1}
.tp-card li{padding:6px 0 6px 22px;position:relative;font-size:.95rem;border-top:1px solid var(--tp-line)}
.tp-card li:first-child{border-top:0}
.tp-card li::before{content:"";position:absolute;inset-inline-start:0;top:12px;width:12px;height:7px;border-inline-start:2px solid var(--tp-accent);border-bottom:2px solid var(--tp-accent);transform:rotate(-45deg)}
.tp-buy{display:block;text-align:center;background:var(--tp-accent);color:#fff;text-decoration:none;font-weight:700;padding:12px 16px;border-radius:10px}
.tp-buy.is-disabled{background:var(--tp-line);color:var(--tp-muted)}
.tp-fine,.tp-note{color:var(--tp-muted);font-size:.9rem}
.tp-note{border-inline-start:4px solid var(--tp-accent);padding:8px 12px;background:rgba(30,94,255,.06);margin:0 0 16px}
.tp-waitlist{max-width:520px}
.tp-waitlist label{display:block;font-weight:600;margin-bottom:6px}
.tp-waitlist-row{display:flex;gap:8px;flex-wrap:wrap}
.tp-waitlist input[type=email]{flex:1 1 220px;padding:11px 12px;border:1px solid var(--tp-line);border-radius:10px;font:inherit}
.tp-waitlist button{padding:11px 18px;border:0;border-radius:10px;background:var(--tp-accent);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.tp-waitlist button[disabled]{opacity:.6;cursor:wait}
.tp-waitlist-msg{min-height:1.4em;margin:8px 0 0;font-size:.95rem}
.tp-waitlist-msg.is-error{color:#b42318}
.tp-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:520px){.tp-month{padding:8px 12px}}
