/* Review request kit. Loaded with sfd-review-kit.js by mu-plugins/sfd-v2-template.php.
   Tokens (--brand, --navy, --ink, --sec, --border) come from the .sfd-page theme. 30 Sep 2026. */
.sfd-v2 .sfd-rk{background:#fff;border:1px solid var(--border);border-radius:24px;box-shadow:0 18px 48px rgba(17,23,34,.10);padding:clamp(20px,3.2vw,36px);max-width:1080px;margin:0 auto}
.sfd-v2 .sfd-rk p{max-width:none}
.sfd-v2 .sfd-rk__inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}
.sfd-v2 .sfd-rk__field.is-wide{grid-column:1 / -1}
.sfd-v2 .sfd-rk__field label{display:block;margin:0 0 8px;font-weight:700;font-size:1rem;color:var(--ink)}
.sfd-v2 .sfd-rk__field label span{font-weight:400;color:var(--sec)}
.sfd-v2 .sfd-rk__field input{display:block;width:100%;box-sizing:border-box;min-height:50px;padding:12px 16px;border:1px solid rgba(17,23,34,.22);border-radius:12px;background:#fbfcff;font:inherit;font-size:1rem;color:var(--ink)}
.sfd-v2 .sfd-rk__field input:focus{outline:3px solid rgba(43,77,255,.25);border-color:var(--brand);background:#fff}
.sfd-v2 .sfd-rk__field input[aria-invalid="true"]{border-color:#b3261e}
.sfd-v2 .sfd-rk p.sfd-rk__status{margin:8px 0 0;font-size:.9rem;line-height:1.5;color:var(--sec);min-height:1.5em}
.sfd-v2 .sfd-rk p.sfd-rk__status.is-ok,.sfd-v2 .sfd-rk p.sfd-rk__status.is-place{color:#177245}
.sfd-v2 .sfd-rk p.sfd-rk__status.is-maps{color:#8a5a00}
.sfd-v2 .sfd-rk p.sfd-rk__status.is-bad{color:#b3261e}
.sfd-v2 .sfd-rk__help{margin:14px 0 0;border:1px solid var(--border);border-radius:14px;background:#f6f8ff}
.sfd-v2 .sfd-rk__help summary{cursor:pointer;padding:14px 18px;font-weight:700;color:var(--navy);list-style:none;display:flex;align-items:center;gap:10px}
.sfd-v2 .sfd-rk__help summary::-webkit-details-marker{display:none}
.sfd-v2 .sfd-rk__help summary::before{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--brand);color:#fff;font-size:15px;line-height:1;flex:none}
.sfd-v2 .sfd-rk__help[open] summary::before{content:"\2212"}
.sfd-v2 .sfd-rk__help ol{margin:0;padding:0 18px 16px 2.6em;font-size:.95rem;line-height:1.6;color:var(--ink)}
.sfd-v2 .sfd-rk__help ol > li{margin:0 0 6px;padding-left:.2em}
.sfd-v2 .sfd-rk__help ol > li::before{content:none;display:none}
.sfd-v2 .sfd-rk__help p{margin:0;padding:0 18px 16px;font-size:.9rem;color:var(--sec)}
.sfd-v2 .sfd-rk p.sfd-rk__private{display:flex;align-items:center;gap:8px;margin:14px 0 0;font-size:.85rem;color:var(--sec)}
.sfd-v2 .sfd-rk__private svg{width:16px;height:16px;color:#177245;flex:none}

.sfd-v2 .sfd-rk__out{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;margin:28px 0 0;padding:28px 0 0;border-top:1px solid var(--border)}
.sfd-v2 .sfd-rk p.sfd-rk__h{margin:0 0 12px;font-weight:700;font-size:1.08rem;color:var(--ink)}
.sfd-v2 .sfd-rk p.sfd-rk__h + p.sfd-rk__sub{margin:-8px 0 12px;font-size:.88rem;color:var(--sec)}

/* The card preview mirrors what prints: plain, the practice's own, no Google or SFD branding. */
.sfd-v2 .sfd-rk__card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:26px 22px;border:1px dashed #b9bec8;border-radius:14px;background:#fff;aspect-ratio:97 / 138;max-width:320px;margin:0 auto;box-sizing:border-box;justify-content:center}
.sfd-v2 .sfd-rk__card p{margin:0}
.sfd-v2 .sfd-rk p.sfd-rk__cardName{font-weight:700;font-size:.95rem;letter-spacing:.02em;color:#111}
.sfd-v2 .sfd-rk p.sfd-rk__cardH{margin:4px 0 14px;font-weight:700;font-size:1.3rem;line-height:1.15;color:#111}
.sfd-v2 .sfd-rk__qr{width:62%;aspect-ratio:1;display:grid;place-items:center}
.sfd-v2 .sfd-rk__qr svg{width:100%;height:100%;display:block}
.sfd-v2 .sfd-rk__qr.is-empty{border-radius:10px;background:repeating-linear-gradient(45deg,#f1f3f8 0 10px,#e8ebf3 10px 20px)}
.sfd-v2 .sfd-rk__qr.is-empty span{padding:12px;font-size:.8rem;line-height:1.35;color:var(--sec)}
.sfd-v2 .sfd-rk p.sfd-rk__cardS{margin:14px 0 0;font-size:.85rem;line-height:1.35;color:#111}
.sfd-v2 .sfd-rk p.sfd-rk__cardO{margin:8px 0 0;font-size:.72rem;color:#555}

.sfd-v2 .sfd-rk__btns{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0}
.sfd-v2 .sfd-rk__col:first-child .sfd-rk__btns{justify-content:center}
.sfd-v2 .sfd-rk__btns button,.sfd-v2 .sfd-rk__btns a{text-transform:none;letter-spacing:normal;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--navy);font:inherit;font-weight:700;font-size:.93rem;cursor:pointer;text-decoration:none}
.sfd-v2 .sfd-rk__btns .is-primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 8px 22px rgba(43,77,255,.28)}
.sfd-v2 .sfd-rk__btns button:hover:not(:disabled),.sfd-v2 .sfd-rk__btns a:hover:not([aria-disabled="true"]){border-color:var(--brand)}
.sfd-v2 .sfd-rk__btns .is-primary:hover:not(:disabled){filter:brightness(1.06)}
.sfd-v2 .sfd-rk__btns button:disabled,.sfd-v2 .sfd-rk__btns a[aria-disabled="true"]{opacity:.45;cursor:not-allowed;box-shadow:none;pointer-events:none}
.sfd-v2 .sfd-rk__btns .is-done{background:#177245;border-color:#177245;color:#fff}

.sfd-v2 .sfd-rk__link{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#fbfcff}
.sfd-v2 .sfd-rk__link code{flex:1 1 220px;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;color:var(--ink);overflow-wrap:anywhere;background:none;padding:0}
.sfd-v2 .sfd-rk__link .sfd-rk__btns{margin:0}
.sfd-v2 .sfd-rk__col + .sfd-rk__col p.sfd-rk__h ~ p.sfd-rk__h{margin-top:26px}

.sfd-v2 .sfd-rk__tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:4px;border-radius:999px;background:#eef1fb;width:max-content;max-width:100%}
.sfd-v2 .sfd-rk__tabs button{text-transform:none;letter-spacing:normal;min-height:40px;padding:0 16px;border:0;border-radius:999px;background:none;color:var(--navy);font:inherit;font-weight:700;font-size:.9rem;cursor:pointer}
.sfd-v2 .sfd-rk__tabs button[aria-selected="true"]{background:#fff;color:var(--brand);box-shadow:0 2px 8px rgba(17,23,34,.10)}
.sfd-v2 .sfd-rk__tabs button:focus-visible{outline:3px solid rgba(43,77,255,.35);outline-offset:1px}
.sfd-v2 .sfd-rk__msg{margin:0;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:#fbfcff;font-size:.95rem;line-height:1.65;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;max-height:380px;overflow:auto}
.sfd-v2 .sfd-rk__msgFoot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:12px 0 0}
.sfd-v2 .sfd-rk__msgFoot .sfd-rk__btns{margin:0}
.sfd-v2 .sfd-rk p.sfd-rk__meta{margin:0;font-size:.85rem;color:var(--sec)}
.sfd-v2 .sfd-rk p.sfd-rk__note{margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#fff4de;font-size:.88rem;line-height:1.55;color:#4a3a12}

.sfd-v2 .sfd-rkSec{padding-top:0}
.sfd-v2 .sfd-hero:has(+ .sfd-rkSec){padding-bottom:28px}
@media (min-width:900px){.sfd-v2 .sfd-hero:has(+ .sfd-rkSec){padding-top:clamp(2rem,4vw,3rem)}}
@media (max-width:860px){.sfd-v2 .sfd-rk__out{grid-template-columns:1fr}}
@media (max-width:600px){
  .sfd-v2 .sfd-rk{border-radius:18px}
  .sfd-v2 .sfd-rk__inputs{grid-template-columns:1fr}
  .sfd-v2 .sfd-rk__tabs{width:100%;border-radius:16px}
  .sfd-v2 .sfd-rk__tabs button{flex:1 1 40%}
}
/* Numbered lists in the page prose: the theme adds a bullet dot to every li, which doubles up with the numbers. */
.sfd-v2:has(.sfd-rk) .sfd-prose ol > li::before{content:none;display:none}
.sfd-v2:has(.sfd-rk) .sfd-prose ol{padding-left:1.4em}
.sfd-v2:has(.sfd-rk) .sfd-prose ol > li{padding-left:.3em}
/* Source line under each rule card. */
.sfd-v2:has(.sfd-rk) .sfd-card p.v2-src{margin:12px 0 0;font-size:.82rem;color:var(--sec)}
.sfd-v2:has(.sfd-rk) .sfd-card p.v2-src a{color:var(--brand);font-weight:600}
