/* ============================================================
   planner.css — Paper Alibi guided planner + Golden Kit
   Self-contained: defines its own theme tokens, topbar/footer,
   the free planner flow, and the Golden Kit walkthrough.
   Load this alone on the planner and kit pages.
   ============================================================ */

:root{
  --bg:#07101a;
  --paper:#fff8ed;
  --paper-soft:#fffdf6;
  --ink:#0d2238;
  --muted:#56606d;
  --soft:#8a7a63;
  --line:rgba(13,34,56,.12);
  --line-strong:rgba(13,34,56,.18);
  --cream:#fff8ed;
  --coral:#ef7458;
  --gold:#efb13c;
  --teal:#2a8c8c;
  --green:#4a7c53;
  --blue:#2a6cc4;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;background:var(--bg);}
body{
  margin:0;
  font-family:'Hanken Grotesk',ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  color:#e9edf2;
  background:
    radial-gradient(circle at 20% 12%,rgba(42,108,196,.14),transparent 24%),
    radial-gradient(circle at 84% 16%,rgba(239,116,88,.10),transparent 20%),
    linear-gradient(115deg,#07101a,#101b28 48%,#071017 100%);
  overflow-x:hidden;
}
a{color:var(--blue);text-decoration:none;font-weight:600;}
a:hover{color:#1e4f93;text-decoration:underline;}
h1,h2,h3,h4,h5{font-family:Georgia,'Times New Roman',serif;}
input,select,textarea,button{font-family:inherit;}
@keyframes pa-rise{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:translateY(0);}}

/* ---------- Decorative desk props ---------- */
.pa-desk{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0;}
.pa-desk img{position:absolute;display:block;filter:drop-shadow(0 16px 18px rgba(0,0,0,.4));}
.pa-desk .p-plant{left:-34px;top:-14px;width:150px;opacity:.5;}
.pa-desk .p-coffee{left:14px;bottom:150px;width:118px;opacity:.32;}
.pa-desk .p-paper{right:-46px;top:96px;width:210px;opacity:.26;transform:scaleX(-1);}
.pa-desk .p-keys{right:26px;bottom:74px;width:146px;opacity:.28;}
@media (max-width:900px){.pa-desk{display:none;}}

/* ---------- Top bar ---------- */
.pa-topbar{position:relative;z-index:2;border-bottom:1px solid rgba(255,248,237,.12);background:rgba(6,14,22,.62);backdrop-filter:blur(10px);}
.pa-topbar-inner{max-width:940px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.pa-brand{display:flex;align-items:center;gap:10px;color:#fff8ed;font-weight:800;letter-spacing:.04em;font-size:15px;}
.pa-brand:hover{color:#fff8ed;text-decoration:none;}
.pa-brandmark{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#2a6cc4,#4b88d7);color:#fff;font-family:Georgia,serif;font-size:18px;transform:rotate(-8deg);box-shadow:0 8px 18px rgba(0,0,0,.3);}
.pa-topbar-note{font-size:12.5px;color:#c9d2dc;display:flex;align-items:center;gap:8px;}
.pa-topbar-note .dot{color:var(--gold);font-size:9px;}

/* ---------- Layout ---------- */
.pa-wrap{position:relative;z-index:1;max-width:940px;margin:0 auto;padding:0 20px 64px;}
.pa-head{padding:34px 0 6px;}
.pa-crumb{font-size:12.5px;color:#9fb0c4;margin-bottom:12px;}
.pa-crumb a{color:#9fb0c4;}
.pa-crumb .sep{opacity:.5;}
.pa-title{font-size:clamp(28px,4.4vw,46px);line-height:1.02;margin:0 0 12px;color:#fff8ed;letter-spacing:-.02em;}
.pa-sub{color:#d9d2c4;font-size:16px;max-width:60ch;margin:0;line-height:1.55;}
.pa-eyebrow{font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--gold);}

/* ---------- Plan-so-far bar ---------- */
.pa-summarybar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 14px;flex-wrap:wrap;}
.pa-pill{display:inline-flex;align-items:center;gap:10px;background:rgba(255,248,237,.07);border:1px solid rgba(255,248,237,.2);color:#fff8ed;border-radius:999px;padding:10px 18px;font-weight:700;font-size:13.5px;cursor:pointer;white-space:nowrap;}
.pa-pill .star{color:var(--gold);}
.pa-pill .chev{opacity:.55;transition:transform .2s ease;}
.pa-pill.open .chev{transform:rotate(180deg);}
.pa-pill-ghost{background:transparent;border:1px solid rgba(255,248,237,.16);color:#c9d2dc;border-radius:999px;padding:9px 15px;font-size:12.5px;font-weight:600;cursor:pointer;}
.pa-summary{background:rgba(255,248,237,.05);border:1px solid rgba(255,248,237,.14);border-radius:14px;padding:18px 20px;margin-bottom:16px;color:#e9edf2;}
.pa-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px 20px;font-size:13.5px;line-height:1.4;}
.pa-summary-grid .k{color:#9fb0c4;font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;}
.pa-summary-next{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,248,237,.12);font-size:13.5px;}
.pa-summary-next b{color:var(--gold);}
.pa-hidden{display:none !important;}

/* ---------- Tabs ---------- */
.pa-tabs{display:flex;gap:5px;align-items:flex-end;padding:0 6px;position:relative;z-index:1;}
.pa-tab{flex:1;min-width:0;border:0;cursor:pointer;padding:11px 8px 13px;border-radius:12px 12px 0 0;background:rgba(255,248,237,.08);color:#c9d2dc;transition:all .15s ease;}
.pa-tab .inner{display:flex;flex-direction:column;align-items:center;gap:5px;}
.pa-tab .num{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;border:2px solid currentColor;}
.pa-tab .lbl{font-size:11px;font-weight:700;line-height:1.1;text-align:center;}
.pa-tab.active{background:var(--paper);color:var(--ink);padding:12px 8px 18px;box-shadow:0 -8px 20px rgba(0,0,0,.2);}
.pa-tab.done{color:#8fd0a6;}

/* ---------- Worksheet card ---------- */
.pa-card{position:relative;background:var(--paper);border-radius:0 0 18px 18px;box-shadow:0 26px 62px rgba(0,0,0,.36);padding:38px clamp(20px,4vw,44px) 30px;color:var(--ink);}
.pa-clip{position:absolute;top:-26px;right:44px;width:30px;transform:rotate(-8deg);filter:drop-shadow(1px 2px 2px rgba(0,0,0,.25));z-index:3;}
.pa-step{animation:pa-rise .4s ease both;}
.pa-steplabel{font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--teal);}
.pa-h2{font-size:26px;margin:6px 0 6px;line-height:1.15;color:var(--ink);}
.pa-lead{color:var(--muted);font-size:15px;line-height:1.55;margin:0 0 22px;}

/* ---------- Issue / evidence option cards ---------- */
.pa-group{margin-bottom:22px;}
.pa-group-label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--soft);margin-bottom:10px;}
.pa-opts{display:grid;gap:10px;}
.pa-opt{border:1px solid var(--line);border-radius:12px;background:var(--paper-soft);overflow:hidden;}
.pa-opt-main{display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:14px 16px;margin:0;}
.pa-opt-main input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--teal);}
.pa-opt-main .t{display:block;font-weight:700;color:var(--ink);font-size:15px;}
.pa-opt-main .b{display:block;color:var(--muted);font-size:13.5px;margin-top:2px;line-height:1.45;}
.pa-opt details{border-top:1px dashed var(--line);}
.pa-opt summary{padding:9px 16px;font-size:13px;font-weight:700;color:var(--blue);}
.pa-opt .more{padding:0 16px 14px;font-size:13.5px;line-height:1.55;color:var(--muted);}
.pa-opt .more p{margin:0 0 6px;}
.pa-opt .more b{color:var(--ink);}
.pa-ev .pa-opt-main input{accent-color:var(--green);}

/* ---------- Fields ---------- */
.pa-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px 20px;}
.pa-field label{display:block;font-size:13px;font-weight:700;color:var(--ink);margin-bottom:6px;}
.pa-field label .pa-term{white-space:normal;}
.pa-field .why b{color:var(--ink);}
.pa-field .why a{font-weight:700;}
.pa-field input,.pa-field select{width:100%;padding:11px 12px;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:9px;}
.pa-field .why{font-size:12.5px;color:var(--muted);margin-top:5px;line-height:1.4;}

/* ---------- Deadline callout ---------- */
.pa-deadline{margin-top:22px;border:1px solid rgba(239,177,60,.5);background:rgba(239,177,60,.12);border-radius:12px;padding:16px 18px;}
.pa-deadline h4{font-size:18px;color:var(--ink);margin:0 0 10px;}
.pa-deadline .rows{display:grid;gap:8px;font-size:14px;color:var(--ink);line-height:1.5;}
.pa-deadline .rows b{color:var(--ink);}
.pa-deadline .owe-note{color:#3f6a47;font-weight:700;}
.pa-deadline .fine{margin:12px 0 0;font-size:12.5px;color:var(--muted);line-height:1.5;}

/* ---------- Explainers ---------- */
.pa-explain{margin-top:10px;border:1px solid var(--line);border-radius:10px;background:var(--paper-soft);}
.pa-explain summary{padding:11px 14px;font-size:13.5px;font-weight:700;color:var(--blue);}
.pa-explain .body{padding:0 14px 14px;font-size:13.5px;color:var(--muted);line-height:1.55;}
.pa-explain .body b{color:var(--ink);}

/* ---------- Charges ---------- */
.pa-charge-row{display:grid;grid-template-columns:minmax(150px,1fr) 100px minmax(130px,auto) auto;gap:8px;align-items:center;margin-bottom:8px;}
.pa-charge-row input,.pa-charge-row select{padding:9px 11px;font-size:14px;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:8px;}
.pa-charge-row .disp{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;}
.pa-charge-row .disp input{accent-color:var(--coral);}
.pa-charge-row .rm{background:transparent;border:0;color:var(--coral);font-size:20px;line-height:1;cursor:pointer;padding:0 4px;}

.pa-charge-card{margin-bottom:10px;padding:10px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.7);}
.pa-charge-card .pa-charge-row{margin-bottom:0;}
.charge-reason,.pa-charge-reason{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);}
.charge-reason textarea,.pa-charge-reason textarea,.pa-charge-reason select,.pa-charge-reason input{width:100%;padding:10px 11px;font:inherit;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:8px;resize:vertical;}
.pa-charge-reason>div{min-width:0;}
.pa-charge-facts{grid-column:1/-1;}
.pa-charge-hint{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.45;}
.charge-reason .optional,.pa-charge-reason .optional{font-weight:400;color:var(--muted);}

/* ---------- Outcome ---------- */
.pa-outcome{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper-soft);margin-bottom:16px;}
.pa-outcome .bar{height:5px;background:var(--gold);}
.pa-outcome .body{padding:16px 18px;}
.pa-outcome h4{font-size:19px;color:var(--ink);margin:0 0 8px;}
.pa-outcome p{margin:0 0 10px;font-size:14px;line-height:1.55;color:var(--muted);}
.pa-block{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px 16px;margin-bottom:16px;}
.pa-block.soft{background:var(--paper-soft);}
.pa-block b{color:var(--ink);}
.pa-block h5{font-size:15px;color:var(--ink);margin:0 0 6px;}
.pa-block p{margin:0 0 8px;font-size:13.5px;color:var(--muted);line-height:1.55;}
.pa-block ul{margin:0;padding-left:20px;font-size:13.5px;color:var(--muted);line-height:1.6;}

/* ---------- Buttons ---------- */
.pa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:12px 22px;font-weight:800;font-size:15px;cursor:pointer;text-decoration:none;}
.pa-btn:hover{text-decoration:none;filter:brightness(1.03);}
.pa-btn-coral{background:var(--coral);color:#fff;box-shadow:0 10px 22px rgba(239,116,88,.28);}
.pa-btn-dark{background:var(--ink);color:#fff;}
.pa-btn-gold{background:var(--gold);color:#281c05;box-shadow:0 10px 22px rgba(239,177,60,.3);}
.pa-btn-ghost{background:transparent;color:var(--ink);border:1px solid rgba(13,34,56,.2);font-weight:700;}
.pa-btn-block{width:100%;}
.pa-btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none;filter:grayscale(.2);}
.pa-btn-sm{padding:11px 20px;font-size:14px;}

/* ---------- Nav row ---------- */
.pa-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:30px;padding-top:22px;border-top:1px solid rgba(13,34,56,.1);}
.pa-nav .pa-btn-coral{margin-left:auto;}

/* ---------- Build / plan doc ---------- */
.pa-buildnote{text-align:center;color:var(--muted);font-size:13px;margin:12px 0 0;line-height:1.5;}
.pa-doc-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;}
.pa-doc{border:1px solid var(--line);border-radius:14px;background:#fff;padding:22px 24px;}
.pa-doc h3{font-size:20px;margin:0 0 2px;color:var(--ink);}
.pa-doc .meta{margin:0 0 4px;font-size:12.5px;color:var(--muted);}
.pa-doc h4{font-size:14px;margin:18px 0 6px;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:4px;}
.pa-doc ul{margin:0;padding-left:20px;font-size:13.5px;color:var(--muted);line-height:1.55;}
.pa-doc ul.have li{color:var(--green);}
.pa-doc .foot{margin:16px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:11.5px;color:var(--soft);line-height:1.5;}

/* ---------- Step 5: free-plan label + Golden Kit upgrade ---------- */
.pa-kit-promo{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin:0 0 18px;padding:20px 22px;border:1px solid rgba(239,177,60,.62);border-radius:16px;background:linear-gradient(135deg,#0d2238,#173853);box-shadow:0 14px 30px rgba(13,34,56,.18);color:#fff8ed;}
.pa-kit-promo-eyebrow{margin-bottom:4px;color:#f4c765;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;}
.pa-kit-promo h3{margin:0 0 7px;color:#fff8ed;font-size:24px;line-height:1.15;}
.pa-kit-promo p{margin:0;color:#d7e0e9;font-size:13.5px;line-height:1.55;}
.pa-kit-promo p b{color:#fff8ed;}
.pa-kit-promo .pa-kit-promo-note{margin-top:7px;color:#aebdcb;font-size:12px;}
.pa-kit-promo-action{display:flex;min-width:230px;flex-direction:column;align-items:stretch;gap:7px;text-align:center;}
.pa-kit-promo-action .pa-btn{min-height:48px;padding:13px 22px;font-size:15px;}
.pa-kit-promo-action span{color:#d7e0e9;font-size:11.5px;}
.pa-free-plan-intro{margin:4px 0 12px;padding-top:16px;border-top:1px solid var(--line);}
.pa-free-plan-kicker{color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;}
.pa-free-plan-intro h3{margin:3px 0 2px;color:var(--ink);font-size:21px;}
.pa-free-plan-intro p{margin:0;color:var(--muted);font-size:13px;line-height:1.5;}
@media (max-width:720px){.pa-kit-promo{grid-template-columns:1fr;}.pa-kit-promo-action{min-width:0;width:100%;}.pa-kit-promo-action .pa-btn{width:100%;}.pa-kit-promo h3{font-size:21px;}}

/* ---------- Kit comparison (planner step 5) ---------- */
.pa-kit-cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:18px;}
.pa-kit-cta .note{font-size:12px;color:var(--soft);}
.pa-compare{margin-top:26px;padding-top:22px;border-top:1px dashed var(--line);}
.pa-compare h4{font-size:20px;color:var(--ink);margin:0 0 4px;}
.pa-compare .intro{margin:0 0 16px;font-size:13.5px;color:var(--muted);line-height:1.55;}
.pa-compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}
.pa-price{border:1px solid var(--line);border-radius:14px;background:var(--paper-soft);padding:16px 18px;}
.pa-price.gold{border-color:rgba(239,177,60,.55);background:rgba(239,177,60,.1);}
.pa-price-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;}
.pa-price-head b{font-size:16px;color:var(--ink);}
.pa-price-head .tag{font-weight:800;font-size:18px;color:var(--ink);}
.pa-price ul{margin:0 0 14px;padding-left:18px;font-size:13.5px;color:var(--muted);line-height:1.6;}
.pa-agree{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--ink);line-height:1.45;background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 12px;margin-bottom:10px;cursor:pointer;}
.pa-agree input{margin-top:1px;accent-color:var(--gold);flex:none;}
.pa-terms{margin:10px 0 0;font-size:11.5px;color:var(--soft);line-height:1.45;}

/* ---------- Reference drawer ---------- */
.pa-ref{margin-top:28px;}
.pa-ref .intro{color:#9fb0c4;font-size:13.5px;margin:0 0 14px;line-height:1.5;}
.pa-ref-list{display:grid;gap:8px;}
.pa-ref details{background:rgba(255,248,237,.05);border:1px solid rgba(255,248,237,.14);border-radius:12px;}
.pa-ref summary{padding:14px 18px;font-weight:700;color:#fff8ed;font-size:14.5px;}
.pa-ref .content{padding:0 18px 16px;font-size:13.5px;color:#c9d2dc;line-height:1.6;}
.pa-ref .content b{color:#fff8ed;}
.pa-ref .content p{margin:0 0 8px;}
.pa-ref .content a{color:#8bb4ea;}

.pa-footer-note{margin:26px auto 0;text-align:center;font-size:12px;color:#7f899a;line-height:1.6;max-width:64ch;}

/* ============================================================
   GOLDEN KIT PAGE
   ============================================================ */
.kit-banner{margin:16px 0;border:1px solid rgba(239,177,60,.5);background:rgba(239,177,60,.12);border-radius:12px;padding:14px 18px;color:#e9edf2;font-size:13px;line-height:1.6;}
.kit-banner b{color:#fff8ed;}
.kit-pause{margin:0 0 16px;border:1px solid rgba(239,116,88,.45);border-left:4px solid var(--coral);background:rgba(239,116,88,.08);border-radius:0 10px 10px 0;padding:12px 16px;color:var(--ink);font-size:13.5px;line-height:1.6;}
.kit-pause b{color:var(--ink);}
/* In the dark reference drawer, the pause callout needs light text (the cream-card ink is unreadable there). */
.pa-ref .kit-pause{color:#c9d2dc;}
.pa-ref .kit-pause b{color:#fff8ed;}
.kit-back{background:transparent;color:#c9d2dc;border:1px solid rgba(255,248,237,.2);border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700;cursor:pointer;margin-bottom:16px;white-space:nowrap;text-decoration:none;display:inline-block;}
.kit-back:hover{color:#fff8ed;text-decoration:none;}
.kit-card{position:relative;background:var(--paper);border-radius:18px;box-shadow:0 26px 62px rgba(0,0,0,.36);padding:36px clamp(20px,4vw,44px) 32px;color:var(--ink);}
.kit-section{margin-top:30px;padding-top:26px;border-top:1px solid rgba(13,34,56,.1);}
.kit-section:first-child{margin-top:0;padding-top:0;border-top:0;}
.kit-shead{display:flex;align-items:center;gap:12px;margin:0 0 14px;}
.kit-snum{width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff8ed;display:grid;place-items:center;font-weight:800;font-size:14px;flex:none;font-family:'Hanken Grotesk',sans-serif;}
.kit-shead h3{font-size:21px;margin:0;color:var(--ink);}
.kit-intro{color:var(--muted);font-size:14px;line-height:1.55;margin:0 0 14px;}

.kit-recap{border:1px solid var(--line);border-radius:12px;background:var(--paper-soft);padding:16px 18px;}
.kit-recap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px 20px;font-size:13.5px;line-height:1.4;}
.kit-recap-grid .k{color:var(--soft);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;}
.kit-recap-grid .kit-recap-wide{grid-column:1/-1;}
.kit-recap-next{margin-top:14px;padding-top:12px;border-top:1px solid rgba(13,34,56,.1);font-size:13.5px;line-height:1.55;color:var(--muted);}
.kit-recap-next b{color:var(--ink);}
.kit-status{margin:0 0 14px;border:1px solid rgba(239,177,60,.55);border-left:4px solid var(--gold);background:rgba(239,177,60,.1);border-radius:0 10px 10px 0;padding:13px 15px;color:var(--muted);font-size:13px;line-height:1.55;}
.kit-status h4{margin:0 0 6px;color:var(--ink);font-size:15px;}
.kit-status p{margin:4px 0;}
.kit-status ul{margin:5px 0;padding-left:19px;}
.kit-status a{font-weight:700;}
.kit-status.stop{border-color:rgba(239,116,88,.55);border-left-color:var(--coral);background:rgba(239,116,88,.08);}
.kit-action-unavailable{border:1px dashed rgba(13,34,56,.25);border-radius:10px;background:var(--paper-soft);padding:14px 16px;color:var(--muted);font-size:13.5px;line-height:1.55;}

.kit-defs{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;}
.kit-def{border:1px solid var(--line);border-radius:12px;background:var(--paper-soft);padding:13px 15px;}
.kit-def .term{font-weight:800;color:var(--ink);font-size:14px;margin-bottom:3px;}
.kit-def .def{font-size:12.5px;color:var(--muted);line-height:1.5;}

.kit-srcline{background:rgba(42,140,140,.08);border-left:3px solid var(--teal);border-radius:0 8px 8px 0;padding:10px 14px;margin:0 0 16px;font-size:12.5px;color:var(--ink);line-height:1.55;}
.kit-letter{margin:0;padding:18px 20px;background:#fff;border:1px solid var(--line-strong);border-radius:10px;font:13px/1.6 ui-monospace,'SFMono-Regular',Menlo,monospace;white-space:pre-wrap;color:var(--ink);}
.kit-letter-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;}
.kit-copied{font-size:12.5px;color:var(--green);font-weight:700;align-self:center;}

.kit-table{width:100%;border-collapse:collapse;font-size:13.5px;}
.kit-table th{text-align:left;color:var(--soft);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:800;padding:8px 10px;border-bottom:1px solid rgba(13,34,56,.14);}
.kit-table td{padding:9px 10px;border-bottom:1px solid rgba(13,34,56,.08);color:var(--ink);line-height:1.45;vertical-align:top;}
.kit-table td.st{color:var(--muted);white-space:nowrap;}
.kit-table td.have{color:var(--green);font-weight:700;white-space:nowrap;}
.kit-table td.hint{color:var(--muted);}
.kit-empty{border:1px dashed rgba(13,34,56,.2);border-radius:10px;padding:16px;font-size:13.5px;color:var(--muted);line-height:1.55;}

.kit-scripts{display:grid;gap:14px;}
.kit-script{border:1px solid var(--line);border-radius:12px;background:var(--paper-soft);padding:14px 16px;}
.kit-script .h{font-weight:800;color:var(--ink);font-size:14px;margin-bottom:6px;}
.kit-script p{margin:0;font-size:13px;color:var(--muted);line-height:1.6;}
.kit-script p.quote{font-style:italic;}
.kit-script ul{margin:0;padding-left:20px;font-size:13px;color:var(--muted);line-height:1.6;}

.kit-court{display:grid;gap:12px;font-size:13.5px;color:var(--muted);line-height:1.6;}
.kit-court .c{border:1px solid var(--line);border-radius:12px;background:var(--paper-soft);padding:14px 16px;}
.kit-court .c b{color:var(--ink);}
.kit-court .c.warn{border-color:rgba(239,116,88,.4);background:rgba(239,116,88,.08);}

.kit-checklist{margin:0;padding-left:20px;font-size:13.5px;color:var(--muted);line-height:1.7;}
.kit-disclaimer{margin:26px 0 0;padding-top:16px;border-top:1px solid var(--line);font-size:11.5px;color:var(--soft);line-height:1.55;}
.kit-backwrap{text-align:center;margin-top:20px;}

/* ---------- Consent acknowledgment ---------- */
.pa-consent-overlay{position:fixed;inset:0;z-index:100;background:rgba(4,10,16,.72);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;overflow-y:auto;}
.pa-consent-card{background:var(--paper);color:var(--ink);border-radius:16px;box-shadow:0 30px 70px rgba(0,0,0,.5);max-width:520px;width:100%;padding:28px clamp(20px,4vw,34px);}
.pa-consent-h{font-size:24px;margin:6px 0 12px;color:var(--ink);line-height:1.15;}
.pa-consent-card p{font-size:14.5px;line-height:1.6;color:var(--muted);margin:0 0 12px;}
.pa-consent-card p b{color:var(--ink);}
.pa-consent-fine{font-size:12.5px;}
.pa-consent-card .pa-agree{margin:6px 0 14px;}
.pa-kit-framing{margin:0 0 16px;padding:12px 14px;background:rgba(42,140,140,.09);border-left:3px solid var(--teal);border-radius:0 8px 8px 0;font-size:13.5px;line-height:1.55;color:var(--ink);}
.pa-kit-framing b{color:var(--ink);}

/* ---------- Golden Kit paywall (preview lock) ---------- */
.kit-preview-banner{margin:0 0 18px;padding:22px clamp(18px,3vw,28px);border:1px solid rgba(239,177,60,.58);background:linear-gradient(145deg,#fffaf0 0%,#f7f3e8 56%,#edf7f5 100%);border-radius:18px;color:var(--ink);font-size:13px;line-height:1.55;box-shadow:0 16px 38px rgba(0,0,0,.2);}
.kit-preview-heading{display:flex;align-items:flex-start;gap:14px;}
.kit-preview-icon{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;background:rgba(239,177,60,.2);border:1px solid rgba(199,139,28,.28);color:#9c6810;font-size:22px;line-height:1;}
.kit-preview-kicker{margin:1px 0 3px;color:#63736f;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.kit-preview-banner h2{margin:0 0 5px;color:var(--ink);font-size:22px;line-height:1.16;}
.kit-preview-banner p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.55;max-width:72ch;}
.kit-preview-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin:16px 0;}
.kit-preview-benefits span{position:relative;padding:9px 11px 9px 30px;border:1px solid rgba(42,140,140,.18);background:rgba(255,255,255,.72);border-radius:10px;color:#40515d;font-size:12.5px;font-weight:700;line-height:1.35;}
.kit-preview-benefits span::before{content:'\2713';position:absolute;left:11px;top:8px;color:var(--teal);font-weight:900;}
.kit-preview-banner .kit-agree{margin:0 0 14px;padding:12px 14px;border-color:rgba(13,34,56,.14);background:rgba(255,255,255,.84);box-shadow:none;}
.kit-preview-banner .kit-agree span{display:grid;gap:2px;}
.kit-preview-banner .kit-agree b{color:var(--ink);font-size:12.5px;}
.kit-preview-banner .kit-agree small{color:var(--muted);font-size:11.8px;line-height:1.45;}
.kit-preview-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.kit-preview-actions .kit-unlock{min-height:48px;padding:13px 21px;border-color:#e2a52c;background:var(--gold);color:#281c05;font-size:15px;box-shadow:0 9px 20px rgba(190,128,14,.2);}
.kit-preview-actions .kit-unlock:hover{color:#281c05;filter:brightness(1.05);transform:translateY(-1px);}
.kit-preview-actions>span{color:#66737d;font-size:11.5px;line-height:1.4;}
.kit-agree-warn{margin-top:9px;color:#8f4e37;font-size:12px;font-weight:700;}
@media (max-width:640px){.kit-preview-heading{gap:11px;}.kit-preview-icon{width:38px;height:38px;font-size:20px;}.kit-preview-banner h2{font-size:20px;}.kit-preview-benefits{grid-template-columns:1fr;}.kit-preview-actions{align-items:stretch;flex-direction:column;}.kit-preview-actions .kit-unlock{width:100%;}.kit-preview-actions>span{text-align:center;}}
body:not(.kit-is-locked) #kit-preview-banner{display:none;}
.kit-cta-locked{display:none;}
body.kit-is-locked .kit-cta-locked{display:grid;place-items:center;margin-top:14px;}
body.kit-is-locked .kit-letter-actions{display:none;}
.kit-lock{display:none;}
body.kit-is-locked .kit-paid{position:relative;min-height:130px;}
body.kit-is-locked .kit-paid .kit-paid-inner{filter:blur(6px);pointer-events:none;user-select:none;opacity:.6;}
body.kit-is-locked .kit-paid .kit-lock{display:grid;place-items:center;position:absolute;inset:0;background:rgba(255,248,237,.4);border-radius:12px;}
.kit-lock-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px;text-align:center;max-width:320px;box-shadow:0 14px 34px rgba(0,0,0,.18);font-size:13.5px;color:var(--ink);}
.kit-lock-card p{margin:0 0 12px;color:var(--muted);line-height:1.5;}

/* ---------- Unlocked banner + trust signals ---------- */
.kit-unlocked-banner{margin:0 0 16px;padding:15px 16px;border:1px solid rgba(74,124,83,.58);background:rgba(74,124,83,.16);border-radius:12px;color:#e9edf2;font-size:13px;line-height:1.6;}
.kit-unlocked-top{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.kit-unlocked-copy{display:flex;align-items:center;gap:10px;min-width:0;}
.kit-unlocked-copy b{display:block;color:#fff8ed;font-size:14px;}
.kit-unlocked-copy span:not(.kit-unlocked-check){display:block;color:#c9d2dc;font-size:12px;}
.kit-unlocked-check{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:rgba(143,208,166,.16);color:#8fd0a6;font-size:16px;font-weight:900;}
.kit-print-cta{min-height:48px;padding:13px 22px;border:1px solid #ffd77d;background:var(--gold);color:#281c05;font-size:15px;box-shadow:0 10px 24px rgba(239,177,60,.34);white-space:nowrap;}
.kit-print-cta:hover{color:#281c05;filter:brightness(1.08);transform:translateY(-1px);}
.kit-print-help{margin:8px 0 0;color:#d7e0e9;font-size:11.5px;}
.kit-unlocked-banner .next{margin-top:8px;color:#c9d2dc;font-size:12.5px;}
@media (max-width:680px){.kit-unlocked-top{align-items:stretch;flex-direction:column;}.kit-print-cta{width:100%;white-space:normal;}}
body.kit-is-locked #kit-unlocked-banner{display:none;}
.pa-reviewed{margin:10px 0 0;font-size:12px;color:#9fb0c4;}
.pa-reviewed a{color:#9fb0c4;text-decoration:underline;}

/* ---------- Responsive ---------- */
@media (max-width:640px){
  .pa-fields{grid-template-columns:1fr;}
  .pa-charge-row{grid-template-columns:minmax(0,1fr) minmax(130px,auto) auto;}
  .pa-charge-row .desc{grid-column:1/-1;}
  .pa-charge-row .amt{grid-column:1;}
  .pa-charge-row .scope{grid-column:2;}
  .charge-reason,.pa-charge-reason{grid-template-columns:1fr;}
  .pa-tab .lbl{font-size:10px;}
}

/* ---------- Inline definition info buttons ---------- */
.pa-term{position:relative;white-space:nowrap;}
.pa-i{display:inline-grid;place-items:center;width:15px;height:15px;margin-left:3px;border-radius:50%;border:1.4px solid var(--blue);background:transparent;color:var(--blue);font:italic 700 10px Georgia,serif;line-height:1;cursor:pointer;vertical-align:middle;padding:0;}
.pa-i:hover{background:var(--blue);color:#fff;}
.pa-tip{display:none;position:absolute;z-index:30;left:0;top:100%;margin-top:6px;width:max-content;max-width:280px;background:var(--ink);color:var(--cream);font-size:12.5px;font-weight:500;line-height:1.5;padding:10px 12px;border-radius:9px;box-shadow:0 14px 30px rgba(0,0,0,.3);white-space:normal;text-transform:none;}
.pa-tip.open{display:block;}
.pa-tip a{display:block;margin-top:8px;padding-top:7px;border-top:1px solid rgba(255,248,237,.22);color:#9fc4f4;font-weight:700;text-decoration:none;}
.pa-tip a:hover{text-decoration:underline;}

/* ---------- Email templates + help directory ---------- */
.kit-email{margin:0 0 6px;padding:16px 18px;background:#fff;border:1px solid var(--line-strong);border-radius:10px;font:12.5px/1.55 ui-monospace,'SFMono-Regular',Menlo,monospace;white-space:pre-wrap;color:var(--ink);}
.kit-help-list{display:grid;gap:12px;}
.kit-help{border:1px solid var(--line);border-radius:12px;background:var(--paper-soft);padding:14px 16px;font-size:13.5px;line-height:1.55;color:var(--muted);}
.kit-help .h{font-weight:800;color:var(--ink);font-size:14px;margin-bottom:4px;}
.kit-help .cost{color:var(--green);font-weight:700;}

/* ---------- Print: only the generated print sheet ---------- */
#pa-print-area{display:none;}
@media print{
  @page{margin:1in;}
  html,body{background:#fff !important;}
  body.pa-printing>*{display:none !important;}
  body.pa-printing>#pa-print-area{display:block !important;}
  #pa-print-area{color:#1a1a1a;font-family:Georgia,'Times New Roman',serif;font-size:12pt;line-height:1.5;}
  #pa-print-area .pp-brand{font-family:'Hanken Grotesk',ui-sans-serif,sans-serif;font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:10.5pt;color:#2a6cc4;}
  #pa-print-area h1{font-size:21pt;margin:2pt 0;}
  #pa-print-area .pp-meta{font-size:10pt;color:#555;margin-bottom:14pt;}
  #pa-print-area .pp-disc{font-size:9.5pt;color:#555;border:1px solid #ccc;padding:8pt 10pt;border-radius:4pt;margin-bottom:16pt;}
  #pa-print-area h2{font-size:13pt;border-bottom:1px solid #999;padding-bottom:3pt;margin:16pt 0 6pt;}
  #pa-print-area p,#pa-print-area li{font-size:11pt;}
  #pa-print-area ul{margin:4pt 0;padding-left:18pt;}
  #pa-print-area li{margin-bottom:3pt;}
  #pa-print-area .pp-foot{margin-top:18pt;border-top:1px solid #ccc;padding-top:8pt;font-size:9pt;color:#666;}
  #pa-print-area .pp-letter{white-space:pre-wrap;font-family:Georgia,serif;font-size:11pt;line-height:1.55;border:1px solid #d3d3d3;padding:10pt 12pt;margin:6pt 0 12pt;background:#fff;}
  #pa-print-area .pp-table{width:100%;border-collapse:collapse;margin:6pt 0 12pt;page-break-inside:auto;}
  #pa-print-area .pp-table th{font-family:'Hanken Grotesk',ui-sans-serif,sans-serif;text-align:left;font-size:9.5pt;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #888;padding:5pt 4pt;color:#222;}
  #pa-print-area .pp-table td{vertical-align:top;border-bottom:1px solid #ddd;padding:5pt 4pt;font-size:10.2pt;line-height:1.4;}
  #pa-print-area .pp-summary td:first-child{width:34%;}
  #pa-print-area .pp-evidence td:first-child{width:28%;}
  #pa-print-area .pp-evidence td:nth-child(2){width:16%;white-space:nowrap;}
  #pa-print-area .pp-box{border:1px solid #d8d8d8;border-radius:5pt;padding:8pt 10pt;margin:7pt 0;page-break-inside:avoid;background:#fff;}
  #pa-print-area .pp-box.warn{border-color:#b56b4b;background:#fff7f1;}
  #pa-print-area a{color:#1a1a1a !important;text-decoration:none;}
  body:not(.pa-printing) .pa-i{display:none !important;}
  /* Browser Print/Ctrl+P should capture the current form or kit without desk decor,
     navigation, or collapsed reference drawers creating nearly empty pages. */
  body:not(.pa-printing) .pa-desk,
  body:not(.pa-printing) .pa-topbar,
  body:not(.pa-printing) .pa-seo,
  body:not(.pa-printing) .pa-progress,
  body:not(.pa-printing) .pa-summary,
  body:not(.pa-printing) .pa-tabs,
  body:not(.pa-printing) .pa-ref,
  body:not(.pa-printing) .pa-tool-footer,
  body:not(.pa-printing) .pa-quick-top,
  body:not(.pa-printing) .kit-backwrap,
  body:not(.pa-printing) .kit-preview-banner,
  body:not(.pa-printing) .pa-kit-promo,
  body:not(.pa-printing) .pa-free-plan-intro,
  body:not(.pa-printing) .kit-cta-locked,
  body:not(.pa-printing) .kit-letter-actions,
  body:not(.pa-printing) .pa-nav{display:none !important;}
  body:not(.pa-printing) .pa-wrap{max-width:none !important;width:100% !important;margin:0 !important;padding:0 !important;}
  body:not(.pa-printing) .pa-card,
  body:not(.pa-printing) .kit-card{box-shadow:none !important;border:0 !important;border-radius:0 !important;padding:0 !important;margin:0 !important;}
  body:not(.pa-printing) .pa-step{break-inside:auto;}
  body:not(.pa-printing) .kit-section{break-inside:auto;}
  body:not(.pa-printing) .kit-section h3,
  body:not(.pa-printing) .pa-h2{break-after:avoid;}
}

/* Paper Alibi dog logo mark */
.pa-brandmark {
  width: 34px;
  height: 34px;
  border-radius: 0;
  background: none;
  box-shadow: none;
  transform: none;
  overflow: visible;
  color: transparent;
}
.pa-brandmark img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  border-radius: 0;
}


/* Compact footer for planner and kit pages */
.pa-tool-footer{margin:40px 0 0;padding:24px 0 34px;border-top:1px solid rgba(255,248,237,.14);color:#c9d2dc;}
.pa-tool-footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.pa-tool-footer-top p{max-width:46ch;margin:2px 0 0;color:#8f9bab;font-size:13px;line-height:1.45;}
.pa-tool-footer-links{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:18px;font-size:13px;}
.pa-tool-footer-links a{color:#c9d2dc;font-weight:700;}
.pa-tool-footer-bottom{margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,248,237,.08);color:#7f899a;font-size:12.5px;line-height:1.5;}

/* Floating back-to-top quick link */
.pa-quick-top{position:fixed;right:18px;bottom:18px;z-index:80;display:inline-flex;align-items:center;justify-content:center;min-width:54px;height:42px;padding:0 14px;border-radius:999px;background:#fff8ed;color:#0d2238;border:1px solid rgba(13,34,56,.14);box-shadow:0 12px 30px rgba(0,0,0,.34);font-size:13px;font-weight:800;text-decoration:none;}
.pa-quick-top:hover{transform:translateY(-1px);text-decoration:none;color:#0d2238;}
@media (max-width:640px){.pa-quick-top{right:12px;bottom:12px;height:38px;min-width:48px;font-size:12px;}}
@media print{.pa-quick-top,.pa-tool-footer{display:none !important;}}

/* ---------- Static, crawlable SEO intro (compact, sits above the JS planner) ---------- */
.pa-seo{position:relative;z-index:1;max-width:860px;margin:18px auto 18px;color:#c9d2dc;font-size:14px;line-height:1.5;}
.pa-seo .pa-crumb{margin-bottom:8px;}
.pa-seo h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,4vw,40px);line-height:1.05;color:#fff8ed;margin:0 0 10px;letter-spacing:-.02em;}
.pa-seo h2{font-family:Georgia,'Times New Roman',serif;font-size:17px;color:#fff8ed;margin:18px 0 8px;}
.pa-seo p{margin:0 0 10px;}
.pa-seo b{color:#fff8ed;}
.pa-seo a{color:#8bb4ea;}
.pa-seo-lead{max-width:74ch;color:#d9d2c4;font-size:15px;}
.pa-seo-rulegrid{list-style:none;margin:14px 0 10px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.pa-seo-rulegrid li{margin:0;padding:10px 11px;border:1px solid rgba(255,248,237,.14);background:rgba(255,248,237,.055);border-radius:12px;min-height:72px;}
.pa-seo-rulegrid b{display:block;font-size:13.5px;margin-bottom:4px;}
.pa-seo-rulegrid span{display:block;color:#c9d2dc;font-size:12.5px;line-height:1.35;}
.pa-seo-covers{font-size:13.5px;color:#9fb0c4;}
.pa-seo-more{margin-top:10px;border:1px solid rgba(255,248,237,.12);border-radius:12px;background:rgba(255,248,237,.035);}
.pa-seo-more summary{cursor:pointer;padding:10px 12px;color:#fff8ed;font-weight:800;font-size:13.5px;}
.pa-seo-more summary:hover{color:#fff;}
.pa-seo-more-inner{padding:0 12px 12px;border-top:1px solid rgba(255,248,237,.10);}
.pa-seo dl{margin:0 0 6px;}
.pa-seo dt{color:#fff8ed;font-weight:700;margin-top:10px;}
.pa-seo dd{margin:3px 0 0;color:#c9d2dc;}
.pa-seo .pa-seo-src{font-size:13.5px;}
.pa-seo .pa-seo-note{font-size:12.5px;color:#9fb0c4;}
@media (max-width:780px){.pa-seo-rulegrid{grid-template-columns:repeat(2,minmax(0,1fr));}.pa-seo-rulegrid li{min-height:0;}}
@media (max-width:640px){.pa-seo{margin-top:16px;font-size:13.5px;}.pa-seo h1{font-size:28px;}.pa-seo-lead{font-size:14px;}.pa-seo-rulegrid{grid-template-columns:1fr;}}
