
.money main :where(a:not(.btn):not(.card):not(.statetab)){color:var(--ink);font-weight:650}
@media (hover: hover) and (pointer: fine){.money main :where(a:not(.btn):not(.card):not(.statetab)):hover{color:var(--link-hover)}}
.money .after{margin-top:18px}
.money .plans-soon{margin-bottom:28px}
.money .dsheet.four{margin-top:56px}
.money .tn-note{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--well);color:var(--ink-2);font-size:var(--fs-fine);font-weight:600;white-space:nowrap}

.thero{padding:40px 0 48px}
.thero .h-display{max-width:10.6em;margin-top:14px}
.thero .lede{margin-top:18px;max-width:46ch}
@media (min-width:1024px){.thero{padding:72px 0 64px}}
.prose{font-family:var(--serif);font-size:20px;line-height:1.55;color:var(--ink);font-variant-numeric:lining-nums}
.prose p,.prose li{max-width:34em}
.prose p+p{margin-top:.7em}
.prose a{font-family:var(--font);font-size:.86em;font-weight:600}
@media (max-width:639px){.prose{font-size:19px}}
.tick-list{display:grid;gap:10px;font-size:var(--fs-small);line-height:1.45}
.tick-list li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px}
.tick-list svg{margin-top:3px;color:var(--ink)}
.tick-list a{font-weight:600}
/* leader rows: a name, a dotted leader, a value (the carte, the stub, a receipt) */
.rows{display:grid;gap:0}
.rows>div{display:grid;grid-template-columns:auto minmax(16px,1fr) auto;align-items:baseline;gap:4px 10px;padding:11px 0;border-bottom:1px solid var(--rule)}
.rows>div::before{content:"";grid-column:2;grid-row:1;align-self:end;height:1px;margin-bottom:.42em;background:repeating-linear-gradient(90deg,var(--rule-2) 0 2px,transparent 2px 7px)}
.rows dt{grid-column:1;grid-row:1;font-size:var(--fs-small);color:var(--ink-2)}
.rows dd{grid-column:3;grid-row:1;font-size:var(--fs-small);font-weight:600;color:var(--ink);text-align:right;max-width:24ch}
.rows .wide dt{grid-column:1/-1}.rows .wide dd{grid-column:1/-1;grid-row:2;text-align:left;max-width:none;font-weight:500}
.rows .wide::before{display:none}
.statebar{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:var(--fs-small);color:var(--ink-2)}
.statebar a{display:inline-flex;align-items:center;min-height:44px}

.phero{display:grid;gap:32px}
.phero>*{min-width:0}
@media (min-width:1024px){.phero{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:56px;align-items:start}}
/* the stub: the one-time package, written as the receipt it will be. The foot is torn along a perforation. */
.stub{position:relative;padding:24px 24px 34px;display:grid;gap:16px;align-content:start;border-bottom:0}
.stub::after{content:"";position:absolute;left:-1px;right:-1px;bottom:-1px;height:9px;
  background:radial-gradient(circle at 7px 9px,var(--paper) 4.6px,var(--rule) 4.6px,var(--rule) 5.6px,transparent 5.9px) 0 0/14px 9px repeat-x}
.stub .stub-line{font-size:var(--fs-block);line-height:1.3;font-weight:600;letter-spacing:-.005em;text-wrap:balance;max-width:22em}
.stub .amt{display:flex;align-items:baseline;gap:10px}
.stub .amt .v{font-size:clamp(56px,9vw,76px);line-height:.95;font-weight:600;letter-spacing:-.04em}
.stub .amt .u{font-size:var(--fs-lede);color:var(--ink-2);font-weight:500}
.stub .rows{border-top:1.5px solid var(--ink)}
.stub .btn{justify-self:start}
.stub .promise{font-size:var(--fs-small);line-height:1.5;color:var(--ink-2);max-width:40ch}
@media (min-width:1024px){.stub{padding:28px 28px 38px}}
@media (max-width:479px){.stub .btn{justify-self:stretch}}
.thero .statebar{margin-top:10px}
.scope{padding:24px;display:grid;gap:12px;align-content:start}
@media (min-width:1024px){.scope{padding:28px}}
/* billing period: two plain links */
.period{display:inline-flex;border:1px solid var(--control-edge);border-radius:999px;padding:3px;margin-bottom:28px;gap:2px}
.period a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;color:var(--ink-2);font-size:var(--fs-small);font-weight:600}
@media (hover: hover) and (pointer: fine){.period a:hover{color:var(--ink)}}
.period a[aria-current=true]{background:var(--ink);color:var(--paper)}
.period .save{font-weight:500}
/* the carte: one sheet per plan, its name and price on a leader, then every inclusion in the terms' own words */
.plans3{display:grid;gap:12px}
.plan{padding:24px;display:grid;gap:14px;align-content:start;grid-template-rows:auto auto auto 1fr auto}
.plan .cr{display:grid;grid-template-columns:auto minmax(16px,1fr) auto;align-items:baseline;gap:4px 12px}
.plan .cr .dots{align-self:end;height:1px;margin-bottom:.55em;background:repeating-linear-gradient(90deg,var(--rule-2) 0 2px,transparent 2px 7px)}
.plan .pn{font-size:clamp(30px,3.4vw,38px);line-height:1.05;letter-spacing:-.015em;font-weight:520}
.plan .pp{display:flex;align-items:baseline;gap:8px;white-space:nowrap}
.plan .pp .v{font-size:clamp(34px,3.6vw,44px);font-weight:600;letter-spacing:-.03em;line-height:1}
.plan .pp .u{font-size:var(--fs-small);color:var(--ink-2)}
.plan .py{font-size:var(--fs-small);color:var(--ink-2);margin-top:-8px;text-align:right}
.plan .pl{color:var(--ink);font-weight:600;padding-top:14px;border-top:1px solid var(--rule)}
.plan .btn,.plan form{align-self:end;justify-self:start}
.plan form .btn{width:100%}
.plan .full{font-size:var(--fs-small);color:var(--ink-2)}
.plan .tn-today{font-size:var(--fs-small);color:var(--ink-2)}
@media (min-width:900px){.plans3{grid-template-columns:repeat(var(--plans,3),minmax(0,1fr));gap:16px}.plan{padding:28px}}
@media (max-width:479px){.plan .btn,.plan form{justify-self:stretch}.plan .btn{width:100%}}
@media (max-width:359px){.plan{padding:20px 16px}.plan .cr{gap:4px 8px}.plan .pn{font-size:27px}.plan .pp{gap:5px}.plan .pp .v{font-size:30px}.plan .pp .u{font-size:var(--fs-fine)}.stub{padding:20px 16px 30px}}
/* side by side: the terms' table. Wide: a ledger. Narrow: each row lists who gets it. */
.cmp{width:100%;border-collapse:collapse;font-size:var(--fs-small);line-height:1.45}
.cmp th,.cmp td{text-align:left;vertical-align:top;padding:16px 16px 16px 0;border-bottom:1px solid var(--rule);font-weight:400}
.cmp thead th{font-size:var(--fs-fine);font-weight:600;color:var(--ink-2);border-bottom:1.5px solid var(--ink);padding-top:0;padding-bottom:10px;vertical-align:bottom}
.cmp thead th b{display:block;color:var(--ink);font-size:var(--fs-small);font-weight:600}
.cmp tbody th{color:var(--ink);font-weight:500;width:40%}
.cmp td{color:var(--ink);width:15%}
.cmp td svg{color:var(--ink)}
.cmp td .no{display:inline-block;width:12px;height:1.5px;background:var(--rule-2);vertical-align:middle;margin-top:9px}
.cmp td .col{display:none}
.cmp td.words{font-weight:600}
@media (max-width:767px){
  .cmp thead{display:none}   /* each cell names its own plan on a phone (.col) */
  .cmp tbody tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 8px;padding:16px 0;border-bottom:1px solid var(--rule)}
  .cmp tbody tr:first-child{border-top:1.5px solid var(--ink)}
  .cmp tbody th{grid-column:1/-1;display:block;border:0;padding:0 0 4px;width:auto;font-weight:600}
  .cmp tbody td{display:grid;grid-template-columns:16px minmax(0,1fr);gap:6px;font-size:var(--fs-fine);align-items:start;border:0;padding:0;width:auto;color:var(--ink-2)}
  .cmp tbody td.yes{color:var(--ink)}
  .cmp td .col{display:inline}
  .cmp td svg{margin-top:3px}
  .cmp td.words{grid-column:1/-1;grid-template-columns:minmax(0,1fr)}
  .cmp td.words .col::after{content:": "}
}
.notin{margin-top:40px;padding:24px;display:grid;gap:10px;background:var(--well)}
.notin p:last-child{max-width:70ch}
@media (min-width:900px){.notin{grid-template-columns:minmax(0,3fr) minmax(0,9fr);column-gap:24px;padding:28px}}
/* how the money works: the terms' own points */
.dsheet{display:grid;gap:0;border-top:1.5px solid var(--ink)}
.dsheet div{display:grid;gap:6px;padding:18px 0;border-bottom:1px solid var(--rule);align-content:start}
.dsheet dt{font-size:var(--fs-label);line-height:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-stretch:88%;color:var(--ink-2)}
.dsheet dd{color:var(--ink);max-width:46ch;font-size:var(--fs-small);line-height:1.5}
@media (min-width:768px){.dsheet{grid-template-columns:1fr 1fr;column-gap:32px}}
@media (min-width:1180px){.dsheet.four{grid-template-columns:repeat(4,1fr)}.dsheet.four div{border-bottom:0;padding:20px 0 0}}
.qa{display:grid;gap:0;border-top:1.5px solid var(--ink)}
.qa>div{display:grid;gap:8px;padding:22px 0 24px;border-bottom:1px solid var(--rule)}
.qa h3{font-size:var(--fs-block);line-height:1.3;font-weight:600;text-wrap:balance}
.qa .qa-a{color:var(--ink-2);max-width:62ch}
@media (min-width:1024px){.qa>div{grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:56px}}
@media (min-width:640px){.goes .ledger th:first-child{width:25%}}
.area{margin-bottom:28px;padding:20px 24px;display:grid;gap:8px}
.area ul{display:grid;gap:6px;font-size:var(--fs-small)}
.area li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 16px;padding-top:6px;border-top:1px solid var(--rule)}
.area li span:last-child{color:var(--ink-2)}

.acct main{padding-bottom:88px}
.acct{--gr-ink:var(--ink);--gr-muted:var(--ink-2);--gr-border:var(--rule);--gr-card-edge:var(--control-edge);--gr-white:var(--sheet);
  --gr-surface:var(--well);--gr-red:var(--signal);--gr-red-hover:var(--signal-hover);--gr-coral:var(--focus);--gr-font-body:var(--font);--gr-font-display:var(--font);
  --gr-night-surface:var(--sheet);--gr-night-border:var(--rule);--gr-night-text:var(--ink);--gr-night-muted:var(--ink-2);--gr-radius-md:6px;--gr-radius-lg:8px;--gr-radius-pill:999px}
.ahero{padding:36px 0 26px}
@media (min-width:1024px){.ahero{padding:56px 0 36px}}
/* the receipt moment: the heading on the dark plate (.night re-declares the dark tokens, so these are simply the dark theme) */
.ahero.plate-hero{background:var(--paper);color:var(--ink);border-bottom:0;padding:44px 0 36px}
.ahero.plate-hero :is(.sub-h1,.h-task){font-size:clamp(34px,5vw,60px);letter-spacing:-.025em}
.ahero.plate-hero .plate-note{margin-top:20px;padding-top:14px;border-top:1px solid var(--rule);font-size:var(--fs-fine);color:var(--ink-2);max-width:none}
@media (min-width:1024px){.ahero.plate-hero{padding:72px 0 44px}}
.acct .kicker,.acct .acct-who{font-size:var(--fs-label);line-height:16px;font-weight:600;font-stretch:88%;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.acct .sub-h1,.acct .acct-title,.acct .acct-card h1:not(.h-task){font-size:clamp(28px,3.2vw,40px);line-height:1.1;font-weight:600;letter-spacing:-.018em;word-spacing:.05em;text-wrap:balance;margin-top:10px}
@media (max-width:359px){.acct .h-task,.acct .sub-h1,.acct .acct-title,.acct .acct-card h1,.acct-page h1:not([class]){font-size:25px}}   /* a tied pair of words still fits a 320 px phone's panel */
.acct .band-note,.acct .sub-lede{margin-top:12px;font-size:var(--fs-lede);line-height:1.5;color:var(--ink-2);max-width:60ch}
.acct .section{border-top:0;padding-block:32px 0}
.acct .acct-page{padding-top:36px}
.acct .acct-page:has(>.bid-head:first-child),.acct .acct-page:has(>.acct-narrow>.bid-head:first-child){padding-top:0}
.acct .bid-head{margin-bottom:24px}
@media (min-width:1024px){.acct .acct-page{padding-top:56px}.acct .acct-page:has(>.bid-head:first-child),.acct .acct-page:has(>.acct-narrow>.bid-head:first-child){padding-top:0}}
.acct .section p,.acct-page p,.acct .section li,.acct-page li{max-width:68ch}
.acct .section :is(p,ul,ol,dl,pre,form),.acct-page :is(p,ul,ol,dl,pre,form){margin-block:0 14px}
.acct .section :is(p,ul,ol,dl,pre,form):last-child,.acct-page :is(p,ul,ol,dl,pre,form):last-child{margin-bottom:0}
.acct h2:not([class]){font-size:var(--fs-block);line-height:1.25;font-weight:600;letter-spacing:-.005em;margin:0 0 12px;text-wrap:balance}
.acct .ob-h{margin-top:32px;padding-top:20px;border-top:1px solid var(--rule);text-wrap:balance}
/* run 5 (critic 5 + 6): H0's .h-task keeps its own face and weight here; the gap tag; a cue on links that open a form; boxes and the file button on navy */
.acct .h-task{margin-top:10px}
.acct .ob-miss{display:inline-block;padding:1px 8px;margin-right:2px;border:1px solid var(--rule-2);border-radius:4px;background:var(--well);color:var(--ink);font-size:var(--fs-small);font-weight:600;letter-spacing:.04em;white-space:nowrap}
.acct .bp-files a.text-link::after,.acct a.ff-what::after{content:"\2192";margin-left:6px}
.acct input[type=checkbox]{border-radius:4px;box-shadow:0 0 0 1.5px var(--ink-3)}
.acct input[type=radio]{border-radius:50%;box-shadow:0 0 0 1.5px var(--ink-3)}
.acct input[type=file]::file-selector-button{min-height:44px;margin-right:12px;padding:8px 14px;border:1px solid var(--rule-2);border-radius:6px;background:var(--sheet);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}
.acct :is(ul,ol):not([class]),.acct :is(.max-missing,.max-checklist,.switch-terms){padding-left:1.3em;display:grid;gap:6px}
.acct ul:not([class]),.acct :is(.max-missing,.switch-terms){list-style:disc}
.acct ol:not([class]),.acct .max-checklist{list-style:decimal}
.acct dl:not([class]) dt,.acct .max-submit dt{font-size:var(--fs-label);line-height:16px;font-weight:600;font-stretch:88%;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.acct dl:not([class]) dd,.acct .max-submit dd{margin:4px 0 14px}
.acct .bid-lead{font-size:var(--fs-lede);line-height:1.45;color:var(--ink)}
.acct .field-help,.acct .acct-foot,.acct .acct-state,.acct .acct-quick{font-size:var(--fs-small);line-height:1.5;color:var(--ink-2)}
.acct :is(.form-error,.error-text,.acct-error,.form-error-summary,.switch-unavailable){color:var(--link);font-weight:600}
/* notes: what state something is in */
.acct :is(.package-status,.plan-notice,.plan-pending,.acct-note[role=status]){padding:12px 16px;background:var(--well);box-shadow:inset 3px 0 0 var(--ink);max-width:68ch}
.acct .section .band-note,.acct-page .band-note{margin-top:0;padding:12px 16px;background:var(--ok-tint);box-shadow:inset 3px 0 0 var(--ok);color:var(--ink);font-size:var(--fs-body);max-width:68ch}
.acct [role=alert].package-status{background:var(--warn-tint);box-shadow:inset 3px 0 0 var(--warn)}
/* panels */
.acct :is(.acct-panel,.acct-box){background:var(--sheet);border:1px solid var(--rule);border-radius:8px;padding:22px 20px;min-width:0}
@media (min-width:768px){.acct :is(.acct-panel,.acct-box){padding:28px}}
.acct .acct-narrow{max-width:720px;display:grid;gap:16px}
.acct :is(.acct-stack,.dash-layout){display:grid;gap:16px;max-width:860px}
.acct .acct-cols{display:grid;gap:16px}
@media (min-width:900px){.acct .acct-cols{grid-template-columns:repeat(3,minmax(0,1fr))}.acct .acct-cols .is-wide{grid-column:1/-1}}
.acct .acct-form{display:grid;gap:16px}
.acct .acct-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
.acct .acct-actions form{margin:0;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
/* the account head: who, which plan, what state */
/* full bleed: the head is the page's coloured band without a wrapper of its own */
.acct .acct-card{padding:28px 0 24px}
.acct .acct-plan{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px}
.acct .acct-chip{display:inline-block;padding:3px 12px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:var(--fs-label);line-height:18px;font-weight:600;letter-spacing:.04em}
.acct .acct-chip:is(.is-trial,.is-none,.is-ended,.is-founding){background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--control-edge)}
.acct .acct-lead{margin-top:14px;color:var(--ink-2);max-width:68ch}
.acct .acct-links{display:inline-flex;gap:14px}
.acct .acct-links a{display:inline-flex;align-items:center;min-height:44px}
/* controls */
.acct :is(.button,.acct-btn,.bid-cta,.prep-buy),.acct form button:not([class]){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 24px;border:0;border-radius:6px;
  font:inherit;font-size:var(--fs-body);font-weight:600;cursor:pointer;text-align:center;background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--control-edge);transition:background-color .14s linear,color .14s linear,box-shadow .14s linear}
@media (hover: hover) and (pointer: fine){.acct :is(.button,.acct-btn.is-quiet,.prep-buy):hover,.acct form button:not([class]):hover{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}}
.acct .acct-btn:not(.is-quiet){background:var(--signal);color:var(--on-signal);box-shadow:none}
@media (hover: hover) and (pointer: fine){.acct .acct-btn:not(.is-quiet):hover{background:var(--signal-hover);color:var(--on-signal)}}
.acct :is(.button.primary,.bid-cta){background:var(--signal);color:var(--on-signal);box-shadow:none}
@media (hover: hover) and (pointer: fine){.acct :is(.button.primary,.bid-cta):hover{background:var(--signal-hover);color:var(--on-signal)}}
.acct button.text-link{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:none;color:var(--link);font:inherit;font-weight:600;cursor:pointer}
@media (hover: hover) and (pointer: fine){.acct button.text-link:hover{color:var(--link-hover)}}
.acct :is(.text-link,.acct-textlink,.acct-link,.bid-back a,.acct-quick a){display:inline-flex;align-items:center;min-height:44px}
.acct label{display:block;margin:14px 0;font-size:var(--fs-small);font-weight:600;color:var(--ink)}
.acct input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.acct textarea,.acct select{display:block;width:100%;max-width:520px;min-height:48px;margin-top:6px;padding:10px 12px;
  border:1px solid var(--control-edge);border-radius:6px;background:var(--sheet);color:var(--ink);font:inherit;font-size:17px;font-weight:400}
.acct select{text-overflow:ellipsis;white-space:nowrap}   /* UI-FIXES U5 */
.acct textarea{min-height:96px}
.acct input[type=checkbox],.acct input[type=radio]{width:22px;height:22px;margin:0 10px 0 0;vertical-align:-5px;accent-color:var(--ink);flex:none}
/* POLISH 1005: the county picker on an account page is this system's: sheet cards with the rule edge and 8 px, and a ticked box in ink
   like every other box here (red is the page's one action). Above the picker's own theme rules, which load after this sheet. */
html:root .acct .cp{--cp-fg:var(--ink);--cp-muted:var(--ink-2);--cp-line:var(--rule);--cp-card:var(--sheet);--cp-soft:var(--well);--cp-accent:var(--ink)}
.acct :is(.cp-all,.cp-regions){border-width:1px;border-radius:8px}
:root[data-theme=dark] .acct .cp input[type=checkbox]:is(:checked,:indeterminate){background-color:transparent;border-color:var(--ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .acct .cp input[type=checkbox]:is(:checked,:indeterminate){background-color:transparent;border-color:var(--ink)}}
.acct input[type=file]{display:block;max-width:100%;min-height:44px;margin:6px 0 10px;font:inherit;font-size:var(--fs-small);color:var(--ink-2)}
.acct :is(.acct-check,.consent-box,.trade-option){display:flex;align-items:flex-start;gap:0;font-weight:500}
.acct fieldset{border:0;padding:0;margin:18px 0;min-width:0}
.acct legend{padding:0;font-weight:600}
.acct .trade-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:0 16px;margin-top:8px}
.acct .trade-option{align-items:center;min-height:44px;margin:0}
.acct details:not(.menu) summary{cursor:pointer;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;color:var(--ink)}
.acct :is(.max-prep-list,.max-files,.bp-files){display:grid;gap:0;border-top:1px solid var(--rule)}
.acct :is(.max-prep-list,.max-files,.bp-files) li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;padding:10px 0;border-bottom:1px solid var(--rule);overflow-wrap:anywhere;max-width:none}
.acct :is(.max-del,.max-upload,.max-everify){margin:0}
.acct :is(.max-del,.max-upload,.max-everify) button{min-height:44px;font-size:var(--fs-small);padding:0 14px}
.acct pre.response-text{white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--serif);font-size:18px;line-height:1.5;padding:20px;background:var(--well);border:1px solid var(--rule)}
.acct .doc-pdf a{margin-left:10px}
/* the account home ("Your bids"): the head with today's two numbers, the bids on the left, what we watch on the right */
.acct .acct-card.has-stats{display:grid;gap:18px}
@media (min-width:900px){.acct .acct-card.has-stats{grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:48px}}
/* the one-time offer on the account home: one line and the page's one red action, set right under the head */
.acct .acct-page:has(>.offer-bar){display:flex;flex-direction:column}
.acct .acct-page>.offer-bar{order:-1}
.acct .acct-page:has(>.offer-bar)>.bid-head{order:-2}
.acct .offer-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:16px 20px;background:var(--sheet);border:1px solid var(--rule);margin-bottom:8px}
.acct .offer-bar p{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0;max-width:none;font-weight:600}
.acct .offer-bar .num{font-size:28px;line-height:1;font-weight:620;letter-spacing:-.02em}
@media (max-width:479px){.acct .offer-bar .btn{width:100%}}
.acct .dash-stats{display:flex;gap:32px}
.acct .dash-stats li{font-size:var(--fs-small);color:var(--ink-2);max-width:11em}
.acct .dash-stats strong{display:block;font-size:clamp(40px,5vw,60px);line-height:1;font-weight:560;letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums lining-nums;margin-bottom:6px}
.acct .dash-stats .is-soon strong{color:var(--warn)}
.acct .dash-layout:not(.settings-layout){max-width:none;gap:24px;margin-top:24px}
@media (min-width:1024px){.acct .dash-layout:not(.settings-layout):not(.is-empty){grid-template-columns:minmax(0,8fr) minmax(0,4fr);column-gap:40px;align-items:start}}
.acct .dash-main{order:1;min-width:0}
.acct .dash-side{order:2;min-width:0}
@media (min-width:1024px){.acct .dash-side{position:sticky;top:88px;align-self:start}}
.acct .dash-account{background:var(--sheet);border:1px solid var(--rule);padding:8px 20px}
.acct .dash-account p{margin:0;padding:14px 0;border-bottom:1px solid var(--rule);font-size:var(--fs-small);line-height:1.5;max-width:none}
.acct .dash-account p:last-child{border-bottom:0}
.acct .dash-label{display:block;font-size:var(--fs-label);line-height:16px;font-weight:600;font-stretch:88%;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin-bottom:4px}
.acct .dash-note{display:block;color:var(--ink-2);font-size:var(--fs-fine);line-height:1.45;margin-top:4px}
.acct .dash-account a{display:inline-flex;align-items:center;min-height:44px}
/* "Closing this week" repeats the first cards of the list under it word for word (critic 2): the head's figure says how many,
   each card says when. The box is not shown. */
.acct .dash-soon{display:none}
.acct .dash-soon ol{list-style:none;padding:0;display:grid;gap:0}
.acct .dash-soon a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink)}
@media (hover: hover) and (pointer: fine){.acct .dash-soon a:hover{color:var(--link-hover)}}
.acct .dash-soon li{display:grid;grid-template-columns:minmax(0,9.5em) minmax(0,1fr);gap:0 16px;align-items:center;min-height:44px;padding:2px 0;border-top:1px solid var(--rule);max-width:none}
.acct .soon-due{font-size:var(--fs-small);font-weight:600;color:var(--warn);font-variant-numeric:tabular-nums}
@media (max-width:559px){.acct .dash-soon li{grid-template-columns:minmax(0,1fr)}}
.acct .dash-group+.dash-group{margin-top:36px}
.acct .dash-count{margin-left:8px;font-size:var(--fs-small);font-weight:500;color:var(--ink-2);font-variant-numeric:tabular-nums}
.acct .bid-cards{display:grid;gap:12px;list-style:none;padding:0}
/* the account home on H0's ONE bid card (critic 3, fix 2): the card is his; a flag every card in a list carries is hidden */
.acct .d-acct-card{list-style:none}
.acct .bid-cards:not(:has(.d-acct-card:not(:has(.s-new)))) .status.s-new{display:none}
.acct .bid-cards .bid-card{position:relative;display:grid;gap:4px;padding:16px 20px 8px;background:var(--sheet);border:1px solid var(--rule);border-radius:8px;max-width:none}
.acct .bid-card.is-soon{box-shadow:inset 3px 0 0 var(--warn)}
/* a flag on every row says nothing: "New" and "Closes this week" show only where they separate rows of one list */
.acct .bid-cards:not(:has(.bid-card:not(.is-new))) .new-tag{display:none}
.acct .bid-cards:not(:has(.bid-card:not(.is-soon))) .due-soon{display:none}
.acct .bid-cards:not(:has(.bid-card:not(.is-soon))) .bid-card.is-soon{box-shadow:none}
/* one quiet action row: the agency's own listing is linked from the bid page */
.acct .bid-card-actions a[rel~=noopener]{display:none}
.acct .new-tag{justify-self:start;padding:2px 10px;border-radius:999px;background:var(--ok-tint);color:var(--ok);font-size:var(--fs-label);line-height:18px;font-weight:600;letter-spacing:.04em}
.acct .bid-card-title{display:flex;align-items:center;min-height:44px;font-size:var(--fs-lede);line-height:1.3;font-weight:600;color:var(--ink);overflow-wrap:anywhere}
@media (hover: hover) and (pointer: fine){.acct .bid-card-title:hover{color:var(--link-hover)}}
.acct .bid-card-meta{font-size:var(--fs-small);color:var(--ink-2)}
.acct .due-line{display:flex;flex-wrap:wrap;gap:2px 12px;font-size:var(--fs-small);margin-top:4px}
.acct .due-soon{color:var(--warn)}
.acct .due-when{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.acct .bid-card-actions{display:flex;flex-wrap:wrap;gap:0 20px}
.acct .bid-card-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--fs-small);color:var(--ink-2)}
@media (hover: hover) and (pointer: fine){.acct .bid-card-actions a:hover{color:var(--ink)}}
.acct :is(.acct-empty,.plan-panel){background:var(--sheet);border:1px solid var(--rule);padding:24px}
.acct .tier-form{margin:12px 0 0}
.acct .plan-subscribe{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:0;border-radius:6px;background:var(--ink);color:var(--paper);font:inherit;font-size:16px;font-weight:600;cursor:pointer}
@media (hover: hover) and (pointer: fine){.acct .plan-subscribe:hover{background:var(--ink-2)}}
.acct :is(.settings-saved,.free-week-badge){padding:12px 16px;background:var(--ok-tint);box-shadow:inset 3px 0 0 var(--ok);max-width:68ch;margin-bottom:16px}
.acct .other-bids{margin-top:36px}
/* pick a bid (/prepare): two pickers, then one card per bid; a row's action is ink-outlined, never red */
.acct .picks{display:grid;gap:16px;list-style:none;padding:0;margin:24px 0 0;max-width:920px}
.acct .pick{display:grid;gap:0;max-width:none}
.acct .pick .card{border-bottom-left-radius:0;border-bottom-right-radius:0}
.acct .pick-act{display:grid;gap:8px;padding:14px 20px 16px;background:var(--sheet);border:1px solid var(--rule);border-top:0;border-radius:0 0 8px 8px}
.acct .pick-act p{margin:0;font-size:var(--fs-small);line-height:1.5;max-width:none}
.acct .pick-why{color:var(--ink-2)}
.acct .pick-act form{margin:0}
@media (min-width:768px){.acct .pick-act:has(form){grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:24px}.acct .pick-act:has(form) .pick-why{grid-column:1}.acct .pick-act form{grid-column:2;grid-row:1/span 2}}
@media (max-width:767px){.acct .pick-act .btn{width:100%}}
.acct .cant{margin-top:28px;max-width:920px}
.acct .picks-tn{max-width:920px}
.acct .cant summary{color:var(--ink-2);font-size:var(--fs-small)}
.acct .cant .picks{margin-top:8px}
.acct .prep-alt{margin:0}
.acct .prep-alt a{display:inline-flex;align-items:center;min-height:44px}
.acct-page h1:not([class]){font-size:clamp(28px,3.2vw,40px);line-height:1.1;font-weight:600;letter-spacing:-.018em;word-spacing:.05em;text-wrap:balance;max-width:22em;margin-bottom:14px}
.acct .prep-pick{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:12px;max-width:640px;margin:20px 0 10px}
/* UI-FIXES U5 (C1 5, Astra prepare-ga-320-light): two pickers side by side left each 138 px at 320, and "Pick a county" was cut
   mid-word. On a phone each picker has the full width; wider, the trade (the long names) gets the wider column */
@media (max-width:479px){.acct .prep-pick{grid-template-columns:minmax(0,1fr)}}
.acct .prep-pick label{margin:0}
.acct .prep-pick .prep-go{grid-column:1/-1}
.js .acct .prep-pick .prep-go{display:none}
.acct .prep-line{font-size:var(--fs-lede);line-height:1.4;font-weight:600;color:var(--ink)}
.acct :is(.prep-terms,.prep-none,.prep-cls,.bid-row-sub,.prep-foot){font-size:var(--fs-small);line-height:1.5;color:var(--ink-2)}
.acct .prep-cls{color:var(--ink)}
.acct .prep-alt{display:inline-flex;align-items:center;min-height:44px}
.acct .prep-list{display:grid;gap:12px;margin:20px 0 0;max-width:860px}
.acct .prep-list .prep-card{display:grid;gap:8px;padding:18px 20px;background:var(--sheet);border:1px solid var(--rule);border-radius:8px;max-width:none}
.acct .prep-title{display:flex;align-items:center;min-height:44px;font-size:var(--fs-lede);line-height:1.3;font-weight:600;color:var(--ink);overflow-wrap:anywhere}
@media (hover: hover) and (pointer: fine){.acct .prep-title:hover{color:var(--link-hover)}}
.acct .prep-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:var(--fs-small);color:var(--ink-2)}
.acct .bid-chip{font-weight:600;color:var(--warn)}
.acct .prep-card form{margin:4px 0 0}
.acct .prep-buy{width:100%}
@media (min-width:640px){.acct .prep-buy{width:auto}}
.acct .prep-empty{margin-top:18px}
.acct .prep-count{margin:18px 0 0;font-weight:650;color:var(--ink)}
.acct .prep-foot{margin-top:32px;padding-top:16px;border-top:1px solid var(--rule)}
/* MAPNIT23 N6: Terms and Privacy are 44 px tap targets on a phone */
.acct .prep-foot a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
/* receipts, on the plan page: a ledger; the total is the one figure in the last column */
.acct .receipts{max-width:860px;margin-top:16px}
.acct .rc{font-size:var(--fs-small)}
.acct .rc th,.acct .rc td{padding:12px 16px 12px 0}
.acct .rc .r{text-align:right;padding-right:0}
.acct .rc td.r{color:var(--ink);font-weight:600}
.acct .rc .rc-tax{display:block;color:var(--ink-2);font-size:var(--fs-fine)}
.acct .receipts .field-help{margin-top:14px}
@media (max-width:639px){.acct .rc tbody th,.acct .rc tbody td{padding:0}.acct .rc tbody tr{grid-template-columns:minmax(0,1fr) auto;gap:2px 16px}.acct .rc tbody td:nth-child(3){grid-column:1/-1}.acct .rc tbody td.r{grid-column:2;grid-row:1;margin-top:0}}
/* the checkout review step: the slip says what will be charged, in the legal kit's own lines, then the box, then the one button */
.acct .pay-top{padding-bottom:28px}
.acct .pay-band{padding:36px 0 48px}
.acct .pay-band .slip{max-width:560px;margin:0 auto}
.acct .pay-band .bid-back{max-width:560px;margin:14px auto 0}
.acct .slip-hint{margin:0;font-size:var(--fs-small);color:var(--ink-2)}
.acct .slip .label{margin:0}
.acct .slip .stub-line{font-size:var(--fs-block);line-height:1.3;font-weight:600;max-width:none;margin:0}
.acct .slip .amt{margin:0}
.acct .slip-lines{display:grid;gap:0;border-top:1.5px solid var(--ink);margin:0}
.acct .slip-lines li{padding:11px 0;border-bottom:1px solid var(--rule);font-size:var(--fs-small);line-height:1.5;color:var(--ink);max-width:none}
.acct .slip .consent-box{margin:4px 0 0;padding:14px 16px;background:var(--well);font-size:var(--fs-body);font-weight:600;line-height:1.4;cursor:pointer}
.acct .slip .consent-box input{margin-top:1px}
.acct .slip .btn{justify-self:start}
.acct :is(.button.primary,.bid-cta):is(:disabled,[aria-disabled=true]){background:var(--well);color:var(--ink-3);box-shadow:inset 0 0 0 1px var(--rule-2);cursor:not-allowed}@media (hover: hover) and (pointer: fine){.acct :is(.button.primary,.bid-cta):is(:disabled,[aria-disabled=true]):hover{background:var(--well);color:var(--ink-3);box-shadow:inset 0 0 0 1px var(--rule-2);cursor:not-allowed}}   /* UI-FIXES U1: as system.css .btn */
.acct .slip .slip-state{margin:0}
.acct .slip>p{margin:0}   /* UI-FIXES U1: the grid's gap spaces the $199 slip's lines (kit 1's line + box are <p>s) */
@media (max-width:479px){.acct .slip .btn{justify-self:stretch}}
.acct .bp-pay-once{font-size:var(--fs-small);font-weight:600;color:var(--ink)}
/* paying: the slip on the left says what is charged, the form is on the right */
.acct .checkout-wrap{max-width:760px}
.acct :is(.checkout-form,.bp-pay-card){min-height:420px;padding:8px;margin-bottom:16px;border:1px solid var(--rule)}   /* no fill of its own: the page surface shows until the form mounts, and the form brings its own ground (critic 8) */
.acct .bp-pay-grid{display:grid;gap:20px}
.acct .bp-pay-summary{position:relative;background:var(--sheet);border:1px solid var(--rule);border-bottom:0;padding:24px 24px 34px;align-self:start}
.acct .bp-pay-summary::after{content:"";position:absolute;left:-1px;right:-1px;bottom:-1px;height:9px;
  background:radial-gradient(circle at 7px 9px,var(--paper) 4.6px,var(--rule) 4.6px,var(--rule) 5.6px,transparent 5.9px) 0 0/14px 9px repeat-x}
.acct .bp-pay-title{font-size:var(--fs-block);line-height:1.3;font-weight:600}
.acct .bp-pay-agency{color:var(--ink-2);font-size:var(--fs-small)}
.acct .bp-pay-price{font-size:56px;line-height:1;font-weight:600;letter-spacing:-.04em;font-variant-numeric:tabular-nums lining-nums;margin:18px 0 14px;padding-top:18px;border-top:1.5px solid var(--ink)}
@media (min-width:960px){.acct .bp-pay-grid{grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:40px;align-items:start}}
/* LOGINDOCS 7 (templates/_who_line.html): who submits, icon + a few words */
.who-line{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px;line-height:1.45}
.who-line .who-ico{flex:none;margin-top:1px}
