/* Compact inline reason choice. Dialogs retain the common light CRM surface. */
.refusal-reason-picker{--refusal-danger:#b42318;--refusal-danger-surface:#fff3f1;--refusal-danger-border:#e6a098;display:grid;gap:8px;min-width:0}
.refusal-reason-picker>select[hidden],.refusal-reason-picker [hidden]{display:none!important}
.refusal-reason-picker .refusal-reason-toggle{display:flex;width:100%;height:auto;min-height:44px;padding:10px 12px;align-items:center;justify-content:space-between;gap:12px;text-align:left;white-space:normal;background:#fff;color:#1c3a57;border:1px solid #d6cabb;border-radius:8px;font:inherit;cursor:pointer;box-shadow:0 1px 2px rgba(20,50,76,.03)}
.refusal-reason-toggle-label{min-width:0;flex:1;line-height:1.4;overflow-wrap:anywhere}
.refusal-reason-picker .refusal-reason-menu{display:flex;flex-direction:column;gap:2px;min-height:0;max-height:min(248px,36dvh);padding:4px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:#fff;border:1px solid #d6cabb;border-radius:9px;box-shadow:0 3px 12px rgba(20,50,76,.06)}
.refusal-reason-picker .refusal-reason-option{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:8px;width:100%;height:auto;min-height:38px;margin:0;padding:8px 10px;white-space:normal;text-align:left;border:1px solid transparent;border-radius:6px;background:transparent;color:#1c3a57;font:inherit;font-weight:500;font-size:13px;line-height:1.35;cursor:pointer}
.refusal-reason-option-title{min-width:0;flex:1;overflow-wrap:anywhere}
.refusal-reason-picker .refusal-reason-option[aria-selected=true]{background:#edf3f8;border-color:#b5cbdf;font-weight:600}
.refusal-reason-picker .refusal-reason-option:hover{background:#f2f6f9}
.refusal-reason-chevron,.refusal-reason-check{flex:0 0 16px;display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.refusal-reason-chevron{transition:transform .15s ease}
.refusal-reason-toggle[aria-expanded=true] .refusal-reason-chevron{transform:rotate(180deg)}
.refusal-reason-check{opacity:0}.refusal-reason-option[aria-selected=true] .refusal-reason-check{opacity:1}
.refusal-reason-picker :is(.refusal-reason-toggle,.refusal-reason-option).is-permanent{color:var(--refusal-danger)!important;background:var(--refusal-danger-surface)!important;border-color:var(--refusal-danger-border);font-weight:600}
.refusal-reason-picker .is-permanent>span{color:inherit!important}
.refusal-reason-picker .refusal-reason-badge{flex-shrink:0;padding:2px 6px;border:1px solid #ecc0ba;border-radius:5px;font-size:10px;font-weight:600;line-height:1.4}
.refusal-reason-picker .refusal-reason-hint{color:var(--refusal-danger)!important;font-size:12px;line-height:1.45;overflow-wrap:anywhere}
.refusal-reason-picker :is(.refusal-reason-toggle,.refusal-reason-option):focus-visible{outline:2px solid #267ab0;outline-offset:0}
.refusal-reason-picker .refusal-reason-toggle[aria-invalid=true]{border-color:var(--refusal-danger)}
.refusal-reason-picker :is(.refusal-reason-toggle,.refusal-reason-option):disabled{opacity:.6;cursor:default}
.record-dialog.deal-close-reason-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0!important;overflow:hidden}
.record-dialog.deal-close-reason-dialog>form{display:flex!important;flex-direction:column;max-height:calc(100dvh - 32px);min-height:0;margin:0;padding:24px!important;box-sizing:border-box;overflow:hidden}
.deal-close-reason-dialog .dialog-heading{flex:0 0 auto;align-items:flex-start;gap:18px;margin:0 0 12px;padding:0;border:0}
.deal-close-reason-dialog .dialog-heading h2{margin:0;font-size:24px;line-height:1.2}
.deal-close-reason-dialog .dialog-heading .eyebrow{margin:0 0 7px}
.deal-close-reason-dialog .dialog-help{flex:0 0 auto;margin:0 0 18px;font-size:13px;line-height:1.5}
.refusal-dialog-body{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:2px;margin:-2px;display:grid;gap:16px}
.refusal-dialog-field{display:grid;gap:8px;min-width:0}
.refusal-field-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px}
.refusal-field-heading>label{margin:0;font-size:13px;font-weight:600}
.deal-close-reason-dialog .refusal-settings-action{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:5px;width:auto;min-height:28px;padding:4px 6px;border:0;border-radius:5px;background:transparent;color:#536b81;font:inherit;font-weight:500;font-size:12px;line-height:1.2}
.deal-close-reason-dialog .refusal-settings-action:hover{color:#173b5d;background:#edf3f8}
.refusal-settings-action .ui-icon{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.7}
.deal-close-reason-dialog .dialog-actions{flex:0 0 auto;gap:8px;margin-top:20px;padding-top:16px}
.deal-close-reason-dialog .dialog-actions button{min-height:42px;font-size:13px;padding:9px 14px}
@media(pointer:coarse){.refusal-reason-picker .refusal-reason-option{min-height:44px}.deal-close-reason-dialog .refusal-settings-action{min-height:44px}.deal-close-reason-dialog .dialog-actions button{min-height:44px}}
@media(max-width:440px){.record-dialog.deal-close-reason-dialog>form{padding:18px!important}.deal-close-reason-dialog .dialog-heading h2{font-size:22px}.refusal-reason-picker .refusal-reason-badge{font-size:9px;padding:2px 4px}.refusal-reason-picker .refusal-reason-option{gap:5px;padding:8px}.refusal-reason-picker .refusal-reason-menu{max-height:min(240px,34dvh)}}
@media(prefers-reduced-motion:reduce){.refusal-reason-chevron{transition:none}}

.stop-ham-confirmation{width:min(540px,calc(100vw - 32px));padding:24px;box-sizing:border-box}
.stop-ham-confirmation h2{margin-top:0}
.stop-ham-confirmation p{line-height:1.6}
.stop-ham-confirmation .stop-ham-confirm-button{background:#b42318!important;color:#fff!important;border-color:#b42318!important;white-space:normal;height:auto;min-height:44px}
.stop-ham-confirmation .stop-ham-confirm-button:focus-visible{outline:3px solid #267ab0;outline-offset:2px}
.refusal-catalogue-dialog { width: min(820px, calc(100vw - 28px)); }
.refusal-catalogue-dialog [data-reasons-list] { display: grid; gap: 12px; margin: 16px 0; }
.refusal-catalogue-row { display: grid; grid-template-columns: minmax(180px, 1fr) auto auto auto; gap: 12px; align-items: end; padding-bottom: 12px; border-bottom: 1px solid #ddcbb7; }
.refusal-catalogue-row label { min-width: 0; }
.refusal-catalogue-row input[type="text"], .refusal-catalogue-row input[name="reasonLabel"] { width: 100%; min-width: 0; }
.refusal-catalogue-flag { display: flex; align-items: center; gap: 6px; min-height: 42px; font-size: 12px; }
.refusal-catalogue-flag input[type="checkbox"] { width: 17px; height: 17px; }
.refusal-catalogue-order { display: flex; gap: 4px; }
.refusal-catalogue-order button { min-width: 36px; min-height: 40px; padding: 6px; }
.partner-refusal-summary { margin: 10px 16px 16px; padding: 12px; border: 1px solid #d8c5ae; border-radius: 8px; background: #fff8ec; color: #8a510b; font-weight: 700; }
.partner-refusal-summary.is-permanent { background: #fff1f0; border-color: #d95e55; color: #b42318; }
.partner-refusal-summary[hidden] { display: none; }
@media (max-width: 640px) { .refusal-catalogue-row { grid-template-columns: minmax(0,1fr) minmax(0,1fr) 84px; align-items: center; gap: 8px; } .refusal-catalogue-row > label:first-child { grid-column: 1 / -1; } .refusal-catalogue-flag { font-size: 11px; white-space: nowrap; gap: 4px; } .refusal-catalogue-flag input[type="checkbox"] { flex-shrink: 0; } .refusal-catalogue-order button { min-width: 40px; } }
/* Catalogue actions live alongside reasons, inside the shared selection panel. */
.refusal-reason-row{display:flex;align-items:stretch;gap:3px;flex-shrink:0;min-width:0}
.refusal-reason-row>.refusal-reason-option{flex:1;min-width:0;width:auto}
.refusal-reason-picker .refusal-reason-edit{display:grid;place-items:center;flex:0 0 40px;width:40px;min-height:40px;padding:8px;background:transparent;color:#536b81;border:1px solid transparent;border-radius:6px}
.refusal-reason-edit svg,.refusal-reason-add svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.refusal-reason-picker .refusal-reason-edit:hover{background:#edf3f8;color:#173b5d}
.refusal-reason-picker .refusal-reason-add{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-shrink:0;min-height:42px;margin-top:4px;padding:9px 10px;background:#fff;color:#173b5d;border:0;border-top:1px solid #e7ddd1;border-radius:0;font:inherit;font-size:13px;font-weight:600;text-align:left}
.refusal-reason-picker .refusal-reason-option[aria-pressed=true]{background:#edf3f8;border-color:#b5cbdf;font-weight:600}
.refusal-reason-option[aria-pressed=true] .refusal-reason-check{opacity:1}
.refusal-reason-disabled{font-size:10px;color:#536b81;white-space:nowrap}
.refusal-reason-picker .refusal-reason-menu.is-editing{max-height:min(340px,48dvh);padding:12px}
.refusal-inline-editor{display:grid;gap:12px;min-width:0;color:#1c3a57;font-size:13px;font-weight:400}
.refusal-inline-editor>label{display:grid;gap:6px;margin:0;font-size:12px}
.refusal-inline-editor input[type=text]{box-sizing:border-box;width:100%;min-width:0;min-height:42px;padding:9px 10px;border:1px solid #d6cabb;border-radius:6px;background:white;color:#1c3a57;font:inherit;font-size:13px}
.refusal-inline-editor .refusal-inline-flag{display:flex;align-items:center;gap:8px;min-height:28px}
.refusal-inline-flag input[type=checkbox]{width:17px;height:17px;min-height:0;margin:0;accent-color:#173b5d}
.refusal-inline-note{font-size:12px;line-height:1.5;color:#536b81}
.refusal-inline-error{font-size:12px;line-height:1.5;color:var(--refusal-danger,#b42318)}
.refusal-inline-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:4px}
.refusal-inline-actions button{min-height:40px;font:inherit;font-size:12px}
.refusal-reason-picker :is(.refusal-reason-edit,.refusal-reason-add,.refusal-inline-editor button,.refusal-inline-editor input):focus-visible{outline:2px solid #267ab0;outline-offset:1px}
@media(pointer:coarse){.refusal-reason-picker .refusal-reason-edit{flex-basis:44px;width:44px;min-height:44px}.refusal-reason-picker .refusal-reason-add,.refusal-inline-actions button{min-height:44px}}
@media(max-width:440px){.refusal-reason-row .refusal-reason-option{flex-wrap:wrap}.refusal-reason-option-title{flex-basis:calc(100% - 26px)}.refusal-reason-row .refusal-reason-check{order:2}.refusal-reason-row .refusal-reason-badge{order:3}.refusal-inline-actions button{flex:1}}
.refusal-reason-picker .refusal-reason-add{position:sticky;bottom:-4px;z-index:1;box-shadow:0 -3px 8px rgba(20,50,76,.04)}
/* One responsive full-height refusal surface for deals and partners. */
#deal-close-reason-dialog{inset:0;width:min(720px,calc(100vw - 24px));max-width:none;height:calc(100dvh - 24px);max-height:none;margin:auto;border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px rgba(16,36,54,.28)}
#deal-close-reason-dialog[open]{display:flex}
#deal-close-reason-form{width:100%;height:100%;max-height:none!important;padding:clamp(16px,2.5vw,32px)!important;gap:0}
#deal-close-reason-dialog .dialog-heading{align-items:center;margin-bottom:10px}
#deal-close-reason-dialog .dialog-heading h2{font-size:clamp(24px,2.2vw,32px);line-height:1.2}
#deal-close-reason-dialog .dialog-heading>button{width:44px;height:44px;flex:0 0 44px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink)}
#deal-close-reason-dialog .dialog-help{max-width:780px;color:var(--muted);margin-bottom:24px;font-size:14px}
#deal-close-reason-dialog .refusal-dialog-body{display:block;flex:1;min-height:0;overflow:auto;padding:3px;margin:-3px;scrollbar-gutter:stable}
#deal-close-reason-dialog .refusal-field-heading{margin-bottom:12px}
#deal-close-reason-dialog .refusal-field-heading>label{font-size:13px;color:var(--muted)}
#deal-close-reason-dialog .is-panel .refusal-reason-menu{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:0 3px 12px;max-height:none;border:0;box-shadow:none;overflow:visible;background:transparent;align-content:start;scrollbar-gutter:auto}
#deal-close-reason-dialog .is-panel .refusal-reason-row{display:flex;gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper);min-height:64px;align-items:stretch;transition:border-color .15s ease,background-color .15s ease}
#deal-close-reason-dialog .refusal-reason-option{padding:14px 16px;min-height:62px;border:0;border-radius:0;background:transparent;color:var(--ink);font-family:Montserrat,sans-serif;font-size:14px;line-height:1.45;font-weight:600;gap:12px}
#deal-close-reason-dialog .refusal-reason-option:is([aria-pressed=true],[aria-selected=true]){background:#eaf2f8;color:#163e60;box-shadow:inset 3px 0 #2c658f}
#deal-close-reason-dialog .refusal-reason-option:hover:not(:disabled){background:#f1f5f8}
#deal-close-reason-dialog .refusal-reason-edit{min-width:44px;flex-basis:44px;min-height:44px;align-self:center;margin:6px 6px 6px 0;border:0;background:transparent;color:var(--muted);border-radius:8px}
#deal-close-reason-dialog .refusal-reason-edit:hover{background:#eaf2f8;color:#163e60}
#deal-close-reason-dialog .refusal-reason-add{grid-column:1/-1;position:static;min-height:52px;padding:14px 16px;margin:4px 0 0;border:1px dashed #aebdcc;border-radius:12px;background:transparent;color:var(--ink);box-shadow:none;font:600 14px Montserrat,sans-serif}
#deal-close-reason-dialog .refusal-reason-add:hover{background:#f1f5f8}
#deal-close-reason-dialog .refusal-reason-badge{font-size:11px;border:0;background:transparent;padding:0;white-space:normal}
#deal-close-reason-dialog .refusal-reason-option.is-permanent{color:#ab2921!important;background:#fff3f1!important;box-shadow:inset 3px 0 #c34b42}
#deal-close-reason-dialog .refusal-reason-option.is-permanent:is([aria-pressed=true],[aria-selected=true]){background:#ffe4df!important}
#deal-close-reason-dialog .refusal-reason-hint{margin:8px 0 4px;padding:12px 16px;border-radius:10px;background:#fff3f1}
#deal-close-reason-dialog .is-panel .refusal-reason-menu.is-editing{display:block;max-height:none;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
#deal-close-reason-dialog .refusal-inline-editor{max-width:680px;color:var(--ink);gap:16px}
#deal-close-reason-dialog .refusal-inline-editor input[type=text]{min-height:44px;border-color:var(--line);background:var(--paper);color:var(--ink)}
#deal-close-reason-dialog .refusal-inline-note{color:var(--muted)}
#deal-close-reason-dialog #qualification-detail-fields{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
#deal-close-reason-dialog .dialog-actions{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);background:var(--paper);gap:10px}
#deal-close-reason-dialog .dialog-actions button{min-height:44px;padding:12px 24px;border-radius:10px;font:600 14px Montserrat,sans-serif}
#deal-close-reason-dialog :is(button,input):focus-visible{outline:3px solid #397ca8;outline-offset:-3px}
body[data-crm-appearance=night] #deal-close-reason-dialog{--paper:#17354f;--ink:#f5f0e8;--muted:#c9d7e1;--line:#49657c;background:var(--paper)}
body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-reason-option:is(:hover,[aria-pressed=true],[aria-selected=true]),body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-reason-edit:hover,body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-reason-add:hover{background:#244e70;color:#fff}
body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-reason-option.is-permanent{color:#ffb9ad!important;background:#4c2528!important}
body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-reason-option.is-permanent:is([aria-pressed=true],[aria-selected=true]){background:#683037!important}
body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-reason-hint{color:#ffb9ad!important;background:#4c2528}
body[data-crm-appearance=night] #deal-close-reason-dialog .dialog-actions button:not(.primary){background:#244561;color:#fff;border-color:#49657c}
@media(max-width:600px){#deal-close-reason-dialog{width:100vw;height:100dvh;margin:0;border-radius:0;border:0}#deal-close-reason-dialog .dialog-help{margin-bottom:16px;font-size:13px}#deal-close-reason-dialog .refusal-reason-option{padding:12px;font-size:13px}#deal-close-reason-dialog .dialog-actions button{flex:1;padding:12px}#deal-close-reason-dialog .refusal-reason-menu{gap:8px}#deal-close-reason-dialog .refusal-reason-row .refusal-reason-option{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){#deal-close-reason-dialog *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
body[data-crm-appearance=night] #deal-close-reason-form{background:var(--paper)!important;color:var(--ink)!important}
body[data-crm-appearance=night] #deal-close-reason-dialog .dialog-heading h2{color:var(--ink)!important}
body[data-crm-appearance=night] #deal-close-reason-dialog .dialog-heading .eyebrow,body[data-crm-appearance=night] #deal-close-reason-dialog .dialog-help,body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-field-heading label{color:var(--muted)!important}
body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-inline-editor label{color:var(--ink)!important}

#deal-close-reason-dialog .is-panel .refusal-reason-menu{grid-template-columns:minmax(0,1fr);gap:10px}#deal-close-reason-dialog .is-panel .refusal-reason-row{min-height:54px}#deal-close-reason-dialog .refusal-reason-option{min-height:52px;padding:10px 14px}

#deal-close-reason-dialog.refusal-height-dialog{width:min(720px,calc(100vw - 24px));height:calc(100dvh - 24px);margin:auto}#deal-close-reason-dialog.refusal-height-dialog .is-panel .refusal-reason-menu{grid-template-columns:minmax(0,1fr)}@media(max-width:600px){#deal-close-reason-dialog.refusal-height-dialog{width:100vw;height:100dvh;margin:0}}

/* Inline errors use the same readable red as the dark refusal surface. */
body[data-crm-appearance=night] #deal-close-reason-dialog .refusal-reason-picker{--refusal-danger:#ffb9ad}
