/* Broker Scenarios: the one look every page shares (restyle of 2026-11-11 and 12).

   Colours, type, the bar across the top, buttons, cards, form fields, tags, notices and tables are all here, once.
   Every page loads this file: the signed-in pages through core/base.html, the scenario desk (which adds desk.css for
   what only the desk needs), and the public AE questionnaire. The owner admin does not use it.

   Nothing is loaded from another site: system fonts only, and the small pictures (the house mark beside the name, the
   arrow in a dropdown) are drawn in this file.

   Order: colours and type; the bar; buttons; cards, tags and notices; form fields; the page and its heading; tables;
   forms written by Django; small one-off parts; the AE questionnaire; narrow windows. */

/* ---------- colours and type ---------- */
:root{
  color-scheme:light;
  --bg:#f1f5f3; --surface:#ffffff; --surface-2:#f5f8f7;
  --ink:#16242c; --ink-2:#34434c; --muted:#5b6871;
  --line:#dbe3e0; --line-strong:#84929d;                 /* line-strong: the edge of a field or button, readable against white */
  /* green is the brand: the bar across the top, the main button, whatever is chosen, and the answer */
  --accent:#1d6b57; --accent-dark:#165444; --accent-ink:#ffffff; --accent-soft:#e4f1ec; --accent-line:#b4d6c9;
  /* blue is for the numbers and for helpful notes; gold, with green and red, for how something stands */
  --info:#1f5c8a; --info-soft:#e8f1f9; --info-line:#bdd5ea;
  --ok:#1f6a36; --ok-soft:#e4f3e8; --ok-dot:#2e9e4f;
  --warn:#8a5300; --warn-soft:#fcf0d9; --warn-line:#ecd49c; --warn-dot:#e0a100;
  --bad:#ad2a22; --bad-soft:#fbe7e5; --bad-line:#efc2bd; --bad-dot:#d0453b;
  --radius:8px; --radius-lg:12px;
  --shadow:0 1px 2px rgba(22,36,44,.06),0 1px 3px rgba(22,36,44,.04);
  --font:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,Consolas,monospace;
  --display:var(--font); --body:var(--font);
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
/* the page: a soft green wash under the bar that fades into the page colour */
body{margin:0;background:var(--bg) linear-gradient(180deg,#dcede6,var(--bg)) 0 0/100% 380px no-repeat;color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.5;overflow-wrap:break-word}
h1,h2,h3{margin:0;line-height:1.25;letter-spacing:-.01em}
h1{font-size:28px;font-weight:700}
h2{font-size:18px;font-weight:700}
a{color:var(--accent);text-underline-offset:2px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* ---------- the bar across the top: the name (the way back to the scenario list), where you can go, who you are, sign out ---------- */
.sitebar{display:flex;flex-wrap:wrap;align-items:center;gap:4px 24px;min-height:58px;padding:6px max(24px,env(safe-area-inset-left,0px));background:var(--accent) linear-gradient(90deg,#185c4b,#1d6b57 45%,#23795f);color:#fff;box-shadow:0 1px 3px rgba(22,36,44,.18)}
.sitebar :focus-visible{outline-color:#fff}
.logo{display:inline-flex;align-items:center;gap:10px;font-size:17px;font-weight:700;letter-spacing:-.01em;color:#fff;text-decoration:none;white-space:nowrap;border-radius:var(--radius)}
.logo::before{content:"";flex:none;width:26px;height:26px;border-radius:7px;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3.5 11.4 12 4l8.5 7.4V19a1 1 0 0 1-1 1h-4.6v-5.4H9.1V20H4.5a1 1 0 0 1-1-1z' fill='%231d6b57'/%3E%3C/svg%3E") center/17px 17px no-repeat}
.sitenav{display:flex;flex-wrap:wrap;gap:2px}
.sitenav a{padding:7px 12px;border-radius:var(--radius);color:#fff;font-weight:600;text-decoration:none}
.sitenav a:hover{background:rgba(255,255,255,.16)}
.sitebar .who{margin-left:auto;color:#e6f2ee;font-size:13.5px}
.sitebar .acct{margin-left:-12px;padding:4px 2px;border-radius:6px;color:#fff;font-size:13.5px;font-weight:600;text-decoration:none}
.sitebar .acct:hover{text-decoration:underline}
/* where you are: a darker patch behind the word, with a white line under it */
.sitenav a[aria-current],.sitebar .acct[aria-current]{background:rgba(8,38,30,.38);box-shadow:inset 0 -2px 0 rgba(255,255,255,.9)}
.sitebar .acct[aria-current]{padding:4px 9px}
.sitebar .acct[aria-current]:hover{text-decoration:none}      /* "Security": used now and then, so it sits quietly beside the name */
.signout{margin:0}
.signout button{min-height:34px;padding:5px 12px;border:1px solid rgba(255,255,255,.6);background:transparent;color:#fff;font-size:14px;font-weight:600}
.signout button:hover{background:rgba(255,255,255,.16);border-color:#fff}

/* ---------- buttons: one filled button for the main thing to do, outlined for the rest ---------- */
button,.btn{font:inherit;font-weight:600;line-height:1.2;cursor:pointer;min-height:40px;padding:9px 16px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
button:hover,.btn:hover{border-color:var(--ink-2);background:var(--surface-2)}
button.primary,.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
button.primary:hover,.btn.primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}
button.ghost{border-color:transparent;background:transparent;color:var(--accent)}
button.ghost:hover{background:var(--accent-soft);border-color:transparent}
button.danger{color:var(--bad)}
button.danger:hover{border-color:var(--bad);background:var(--bad-soft)}
button.small{min-height:32px;padding:5px 11px;font-size:13.5px}
button.link{min-height:0;padding:0;border:0;background:none;color:var(--accent);text-decoration:underline;text-underline-offset:2px}
button:disabled{opacity:.5;cursor:default}

/* ---------- cards, tags, notices, small text ---------- */
.panel,.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.card{padding:20px 20px 22px;margin:0 0 20px}
.card>h2{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.card>h2::before{content:"";flex:none;align-self:flex-start;width:5px;height:20px;margin-top:1px;border-radius:3px;background:var(--accent)}
.card>h1{font-size:24px;margin:0 0 12px}
.card>:last-child,.card>form>:last-child{margin-bottom:0}
/* a card on its own in the middle of the page: signing in, choosing a password, setting up the sign-in code */
.card.narrow,.card.mid{margin:36px auto;border-top:4px solid var(--accent)}
.card.narrow{max-width:440px}
.card.mid{max-width:580px}
.card.narrow form>button.primary{width:100%;min-height:46px}
.addform{max-width:460px}
.tag,.pill{display:inline-flex;align-items:center;font-size:12.5px;font-weight:600;line-height:1.3;padding:2px 10px;border-radius:999px;background:var(--surface-2);color:var(--muted);border:1px solid var(--line);white-space:nowrap}
.tag.ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}
.tag.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent;white-space:normal;border-radius:11px}
.tag.bad{background:var(--bad-soft);color:var(--bad);border-color:transparent}
.tag.on{background:var(--accent-soft);color:var(--accent);border-color:transparent}
.tag.on::before{content:"";width:7px;height:7px;margin-right:6px;border-radius:50%;background:var(--ok-dot)}
/* where a scenario stands */
.pill.s-Working{background:var(--warn-soft);color:var(--warn);border-color:transparent}
.pill.s-Sent{background:var(--info-soft);color:var(--info);border-color:transparent}
.pill.s-Approved,.pill.s-Closed{background:var(--ok-soft);color:var(--ok);border-color:transparent}
.pill.s-Not{background:var(--bad-soft);color:var(--bad);border-color:transparent}
.mini,.hint{font-size:13.5px;color:var(--muted)}
.fine{font-size:12.5px;line-height:1.45;color:var(--muted);margin:0}
.sub-h{font-size:14px;font-weight:700;line-height:1.3;letter-spacing:0;color:var(--ink);margin:4px 0 6px}
.empty{color:var(--muted);font-size:14px;padding:16px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-2)}
.banner{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);font-size:14.5px}
.banner b{font-weight:700}
/* a message the site gives after something was done, or about something that needs doing */
.msg,.notice,.problems{margin:0 0 16px;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--info-line);background:var(--info-soft);color:var(--ink)}
.msg.success{background:var(--ok-soft);border-color:#b9dcc3;color:#174f29}
.msg.error,.problems{background:var(--bad-soft);border-color:var(--bad-line);color:var(--bad)}
.msg.warning,.notice{background:var(--warn-soft);border-color:var(--warn-line);color:#5c3800}
.msg a{color:inherit;font-weight:600}

/* ---------- form fields: the label sits above the box, in words that can be read without squinting ---------- */
input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=tel],input[type=url],select,textarea{
  display:block;width:100%;min-height:44px;padding:9px 12px;font:inherit;font-size:16px;color:var(--ink);background-color:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius)}
input[type=text]:hover,input[type=email]:hover,input[type=password]:hover,input[type=search]:hover,input[type=number]:hover,input[type=tel]:hover,input[type=url]:hover,select:hover,textarea:hover{border-color:var(--ink-2)}
input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--accent);outline-offset:1px}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.85}
select{appearance:none;-webkit-appearance:none;padding-right:36px;text-overflow:ellipsis;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%235b6871' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center}
textarea{min-height:112px;resize:vertical;line-height:1.5}
input[type=checkbox],input[type=radio]{flex:none;width:18px;height:18px;margin:0;accent-color:var(--accent)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:16px}
.field{display:flex;flex-direction:column;min-width:0}
.field.wide{grid-column:span 2}
.field.full{grid-column:1 / -1}
.field>label,.group-label{display:block;margin:0 0 6px;font-size:13.5px;font-weight:600;line-height:1.3;color:var(--ink-2)}
.req{color:var(--bad);font-weight:700}
.ctl{position:relative;margin-top:auto}           /* margin-top:auto keeps the boxes of one row level when a label takes two lines */
.field.money input{padding-left:27px}
.field.pct input{padding-right:32px}
.affix{position:absolute;top:0;bottom:0;display:flex;align-items:center;color:var(--muted);font-size:16px;pointer-events:none}
.affix.pre{left:12px}.affix.post{right:12px}
/* choices that can each be on or off, shown as rounded buttons */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;display:inline-flex;margin:0}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 14px;border-radius:18px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:14px;font-weight:400;line-height:1.3;cursor:pointer;user-select:none}
.chip:hover span{border-color:var(--ink-2);background:var(--surface-2)}
.chip input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.chip input:checked+span::before{content:"\2713";font-weight:700}
.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}

/* ---------- the page and its heading ---------- */
.page{max-width:1040px;margin:0 auto;padding-block:28px 64px;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
/* ":where" keeps these plain rules weak, so a part with a rule of its own (a tag, a notice, a rounded choice) always wins */
:where(.page) p{margin:0 0 14px}
:where(.page) ol,:where(.page) ul{margin:0 0 14px;padding-left:22px}
:where(.page) li{margin:0 0 6px}
:where(.page) label{display:block;margin:0 0 6px;font-size:13.5px;font-weight:600;line-height:1.3;color:var(--ink-2)}
.pagehead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 24px;margin:0 0 24px}
.pagehead p{margin:6px 0 0;color:var(--muted);font-size:16px}
.actions{display:flex;gap:8px;align-items:center}
.actions>button,.actions>.btn{min-height:44px;padding:10px 20px}
.actions>.primary{padding:10px 26px;box-shadow:0 1px 2px rgba(22,36,44,.2)}
.row-actions{display:flex;gap:8px;flex-wrap:wrap}

/* ---------- tables: a list on a wide screen; in a narrow window a "stack" table turns each row into its own block ---------- */
.tablewrap{overflow-x:auto}
.page table{width:100%;border-collapse:collapse;font-size:14.5px}
.page th,.page td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}
.page th{padding-block:9px;font-size:13px;font-weight:700;color:var(--muted);background:var(--surface-2)}
.page th:first-child{border-radius:var(--radius) 0 0 0}
.page th:last-child{border-radius:0 var(--radius) 0 0}
.page tbody tr:last-child td{border-bottom:0}
.page td.first{font-weight:600}
.page td .tag,.page td .pill{margin:1px 0}
.page td.rowacts{text-align:right;white-space:nowrap}
.rowacts form{display:inline-block;margin:2px 0 2px 6px;text-align:left;vertical-align:middle}
.page td.nowrap{white-space:nowrap}

/* ---------- forms written by Django ("as_p": a paragraph for each box) ---------- */
.helptext{display:block;margin-top:5px;font-size:13px;color:var(--muted)}
.helptext ul{margin:4px 0 0;padding-left:18px}
:where(.page) form ul{font-size:13.5px;color:var(--muted)}      /* the rules for a new password, listed under its box */
.card>form+p{margin-top:14px}
ul.errorlist{list-style:none;margin:0 0 6px;padding:0;font-size:13.5px;font-weight:600;color:var(--bad)}

/* ---------- small one-off parts ---------- */
input.copy{font-family:var(--mono);font-size:13.5px;background-color:var(--surface-2)}
input.short{max-width:220px}
.mono{font-family:var(--mono);letter-spacing:.04em}
.qr{display:flex;justify-content:center;margin:8px 0 14px}
.qr svg{max-width:100%;height:auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
ul.codes{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:360px}
ul.codes li{margin:0;padding:8px 10px;text-align:center;white-space:nowrap;background:var(--surface-2);border:1px solid var(--line);border-radius:6px}
@media (max-width:400px){ul.codes{grid-template-columns:1fr}}
.countform{display:flex;flex-wrap:wrap;gap:0 16px;align-items:flex-end;margin-bottom:8px}
.countform p{flex:1 1 220px}
.countform button{margin-bottom:14px}
/* the Results page (the brokerage's manager view): the month picker beside the heading, and the month's figures as tiles */
.monthpick{display:flex;gap:8px;align-items:flex-end}
.monthpick label{margin:0 0 4px}
.monthpick select{min-width:170px}
.figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:10px;margin:0 0 14px}
.figure{padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}
.figure b{display:block;font-size:26px;line-height:1.15;color:var(--ink)}
.figure span{display:block;margin-top:2px;font-size:13.5px;font-weight:600;color:var(--ink-2)}
.figure small{display:block;margin-top:2px;font-size:12.5px;color:var(--muted)}
.attest{display:flex;gap:8px;align-items:flex-start;max-width:340px;margin:0 0 8px;font-size:13.5px;font-weight:400;color:var(--ink);white-space:normal}

/* ---------- the AE questionnaire: a long form made to feel short. A line shows its other boxes only once it is answered. ---------- */
.qpage{max-width:900px}
.problems{padding-left:34px}
.problems li{margin:0 0 4px}
.pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:0 16px}
.ticks{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 12px}
.radio label,.agree{display:flex;gap:9px;align-items:flex-start;margin:0;font-size:14.5px;font-weight:400;color:var(--ink);cursor:pointer}
.radio label{margin:0 0 10px}
.radio input,.agree input{margin-top:2px}
.agree{margin:0 0 16px;padding:14px 16px;border:1px solid var(--accent-line);border-radius:var(--radius);background:var(--accent-soft);font-size:15px}
.qrow{padding:14px 0;border-top:1px solid var(--line)}
.qcols+.qrow{border-top:0;padding-top:6px}
.qhead{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;justify-content:space-between}
.qlabel{flex:1 1 280px;min-width:0;font-weight:600}
.qlabel .hint{font-weight:400}
.qanswer{flex:0 1 230px;min-width:0;margin:0}
/* "Any flexibility?" is said once above the column of answers; each line still carries it for a screen reader */
.qcols{display:flex;justify-content:flex-end;margin:0 0 -4px;font-size:13px;font-weight:700;color:var(--muted)}
.qcols span{flex:0 1 230px}
.qq{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.qmore{margin-top:12px;padding:14px 14px 4px;border-radius:var(--radius);background:var(--surface-2)}
.js .qrow:not(.answered) .qmore{display:none}
.qfields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:0 16px}
.qfields p{margin:0 0 12px}
.qfields p.wide{grid-column:1 / -1}
.qmore .chip span{min-height:32px;padding:4px 12px;font-size:13.5px}
details.helps{margin:0 0 10px;font-size:14px}
details.helps>summary,details.qgroup>summary{cursor:pointer;font-weight:600;border-radius:6px}
details.helps>summary{color:var(--accent)}
/* a loan type, shut until it is opened */
details.qgroup{margin:0 0 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
details.qgroup[open]{border-color:var(--accent-line)}
details.qgroup>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:13px 16px;font-size:16px;color:var(--ink)}
details.qgroup>summary::-webkit-details-marker{display:none}
details.qgroup>summary::before{content:"";flex:none;width:8px;height:8px;margin:0 2px 0 3px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
details.qgroup[open]>summary::before{transform:rotate(45deg)}
details.qgroup>summary:hover{background:var(--surface-2)}
details.qgroup[open]>summary{border-bottom:1px solid var(--line)}
details.qgroup>.qrows{padding:4px 16px 6px}
/* a section, loan type or line the lender does not offer (the page's script sets "hidden"; see lender_form.html) */
.qform [hidden]{display:none!important}
details.helps>.hint{margin:6px 0 8px}
/* the lender's own matrix number, under the words of a line that starts from it */
.qmatrix{display:block;margin-top:3px;font-size:13.5px;font-weight:600;color:var(--accent)}
.qsub{margin:18px 0 4px;font-size:16px}
.rrow{padding:14px 0 2px;border-top:1px solid var(--line)}
.card>.rrow:first-of-type{border-top:0;padding-top:0}
.send{width:100%;max-width:520px;min-height:52px;font-size:16.5px;white-space:normal}

/* ---------- narrow windows and phones ---------- */
@media (max-width:720px){
  table.stack thead{display:none}
  table.stack,table.stack tbody,table.stack tr,table.stack td{display:block;width:100%}
  table.stack tr{padding:12px 0;border-bottom:1px solid var(--line)}
  table.stack tbody tr:first-child{padding-top:2px}
  table.stack tbody tr:last-child{border-bottom:0;padding-bottom:0}
  table.stack td{padding:3px 0;border:0}
  table.stack td:empty{display:none}
  table.stack td[data-label]::before{content:attr(data-label) ": ";font-size:13px;font-weight:600;color:var(--muted)}
  /* the monthly count: its cells are written without a label of their own (a test reads them exactly), so the label is added here */
  table.counts td:nth-child(2):not(.hint)::before{content:"Loans submitted: ";font-size:13px;font-weight:600;color:var(--muted)}
  table.counts td:nth-child(3):not(:empty)::before{content:"Entered: ";font-size:13px;font-weight:600;color:var(--muted)}
  table.stack td.first{font-size:16px}
  .page td.rowacts{text-align:left;white-space:normal}
  .page td.nowrap{white-space:normal}
  .rowacts form{margin:6px 8px 0 0}
}
@media (max-width:640px){
  /* the name and Sign out on the first line, the pages under them, then who is signed in */
  .sitebar{gap:0 12px;padding:8px max(12px,env(safe-area-inset-left,0px)) 6px}
  .logo{order:1;flex:1;font-size:15.5px;gap:7px}
  .logo::before{width:22px;height:22px;border-radius:6px;background-size:15px 15px}
  .signout{order:2}
  .signout button{min-height:30px;padding:3px 9px;font-size:13px}
  .sitenav{order:3;flex-basis:100%;margin-left:-10px}
  .sitenav:empty{display:none}
  .sitenav a{padding:6px 10px}
  .sitebar .who{order:4;flex:1 1 0;min-width:0;margin:0;padding:2px 0 4px;font-size:13px}
  .sitebar .logo+.who{flex-basis:100%}
  .sitebar .acct{order:5;margin:0;font-size:13px}
  h1{font-size:24px}
  .page{padding-block:20px 48px;padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}
  .pagehead{margin-bottom:18px}
  .pagehead p{font-size:15px}
  .actions{width:100%;gap:6px}
  .actions>.primary{flex:1}
  .card{padding:16px 14px 18px}
  .card.narrow,.card.mid{margin:16px auto}
  .page th,.page td{padding:9px 8px}
  .qmore{padding:12px 12px 2px}
  .qcols{display:none}
  .qq{position:static;width:auto;height:auto;overflow:visible;clip-path:none;white-space:normal}
  .qanswer{flex:1 1 100%}
  details.qgroup>summary{padding:12px}
  details.qgroup>.qrows{padding:4px 12px 6px}
  .send{max-width:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}

/* ---------- scenarios sent to a lender, waiting for how it ended (Scenarios page), and the AE boxes on the Lenders page ---------- */
.waitlist{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--radius)}
.waitlist li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 12px;border-bottom:1px solid var(--line)}
.waitlist li:last-child{border-bottom:0}
.waitlist .lab{flex:1 1 200px;min-width:0;font-weight:600}
.waitlist small{display:block;font-size:12.5px;font-weight:400;color:var(--muted)}
.waitlist .acts{display:flex;flex-wrap:wrap;gap:6px}
.rowacts form.aeform input{width:170px;min-height:32px;padding:4px 8px;font-size:13.5px;margin-right:4px}
