/* Общий журнал: одни и те же таблица, фильтры и карточка во всех разделах. */
.workspace .journal-page {max-width:none}
.workspace .journal-search, .workspace .journal-list, .workspace .journal-detail {
  background:var(--panel); border:1px solid var(--line); border-radius:14px;
  box-shadow:var(--shadow);
}
.workspace .journal-search {padding:17px 20px; margin:15px 0 12px}
.workspace .journal-search > label {display:block; font-size:12px; font-weight:750; margin-bottom:9px}
.workspace .journal-search-controls {display:flex; flex-wrap:wrap; align-items:center; gap:10px}
.workspace .journal-search-controls > input[type=search] {flex:1 1 240px; min-width:0}
.workspace .journal-search-controls input {min-height:42px; padding:10px 12px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--ink); font:inherit}
.workspace .journal-search-controls .button {min-height:42px; padding:9px 19px; gap:0}
.workspace .journal-search-controls a {font-size:12px; font-weight:700; color:var(--accent)}
.workspace .journal-day-label {display:flex; align-items:center; gap:8px; font-size:12px; font-weight:750; white-space:nowrap}
.workspace .journal-day-label input {max-width:175px}
.workspace .journal-filters {display:flex; gap:7px; overflow-x:auto; padding:3px 0 14px; scrollbar-width:thin}
.workspace .journal-filters a {white-space:nowrap; padding:8px 12px; border:1px solid var(--line); border-radius:999px; background:var(--panel); color:var(--muted); font-size:12px; font-weight:700}
.workspace .journal-filters a:hover, .workspace .journal-filters a[aria-current=true] {background:var(--accent-soft); color:var(--accent); border-color:var(--accent)}
.workspace .journal-layout {display:grid; grid-template-columns:minmax(0,1.48fr) minmax(295px,1fr); gap:14px; align-items:start}
.workspace .journal-list, .workspace .journal-detail {min-width:0; overflow:hidden}
.workspace .journal-detail {position:sticky; top:14px; padding:22px; max-height:calc(100vh - 28px); overflow-y:auto}
.workspace .journal-list-heading {display:flex; align-items:center; justify-content:space-between; gap:12px; padding:17px 20px; border-bottom:1px solid var(--line)}
.workspace .journal-list-heading h2 {font-size:17px; margin:0}
.workspace .journal-list-heading span {font-size:12px; color:var(--muted)}
.workspace .journal-table-scroll {overflow-x:auto}
.workspace .journal-table {width:100%; border-collapse:collapse; font-size:13px}
.workspace .journal-table th {text-align:left; font-size:10px; text-transform:uppercase; letter-spacing:.09em; color:var(--muted); background:var(--accent-soft); padding:13px 16px}
.workspace .journal-table td {vertical-align:top; padding:15px 16px; border-bottom:1px solid var(--line); min-width:105px}
.workspace .journal-table tbody tr:last-child td {border-bottom:0}
.workspace .journal-table tbody tr:hover, .workspace .journal-table .journal-selected {background:var(--accent-soft)}
.workspace .journal-date {white-space:nowrap; font-weight:750}
.workspace .journal-table small, .workspace .journal-date small {display:block; font-size:11px; font-weight:450; line-height:1.45; margin-top:6px; color:var(--muted); white-space:normal}
.workspace .journal-row-link {color:var(--accent); font-weight:750; text-decoration:none; overflow-wrap:anywhere}
.workspace .journal-row-link:hover {text-decoration:underline}
.workspace .journal-badge {display:inline-block; padding:5px 9px; border-radius:99px; color:var(--accent); background:var(--panel); border:1px solid var(--line); white-space:nowrap; font-size:11px; font-weight:750}
.workspace .journal-detail-head {padding-bottom:16px; border-bottom:1px solid var(--line)}
.workspace .journal-detail-head h2 {font-size:23px; line-height:1.25; overflow-wrap:anywhere; margin:4px 0 8px}
.workspace .journal-detail-head small {color:var(--muted)}
.workspace .journal-field-list {margin:0}
.workspace .journal-field-list > div {padding:13px 0; border-bottom:1px solid var(--line)}
.workspace .journal-field-list dt {font-size:11px; color:var(--muted); margin-bottom:5px}
.workspace .journal-field-list dd {margin:0; overflow-wrap:anywhere; font-size:13px; line-height:1.55}
.workspace .journal-detail-actions {display:flex; flex-wrap:wrap; gap:8px; margin-top:18px}
.workspace .journal-detail-actions .button {min-height:42px; padding:10px 14px; gap:0}
.workspace .journal-summary{border-top:1px solid var(--line);padding-top:16px;margin-top:14px}
.workspace .journal-summary h3{font-size:15px;margin:0 0 12px}
.workspace .journal-summary-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:12px}
.workspace .journal-summary-row span{min-width:0;overflow-wrap:anywhere}.workspace .journal-summary-row strong{white-space:nowrap}
.workspace .journal-summary-totals{display:grid;gap:7px;margin:14px 0;font-size:12px;color:var(--muted)}
.workspace .journal-summary-totals strong{font-size:16px;color:var(--ink)}
.workspace .journal-empty {padding:20px 0; color:var(--muted)}
.workspace .journal-empty h2 {color:var(--ink)}
.workspace .journal-back {display:none; font-size:12px; color:var(--accent); margin-bottom:15px; font-weight:750}
.workspace .booking-journal-table th:last-child {min-width:225px}
.workspace .booking-journal-table td:nth-child(2) {min-width:210px}
.workspace .journal-detail .booking-status-actions {margin-top:19px}
.workspace .booking-notify-form{margin-top:16px}.workspace .booking-notify-form .button{min-height:42px;padding:10px 14px;gap:0}.workspace .booking-notify-form .button:disabled{opacity:.55;cursor:not-allowed}
@media (max-width:1250px) {
  .workspace .journal-layout {grid-template-columns:minmax(0,1fr) minmax(270px,.85fr)}
  .workspace .booking-journal-table .journal-row-actions {min-width:225px}
}
@media (max-width:760px) {
  .workspace .journal-detail-page .journal-search,
  .workspace .journal-detail-page .journal-filters,
  .workspace .journal-detail-page .booking-actions,
  .workspace .journal-detail-page .page-header .button {display:none}
  .workspace .journal-layout {display:block}
  .workspace .journal-layout .journal-detail {display:none}
  .workspace .journal-layout.journal-mobile-detail .journal-list {display:none}
  .workspace .journal-layout.journal-mobile-detail .journal-detail {display:block; position:static; max-height:none}
  .workspace .journal-back {display:inline-block}
  .workspace .journal-table th, .workspace .journal-table td {padding:13px 10px}
  .workspace .journal-table th:first-child, .workspace .journal-table td:first-child {min-width:115px}
  .workspace .journal-search {padding:15px}
  .workspace .journal-search-controls .button {width:100%; justify-content:center}
  .workspace .booking-journal-table th:last-child, .workspace .booking-journal-table td:last-child {display:none}
  .workspace .booking-journal-table td:nth-child(2) {min-width:185px}
}
.workspace .crm-page{max-width:none}
.workspace .crm-actions{display:flex;flex-wrap:wrap;gap:8px}
.workspace .crm-actions .button{min-height:44px;padding:10px 15px;gap:0}
.workspace .crm-filters select,.workspace .crm-stage-form select{min-height:42px;border:1px solid var(--line);border-radius:9px;padding:8px 11px;background:var(--panel);color:var(--ink);font:inherit}
.workspace .crm-view-switch{display:flex;gap:6px;margin:16px 0 14px}
.workspace .crm-view-switch button{background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:9px 14px;color:var(--ink);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.workspace .crm-view-switch button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}
.workspace .crm-columns{display:flex;align-items:stretch;gap:12px;overflow-x:auto;padding:3px 2px 18px;scrollbar-width:thin}
.workspace .crm-columns[hidden],.workspace .crm-list[hidden]{display:none}
.workspace .crm-column{flex:0 0 clamp(205px,22%,275px);background:var(--accent-soft);border:1px solid var(--line);border-radius:14px;padding:12px;min-height:260px}
.workspace .crm-column h2{font-size:15px;margin:2px 2px 13px;display:flex;justify-content:space-between;gap:8px}
.workspace .crm-column h2 span{font-size:12px;color:var(--muted)}
.workspace .crm-tile{display:block;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--ink);padding:15px;margin-bottom:9px;box-shadow:var(--shadow)}
.workspace .crm-tile:hover{border-color:var(--accent)}
.workspace .crm-tile b,.workspace .crm-tile small,.workspace .crm-tile span{display:block;overflow-wrap:anywhere}
.workspace .crm-tile b{font-size:14px;margin-bottom:6px}.workspace .crm-tile small{font-size:11px;color:var(--muted);margin-top:4px}.workspace .crm-tile span{font-size:11px;color:var(--accent);margin-top:10px;font-weight:700}
.workspace .crm-empty{font-size:12px;color:var(--muted);margin:0 2px}
.workspace .crm-list{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:auto}
.workspace .crm-list .journal-table td{min-width:125px}
.workspace .crm-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.workspace .crm-card-grid .panel{background:var(--panel);border-color:var(--line);min-width:0;border-radius:14px}
.workspace .crm-stage-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:18px;align-items:end}
.workspace .crm-stage-form label{grid-column:1/-1;font-weight:700;font-size:12px}
.workspace .crm-stage-form .button{min-height:42px;padding:9px 13px;gap:0}
.workspace .crm-links{display:grid;gap:10px}.workspace .crm-links a{display:block;border:1px solid var(--line);border-radius:9px;padding:12px;color:var(--accent);font-weight:700;font-size:13px}
.workspace .crm-history{grid-column:1/-1}.workspace .crm-history-row{border-top:1px solid var(--line);padding:12px 0;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.workspace .crm-history-row small,.workspace .crm-history-row span{color:var(--muted);font-size:11px}
@media(max-width:760px){.workspace .crm-card-grid{grid-template-columns:1fr}.workspace .crm-columns{scroll-snap-type:x mandatory}.workspace .crm-column{flex-basis:86%;scroll-snap-align:center}.workspace .crm-stage-form{grid-template-columns:1fr}}
.workspace .schedule-page{max-width:none}
.workspace .booking-top-links{display:flex;flex-wrap:wrap;gap:8px}.workspace .booking-top-links .button{min-height:43px;padding:10px 14px;gap:0}
.workspace .schedule-mode{display:flex;gap:7px;margin:12px 0;flex-wrap:wrap}
.workspace .schedule-mode a{padding:9px 15px;border-radius:9px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:12px;font-weight:750}
.workspace .schedule-mode a[aria-current=page]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.workspace .schedule-filters select{min-height:42px;max-width:245px;min-width:140px;border:1px solid var(--line);border-radius:9px;padding:8px 11px;background:var(--panel);color:var(--ink);font:inherit}
.workspace .schedule-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0;font-size:13px}
.workspace .schedule-navigation a{color:var(--accent);font-weight:750}.workspace .schedule-navigation strong{font-size:17px}
.workspace .schedule-grid{display:grid;gap:12px;align-items:start}
.workspace .schedule-day{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}
.workspace .schedule-week{grid-template-columns:repeat(7,minmax(165px,1fr));overflow-x:auto;padding-bottom:12px}
.workspace .schedule-column{min-width:0;min-height:200px;border:1px solid var(--line);border-radius:14px;background:var(--accent-soft);padding:13px}
.workspace .schedule-column h2{font-size:14px;display:flex;justify-content:space-between;gap:8px;margin:2px 1px 14px}.workspace .schedule-column h2 small{color:var(--muted);font-size:12px}
.workspace .schedule-booking{display:grid;gap:6px;margin:0 0 9px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:9px;padding:11px;background:var(--panel);color:var(--ink);box-shadow:var(--shadow);overflow-wrap:anywhere}
.workspace .schedule-booking:hover{border-color:var(--accent)}
.workspace .schedule-booking strong{color:var(--accent);font-size:13px}.workspace .schedule-booking span{font-size:13px;font-weight:750}.workspace .schedule-booking small{color:var(--muted);font-size:11px}.workspace .schedule-booking em{font-style:normal;font-size:10px;color:var(--muted)}
.workspace .schedule-status-declined,.workspace .schedule-status-cancelled{opacity:.65;border-left-color:var(--muted)}
.workspace .schedule-status-arrived{border-left-color:#389d68}
@media(max-width:760px){.workspace .schedule-week{display:flex;scroll-snap-type:x mandatory}.workspace .schedule-week .schedule-column{flex:0 0 78%;scroll-snap-align:center}.workspace .schedule-navigation strong{order:-1;width:100%}.workspace .schedule-filters select{max-width:none;width:100%}}
