/* Buy-now 10% deposit (CA102): the "Pay deposit" box on the order confirmation and the Stripe return page. */
.bn-pay{margin:0 0 24px;padding:20px 24px;border:2px solid #096b63;border-radius:10px;background:#f2faf8}
.bn-pay h2{margin:0 0 8px;font-size:1.35rem}
.bn-pay p{margin:0 0 12px}
.bn-pay-btn{margin:4px 0 8px}
.bn-pay-test{color:#843900}
.bn-deposit{max-width:680px}
.bn-deposit-photo{margin:0 0 20px}
.bn-deposit-photo img{display:block;width:100%;height:auto;border-radius:10px}
.bn-deposit [data-bn-deposit-msg]{font-size:1.1rem;margin:0 0 20px}
@media (max-width:600px){.bn-pay{padding:16px}.bn-pay-btn{width:100%}}
.bn-pay-refund{margin:0 0 8px;font-weight:600}

/* Ben (Oct 2): the call to pay stands out; the change link sits under the Pay button. */
.bn-pay h2.bn-pay-head{font-size:1.75rem;line-height:1.15}
.bn-pay-change{margin:4px 0 0}
@media (max-width:600px){.bn-pay h2.bn-pay-head{font-size:1.45rem}}
/* CA185 (Ben, Oct 6, 2026): required lift, never in the price (same look as order-summary.css). */
.mcu-lift{margin:4px 0 14px;padding:10px 12px;border-left:4px solid #D9A441;border-radius:4px;background:var(--warning-surface,#FFF5E5);color:var(--warning,#8A4B00);line-height:1.45}
.mcu-lift strong{display:block;color:var(--ink,#082341)}

/* CA191 Direction B deposit page (Ben, Oct 7). Copied from output/coding-assistants/ca-191/mockup/screen.css; brand tokens
   from output/brand-design-v1/tokens.css, scoped to the page. */
.co{--co-navy:#102F4F;--co-ink:#082341;--co-red:#C71920;--co-red-hover:#A8141A;--co-canvas:#F7F5F0;--co-muted:#526274;--co-border:#D7DEE5;--co-selected:#EDF3F8;--co-success:#176B4A;--co-success-surface:#EEF7F1;--co-focus:#225EAB}
.co-main{background:var(--co-canvas);padding:32px 0 56px}
.co-wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.co h1,.co h2,.co h3{font-family:'Barlow Semi Condensed','Arial Narrow',sans-serif;color:var(--co-ink);letter-spacing:0}
.co p{margin:0}
.co-card{background:#fff;border:1px solid var(--co-border);border-radius:8px}
.co-photo{position:relative;margin:0}
.co-photo img{display:block;width:100%;height:100%;object-fit:cover}
.co-photo figcaption{position:absolute;left:8px;bottom:8px;padding:2px 8px;border-radius:999px;background:rgba(8,35,65,.72);color:#fff;font-size:.72rem}
.co-lines{width:100%;border-collapse:collapse;font-size:1.02rem}
.co-lines td{padding:9px 0;vertical-align:top}
.co-lines td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.co-lines small{display:block;color:var(--co-muted);font-size:.86rem}
.co-lines tr.due td{border-top:1px solid var(--co-border);border-bottom:1px solid var(--co-border);padding:12px 0;font-weight:700;font-size:1.15rem;color:var(--co-ink)}
.co-lines tr.later td{color:var(--co-muted)}
.co-pay{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;border:0;border-radius:4px;background:var(--co-red);color:#fff;font:700 1.15rem/1 'Source Sans 3',Arial,sans-serif;cursor:pointer;text-decoration:none}
.co-pay:hover{background:var(--co-red-hover)}
.co-pay:disabled{opacity:.75;cursor:progress}
.co-pay svg{width:18px;height:18px;flex:none}
.co-savelink{border:0;background:none;padding:0;color:var(--co-focus);font:600 1rem 'Source Sans 3',Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.co-saved{display:none;margin-top:10px;padding:12px 14px;border-radius:6px;background:var(--co-success-surface);color:var(--co-ink);font-size:.95rem;line-height:1.45;text-align:left}
.co-saved.on{display:block}
.co-saved strong{color:var(--co-success)}
.co-saved a,.co-refund a{color:var(--co-focus)}
.co-refund{font-weight:600;color:var(--co-ink);font-size:.98rem}
.co-note{margin:0 0 12px;padding:12px 14px;border-left:4px solid #D9A441;border-radius:4px;background:#FFF5E5;color:#5a3500;line-height:1.45}
.co .mcu-lift{margin:0}
.co .bn-pay-test{margin:0}
.co .field-error{margin:0}
.b-col{max-width:720px;margin:0 auto}
.b-stepper{display:flex;list-style:none;margin:0 0 16px;padding:0;font-size:.9rem}
.b-stepper li{flex:1;position:relative;padding-top:28px;text-align:center;color:var(--co-muted)}
.b-stepper li::before{content:"";position:absolute;top:10px;left:0;right:0;height:3px;background:var(--co-border)}
.b-stepper li:first-child::before{left:50%}.b-stepper li:last-child::before{right:50%}
.b-stepper li::after{content:"";position:absolute;top:3px;left:calc(50% - 9px);width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--co-border);box-sizing:border-box}
.b-stepper li.done{color:var(--co-success)}.b-stepper li.done::before{background:var(--co-success)}
.b-stepper li.done::after{background:var(--co-success);border-color:var(--co-success)}
.b-stepper li.now{color:var(--co-ink);font-weight:700}.b-stepper li.now::before{background:linear-gradient(90deg,var(--co-success) 50%,var(--co-border) 50%)}
.b-stepper li.now::after{border-color:var(--co-red)}
.b-head{text-align:center;margin-bottom:16px}
.b-head h1{font-size:2.2rem;line-height:1.05;margin:6px 0 4px}
.b-head p{font-size:1.12rem;color:var(--co-muted)}
.b-back{display:inline-flex;align-items:center;gap:6px;margin:0 0 8px;color:var(--co-focus);font-weight:600;font-size:1rem;text-decoration:none}
.b-back span{font-size:1.15rem;line-height:1}
.b-back:hover{text-decoration:underline;text-underline-offset:3px}
.b-receipt{overflow:hidden}
.b-item{display:grid;grid-template-columns:200px 1fr;gap:18px;padding:16px 24px 14px;border-bottom:1px dashed var(--co-border)}
.b-item.nophoto{grid-template-columns:1fr}
.b-thumb{aspect-ratio:4/3;border-radius:6px;overflow:hidden}
.b-itembody{display:grid;gap:3px;align-content:center}
.b-itembody h2{font-size:1.45rem;margin:0 0 4px}
.b-spec{color:var(--co-muted)}
.b-money{padding:2px 24px 0}.b-money .co-lines td{padding:7px 0}.b-money .co-lines tr.due td{padding:10px 0}
.b-act{padding:8px 24px 18px;display:grid;gap:12px}
.b-actrow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.b-gate{font-size:.92rem;line-height:1.4;color:var(--co-muted)}
.b-plain{padding:20px 24px;display:grid;gap:14px;justify-items:start}
.b-plain .b-item{padding:0;border:0;width:100%}
.b-band{display:grid;grid-template-columns:1fr;margin-top:18px;background:#fff;border:1px solid var(--co-border);border-radius:8px}
.b-band>div{padding:14px 16px;display:grid;grid-template-columns:22px 1fr;gap:10px;font-size:.9rem;line-height:1.4;color:var(--co-muted)}
.b-band svg{width:20px;height:20px;color:var(--co-navy)}
.b-band strong{display:block;color:var(--co-ink)}
.b-band a{color:var(--co-focus)}
.b-next{margin-top:18px;padding:22px 24px}
.b-next h2{font-size:1.35rem;margin:0 0 14px}
.b-timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.b-timeline li{border-top:3px solid var(--co-navy);padding-top:10px;line-height:1.45}
.b-timeline strong{display:block;color:var(--co-ink);margin-bottom:2px}
.b-timeline span{color:var(--co-muted);font-size:.95rem}
.b-bar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px max(16px,calc(50% - 360px));background:#fff;border-top:1px solid var(--co-border);box-shadow:0 -4px 16px rgba(8,35,65,.12)}
.b-bar[hidden]{display:none}
.b-bar strong{display:block;color:var(--co-ink)}.b-bar span{color:var(--co-muted);font-size:.88rem}
.b-bar .co-pay{width:auto;min-height:46px;padding:0 22px;font-size:1.05rem;white-space:nowrap}
.b-bar .co-pay span{color:#fff;font-size:inherit}
@media (min-width:900px){
 .b-col{max-width:980px}
 .b-receipt{display:grid;grid-template-columns:minmax(0,1fr) 400px}
 .b-item{grid-template-columns:1fr;border-bottom:0;border-right:1px dashed var(--co-border);padding:20px 22px;align-content:start}
 .b-thumb{aspect-ratio:16/8}
 .b-itembody h2{font-size:1.35rem}
 .b-paycol{padding-top:8px}
 .b-actrow{flex-direction:column;align-items:flex-start;gap:6px}
}
@media (max-width:760px){
 .co-main{padding:20px 0 40px}.co-wrap{padding:0 16px}
 .b-stepper{font-size:.74rem;margin-bottom:12px}
 .b-head{margin-bottom:12px}.b-head h1{font-size:1.75rem}.b-head p{font-size:.98rem}
 .b-next{padding:18px 16px}
 .b-timeline{grid-template-columns:1fr}
 .b-actrow{flex-direction:column;align-items:stretch;text-align:center}
 .b-item{grid-template-columns:96px 1fr;gap:12px;padding:12px 16px}
 .b-thumb{aspect-ratio:1/1}.b-thumb figcaption{display:none}
 .b-itembody h2{font-size:1.15rem;margin:0}.b-spec{font-size:.88rem;line-height:1.3}
 .b-money{padding:0 16px}.b-money .co-lines{font-size:.96rem}.b-money .co-lines td{padding:5px 0}.b-money .co-lines small{font-size:.8rem}
 .b-act{padding:10px 16px 14px;gap:8px}
 .b-plain{padding:16px}
 .b-bar{padding:10px 16px}.b-bar .co-pay{padding:0 16px}
}
.co-taxnote{margin:10px 0 4px;padding:9px 12px;border:1px solid var(--co-border);border-radius:6px;background:var(--co-canvas);font-weight:700;color:var(--co-ink);font-size:.92rem}
@media (max-width:760px){.co-taxnote{margin:6px 0 2px;padding:7px 10px;font-size:.86rem}}
/* Oct 7: the tax wording under the building price takes a line; tighter spacing keeps Pay in view at 1280×600 (Ben's condition). */
.b-stepper{margin-bottom:8px}.b-head{margin-bottom:10px}
.b-money .co-lines td{padding:5px 0}.b-money .co-lines tr.due td{padding:8px 0}
@media (max-width:760px){.b-stepper{margin-bottom:8px}.b-head{margin-bottom:8px}.b-money .co-lines td{padding:4px 0}}
/* Oct 7: tax line above Pay (compact) and the build-over (i). */
.co-taxnote{margin:0;padding:6px 10px;font-size:.86rem}
.b-act{gap:8px}
.co-info{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:4px;padding:0;border:1.5px solid var(--co-focus);border-radius:50%;background:#fff;color:var(--co-focus);font:700 .75rem/1 Georgia,serif;font-style:italic;cursor:pointer;vertical-align:1px}
.co-info:focus-visible{outline:3px solid var(--co-focus);outline-offset:2px}
/* Oct 7: room for the tax line above Pay while Pay stays in view at 1280×600. */
.co-main{padding-top:18px}
.b-stepper li{padding-top:24px}
.co-taxnote{padding:4px 10px}
@media (max-width:760px){.co-main{padding-top:14px}}
.co-lines small[hidden]{display:none}
