
/* Памятка кассира живёт НА странице кассы, а не в /guides: читают её ровно
   там, где нажимают кнопки — иначе про неё просто не знают. */
/* Этапы дня на карточке «Смена»: нумерация + стрелки. */
.shift-flow{ border:1px solid var(--bp-line); border-radius:var(--bp-radius);
  background:var(--bp-paper); padding:.6rem .75rem .7rem; }
.shift-flow__title{ font-size:.7rem; text-transform:uppercase; letter-spacing:.12em;
  color:var(--bp-ink-soft); margin-bottom:.45rem; }
.shift-step{ display:inline-flex; align-items:center; gap:.35rem; }
.shift-step__n{ display:inline-flex; align-items:center; justify-content:center;
  width:1.3rem; height:1.3rem; border-radius:50%; background:var(--bp-ink);
  color:var(--bp-paper); font-size:.72rem; font-weight:700; flex:none; }
.shift-arrow{ color:var(--bp-muted); }
.shift-flow__extra{ display:flex; align-items:center; gap:.5rem; flex-wrap:wrap;
  margin-top:.6rem; padding-top:.55rem; border-top:1px dashed var(--bp-line); }

.memo{ border:1px solid var(--bp-line); border-radius:var(--bp-radius-lg);
  background:var(--bp-sheet); box-shadow:var(--bp-shadow-card); overflow:hidden; }
.memo__bar{ display:flex; align-items:center; gap:.75rem; flex-wrap:wrap;
  padding:.7rem 1rem; background:linear-gradient(90deg, var(--bp-green) 0%, var(--bp-blue) 100%);
  color:#fff; cursor:pointer; }
.memo__bar h5{ margin:0; font-family:var(--ff-display); font-size:1.05rem; letter-spacing:.01em; }
.memo__bar .memo__sub{ font-size:.82rem; opacity:.92; }
.memo__bar .btn{ --bs-btn-color:#fff; --bs-btn-border-color:rgba(255,255,255,.55);
  --bs-btn-hover-bg:rgba(255,255,255,.16); --bs-btn-hover-border-color:#fff;
  --bs-btn-hover-color:#fff; }
.memo__body{ padding:.85rem 1rem 1rem; }

.memo-step{ height:100%; border:1px solid var(--bp-line); border-radius:var(--bp-radius);
  background:var(--bp-paper); overflow:hidden; display:flex; flex-direction:column; }
.memo-step__head{ display:flex; align-items:center; gap:.55rem; padding:.45rem .8rem;
  color:#fff; font-family:var(--ff-display); }
.memo-step__num{ display:inline-flex; align-items:center; justify-content:center;
  width:1.9rem; height:1.9rem; border-radius:50%; background:rgba(255,255,255,.22);
  font-size:1rem; flex:none; }
.memo-step__when{ font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; opacity:.9; }
.memo-step__title{ font-size:1rem; line-height:1.15; }
.memo-step--morning .memo-step__head{ background:var(--bp-green); }
.memo-step--day .memo-step__head{ background:var(--bp-blue); }
.memo-step--evening .memo-step__head{ background:var(--bp-stamp-red); }
.memo-step__body{ padding:.65rem .85rem .8rem; flex:1; }
.memo-step ol{ margin:0; padding-left:1.1rem; font-size:.87rem; }
.memo-step ol li{ margin-bottom:.45rem; }
.memo-step ol li:last-child{ margin-bottom:0; }

/* чип, повторяющий вид реальной кнопки на странице — чтобы взгляд нашёл её сразу */
.memo-btn{ display:inline-block; padding:.08rem .45rem; border-radius:var(--bp-radius-sm);
  border:1px solid currentColor; font-size:.85em; font-weight:600; white-space:normal;
  overflow-wrap:anywhere; }
.memo-btn--green{ color:var(--bp-green-dark); background:var(--bp-green-tint); }
.memo-btn--blue{ color:var(--bp-blue); background:var(--bp-blue-tint); }
.memo-btn--red{ color:var(--bp-stamp-red); background:var(--bp-red-tint); }
.memo-btn--warn{ color:var(--bp-warning-deep); background:var(--bp-warning-tint); }

.memo-why{ margin-top:.6rem; border-left:4px solid var(--bp-warning-fill);
  background:var(--bp-warning-tint); color:var(--bp-ink); border-radius:var(--bp-radius-sm);
  padding:.45rem .6rem; font-size:.82rem; }
.memo-why--danger{ border-left-color:var(--bp-stamp-red); background:var(--bp-red-tint); }

.memo-rule{ margin-top:.85rem; border-radius:var(--bp-radius); padding:.7rem .9rem;
  background:var(--bp-ink); color:var(--bp-paper); font-family:var(--ff-display);
  font-size:.95rem; line-height:1.3; }
.memo-rule span{ color:var(--bp-green-on-dark); }

.memo-trouble th{ font-size:.72rem; text-transform:uppercase; letter-spacing:.08em;
  color:var(--bp-ink-soft); }
.memo-trouble td{ font-size:.83rem; vertical-align:top; }

/* Телефон: поле суммы и две кнопки — отдельными строками. В input-group они
   стояли вплотную (поле 165px, кнопки по 95), а операции противоположные и
   обе печатают служебный документ на ККТ. */
@media (max-width: 767.98px){
  .cash-box{ flex-direction:column; gap:8px; }
  .cash-box > .form-control, .cash-box > .btn{
    width:100%; border-radius:var(--bp-radius-sm, 8px) !important; min-height:40px; }
}

/* Печать: на стойке памятку вешают на стену — печатаем ТОЛЬКО её */
@media print{
  body *{ visibility:hidden !important; }
  .memo, .memo *{ visibility:visible !important; }
  .memo{ position:absolute; left:0; top:0; width:100%; border:none; box-shadow:none; }
  .memo__bar{ background:var(--bp-ink) !important; -webkit-print-color-adjust:exact;
    print-color-adjust:exact; cursor:default; }
  .memo__bar .btn, .memo__bar .memo__chevron{ display:none !important; }
  .memo-step, .memo-step__head, .memo-why, .memo-rule, .memo-btn{
    -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  .memo-step{ break-inside:avoid; }
}
