/* Join and Account pages. Tokens copied from app/index.html so the pages match the sheet. */
:root{--ink:#121417;--muted:#5f6670;--line:#e4e7ec;--bg:#f3f5f7;--card:#ffffff;--green:#1f9d55;--green-soft:#e6f6ec;--blue:#2f6fed;--radius:10px;
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 var(--font)}
a{color:var(--blue)}
.top{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:var(--card);border-bottom:1px solid var(--line)}
.brand{font-weight:700;color:var(--ink);text-decoration:none}
main{max-width:460px;margin:0 auto;padding:28px 16px 48px}
h1{font-size:26px;line-height:1.2;margin:0 0 8px}
.lede{color:var(--muted);margin:0 0 22px}
form,.facts{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px}
.plans{border:0;padding:0;margin:0 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.plans legend,.field{font-size:13px;font-weight:600;color:var(--muted)}
.plans legend{padding:0;margin-bottom:6px}
.plan{position:relative;cursor:pointer}
.plan input{position:absolute;opacity:0;inset:0;cursor:pointer}
.plan span{display:block;border:1.5px solid var(--line);border-radius:var(--radius);padding:12px}
.plan b,.plan i,.plan small{display:block;font-style:normal}
.plan i{font-size:15px}
.plan small{color:var(--muted);font-size:13px}
.plan input:checked+span{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.plan input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.field{display:block;margin-bottom:14px}
.field input{display:block;width:100%;margin-top:6px;padding:11px 12px;font:inherit;color:var(--ink);border:1.5px solid var(--line);border-radius:8px;background:#fff}
.field input:focus{outline:2px solid var(--blue);outline-offset:1px}
button,.btn{display:inline-block;font:inherit;font-weight:600;border:0;border-radius:8px;padding:12px 16px;background:var(--ink);color:#fff;cursor:pointer;text-decoration:none}
form button{width:100%}
button:disabled{opacity:.55;cursor:default}
button.quiet{background:transparent;color:var(--muted);text-decoration:underline;padding:12px 8px}
.msg{min-height:1.5em;margin:10px 0 0;font-size:14px}
.fine{color:var(--muted);font-size:13px;margin:14px 0 0}
.note{background:var(--green-soft);border:1px solid var(--green);border-radius:var(--radius);padding:10px 12px;margin:0 0 18px;font-size:14px}
.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0 0 18px}
.facts dt{color:var(--muted);font-size:14px}
.facts dd{margin:0;overflow-wrap:anywhere}
[hidden]{display:none!important}
@media (max-width:380px){.plans{grid-template-columns:1fr}}
h2{font-size:18px;margin:26px 0 4px}
.seats{list-style:none;margin:10px 0 14px;padding:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}
.seats li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 6px 4px 14px;min-height:46px;border-top:1px solid var(--line)}
.seats li:first-child{border-top:0}
.seats span{overflow-wrap:anywhere}
.badges{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}
.badges span{border:1px solid var(--line);border-radius:6px;padding:3px 8px;font-size:12px;font-weight:600;color:var(--muted);background:var(--card)}
.badges span:first-child{color:var(--ink);border-color:var(--ink)}
.field textarea{display:block;width:100%;margin-top:6px;padding:11px 12px;font:inherit;color:var(--ink);border:1.5px solid var(--line);border-radius:8px;background:#fff;resize:vertical}
#help{margin-top:28px}
/* Brand: the green P mark from the app's tab icon, the two-tone name, and green for the main action. */
.top{border-top:4px solid var(--green)}
.brand{display:inline-flex;align-items:center;gap:8px;font-size:18px;letter-spacing:-.01em}
.brand i{color:var(--green);font-style:normal}
.mark{width:26px;height:26px;flex:none}
.btn.go{background:var(--green)}
.facts{border-left:4px solid var(--green)}
.pill{justify-self:start;border-radius:999px;padding:1px 10px;font-size:13px;font-weight:700;background:var(--line);color:var(--ink)}
.pill.paid{background:var(--green-soft);color:#146c3a;border:1px solid var(--green)}
h2{padding-top:18px;border-top:1px solid var(--line)}
/* Details on documents: the form on the left, live samples of a sent link page and email on the right.
   The sample copies the look of the real documents in netlify/functions/pro.js (CSS and emailHtml). */
main.wide{max-width:1000px}
main.wide #signedin>*:not(#docs),main.wide>#help,main.wide>.fine,main.wide>.note{max-width:460px}
.docgrid{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:24px;align-items:start;margin-top:10px}
.docside{position:sticky;top:12px}
.doctabs{display:flex;gap:6px}
.doctabs button{background:var(--card);color:var(--muted);border:1px solid var(--line);padding:7px 12px;font-size:13px}
.doctabs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.dp-lbl{margin:8px 0}
.docprev{background:#fff;border:1px solid #d9e2e0;border-radius:12px;overflow:hidden;color:#15242b;font-size:14px;line-height:1.5}
.dp-brand{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 18px;border-bottom:3px solid #24324d}
.dp-brand.dp-stack{display:block}
.dp-lg img{max-height:48px;max-width:200px;display:block}
.dp-stack .dp-lg img{margin-bottom:8px}
.dp-who{text-align:right;font-size:13px;color:#5a6b72;margin-left:auto}
.dp-who.dp-left{text-align:left}
.dp-who strong{display:block;font-size:15px;color:#15242b}
.dp-body{padding:18px;display:flex;flex-direction:column;gap:12px}
.dp-h1{display:block;font-size:22px;line-height:1.2}
.dp-h2{display:block;font-size:18px;line-height:1.2}
.dp-sub{display:block;font-size:13px;color:#5a6b72}
.dp-sub b{color:#15242b}
.dp-note{border-left:3px solid #0d6b67;padding:4px 0 4px 12px}
.dp-note>span{display:block;font-size:13px;color:#5a6b72}
.dp-lot{border-top:1px solid #d9e2e0;padding-top:12px}
.dp-lot.dp-first{border-top:0;padding-top:0}
.dp-card{display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:start;padding:10px 12px;border:1px solid #d9e2e0;border-radius:8px}
.dp-card i{font:11px ui-monospace,Menlo,monospace;font-style:normal;text-transform:uppercase;letter-spacing:.05em;padding:3px 6px;border-radius:5px;text-align:center}
.dp-card i.a{background:#f8efd2;color:#8a6200}
.dp-card i.n{background:#e9eef0;color:#3d4d54}
.dp-card b{font-weight:600}
.dp-card span{display:block}
.dp-conf{font-size:13px}
.dp-src{font-size:12px;color:#5a6b72}
.dp-src u{color:#0d6b67}
.dp-btn{align-self:flex-start;background:#0d6b67;color:#fff;font-weight:600;font-size:14px;padding:9px 14px;border-radius:8px}
.dp-foot{border-top:1px solid #d9e2e0;padding:12px 18px;font-size:12px;color:#5a6b72;display:flex;flex-direction:column;gap:4px}
.dp-mailhd{padding:10px 18px;background:#f4f7f6;border-bottom:1px solid #d9e2e0;font-size:13px;color:#5a6b72;display:flex;flex-direction:column;gap:2px}
.dp-mailhd b{color:#15242b}
.field input[type=file]{padding:8px}
@media (max-width:820px){.docgrid{grid-template-columns:1fr}.docside{position:static}}
.seats li a{padding:10px 8px;font-size:14px;font-weight:600}
/* Invite friends sits in the empty right column beside Your account on a wide screen (Nick, 2026-10-14). Narrow screens keep one column. */
@media (min-width:900px){
main.wide #signedin{display:grid;grid-template-columns:460px minmax(0,1fr);column-gap:40px;align-items:start}
main.wide #signedin>*{grid-column:1}
main.wide #signedin>#refbox{grid-column:2;grid-row:1 / span 6;max-width:420px;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--green);border-radius:var(--radius);padding:4px 18px 16px}
main.wide #signedin>#refbox h2{border-top:0;padding-top:12px;margin-top:0}
main.wide #signedin>#docs{grid-column:1 / -1}
}
