/* The journey's new-deal lane (leap, 8 November 2026): serves BOTH the Check a deal form (check.html) and the draft page
   (draft.html). Ported from the round 9 boards' kit (docs/design_handoff/reform_redraw_2026-10-26/kit/redraw.css and
   round9.css): every rd-*, r9-* and u4-* rule the boards home, first-answer and deal-plan use, with the kit's own
   selectors and values so the board and the page cannot drift. Colours only through var(--r-*); the three tokens the
   shell does not define are given below. Every tap target is 44px or more; a page works at 375px. */
:root{--r-wash:var(--r-tint);--r-on-dark:var(--r-surface);--r-spring:cubic-bezier(.2,.9,.25,1.15)}
/* redraw.css */
.num,.rd-fig,td.n,th.n{font-variant-numeric:tabular-nums}
.rd-muted{color:var(--r-muted)}
.rd-path{position:relative;width:100%;height:var(--h,320px)}
.rd-path svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rd-legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px;color:var(--r-muted);margin-top:10px}
.rd-legend span{display:inline-flex;align-items:center;gap:8px}
.rd-legend i{display:inline-block;width:22px;height:3px;background:var(--r-ink)}
.rd-legend i.was{background:var(--r-muted);height:2px}
.rd-legend i.min{background:var(--r-anchor);height:2px}
.rd-legend i.under{height:10px;width:14px;background:var(--r-breach)}
.rd-table{width:100%;border-collapse:collapse;font-size:15px}
.rd-table caption{text-align:left;font:700 12px/1.3 var(--r-font);letter-spacing:.12em;text-transform:uppercase;color:var(--r-muted);padding:0 0 10px}
.rd-table th,.rd-table td{text-align:left;padding:10px 6px;border-bottom:1px solid var(--r-rule);vertical-align:middle}
.rd-table thead th{font-size:13px;color:var(--r-muted);font-weight:700;border-bottom:2px solid var(--r-ink)}
.rd-table td.n,.rd-table th.n{text-align:right;white-space:nowrap}
.rd-table tr.under td.n:last-child{color:var(--r-breach);font-weight:700}
.rd-table tr.is-break td{box-shadow:inset 0 -2px 0 var(--r-breach)}
.rd-table .r-stamp{font-size:11px;padding:4px 5px}
.rd-table tfoot td{border-bottom:0;padding-top:10px;color:var(--r-muted);font-size:14px}
.rd-live{min-height:28px;font-weight:700}
.rd-table thead .r-stamp{margin-left:6px;vertical-align:1px}
.rd-answer{display:flex;flex-direction:column;gap:22px}
.rd-profit{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 22px}
.rd-profit .rd-fig{font:700 clamp(52px,6.4vw,88px)/.86 var(--r-font);letter-spacing:-.055em}
.rd-profit .rd-of{font:700 clamp(20px,1.8vw,26px)/1.2 var(--r-font);letter-spacing:-.015em;max-width:24ch}
.rd-sticky{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:767px){.rd-profit .rd-fig{font-size:52px}.rd-sticky{position:sticky;bottom:0;z-index:15;background:var(--r-surface);margin:0 -16px;padding:10px 16px 14px;border-top:3px solid var(--r-ink);flex-direction:column}.rd-sticky .rd-btn{width:100%}}
.rd-seal{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:18px 20px;background:var(--r-ink);color:var(--r-surface)}
.rd-seal code{font:700 26px/1 ui-monospace,Menlo,monospace;letter-spacing:.08em;color:var(--r-signal)}
.rd-tabs{display:flex;gap:0;box-shadow:inset 0 -2px 0 var(--r-rule)}
.rd-tabs a{display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 18px;font-weight:700;text-decoration:none;color:var(--r-muted);box-shadow:inset 0 -4px 0 transparent}
.rd-tabs a[aria-current="page"]{color:var(--r-ink);box-shadow:inset 0 -4px 0 var(--r-anchor)}
.rd-tabs a span{display:inline-grid;place-items:center;min-width:28px;height:26px;padding:0 6px;background:var(--r-page);font-size:15px}
.rd-frozen{background:var(--r-surface);border-top:3px solid var(--r-ink);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.rd-frozen>div{padding:20px 24px;display:flex;flex-direction:column;gap:12px}
.rd-frozen>div+div{box-shadow:inset 1px 0 0 var(--r-rule)}
.rd-frozen blockquote{margin:0;padding:0 0 0 16px;box-shadow:inset 4px 0 0 var(--r-ink);font-size:19px;line-height:1.5}
.rd-events{list-style:none;margin:0;padding:0;background:var(--r-surface);border-top:3px solid var(--r-ink)}
.rd-events li{display:grid;grid-template-columns:150px 28px minmax(0,1fr);gap:14px;align-items:start;padding:14px 20px;border-bottom:1px solid var(--r-rule);font-size:17px;position:relative}
.rd-events li i{width:14px;height:14px;margin-top:5px;background:var(--r-ink)}
.rd-events li i.v{background:var(--r-signal);box-shadow:inset 0 0 0 2px var(--r-ink)}
.rd-events li i.n{background:transparent;box-shadow:inset 0 0 0 2px var(--r-ink)}
.rd-events li time{color:var(--r-muted);font-variant-numeric:tabular-nums}
.rd-restore{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding:16px 20px;background:var(--r-wash);box-shadow:inset 4px 0 0 var(--r-signal)}
.rd-restore[hidden]{display:none}
@media (max-width:767px){.rd-events li{grid-template-columns:22px minmax(0,1fr);gap:4px 10px}.rd-events li time{grid-column:2}.rd-events li i{grid-row:1/span 2}}
.rd-field{display:flex;flex-direction:column;gap:8px}
.rd-field>label,.rd-field>legend{font-weight:700;padding:0}
.rd-field .hint{color:var(--r-muted);font-size:15px;line-height:1.4}
.rd-field input[type=text],.rd-field input[type=number],.rd-field select,.rd-field textarea{min-height:52px;padding:0 14px;border:0;box-shadow:inset 0 0 0 2px var(--r-ink);background:var(--r-surface);font-size:19px;font-weight:700;border-radius:0;width:100%;max-width:340px}
.rd-field textarea{max-width:none;min-height:150px;padding:12px 14px;font:400 15px/1.5 ui-monospace,Menlo,monospace}
.rd-field input:focus,.rd-field select:focus,.rd-field textarea:focus{outline:3px solid var(--r-signal);outline-offset:2px}
.rd-pre{display:flex;align-items:center;max-width:340px;box-shadow:inset 0 0 0 2px var(--r-ink);background:var(--r-surface)}
.rd-pre span{padding:0 0 0 14px;font-weight:700;font-size:19px}
.rd-pre input{box-shadow:none !important}
.rd-field.err{padding-left:16px;box-shadow:inset 5px 0 0 var(--r-breach)}
.rd-field.err .rd-pre,.rd-field.err input[type=text]{box-shadow:inset 0 0 0 3px var(--r-breach)}
.rd-choice{display:flex;flex-wrap:wrap;gap:0;box-shadow:inset 0 0 0 2px var(--r-ink);align-self:flex-start;max-width:100%}
.rd-choice label{position:relative;display:inline-flex;align-items:center;min-height:48px;padding:0 16px;font-weight:700;cursor:pointer}
.rd-choice input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.rd-choice label:has(input:checked){background:var(--r-ink);color:var(--r-surface)}
.rd-choice label:has(input:focus-visible){outline:3px solid var(--r-signal);outline-offset:2px;z-index:1}
.rd-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 24px;background:var(--r-signal);color:var(--r-ink);border:0;font-weight:700;font-size:17px;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}
.rd-btn:hover{background:var(--r-ink);color:var(--r-signal)}
.rd-btn-ink{background:var(--r-ink);color:var(--r-surface)}
.rd-btn-ink:hover{background:var(--r-anchor);color:var(--r-surface)}
.rd-btn-line{background:transparent;box-shadow:inset 0 0 0 2px var(--r-ink);color:var(--r-ink)}
.rd-btn-line:hover{background:var(--r-ink);color:var(--r-surface)}
.rd-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.rd-eyebrow{font:700 12px/1.2 var(--r-font);letter-spacing:.14em;text-transform:uppercase;color:var(--r-muted)}
.rd-cya{background:var(--r-surface);border-top:3px solid var(--r-ink)}
.rd-cya h2{padding:18px 24px 6px}
.rd-cya dl{margin:0;display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,1.4fr) auto}
.rd-cya dt,.rd-cya dd{margin:0;padding:14px 24px;border-bottom:1px solid var(--r-rule)}
.rd-cya dt{font-weight:700}
.rd-cya dd{font-variant-numeric:tabular-nums}
.rd-cya dd.ch{text-align:right}
.rd-cya dd.ch a{font-weight:700}
.rd-panel{background:var(--r-surface);border-top:3px solid var(--r-ink);padding:24px}
.rd-versions{display:flex;align-items:center;gap:0;position:relative;padding:28px 8px 8px;overflow-x:auto}
.rd-versions::before{content:"";position:absolute;left:8px;right:8px;top:39px;height:3px;background:var(--r-ink)}
.rd-ver{position:relative;flex:1;min-width:110px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:none;border:0;padding:0 8px 0 0;cursor:pointer;text-align:left}
.rd-ver i{width:24px;height:24px;background:var(--r-surface);box-shadow:inset 0 0 0 3px var(--r-ink);position:relative;z-index:1;transition:background .2s}
.rd-ver[aria-pressed="true"] i{background:var(--r-signal)}
.rd-ver b{font-size:15px}
.rd-ver span{font-size:13px;color:var(--r-muted);line-height:1.3}
.rd-ver.frozen i{background:var(--r-ink)}
.rd-ver.frozen[aria-pressed="true"] i{background:var(--r-signal)}
@media (max-width:767px){.rd-cya dl{grid-template-columns:1fr auto}.rd-cya dt{grid-column:1/-1;border-bottom:0;padding:12px 16px 0}.rd-cya dd{padding:4px 16px 12px}.rd-cya h2{padding:16px 16px 4px}}
@media (max-width:767px){.rd-sticky{flex-direction:row;padding:8px 16px 10px}.rd-sticky .rd-btn{min-height:52px}.rd-sticky .rd-btn+.rd-btn{display:none}}
.rd-inrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rd-suf{font-weight:700;font-size:17px}
.rd-twocol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 24px}
.rd-field input[type=text]{max-width:220px}
.rd-pre{max-width:240px;width:100%}
.rd-pre input{max-width:none !important;flex:1;min-width:0}
fieldset.rd-field>.rd-field{margin-top:14px;padding-left:16px;box-shadow:inset 3px 0 0 var(--r-rule)}
@media (max-width:767px){.rd-twocol{grid-template-columns:1fr;gap:22px}}
html[data-cap] .rd-pre{box-shadow:none;outline:2px solid var(--r-ink);outline-offset:-2px}
html[data-cap] .rd-choice{flex-wrap:nowrap}
html[data-cap] .rd-choice label{white-space:nowrap}
.rd-table{font-size:17px}
.rd-table th,.rd-table td{font-size:17px}
.rd-table thead th{font-size:17px;vertical-align:bottom}
.rd-table caption{font-size:17px;letter-spacing:0;text-transform:none;font-weight:700;color:var(--r-ink)}
.rd-table tfoot td{font-size:17px}
.rd-table thead th.n{white-space:normal}
.rd-capstamps{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:8px;font-weight:400;color:var(--r-muted);vertical-align:middle}
.rd-profit .rd-of{max-width:36ch}
.rd-table tfoot td{line-height:2}
.rd-given{font-size:17px;color:var(--r-muted);font-style:normal}
.rd-signedin{box-shadow:none;padding:0 4px}
.rd-avatar{display:inline-grid;place-items:center;width:32px;height:32px;background:var(--r-anchor);color:var(--r-surface);font-size:13px;letter-spacing:.04em}
.rd-frozen .rd-table{table-layout:fixed}
.rd-frozen .rd-table td.n,.rd-frozen .rd-table th.n{white-space:normal}
.rd-events a{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:767px){.rd-answer{gap:12px}.rd-profit{gap:4px 12px}.rd-profit .rd-fig{font-size:40px}.rd-profit .rd-of{font-size:17px;max-width:none}.rd-sticky{min-height:64px;padding:6px 16px;align-items:center}.rd-sticky .rd-btn{min-height:52px;width:100%}}
@media (max-width:767px){.rd-profit .rd-fig{font-size:34px}.rd-sticky{transition:transform .25s ease-out}.rd-sticky.is-tucked{transform:translateY(110%)}}
/* round9.css */
.r9-note{margin:0;padding:10px 14px;border:2px dashed var(--r-muted);color:var(--r-muted);font-size:15px;line-height:1.45;max-width:80ch}
.r9-note b{color:var(--r-ink)}
.r9-dealhead{display:flex;flex-direction:column;gap:10px}
.r9-dealtitle{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.r9-dealtitle .u4-word{margin:0}
.r9-dealhead .r-lead{margin:0;max-width:66ch}
.r9-tabs{margin-top:-24px}
.r9-rule{margin:0;padding:12px 16px;background:var(--r-wash);box-shadow:inset 4px 0 0 var(--r-signal);font-size:17px;max-width:72ch}
.u4-word.run{background:var(--r-anchor)}
.u4-word.draft{background:var(--r-surface);color:var(--r-ink);box-shadow:inset 0 0 0 2px var(--r-ink)}
.u4-word.done{background:var(--r-rule);color:var(--r-ink)}
.u4-word.cancel{background:var(--r-surface);color:var(--r-muted);box-shadow:inset 0 0 0 2px var(--r-muted)}
.r9-home{display:flex;flex-direction:column;gap:12px;max-width:72ch}
.r9-start{display:flex;flex-direction:column;gap:22px;border-top:4px solid var(--r-ink)}
.r9-start h2{margin:0}
.r9-start .rd-twocol{align-items:start}
.r9-empty{display:flex;flex-direction:column;gap:8px;padding:24px;border:2px dashed var(--r-rule);color:var(--r-muted);font-size:17px}
.r9-empty b{color:var(--r-ink)}
.r9-ghost{height:120px;margin-top:8px;background:linear-gradient(to top,var(--r-rule) 2px,transparent 2px) 0 0/100% 40px}
.r9-step{display:flex;flex-direction:column;gap:18px;background:var(--r-surface);border-top:4px solid var(--r-anchor);padding:22px 24px}
.r9-step h2{margin:0}
.r9-step p{margin:0;max-width:66ch}
.r9-step .rd-twocol{grid-template-columns:repeat(3,minmax(0,1fr))}
.r9-saved{display:flex;align-items:center;gap:10px;font-size:16px;color:var(--r-muted)}
.r9-saved::before{content:"";width:12px;height:12px;background:var(--r-anchor);flex:none}
@media (max-width:900px){.r9-step .rd-twocol{grid-template-columns:1fr}}
@media (max-width:767px){.r9-step{padding:18px 16px}}
.rd-cya dd .rd-given{margin-left:6px}
.r9-cya-note{margin:0;padding:12px 24px 16px;color:var(--r-muted);font-size:16px}
@media (max-width:767px){.r9-cya-note{padding:10px 16px 14px}}
.r9-date{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.r9-date legend{font-weight:700;padding:0;margin-bottom:4px}
.r9-date .hint{color:var(--r-muted);font-size:16px}
.r9-boxes{display:flex;flex-wrap:wrap;gap:12px}
.r9-boxes label{display:flex;flex-direction:column;gap:4px;font-size:16px}
.r9-boxes input[type=text]{width:64px !important;min-width:0}
.r9-boxes .r9-y input[type=text]{width:96px !important}
@media (max-width:767px){.u5-full .rd-table{font-size:15px}.u5-full .rd-table th,.u5-full .rd-table td{padding:8px 4px}.u5-full .rd-table thead th{font-size:14px}}

/* ---- deal-form's own additions (the kit draws one set of labels; this page keeps both and shows the side's) ---- */
/* A reader with no CSS sees every label; with it, only the chosen side's. The radio is the CSS hook (no script). */
form:has(#side-buy:checked) .only-sell{display:none}
form:has(#side-sell:checked) .only-buy{display:none}
.rd-field .only-sell,.rd-field .only-buy{display:inline}
.rd-field>.hint.only-sell,.rd-field>.hint.only-buy{display:block}
/* A problem sits beside its field, in the shell's own words with a bar (colour is never the only carrier). */
.rd-field .j-problem{margin:0;padding-left:10px;border-left:4px solid var(--r-breach);font-weight:700;font-size:16px}
.rd-field.err{padding-left:16px;box-shadow:inset 5px 0 0 var(--r-breach)}
.rd-field select{max-width:340px}
.rd-field input[type=text]{max-width:220px}
.r9-start .rd-field,.r9-start .r9-date{min-width:0}
.r9-start .r9-boxes input[type=text]{min-height:52px}
/* The notice that a draft is already held (signed out), and the datalist input reads as the other inputs. */
.r9-notice{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:14px 20px;background:var(--r-wash);border-left:5px solid var(--r-signal)}
.r9-notice a{font-weight:700;min-height:44px;display:inline-flex;align-items:center}
.rd-field input[list]{max-width:340px}
.rd-actions .rd-back{min-height:44px;display:inline-flex;align-items:center;font-weight:700}
@media (max-width:767px){
  .rd-field input[type=text],.rd-field select,.rd-pre,.rd-field input[list]{max-width:none}
  .rd-actions .rd-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.rd-btn{transition:none}}
.r9-start .rd-muted{margin:0}

/* ---- fix round: suffixes beside the box, the state words, and the answer page's own lists ---- */
.rd-inrow{flex-wrap:nowrap}
.rd-inrow input[type=text]{flex:1 1 auto;min-width:0;width:auto}
.rd-inrow .rd-suf{flex:0 0 auto}
.rd-field .rd-inrow input[type=text]{max-width:220px}
@media (max-width:767px){.rd-field .rd-inrow input[type=text]{max-width:none}}
/* The state word (round8 .u4-word, round9 states): the box fits its word, whatever the word. */
.u4-word{display:inline-block;margin:0 0 6px;font:700 11px/1 var(--r-font);letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;background:var(--r-ink);color:var(--r-surface);white-space:nowrap;overflow:visible}
.u4-word.draft{background:var(--r-surface);color:var(--r-ink);box-shadow:inset 0 0 0 2px var(--r-ink)}
.u4-word.checked{background:var(--r-surface);color:var(--r-ink);box-shadow:inset 0 0 0 2px var(--r-holds)}
.u4-word.kept{background:var(--r-rule);color:var(--r-ink)}
.u4-word.running,.u4-word.run{background:var(--r-anchor);color:var(--r-surface)}
.u4-word.attention{background:var(--r-wash);color:var(--r-ink);box-shadow:inset 0 0 0 2px var(--r-signal)}
/* The answer page's lists and verdict. */
.r9-needed,.r9-levers,.r9-assumed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;background:var(--r-surface);border-top:3px solid var(--r-ink)}
.r9-needed>li,.r9-levers>li,.r9-assumed>li{padding:12px 16px;border-bottom:1px solid var(--r-rule);font-size:17px}
.r9-needed a{font-weight:700;min-height:44px;display:inline-flex;align-items:center}
.r9-levers>li p{margin:0 0 6px}
.r9-levers>li p:last-child{margin-bottom:0}
.r9-assumed>li{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}
.rd-verdict{margin:0;padding:12px 16px;border-left:6px solid var(--r-ink);background:var(--r-surface);font-size:19px;line-height:1.35}
.rd-verdict.rd-holds{border-left-color:var(--r-holds);color:var(--r-ink)}
.rd-verdict.rd-breaks{border-left-color:var(--r-breach);color:var(--r-ink)}
.rd-holds strong::before{content:"";}
.rd-problem{display:block;padding-left:10px;border-left:4px solid var(--r-breach);font-weight:700;font-size:16px}
/* A money box (the £ and its input) fills its row; the input takes what the sign leaves. */
.rd-inrow .rd-pre{flex:1 1 auto;display:flex;min-width:0;max-width:240px}
.rd-inrow .rd-pre input[type=text]{flex:1 1 auto;min-width:0;width:100%;max-width:none}
@media (max-width:767px){.rd-inrow .rd-pre{max-width:none}}
