/* partner-stop (2026-10-10) */
.ps-box{margin:16px 0 4px;padding:14px 16px;border:1px solid #e3ddcc;border-radius:10px;background:#fff;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.ps-box .ps-copy{flex:1 1 320px;min-width:0}
.ps-box .ps-label{font-weight:600;font-size:14px;color:#16231b;margin-bottom:2px}
.ps-box p{margin:0;font-size:14px;color:var(--ink-2,#383838)}
.ps-box.stopped,.ps-row.stopped{background:#fdf3f2;border-color:#e7b4ae}
.ps-box.held,.ps-row.held{background:#fbf6e9}
.ps-msg{margin:6px 0 0!important;font-size:13px!important;color:#16231b!important;font-weight:600}
.ps-btn{background:#fff;color:#16231b;border:1px solid #16231b;border-radius:8px;padding:10px 16px;font:600 14px/1 inherit;font-family:inherit;cursor:pointer;white-space:nowrap}
.ps-btn:hover{background:#f3efe4}
.ps-btn.danger{background:#b3261e;color:#fff;border-color:#b3261e}
.ps-btn.danger:hover{background:#9c2019}
.ps-btn:disabled{opacity:.55;cursor:wait}
.ps-float{position:fixed;right:16px;bottom:16px;z-index:2147483000;display:flex;gap:10px;align-items:center;max-width:calc(100vw - 32px);background:#fff;border:1px solid #e3ddcc;border-radius:12px;padding:8px;box-shadow:0 6px 24px rgba(0,0,0,.18)}
.ps-float.stopped{background:#fdf3f2;border-color:#e7b4ae}
.ps-float.held{background:#fbf6e9}
.ps-float .ps-float-note{font-size:13px;color:#16231b;font-weight:600;padding:0 6px}
@media (max-width:520px){.ps-float{left:12px;right:12px;bottom:12px;justify-content:center}.ps-float .ps-btn{flex:1 1 auto}}
/* b140 stop reason */
.ps-why{position:fixed;inset:0;z-index:2147483600;background:rgba(22,35,27,.45);display:flex;align-items:center;justify-content:center;padding:16px}
.ps-why-card{background:#fff;border-radius:14px;max-width:480px;width:100%;max-height:calc(100vh - 32px);overflow:auto;padding:22px 22px 18px;box-shadow:0 12px 40px rgba(0,0,0,.25);color:#16231b}
.ps-why-card h2{margin:0 0 4px;font-size:19px;line-height:1.3;font-weight:650}
.ps-why-sub{margin:0 0 14px;font-size:14px;color:var(--ink-2,#383838)}
.ps-why-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.ps-why-opt{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1px solid #e3ddcc;border-radius:9px;font-size:14px;line-height:1.35;cursor:pointer}
.ps-why-opt:hover{background:#faf8f2}
.ps-why-opt input{margin:2px 0 0;flex:0 0 auto;width:16px;height:16px;accent-color:#16231b}
.ps-why-card textarea{width:100%;box-sizing:border-box;border:1px solid #d9d2bf;border-radius:9px;padding:10px 12px;font:14px/1.4 inherit;font-family:inherit;resize:vertical;min-height:70px}
.ps-why-msg{margin:8px 0 0;font-size:13px;color:#b3261e;min-height:0}
.ps-why-msg:empty{display:none}
.ps-why-btns{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}
.ps-btn.dark{background:#16231b;color:#fff;border-color:#16231b}
.ps-btn.dark:hover{background:#0f1813}
/* b142 Stop warning v1 */
.ps-warn .ps-why-card{max-width:520px}
.ps-warn-top{margin:6px 0 12px;font-size:14.5px;line-height:1.45;color:#383838}
.ps-warn-chat{width:100%;padding:12px 16px;margin-bottom:16px}
.ps-warn-h3{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:650;color:#16231b;margin:0 0 8px}
.ps-warn-list{margin:0 0 14px;padding:0 0 0 18px;font-size:14px;line-height:1.45;color:#16231b}
.ps-warn-list li{margin:0 0 7px}
.ps-warn-loading{color:#6b6b6b;list-style:none;margin-left:-18px}
.ps-warn-ok{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid #e3ddcc;border-radius:9px;font-size:14px;cursor:pointer}
.ps-btn[disabled]{opacity:.45;cursor:not-allowed}
@media (max-width:520px){.ps-warn .ps-why-btns{flex-direction:column-reverse}.ps-warn .ps-why-btns .ps-btn{width:100%}}

/* b143: Stop card matches the other Home cards (padding, radius, border, spacing); button centred on the right */
.ps-box{padding:22px 24px;border-radius:12px;border-color:#E6E1D6;margin:16px 0 18px;flex-wrap:nowrap;align-items:center;gap:20px;box-sizing:border-box}
.ps-box .ps-copy{flex:1 1 auto;min-width:0}
.ps-box .ps-btn{flex:none;align-self:center}
@media(max-width:520px){.ps-box{gap:14px}}

/* Stop screen v2 (DRAFT, flag-gated) */
.ps-draft{display:inline-block;margin:2px 0 6px;padding:2px 8px;border-radius:999px;background:#fff3cd;color:#6b4e00;border:1px solid #e6cf84;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}
.ps-money{display:flex;gap:10px;margin:0 0 14px}
.ps-money-col{flex:1 1 0;min-width:0;border:1px solid #e3ddcc;border-radius:10px;padding:10px 12px;background:#fff}
.ps-money-col.safe{background:#f1f8f3;border-color:#bcdcc6}
.ps-money-col.risk{background:#fdf6ec;border-color:#ecd1a3}
.ps-money-k{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:650;color:#16231b}
.ps-money-v{font-size:20px;line-height:1.25;font-weight:650;color:#16231b;margin:2px 0 4px}
.ps-money-s{font-size:12.5px;line-height:1.4;color:#383838}
.ps-warn2 .ps-why-btns{flex-wrap:wrap}
@media (max-width:520px){.ps-money{flex-direction:column}.ps-warn2 .ps-why-btns{flex-direction:column-reverse}.ps-warn2 .ps-why-btns .ps-btn{width:100%}}

/* b149 QA #8: during onboarding the floating Stop button sat over the preview card; on wide screens put it top right */
@media (min-width:900px){body:has(.onb-main) .ps-float{top:16px;bottom:auto}}
/* b149 QA #7b: field named by the server error */
.field-invalid{border-color:#b3261e !important;box-shadow:0 0 0 2px rgba(179,38,30,.15)}

/* b151 #14b: phone-width onboarding, room for the fixed Stop bar below Back/Continue */
@media (max-width:899px){body:has(.onb-main):has(.ps-float) .onb-main{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))!important}}
