/* NLR SYSTEM · WP11 — scriptul de vânzare A Better Way în fișe (NLC .script-card / .closer-script-card, IMPORTANT,
   ramuri, întrebările lângă câmpuri), selectorul de programare NLC (appointment-picker.css), uneltele closerului,
   panoul de obiecții. Valori NLC: glow.css:975-1004, 1252-1258, 1306-1355, 1622-1654; closer.css:15; styles.css:56-73;
   appointment-picker.css. */

/* ---------- carduri de script (TEXT DE SPUS) */
.nlr-workspace .script-card { margin-bottom: 22px; }
.nlr-workspace .script-card .op-line,
.nlr-workspace .script-card .script-intro { margin: 0 0 16px; font: 500 16.5px/1.72 Montserrat, Inter, sans-serif; color: #e6ecf3; }
.nlr-workspace .script-card .op-line.script-lead { font-size: 1.08rem; font-weight: 600; color: #fff; }
.nlr-workspace .script-card .script-intro { font-size: 14.5px; line-height: 1.6; color: #b9c6d6; }
.nlr-workspace .script-card > :last-child { margin-bottom: 0; }
.nlr-workspace mark[data-ph], .nlr-workspace .appt-script mark, .modal .appt-script mark,
.nlr-workspace .op-line mark { background: none; color: #e6cd84; font-weight: 700; padding: 0; border-radius: 0; }
.nlr-workspace mark[data-ph]:not(.is-filled) { color: #c9a54a; opacity: .9; }
.nlr-workspace .card-kicker .step-title mark { color: inherit; -webkit-text-fill-color: currentColor; }

.nlr-workspace .script-checklist { margin: 0 0 18px; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 8px; }
.nlr-workspace .script-checklist li { position: relative; padding: 10px 12px 10px 34px; border: 1px solid rgba(95,140,190,.28); border-radius: 10px; background: rgba(255,255,255,.04);
  font: 600 13.5px/1.4 Montserrat, Inter, sans-serif; color: #e6ecf3; }
.nlr-workspace .script-checklist li::before { content: ""; position: absolute; left: 13px; top: 16px; width: 8px; height: 8px; border-radius: 50%; background: #d4af37; box-shadow: 0 0 0 4px rgba(212,175,55,.13); }

/* IMPORTANT (NLC .closer-warning), ramuri (.closer-branch / .muted), succes (.closer-success-script) */
.nlr-workspace .closer-warning, .nlr-workspace .closer-branch, .nlr-workspace .closer-success-script {
  margin: 20px 0 0; padding: 17px 19px; border: 0; border-left: 4px solid #d4af37; border-radius: 7px; background: rgba(255,255,255,.04); color: #e6ecf3; }
.nlr-workspace .closer-warning { border-left-color: #f0a030; background: rgba(240,160,48,.09); }
.nlr-workspace .closer-branch.muted { border-left-color: #8a939e; }
.nlr-workspace .closer-success-script { border-left-color: #34c778; background: rgba(52,199,120,.09); }
.nlr-workspace .closer-warning > strong, .nlr-workspace .closer-branch > strong, .nlr-workspace .closer-success-script > strong {
  display: block; font: 700 15px/1.4 Montserrat, Inter, sans-serif; color: #e6cd84; }
.nlr-workspace .closer-warning > p, .nlr-workspace .closer-branch > p, .nlr-workspace .closer-success-script > p {
  margin: 6px 0 0; font: 500 15.2px/1.6 Montserrat, Inter, sans-serif; color: #e6ecf3; }
.nlr-workspace .script-card .op-line + .closer-warning { margin-top: 4px; }

/* Raspunsul la LEAD NOU (NLC .availability-actions, glow.css:1002-1003, 1327-1332) */
.nlr-workspace .availability-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 4px 0 18px; }
.nlr-workspace .availability-actions button { min-height: 44px; padding: 0 16px; border-radius: 8px; cursor: pointer;
  font: 700 .98rem Montserrat, Inter, sans-serif; text-transform: uppercase; letter-spacing: .04em; transition: box-shadow .2s, transform .2s; }
.nlr-workspace .availability-yes { background: rgba(52,199,120,.14); border: 1px solid rgba(52,199,120,.55); color: #bff0d2; }
.nlr-workspace .availability-no { background: rgba(212,175,55,.14); border: 1px solid rgba(212,175,55,.55); color: #f1d36a; text-shadow: 0 0 10px rgba(212,175,55,.35); }
.nlr-workspace .availability-no.is-muted { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.18); color: #c9d3df; text-shadow: none; }
.nlr-workspace .availability-actions button:hover { transform: translateY(-1px); }
.nlr-workspace .availability-actions button.is-chosen { box-shadow: inset 0 0 0 1px currentColor, 0 0 16px rgba(212,175,55,.25); }

/* Regula / obiectivul (NLC .instruction-banner, glow.css:1252-1258, 1324) */
.nlr-workspace .instruction-banner.script-rule { margin: 0 0 18px; padding: 14px 18px; border: 1px solid rgba(212,175,55,.35); border-left: 3px solid #d4af37; border-radius: 0 10px 10px 0;
  background: linear-gradient(90deg, rgba(6,17,33,.82), rgba(6,17,33,.7)); color: #eef2f7; font: 500 .87rem/1.6 Montserrat, Inter, sans-serif; box-shadow: 0 18px 40px -26px rgba(0,0,0,.9); }
.nlr-workspace .instruction-banner.script-rule strong { color: #f1d36a; font-size: 1.02rem; font-weight: 700; margin-right: 4px; letter-spacing: .02em; }
.nlr-workspace .sheet-body > .instruction-banner.script-rule { max-width: 1320px; margin-left: auto; margin-right: auto; }

/* Intrebarile din script langa campuri (NLC .question-card > span „01”) */
.nlr-workspace .field.script-q { position: relative; margin-top: 6px; padding: 14px 18px 14px 57px; border: 1px solid rgba(95,140,190,.28); border-left: 3px solid #d4af37;
  border-radius: 0 12px 12px 0; background: linear-gradient(90deg, rgba(212,175,55,.07), rgba(255,255,255,.025)); }
.nlr-workspace .field.script-q:first-child { margin-top: 0; }
.nlr-workspace .field.script-q > .script-q-nr { position: absolute; left: 18px; top: 16px; font: 700 12.8px/1 Montserrat, Inter, sans-serif; letter-spacing: .08em; color: #d4af37; }
.nlr-workspace .field.script-q > p { margin: 0; font: 600 15.5px/1.55 Montserrat, Inter, sans-serif; color: #fff; }

/* Ramura „Dacă oferta dispare” (details) */
.nlr-workspace details.script-details { margin-bottom: 22px; padding: 18px 26px; }
.nlr-workspace details.script-details > summary { cursor: pointer; list-style: none; font: 600 1rem/1.4 Montserrat, Inter, sans-serif; letter-spacing: .2em; text-transform: uppercase; color: #e6cd84; }
.nlr-workspace details.script-details > summary::-webkit-details-marker { display: none; }
.nlr-workspace details.script-details > summary::after { content: "▾"; margin-left: 10px; color: #c9a54a; letter-spacing: 0; }
.nlr-workspace details.script-details[open] > summary::after { content: "▴"; }

/* ---------- selectorul de programare NLC (appointment-picker.css) */
.appointment-picker { min-width: 0; direction: ltr; }
.appointment-picker-row { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); gap: 18px; align-items: end; }
.appointment-picker label { display: grid; gap: 6px; min-width: 0; font: 600 14px/1.4 Montserrat, Inter, sans-serif; color: #b9c5cf; }
.appointment-date-control { display: flex; align-items: center; position: relative; }
.appointment-picker .appointment-date-text { width: 100%; height: 46px; min-height: 46px; padding: 11px 42px 11px 12px; font-size: 16px; font-variant-numeric: tabular-nums; }
.appointment-calendar-toggle { position: absolute; right: 4px; top: 4px; width: 36px; height: 38px; border: 0; border-radius: 6px; background: transparent; color: #ebc55c; font-size: 25px; line-height: 1; cursor: pointer; }
.appointment-calendar-toggle:hover { background: #ffffff10; }
.appointment-time-control { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); gap: 6px; align-items: end; }
.appointment-time-control > b { height: 46px; display: grid; place-items: center; color: #d4af37; }
.appointment-picker .appointment-time-control select { box-sizing: border-box; width: 100%; min-width: 0; height: 46px; min-height: 46px; padding: 8px 5px; border: 1px solid #ffffff25; border-radius: 9px;
  background: #111c26; color: #f7fbff; color-scheme: dark; font: inherit; font-size: 16px; font-variant-numeric: tabular-nums; }
.appointment-calendar { margin-top: 12px; padding: 12px; border: 1px solid #b68a1e70; border-radius: 12px; background: #111d29; }
.appointment-calendar[hidden] { display: none; }
.appointment-calendar-nav { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 8px; color: #f7fbff; font-size: 15px; }
.appointment-calendar-nav button, .appointment-days button { display: grid; place-items: center; min-width: 0; min-height: 38px; padding: 5px; border: 1px solid transparent; border-radius: 7px;
  background: transparent; color: #e2ebf2; font: inherit; font-size: 14px; cursor: pointer; }
.appointment-calendar-nav button { width: 40px; border-color: #ffffff20; }
.appointment-weekdays, .appointment-days { display: grid; grid-template-columns: repeat(7, minmax(0,1fr)); gap: 4px; text-align: center; }
.appointment-weekdays { margin-bottom: 6px; color: #a4b5c4; font-size: 12px; }
.appointment-days button[aria-current="date"] { border-color: #d4af3780; }
.appointment-days button[aria-pressed="true"] { background: #cba62e; color: #08111a; font-weight: 700; }
.appointment-days button:hover, .appointment-calendar-nav button:hover { background: #d4af3728; }
.appointment-picker button:focus-visible, .appointment-picker input:focus-visible, .appointment-picker select:focus-visible { outline: 2px solid #f2d772; outline-offset: 2px; }
.nlr-workspace .field.field-appointment > span:first-child { display: block; margin-bottom: 8px; }
@media (max-width: 430px) {
  .appointment-picker-row { grid-template-columns: 1fr; gap: 12px; }
  .appointment-days button { min-height: 36px; }
}

/* Replica in dialogul de programare / lead pierdut */
.modal .appt-script { margin: 4px 0 16px; padding: 14px 16px; border-left: 4px solid #d4af37; border-radius: 7px; background: rgba(255,255,255,.04); }
.modal .appt-script > small { display: block; margin-bottom: 6px; font: 800 10.5px/1.4 Montserrat, Inter, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #c9a54a; }
.modal .appt-script > p { margin: 0; font: 500 14.5px/1.6 Montserrat, Inter, sans-serif; color: #e6ecf3; }
.modal .appt-script mark { background: none; color: #e6cd84; font-weight: 700; padding: 0; }
.modal .appt-script .appt-script-imp { margin-top: 8px; font-size: 13px; color: #f3c98a; }
.modal .appt-script .appt-script-imp b { color: #e6cd84; }
.modal.refusal .appt-script { border-left-color: #8a939e; }
.modal.appt { max-height: calc(100dvh - 36px); overflow-y: auto; }

/* ---------- pasul 4: contract + factura (NLC .stripe-invoice-panel / .invoice-actions) */
.nlr-workspace .closer-docs-panel { padding: 16px; border: 1px solid rgba(95,140,190,.28); border-radius: 14px; background: rgba(255,255,255,.03); }
.nlr-workspace .closer-docs-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 14px; }
.nlr-workspace .closer-docs-head > strong { font: 700 15px/1.4 Montserrat, Inter, sans-serif; color: #fff; }
.nlr-workspace .closer-docs-head > span { font: 800 12px/1.4 Montserrat, Inter, sans-serif; letter-spacing: .08em; color: #e6cd84; }
.nlr-workspace .closer-docs-gate .closer-warning { margin-top: 12px; }
.nlr-workspace .closer-docs-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.nlr-workspace .closer-docs-actions .btn { min-height: 44px; padding: 0 16px; border-radius: 12px; font: 700 14px Montserrat, Inter, sans-serif; }
.nlr-workspace .closer-docs-actions.is-locked .btn { opacity: .45; }
.nlr-workspace .closer-docs-stare { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 8px; }
.nlr-workspace .doc-stare { display: inline-flex; align-items: center; min-height: 26px; padding: 0 11px; border-radius: 999px; border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.05); font: 700 12px/1 Montserrat, Inter, sans-serif; color: #c9d3df; }
.nlr-workspace .doc-stare.is-ok { border-color: rgba(52,199,120,.5); background: rgba(52,199,120,.12); color: #bff0d2; }
.nlr-workspace .closer-docs-panel .integration-note { display: block; font: 500 12.5px/1.5 Montserrat, Inter, sans-serif; color: #b9c6d6; }

/* Programarea in fisa (NLC .appointment-card, in varianta din card) */
.nlr-workspace .closer-appointment { padding: 18px; border: 1px solid rgba(212,175,55,.45); border-radius: 12px; background: linear-gradient(145deg, rgba(212,175,55,.08), rgba(6,17,33,.4)); }
.nlr-workspace .closer-appointment-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.nlr-workspace .closer-appointment-head > strong { font: 700 16px/1.3 Montserrat, Inter, sans-serif; color: #fff; letter-spacing: .02em; }
.nlr-workspace .closer-appointment .pill.is-ok { border: 1px solid rgba(52,199,120,.5); background: rgba(52,199,120,.12); color: #bff0d2; }
.nlr-workspace .closer-appointment .script-intro { margin: 0 0 10px; font: 500 13.5px/1.55 Montserrat, Inter, sans-serif; color: #b9c6d6; }
.nlr-workspace .closer-appointment .op-line { margin: 0; font: 600 15.5px/1.6 Montserrat, Inter, sans-serif; color: #fff; }
.nlr-workspace .closer-appointment .op-line mark { background: none; color: #e6cd84; padding: 0; }
.nlr-workspace .closer-appointment .closer-warning { margin-top: 12px; }
.nlr-workspace .closer-appointment-fields { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); gap: 16px; align-items: end; margin-top: 16px; }
.nlr-workspace .closer-appointment .appt-save { width: 100%; min-height: 50px; margin-top: 16px; border-radius: 12px; font: 700 15px Montserrat, Inter, sans-serif; }

/* ---------- unelte closer */
.nlr-workspace .sheet-body > .closer-tools { margin: 0 auto 22px; }
.nlr-workspace .closer-tools .card-kicker { flex-wrap: wrap; margin-bottom: 16px; }
.nlr-workspace .closer-tools-prog-stare { margin-left: auto; display: inline-flex; align-items: center; min-height: 26px; padding: 0 11px; border-radius: 999px;
  border: 1px solid rgba(201,154,46,.55); background: rgba(212,175,55,.12); font: 700 12px/1 Montserrat, Inter, sans-serif; color: #f1d36a; }
.nlr-workspace .closer-tools-prog-stare.is-empty { border-color: rgba(255,255,255,.16); background: rgba(255,255,255,.05); color: #aebbc9; }
.nlr-workspace .closer-tools-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.nlr-workspace .closer-tools-group { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px; padding: 14px; border: 1px solid rgba(95,140,190,.28); border-radius: 12px; background: rgba(255,255,255,.03); }
.nlr-workspace .closer-tools-group > small { flex: 0 0 100%; font: 800 10.5px/1.4 Montserrat, Inter, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #c9a54a; }
.nlr-workspace .closer-tool { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 13px; border-radius: 999px; text-decoration: none;
  border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.05); color: #fff; font: 700 12.5px/1 Montserrat, Inter, sans-serif; }
.nlr-workspace .closer-tool.closer-btn-outline { border-color: rgba(212,175,55,.45); color: #e6cd84; background: rgba(212,175,55,.06); }
.nlr-workspace .closer-tool.is-chosen { border-color: #d4af37; background: rgba(212,175,55,.16); color: #fff; box-shadow: inset 0 0 0 1px #d4af37, 0 0 16px rgba(212,175,55,.25); }
.nlr-workspace .closer-tool:disabled, .nlr-workspace .closer-tool[aria-disabled="true"] { opacity: .45; cursor: not-allowed; }
.nlr-workspace .closer-tool svg { width: 14px; height: 14px; color: #f1d36a; }
.nlr-workspace .closer-tools-prog { margin-top: 14px; }

/* ---------- panoul de obiectii (mereu la indemana) */
.nlr-workspace .script-obiectii-fab { position: fixed; right: 22px; bottom: 112px; z-index: 60; min-height: 44px; padding: 0 18px; border-radius: 999px; cursor: pointer;
  border: 1px solid rgba(212,175,55,.6); background: linear-gradient(180deg, rgba(14,34,60,.96), rgba(6,17,33,.96)); color: #f1d36a;
  font: 700 13px Montserrat, Inter, sans-serif; letter-spacing: .1em; text-transform: uppercase; box-shadow: 0 14px 30px -12px rgba(0,0,0,.9), 0 0 18px rgba(212,175,55,.18); }
.nlr-workspace .script-obiectii-fab.is-open { background: rgba(212,175,55,.18); color: #fff; }
.nlr-workspace .script-obiectii-panel { position: fixed; right: 22px; bottom: 166px; z-index: 61; width: min(440px, calc(100vw - 32px)); max-height: min(70vh, 640px); display: flex; flex-direction: column;
  border: 1px solid rgba(95,140,190,.35); border-top: 1px solid rgba(212,175,55,.55); border-radius: 18px; overflow: hidden;
  background: linear-gradient(180deg, rgba(14,34,60,.98), rgba(6,17,33,.98)); box-shadow: 0 30px 80px -30px rgba(0,0,0,.95); }
.nlr-workspace .script-obiectii-panel[hidden] { display: none; }
.nlr-workspace .script-obiectii-panel > header { position: relative; display: flex; justify-content: space-between; gap: 10px; padding: 18px 54px 14px 20px; border-bottom: 1px solid rgba(212,175,55,.25); }
.nlr-workspace .script-obiectii-panel > header small { font: 800 10.5px/1.4 Montserrat, Inter, sans-serif; letter-spacing: .18em; color: #c9a54a; }
.nlr-workspace .script-obiectii-panel > header h2 { margin: 2px 0 0; font: 700 17px/1.3 Montserrat, Inter, sans-serif; color: #fff; text-transform: none; letter-spacing: .01em; }
.nlr-workspace .script-obiectii-panel .modal-x { position: absolute; top: 14px; right: 14px; }
.nlr-workspace .script-obiectii-list { overflow-y: auto; padding: 12px 14px 16px; display: grid; gap: 8px; }
.nlr-workspace .script-obiectie { border: 1px solid rgba(95,140,190,.28); border-radius: 10px; background: rgba(255,255,255,.04); }
.nlr-workspace .script-obiectie > summary { cursor: pointer; list-style: none; padding: 12px 14px; font: 700 14px/1.45 Montserrat, Inter, sans-serif; color: #fff; }
.nlr-workspace .script-obiectie > summary::-webkit-details-marker { display: none; }
.nlr-workspace .script-obiectie span { display: block; margin-bottom: 3px; font: 800 10px/1.2 Montserrat, Inter, sans-serif; letter-spacing: .16em; color: #8fb6dd; }
.nlr-workspace .script-obiectie > p { margin: 0; padding: 0 14px 14px; font: 500 14px/1.6 Montserrat, Inter, sans-serif; color: #e6ecf3; }
.nlr-workspace .script-obiectie > p span { color: #c9a54a; }
.nlr-workspace .script-obiectie[open] { border-color: rgba(212,175,55,.45); }

@media (max-width: 999px) {
  .nlr-workspace .closer-tools-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .nlr-workspace .script-card .op-line { font-size: 15.5px; line-height: 1.65; }
  .nlr-workspace .script-card .op-line.script-lead { font-size: 1rem; }
  .nlr-workspace .availability-actions button { flex: 1 1 100%; font-size: .86rem; }
  .nlr-workspace .field.script-q { padding: 12px 14px 12px 46px; }
  .nlr-workspace .field.script-q > .script-q-nr { left: 14px; top: 14px; }
  .nlr-workspace .field.script-q > p { font-size: 14.5px; }
  .nlr-workspace .closer-appointment-fields { grid-template-columns: 1fr; }
  .nlr-workspace .closer-docs-actions .btn { flex: 1 1 100%; }
  .nlr-workspace .script-obiectii-fab { right: 12px; bottom: 96px; min-height: 40px; padding: 0 14px; font-size: 12px; }
  .nlr-workspace .script-obiectii-panel { right: 16px; bottom: 144px; max-height: 62vh; }
  .nlr-workspace details.script-details { padding: 16px; }
}
