/*
 * Eventform application foundation and workflows.
 *
 * The global application cascade continues in app-premium.css,
 * app-calendar.css and app-dashboard.css. Shared primitives live in core.css;
 * the final White Circus visual layer lives in theme.css.
 */

/* Compact event form and history table */
.panel{padding:20px}
.event-form-section{padding:22px 22px 24px}
.event-header-card{gap:18px}
.event-table{border-spacing:0 8px}
.event-table tbody td:first-child{border-top-left-radius:14px;border-bottom-left-radius:14px}
.event-table tbody td:last-child{border-top-right-radius:14px;border-bottom-right-radius:14px}
input,select,textarea{padding:9px 11px;border-radius:12px;font-size:calc(.9rem + 1px);line-height:1.25}
textarea{min-height:88px}
label{gap:6px}
.form-grid,.stack,.stack-lg,.filters{gap:12px}
.summary-card{padding:14px 16px;border-radius:18px;gap:6px}
.summary-card small{font-size:calc(.86rem + 1px)}
.summary-card strong{font-size:calc(1.35rem + 1px)}
.hero-metrics div,.stat-card{padding:14px 16px}
.checkbox-card{padding:10px 12px;border-radius:14px}
.button{padding:10px 16px}
.button-small{padding:8px 12px;font-size:calc(.88rem + 1px)}
.audit-table-wrap{margin-top:4px}
.audit-table th,.audit-table td{vertical-align:top}
.audit-table tbody td{padding:10px 12px}
.audit-table tbody tr:nth-child(odd){background:rgba(155,111,69,.04)}
input[readonly]{background:#f7f2eb;color:#6a6052}

.recipient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.event-table input[type="datetime-local"]{min-width:172px}
.audit-table .actions-col{text-align:right;white-space:nowrap}
@media (max-width:1100px){
  .recipient-grid{grid-template-columns:1fr}
}

.is-hidden{display:none!important}

.autosave-status{padding:8px 2px;font-size:calc(calc(13px * var(--font-scale)) + 1px)}
.autosave-status--success{color:#24613e}
.autosave-status--warning{color:#8b5e19}
.autosave-status--error{color:#a2463f;font-weight:600}

.inline-field-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.event-form > .autosave-status,.event-form > .form-actions,.event-form > datalist,.event-form > script,.event-form > input[type="hidden"]{grid-column:1 / -1}
.event-section--header{order:1}
.event-section--notes{order:2}
.event-section--todo{order:3}

@media (max-width:1100px){.event-section--header,
.event-section--notes,
.event-section--todo,
.event-section--summary,
.event-section--costs,
.event-section--sales,
.event-section--staff,
.event-form > .autosave-status,
.event-form > .form-actions{grid-column:1}}

/* Event form UX refinements */
.badge-muted{background:#dde8f4;color:#152538;border-color:#c3d3e6}
.badge-info{background:#dff6f2;color:#114a42;border-color:#b8e5dc}
.badge-success{background:#d9eccf;color:#234a26;border-color:#bdd9ae}
.badge-danger{background:#f2c5c2;color:#6e1d1d;border-color:#e5a4a0}
.badge-dark{background:#d8d8d8;color:#383838;border-color:#c1c1c1}

.brand-mark--image,.event-header-logo--image{background:#fff;border:1px solid rgba(122,98,70,.14);box-shadow:0 10px 24px rgba(45,33,20,.08)}
.brand-mark--image{padding:8px}
.brand-mark--image img,.event-header-logo--image img{display:block;width:100%;height:100%;object-fit:contain}
.event-header-logo--image{padding:10px}

.status-select{font-weight:600;color:#2d1b12;border-width:1px}
.status-select--draft{background:#dbe7f3;border-color:#97aec8}
.status-select--planned{background:#d8f1ea;border-color:#7fb7a9}
.status-select--cancelled{background:#ec8b85;border-color:#cf5f58;color:#311313}
.status-select--completed{background:#d7d7d7;border-color:#a8a8a8;color:#2b2b2b}

.event-section{position:relative;overflow:hidden}

.event-block{--block-bg:rgba(255,255,255,.72);--block-border:rgba(122,98,70,.12);background:var(--block-bg);border-color:var(--block-border)}
.event-block--costs-drinks,.event-block--sales-drinks{--block-bg:rgba(249,224,224,.72);--block-border:rgba(191,97,97,.24)}
.event-block--costs-menu,.event-block--sales-menu{--block-bg:rgba(223,241,232,.72);--block-border:rgba(64,138,105,.22)}
.event-block--costs-staff{--block-bg:rgba(255,239,217,.74);--block-border:rgba(184,124,52,.22)}
.event-block--costs-other_included,.event-block--sales-other_included{--block-bg:rgba(229,239,247,.72);--block-border:rgba(90,133,173,.22)}
.event-block--costs-other_excluded,.event-block--sales-other_excluded{--block-bg:rgba(239,238,234,.82);--block-border:rgba(133,126,116,.2)}
.event-block .section-total{background:rgba(255,255,255,.62)}
.section-title-input{flex:1 1 auto;max-width:none;border-radius:14px;border:2px solid rgba(21,130,92,.95);background:rgba(255,255,255,.78);font-size:calc(clamp(1.02rem,calc(1.15vw * var(--font-scale)),1.38rem) + 1px);font-weight:700;text-transform:uppercase;color:#0d2834}
.section-title-input:focus{outline:none;box-shadow:0 0 0 4px rgba(21,130,92,.12)}

.event-table thead th,.event-table tbody td{vertical-align:middle}
.event-table tbody td{text-align:center}
.event-table tbody td input,.event-table tbody td select{margin-inline:auto;text-align:center}
.event-table tbody td strong,.event-table tbody td .small-note{display:inline-block;width:100%;text-align:center}
.event-table tbody td:last-child{width:74px}
.event-table [data-sales-vat]{padding-right:22px;font-weight:600}
.event-table input[type="text"]{text-align:center}
.event-table input[type="number"],.event-table input[type="datetime-local"],.event-table input[type="time"],.event-table select{font-weight:500}

/* Section ordering and readability refinements */
.event-section--summary{order:4;}
.event-section--costs{order:5}
.event-section--sales{order:6}
.event-section--staff{order:7}

.section-stack{gap:18px}
.section-head-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}
.section-move-actions{display:inline-flex;align-items:center;gap:8px}
.section-move-actions .button:disabled{opacity:.45;cursor:not-allowed;transform:none}
.event-table--sales col.col-unit,
.event-table--sales col.col-total{width:11%}

.event-table input,.event-table select{min-width:0;max-width:100%}
.event-table input[type="text"]{padding:8px 10px}
.event-table input[type="number"],.event-table input[type="datetime-local"],.event-table input[type="time"],.event-table select{font-size:calc(.8rem + 1px);padding:8px 10px}
.event-table tbody td:first-child input[type="text"]{padding-inline:10px;}

.summary-grid{align-items:stretch}
.summary-card{min-height:104px}
.summary-card strong{line-height:1.05}

@media (max-width:1400px){
  .event-table--sales col.col-label{width:40%}
  .event-table--sales col.col-qty{width:9%}
  .event-table--sales col.col-unit{width:10%}
  .event-table--sales col.col-total{width:11%}
  .event-table--sales col.col-vat{width:8%}
  .event-table--sales col.col-total-vat{width:22%}
  .event-table input[type="text"]{font-size:calc(.76rem + 1px)}
}
@media (max-width:1280px){
  .section-head-actions .button{padding:9px 12px}
}
@media (max-width:1100px){
  .event-section--summary,.event-section--header,.event-section--staff,.event-form > .autosave-status,.event-form > .form-actions{grid-column:1}
  .section-head-actions{justify-content:flex-start}
}

/* Event form two-column layout */
.event-form{
  grid-template-areas:
    "header header"
    "notes todo"
    "summary summary"
    "costs sales"
    "staff staff"
    "actions actions";
}
.event-form > .autosave-status,
.event-form > datalist,
.event-form > script,
.event-form > input[type="hidden"]{grid-column:1 / -1}
.event-form > .form-actions{grid-area:actions;grid-column:1 / -1}
.event-section--header{grid-area:header;grid-column:1 / -1}
.event-section--notes{grid-area:notes;grid-column:auto}
.event-section--todo{grid-area:todo;grid-column:auto}
.event-section--summary{grid-area:summary;grid-column:1 / -1}
.event-section--costs{grid-area:costs;grid-column:auto}
.event-section--sales{grid-area:sales;grid-column:auto}
.event-section--staff{grid-area:staff;grid-column:1 / -1}

.event-block > .panel-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
}
.section-head-actions{
  min-width:0;
}
.section-move-actions .button{
  padding-inline:10px;
}
.section-title-input{
  width:100%;
  min-width:0;
  font-size:calc(clamp(.88rem,calc(.9vw * var(--font-scale)),1.05rem) + 1px);
  letter-spacing:-.01em;
}
.event-block h4{
  font-size:calc(clamp(1rem,calc(1vw * var(--font-scale)),1.18rem) + 1px);
}

@media (max-width:1280px){
  .section-title-input{font-size:calc(.86rem + 1px);padding:8px 10px}
  .event-block > .panel-head{grid-template-columns:minmax(0,1fr);}
  .section-head-actions{justify-content:flex-start}
}
@media (max-width:1100px){
  .event-form{
    grid-template-areas:
      "header"
      "notes"
      "todo"
      "summary"
      "costs"
      "sales"
      "staff"
      "actions";
  }
  .event-section--notes,
  .event-section--todo,
  .event-section--summary,
  .event-section--costs,
  .event-section--sales,
  .event-section--staff,
  .event-form > .form-actions{grid-column:1 / -1}
}

/* Event form layout and readability */
.event-form{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px;
  align-items:start;
}
.event-form > .autosave-status,
.event-form > datalist,
.event-form > script,
.event-form > input[type="hidden"],
.event-form > .form-actions,
.event-section--header,
.event-section--summary,
.event-section--staff{grid-column:1 / -1 !important}
.event-section--notes,.event-section--costs{grid-column:1 !important}
.event-section--todo,.event-section--sales{grid-column:2 !important}

.has-custom-section-color{
  background:var(--section-custom-bg) !important;
  border-color:var(--section-custom-border) !important;
}
.section-color-control{
  display:inline-flex;
  align-items:center;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.75);
}
.section-color-control span{
  color:var(--muted);
  font-weight:600;
  letter-spacing:.03em;
}
.section-color-control input[type="color"]{
  padding:0;
  border:none;
  background:transparent;
  border-radius:999px;
  cursor:pointer;
}
.section-title-input{
  font-size:calc(clamp(.76rem,calc(.8vw * var(--font-scale)),.95rem) + 1px) !important;
}
.event-block h4{
  font-size:calc(clamp(.84rem,calc(.9vw * var(--font-scale)),1.02rem) + 1px) !important;
  line-height:1.1;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.section-formula-note,
.inline-note{
  font-size:calc(.76rem + 1px);
  color:var(--muted);
}
.section-formula-note{margin:-6px 0 0}
.event-cell-note{
  text-align:center;
  color:var(--muted);
  font-size:calc(.76rem + 1px);
}

.event-table thead th{
  font-size:calc(.72rem + 1px);
  padding:0 8px 6px;
}
.event-table tbody td{
  padding:7px 8px;
}
.event-table input[type="text"]{
  font-size:calc(.72rem + 1px) !important;
}
.event-table input[type="number"],
.event-table input[type="datetime-local"],
.event-table input[type="time"],
.event-table select{
  font-size:calc(.76rem + 1px) !important;
  padding:7px 9px !important;
}
.event-table strong{font-size:calc(.92rem + 1px)}
.event-table--cost-staff col.col-hours,
.event-table--cost-staff col.col-count{width:10%}

.event-section--summary .summary-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.event-section--summary .summary-card,
.summary-card--tiny{
  padding:10px 12px;
  min-height:76px;
  border-radius:16px;
}
.event-section--summary .summary-card small,
.summary-card--tiny small{
  font-size:calc(.75rem + 1px);
}
.event-section--summary .summary-card strong,
.summary-card--tiny strong{
  font-size:calc(1.05rem + 1px);
}
.event-section--summary .settings-grid{
  max-width:none;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

@media (max-width:1280px){
  .section-color-control span{display:none}
  .event-section--summary .summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1100px){
  .event-form{grid-template-columns:1fr !important}
  .event-section--notes,
  .event-section--todo,
  .event-section--costs,
  .event-section--sales{grid-column:1 / -1 !important}
  .event-section--summary .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .event-section--summary .summary-grid{grid-template-columns:1fr}
}

/* readability override: values in quantity/price/date fields must always remain visible */
.event-table{
  table-layout: fixed !important;
}
.event-table thead th,
.event-table tbody td{
  white-space: normal;
  overflow: visible;
}
.event-table input,
.event-table select,
.event-table textarea{
  min-width: 0;
  max-width: 100%;
}
.event-table input[type="number"],
.event-table input[type="datetime-local"],
.event-table input[type="date"],
.event-table input[type="time"],
.event-table select{
  font-variant-numeric: tabular-nums;
}
.event-table input[type="number"]::-webkit-outer-spin-button,
.event-table input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance: none;
  margin: 0;
}
.event-table input[type="number"]{
  -moz-appearance: textfield;
  appearance: textfield;
}
.event-table tbody td:first-child input[type="text"]{
  text-align: left;
  font-size: calc(.7rem + 1px) !important;
  line-height: 1.16;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.event-table [data-sales-qty],
.event-table [data-cost-qty],
.event-table [data-staff-hours],
.event-table [data-staff-count],
.event-table [data-plan-count]{
  min-width: 4.35rem !important;
  padding-inline: 6px !important;
  font-size: calc(.82rem + 1px) !important;
}
.event-table [data-sales-unit],
.event-table [data-cost-unit],
.event-table [data-staff-rate],
.event-table [data-plan-rate]{
  min-width: 4.85rem !important;
  padding-inline: 6px !important;
  font-size: calc(.82rem + 1px) !important;
}
.event-table [data-sales-vat]{
  min-width: 4.8rem !important;
  padding-inline: 6px !important;
}
.event-table--sales col.col-label{width: 30% !important}
.event-table--sales col.col-qty{width: 11% !important}
.event-table--sales col.col-unit{width: 12% !important}
.event-table--sales col.col-total{width: 13% !important}
.event-table--sales col.col-vat{width: 11% !important}
.event-table--sales col.col-total-vat{width: 15% !important}
.event-table--cost-general col.col-label{width: 42% !important}
.event-table--cost-general col.col-qty,
.event-table--cost-general col.col-unit{width: 14% !important}
.event-table--cost-general col.col-total{width: 18% !important}
.event-table--cost-staff col.col-label{width: 30% !important}
.event-table--cost-staff col.col-hours{width: 12% !important}
.event-table--cost-staff col.col-count{width: 11% !important}
.event-table--cost-staff col.col-rate{width: 15% !important}
.event-table--cost-staff col.col-total{width: 22% !important}
.event-table--cost-other-excluded col.col-label{width: 40%}
.event-table--cost-other-excluded col.col-percent{width: 9%}
.event-table--cost-other-excluded col.col-qty{width: 11%}
.event-table--cost-other-excluded col.col-unit{width: 14%}
.event-table--cost-other-excluded col.col-total{width: 18%}
.event-table col.col-actions{width: 58px !important}
.event-meta-grid input[type="date"],
.event-meta-grid input[type="datetime-local"]{
  min-width: 0;
  font-size: calc(.9rem + 1px);
  padding: 11px 12px;
}
@media (max-width: 1450px){
  .event-table thead th{font-size: calc(.69rem + 1px) !important}
  .event-table tbody td{padding: 7px 6px !important}
  .event-table tbody td:first-child input[type="text"]{font-size: calc(.68rem + 1px) !important}
}
@media (max-width: 1320px){
  .event-table--sales col.col-label{width: 28% !important}
  .event-table--sales col.col-qty{width: 12% !important}
  .event-table--sales col.col-unit,
  .event-table--sales col.col-total{width: 13% !important}
  .event-table--sales col.col-vat{width: 12% !important}
  .event-table--sales col.col-total-vat{width: 14% !important}
  .event-table--cost-general col.col-label{width: 39% !important}
  .event-table--cost-general col.col-qty,
  .event-table--cost-general col.col-unit{width: 15% !important}
  .event-table--cost-general col.col-total{width: 19% !important}
}

/* compact section headers */

.event-block > .panel-head{
  margin-bottom:12px;
}
.section-head-actions{
  gap:5px !important;
  align-items:center !important;
}
.section-title-input,
.event-block h4{
  min-height:36px !important;
  margin:0;
  padding:6px 12px !important;
  border-radius:13px;
  line-height:1.02 !important;
}
.section-title-input{
  font-size:calc(clamp(.74rem,calc(.78vw * var(--font-scale)),.9rem) + 1px) !important;
}
.event-block h4{
  display:flex;
  align-items:center;
  font-size:calc(clamp(.76rem,calc(.8vw * var(--font-scale)),.94rem) + 1px) !important;
  border:2px solid rgba(21,130,92,.95);
  background:rgba(255,255,255,.78);
  color:#0d2834;
  flex:1 1 auto;
}
.section-color-control{
  gap:6px;
}
.section-color-control span{
  font-size:calc(.68rem + 1px);
}
.section-head-actions .button.button-small{
  font-size:calc(.8rem + 1px);
}
.section-move-actions .button{
  padding:0 !important;
}

/* Lokální verze cenových nabídek a výběr řádků klientské kalkulace. */
body:not(.auth-page--login) .event-form .event-table.event-table--sales th:last-child,
body:not(.auth-page--login) .event-form .event-table.event-table--sales td:last-child{
  min-width:68px;
}
body:not(.auth-page--login) .event-form .event-table.event-table--cost-staff col.col-actions{
  width:68px !important;
}
body:not(.auth-page--login) .event-form .event-table.event-table--cost-staff th:last-child,
body:not(.auth-page--login) .event-form .event-table.event-table--cost-staff td:last-child{
  min-width:68px;
}
body:not(.auth-page--login) .event-form .event-table.event-table--cost-general col.col-actions,
body:not(.auth-page--login) .event-form .event-table.event-table--cost-other-excluded col.col-actions{width:68px !important;}
body:not(.auth-page--login) .event-form .event-table.event-table--cost-general th:last-child,
body:not(.auth-page--login) .event-form .event-table.event-table--cost-general td:last-child,
body:not(.auth-page--login) .event-form .event-table.event-table--cost-other-excluded th:last-child,
body:not(.auth-page--login) .event-form .event-table.event-table--cost-other-excluded td:last-child{min-width:68px;}
.sales-offer-controls{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  min-width:52px;
}
body:not(.auth-page--login) .event-form .offer-row-visibility{
  display:flex !important;
  align-items:center;
  gap:0;
  margin:0;
  white-space:nowrap;
  cursor:pointer;
  color:#2e5f47;
  width:16px;
}
body:not(.auth-page--login) .event-form .offer-row-visibility input[type="checkbox"]{
  width:16px !important;
  min-width:16px;
  height:16px;
  margin:0;
  accent-color:#2f815d;
}
.event-offer-versions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.86);
}
.event-offer-versions__label{
  color:var(--muted);
  font-size:calc(.68rem + 1px);
  font-weight:700;
}

.event-form [data-offer-new-link][hidden],
.event-form .form-actions > button[hidden]{
  display:none !important;
}

[data-offer-snapshot-active] input:disabled,
[data-offer-snapshot-active] select:disabled,
[data-offer-snapshot-active] textarea:disabled{
  opacity:1;
  color:inherit;
  -webkit-text-fill-color:currentColor;
  cursor:default;
}
[data-offer-snapshot-active] button:disabled{
  opacity:.4;
}

/* section title centering + dashboard row centering */
.event-block > .panel-head{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:nowrap;
}
.event-block > .panel-head > .section-title-input,
.event-block > .panel-head > .section-title-display,
.event-block > .panel-head > h4{
  flex:0 1 auto;
  width:auto;
  max-width:min(100%, calc(100% - 210px));
  margin:0;
}
.section-title-input,
.section-title-display,
.event-block h4{
  border-radius:13px;
  border:2px solid rgba(21,130,92,.95);
  background:rgba(255,255,255,.78);
  color:#0d2834;
  text-transform:uppercase;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.section-title-input{
  min-height:36px !important;
  padding:0 12px !important;
  line-height:34px !important;
  white-space:pre-wrap;
  overflow:hidden;
  resize:none;
}
.section-title-input.is-multiline{
  padding:7px 12px !important;
  line-height:1.12 !important;
}
.section-title-display,
.event-block h4{
  display:flex;
  align-items:center;
  min-height:36px !important;
  padding:0 12px !important;
  line-height:1.1 !important;
}
.section-head-actions{
  margin-left:auto;
  flex:0 0 auto;
}
.section-color-control{
  min-height:34px !important;
  padding:3px 9px !important;
}
.section-color-control input[type="color"]{
  width:22px !important;
  height:22px !important;
}
.section-head-actions .button.button-small{
  min-height:34px !important;
  padding:6px 10px !important;
}
.section-move-actions .button{
  width:30px !important;
  min-width:30px !important;
  height:30px !important;
}

.dashboard-events-table th,
.dashboard-events-table td{
  text-align:center;
}
.dashboard-events-table td{
  padding-top:12px;
  padding-bottom:12px;
}
.dashboard-events-table__actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  white-space:nowrap;
}
.dashboard-events-table__actions form{
  margin:0;
}

@media (max-width:1280px){
  .event-block > .panel-head{
    flex-wrap:wrap;
    align-items:flex-start !important;
  }
  .event-block > .panel-head > .section-title-input,
  .event-block > .panel-head > .section-title-display,
  .event-block > .panel-head > h4{
    max-width:100%;
  }
}

/* top-level section colors + title sizing + dashboard action centering */
.panel-head--section-controls{
  align-items:flex-start;
}
.panel-head--section-controls .section-head-actions--top-level{
  margin-left:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.event-section-surface{
  padding:18px;
  border-radius:26px;
  border:1px solid rgba(122,98,70,.12);
  background:var(--section-custom-bg, rgba(255,255,255,.36));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35);
}
.event-section-surface.has-custom-section-color{
  background:var(--section-custom-bg, rgba(255,255,255,.36)) !important;
  border-color:var(--section-custom-border, rgba(122,98,70,.18)) !important;
}
.event-section--notes .event-section-surface .form-grid,
.event-section--summary .event-section-surface .summary-grid,
.event-section--summary .event-section-surface .settings-grid{
  margin:0;
}
#section-title-measure{
  position:absolute;
  left:-9999px;
  top:-9999px;
  visibility:hidden;
  white-space:pre;
  pointer-events:none;
}
.event-block > .panel-head > .section-title-input,
.event-block > .panel-head > .section-title-display,
.event-block > .panel-head > h4{
  min-width:0 !important;
}
.section-title-display,
.event-block h4{
  width:max-content;
  max-width:min(100%, calc(100% - 210px));
  justify-content:flex-start;
}
.section-title-input,
.section-title-display,
.event-block h4{
  align-self:center;
}
.section-title-input,
.section-title-display,
.event-block h4,
.event-block h4 span{
  vertical-align:middle;
}
.dashboard-events-table th,
.dashboard-events-table td{
  vertical-align:middle !important;
}
.dashboard-events-table__actions-wrap{
  display:flex;
}
.dashboard-events-table__delete{
  min-height:28px;
  padding:5px 10px !important;
  font-size:calc(.78rem + 1px) !important;
}
@media (max-width:1280px){
  .section-title-display,
  .event-block h4{
    max-width:100%;
  }
}
@media (max-width:1100px){
  .panel-head--section-controls{
    flex-wrap:wrap;
  }
  .panel-head--section-controls .section-head-actions--top-level{
    margin-left:0;
    width:100%;
    justify-content:flex-start;
  }
  .event-section-surface{
    padding:16px;
  }
}

/* dashboard actions + flat section backgrounds */
.event-section--header{background:#f7f1ea !important}
.event-section--notes{background:#f8f1e6 !important}
.event-section--todo{background:#f1eefb !important}
.event-section--summary{background:#eef4dd !important}
.event-section--costs{background:#fceeeb !important}
.event-section--sales{background:#ebf3f8 !important}
.event-section--staff{background:#ecf6f1 !important}

.event-block > .panel-head > .section-title-input,
.event-block > .panel-head > .section-title-display,
.event-block > .panel-head > h4{
  min-height:36px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.section-title-input,
.section-title-display,
.event-block h4{
  line-height:1 !important;
}
.section-title-input.is-multiline,
.section-title-display.is-multiline,
.event-block h4.is-multiline{
  min-height:36px !important;
  padding-top:7px !important;
  padding-bottom:7px !important;
  line-height:1.12 !important;
  align-items:flex-start !important;
}

.dashboard-events-table{
  table-layout:auto !important;
}
.dashboard-events-table tbody td{
  padding-top:16px !important;
  padding-bottom:16px !important;
  vertical-align:middle !important;
}
.dashboard-events-table__actions{
  text-align:center;
}
.dashboard-events-table__actions-wrap{
  display:inline-flex !important;
  gap:8px !important;
  white-space:nowrap;
}
.dashboard-events-table__actions-wrap form{
  display:inline-flex;
  align-items:center;
}
.dashboard-events-table__action-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 14px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:calc(.82rem + 1px);
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}
.dashboard-events-table__action-pill--detail{
  background:#eef4dd;
  border-color:#b5cfa1;
  color:#2b4d1f;
}
.dashboard-events-table__action-pill--delete{
  background:linear-gradient(135deg,var(--danger),#b14d45);
  border-color:#a84d46;
  color:#fff;
  cursor:pointer;
  box-shadow:none;
}
.dashboard-events-table__action-pill--delete:hover{
  transform:none;
}

/* saved client picker + deterministic section title alignment */

.event-block > .panel-head > .section-title-input,
.event-block > .panel-head > .section-title-display{
  flex:0 1 auto !important;
  width:auto;
  max-width:calc(100% - 210px);
  align-self:center !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  white-space:normal !important;
  overflow-wrap:anywhere;
  word-break:break-word;
  vertical-align:middle;
}

.section-title-display,
.section-title-input{
  margin:0;
  line-height:1.08 !important;
}

.section-title-display.is-multiline,
.section-title-input.is-multiline{
  align-items:flex-start !important;
}

/* section shell colors + stronger title vertical centering */
.event-section.has-custom-panel-color{
  background:var(--section-panel-bg) !important;
  border-color:var(--section-panel-border, rgba(155,111,69,.18)) !important;
}

.section-head-actions--top-level{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}

.section-color-control--shell span{
  min-width:auto;
}

.event-block > .panel-head > .section-title-input{
  display:block !important;
  box-sizing:border-box;
  min-height:40px !important;
  height:40px;
  padding:8px 14px 7px !important;
  line-height:1.1 !important;
  vertical-align:middle;
}

.event-block > .panel-head > .section-title-input.is-multiline{
  height:auto;
  padding:9px 14px !important;
  line-height:1.14 !important;
}

.event-block > .panel-head > .section-title-display,
.event-block > .panel-head > h4{
  display:flex !important;
  align-items:center !important;
  min-height:40px !important;
  padding:0 14px !important;
  line-height:1.1 !important;
}

.event-block > .panel-head > .section-title-display.is-multiline,
.event-block > .panel-head > h4.is-multiline{
  align-items:flex-start !important;
  padding-top:9px !important;
  padding-bottom:9px !important;
}

.template-apply-existing{padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.86);align-items:center}.template-apply-existing input{width:auto;margin:0}.template-apply-existing span{font-weight:600;color:var(--ink)}.template-apply-date{display:grid;gap:6px;padding:8px 14px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.86);min-width:190px}.template-apply-date span{font-weight:600;color:var(--ink);font-size:calc(.88rem + 1px)}.template-apply-date input{min-width:160px;padding:10px 12px;border-radius:14px}

/* centered section titles + centered sidebar account */
.event-block > .panel-head > .section-title-input,
.event-block > .panel-head > .section-title-display,
.event-block > .panel-head > h4{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.event-block > .panel-head > .section-title-input{
  text-align:center !important;
  padding-left:14px !important;
  padding-right:14px !important;
}
.event-block > .panel-head > .section-title-input.is-multiline,
.event-block > .panel-head > .section-title-display.is-multiline,
.event-block > .panel-head > h4.is-multiline{
  justify-content:center !important;
  text-align:center !important;
}

/* Global typography note: rem/em text follows --app-font-size; hard-coded px and viewport-clamp
   text is multiplied by --font-scale so the Appearance control changes the entire Eventform UI. */
/* compact application interface */
html{font-size:calc(var(--app-font-size,14px) + 1px)}
html.app-font-size-12{--app-font-size:calc(12px + 1px);--font-scale:.8571428571}
html.app-font-size-13{--app-font-size:calc(13px + 1px);--font-scale:.9285714286}
html.app-font-size-14{--app-font-size:calc(14px + 1px);--font-scale:1}
html.app-font-size-15{--app-font-size:calc(15px + 1px);--font-scale:1.0714285714}
html.app-font-size-16{--app-font-size:calc(16px + 1px);--font-scale:1.1428571429}
body:not(.auth-page--login){font-size:calc(1rem + 1px);line-height:1.42}
body:not(.auth-page--login) .eyebrow,
body:not(.auth-page--login) small.eyebrow{font-size:calc(.64rem + 1px);letter-spacing:.14em;margin-bottom:.5rem}
body:not(.auth-page--login) .badge{padding:5px 9px;font-size:calc(.7rem + 1px)}
body:not(.auth-page--login) .content{padding:24px 28px 34px}
body:not(.auth-page--login) .page-header{gap:12px;margin-bottom:17px}
body:not(.auth-page--login) .page-header h1{font-size:calc(clamp(2.15rem,calc(3.5vw * var(--font-scale)),3.35rem) + 1px)}
body:not(.auth-page--login) h2{font-size:calc(clamp(1.65rem,calc(2.6vw * var(--font-scale)),2.25rem) + 1px)}
body:not(.auth-page--login) h3{font-size:calc(1.38rem + 1px)}
body:not(.auth-page--login) .panel{padding:16px;border-radius:19px}
body:not(.auth-page--login) .panel-head{gap:12px;margin-bottom:12px}

body:not(.auth-page--login) .hero-metrics{gap:10px}
body:not(.auth-page--login) .hero-metrics div,
body:not(.auth-page--login) .stat-card{padding:12px 14px;border-radius:15px}
body:not(.auth-page--login) .hero-metrics strong,
body:not(.auth-page--login) .stat-card strong{font-size:calc(1.35rem + 1px)}
body:not(.auth-page--login) .grid{gap:12px;margin-bottom:12px}
body:not(.auth-page--login) .button{gap:6px;padding:8px 13px;font-size:calc(.84rem + 1px);box-shadow:0 7px 16px rgba(155,111,69,.16)}
body:not(.auth-page--login) .button-small{padding:7px 10px;font-size:calc(.78rem + 1px)}
body:not(.auth-page--login) .button-full{min-height:36px}
body:not(.auth-page--login) .alert{margin-bottom:12px;padding:11px 14px;border-radius:13px}
body:not(.auth-page--login) .filters,
body:not(.auth-page--login) .form-grid,
body:not(.auth-page--login) .stack{gap:10px}
body:not(.auth-page--login) .stack-lg{gap:16px}
body:not(.auth-page--login) label{gap:5px}
body:not(.auth-page--login) input,
body:not(.auth-page--login) select,
body:not(.auth-page--login) textarea{padding:7px 9px;border-radius:10px;font-size:calc(.83rem + 1px);line-height:1.22}
body:not(.auth-page--login) textarea{min-height:76px}
body:not(.auth-page--login) table{font-size:calc(.8rem + 1px)}
body:not(.auth-page--login) thead th{padding:8px 9px;font-size:calc(.72rem + 1px)}
body:not(.auth-page--login) tbody td{padding:9px}
body:not(.auth-page--login) .sub-row td{font-size:calc(.78rem + 1px)}
body:not(.auth-page--login) .small-note{font-size:calc(.76rem + 1px)}
body:not(.auth-page--login) .definition-list{gap:8px}
body:not(.auth-page--login) .definition-list div{padding:7px 0}
body:not(.auth-page--login) .event-form-section{padding:16px 16px 18px}
body:not(.auth-page--login) .event-header-card{gap:14px;padding:16px;border-radius:18px}
body:not(.auth-page--login) .event-header-logo{width:58px;height:58px;padding:8px}
body:not(.auth-page--login) .event-block{gap:10px;padding:13px;border-radius:16px}
body:not(.auth-page--login) .event-table{border-spacing:0 5px}
body:not(.auth-page--login) .event-table thead th{padding:0 7px 5px;font-size:calc(.67rem + 1px) !important}
body:not(.auth-page--login) .event-table tbody td{padding:6px 7px}
body:not(.auth-page--login) .event-table input[type="text"],
body:not(.auth-page--login) .event-table input[type="number"],
body:not(.auth-page--login) .event-table input[type="datetime-local"],
body:not(.auth-page--login) .event-table input[type="time"],
body:not(.auth-page--login) .event-table select{padding:6px 7px;font-size:calc(.69rem + 1px) !important}
body:not(.auth-page--login) .summary-grid{gap:10px}
body:not(.auth-page--login) .summary-card{min-height:82px;padding:10px 12px;border-radius:14px}
body:not(.auth-page--login) .summary-card small{font-size:calc(.74rem + 1px)}
body:not(.auth-page--login) .summary-card strong{font-size:calc(1.18rem + 1px)}
body:not(.auth-page--login) .section-total{padding:10px 12px;border-radius:13px}
body:not(.auth-page--login) .section-total strong{font-size:calc(1rem + 1px)}

@media (max-width:1100px){
  body:not(.auth-page--login) .content{padding:18px}
  
}

/* Shared password visibility controls (sign-in and password reset). */
.login-password-control{
  position:relative;
  display:block;
  min-width:0;
  color:inherit;
  font:inherit;
}
.login-password-control input{
  width:100%;
  padding-right:48px;
}
.auth-password-control{
  margin-top:6px;
}
.login-password-control__toggle{
  position:absolute;
  top:50%;
  right:7px;
  display:grid;
  width:36px;
  height:36px;
  place-items:center;
  padding:0;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#76685b;
  cursor:pointer;
  transform:translateY(-50%);
  transition:background .18s ease,color .18s ease,box-shadow .18s ease;
}
.login-password-control__toggle:hover{
  background:rgba(155,111,69,.1);
  color:var(--accent-dark);
}
.login-password-control__toggle:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(155,111,69,.18);
}
.login-password-control__icon{
  width:21px;
  height:21px;
}
.login-password-control__icon--hide,
.login-password-control__toggle[aria-pressed="true"] .login-password-control__icon--show{display:none}
.login-password-control__toggle[aria-pressed="true"] .login-password-control__icon--hide{display:block}

/* Comfortaa + scrollable dashboard news */
body,
button,
input,
select,
textarea,
h1,
h2,
h3,
h4,
h5,
h6,
.hero-metrics strong,
.stat-card strong,
.summary-card strong,
.section-total strong{
  font-family:'Comfortaa',system-ui,sans-serif;
}

.news-dialog__meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin:4px 0 0;
  color:var(--muted);
  font-size:calc(.66rem + 1px);
  line-height:1.4;
}

.news-dialog{
  width:min(920px,calc(100vw - 32px));
  max-width:920px;
  max-height:min(88vh,900px);
  margin:auto;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(121,95,66,.25);
  border-radius:22px;
  background:#fff;
  color:var(--ink);
  box-shadow:0 30px 80px rgba(35,26,18,.3);
}

.news-dialog--composer{
  width:min(1100px,calc(100vw - 32px));
  max-width:1100px;
}

.news-dialog[open]{
  display:flex;
  flex-direction:column;
}

.news-dialog::backdrop{
  background:rgba(34,27,21,.58);
  backdrop-filter:blur(4px);
}

.news-dialog__header{
  flex:0 0 auto;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:20px 22px 17px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(135deg,#fff 0%,#fff9f2 100%);
}

.news-dialog__header .eyebrow{
  margin-bottom:5px!important;
}

.news-dialog h3{
  margin:0;
  font-size:calc(1.35rem + 1px) !important;
  line-height:1.25;
}

.news-dialog__close{
  width:34px;
  height:34px;
  min-height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:calc(1.3rem + 1px);
  line-height:1;
  cursor:pointer;
}

.news-dialog__close:hover{
  border-color:rgba(155,111,69,.55);
  background:#fff7ed;
}

.news-dialog__body{
  min-height:0;
  overflow:auto;
  padding:18px 22px 22px;
}

.news-dialog .news-composer__form{
  position:static;
  width:100%;
  max-width:none;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.news-dialog__content{
  margin-top:13px;
  color:#4d463e;
  font-size:calc(.82rem + 1px);
  line-height:1.55;
  overflow-wrap:anywhere;
}

.news-read-confirmation{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
  padding:12px 14px;
  border:1px solid rgba(155,111,69,.28);
  border-radius:13px;
  background:#fff8ef;
}

.news-read-confirmation label{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0;
  font-size:calc(.78rem + 1px);
  font-weight:700;
  cursor:pointer;
}

.news-read-confirmation input{
  width:18px;
  height:18px;
  margin:0;
  accent-color:var(--accent);
}

.news-read-confirmation input:disabled{
  cursor:wait;
}

.news-read-confirmation__status{
  color:var(--success);
  font-size:calc(.68rem + 1px);
  text-align:right;
}

.news-read-confirmation__status.is-error{
  color:var(--danger);
}

.news-readers{
  margin-top:15px;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--paper-soft);
}

.news-readers__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.news-readers__header h4{
  margin:0;
  font-size:calc(.8rem + 1px);
}

.news-readers__header span{
  min-width:26px;
  padding:3px 8px;
  border-radius:999px;
  background:#fff;
  color:var(--accent-dark);
  font-size:calc(.68rem + 1px);
  font-weight:700;
  text-align:center;
}

.news-readers__list{
  max-height:190px;
  display:grid;
  gap:6px;
  margin:10px 0 0;
  padding:0;
  overflow:auto;
  list-style:none;
}

.news-readers__list[hidden],
.news-readers__empty[hidden]{
  display:none!important;
}

.news-readers__list li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:8px 9px;
  border-radius:9px;
  background:#fff;
}

.news-readers__list li>span{
  min-width:0;
  display:grid;
  gap:1px;
}

.news-readers__list strong{
  overflow:hidden;
  font-size:calc(.72rem + 1px);
  text-overflow:ellipsis;
  white-space:nowrap;
}

.news-readers__list small,
.news-readers__list time{
  color:var(--muted);
  font-size:calc(.62rem + 1px);
}

.news-readers__list time{
  flex:0 0 auto;
}

.news-readers__empty{
  margin:9px 0 0;
  color:var(--muted);
  font-size:calc(.68rem + 1px);
}

body.has-open-news-dialog{
  overflow:hidden;
}

.news-dialog__actions{
  display:flex;
  align-items:flex-start;
  gap:7px;
  flex-wrap:wrap;
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid rgba(229,218,203,.72);
}

.news-dialog__actions form{
  margin:0;
}

.news-dialog .news-edit__form{
  width:100%;
}

.news-edit{
  position:relative;
}

.news-edit > summary{
  list-style:none;
}

.news-edit > summary::-webkit-details-marker{
  display:none;
}

.news-composer__form{
  position:absolute;
  z-index:30;
  top:calc(100% + 8px);
  right:0;
  left:0;
  padding:15px;
  border:1px solid var(--line);
  border-radius:17px;
  background:#fff;
  box-shadow:0 22px 48px rgba(45,33,20,.18);
}

.news-composer__form label,
.news-edit__form label{
  font-size:calc(.74rem + 1px);
  font-weight:600;
}

.news-composer__form textarea,
.news-edit__form textarea{
  min-height:90px !important;
  resize:vertical;
}

.news-edit{
  max-width:100%;
}

.news-edit__form{
  width:min(520px,100%);
  margin-top:9px;
  padding:11px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--paper-soft);
}

.news-edit[open]{
  flex-basis:100%;
}

@media (max-width:640px){
  .news-composer__form{
    position:static;
    margin-top:8px;
  }
  .news-dialog{
    width:calc(100vw - 14px);
    max-height:94vh;
    border-radius:16px;
  }
  .news-dialog__header{
    padding:15px 16px 13px;
  }
  .news-dialog__body{
    padding:14px 16px 17px;
  }
  .news-read-confirmation{
    align-items:flex-start;
    flex-direction:column;
  }
  .news-read-confirmation__status{
    text-align:left;
  }
  .news-readers__list li{
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }
}

/* CZ / EN language selector */
.language-switch{position:relative;z-index:80;flex:0 0 auto}
.language-switch__button{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 11px;border:1px solid rgba(111,86,61,.35);border-radius:999px;background:rgba(255,255,255,.92);color:var(--ink);font:inherit;font-size:calc(.78rem + 1px);font-weight:600;cursor:pointer;box-shadow:0 8px 20px rgba(54,39,24,.08)}
.language-switch__button:hover,.language-switch.is-open .language-switch__button{background:#fff;border-color:rgba(111,86,61,.58)}
.language-switch__flag,.language-switch__option-flag{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.language-switch__flag{width:23px;height:16px}
.language-switch__flag-svg{display:block;width:23px;height:16px;border-radius:2px;box-shadow:0 0 0 1px rgba(20,25,36,.16);overflow:hidden}
.language-switch__flag[data-language-current-flag="cs"] .language-switch__flag-svg--en,
.language-switch__flag[data-language-current-flag="en"] .language-switch__flag-svg--cs{display:none}
.language-switch__current{min-width:20px;text-align:left}
.language-switch__chevron{font-size:calc(.85rem + 1px);line-height:1;transition:transform .18s ease}
.language-switch.is-open .language-switch__chevron{transform:rotate(180deg)}
.language-switch__menu{position:absolute;right:0;top:calc(100% + 8px);display:none;min-width:174px;padding:7px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(42,30,18,.16)}
.language-switch.is-open .language-switch__menu{display:grid;gap:3px}
.language-switch__option{display:grid;grid-template-columns:25px 28px 1fr;align-items:center;gap:8px;width:100%;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:var(--ink);font:inherit;font-size:calc(.8rem + 1px);text-align:left;text-decoration:none;cursor:pointer}
.language-switch__option:hover{background:rgba(155,111,69,.09)}
.language-switch__option.is-active{background:rgba(155,111,69,.13);color:#7d532e}
.language-switch__option-flag .language-switch__flag-svg{width:23px;height:16px}
.language-switch__option-code{font-weight:700;letter-spacing:.02em}
.language-switch__option-label{color:var(--muted);font-size:calc(.68rem + 1px);white-space:nowrap}
.language-switch__option.is-active .language-switch__option-label{color:inherit;opacity:.72}
.auth-language-switch{position:absolute;top:22px;right:22px;z-index:100}

/* Rich text editor */
.news-editor-field{display:grid;gap:7px}
.news-editor-field__label{font-size:calc(.74rem + 1px);font-weight:600}
.news-editor{position:relative;width:100%;min-width:0;overflow:visible;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 8px 24px rgba(13,38,51,.035);transition:border-color .16s ease,box-shadow .16s ease}
.news-editor:focus-within{border-color:rgba(10,167,173,.48);box-shadow:0 10px 28px rgba(13,92,101,.06),0 0 0 3px rgba(10,167,173,.07)}
.news-editor__toolbar{position:relative;display:flex;align-items:center;gap:0;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--line);border-radius:17px 17px 0 0;background:linear-gradient(180deg,#fff,#fbfdfe)}
.news-editor__group{display:inline-flex;align-items:center;gap:4px;min-height:36px;margin:2px 0;padding:0 6px;border-left:1px solid rgba(13,38,51,.09)}
.news-editor__group:first-child{padding-left:0;border-left:0}
.news-editor__group--history{margin-left:auto;padding-right:0}
.news-editor__tool,.news-editor__select{min-height:36px;border:1px solid #dbe9ec;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:calc(.7rem + 1px);box-shadow:0 2px 7px rgba(13,38,51,.025);transition:border-color .14s ease,background .14s ease,color .14s ease,box-shadow .14s ease}
.news-editor__tool{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:6px 9px;cursor:pointer}
.news-editor__tool:hover{border-color:#a9d9dd;background:#f1fbfc;color:#096f77;box-shadow:0 4px 10px rgba(10,167,173,.06)}
.news-editor__tool:focus-visible,.news-editor__select:focus-visible,.news-editor__color-input:focus-visible,.news-editor__dropzone:focus-visible{outline:2px solid rgba(10,167,173,.28);outline-offset:2px}
.news-editor__tool:disabled{opacity:.48;cursor:wait}
.news-editor__tool--icon{padding:7px}
.news-editor__tool--icon svg,.news-editor__attachment-button svg,.news-editor__dropzone-icon svg{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.news-editor__tool--letter{font-size:calc(.9rem + 1px)}
.news-editor__tool--letter strong,.news-editor__tool--letter em,.news-editor__tool--letter u,.news-editor__tool--letter s{font:inherit;font-weight:inherit;text-decoration-thickness:1px;text-underline-offset:2px}
.news-editor__tool--letter strong{font-weight:800}.news-editor__tool--letter em{font-style:italic}.news-editor__tool--letter u{text-decoration:underline}.news-editor__tool--letter s{text-decoration:line-through}
.news-editor__select{width:auto;margin:0;padding:6px 28px 6px 10px}
.news-editor__select--block{max-width:132px}.news-editor__select--font{max-width:120px}.news-editor__select--size{max-width:82px}
.news-editor__color-control{display:inline-flex;align-items:center;height:36px;border:1px solid #dbe9ec;border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 2px 7px rgba(13,38,51,.025)}
.news-editor__color-control .news-editor__tool{position:relative;min-width:34px;height:34px;border:0;border-radius:0;box-shadow:none;font-weight:700}
.news-editor__color-control .news-editor__tool::after{content:"";position:absolute;right:8px;bottom:4px;left:8px;height:3px;border-radius:999px;background:#d94a4a}
.news-editor__color-control--highlight .news-editor__tool::after{background:#f1cf2f}
.news-editor__color-input{width:25px;height:34px;margin:0;padding:5px 4px;border:0;border-left:1px solid #e4eef0;border-radius:0;background:#fff;box-shadow:none;cursor:pointer}
.news-editor__attachment-button{gap:7px;min-width:92px;border-color:#c5e9eb;background:#e9fafb;color:#087d86;font-weight:700}
.news-editor__attachment-button:hover{border-color:#91d9dd;background:#ddf6f7}
.news-editor__link-picker,.news-editor__table-picker{position:relative;display:inline-flex}
.news-editor__link-menu[hidden],.news-editor__table-menu[hidden],.news-editor__image-tools[hidden],.news-editor__attachments[hidden],.news-editor__image-resizer[hidden]{display:none!important}
.news-editor__link-menu,.news-editor__table-menu{position:absolute;z-index:95;top:calc(100% + 8px);left:0;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 18px 42px rgba(13,38,51,.14)}
.news-editor__link-menu{display:grid;gap:9px;width:320px;max-width:calc(100vw - 48px);padding:12px}
.news-editor__link-menu label{display:grid;gap:5px;margin:0;color:var(--muted);font-size:calc(.66rem + 1px);font-weight:700}
.news-editor__link-menu input{width:100%;min-height:35px;margin:0;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:inherit;font-size:calc(.72rem + 1px);box-shadow:none}
.news-editor__link-menu input:focus{outline:2px solid rgba(10,167,173,.14);border-color:#9bd9dd}
.news-editor__link-actions{display:flex;justify-content:flex-end;gap:7px;padding-top:2px}
.news-editor__link-insert,.news-editor__link-cancel{min-height:31px;padding:5px 11px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);font:inherit;font-size:calc(.67rem + 1px);font-weight:700;cursor:pointer}
.news-editor__link-insert{border-color:var(--accent);background:var(--accent);color:#fff}.news-editor__link-insert:hover{filter:brightness(.96)}
.news-editor__link-cancel:hover{border-color:#aedbde;background:#f0fbfc}
.news-editor__table-menu{width:max-content;min-width:236px;padding:11px}
.news-editor__table-picker-head{display:grid;gap:2px;margin-bottom:8px;color:var(--ink)}
.news-editor__table-picker-head strong{font-size:calc(.72rem + 1px)}.news-editor__table-picker-head span{color:var(--muted);font-size:calc(.62rem + 1px)}
.news-editor__table-grid{display:grid;grid-template-columns:repeat(10,18px);gap:3px;touch-action:none;user-select:none}
.news-editor__table-cell{width:18px;height:18px;min-height:0;padding:0;border:1px solid #c9dde0;border-radius:3px;background:#fff;cursor:crosshair;box-shadow:none}
.news-editor__table-cell:hover,.news-editor__table-cell:focus-visible,.news-editor__table-cell.is-selected{border-color:#4fc2c7;background:#dff6f7;outline:0}
.news-editor__image-tools{display:grid;gap:7px;padding:10px 13px;border-bottom:1px solid var(--line);background:#f7fcfd;color:var(--ink);font-size:calc(.68rem + 1px)}
.news-editor__image-tools-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.news-editor__image-tools-row>strong{font-size:calc(.7rem + 1px);white-space:nowrap}
.news-editor__image-layout{align-items:stretch}
.news-editor__image-layout-group{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:4px 6px;border:1px solid #dcebed;border-radius:9px;background:#fff}
.news-editor__image-layout-group--wrap{border-color:#c6e6e9;background:#f1fbfc}
.news-editor__image-layout-label{color:var(--muted);font-size:calc(.64rem + 1px);font-weight:700;white-space:nowrap}
.news-editor__image-resize-help{align-self:center;color:var(--muted);font-size:calc(.62rem + 1px);line-height:1.35}
.news-editor__image-presets{display:flex;gap:4px;flex-wrap:wrap}
.news-editor__image-preset,.news-editor__image-reset,.news-editor__image-layout-button{min-height:28px;padding:4px 9px;border:1px solid #d6e7e9;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:calc(.66rem + 1px);cursor:pointer}
.news-editor__image-preset:hover,.news-editor__image-reset:hover,.news-editor__image-layout-button:hover{border-color:#a6dadd;background:#eefafb}
.news-editor__image-preset:disabled,.news-editor__image-reset:disabled,.news-editor__image-layout-button:disabled{opacity:.46;cursor:not-allowed}
.news-editor__image-preset.is-active,.news-editor__image-layout-button.is-active{border-color:var(--accent);background:var(--accent);color:#fff}
.news-editor__image-slider{display:flex;align-items:center;gap:6px;min-width:220px;margin:0}.news-editor__image-slider>span{white-space:nowrap}
.news-editor__image-slider input[type=range]{width:130px;min-height:auto;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.news-editor__image-slider output{min-width:38px;text-align:right;font-weight:600}
.news-editor__gallery-setting{display:inline-flex;align-items:center;gap:5px;min-height:28px;margin:0;padding:2px 4px 2px 8px;border:1px solid #d6e7e9;border-radius:8px;background:#fff;color:var(--muted);font-size:calc(.64rem + 1px);white-space:nowrap}
.news-editor__gallery-setting select{width:auto;min-width:38px;min-height:22px;margin:0;padding:1px 16px 1px 5px;border:1px solid #d6e7e9;border-radius:6px;background-color:#fff;color:var(--ink);font:inherit;box-shadow:none}
.news-editor__surface{position:relative;isolation:isolate;contain:paint;width:100%;min-width:0;min-height:220px;max-height:520px;overflow:auto;padding:17px 18px;outline:0;background:#fff;color:var(--ink);font-size:14px;line-height:1.62;white-space:normal}
.news-editor__surface:empty::before{content:attr(data-placeholder);color:#92a7b0;pointer-events:none}
.news-editor__surface p{width:auto;max-width:none!important;margin:.35rem 0}.news-editor__surface h2,.news-editor__surface h3,.news-editor__surface h4{margin:.7rem 0 .35rem;line-height:1.25}
.news-editor__surface h2{font-size:calc(1.35rem + 1px)!important}.news-editor__surface h3{font-size:calc(1.13rem + 1px)!important}.news-editor__surface h4{font-size:calc(.98rem + 1px)!important}
.news-editor__surface blockquote{margin:.6rem 0;padding:8px 12px;border-left:3px solid var(--accent);background:#f1fbfc;color:#42616d}
.news-editor__surface table,.rich-content table{width:100%;margin:.65rem 0;border-collapse:collapse}.news-editor__surface th,.news-editor__surface td,.rich-content th,.rich-content td{padding:7px 8px;border:1px solid #d4e5e8;vertical-align:top}
.news-editor__surface img,.rich-content img{max-width:100%;height:auto;border-radius:10px}
.news-editor__surface [data-image-gallery="1"],.rich-content [data-image-gallery="1"]{display:grid!important;width:100%;max-width:none;clear:both;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin:.65rem 0}
.news-editor__surface [data-image-gallery="1"][data-image-columns="1"],.rich-content [data-image-gallery="1"][data-image-columns="1"]{grid-template-columns:repeat(1,minmax(0,1fr))}.news-editor__surface [data-image-gallery="1"][data-image-columns="2"],.rich-content [data-image-gallery="1"][data-image-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.news-editor__surface [data-image-gallery="1"][data-image-columns="3"],.rich-content [data-image-gallery="1"][data-image-columns="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.news-editor__surface [data-image-gallery="1"][data-image-columns="4"],.rich-content [data-image-gallery="1"][data-image-columns="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.news-editor__surface [data-image-gallery="1"][data-image-columns="5"],.rich-content [data-image-gallery="1"][data-image-columns="5"]{grid-template-columns:repeat(5,minmax(0,1fr))}.news-editor__surface [data-image-gallery="1"][data-image-columns="6"],.rich-content [data-image-gallery="1"][data-image-columns="6"]{grid-template-columns:repeat(6,minmax(0,1fr))}
.news-editor__surface [data-image-gallery="1"]>img,.rich-content [data-image-gallery="1"]>img{float:none!important;display:block!important;width:100%!important;max-width:100%!important;height:auto;margin:0!important;clear:none!important;object-fit:contain}
.news-editor__surface img:not([style*="float"]):not([style*="inline-block"]),.rich-content img:not([style*="float"]):not([style*="inline-block"]){display:block;margin:.65rem auto}.news-editor__surface img[data-image-layout="left"],.rich-content img[data-image-layout="left"]{float:none!important;display:block!important;margin:.65rem auto .65rem 0!important}.news-editor__surface img[data-image-layout="center"],.rich-content img[data-image-layout="center"]{float:none!important;display:block!important;margin:.65rem auto!important}.news-editor__surface img[data-image-layout="right"],.rich-content img[data-image-layout="right"]{float:none!important;display:block!important;margin:.65rem 0 .65rem auto!important}.news-editor__surface img[style*="float: left"],.rich-content img[style*="float: left"],.news-editor__surface img[data-image-layout="float-left"],.rich-content img[data-image-layout="float-left"]{float:left!important;margin:.2rem .5rem .65rem 0}.news-editor__surface img[style*="float: right"],.rich-content img[style*="float: right"],.news-editor__surface img[data-image-layout="float-right"],.rich-content img[data-image-layout="float-right"]{float:right!important;margin:.2rem 0 .65rem .5rem}.news-editor__surface img[style*="inline-block"],.rich-content img[style*="inline-block"]{display:inline-block!important;vertical-align:middle}.news-editor__surface img[data-image-layout="inline"],.rich-content img[data-image-layout="inline"]{float:none!important;display:inline-block!important;vertical-align:middle}
.news-editor__surface img{cursor:pointer}.news-editor__surface::after,.rich-content::after{content:"";display:block;clear:both}.news-editor__surface a,.rich-content a{color:#087d86;text-decoration:underline;text-underline-offset:2px}
.news-editor__dropzone{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:13px;padding:13px 15px;border:1px dashed #b7d9dd;border-radius:13px;background:#fbfeff;color:var(--ink);cursor:pointer;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}
.news-editor__dropzone:hover,.news-editor__dropzone.is-dragover{border-color:#59c4c9;background:#f0fbfc;box-shadow:0 0 0 3px rgba(10,167,173,.06)}
.news-editor__dropzone--attachments{cursor:default}
.news-editor__dropzone-icon{display:grid;place-items:center;width:36px;height:36px;color:#0a7f87}.news-editor__dropzone-icon svg{width:23px;height:23px}
.news-editor__dropzone-copy{display:grid;gap:3px;min-width:0}.news-editor__dropzone-copy strong{font-size:calc(.72rem + 1px);font-weight:700}.news-editor__dropzone-copy small{color:var(--muted);font-size:calc(.62rem + 1px);line-height:1.4}
.news-editor__dropzone-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;justify-self:end;min-width:0}.news-editor__dropzone-limit{padding:6px 9px;border-radius:999px;background:#f0f5f6;color:#78909a;font-size:calc(.6rem + 1px);white-space:nowrap}
.news-editor__attachments{display:grid;gap:7px;margin:0 13px 13px;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:#f8fcfd}
.news-editor__attachments-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:calc(.64rem + 1px)}.news-editor__attachments-head strong{color:var(--ink);font-size:calc(.7rem + 1px)}
.news-editor__attachment-list{display:grid;gap:5px}.news-editor__attachment-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;border:1px solid #dbe9ec;border-radius:9px;background:#fff}.news-editor__attachment-info{display:flex;align-items:baseline;gap:7px;min-width:0}.news-editor__attachment-info strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-editor__attachment-info small{flex:0 0 auto;color:var(--muted)}.news-editor__attachment-remove{flex:0 0 auto;min-height:28px;padding:4px 8px;border:1px solid #d6e6e8;border-radius:8px;background:#fff;color:#526b76;font:inherit;font-size:calc(.64rem + 1px);cursor:pointer}.news-editor__attachment-remove:hover{border-color:#9ed8dc;background:#eefafb;color:#087d86}
.news-editor__surface [data-service-desk-attachments="1"],.rich-content [data-service-desk-attachments="1"]{clear:both;margin:.75rem 0;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f6fcfd}.news-editor__surface [data-service-desk-attachments="1"] p,.rich-content [data-service-desk-attachments="1"] p{margin:0 0 .35rem}.news-editor__surface [data-service-desk-attachments="1"] ul,.rich-content [data-service-desk-attachments="1"] ul{margin:0;padding-left:1.25rem}.news-editor__surface [data-service-desk-attachments="1"] li,.rich-content [data-service-desk-attachments="1"] li{margin:.2rem 0}.news-editor__surface [data-service-desk-attachments="1"] span,.rich-content [data-service-desk-attachments="1"] span{color:var(--muted);font-size:calc(.66rem + 1px)}.news-editor__surface a[data-service-desk-attachment="1"],.rich-content a[data-service-desk-attachment="1"]{font-weight:700}
.news-editor-font-size-8{font-size:8px!important}.news-editor-font-size-9{font-size:9px!important}.news-editor-font-size-10{font-size:10px!important}.news-editor-font-size-11{font-size:11px!important}.news-editor-font-size-12{font-size:12px!important}.news-editor-font-size-13{font-size:13px!important}.news-editor-font-size-14{font-size:14px!important}.news-editor-font-size-15{font-size:15px!important}.news-editor-font-size-16{font-size:16px!important}.news-editor-font-size-17{font-size:17px!important}.news-editor-font-size-18{font-size:18px!important}.news-editor-font-size-19{font-size:19px!important}.news-editor-font-size-20{font-size:20px!important}
.news-editor__surface img[data-editor-selected="1"]{outline:0;cursor:default}.news-editor__image-resizer{position:absolute;z-index:35;box-sizing:border-box;border:1px solid var(--accent);border-radius:10px;pointer-events:none}.news-editor__image-resize-handle{position:absolute;width:12px;height:12px;min-width:12px;min-height:12px;padding:0;border:2px solid #fff;border-radius:50%;background:var(--accent);box-shadow:0 1px 4px rgba(13,38,51,.28);pointer-events:auto;touch-action:none}.news-editor__image-resize-handle--nw{top:-7px;left:-7px;cursor:nwse-resize}.news-editor__image-resize-handle--ne{top:-7px;right:-7px;cursor:nesw-resize}.news-editor__image-resize-handle--sw{bottom:-7px;left:-7px;cursor:nesw-resize}.news-editor__image-resize-handle--se{right:-7px;bottom:-7px;cursor:nwse-resize}body.is-resizing-news-image{cursor:nwse-resize;user-select:none}
.news-editor__status{min-height:0;padding:0 13px;color:#26705f;font-size:calc(.66rem + 1px)}.news-editor__status:not(:empty){padding-top:7px;padding-bottom:10px;border-top:1px solid rgba(215,233,236,.72)}.news-editor__status.is-error{color:var(--danger)}.news-editor__input{display:none!important}
.news-composer__form,.news-edit__form{width:100%;max-width:none}.news-editor-field{width:100%;min-width:0}.rich-content p{width:auto;max-width:none!important;margin:.35rem 0}.rich-content h2{font-size:calc(1.18rem + 1px)!important}.rich-content h3{font-size:calc(1.02rem + 1px)!important}.rich-content h4{font-size:calc(.9rem + 1px)!important}.rich-content ul,.rich-content ol{margin:.45rem 0;padding-left:1.35rem}.rich-content blockquote{margin:.5rem 0;padding:7px 10px;border-left:3px solid var(--accent);background:#f1fbfc}

@media (max-width:1180px){
  .news-editor__group--history{margin-left:0}
}
@media (max-width:760px){
  .news-editor{border-radius:15px}
  .news-editor__toolbar{padding:8px;border-radius:14px 14px 0 0}
  .news-editor__group{padding:0 6px}.news-editor__group--selects{width:100%;padding:0 0 6px;border-left:0;border-bottom:1px solid rgba(13,38,51,.08)}
  .news-editor__select{flex:1;min-width:0}.news-editor__select--block,.news-editor__select--font,.news-editor__select--size{max-width:none}
  .news-editor__link-menu,.news-editor__table-menu{left:auto;right:0;max-width:calc(100vw - 40px)}
  .news-editor__image-tools-row{align-items:flex-start}.news-editor__image-layout-group{width:100%}.news-editor__image-layout-label{width:100%;margin-top:2px}.news-editor__image-slider{width:100%;min-width:0}.news-editor__image-slider input[type=range]{flex:1;width:auto}
  .news-editor__surface{min-height:180px;padding:14px}
  .news-editor__dropzone{grid-template-columns:auto minmax(0,1fr);margin:10px;padding:11px 12px}.news-editor__dropzone-actions{grid-column:2;justify-self:start;flex-wrap:wrap}.news-editor__attachments{margin:0 10px 10px}
  .news-composer__form{width:100%}
}
@media (max-width:460px){
  .news-editor__group{padding-inline:4px}.news-editor__group--selects{display:grid;grid-template-columns:1fr 1fr}.news-editor__select--size{grid-column:1/-1;width:100%}
  .news-editor__dropzone{grid-template-columns:1fr}.news-editor__dropzone-icon{display:none}.news-editor__dropzone-actions{grid-column:1;justify-self:stretch;justify-content:flex-start}
}
@media (max-width:640px){
  .auth-language-switch{top:14px;right:14px}
  .language-switch__menu{right:0}
}

/* Password recovery page */
.auth-page--forgot .auth-visual{align-content:center}
.auth-page--forgot .auth-visual h1{font-size:calc(clamp(2rem,calc(3.4vw * var(--font-scale)),3.65rem) + 1px);line-height:1.16;max-width:15ch;overflow-wrap:normal;word-break:normal}
@media (max-width:1100px){.auth-page--forgot .auth-visual h1{max-width:none}}

/* Password recovery language selector inside the form card */
.auth-card--forgot{
  position:relative;
  padding-top:78px;
}
.auth-card--forgot .auth-language-switch{
  top:22px;
  right:22px;
}

@media (max-width:720px){
  .auth-card--forgot{padding-top:70px}
  .auth-card--forgot .auth-language-switch{top:16px;right:16px}
}

/* Supplier and customer directories */
.contact-directory__intro{
  margin:.45rem 0 0;
  max-width:72ch;
}
.contacts-table th,
.contacts-table td{
  vertical-align:middle;
}
.contacts-table .actions-col{
  text-align:right;
}
.contact-actions{
  justify-content:flex-end;
}
.contact-actions form{
  margin:0;
}
.contact-directory__empty{
  padding:28px 14px;
  text-align:center;
}
.contact-form{
  max-width:980px;
}

@media (max-width:720px){
  .contact-directory .panel-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .contact-actions{
    align-items:flex-end;
    flex-direction:column;
  }
}

/* Event form: compact desktop layout */
body:not(.auth-page--login) .event-form{
  font-size:calc(.86rem + 1px);
}
body:not(.auth-page--login) .event-form .event-form-section{
  padding:9px 10px 10px !important;
  border-radius:10px !important;
}
body:not(.auth-page--login) .event-form .panel-head{
  gap:6px !important;
  margin-bottom:6px !important;
}
body:not(.auth-page--login) .event-form .panel-head h3{
  font-size:calc(1.05rem + 1px);
  line-height:1.08;
}
body:not(.auth-page--login) .event-form .panel-head .eyebrow{
  margin-bottom:2px;
  font-size:calc(.58rem + 1px);
}
body:not(.auth-page--login) .event-form .event-header-card{
  gap:8px !important;
  padding:9px !important;
  border-radius:7px !important;
}
body:not(.auth-page--login) .event-form .event-header-brand{
  gap:8px;
}
body:not(.auth-page--login) .event-form .event-header-brand h2{
  font-size:calc(1.45rem + 1px);
}
body:not(.auth-page--login) .event-form .event-header-brand p{
  margin:4px 0 0;
  font-size:calc(.72rem + 1px);
  line-height:1.2;
}
body:not(.auth-page--login) .event-form .event-header-logo{
  width:42px;
  height:42px;
  padding:5px;
}
body:not(.auth-page--login) .event-form .form-grid{
  column-gap:8px;
}
body:not(.auth-page--login) .event-form label > span{
  font-size:calc(.72rem + 1px);
  line-height:1.08;
}
body:not(.auth-page--login) .event-form input:not([type="color"]):not([type="checkbox"]):not([type="hidden"]),
body:not(.auth-page--login) .event-form select,
body:not(.auth-page--login) .event-form textarea{
  font-size:calc(.75rem + 1px);
}
body:not(.auth-page--login) .event-form .inline-field-actions .button{
  font-size:calc(.69rem + 1px);
  box-shadow:none;
}
body:not(.auth-page--login) .event-form .event-section-surface{
  box-shadow:none;
}
body:not(.auth-page--login) .event-form .checkbox-card input[type="checkbox"]{
  margin-top:0;
}
body:not(.auth-page--login) .event-form .checkbox-card strong{
  font-size:calc(.7rem + 1px);
  line-height:1.05;
}
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-input,
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-display,
body:not(.auth-page--login) .event-form .event-block > .panel-head > h4{
  min-width:125px !important;
  min-height:27px !important;
  padding:3px 7px !important;
  border-width:1px;
  border-radius:5px;
  font-size:calc(.7rem + 1px) !important;
  line-height:1.08 !important;
}
body:not(.auth-page--login) .event-form .section-color-control,
body:not(.auth-page--login) .event-form .section-head-actions .button.button-small{
  min-height:27px !important;
  padding:3px 7px !important;
  border-radius:5px;
  font-size:calc(.66rem + 1px);
}
body:not(.auth-page--login) .event-form .section-color-control input[type="color"]{
  width:18px !important;
  height:18px !important;
}
body:not(.auth-page--login) .event-form .event-table{
  border-collapse:collapse !important;
  border-spacing:0 !important;
}
body:not(.auth-page--login) .event-form .event-table thead th{
  border-bottom:1px solid rgba(122,98,70,.25);
  font-size:calc(.61rem + 1px) !important;
}
body:not(.auth-page--login) .event-form .event-table tbody tr{
  background:rgba(255,255,255,.62);
}
body:not(.auth-page--login) .event-form .event-table tbody td,
body:not(.auth-page--login) .event-form .event-table tbody td:first-child,
body:not(.auth-page--login) .event-form .event-table tbody td:last-child{
  border:1px solid rgba(122,98,70,.2) !important;
  border-radius:0 !important;
}
body:not(.auth-page--login) .event-form .event-table input:not([type="hidden"]),
body:not(.auth-page--login) .event-form .event-table select{
  min-width:0 !important;
  font-size:calc(.68rem + 1px) !important;
}
body:not(.auth-page--login) .event-form .event-table [data-sales-qty],
body:not(.auth-page--login) .event-form .event-table [data-cost-qty],
body:not(.auth-page--login) .event-form .event-table [data-staff-hours],
body:not(.auth-page--login) .event-form .event-table [data-staff-count],
body:not(.auth-page--login) .event-form .event-table [data-plan-count]{
  min-width:3.2rem !important;
}
body:not(.auth-page--login) .event-form .event-table [data-sales-unit],
body:not(.auth-page--login) .event-form .event-table [data-cost-unit],
body:not(.auth-page--login) .event-form .event-table [data-staff-rate],
body:not(.auth-page--login) .event-form .event-table [data-plan-rate],
body:not(.auth-page--login) .event-form .event-table [data-sales-vat]{
  min-width:3.6rem !important;
}
body:not(.auth-page--login) .event-form .event-table strong,
body:not(.auth-page--login) .event-form .event-table .small-note{
  font-size:calc(.7rem + 1px);
  line-height:1.05;
}
body:not(.auth-page--login) .event-form .event-table .button{
  box-shadow:none;
  font-size:calc(.68rem + 1px);
}
body:not(.auth-page--login) .event-form .section-total{
  gap:7px;
  font-size:calc(.72rem + 1px);
}
body:not(.auth-page--login) .event-form .section-total strong{
  font-size:calc(.78rem + 1px);
}
body:not(.auth-page--login) .event-form .summary-grid{
  gap:5px;
}
body:not(.auth-page--login) .event-form .summary-card,
body:not(.auth-page--login) .event-form .summary-card--tiny{
  min-height:48px;
  gap:3px;
  padding:6px 7px;
  border-radius:5px;
}
body:not(.auth-page--login) .event-form .summary-card small,
body:not(.auth-page--login) .event-form .summary-card--tiny small{
  font-size:calc(.64rem + 1px);
}
body:not(.auth-page--login) .event-form .summary-card strong,
body:not(.auth-page--login) .event-form .summary-card--tiny strong{
  font-size:calc(.84rem + 1px);
}

/* Event form: compact row sizing */
body:not(.auth-page--login) .event-form .form-grid{
  row-gap:3px;
}
body:not(.auth-page--login) .event-form label{
  gap:1px;
}
body:not(.auth-page--login) .event-form input:not([type="color"]):not([type="checkbox"]):not([type="hidden"]),
body:not(.auth-page--login) .event-form select,
body:not(.auth-page--login) .event-form textarea{
  min-height:24px;
  padding:2px 5px !important;
  border-radius:3px !important;
  line-height:1.05;
}
body:not(.auth-page--login) .event-form .inline-field-actions{
  gap:2px;
}
body:not(.auth-page--login) .event-form .inline-field-actions .button{
  min-height:24px;
  padding:2px 6px !important;
  border-radius:3px;
}
body:not(.auth-page--login) .event-form .event-section-surface{
  padding:5px !important;
  border-radius:5px !important;
}
body:not(.auth-page--login) .event-form .event-section--notes textarea{
  min-height:36px;
  padding:3px 5px !important;
  line-height:1.05;
}

body:not(.auth-page--login) .event-form .checkbox-card{
  min-height:22px;
  gap:5px;
  padding:2px 4px;
  border-radius:3px;
}
body:not(.auth-page--login) .event-form .checkbox-card input[type="checkbox"]{
  width:12px;
  height:12px;
}
body:not(.auth-page--login) .event-form .section-stack{
  gap:5px;
}
body:not(.auth-page--login) .event-form .event-block{
  gap:3px !important;
  padding:5px !important;
  border-radius:5px !important;
}
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-input,
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-display,
body:not(.auth-page--login) .event-form .event-block > .panel-head > h4,
body:not(.auth-page--login) .event-form .section-color-control,
body:not(.auth-page--login) .event-form .section-head-actions .button.button-small{
  min-height:23px !important;
  padding-block:2px !important;
  border-radius:3px;
}
body:not(.auth-page--login) .event-form .section-move-actions .button{
  width:22px !important;
  min-width:22px !important;
  height:22px !important;
  min-height:22px !important;
  border-radius:3px;
}
body:not(.auth-page--login) .event-form .event-table thead th{
  padding:1px 3px !important;
  line-height:1;
}
body:not(.auth-page--login) .event-form .event-table input:not([type="hidden"]),
body:not(.auth-page--login) .event-form .event-table select{
  min-height:20px;
  padding:1px 3px !important;
  border-radius:2px !important;
}
body:not(.auth-page--login) .event-form .event-table tbody td:first-child input[type="text"]{
  padding-inline:3px !important;
}
body:not(.auth-page--login) .event-form .event-table--cost-staff tbody td:first-child input[type="text"],
body:not(.auth-page--login) .event-form .event-table--cost-general tbody td:first-child input[type="text"],
body:not(.auth-page--login) .event-form .event-table--cost-other-excluded tbody td:first-child input[type="text"]{
  padding-top:4px !important;
  padding-bottom:0 !important;
  line-height:14px !important;
}
body:not(.auth-page--login) .event-form .event-table col.col-actions{
  width:30px !important;
}
body:not(.auth-page--login) .event-form .event-table .button{
  min-width:20px;
  width:20px;
  min-height:20px;
  height:20px;
  padding:1px 3px !important;
  border-radius:2px;
}
body:not(.auth-page--login) .event-form .section-total{
  min-height:23px;
  padding:3px 5px !important;
  border-radius:2px !important;
}

@media (max-width:700px){
  body:not(.auth-page--login) .event-form input:not([type="color"]):not([type="checkbox"]):not([type="hidden"]),
  body:not(.auth-page--login) .event-form select{
    min-height:30px;
  }
  body:not(.auth-page--login) .event-form .event-table input:not([type="hidden"]),
  body:not(.auth-page--login) .event-form .event-table select{
    min-height:25px;
  }
  body:not(.auth-page--login) .event-form .checkbox-card{
    min-height:27px;
  }
  body:not(.auth-page--login) .event-form .event-section--notes textarea{
    min-height:44px;
  }
}

/* Event form: vertical alignment of compact rows and cells */
body:not(.auth-page--login) .event-form input:not([type="color"]):not([type="checkbox"]):not([type="hidden"]),
body:not(.auth-page--login) .event-form select{
  height:24px;
  padding-top:0 !important;
  padding-bottom:0 !important;
  line-height:22px !important;
  vertical-align:middle;
}
body:not(.auth-page--login) .event-form textarea{
  padding-top:3px !important;
  padding-bottom:3px !important;
  vertical-align:middle;
}
body:not(.auth-page--login) .event-form .event-table thead th,
body:not(.auth-page--login) .event-form .event-table tbody td,
body:not(.auth-page--login) .event-form .event-table tbody td:first-child,
body:not(.auth-page--login) .event-form .event-table tbody td:last-child{
  vertical-align:middle !important;
}
body:not(.auth-page--login) .event-form .event-table tbody td{
  line-height:18px;
}
body:not(.auth-page--login) .event-form .event-table input:not([type="hidden"]),
body:not(.auth-page--login) .event-form .event-table select{
  height:20px;
  padding-top:0 !important;
  padding-bottom:0 !important;
  line-height:18px !important;
  vertical-align:middle !important;
}
body:not(.auth-page--login) .event-form .event-table strong,
body:not(.auth-page--login) .event-form .event-table .small-note,
body:not(.auth-page--login) .event-form .event-cell-note{
  vertical-align:middle;
}
body:not(.auth-page--login) .event-form .checkbox-card,
body:not(.auth-page--login) .event-form .checkbox-inline{
  align-items:center !important;
}
body:not(.auth-page--login) .event-form .checkbox-card input[type="checkbox"],
body:not(.auth-page--login) .event-form .checkbox-inline input[type="checkbox"]{
  flex:0 0 auto;
  align-self:center;
  margin-top:0 !important;
  margin-bottom:0 !important;
}
body:not(.auth-page--login) .event-form .checkbox-card > span,
body:not(.auth-page--login) .event-form .checkbox-inline > span{
  display:flex;
  min-height:16px;
  align-items:center;
  line-height:1;
}
body:not(.auth-page--login) .event-form .checkbox-card strong,
body:not(.auth-page--login) .event-form .checkbox-inline strong{
  line-height:1 !important;
  vertical-align:middle;
}
body:not(.auth-page--login) .event-form .section-total,
body:not(.auth-page--login) .event-form .section-head-actions,
body:not(.auth-page--login) .event-form .section-move-actions{
  align-items:center;
}
body:not(.auth-page--login) .event-form .summary-card,
body:not(.auth-page--login) .event-form .summary-card--tiny{
  align-content:center;
}

@media (max-width:700px){
  body:not(.auth-page--login) .event-form input:not([type="color"]):not([type="checkbox"]):not([type="hidden"]),
  body:not(.auth-page--login) .event-form select{
    height:30px;
    line-height:28px !important;
  }
  body:not(.auth-page--login) .event-form .event-table input:not([type="hidden"]),
  body:not(.auth-page--login) .event-form .event-table select{
    height:25px;
    line-height:23px !important;
  }
}

/* Event form: compact calculation section headers */
body:not(.auth-page--login) .event-form .event-block > .panel-head{
  min-height:28px;
  margin-bottom:0 !important;
  gap:4px !important;
  align-items:center !important;
}
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-input{
  height:28px;
  min-height:28px !important;
  margin:0 !important;
  padding:0 8px !important;
  line-height:26px !important;
  text-align:center !important;
  vertical-align:middle !important;
}
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-input.is-multiline{
  min-height:28px !important;
  padding:3px 8px !important;
  line-height:1.1 !important;
}
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-display,
body:not(.auth-page--login) .event-form .event-block > .panel-head > h4{
  min-height:28px !important;
  margin:0 !important;
  padding:0 8px !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  text-align:center !important;
}
body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-head-actions{
  min-height:28px;
  margin-top:0;
  margin-bottom:0;
  align-self:center;
  align-items:center !important;
  justify-content:flex-end;
}

@media (max-width:700px){
  body:not(.auth-page--login) .event-form .event-block > .panel-head{
    min-height:32px;
  }
  body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-input,
  body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-display,
  body:not(.auth-page--login) .event-form .event-block > .panel-head > h4{
    min-height:32px !important;
  }
  body:not(.auth-page--login) .event-form .event-block > .panel-head > .section-title-input{
    height:32px;
    line-height:30px !important;
  }
}

/* Unified template management */
.templates-panel-head{align-items:flex-start}.template-preview-dialog__close{border:0;background:#f3eee8;color:var(--ink);width:42px;height:42px;border-radius:50%;font-size:calc(calc(28px * var(--font-scale)) + 1px);line-height:1;cursor:pointer}.template-editor-meta,.event-template-picker-panel{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:24px;align-items:center}.template-editor-meta__fields{display:grid;gap:12px}.template-default-option{margin:0}
html[data-theme="dark"] body:not(.auth-page--login) .event-form .template-default-option{
    background:#11303a!important;
    border:1px solid #41616c!important;
    color:#e9f6f8!important;
}
html[data-theme="dark"] body:not(.auth-page--login) .event-form .template-default-option :is(span,strong,small){color:#edf8fa!important}
html[data-theme="dark"] body:not(.auth-page--login) .event-form .template-default-option input[type="checkbox"]{
    appearance:auto;
    accent-color:#25c4c6;
    opacity:1;
    outline:1px solid #78b6c0;
    width:16px;
    height:16px;
}
.event-template-picker-panel label{max-width:480px;justify-self:end;width:100%}

@media (max-width:900px){.template-editor-meta,
.event-template-picker-panel{grid-template-columns:1fr}.event-template-picker-panel label{justify-self:stretch}}
.itinerary-create-form .form-actions{align-self:end}

/* Itinerář: Sekce 7 je vždy přímo pod Sekcí 6 a před Personálem. */
body:not(.auth-page--login) .event-section--itinerary{
  grid-area:itinerary;
  grid-column:1 / -1 !important;
  order:7;
}

/* Itinerář – kategorie, sklad a objednávkové požadavky. */
.itinerary-create-form{
  grid-template-columns:minmax(150px,.75fr) minmax(260px,1.5fr) minmax(150px,.7fr) minmax(150px,.7fr) minmax(220px,1fr) auto;
  align-items:end;
}

.itinerary-stock-state{display:flex;align-items:center;justify-content:center}
.itinerary-category-panel{margin-top:14px}
.itinerary-category-actions{justify-content:flex-end}
.itinerary-category-actions form{margin:0}
.itinerary-order-panel{border-color:rgba(162,70,63,.34);background:linear-gradient(180deg,rgba(255,244,241,.98),rgba(255,255,255,.98))}
.itinerary-order-table th,.itinerary-order-table td{vertical-align:middle}
.itinerary-order-table th:not(:nth-child(2)):not(:nth-child(3)),
.itinerary-order-table td:not(:nth-child(2)):not(:nth-child(3)){text-align:center}
.itinerary-order-check{width:48px;text-align:center!important}
.itinerary-order-check input{width:18px;height:18px}

@media (max-width:1100px){
  .itinerary-create-form{grid-template-columns:1fr}
  .itinerary-stock-state{justify-content:flex-start}
}

body:not(.auth-page--login) .event-form .event-section--itinerary .panel-head--section-controls{
  flex-wrap:wrap;
}
body:not(.auth-page--login) .event-form .event-section--itinerary .section-head-actions--top-level{
  display:flex !important;
  margin-left:auto;
  overflow:visible;
}
body:not(.auth-page--login) .event-form .event-section--itinerary .section-color-control--shell{
  display:inline-flex !important;
  align-items:center;
  gap:5px;
  min-width:max-content;
  opacity:1 !important;
  visibility:visible !important;
}
body:not(.auth-page--login) .event-form .event-section--itinerary .section-color-control--shell span{
  display:inline !important;
}

/* Každá skladová položka má upravitelnou kategorii, název, stav skladu i minimum. */

/* Sekce 7 je skutečně hned pod Sekcí 6 v pravém sloupci. */
body:not(.auth-page--login) .event-form{
  grid-template-areas:
    "header header"
    "notes todo"
    "summary summary"
    "commercial commercial"
    "staff staff"
    "actions actions" !important;
}
body:not(.auth-page--login) .event-form-commercial-columns{
  grid-area:commercial;
  grid-column:1 / -1;
  order:5;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:18px;
  align-items:start;
  min-width:0;
}
body:not(.auth-page--login) .event-form-commercial-columns--operations-only{
  grid-template-columns:minmax(0,1fr);
}

body:not(.auth-page--login) .event-form-commercial-columns--operations-only .event-form-commercial-columns__right{
  grid-column:1;
}

body:not(.auth-page--login) .event-form-commercial-columns__right{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:18px;
  align-content:start;
  min-width:0;
}
body:not(.auth-page--login) .event-form-commercial-columns .event-section--costs,
body:not(.auth-page--login) .event-form-commercial-columns .event-section--sales,
body:not(.auth-page--login) .event-form-commercial-columns .event-section--itinerary{
  grid-area:auto !important;
  grid-column:1 !important;
  order:initial !important;
  min-width:0;
}
body:not(.auth-page--login) .event-section--staff{order:6}
body:not(.auth-page--login) .event-form > .form-actions{order:7}

/* Sekce 7 používá stejné zaškrtnutí a stejné ovládání jako prodejní kalkulace. */
body:not(.auth-page--login) .event-form .event-table--itinerary .offer-row-visibility{
  width:16px !important;
  min-width:16px !important;
}
body:not(.auth-page--login) .event-form .event-table--itinerary .offer-row-visibility input[type="checkbox"]{
  width:16px !important;
  min-width:16px !important;
  height:16px !important;
  margin:0 !important;
  accent-color:#2f815d;
}
body:not(.auth-page--login) .event-form .event-table--itinerary .sales-offer-controls .button[data-remove-row]{
  display:inline-grid !important;
  width:28px !important;
  min-width:28px !important;
  height:28px !important;
  place-items:center;
  padding:0 !important;
  opacity:1 !important;
  visibility:visible !important;
}
@media (max-width:1100px){
  body:not(.auth-page--login) .event-form-commercial-columns{
    grid-template-columns:minmax(0,1fr);
  }
}
.itinerary-order-action{
  text-align:center !important;
}
.itinerary-ordered-button{
  min-width:108px;
  white-space:nowrap;
}
.itinerary-ordered-meta{
  display:inline-grid;
  justify-items:center;
  gap:3px;
  border:1px solid rgba(77,137,66,.28);
  border-radius:14px;
  background:#e6f3df;
  color:#245f2d;
  line-height:1.25;
}
.itinerary-ordered-meta strong{
  font-size:calc(.78rem + 1px);
}
.itinerary-ordered-meta small{
  display:block;
  color:#3d6842;
  white-space:normal;
  overflow-wrap:anywhere;
}

body:not(.auth-page--login) .event-form .event-table--itinerary .itinerary-row-remove{
  display:inline-grid !important;
  flex:0 0 32px;
  width:32px !important;
  min-width:32px !important;
  max-width:32px !important;
  height:30px !important;
  min-height:30px !important;
  place-items:center;
  margin:0 !important;
  padding:0 !important;
  font-size:calc(1.05rem + 1px);
  line-height:1;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
}

/* historie objednání, zrušení potvrzení a přesně zarovnané skladové sloupce. */
.itinerary-ordered-actions,
.itinerary-pending-order-actions{
  display:grid;
  justify-items:center;
}
.itinerary-cancel-ordered-button{
  min-width:142px;
  padding:7px 11px;
  border-color:rgba(140,59,53,.28);
  color:var(--danger);
  font-size:calc(.72rem + 1px);
  line-height:1.15;
  white-space:nowrap;
}
.itinerary-cancel-ordered-button:hover{
  background:#fff0ed;
}
.itinerary-order-number{
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.itinerary-history-panel{
  border-color:rgba(66,97,130,.22);
  background:linear-gradient(180deg,rgba(246,249,253,.97),rgba(255,255,255,.98));
}
.itinerary-history-empty{
  margin:0;
  padding:16px 18px;
  border:1px dashed rgba(122,98,70,.25);
  border-radius:16px;
  background:rgba(255,255,255,.65);
}
.itinerary-history-wrap{
  overflow:auto;
  border:1px solid rgba(122,98,70,.12);
  border-radius:18px;
  background:rgba(255,255,255,.72);
}
.itinerary-history-table th:nth-child(5){text-align:center}
.itinerary-history-table th:nth-child(6),
.itinerary-history-table th:nth-child(7){width:170px;}
.itinerary-history-date,
.itinerary-history-quantity{
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.itinerary-history-quantity{
  text-align:center;
  font-weight:700;
}
.itinerary-history-stock{
  text-align:center;
  font-variant-numeric:tabular-nums;
}
.itinerary-history-stock > span{
  display:inline-grid;
  justify-items:center;
  gap:1px;
  vertical-align:middle;
}
.itinerary-history-stock > span[aria-hidden="true"]{
  display:inline-block;
  min-width:10px;
  color:var(--muted);
}
.itinerary-history-stock small{
  color:var(--muted);
  font-size:calc(.62rem + 1px);
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.itinerary-history-stock strong{
  font-size:calc(.88rem + 1px);
}

.itinerary-row-submit-form{
  display:none;
}
.itinerary-admin-table-wrap{
  overflow-x:auto;
  overflow-y:visible;
  border:1px solid rgba(122,98,70,.12);
  border-radius:18px;
}
.itinerary-table{
  table-layout:fixed;
}
.itinerary-table th{
  padding:11px 10px;
  white-space:nowrap;
}
.itinerary-table td{
  padding:9px 8px;
}
.itinerary-table select,
.itinerary-table input[type="text"],
.itinerary-table input[type="number"]{
  width:100%;
  min-width:0;
  margin:0;
  padding:10px 11px;
  border-radius:12px;
}
.itinerary-table .itinerary-stock-heading,
.itinerary-table .itinerary-stock-quantity-cell{
  background:rgba(54,121,82,.055);
}
.itinerary-table .itinerary-minimum-heading,
.itinerary-table .itinerary-minimum-quantity-cell{
  background:rgba(155,111,69,.07);
}
.itinerary-quantity-cell input{
  text-align:right;
  font-variant-numeric:tabular-nums;
}
.itinerary-active-cell,
.itinerary-stock-state,
.itinerary-admin-actions{
  text-align:center;
}
.itinerary-active-control{
  align-items:center;
  gap:7px;
  margin:0;
  white-space:nowrap;
}
.itinerary-active-control input{
  width:18px;
  height:18px;
  margin:0;
}
.itinerary-admin-actions .inline-actions{
  justify-content:center;
  flex-wrap:nowrap;
  gap:7px;
}
.itinerary-admin-actions .button{
  min-width:68px;
  padding:8px 11px;
}

@media (max-width:700px){
  .itinerary-order-table .itinerary-order-action-heading,
  .itinerary-order-table .itinerary-order-action{
    width:220px;
    min-width:220px;
  }
}

/* historie skladových pohybů, mazání záznamů a vazba na schválené eventy. */
.itinerary-history-form{
  margin:0;
}
.itinerary-history-table th:nth-child(1){width:48px;text-align:center}
.itinerary-history-table th:nth-child(2){width:145px}
.itinerary-history-table th:nth-child(3){width:190px}
.itinerary-history-table th:nth-child(4){width:125px}
.itinerary-history-table th:nth-child(5){width:240px}
.itinerary-history-table th:nth-child(6){width:90px;text-align:center}
.itinerary-history-table th:nth-child(7){width:235px;text-align:center}
.itinerary-history-table th:nth-child(8){width:150px}
.itinerary-history-table th:nth-child(9){width:160px}
.itinerary-history-table th:nth-child(10){width:105px;text-align:center}
.itinerary-history-check{
  width:48px;
  min-width:48px;
  text-align:center !important;
}
.itinerary-history-check input{
  width:18px;
  height:18px;
  margin:0;
}
.itinerary-history-note{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:calc(.68rem + 1px);
  line-height:1.3;
}
.itinerary-history-quantity.is-negative{
  color:var(--danger);
}
.itinerary-history-quantity.is-positive{
  color:#2c6b36;
}
.itinerary-history-stock .itinerary-history-minimum{
  margin-left:8px;
  padding-left:8px;
  border-left:1px solid rgba(122,98,70,.18);
}
.itinerary-history-event a{
  color:var(--text);
  text-decoration:none;
}
.itinerary-history-event a:hover{
  text-decoration:underline;
}
.itinerary-history-actions{
  text-align:center;
}
.itinerary-history-bulk-actions{
  justify-content:flex-end;
}
.itinerary-history-bulk-actions .button{
  min-width:155px;
}

/* přesné sloupce itineráře, vyhledávání položek a filtrování/export historie. */
.itinerary-table{
  min-width:1260px;
}
.itinerary-table col.itinerary-col-id{width:6%}
.itinerary-table col.itinerary-col-category{width:14%}
.itinerary-table col.itinerary-col-name{width:24%}
.itinerary-table col.itinerary-col-stock,
.itinerary-table col.itinerary-col-minimum{width:11%}
.itinerary-table col.itinerary-col-active,
.itinerary-table col.itinerary-col-status{width:10%}
.itinerary-table col.itinerary-col-actions{width:14%}
.itinerary-id-heading,
.itinerary-item-id,
.itinerary-active-heading,
.itinerary-status-heading,
.itinerary-actions-heading,
.itinerary-active-cell,
.itinerary-stock-state,
.itinerary-admin-actions{
  text-align:center !important;
  vertical-align:middle !important;
}
.itinerary-active-cell,
.itinerary-stock-state,
.itinerary-admin-actions{
  display:table-cell !important;
}
.itinerary-item-id{
  color:var(--muted);
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.itinerary-item-id strong{
  display:inline-flex;
  min-width:48px;
  justify-content:center;
  padding:6px 8px;
  border:1px solid rgba(66,97,130,.18);
  border-radius:10px;
  background:rgba(231,240,250,.72);
  color:#24496c;
}
.itinerary-active-control{
  display:inline-flex !important;
  width:auto;
  min-height:40px;
  justify-content:center !important;
  vertical-align:middle;
}
.itinerary-stock-state .badge{
  display:inline-flex;
  justify-content:center;
  min-width:88px;
}

.itinerary-autocomplete{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:3px;
  width:100%;
}
body:not(.auth-page--login) .event-form .event-table--itinerary .itinerary-autocomplete input[data-itinerary-autocomplete]{
  width:100% !important;
  min-width:0 !important;
  padding-right:34px;
  background-color:#fff;
  background-image:linear-gradient(45deg,transparent 50%,#8b6b50 50%),linear-gradient(135deg,#8b6b50 50%,transparent 50%);
  background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
}
.itinerary-autocomplete-status{
  display:block;
  min-height:0;
  color:#47705a;
  font-size:calc(.62rem + 1px);
  line-height:1.2;
}
.itinerary-autocomplete-status:empty{display:none}
.itinerary-autocomplete-status.is-error{color:var(--danger)}

.itinerary-history-filter{
  display:grid;
  gap:12px;
  align-items:end;
  padding:14px;
  border:1px solid rgba(66,97,130,.16);
  border-radius:16px;
  background:rgba(255,255,255,.76);
}
.itinerary-history-filter label{
  display:grid;
  gap:6px;
  margin:0;
}
.itinerary-history-filter label > span{
  color:var(--muted);
  font-size:calc(.72rem + 1px);
  text-transform:uppercase;
  letter-spacing:.04em;
}
.itinerary-history-filter input,
.itinerary-history-filter select{
  width:100%;
  min-height:42px;
  margin:0;
}
.itinerary-history-filter-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.itinerary-history-export::before{
  content:'X';
  display:inline-grid;
  width:19px;
  height:19px;
  margin-right:6px;
  place-items:center;
  border-radius:4px;
  background:#217346;
  color:#fff;
  font-size:calc(.68rem + 1px);
  font-weight:800;
  line-height:1;
}
.itinerary-history-item-id{
  display:block;
  margin-top:3px;
  color:#56708a;
  font-size:calc(.67rem + 1px);
  font-variant-numeric:tabular-nums;
}
@media (max-width:1100px){
  .itinerary-history-filter{grid-template-columns:1fr 1fr}
  .itinerary-history-filter-actions{grid-column:1 / -1;justify-content:flex-start}
}
@media (max-width:700px){
  .itinerary-history-filter{grid-template-columns:1fr}
  .itinerary-history-filter-actions{grid-column:auto}
}
.itinerary-order-table .itinerary-restock-heading,
.itinerary-order-table .itinerary-restock-action{
  width:230px;
  min-width:230px;
}
.itinerary-order-table .itinerary-order-action-heading,
.itinerary-order-table .itinerary-order-action{
  width:238px;
  min-width:238px;
}
.itinerary-ordered-quantity strong{
  display:inline-flex;
  min-width:54px;
  justify-content:center;
  padding:6px 9px;
  border:1px solid rgba(66,97,130,.18);
  border-radius:10px;
  background:rgba(231,240,250,.72);
  color:#24496c;
}
.itinerary-restock-action{
  text-align:center !important;
}
.itinerary-restock-control{
  display:grid;
  justify-content:center;
}
.itinerary-restock-control label{
  display:grid;
  gap:3px;
  margin:0;
}
.itinerary-restock-control label > span{
  color:var(--muted);
  font-size:calc(.64rem + 1px);
  line-height:1;
  white-space:nowrap;
}
.itinerary-restock-control input{
  width:100%;
  min-width:0;
  margin:0;
  padding:8px 9px;
  text-align:right;
  font-variant-numeric:tabular-nums;
}
.itinerary-restock-control .button{
  min-width:108px;
  white-space:nowrap;
}
.itinerary-history-head-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.itinerary-history-head-actions .button{
  min-width:155px;
}
@media (max-width:700px){
  .itinerary-history-head-actions{
    width:100%;
    justify-content:flex-start;
  }
}

/* sjednocené zarovnání administrace itineráře a stejně malé tlačítko odebrání jako v ostatních tabulkách Event formu. */
.itinerary-table th,
.itinerary-table td{
  box-sizing:border-box;
  vertical-align:middle !important;
}
.itinerary-table .itinerary-id-heading,
.itinerary-table .itinerary-item-id{
  text-align:center !important;
}
.itinerary-table th:nth-child(2),
.itinerary-table th:nth-child(3){
  padding-left:19px !important;
  text-align:left !important;
}
.itinerary-table th:nth-child(4),
.itinerary-table th:nth-child(5){
  padding-right:19px !important;
  text-align:right !important;
}
.itinerary-table .itinerary-active-heading,
.itinerary-table .itinerary-status-heading,
.itinerary-table .itinerary-actions-heading,
.itinerary-table .itinerary-active-cell,
.itinerary-table .itinerary-stock-state,
.itinerary-table .itinerary-admin-actions{
  padding-left:10px !important;
  padding-right:10px !important;
  text-align:center !important;
  vertical-align:middle !important;
}
body:not(.auth-page--login) .event-form .event-table--itinerary .sales-offer-controls{
  display:grid !important;
  grid-template-columns:16px 20px !important;
  justify-content:end !important;
  align-items:center !important;
  gap:6px !important;
}
body:not(.auth-page--login) .event-form .event-table--itinerary .itinerary-row-remove,
body:not(.auth-page--login) .event-form .event-table--itinerary .sales-offer-controls .button[data-remove-row]{
  display:inline-grid !important;
  place-items:center !important;
  flex:0 0 20px !important;
  width:20px !important;
  min-width:20px !important;
  max-width:20px !important;
  height:20px !important;
  min-height:20px !important;
  max-height:20px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:2px !important;
  font-size:calc(.68rem + 1px) !important;
  line-height:1 !important;
}

/* čitelná historie inventáře pro všechna oprávnění a šířky obrazovky. */
.itinerary-history-panel,
.itinerary-history-form,
.itinerary-history-wrap,
.itinerary-admin-table-wrap{
  min-width:0;
  max-width:100%;
}
.itinerary-history-panel{
  container-name:itinerary-history;
  container-type:inline-size;
}
.itinerary-history-panel > .panel-head{
  align-items:flex-start;
}
.itinerary-history-panel > .panel-head > div:first-child{
  min-width:0;
}
.itinerary-history-panel > .panel-head p{
  max-width:100%;
  margin-bottom:0;
}
.itinerary-history-wrap{
  max-height:none !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  overscroll-behavior-inline:contain;
  scrollbar-gutter:stable;
}
.itinerary-history-table{
  width:100% !important;
  min-width:1060px !important;
  table-layout:auto !important;
}
.itinerary-history-table--editable{
  min-width:1240px !important;
}
.itinerary-history-table th,
.itinerary-history-table td{
  min-width:0 !important;
  padding:10px 11px !important;
  vertical-align:middle !important;
  overflow-wrap:break-word;
  word-break:normal;
}
.itinerary-history-table th{
  white-space:normal;
}
.itinerary-history-table th.itinerary-history-col-check,
.itinerary-history-table td.itinerary-history-cell-check{
  width:44px !important;
  min-width:44px !important;
  text-align:center !important;
}
.itinerary-history-table th.itinerary-history-col-date,
.itinerary-history-table td.itinerary-history-cell-date{
  width:126px !important;
  min-width:126px !important;
}
.itinerary-history-table th.itinerary-history-col-item,
.itinerary-history-table td.itinerary-history-cell-item{
  width:150px !important;
  min-width:150px !important;
}
.itinerary-history-table th.itinerary-history-col-category,
.itinerary-history-table td.itinerary-history-cell-category{
  width:112px !important;
  min-width:112px !important;
}
.itinerary-history-table th.itinerary-history-col-activity,
.itinerary-history-table td.itinerary-history-cell-activity{
  width:215px !important;
  min-width:215px !important;
}
.itinerary-history-table th.itinerary-history-col-change,
.itinerary-history-table td.itinerary-history-cell-change{
  width:78px !important;
  min-width:78px !important;
  text-align:center !important;
}
.itinerary-history-table th.itinerary-history-col-stock,
.itinerary-history-table td.itinerary-history-cell-stock{
  width:176px !important;
  min-width:176px !important;
  text-align:center !important;
}
.itinerary-history-table th.itinerary-history-col-event,
.itinerary-history-table td.itinerary-history-cell-event{
  width:155px !important;
  min-width:155px !important;
}
.itinerary-history-table th.itinerary-history-col-user,
.itinerary-history-table td.itinerary-history-cell-user{
  width:145px !important;
  min-width:145px !important;
}
.itinerary-history-table th.itinerary-history-col-actions,
.itinerary-history-table td.itinerary-history-cell-actions{
  width:92px !important;
  min-width:92px !important;
  text-align:center !important;
}
.itinerary-history-date{
  white-space:normal !important;
}
.itinerary-history-date-value{
  display:grid;
  gap:2px;
  font-variant-numeric:tabular-nums;
  line-height:1.2;
}
.itinerary-history-date-value small{
  color:var(--muted);
  font-size:calc(.72rem + 1px);
}
.itinerary-history-cell-item strong,
.itinerary-history-cell-event strong,
.itinerary-history-cell-user{
  overflow-wrap:anywhere;
}
.itinerary-history-cell-activity > .badge{
  max-width:100%;
  white-space:normal;
  text-align:left;
  line-height:1.25;
}
.itinerary-history-quantity{
  white-space:nowrap !important;
}
.itinerary-history-stock{
  display:table-cell !important;
  white-space:nowrap !important;
}
.itinerary-history-stock > span{
  min-width:42px !important;
}
.itinerary-history-actions .button{
  min-width:0 !important;
  width:auto;
  max-width:100%;
  padding:7px 9px;
  white-space:nowrap;
}
.itinerary-history-filter{
  grid-template-columns:minmax(260px,1.35fr) minmax(190px,.65fr) minmax(285px,auto) !important;
  width:100%;
  max-width:100%;
}
.itinerary-history-filter > *{
  min-width:0;
}
.itinerary-history-filter-actions{
  min-width:0;
  flex-wrap:wrap;
}
.itinerary-history-filter-actions .button{
  min-width:0;
  padding-left:12px;
  padding-right:12px;
  white-space:nowrap;
}
.itinerary-order-table{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}
.itinerary-order-table th,
.itinerary-order-table td{
  min-width:0 !important;
  padding-left:7px !important;
  padding-right:7px !important;
  overflow-wrap:anywhere;
}
.itinerary-order-table .itinerary-restock-heading,
.itinerary-order-table .itinerary-restock-action,
.itinerary-order-table .itinerary-order-action-heading,
.itinerary-order-table .itinerary-order-action{
  width:auto !important;
  min-width:0 !important;
}
@container itinerary-history (max-width:920px){
  .itinerary-history-panel > .panel-head{
    align-items:stretch;
    flex-direction:column;
  }
  .itinerary-history-head-actions{
    width:100%;
    justify-content:flex-start;
  }
  .itinerary-history-filter{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .itinerary-history-filter-actions{
    grid-column:1 / -1;
    justify-content:flex-start;
  }
}
@container itinerary-history (max-width:560px){
  .itinerary-history-filter{
    grid-template-columns:1fr !important;
  }
  .itinerary-history-filter-actions{
    grid-column:auto;
    align-items:stretch;
    flex-direction:column;
  }
  .itinerary-history-filter-actions .button,
  .itinerary-history-head-actions .button{
    width:100%;
  }
}
@media (max-width:1200px){
  .itinerary-history-filter{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .itinerary-history-filter-actions{
    grid-column:1 / -1;
    justify-content:flex-start;
  }
}
@media (max-width:980px){
  .itinerary-history-panel > .panel-head{
    align-items:stretch;
    flex-direction:column;
  }
  .itinerary-history-head-actions{
    width:100%;
    justify-content:flex-start;
  }
  .itinerary-history-wrap{
    overflow:visible !important;
    border:0;
    border-radius:0;
    background:transparent;
  }
  .itinerary-history-table,
  .itinerary-history-table--editable,
  .itinerary-history-table--readonly,
  .itinerary-history-table tbody{
    display:block;
    width:100% !important;
    min-width:0 !important;
  }
  .itinerary-history-table thead{
    position:absolute !important;
    padding:0 !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    clip-path:inset(50%) !important;
    white-space:nowrap !important;
    border:0 !important;
  }
  .itinerary-history-table tbody{
    display:grid;
    gap:12px;
  }
  .itinerary-history-table tbody tr{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 16px;
  }
  .itinerary-history-table tbody td,
  .itinerary-history-table td.itinerary-history-cell-check,
  .itinerary-history-table td.itinerary-history-cell-date,
  .itinerary-history-table td.itinerary-history-cell-item,
  .itinerary-history-table td.itinerary-history-cell-category,
  .itinerary-history-table td.itinerary-history-cell-activity,
  .itinerary-history-table td.itinerary-history-cell-change,
  .itinerary-history-table td.itinerary-history-cell-stock,
  .itinerary-history-table td.itinerary-history-cell-event,
  .itinerary-history-table td.itinerary-history-cell-user,
  .itinerary-history-table td.itinerary-history-cell-actions{
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    padding:9px 0 !important;
    border-bottom:1px dashed rgba(122,98,70,.18);
    text-align:left !important;
    white-space:normal !important;
  }
  .itinerary-history-table tbody td::before{
    content:attr(data-label);
    display:block;
    margin-bottom:4px;
    color:var(--muted);
    font-size:calc(.64rem + 1px);
    font-weight:700;
    line-height:1.2;
    letter-spacing:.06em;
    text-transform:uppercase;
  }
  .itinerary-history-table tbody tr > td:last-child{
    border-bottom:0;
  }
  .itinerary-history-cell-item,
  .itinerary-history-cell-activity{
    grid-column:1 / -1;
  }
  .itinerary-history-table td.itinerary-history-cell-check{
    display:flex !important;
    align-items:center;
    gap:10px;
  }
  .itinerary-history-table td.itinerary-history-cell-check::before{
    margin:0;
  }
  .itinerary-history-stock{
    display:flex !important;
    align-items:flex-end;
    justify-content:flex-start;
    gap:5px;
    flex-wrap:wrap;
  }
  .itinerary-history-stock::before{
    flex:0 0 100%;
  }
  .itinerary-history-stock .itinerary-history-minimum{
    margin-left:6px;
    padding-left:8px;
  }
  .itinerary-admin-table-wrap{
    overflow-x:auto !important;
  }
  .itinerary-order-table{
    min-width:1180px !important;
  }
}
@media (max-width:560px){
  .itinerary-history-filter{
    grid-template-columns:1fr !important;
  }
  .itinerary-history-filter-actions{
    grid-column:auto;
    align-items:stretch;
    flex-direction:column;
  }
  .itinerary-history-filter-actions .button,
  .itinerary-history-head-actions .button{
    width:100%;
  }
  .itinerary-history-table tbody tr{
    grid-template-columns:1fr;
  }
  .itinerary-history-cell-item,
  .itinerary-history-cell-activity{
    grid-column:auto;
  }
}

/* kompaktní ovládání objednání a oddělené objednané / přijaté množství. */
.visually-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.itinerary-order-table th:nth-child(1){width:3%}
.itinerary-order-table th:nth-child(2){width:8%}
.itinerary-order-table th:nth-child(3){width:14%}
.itinerary-order-table th:nth-child(4),
.itinerary-order-table th:nth-child(5),
.itinerary-order-table th:nth-child(6){width:6.5%}
.itinerary-order-table th:nth-child(7){width:8%}
.itinerary-order-table th:nth-child(8){width:16%}
.itinerary-order-table th:nth-child(9){width:14%}
.itinerary-order-table th:nth-child(10){width:17.5%}
.itinerary-order-quantity-control{
  display:inline-block;
  margin:0;
}
.itinerary-order-quantity-control input{
  width:72px;
  min-width:0;
  margin:0;
  padding:7px 8px;
  text-align:right;
  font-variant-numeric:tabular-nums;
}
.itinerary-restock-control{
  grid-template-columns:minmax(64px,78px) 34px !important;
  gap:6px !important;
  align-items:end !important;
}
.itinerary-restock-control .button,
.itinerary-icon-button{
  display:inline-grid !important;
  place-items:center !important;
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:10px !important;
}
.itinerary-icon-button svg{
  width:18px;
  height:18px;
  pointer-events:none;
}
.itinerary-icon-button--restock,
.itinerary-icon-button--ordered{
  border-color:#946438 !important;
  background:#946438 !important;
  color:#fff !important;
}
.itinerary-icon-button--restock:hover,
.itinerary-icon-button--ordered:hover{
  background:#7f542e !important;
}
.itinerary-icon-button--cancel{
  border:1px solid rgba(140,59,53,.32) !important;
  background:#fff !important;
  color:var(--danger) !important;
}
.itinerary-icon-button--cancel:hover{
  background:#fff0ed !important;
}
.itinerary-ordered-actions,
.itinerary-pending-order-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  flex-wrap:nowrap !important;
}
.itinerary-ordered-meta{
  max-width:165px !important;
  padding:6px 8px !important;
}
.itinerary-ordered-meta small{
  font-size:calc(.62rem + 1px) !important;
  line-height:1.2 !important;
}
.itinerary-order-table .badge{
  max-width:100%;
  white-space:normal;
  line-height:1.2;
}
@media (max-width:1100px){
  .itinerary-order-table{min-width:1120px !important}
}

/* evidence částečně dodaných objednávek */
.itinerary-ordered-quantity{
  display:table-cell;
  vertical-align:middle;
}
.itinerary-ordered-quantity > strong{
  display:block;
}
.itinerary-undelivered-badge{
  display:inline-flex;
  margin-top:5px;
  border-color:#e0b15f !important;
  background:#fff1cf !important;
  color:#7a4b00 !important;
  white-space:nowrap !important;
}
.itinerary-history-undelivered{
  display:inline-flex;
  margin:4px 0 0;
  border-color:#e0b15f !important;
  background:#fff1cf !important;
  color:#7a4b00 !important;
  white-space:nowrap;
}
.itinerary-history-delivery-summary{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:calc(.68rem + 1px);
  line-height:1.25;
}

/* Event header, multiple payers and current event statuses. */
.page-header--actions-only{
  justify-content:flex-end;
  min-height:0;
}
.event-form > .event-template-picker-panel,
.event-form > .template-editor-meta{
  grid-column:1 / -1;
}
.event-template-picker-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  align-items:end;
  gap:22px;
  border:2px solid rgba(155,111,69,.28);
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(250,239,224,.94));
}
.event-header-brand--compact{
  min-height:62px;
}
.event-header-brand--compact .eyebrow{
  margin-bottom:4px;
}
.event-header-brand--compact p{
  margin:0;
}
.event-header-primary-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:18px;
  align-items:start;
}
.event-header-column{
  display:grid;
  gap:12px;
  min-width:0;
}
.event-header-column--right{
  padding-left:18px;
  border-left:1px solid var(--line);
}
.event-header-row{
  display:grid;
  gap:10px;
  min-width:0;
}
.event-header-row--two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.event-header-secondary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  padding-top:16px;
  border-top:1px solid var(--line);
}
.event-header-secondary-grid .span-3{grid-column:span 3}
.field-label{
  display:block;
  font-size:calc(.9rem + 1px);
  font-weight:600;
}
.field-help{
  display:block;
  color:var(--muted);
  font-size:calc(.76rem + 1px);
  line-height:1.4;
}
.payer-editor{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.58);
}
.payer-editor__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
}
.payer-rows{
  display:grid;
  gap:10px;
}
.payer-row{
  position:relative;
  display:grid;
  grid-template-columns:minmax(250px,1.35fr) minmax(210px,.65fr) 42px;
  gap:10px;
  align-items:end;
  padding:12px;
  border:1px solid rgba(122,98,70,.16);
  border-radius:14px;
  background:#fff;
}
.payer-row__address{
  grid-column:1 / 3;
  min-height:18px;
  color:var(--muted);
  font-size:calc(.76rem + 1px);
  line-height:1.35;
}
.payer-row__remove{
  grid-column:3;
  grid-row:1;
  align-self:end;
  width:38px;
  height:38px;
  border:1px solid #e3c7c4;
  border-radius:999px;
  background:#fff3f1;
  color:#8c3b35;
  cursor:pointer;
  font-size:calc(1.25rem + 1px);
}
.status-select--offer{
  background:#dbe7f3;
  border-color:#97aec8;
}
.status-select--offer_sent{
  background:#e7e0f4;
  border-color:#b5a3d0;
}
.status-select--in_progress{
  background:#d8f1ea;
  border-color:#7fb7a9;
}
.status-select--confirmed,
.status-select--confirmed_update{
  background:#b7d39b;
  border-color:#7ea05c;
}
.status-select--closed{
  background:#d7d7d7;
  border-color:#a8a8a8;
  color:#2b2b2b;
}
.status-select--cancelled_no_realization,
.status-select--cancelled_no_response,
.status-select--cancelled_capacity,
.status-select--cancelled_competition,
.status-select--cancelled_budget,
.status-select--cancelled_double_booking{
  background:#ec8b85;
  border-color:#cf5f58;
  color:#311313;
}
@media (max-width:1280px){
  .event-header-primary-grid{
    grid-template-columns:1fr;
  }
  .event-header-column--right{
    padding-left:0;
    padding-top:14px;
    border-left:0;
    border-top:1px solid var(--line);
  }
}
@media (max-width:900px){
  .event-template-picker-panel,
  .event-header-secondary-grid,
  .event-header-row--two{
    grid-template-columns:1fr;
  }
  .event-header-secondary-grid .span-2,
  .event-header-secondary-grid .span-3,
  .payer-editor.span-2,
  .payer-editor.span-3{
    grid-column:1;
  }
  .payer-row{
    grid-template-columns:1fr 44px;
  }
  .payer-row > label,
  .payer-row__address{
    grid-column:1;
  }
  .payer-row__remove{
    grid-column:2;
    grid-row:1;
  }
  .payer-editor__head{
    flex-direction:column;
  }
}

/* výběr šablony je vždy první blok nového eventu. */
body:not(.auth-page--login) .event-form.event-form--with-template-panel{
  grid-template-areas:
    "template template"
    "header header"
    "notes todo"
    "summary summary"
    "commercial commercial"
    "staff staff"
    "actions actions" !important;
}
body:not(.auth-page--login) .event-form.event-form--with-template-panel > .event-template-picker-panel,
body:not(.auth-page--login) .event-form.event-form--with-template-panel > .template-editor-meta{
  grid-area:template;
  grid-column:1 / -1 !important;
  align-self:start;
}
@media (max-width:1100px){
  body:not(.auth-page--login) .event-form.event-form--with-template-panel{
    grid-template-areas:
      "template"
      "header"
      "notes"
      "todo"
      "summary"
      "commercial"
      "staff"
      "actions" !important;
  }
}

/* DB firem: hromadné mazání pouze nepoužitých záznamů */
.contact-directory__head-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.contact-directory__head-actions form{margin:0}
.contact-select-col{
  width:42px;
  text-align:center !important;
}
.contact-select-col input[type="checkbox"]{
  width:17px;
  height:17px;
  margin:0;
}
.contacts-table tr.is-premium-selected{
  background:rgba(155,111,69,.08);
}
@media (max-width:720px){
  .contact-directory__head-actions{
    width:100%;
    justify-content:flex-start;
  }
}

/* Sekce 4/5, více rolí a samostatný TO-DO LIST. */
body:not(.auth-page--login) .event-form .section-five-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:12px !important;
}
body:not(.auth-page--login) .event-form .section-five-grid > label,
body:not(.auth-page--login) .event-form .section-five-grid > .span-2{
  grid-column:1 !important;
  width:100%;
  min-width:0;
}
body:not(.auth-page--login) .event-form .section-five-grid textarea{
  width:100%;
}

.todo-task-card{
  min-width:0;
  min-height:52px;
  align-items:center;
}
.todo-task-card > span{
  min-width:0;
  overflow-wrap:anywhere;
}
.todo-shared-notes{
  display:grid;
  gap:8px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(122,98,70,.2);
}
.todo-shared-notes > span{
  font-weight:700;
  letter-spacing:.08em;
}

.toolbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.panel-head--compact{
  align-items:flex-start;
  margin-bottom:0;
}
.empty-state{
  padding:24px;
  border:1px dashed rgba(122,98,70,.28);
  border-radius:18px;
  background:rgba(251,247,241,.72);
  color:var(--muted);
  text-align:center;
}
.center{
  text-align:center !important;
}

.todo-page-head{
  display:grid;
  gap:18px;
  margin-bottom:20px;
}
.todo-page-head > .panel-head{
  align-items:flex-start;
  margin-bottom:0;
}
.todo-page-head h3{
  margin-bottom:6px;
}
.todo-page-head p{
  margin:0;
}

.todo-filter-form{
  display:grid;
  gap:16px;
  padding:16px;
  border:1px solid rgba(122,98,70,.16);
  border-radius:20px;
  background:rgba(255,255,255,.58);
}
.form-grid--todo-filters{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.todo-filter-form .toolbar-actions{
  justify-content:flex-start;
}

@media (max-width:1280px){
  .form-grid--todo-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:900px){
  .form-grid--todo-filters{
    grid-template-columns:minmax(0,1fr);
  }
  .form-grid--todo-filters .span-2{
    grid-column:1;
  }
  .todo-page-head > .panel-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .todo-page-head .toolbar-actions{
    justify-content:flex-start;
  }
}
@media (max-width:640px){
  
  .toolbar-actions{
    justify-content:flex-start;
  }
  .toolbar-actions .button{
    width:100%;
  }
}

/* Dynamic Section 4 / TO-DO administration */

.form-error{
  margin:14px 0 0;
  padding:11px 13px;
  border:1px solid rgba(140,59,53,.28);
  border-radius:13px;
  background:#fff0ed;
  color:#8c3b35;
  font-weight:600;
}

.badge-warning{
  background:#fff4d8;
  color:#765512;
  border-color:#ead39c;
}
.alert-warning{
  background:#fff7df;
  color:#6f5419;
  border-color:#ead49b;
}

/* compact calculation summary and task completion action */
.summary-ledger{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:12px;
  align-items:start;
}
.summary-ledger__column{
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(137,105,73,.2);
  border-radius:8px;
  background:rgba(255,255,255,.56);
}
.summary-ledger__header,
.summary-ledger__row{
  display:grid;
  align-items:center;
  min-height:30px;
  border-bottom:1px solid rgba(137,105,73,.16);
}
.summary-ledger__header:last-child,
.summary-ledger__row:last-child{
  border-bottom:0;
}
.summary-ledger__header--costs,
.summary-ledger__column--costs .summary-ledger__row{
  grid-template-columns:minmax(150px,1.6fr) minmax(92px,.8fr) minmax(76px,.58fr);
}
.summary-ledger__header--revenue,
.summary-ledger__row--revenue{
  grid-template-columns:minmax(170px,1.7fr) minmax(105px,.85fr);
}
.summary-ledger__header{
  min-height:32px;
  background:rgba(157,105,58,.1);
  font-size:calc(.7rem + 1px);
  letter-spacing:.035em;
  text-transform:uppercase;
}
.summary-ledger__header > *,
.summary-ledger__row > *{
  min-width:0;
  margin:0;
  padding:5px 8px;
}
.summary-ledger__header > * + *,
.summary-ledger__row > * + *{
  border-left:1px solid rgba(137,105,73,.14);
}
.summary-ledger__row{
  font-size:calc(.74rem + 1px);
  line-height:1.2;
}
.summary-ledger__row > span:first-child{
  font-weight:600;
}
.summary-ledger__row > strong{
  font-size:calc(.76rem + 1px);
  white-space:nowrap;
}
.summary-ledger__row.is-over-limit > strong{
  color:#b42318;
  background:rgba(180,35,24,.08);
}
.summary-ledger__percent-input{
  display:flex !important;
  align-items:center;
  gap:3px !important;
  min-width:0;
  padding:2px 6px !important;
}
.summary-ledger__percent-input input[type="number"]{
  width:100% !important;
  min-width:0 !important;
  min-height:24px !important;
  height:24px !important;
  padding:2px 5px !important;
  border-radius:4px !important;
  font-size:calc(.72rem + 1px) !important;
  text-align:right;
}
.summary-ledger__percent-input > span{
  flex:0 0 auto;
  font-size:calc(.7rem + 1px);
  font-weight:700;
}
.summary-ledger__empty{
  color:var(--muted);
  text-align:center;
}

@media (max-width:900px){
  .summary-ledger{grid-template-columns:1fr}
}
@media (max-width:560px){
  .summary-ledger__header--costs,
  .summary-ledger__column--costs .summary-ledger__row{
    grid-template-columns:minmax(120px,1.35fr) minmax(84px,.8fr) minmax(68px,.58fr);
  }
  .summary-ledger__header--revenue,
  .summary-ledger__row--revenue{
    grid-template-columns:minmax(145px,1.4fr) minmax(96px,.8fr);
  }
  .summary-ledger__header > *,
  .summary-ledger__row > *{padding:5px 6px}
}

/* Event form row controls: add new rows below the table, directly above totals. */
body:not(.auth-page--login) .event-form .section-row-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  min-height:28px;
  margin-top:-2px;
}
body:not(.auth-page--login) .event-form .section-row-actions .button{
  margin:0;
}
body:not(.auth-page--login) .event-form .row-action-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
}
body:not(.auth-page--login) .event-form .event-table-action-heading{
  padding-left:4px !important;
  padding-right:4px !important;
}
body:not(.auth-page--login) .event-form .event-table--cost-general col.col-actions,
body:not(.auth-page--login) .event-form .event-table--cost-other-excluded col.col-actions,
body:not(.auth-page--login) .event-form .event-table--cost-staff col.col-actions{
  width:42px !important;
}

/* Event collaboration: active editors in the header, no blocking pop-up. */
.event-section--header .panel-head--section-controls{
  display:grid;
  grid-template-columns:auto minmax(320px,1fr) auto;
  align-items:start;
  column-gap:18px;
  row-gap:10px;
}
.event-collaboration-head{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:6px 10px;
  padding:7px 10px;
  border:1px solid rgba(122,98,70,.16);
  border-radius:14px;
  background:rgba(255,255,255,.58);
}
.event-collaboration-head__label{
  color:var(--muted);
  font-size:calc(.72rem + 1px);
  white-space:nowrap;
}
.event-collaboration-editors{
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.event-collaboration-editor{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:24px;
  padding:3px 8px;
  border:1px solid rgba(122,98,70,.16);
  border-radius:999px;
  background:#fff;
  font-size:calc(.72rem + 1px);
  line-height:1.1;
}
.event-collaboration-editor i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#45a06b;
  box-shadow:0 0 0 3px rgba(69,160,107,.12);
}
.event-collaboration-editor strong{font-size:calc(.74rem + 1px);font-weight:600}
.event-collaboration-editor small{color:var(--muted);font-size:calc(.66rem + 1px)}
.event-collaboration-editor.is-current{background:#eef7f1;border-color:#cce5d5}
.event-collaboration-editor--loading{color:var(--muted);background:rgba(255,255,255,.5)}
.event-collaboration-editor--loading i{display:none}
.event-collaboration-editor__changed{
  display:inline-flex;
  align-items:center;
  min-height:17px;
  padding:2px 6px;
  border-radius:999px;
  background:#f4dfbf;
  color:#77501f;
  font-size:calc(.62rem + 1px);
  font-weight:700;
  white-space:nowrap;
}
.event-collaboration-head__status{
  grid-column:1 / -1;
  padding:0;
  font-size:calc(.7rem + 1px);
  line-height:1.2;
}
.event-section--header .panel-head--section-controls .section-head-actions--top-level{
  margin-left:0;
}
@media (max-width:1280px){
  .event-section--header .panel-head--section-controls{
    grid-template-columns:auto minmax(0,1fr);
  }
  .event-section--header .panel-head--section-controls .section-head-actions--top-level{
    grid-column:1 / -1;
    justify-content:flex-end;
  }
}
@media (max-width:820px){
  .event-section--header .panel-head--section-controls{
    grid-template-columns:1fr;
  }
  .event-collaboration-head,
  .event-section--header .panel-head--section-controls .section-head-actions--top-level{
    grid-column:1;
    width:100%;
  }
  .event-collaboration-head{grid-template-columns:1fr}
  .event-collaboration-head__status{grid-column:1}
  .event-section--header .panel-head--section-controls .section-head-actions--top-level{justify-content:flex-start}
}

/* Sekce 3, polovicni plan personalu a sprava seznamu obleceni. */
body:not(.auth-page--login) .event-form-commercial-columns__left{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:18px;
  align-content:start;
  min-width:0;
}
body:not(.auth-page--login) .event-form-commercial-columns .event-section--staff{
  grid-area:auto !important;
  grid-column:1 !important;
  order:initial !important;
  min-width:0;
}
body:not(.auth-page--login) .event-form .event-meta-grid--staff{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
body:not(.auth-page--login) .event-form .event-meta-grid--staff .span-2{grid-column:span 2}
body:not(.auth-page--login) .event-form .event-meta-grid--staff .span-3{grid-column:1 / -1}
body:not(.auth-page--login) .event-form .clothing-set{
  min-width:0;
  margin:0;
  padding:12px;
  border:1px solid rgba(47,129,93,.22);
  border-radius:14px;
  background:rgba(255,255,255,.62);
}
body:not(.auth-page--login) .event-form .clothing-set legend{
  padding:0 7px;
  color:#275f49;
  font-size:calc(.8rem + 1px);
  font-weight:700;
}
body:not(.auth-page--login) .event-form .clothing-set__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
body:not(.auth-page--login) .event-form .clothing-set__grid label{
  min-width:0;
  display:grid;
  gap:5px;
}
body:not(.auth-page--login) .event-form .clothing-set__grid label > span{
  min-height:2.5em;
  font-size:calc(.65rem + 1px);
  line-height:1.25;
}
body:not(.auth-page--login) .event-form .clothing-set__grid input{
  min-width:0;
  width:100%;
  padding:7px 8px;
  font-size:calc(.7rem + 1px);
}
body:not(.auth-page--login) .event-form .event-section--staff .summary-grid.compact{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
body:not(.auth-page--login) .event-form .event-section--staff .summary-card{
  min-width:0;
  padding:10px 11px;
  border-radius:14px;
}
body:not(.auth-page--login) .event-form .event-section--staff .summary-card small{
  font-size:calc(.64rem + 1px);
  line-height:1.25;
}
body:not(.auth-page--login) .event-form .event-section--staff .summary-card strong{font-size:calc(.92rem + 1px)}
body:not(.auth-page--login) .event-form .staff-plan-phase-stack{
  display:grid;
  gap:12px;
  min-width:0;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card{
  --staff-phase-color:var(--event-service-event-color,#2f825d);
  min-width:0;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--staff-phase-color) 28%,var(--border,#d8e4e8));
  border-radius:14px;
  background:rgba(255,255,255,.42);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card--preparation{--staff-phase-color:var(--event-service-preparation-color,#2f825d)}
body:not(.auth-page--login) .event-form .staff-plan-phase-card--event{--staff-phase-color:var(--event-service-event-color,#2f825d)}
body:not(.auth-page--login) .event-form .staff-plan-phase-card--cleanup{--staff-phase-color:var(--event-service-cleanup-color,#2f825d)}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
  padding:10px 12px;
  border-bottom:1px solid color-mix(in srgb,var(--staff-phase-color) 20%,var(--border,#d8e4e8));
  background:color-mix(in srgb,var(--staff-phase-color) 8%,#fff);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card--preparation .staff-plan-phase-card__header{
  background:
    repeating-linear-gradient(135deg,color-mix(in srgb,var(--staff-phase-color) 13%,#fff) 0 7px,color-mix(in srgb,var(--staff-phase-color) 5%,#fff) 7px 14px);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card--cleanup .staff-plan-phase-card__header{
  background:
    repeating-linear-gradient(45deg,color-mix(in srgb,var(--staff-phase-color) 13%,#fff) 0 7px,color-mix(in srgb,var(--staff-phase-color) 5%,#fff) 7px 14px);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__identity{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__identity>div{min-width:0}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__identity h5{
  margin:0;
  color:var(--ink,#17334a);
  font-size:calc(.82rem + 1px);
  line-height:1.2;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__marker{
  flex:0 0 28px;
  width:28px;
  height:28px;
  border:1px solid color-mix(in srgb,var(--staff-phase-color) 72%,#fff);
  border-radius:50%;
  background:var(--staff-phase-color);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card--preparation .staff-plan-phase-card__marker{
  background:repeating-linear-gradient(135deg,var(--staff-phase-color) 0 4px,color-mix(in srgb,var(--staff-phase-color) 22%,#fff) 4px 8px);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card--cleanup .staff-plan-phase-card__marker{
  background:repeating-linear-gradient(45deg,var(--staff-phase-color) 0 4px,color-mix(in srgb,var(--staff-phase-color) 22%,#fff) 4px 8px);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__meta{
  margin:3px 0 0;
  color:var(--muted);
  font-size:calc(.62rem + 1px);
  line-height:1.3;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__actions .button{
  min-height:30px;
  padding:5px 9px;
  font-size:calc(.62rem + 1px);
  box-shadow:none;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-add{
  background:#11a7ad;
  border-color:#11a7ad;
  color:#fff;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__toggle{
  width:30px;
  min-width:30px;
  padding-inline:0!important;
  font-size:calc(.9rem + 1px)!important;
}
body:not(.auth-page--login) .event-form .staff-plan-phase-card__body{min-width:0}
body:not(.auth-page--login) .event-form .staff-plan-phase-empty{
  margin:0;
  padding:12px;
  color:var(--muted);
  font-size:calc(.64rem + 1px);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-summary{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
  margin:8px 10px 10px auto;
  width:max-content;
  max-width:calc(100% - 20px);
  padding:7px 10px;
  border-radius:10px;
  background:color-mix(in srgb,var(--staff-phase-color) 9%,#fff);
  color:color-mix(in srgb,var(--staff-phase-color) 70%,#17334a);
  font-size:calc(.62rem + 1px);
}
body:not(.auth-page--login) .event-form .staff-plan-phase-summary strong{font-variant-numeric:tabular-nums}
body:not(.auth-page--login) .event-form .event-table--staff-plan{
  width:100%;
  min-width:0;
  table-layout:fixed;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-position{width:12%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-count{width:5.5%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-rate{width:6%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-arrival,
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-departure{width:18%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-hours-total{width:6%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-per-person-total,
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-grand-total{width:8%}
body:not(.auth-page--login) .event-form .event-table.event-table--staff-plan col.col-actions{width:34px !important}
body:not(.auth-page--login) .event-form .event-table--staff-plan th,
body:not(.auth-page--login) .event-form .event-table--staff-plan td{
  min-width:0 !important;
  padding:3px 2px !important;
  font-size:calc(.58rem + 1px);
  line-height:1.15;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan th:last-child,
body:not(.auth-page--login) .event-form .event-table--staff-plan td:last-child{
  width:auto !important;
  min-width:0 !important;
}
body:not(.auth-page--login) .event-form .event-table.event-table--staff-plan input:not([type="hidden"]){
  width:100%;
  min-width:0 !important;
}
body:not(.auth-page--login) .event-form .event-table.event-table--staff-plan [data-plan-count],
body:not(.auth-page--login) .event-form .event-table.event-table--staff-plan [data-plan-rate]{
  min-width:0 !important;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan strong{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:center;
  font-variant-numeric:tabular-nums;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan .plan-datetime-heading{
  white-space:nowrap;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan .plan-datetime-heading small{
  display:inline;
  font-size:inherit;
  font-weight:inherit;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan .plan-datetime{
  display:grid;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan .row-action-controls .button{
  width:22px;
  min-width:22px;
  height:22px;
  padding:0;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan [data-remove-staff-plan-row]{
  border-color:rgba(219,73,73,.5)!important;
  background:rgba(219,73,73,.08)!important;
  color:#c83c3c!important;
}
body:not(.auth-page--login) .event-form .event-section--staff .table-wrap{
  overflow-x:hidden;
}
body:not(.auth-page--login) .event-form .section-row-actions--staff-plan,
body:not(.auth-page--login) .event-form .section-row-actions--itinerary{
  margin-top:8px;
}

@media (max-width:1350px){
  body:not(.auth-page--login) .event-form .clothing-set__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body:not(.auth-page--login) .event-form .clothing-set__grid label > span{min-height:auto}
}
@media (max-width:1100px){
  body:not(.auth-page--login) .event-form .event-meta-grid--staff{grid-template-columns:repeat(2,minmax(0,1fr))}
  body:not(.auth-page--login) .event-form .event-meta-grid--staff .span-2,
  body:not(.auth-page--login) .event-form .event-meta-grid--staff .span-3{grid-column:1 / -1}
}

@media (max-width:700px){
  body:not(.auth-page--login) .event-form .event-meta-grid--staff,
body:not(.auth-page--login) .event-form .clothing-set__grid,
body:not(.auth-page--login) .event-form .event-section--staff .summary-grid.compact{grid-template-columns:1fr}
  body:not(.auth-page--login) .event-form .event-meta-grid--staff .span-2,
  body:not(.auth-page--login) .event-form .event-meta-grid--staff .span-3{grid-column:1}
  body:not(.auth-page--login) .event-form .event-table--staff-plan{min-width:0!important}
  body:not(.auth-page--login) .event-form .event-section--staff .staff-plan-wrap{overflow-x:hidden!important}
  body:not(.auth-page--login) .event-form .staff-plan-phase-card__header{align-items:flex-start;flex-direction:column}
  body:not(.auth-page--login) .event-form .staff-plan-phase-card__actions{width:100%;justify-content:flex-start}
  body:not(.auth-page--login) .event-form .staff-plan-phase-summary{width:calc(100% - 20px);justify-content:space-between}
  body:not(.auth-page--login) .event-form .event-table--staff-plan th,
  body:not(.auth-page--login) .event-form .event-table--staff-plan td{font-size:calc(.52rem + 1px)}
  body:not(.auth-page--login) .event-form .event-table--staff-plan .row-action-controls .button{
    width:20px;
    min-width:20px;
    height:20px;
  }
}

/* Statistiky – stabilní rozložení filtrů, exportu a výsledků na všech šířkách. */
.analytics-filter-panel{
  container-name:analytics-filter;
  container-type:inline-size;
  min-width:0;
  padding:18px 20px;
  overflow:visible;
}
.analytics-form{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:16px;
  min-width:0;
  max-width:100%;
}
.analytics-form > *{
  min-width:0;
}
.analytics-form > .analytics-filters,
.analytics-form > .analytics-export-builder,
.analytics-form > .analytics-filter-actions{
  grid-column:1 / -1 !important;
  width:100%;
}
.analytics-filters{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;
  gap:12px;
  align-items:end;
  min-width:0;
  width:100%;
}
.analytics-filters label{
  min-width:0;
  gap:6px;
}
.analytics-filters label > span{
  min-width:0;
  color:var(--muted);
  font-size:calc(.78rem + 1px);
  line-height:1.25;
  white-space:normal !important;
  overflow-wrap:anywhere;
}
.analytics-filters input,
.analytics-filters select{
  width:100%;
  min-width:0;
  padding:10px 11px;
  border-radius:12px;
  font-size:calc(.86rem + 1px);
}

.analytics-filter-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  flex-wrap:wrap !important;
  padding-bottom:1px;
}
.analytics-filter-actions .button{
  min-width:0;
  padding:10px 14px;
  font-size:calc(.84rem + 1px);
  white-space:nowrap;
}
.analytics-export-builder{
  min-width:0;
  border-top:1px solid var(--line);
  padding-top:14px;
}
.analytics-export-head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(340px,520px);
  align-items:end !important;
  gap:18px;
  margin-bottom:12px;
}
.analytics-export-copy{
  min-width:0;
  max-width:76ch;
}
.analytics-export-copy p{
  margin-bottom:0;
}
.analytics-export-add{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  align-items:center;
  width:100%;
  min-width:0;
}
.analytics-export-add select{
  width:100%;
  min-width:0;
}
.analytics-export-add .button{
  white-space:nowrap;
}
.analytics-export-fields{
  display:grid;
  min-width:0;
}
.analytics-export-field{
  display:grid;
  align-items:center;
  min-width:0;
  border:1px solid var(--line);
  background:rgba(255,255,255,.72);
}
.analytics-export-field-index{
  font-weight:700;
  color:var(--muted);
  text-align:center;
}
.analytics-export-field > strong{
  min-width:0;
  overflow-wrap:anywhere;
}
.analytics-export-field > .badge{
  justify-self:start;
  white-space:nowrap;
}
.analytics-export-field-actions{
  display:flex;
  justify-content:flex-end;
  min-width:0;
}
.analytics-export-field-actions .button:disabled{
  opacity:.35;
  cursor:not-allowed;
}

.analytics-empty-state{
  display:grid;
  gap:4px;
  margin:0;
}

@container analytics-filter (max-width:1120px){
  .analytics-export-head{
    grid-template-columns:1fr;
    align-items:stretch !important;
  }
  .analytics-export-add{
    max-width:none;
  }
}
@container analytics-filter (max-width:900px){
  .analytics-filters{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  
  .analytics-filter-actions{
    justify-content:flex-start;
  }
}
@container analytics-filter (max-width:560px){
  .analytics-filters{
    grid-template-columns:1fr !important;
  }
  
  .analytics-export-add{
    grid-template-columns:1fr;
  }
  .analytics-export-add .button,
  .analytics-filter-actions .button{
    width:100%;
  }
  .analytics-filter-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .analytics-export-field{
    grid-template-columns:26px minmax(0,1fr);
    align-items:start;
  }
  .analytics-export-field > .badge{
    grid-column:2;
  }
  .analytics-export-field-actions{
    grid-column:1 / -1;
    padding-top:7px;
    border-top:1px dashed rgba(122,98,70,.18);
  }
}
@media (max-width:1100px){
  .analytics-filters{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  
  .analytics-export-head{
    grid-template-columns:1fr;
    align-items:stretch !important;
  }
  .analytics-filter-actions{
    justify-content:flex-start;
  }
}

@media (max-width:560px){
  .analytics-filter-panel{
    padding:14px;
  }
  .analytics-filters{
    grid-template-columns:1fr !important;
  }
  
  .analytics-export-add{
    grid-template-columns:1fr;
  }
  .analytics-export-add .button,
  .analytics-filter-actions .button{
    width:100%;
  }
  .analytics-filter-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .analytics-export-field{
    grid-template-columns:26px minmax(0,1fr);
    align-items:start;
  }
  .analytics-export-field > .badge{
    grid-column:2;
  }
  .analytics-export-field-actions{
    grid-column:1 / -1;
    padding-top:7px;
    border-top:1px dashed rgba(122,98,70,.18);
  }
  
  
}

.event-header-row--four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.summary-ledger__row.is-negative > strong{color:#b42318;background:rgba(180,35,24,.08)}
@media (max-width:1100px){.event-header-row--four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.event-header-row--four{grid-template-columns:1fr}}

/* Section color controls: always show/edit an explicit HEX value. */
body:not(.auth-page--login) .event-form .section-color-control .section-color-hex{
  width:78px !important;
  min-width:78px !important;
  height:24px !important;
  min-height:24px !important;
  padding:2px 6px !important;
  border:1px solid var(--line) !important;
  border-radius:4px !important;
  background:#fff !important;
  color:var(--text) !important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:calc(.68rem + 1px) !important;
  line-height:1 !important;
  text-transform:uppercase;
}
body:not(.auth-page--login) .event-form .section-color-control .section-color-hex.is-invalid{
  border-color:var(--danger) !important;
  box-shadow:0 0 0 2px rgba(177,77,69,.12);
}
@media (max-width:900px){
  body:not(.auth-page--login) .event-form .section-color-control .section-color-hex{
    width:72px !important;
    min-width:72px !important;
  }
}

/* dashboard calendar with agenda */

.dashboard-monthly-load{
  --load-in-progress:#747b80;
  --load-offer:#557da2;
  --load-offer-sent:#7b68a5;
  --load-confirmed:#39785d;
  --load-closed:#4f5357;
  --load-cancelled:#b44740;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:12px;
  padding-left:24px;
  border-left:1px solid var(--line);
}

.dashboard-monthly-load__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.dashboard-monthly-load__header .eyebrow{margin-bottom:.35rem!important}
.dashboard-monthly-load__header h2{font-size:calc(1.55rem + 1px) !important;line-height:1.15}

.dashboard-monthly-load__nav{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:5px;
  padding:3px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.68);
}

.dashboard-monthly-load__nav-button,
.dashboard-monthly-load__today{
  min-height:30px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  font:inherit;
  font-size:calc(.67rem + 1px);
  cursor:pointer;
}

.dashboard-monthly-load__nav-button{
  width:30px;
  padding:0;
  font-size:calc(1.1rem + 1px);
  line-height:1;
}

.dashboard-monthly-load__today{padding:6px 9px;font-weight:700}
.dashboard-monthly-load__nav-button:hover,
.dashboard-monthly-load__today:hover{background:rgba(155,111,69,.1)}

.dashboard-monthly-load__context{
  min-width:0;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:10px;
  margin-top:-3px;
}
.dashboard-monthly-load__period{
  min-width:0;
  padding-bottom:4px;
  color:var(--accent-dark);
  font-size:calc(.78rem + 1px);
  font-weight:700;
  text-transform:capitalize;
}
.dashboard-monthly-load__owner-filter{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(120px,190px);
  align-items:center;
  gap:7px;
  color:var(--muted);
  font-size:calc(.58rem + 1px);
  font-weight:700;
}
.dashboard-monthly-load__owner-filter select{
  width:100%;
  min-width:0;
  min-height:30px;
  padding:5px 28px 5px 9px;
  border:1px solid var(--line);
  border-radius:10px;
  background-color:rgba(255,255,255,.76);
  color:var(--ink);
  font:inherit;
  font-size:calc(.62rem + 1px);
}

.dashboard-monthly-load__kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.dashboard-monthly-load__kpi{
  min-width:0;
  display:grid;
  gap:2px;
  padding:10px 11px;
  border:1px solid rgba(155,111,69,.18);
  border-radius:13px;
  background:rgba(255,255,255,.62);
}

.dashboard-monthly-load__kpi>span{
  min-width:0;
  color:#796b5f;
  font-weight:700;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:anywhere;
}

.dashboard-monthly-load__kpi strong{
  color:var(--ink);
  font-size:calc(1.35rem + 1px);
  line-height:1.05;
  font-variant-numeric:tabular-nums;
}

.dashboard-monthly-load__kpi--offer strong{color:var(--load-offer)}
.dashboard-monthly-load__kpi--open strong{color:var(--load-offer-sent)}
.dashboard-monthly-load__kpi--confirmed strong,
.dashboard-monthly-load__kpi--conversion strong{color:var(--load-confirmed)}
.dashboard-monthly-load__kpi small{
  min-width:0;
  color:var(--muted);
  line-height:1.3;
  white-space:normal;
  overflow-wrap:anywhere;
}

.dashboard-monthly-load__chart{
  min-width:0;
  display:grid;
  gap:7px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:15px;
  background:rgba(255,255,255,.46);
}

.dashboard-monthly-load__chart-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:3px;
}
.dashboard-monthly-load__chart-head span{color:var(--muted);}

.dashboard-monthly-load__chart-row{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(90px,130px) minmax(70px,1fr) 28px;
  align-items:center;
  gap:9px;
}
.dashboard-monthly-load__chart-label{
  min-width:0;
  overflow:hidden;
  color:#655b52;
  font-weight:600;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashboard-monthly-load__track{
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(93,82,70,.09);
}
.dashboard-monthly-load__bar{
  display:block;
  width:var(--load-percent,0%);
  height:100%;
  border-radius:inherit;
  background:var(--load-in-progress);
  transition:width .28s ease;
}
.dashboard-monthly-load__chart-row>strong{
  color:var(--ink);
  font-variant-numeric:tabular-nums;
  text-align:right;
}
.dashboard-monthly-load__chart-row--offer .dashboard-monthly-load__bar{background:var(--load-offer)}
.dashboard-monthly-load__chart-row--offer-sent .dashboard-monthly-load__bar{background:var(--load-offer-sent)}
.dashboard-monthly-load__chart-row--confirmed .dashboard-monthly-load__bar{background:var(--load-confirmed)}
.dashboard-monthly-load__chart-row--closed .dashboard-monthly-load__bar{background:var(--load-closed)}
.dashboard-monthly-load__chart-row--cancelled .dashboard-monthly-load__bar{background:var(--load-cancelled)}

.dashboard-monthly-load__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:6px 12px;
  color:var(--muted);
}
.dashboard-monthly-load__footer strong{color:var(--ink);font-variant-numeric:tabular-nums}

@media (max-width:1100px){
  
  .dashboard-monthly-load{
    padding-top:20px;
    padding-left:0;
    border-top:1px solid var(--line);
    border-left:0;
  }
}

@media (max-width:640px){
  .dashboard-monthly-load__header{
    align-items:stretch;
    flex-direction:column;
  }
  .dashboard-monthly-load__nav{align-self:flex-start}
  .dashboard-monthly-load__context{align-items:stretch;flex-direction:column}
  .dashboard-monthly-load__period{padding-bottom:0}
  .dashboard-monthly-load__owner-filter{grid-template-columns:auto minmax(0,1fr)}
  .dashboard-monthly-load__kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-monthly-load__chart-row{grid-template-columns:minmax(82px,110px) minmax(55px,1fr) 26px;gap:7px}
}

/* Explicit schedule save: date/time changes never participate in general autosave. */
.event-schedule-save{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 15px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.68);
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.event-schedule-save__copy{
  display:grid;
  gap:3px;
  min-width:0;
}
.event-schedule-save__copy strong{font-size:calc(.86rem + 1px)}
.event-schedule-save__copy span{color:var(--muted);font-size:calc(.72rem + 1px);line-height:1.42}
.event-schedule-save__button{flex:0 0 auto;white-space:nowrap}
.event-schedule-save.is-dirty{
  border-color:#c89555;
  background:#fff8ed;
  box-shadow:0 0 0 3px rgba(200,149,85,.1);
}
.event-schedule-save.is-dirty .event-schedule-save__copy span{color:#805419}
.event-schedule-save.is-success{border-color:#9fc9ac;background:#f1f8f2}
.event-schedule-save.is-error{border-color:#d8a29e;background:#fff2f1}
.event-schedule-save.is-error .event-schedule-save__copy span{color:#9a403a}
.event-schedule-save.is-saving{opacity:.82}
.event-status-save{
  align-items:stretch;
  flex-direction:column;
  gap:10px;
  margin-bottom:12px;
}
.event-status-save__button{width:100%}
@media (max-width:720px){
  .event-schedule-save{align-items:stretch;flex-direction:column}
  .event-schedule-save__button{width:100%}
}

.checkbox-card--locked{
  background:rgba(25,124,91,.055);
  border-color:rgba(25,124,91,.28);
}
.checkbox-card--locked input[type="checkbox"]{
  accent-color:#167d59;
}

/* Receptury / MENU */
.event-section--recipes{
  --recipe-accent:#718c50;
}
.event-section--recipes .panel-head{
  align-items:flex-start;
}
.table-wrap--recipes{
  margin-top:14px;
}
.event-table--recipes .col-qty,
.event-table--recipes .col-actions{width:16%}
.event-recipe-date-cell{
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
  font-weight:650;
}
.event-recipe-day-heading td{
  padding:9px 10px;
  background:rgba(113,140,80,.09);
  border-top:1px solid rgba(113,140,80,.24);
  border-bottom:1px solid rgba(113,140,80,.18);
}
.event-recipe-day-heading__content{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.event-recipe-day-heading__content > span{
  display:flex;
  align-items:baseline;
  gap:8px;
}
.event-recipe-day-heading__content [data-event-recipe-day-label]{
  color:var(--muted);
  font-size:calc(.78rem + 1px);
  font-weight:600;
}
.event-recipe-ingredients{
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:calc(.72rem + 1px);
  line-height:1.35;
}
.section-row-actions--recipes{
  margin-top:12px;
}
.recipe-page-intro .panel-head{
  align-items:flex-start;
}
.recipe-page-intro p{
  max-width:920px;
  margin-bottom:0;
}
.recipe-ingredients-head{
  margin-top:8px;
  padding-top:14px;
  border-top:1px solid var(--line);
}

/* Kontrola zabalení inventáře */

.packing-dialog{
  width:min(920px,calc(100vw - 32px));
  max-height:min(86vh,820px);
  padding:0;
  border:1px solid rgba(150,118,83,.28);
  border-radius:22px;
  background:#fffdfa;
  color:var(--text);
  box-shadow:0 28px 90px rgba(46,36,27,.28);
}
.packing-dialog::backdrop{
  background:rgba(27,24,21,.48);
  backdrop-filter:blur(3px);
}
.packing-dialog__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:20px 22px 16px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#fffdf9 0%,#fbf6ef 100%);
}
.packing-dialog__head h3{
  margin:3px 0 5px;
}
.packing-dialog__head p{
  max-width:720px;
  margin:0;
}
.packing-dialog__close{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  flex:0 0 36px;
  padding:0;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  color:var(--text);
  font-size:calc(1.35rem + 1px);
  line-height:1;
  cursor:pointer;
}
.packing-dialog form{
  display:flex;
  flex-direction:column;
  min-height:0;
}

.packing-shortage{
  color:#a34437 !important;
  font-weight:700;
}
.packing-dialog__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 22px 18px;
  border-top:1px solid var(--line);
  background:#fbf8f3;
}
.packing-dialog__progress{
  color:var(--muted);
  font-size:calc(.78rem + 1px);
  font-weight:700;
}
.packing-dialog [data-packing-complete]:disabled{
  opacity:.45;
  cursor:not-allowed;
}

@media (max-width:760px){
  .event-table--recipes .col-date,
  .event-table--recipes .col-label,
  .event-table--recipes .col-qty,
  .event-table--recipes .col-actions{width:auto}
  .event-recipe-day-heading__content{align-items:flex-start;flex-direction:column}
  .packing-dialog{width:calc(100vw - 18px)}
  .packing-dialog__head{padding:16px}
  
  
  
  .packing-dialog__footer{align-items:stretch;flex-direction:column;padding:14px 16px}
  .packing-dialog__footer .toolbar-actions{display:grid;grid-template-columns:1fr}
  .packing-dialog__footer .button{width:100%}
}

/* Sklad surovin a přímá gramáž receptur */
.recipe-stock-panel .panel-head,
.recipe-stock-panel .recipe-stock-tools{
  align-items:flex-start;
}
.recipe-stock-tools{
  display:grid;
  gap:8px;
  margin:14px 0;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(248,245,240,.72);
}
.recipe-stock-import{
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap;
  gap:10px;
}
.recipe-stock-import label{
  min-width:min(360px,100%);
}
.recipe-stock-create{
  margin:16px 0;
  padding:16px;
  border:1px solid rgba(150,118,83,.22);
  border-radius:16px;
  background:#fff;
}
.recipe-stock-create__grid{
  grid-template-columns:repeat(4,minmax(140px,1fr));
}
.recipe-stock-table-wrap{
  margin-top:14px;
}
.recipe-stock-table{
  min-width:1320px;
}
.recipe-stock-table input{
  min-width:92px;
}
.recipe-stock-table td:nth-child(2) input,
.recipe-stock-table td:nth-child(7) input{
  min-width:200px;
}
.recipe-stock-table .is-muted-row{
  opacity:.62;
}
.recipe-stock-actions{
  display:flex;
  gap:6px;
}
.recipe-main-fields{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.input-with-unit{
  display:flex;
  align-items:center;
  gap:8px;
}
.input-with-unit input{
  flex:1 1 auto;
}
.input-with-unit > span{
  flex:0 0 auto;
  color:var(--muted);
  font-weight:700;
}
.recipe-ingredients-table{
  min-width:1180px;
}
.recipe-ingredients-table th:first-child,
.recipe-ingredients-table td:first-child{
  min-width:320px;
}
.recipe-ingredients-table th:nth-child(2),
.recipe-ingredients-table td:nth-child(2){min-width:190px}
.recipe-ingredients-table th:nth-child(3),
.recipe-ingredients-table td:nth-child(3){min-width:100px}
.recipe-ingredients-table th:nth-child(4),
.recipe-ingredients-table td:nth-child(4){min-width:190px}
.recipe-ingredients-table td:nth-child(4){
  display:grid;
  gap:3px;
}
.recipe-calculation-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.recipe-calculation-summary article,
.recipe-detail-metrics span{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border:1px solid rgba(133,157,95,.24);
  border-radius:14px;
  background:rgba(238,245,232,.62);
}
.recipe-calculation-summary small,
.recipe-detail-metrics span{
  color:var(--muted);
  font-size:calc(.74rem + 1px);
}
.recipe-calculation-summary strong,
.recipe-detail-metrics strong{
  color:var(--text);
  font-size:calc(.94rem + 1px);
}
.recipe-detail-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin:12px 0;
}
.recipe-detail-metrics span{
  padding:8px 10px;
}

/* Automatické podklady pro kuchyň v TO-DO LISTU */
.todo-task-card--automatic{
  border-color:rgba(48,126,84,.28);
  background:rgba(226,244,231,.52);
}
.todo-task-card--automatic input[disabled]{
  opacity:1;
}

.kitchen-plan-shortage{
  color:#a34437;
  font-weight:700;
}

@media (max-width:900px){
  .recipe-stock-create__grid,
  .recipe-main-fields,
  .recipe-calculation-summary,
  .recipe-detail-metrics{
    grid-template-columns:1fr;
  }
  .recipe-stock-import{
    align-items:stretch;
    flex-direction:column;
  }
  .recipe-stock-import .button{
    width:100%;
  }
  
  
}

/* Přímá syrová gramáž receptury a jednotky skladu */
.input-with-unit--compact{
  min-width:150px;
  gap:5px;
}
.input-with-unit--compact input{
  min-width:78px;
}
.recipe-stock-table .input-with-unit > span{
  white-space:nowrap;
  font-size:calc(.72rem + 1px);
}
.recipe-ingredients-table--direct{
  min-width:1060px;
}
.recipe-ingredients-table--direct th:first-child,
.recipe-ingredients-table--direct td:first-child{
  min-width:330px;
}
.recipe-ingredients-table--direct th:nth-child(2),
.recipe-ingredients-table--direct td:nth-child(2){
  min-width:230px;
}
.recipe-ingredients-table--direct th:nth-child(3),
.recipe-ingredients-table--direct td:nth-child(3){
  min-width:210px;
}
.recipe-ingredients-table--direct td:nth-child(3){
  display:grid;
  gap:3px;
}
.recipe-ingredients-table--direct td:nth-child(4){
  display:table-cell;
  min-width:210px;
}
.recipe-calculation-summary strong.is-warning{
  color:#a05b21;
}

/* Filtr a akce seznamu receptur */
.recipe-list-filter{
  display:grid;
  grid-template-columns:minmax(280px,1fr) auto;
  align-items:end;
  gap:14px;
  margin:0 0 10px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(248,245,240,.72);
}
.recipe-list-filter__actions{justify-content:flex-end}
.recipe-list-filter__result{margin:0 0 10px}
.recipe-list-actions-heading,
.recipe-list-actions-cell{text-align:right}
.recipe-list-actions{justify-content:flex-end;flex-wrap:nowrap}
.recipe-list-actions form{margin:0}
@media (max-width:760px){
  .recipe-list-filter{grid-template-columns:1fr;align-items:stretch}
  .recipe-list-filter__actions{justify-content:flex-start}
  .recipe-list-actions{justify-content:flex-start;flex-wrap:wrap}
  .recipe-list-actions-heading,
  .recipe-list-actions-cell{text-align:left}
}

/* Textové poznámky eventu se automaticky roztahují podle celého obsahu. */
body:not(.auth-page--login) .event-form textarea[data-event-note-autosize],
body:not(.auth-page--login) .event-form textarea[data-autosize-textarea]{
  min-height:0;
  height:auto;
  overflow-y:hidden;
  resize:none;
}

/* Přehled eventů: výběr řádků a tabulkové buňky. */
.event-select-col{
  width:44px;
  min-width:44px;
  text-align:center !important;
}
.event-select-col input[type="checkbox"]{
  width:17px;
  height:17px;
  margin:0;
  cursor:pointer;
}
.event-directory .dashboard-events-table tr:has([data-event-select]:checked){
  background:rgba(155,111,69,.08);
}
.event-type-cell{
  min-width:135px;
  max-width:210px;
  white-space:normal;
  overflow-wrap:anywhere;
}
.event-manager-cell{
  min-width:150px;
}
.event-manager-cell__active-owner{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:calc(.72rem + 1px);
  line-height:1.25;
  white-space:normal;
}
.event-directory__empty{
  padding:28px 18px !important;
  text-align:center !important;
}

/* Centrální oprávnění rolí */

.role-permission-card{padding:0;overflow:hidden}
.role-permission-card>summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;cursor:pointer;list-style:none;background:var(--paper-soft);border-bottom:1px solid transparent}
.role-permission-card[open]>summary{border-bottom-color:var(--line)}
.role-permission-card>summary::-webkit-details-marker{display:none}
.role-permission-card>summary>span:first-child{display:grid;gap:4px}
.role-permission-card>summary small{color:var(--muted);font-weight:400}
.role-permission-card__body{padding:16px}
.role-permission-table__group th{padding-top:18px;background:rgba(155,111,69,.06);color:var(--accent-dark);text-transform:uppercase;letter-spacing:.08em;font-size:calc(.72rem + 1px)}
.role-action-check{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:pointer}
.role-action-check input{width:17px;height:17px;margin:0;cursor:pointer}
.role-action-check--locked{background:transparent;cursor:not-allowed;opacity:.7}
.role-action-check--locked input{cursor:not-allowed}

.role-permission-savebar{position:sticky;bottom:12px;z-index:8;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.95);box-shadow:0 10px 30px rgba(58,43,29,.12);backdrop-filter:blur(8px)}
.role-readonly-form input:disabled,.role-readonly-form select:disabled,.role-readonly-form textarea:disabled{opacity:1;color:var(--ink);background:rgba(248,245,240,.8);cursor:default}
.role-readonly-form button:disabled{opacity:.45;cursor:not-allowed}
@media (max-width:760px){
  .role-permission-card>summary{align-items:flex-start;flex-direction:column}
  .role-permission-savebar{bottom:6px}
}

/* Kompaktní jednořádkový přehled eventů a vytvoření kopie. */
.event-directory .table-wrap{
  overflow-x:auto;
  overscroll-behavior-inline:contain;
}
.event-directory .event-directory-table{
  width:100%;
  table-layout:auto !important;
  font-size:calc(.74rem + 1px);
}
.event-directory .event-directory-table th,
.event-directory .event-directory-table td{
  height:42px;
  padding:7px 8px !important;
  line-height:1.1;
  white-space:nowrap !important;
}
.event-directory .event-directory-table thead th{
  font-size:calc(.68rem + 1px);
  font-weight:600;
}
.event-directory .event-select-col{
  width:30px;
  min-width:30px;
  padding-left:4px !important;
  padding-right:4px !important;
}
.event-directory .event-date-cell{width:82px}
.event-directory .event-sort-link{
  display:inline-flex;
  gap:3px;
  color:inherit;
  text-decoration:none;
  white-space:nowrap;
}
.event-directory .event-sort-link:hover,
.event-directory .event-sort-link:focus-visible{
  color:var(--accent);
  text-decoration:underline;
  text-underline-offset:3px;
}
.event-directory .event-sort-link.is-active{font-weight:800;color:var(--ink)}
.event-directory .event-code-cell,
.event-directory .event-manager-cell,
.event-directory .event-type-cell{
  overflow:hidden;
  text-overflow:ellipsis;
}
.event-directory .event-code-cell{max-width:230px}
.event-directory .event-manager-cell{max-width:145px}
.event-directory .event-type-cell{
  min-width:0;
  max-width:165px;
  overflow-wrap:normal;
}
.event-directory .event-number-cell{
  text-align:center;
  font-variant-numeric:tabular-nums;
}
.event-directory .dashboard-events-table__actions{
  display:table-cell !important;
  text-align:center;
}
.event-directory .dashboard-events-table__action-pill{
  font-size:calc(.71rem + 1px);
}
.dashboard-events-table__action-pill--copy{
  background:#f6eadb;
  border-color:#d8b992;
  color:#6f4827;
  cursor:pointer;
}
.dashboard-events-table__action-pill--copy:hover{
  transform:none;
  background:#f0dfca;
}

/* Vodorovný posuvník široké tabulky zůstává stále viditelný; JS ho na mobilu drží nad spodní navigací. */
.table-scroll-floating{
  position:fixed;
  z-index:110;
  bottom:8px;
  box-sizing:border-box;
  height:28px;
  overflow-x:scroll;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scrollbar-width:auto;
  scrollbar-gutter:stable both-edges;
  scrollbar-color:var(--accent-dark) rgba(255,255,255,.95);
  border:1px solid rgba(122,98,70,.3);
  border-radius:999px;
  background:rgba(255,255,255,.98);
  box-shadow:0 8px 24px rgba(45,33,20,.24);
  backdrop-filter:blur(10px);
}
.table-scroll-floating[hidden]{display:none!important}
.table-scroll-floating__spacer{height:1px;min-width:100%}
.table-scroll-floating::-webkit-scrollbar{height:15px}
.table-scroll-floating::-webkit-scrollbar-track{background:rgba(155,111,69,.1);border-radius:999px}
.table-scroll-floating::-webkit-scrollbar-thumb{background:linear-gradient(90deg,var(--accent),var(--accent-dark));border:2px solid rgba(255,255,255,.92);border-radius:999px}
body.has-floating-table-scroll .content{padding-bottom:76px}
.table-wrap{
  max-width:100%;
  overflow-x:auto!important;
  overflow-y:visible;
  overscroll-behavior-inline:contain;
  scrollbar-gutter:stable both-edges;
  -webkit-overflow-scrolling:touch;
}
.table-wrap>table{
  width:max-content!important;
  min-width:100%!important;
  table-layout:auto!important;
}
.table-wrap>table th,
.table-wrap>table td,
.table-wrap>table th *:where(:not(.event-offer-actions-menu__panel, .event-offer-actions-menu__panel *)),
.table-wrap>table td *:where(:not(.event-offer-actions-menu__panel, .event-offer-actions-menu__panel *)){
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.table-wrap>table td ul,
.table-wrap>table td ol{display:inline-block;margin-top:0;margin-bottom:0}

/* Zrušení dřívějšího převodu tabulek na mobilní karty. Mobil používá vodorovný posun. */
@media (max-width:980px){
  .itinerary-history-wrap{overflow-x:auto!important;overflow-y:visible!important;border:inherit;border-radius:inherit;background:inherit}
  .itinerary-history-table,
.itinerary-history-table--editable,
.itinerary-history-table--readonly{display:table!important;width:max-content!important;min-width:1060px!important}
  .itinerary-history-table--editable{min-width:1240px!important}
  
  .itinerary-history-table thead{display:table-header-group!important;position:static!important;width:auto!important;height:auto!important;margin:0!important;clip:auto!important;clip-path:none!important;overflow:visible!important}
  .itinerary-history-table tbody{display:table-row-group!important;width:auto!important}
  .itinerary-history-table tbody tr{display:table-row!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  .itinerary-history-table tbody td{display:table-cell!important;width:auto!important;padding:10px 11px!important;border-bottom:1px solid rgba(229,218,203,.7)!important;text-align:inherit!important;white-space:nowrap!important}
  .itinerary-history-table tbody td::before{display:none!important;content:none!important}
  .itinerary-history-stock{display:table-cell!important}
  .itinerary-history-actions .button{width:auto!important}
}

/* Tlačítko návratu a přehledná historie změn eventu. */
.page-header__title-group{display:flex;align-items:center;gap:16px;min-width:0}
.page-back-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.86);box-shadow:0 6px 18px rgba(58,43,29,.08);font-weight:600;white-space:nowrap}
.page-header--actions-only.page-header--with-back{justify-content:space-between}
.event-history-details{padding:0;overflow:hidden}
.event-history-details__summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;cursor:pointer;list-style:none}
.event-history-details__summary::-webkit-details-marker{display:none}
.event-history-details__summary>span:first-child{display:flex;align-items:center;gap:12px;min-width:0}
.event-history-details__summary .eyebrow{margin:0}
.event-history-details__summary strong{font-size:calc(1.1rem + 1px)}
.event-history-details__body{padding:18px 24px 24px;border-top:1px solid var(--line)}
.event-history-details__hide,
.event-history-details[open] .event-history-details__show{display:none}
.event-history-details[open] .event-history-details__hide{display:inline}
.event-history-workspace{display:grid;gap:14px}
.event-history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.event-history-filter{position:relative;display:flex;align-items:center;min-width:min(330px,100%);gap:0}
.event-history-filter__icon{position:absolute;left:13px;z-index:1;width:18px;height:18px;display:grid;place-items:center;color:#1498a1;pointer-events:none}
.event-history-filter__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body:not(.auth-page--login) .event-history-filter select{min-height:42px;padding-left:40px;border-radius:13px;background:rgba(255,255,255,.94)}
.event-history-toolbar__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.event-history-select-all{display:inline-flex;grid-auto-flow:column;align-items:center;gap:7px;min-height:38px;padding:6px 10px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.72);font-size:calc(.72rem + 1px);font-weight:700;white-space:nowrap}
.event-history-select-all input{width:17px;height:17px;margin:0}
.event-history-toolbar__actions .button[disabled]{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}
.event-history-layout{display:grid;grid-template-columns:minmax(280px,34%) minmax(0,1fr);gap:14px;min-width:0}
.event-history-timeline{position:relative;min-width:0;padding:2px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.55)}
.event-history-timeline__rail{position:absolute;top:22px;bottom:22px;left:20px;width:2px;border-radius:999px;background:rgba(20,152,161,.16)}
.event-history-timeline__list{position:relative;display:grid;gap:7px;max-height:560px;padding:10px 8px 10px 32px;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}
.event-history-entry{--history-tone:#1498a1;position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;min-width:0;margin-left:0;border:1px solid transparent;border-radius:14px;background:rgba(255,255,255,.7);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}
.event-history-entry--header{--history-tone:#1498a1}
.event-history-entry--costs{--history-tone:#b0643c}
.event-history-entry--staff{--history-tone:#138c68}
.event-history-entry--todo{--history-tone:#8663c2}
.event-history-entry--notes{--history-tone:#c38924}
.event-history-entry--sales{--history-tone:#2e86c1}
.event-history-entry--itinerary{--history-tone:#8c6d3f}
.event-history-entry--recipes{--history-tone:#60a65a}
.event-history-entry--documents{--history-tone:#4e8f9d}
.event-history-entry--multiple{--history-tone:#7a7189}
.event-history-entry.is-active{border-color:color-mix(in srgb,var(--history-tone) 35%,var(--line));background:color-mix(in srgb,var(--history-tone) 7%,white);box-shadow:0 8px 20px rgba(39,63,69,.07)}
.event-history-entry__dot{position:absolute;top:20px;left:-18px;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:var(--history-tone);box-shadow:0 0 0 1px color-mix(in srgb,var(--history-tone) 38%,transparent)}
.event-history-entry__check{display:grid;place-items:center;width:33px;min-height:100%;padding:10px 4px 10px 8px;cursor:pointer}
.event-history-entry__check input{width:16px;height:16px;margin:0}
.event-history-entry__select{position:relative;display:grid;gap:3px;min-width:0;width:100%;padding:10px 30px 10px 6px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer;font:inherit}
.event-history-entry--read-only .event-history-entry__select{padding-left:12px}
.event-history-entry__meta{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:calc(.65rem + 1px)}
.event-history-entry__meta time{color:var(--history-tone);font-weight:700}
.event-history-entry__meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.event-history-entry__select strong{overflow:hidden;font-size:calc(.75rem + 1px);line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.event-history-entry__summary{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:calc(.67rem + 1px);line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.event-history-entry__chevron{position:absolute;top:50%;right:10px;color:var(--muted);font-size:calc(1.25rem + 1px);line-height:1;transform:translateY(-50%)}
.event-history-entry[hidden]{display:none!important}
.event-history-filter-empty{margin:14px 12px 14px 0;padding:12px;border:1px dashed var(--line);border-radius:13px;text-align:center;font-size:calc(.72rem + 1px)}
.event-history-detail{min-width:0;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.62);overflow:hidden}
.event-history-detail__panel{display:grid;gap:12px;padding:12px}
.event-history-detail__panel[hidden]{display:none!important}
.event-history-detail__header{--history-tone:#1498a1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--history-tone) 18%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--history-tone) 5%,white)}
.event-history-detail__header--header{--history-tone:#1498a1}
.event-history-detail__header--costs{--history-tone:#b0643c}
.event-history-detail__header--staff{--history-tone:#138c68}
.event-history-detail__header--todo{--history-tone:#8663c2}
.event-history-detail__header--notes{--history-tone:#c38924}
.event-history-detail__header--sales{--history-tone:#2e86c1}
.event-history-detail__header--itinerary{--history-tone:#8c6d3f}
.event-history-detail__header--recipes{--history-tone:#60a65a}
.event-history-detail__header--documents{--history-tone:#4e8f9d}
.event-history-detail__header--multiple{--history-tone:#7a7189}
.event-history-detail__title{display:flex;align-items:center;gap:10px;min-width:0}
.event-history-detail__icon{flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border-radius:10px;color:var(--history-tone);background:color-mix(in srgb,var(--history-tone) 10%,white)}
.event-history-detail__icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.event-history-detail__title>span:last-child{display:grid;gap:2px;min-width:0}
.event-history-detail__title strong{font-size:calc(.9rem + 1px)}
.event-history-detail__title small{display:block;overflow:hidden;max-width:720px;color:var(--muted);font-size:calc(.67rem + 1px);text-overflow:ellipsis;white-space:nowrap}
.event-history-detail__author{display:grid;gap:2px;flex:0 0 auto;text-align:right;color:var(--muted);font-size:calc(.65rem + 1px)}
.event-history-detail__author span{font-weight:700;color:var(--ink)}
.event-history-detail__section{padding:12px 13px;border:1px solid rgba(122,98,70,.1);border-radius:14px;background:rgba(255,255,255,.74)}
.event-history-detail__section h4{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:calc(.82rem + 1px)}
.event-history-detail__section-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:#1498a1;background:rgba(20,152,161,.09)}
.event-history-detail__section-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.event-history-values{display:grid;gap:5px}
.event-history-value-row{display:grid;grid-template-columns:minmax(150px,32%) minmax(0,1fr);gap:10px;align-items:start;padding:6px 8px;border-radius:9px;background:rgba(238,244,246,.62)}
.event-history-value-row strong{font-size:calc(.69rem + 1px);line-height:1.4}
.event-history-value-row span{min-width:0;overflow-wrap:anywhere;color:#364850;font-size:calc(.69rem + 1px);line-height:1.45}
.event-history-comparisons{display:grid;gap:8px}
.event-history-comparison{display:grid;gap:6px}
.event-history-comparison__label{font-size:calc(.69rem + 1px)}
.event-history-comparison__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.event-history-comparison__before,.event-history-comparison__after{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid;border-radius:11px}
.event-history-comparison__before{border-color:#efd1ce;background:#fff5f4}
.event-history-comparison__after{border-color:#c8e7d3;background:#f0faf3}
.event-history-comparison__before small{color:#a34b45}
.event-history-comparison__after small{color:#287849}
.event-history-comparison__before small,.event-history-comparison__after small{font-size:calc(.62rem + 1px);font-weight:700}
.event-history-comparison__before span,.event-history-comparison__after span{min-width:0;overflow-wrap:anywhere;color:var(--ink);font-size:calc(.69rem + 1px);line-height:1.45;white-space:pre-wrap}
.event-history-empty{display:grid;gap:4px;padding:22px 4px;text-align:center}
.event-history-empty p{margin:0}

@media (max-width:980px){
  .event-history-toolbar{align-items:stretch;flex-direction:column}
  .event-history-filter{width:100%;min-width:0}
  .event-history-toolbar__actions{justify-content:flex-start}
  .event-history-layout{grid-template-columns:1fr}
  .event-history-timeline__list{max-height:340px}
}
@media (max-width:640px){
  .page-header__title-group{align-items:flex-start;flex-direction:column}
  .event-history-details__summary{align-items:stretch;flex-direction:column;padding:16px}
  .event-history-details__summary>span:first-child{align-items:flex-start;flex-direction:column;gap:4px}
  .event-history-details__toggle{width:100%}
  .event-history-details__body{padding:12px}
  .event-history-toolbar__actions{display:grid;grid-template-columns:1fr 1fr}
  .event-history-select-all{grid-column:1 / -1;justify-content:center}
  .event-history-toolbar__actions .button{width:100%;padding-inline:8px}
  .event-history-timeline{padding:2px}
  .event-history-timeline__rail{left:18px}
  .event-history-timeline__list{max-height:none;padding:10px 4px 10px 30px}
  .event-history-entry{margin-left:0}
  .event-history-entry__dot{left:-18px}
  .event-history-entry__meta{align-items:flex-start;flex-direction:column;gap:1px}
  .event-history-detail__panel{padding:8px}
  .event-history-detail__header{align-items:flex-start;flex-direction:column;gap:8px}
  .event-history-detail__author{text-align:left}
  .event-history-detail__title small{white-space:normal}
  .event-history-value-row{grid-template-columns:1fr;gap:2px}
  .event-history-comparison__grid{grid-template-columns:1fr}
}

/* Přehlednější ovládání práv rolí a správné mezery mezi názvem a štítkem. */

/* dokončení ovládání šablon a zarovnání pomocných akcí. */
.template-apply-manager{
  display:grid;
  gap:6px;
  min-width:240px;
  padding:8px 14px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(255,255,255,.86);
}
.template-apply-manager > span{
  color:var(--ink);
  font-size:calc(.88rem + 1px);
  font-weight:600;
}
.template-apply-manager select{
  min-width:205px;
  padding:10px 12px;
  border-radius:14px;
}
.template-apply-manager .field-help{
  max-width:36ch;
  color:var(--muted);
  font-size:calc(.76rem + 1px);
  line-height:1.35;
  white-space:normal!important;
}

@media (max-width:720px){
  .template-apply-existing,
  .template-apply-date,
  .template-apply-manager,
  .template-apply-date input,
  .template-apply-manager select{
    width:100%;
    min-width:0;
  }
  
  
}

/* Více hodnot uvnitř jedné buňky zůstává také na jednom vodorovném řádku. */
.table-wrap>table td ul,
.table-wrap>table td ol{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.table-wrap>table td ul>li+li::before,
.table-wrap>table td ol>li+li::before{
  content:"•";
  margin-right:10px;
  color:var(--muted);
}

/* Text a vysvětlení uvnitř karet checkboxů se neslévají. */
.checkbox-card > span{
  display:grid;
  gap:4px;
  min-width:0;
}
.checkbox-card > span > small{
  color:var(--muted);
  line-height:1.4;
}

/* opravy dashboardu, detailu eventu a stále dostupného vodorovného posunu. */

.event-header-brand__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
}
.event-create-submit-top{
  white-space:nowrap;
}
.page-back-button--event{
  min-height:36px;
  padding:8px 14px;
  border-color:var(--accent-dark);
  background:linear-gradient(135deg,var(--accent),var(--accent-dark));
  color:#fff;
  box-shadow:0 8px 18px rgba(124,85,50,.24);
}
.page-back-button--event:hover{
  color:#fff;
  transform:translateY(-1px);
}
@media (max-width:1100px){
  .event-header-brand__actions{
    align-self:flex-end;
  }
}
@media (max-width:520px){
  .event-header-brand__actions{
    width:100%;
    justify-content:space-between;
    flex-wrap:wrap;
  }
  .event-create-submit-top,
  .page-back-button--event{flex:1 1 auto}
}

button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.personalform-staffing-panel__head{align-items:flex-start}
.personalform-staffing-panel__head p{max-width:78ch;margin:.65rem 0 0}
.personalform-staffing-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 18px}
.personalform-staffing-stats .stat-card{box-shadow:none}
.personalform-staffing-empty{padding:18px;border:1px dashed var(--line);border-radius:16px;background:var(--paper-soft)}
.personalform-staffing-table td,.personalform-staffing-table th{vertical-align:middle}
.personalform-staffing-table-wrap+.small-note{margin:14px 0 0}
@media (max-width:1100px){.personalform-staffing-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.personalform-staffing-stats{grid-template-columns:1fr}.personalform-staffing-panel__head{display:grid}}
.personalform-worker-contact{display:grid;gap:5px;min-width:220px}
.personalform-worker-contact__links{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:calc(.76rem + 1px)}
.personalform-worker-contact__links a{color:var(--accent-dark);text-decoration:none;overflow-wrap:anywhere}
.personalform-worker-contact__links a:hover{text-decoration:underline}
.personalform-worker-contact__empty{color:var(--muted);font-size:calc(.72rem + 1px)}

/* Eventform PWA: instalace, bezpečné aktualizace a mobilní aplikační navigace. */
.nav a.active{background:rgba(155,111,69,.13);color:var(--ink);font-weight:700}
.pwa-header-install{white-space:nowrap}
.mobile-menu-toggle,.mobile-bottom-nav,.sidebar-backdrop{display:none}
body.modal-open,body.pwa-update-required,body.sidebar-open{overflow:hidden}

.pwa-required-update,.pwa-ios-install-guide{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:rgba(32,24,18,.76);backdrop-filter:blur(9px)}
.pwa-required-update[hidden],.pwa-ios-install-guide[hidden]{display:none}
.pwa-required-update__card,.pwa-ios-install-guide__card{width:min(560px,100%);display:grid;gap:15px;padding:28px;border:1px solid rgba(155,111,69,.34);border-radius:25px;background:#fff;box-shadow:0 30px 90px rgba(30,20,12,.38)}
.pwa-required-update__card h2,.pwa-ios-install-guide__card h2{margin:0;font-size:calc(clamp(1.8rem,calc(4vw * var(--font-scale)),2.45rem) + 1px)}
.pwa-required-update__card p,.pwa-ios-install-guide__card p{margin:0;color:var(--muted)}
.pwa-required-update__version{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--paper-soft);color:var(--muted)}
.pwa-required-update__card .button,.pwa-ios-install-guide__card>.button{width:100%;min-height:48px}
.pwa-required-update__card>small{color:var(--muted);text-align:center}
.pwa-ios-install-guide__card{position:relative;max-height:calc(100vh - 32px);overflow:auto}
.pwa-ios-install-guide__close{position:absolute;top:12px;right:12px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:calc(1.5rem + 1px);line-height:1;cursor:pointer}
.pwa-ios-install-guide__card ol{display:grid;gap:11px;margin:0;padding:0;list-style:none;counter-reset:pwa-ios-step}
.pwa-ios-install-guide__card li{position:relative;display:grid;gap:4px;min-height:58px;padding:12px 12px 12px 56px;border:1px solid var(--line);border-radius:15px;background:var(--paper-soft);counter-increment:pwa-ios-step}
.pwa-ios-install-guide__card li::before{content:counter(pwa-ios-step);position:absolute;top:13px;left:13px;width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-weight:700}
.pwa-ios-install-guide__card li span{color:var(--muted);font-size:calc(.86rem + 1px)}

.pwa-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:28px;align-items:center;margin-bottom:20px;padding:32px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(249,239,227,.95))}
.pwa-hero__copy{display:grid;gap:15px}
.pwa-hero__copy h2{font-size:calc(clamp(2rem,calc(4vw * var(--font-scale)),3.3rem) + 1px)}
.pwa-hero__copy p{max-width:72ch;margin:0;color:var(--muted)}
.pwa-action-row{display:flex;flex-wrap:wrap;gap:10px}
.pwa-install-state{min-height:1.5em;font-size:calc(.9rem + 1px)}
.pwa-device-preview{display:grid;place-items:center}
.pwa-device-preview__window{position:relative;width:min(100%,330px);min-height:260px;display:grid;place-items:center;align-content:center;gap:10px;padding:38px 24px 28px;border:8px solid #2f251d;border-radius:34px;color:#fff;background:linear-gradient(145deg,#443429,#251d17);box-shadow:0 28px 58px rgba(58,40,25,.25);text-align:center}
.pwa-device-preview__controls{position:absolute;top:16px;left:20px;display:flex;gap:6px}
.pwa-device-preview__controls i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.38)}
.pwa-device-preview__logo{width:112px;height:112px;overflow:hidden;border-radius:26px;box-shadow:0 16px 35px rgba(0,0,0,.28)}
.pwa-device-preview__logo img{display:block;width:100%;height:100%;object-fit:cover}
.pwa-device-preview__window strong{font-size:calc(1.25rem + 1px)}
.pwa-device-preview__window small{color:#d9c8b8}
.pwa-feature-grid{align-items:start}
.pwa-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pwa-quick-card{min-height:118px;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--paper-soft);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.pwa-quick-card:hover{transform:translateY(-2px);border-color:rgba(155,111,69,.45);box-shadow:0 12px 26px rgba(70,47,29,.09)}
.pwa-quick-card strong{color:var(--accent-dark)}
.pwa-quick-card span{color:var(--muted);font-size:calc(.88rem + 1px)}
.pwa-benefit-list{display:grid;gap:11px;margin:0;padding:0;list-style:none}
.pwa-benefit-list li{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:var(--paper-soft)}
.pwa-benefit-list span{color:var(--muted);font-size:calc(.88rem + 1px)}
.pwa-install-panel{margin-bottom:20px}
.pwa-instruction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pwa-instruction-grid article{position:relative;padding:22px;border:1px solid var(--line);border-radius:19px;background:var(--paper-soft)}
.pwa-instruction-grid h3{margin:0 0 13px 48px;font-size:calc(1.35rem + 1px)}
.pwa-instruction-grid ol{margin:0;padding-left:22px;color:var(--muted);line-height:1.72}
.pwa-step-number{position:absolute;top:17px;left:18px;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--accent);color:#fff;font-weight:800}
.pwa-offline-panel{border-style:dashed}

.pwa-offline-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top right,rgba(155,111,69,.15),transparent 36%),linear-gradient(180deg,#f8f4ee,#eee4d7)}
.pwa-offline-main{width:min(580px,100%)}
.pwa-offline-card{display:grid;justify-items:center;gap:14px;text-align:center}
.pwa-offline-card h1{font-size:calc(clamp(2rem,calc(6vw * var(--font-scale)),3.2rem) + 1px)}
.pwa-offline-card p{margin:0;color:var(--muted)}
.pwa-offline-icon{width:108px;height:108px;border-radius:26px;box-shadow:0 18px 42px rgba(58,40,25,.22)}

@media (display-mode:standalone){
  body{overscroll-behavior-y:none}
  .pwa-header-install{display:none!important}
}

@media (max-width:1100px){
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .content{min-width:0;padding:20px 16px 28px!important}
  .page-header{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:start!important;gap:12px!important}
  .mobile-menu-toggle{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);box-shadow:0 8px 18px rgba(70,47,29,.08);font-size:calc(1.25rem + 1px);cursor:pointer}
  .page-header__title-group{min-width:0}
  .page-header__title-group h1{font-size:calc(clamp(1.9rem,calc(8vw * var(--font-scale)),3rem) + 1px)}
  .header-actions{grid-column:1/-1;width:100%;justify-content:flex-end}
  .mobile-bottom-nav{position:fixed;z-index:9990;right:0;bottom:0;left:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(72px,1fr);min-height:70px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));overflow-x:auto;border-top:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(18px);box-shadow:0 -10px 28px rgba(48,32,20,.11)}
  .mobile-bottom-nav a{min-width:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 4px;border-radius:12px;color:var(--muted);font-weight:700}
  .mobile-bottom-nav a>span{font-size:calc(1.15rem + 1px);line-height:1}
  .mobile-bottom-nav a>small{font-size:calc(.68rem + 1px)}
  .mobile-bottom-nav a.active{color:var(--accent-dark);background:rgba(155,111,69,.12)}
}

@media (max-width:720px){
  .pwa-required-update__card,.pwa-ios-install-guide__card{padding:23px 18px;border-radius:20px}
  .pwa-hero{grid-template-columns:1fr;padding:23px 18px}
  .pwa-device-preview{display:none}
  .pwa-action-row{align-items:stretch;flex-direction:column}
  .pwa-action-row .button{width:100%}
  .pwa-quick-grid,.pwa-instruction-grid{grid-template-columns:1fr}
  .pwa-quick-card{min-height:96px}
  .pwa-header-install{width:100%}
  .header-actions{align-items:stretch}
}

@media (prefers-reduced-motion:reduce){
  .pwa-quick-card{transition:none}
}

/* 2026-08 Eventform desktop navigation: expandable sidebar rail. */
body:not(.auth-page--login) .shell{
  --sidebar-width:278px;
  grid-template-columns:var(--sidebar-width) minmax(0,1fr)!important;
  align-items:start;
  transition:grid-template-columns .22s ease;
}
body:not(.auth-page--login) .content{min-width:0}
body:not(.auth-page--login) .sidebar{
  
  top:0;
  width:var(--sidebar-width);
  height:100vh;
  max-height:100vh;
  min-height:0;
  align-self:start;
  display:flex;
  flex-direction:column;
  
  padding:24px 18px 18px;
  gap:0;
  color:var(--ink);
  
  
  
  transition:width .22s ease,padding .22s ease,box-shadow .22s ease;
}
body:not(.auth-page--login) .sidebar-top{
  position:relative;
  flex:0 0 auto;
  display:block;
  min-width:0;
  padding:0 42px 0 2px;
}
body:not(.auth-page--login) .sidebar .brand{
  min-width:0;
  align-items:center;
  gap:12px;
  color:var(--ink);
}
body:not(.auth-page--login) .sidebar .brand-mark{
  width:44px;
  height:44px;
  flex:0 0 44px;
  border-radius:14px;
  border:1px solid rgba(122,98,70,.14);
  background:linear-gradient(145deg,var(--accent),#d8b089);
  box-shadow:0 9px 24px rgba(92,62,35,.14);
}
body:not(.auth-page--login) .sidebar .brand-mark--image{padding:6px;background:#fff}
body:not(.auth-page--login) .sidebar .brand-copy{min-width:0;overflow:visible}
body:not(.auth-page--login) .sidebar .brand strong{
  display:block;
  color:var(--ink);
  font-size:calc(calc(15.5px * var(--font-scale)) + 1px);
  line-height:1.2;
  letter-spacing:.005em;
  white-space:normal;
}
body:not(.auth-page--login) .sidebar .brand .eyebrow{
  margin:0 0 3px;
  color:var(--accent);
  font-size:calc(calc(9.5px * var(--font-scale)) + 1px);
  letter-spacing:.1em;
  white-space:nowrap;
}
.sidebar-collapse-toggle{
  position:absolute;
  top:5px;
  right:2px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid var(--line);
  border-radius:11px;
  color:var(--accent-dark);
  background:rgba(255,255,255,.82);
  box-shadow:0 6px 16px rgba(63,45,29,.06);
  z-index:2;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.sidebar-collapse-toggle:hover{border-color:rgba(155,111,69,.42);background:#fff}
.sidebar-collapse-toggle:focus-visible{outline:2px solid rgba(155,111,69,.36);outline-offset:2px}
.sidebar-collapse-toggle svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:transform .22s ease;
}
body:not(.auth-page--login) .sidebar .nav{
  display:flex;
  flex:1 1 auto;
  min-height:0;
  flex-direction:column;
  gap:7px;
  margin:28px 0 0;
  padding:0 0 12px;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable both-edges;
  -webkit-overflow-scrolling:touch;
}
body:not(.auth-page--login) .sidebar .nav::-webkit-scrollbar{width:7px}
body:not(.auth-page--login) .sidebar .nav::-webkit-scrollbar-track{background:transparent}
body:not(.auth-page--login) .sidebar .nav::-webkit-scrollbar-thumb{border-radius:999px;}

body:not(.auth-page--login) .sidebar .nav a{box-shadow:none}
body:not(.auth-page--login) .sidebar .nav a:hover,
body:not(.auth-page--login) .sidebar .nav a.active{color:var(--ink);background:rgba(155,111,69,.1)}
body:not(.auth-page--login) .sidebar .nav a.active{background:rgba(155,111,69,.14);box-shadow:inset 3px 0 0 var(--accent)}
body:not(.auth-page--login) .sidebar .nav-primary-link{
  min-height:43px;
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  padding:10px 14px;
  border-radius:12px;
  font-size:calc(calc(14px * var(--font-scale)) + 1px);
  font-weight:400;
}
body:not(.auth-page--login) .sidebar .nav-primary-link>svg,
body:not(.auth-page--login) .sidebar .nav-group-summary-label>svg{
  width:18px;
  height:18px;
  flex:0 0 18px;
  fill:none;
  stroke:#9a7b5e;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body:not(.auth-page--login) .sidebar .nav-primary-link:hover>svg,
body:not(.auth-page--login) .sidebar .nav-primary-link.active>svg,
body:not(.auth-page--login) .sidebar .nav-group[open]>summary .nav-group-summary-label>svg{stroke:var(--accent-dark)}
body:not(.auth-page--login) .sidebar .nav-group{
  flex:0 0 auto;
  overflow:hidden;
  border:1px solid rgba(122,98,70,.14);
  border-radius:13px;
  
}

body:not(.auth-page--login) .sidebar .nav-group summary{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 13px;
  
  font-size:calc(calc(12px * var(--font-scale)) + 1px);
  font-weight:400;
  letter-spacing:.035em;
  list-style:none;
  cursor:pointer;
  user-select:none;
  transition:color .18s ease,background .18s ease;
}
body:not(.auth-page--login) .sidebar .nav-group summary::-webkit-details-marker{display:none}
body:not(.auth-page--login) .sidebar .nav-group summary::marker{content:""}

body:not(.auth-page--login) .sidebar .nav-group-summary-label{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
}
body:not(.auth-page--login) .sidebar .nav-group-summary-label>span,
body:not(.auth-page--login) .sidebar .nav-primary-link>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body:not(.auth-page--login) .sidebar .nav-group-chevron{
  position:relative;
  width:18px;
  height:18px;
  flex:0 0 auto;
  border-radius:6px;
  
  
}
body:not(.auth-page--login) .sidebar .nav-group-chevron::before,
body:not(.auth-page--login) .sidebar .nav-group-chevron::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:8px;
  height:1.5px;
  border-radius:999px;
  background:currentColor;
  transition:transform .18s ease;
}
body:not(.auth-page--login) .sidebar .nav-group-chevron::before{transform:translate(-72%,-50%) rotate(42deg)}
body:not(.auth-page--login) .sidebar .nav-group-chevron::after{transform:translate(-28%,-50%) rotate(-42deg)}
body:not(.auth-page--login) .sidebar .nav-group[open] .nav-group-chevron::before{transform:translate(-72%,-50%) rotate(-42deg)}
body:not(.auth-page--login) .sidebar .nav-group[open] .nav-group-chevron::after{transform:translate(-28%,-50%) rotate(42deg)}
body:not(.auth-page--login) .sidebar .nav-group-items{display:grid;gap:2px;padding:3px 5px 6px}
body:not(.auth-page--login) .sidebar .nav-group-items a{
  min-height:39px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px 8px 12px;
  border-radius:9px;
  font-size:calc(calc(12px * var(--font-scale)) + 1px);
  font-weight:400;
}
body:not(.auth-page--login) .sidebar .nav-group-items a::before{content:none}
body:not(.auth-page--login) .sidebar .nav-group-items a>svg{
  width:18px;
  height:18px;
  flex:0 0 auto;
  fill:none;
  stroke:#9a7b5e;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:stroke .18s ease,transform .18s ease;
}
body:not(.auth-page--login) .sidebar .nav-group-items a:hover>svg,
body:not(.auth-page--login) .sidebar .nav-group-items a.active>svg{stroke:var(--accent-dark);transform:translateY(-1px)}
body:not(.auth-page--login) .sidebar .nav-group-items a.active>svg{filter:drop-shadow(0 2px 4px rgba(124,85,50,.18))}

@media (min-width:1101px){
  html.sidebar-pref-collapsed body:not(.auth-page--login) .shell,
  body:not(.auth-page--login).sidebar-collapsed .shell{--sidebar-width:76px}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar,
  body:not(.auth-page--login).sidebar-collapsed .sidebar{padding-inline:10px;box-shadow:8px 0 28px rgba(45,33,20,.045)}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar-top,
  body:not(.auth-page--login).sidebar-collapsed .sidebar-top{display:grid;grid-template-columns:1fr;justify-items:center;gap:10px;padding:0}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar-collapse-toggle,
  body:not(.auth-page--login).sidebar-collapsed .sidebar-collapse-toggle{position:static}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .brand,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .brand{justify-content:center;gap:0}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .brand-copy,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .brand-copy{display:none}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar-collapse-toggle svg,
  body:not(.auth-page--login).sidebar-collapsed .sidebar-collapse-toggle svg{transform:rotate(180deg)}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav{width:100%;margin:20px 0 0;padding:0 0 10px;overflow-x:visible;scrollbar-gutter:auto}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav::-webkit-scrollbar,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav::-webkit-scrollbar{width:0}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-primary-link,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-primary-link{
    width:44px;
    min-height:44px;
    justify-content:center;
    align-self:center;
    padding:0;
    border-radius:12px;
  }
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-primary-link>span,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-primary-link>span{display:none}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-primary-link>svg,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-primary-link>svg{width:20px;height:20px;flex-basis:20px}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group{width:44px;align-self:center;overflow:visible;border:0;background:transparent}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group[open],
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group[open]{border-color:transparent;background:transparent}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group>summary,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group>summary{
    width:44px;
    min-height:44px;
    justify-content:center;
    padding:0;
    border-radius:12px;
    background:transparent;
  }
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group>summary:hover,
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group[open]>summary,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group>summary:hover,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group[open]>summary{background:rgba(155,111,69,.1)}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group-summary-label,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group-summary-label{gap:0}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group-summary-label>span,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group-summary-label>span,
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-help-summary-label>span,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-help-summary-label>span,
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group-chevron,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group-chevron{display:none}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group-summary-label>svg,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group-summary-label>svg,
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-help-summary-label>svg,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-help-summary-label>svg{width:20px;height:20px;flex-basis:20px}
  html.sidebar-pref-collapsed body:not(.auth-page--login) .sidebar .nav-group-items,
  body:not(.auth-page--login).sidebar-collapsed .sidebar .nav-group-items{display:none!important}
}

@media (max-width:1100px){
  html.sidebar-scroll-lock{height:100%;overflow:hidden!important;overscroll-behavior:none}
  body.sidebar-open{
    position:fixed!important;
    top:var(--sidebar-scroll-offset,0px)!important;
    right:0;
    left:0;
    width:100%;
    height:100%;
    overflow:hidden!important;
    overscroll-behavior:none;
  }
  body:not(.auth-page--login) .shell{display:block!important;min-height:100vh}
  .sidebar-backdrop{position:fixed;z-index:10000;inset:0;display:block;border:0;background:rgba(43,31,22,.45);backdrop-filter:blur(3px);cursor:pointer;touch-action:none;overscroll-behavior:none}
  .sidebar-backdrop[hidden]{display:none}
  body:not(.auth-page--login) .sidebar{
    position:fixed!important;
    z-index:10010;
    top:0;
    bottom:0;
    left:0;
    width:min(86vw,330px)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    overflow:hidden!important;
    padding:max(22px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom))!important;
    border-right:1px solid var(--line)!important;
    border-bottom:0!important;
    
    
    transform:translateX(-105%);
    transition:transform .22s ease;
  }
  body.sidebar-open .sidebar{transform:translateX(0);overscroll-behavior:contain;touch-action:pan-y}
  body.sidebar-open .sidebar .nav{overscroll-behavior:contain;touch-action:pan-y}
  body:not(.auth-page--login) .sidebar-top{display:block;padding:0 2px}
  .sidebar-collapse-toggle{display:none}
  body:not(.auth-page--login) .sidebar .nav{margin-top:24px}
}

@media (prefers-reduced-motion:reduce){
  body:not(.auth-page--login) .shell,
  body:not(.auth-page--login) .sidebar,
  .sidebar-collapse-toggle svg,
  body:not(.auth-page--login) .sidebar .nav-group summary,
  body:not(.auth-page--login) .sidebar .nav-group-chevron::before,
  body:not(.auth-page--login) .sidebar .nav-group-chevron::after,
  body:not(.auth-page--login) .sidebar .nav-group-items a>svg{transition:none!important}
}

/* vNext - Eventform Nápověda: rozbalovací rejstřík v menu + detailní čtečka */
body:not(.auth-page--login) .sidebar .nav-help-group > summary{
  min-height:42px;
}
body:not(.auth-page--login) .sidebar .nav-help-summary-label{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
}
body:not(.auth-page--login) .sidebar .nav-help-summary-label > svg{
  width:17px;
  height:17px;
  flex:0 0 17px;
  fill:none;
  stroke:#9a7b5e;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body:not(.auth-page--login) .sidebar .nav-help-group[open] > summary .nav-help-summary-label > svg,
body:not(.auth-page--login) .sidebar .nav-help-group > summary:hover .nav-help-summary-label > svg{
  stroke:var(--accent-dark);
}
body:not(.auth-page--login) .sidebar .nav-help-items{
  gap:2px;
  padding-bottom:7px;
}
body:not(.auth-page--login) .sidebar .nav-help-overview{
  margin-bottom:2px;
}
body:not(.auth-page--login) .sidebar .nav-help-index-group{
  overflow:hidden;
  border-top:1px solid rgba(122,98,70,.11);
}
body:not(.auth-page--login) .sidebar .nav-help-index-group:first-of-type{
  border-top:0;
}
body:not(.auth-page--login) .sidebar .nav-help-index-group > summary{
  min-height:34px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 14px;
  align-items:center;
  gap:7px;
  padding:7px 8px 7px 10px;
  border-radius:8px;
  color:#75695c;
  background:transparent;
  font-size:calc(.68rem + 1px);
  font-weight:800;
  letter-spacing:0;
  line-height:1.25;
  cursor:pointer;
}
body:not(.auth-page--login) .sidebar .nav-help-index-group > summary:hover,
body:not(.auth-page--login) .sidebar .nav-help-index-group[open] > summary{
  color:var(--ink);
  background:rgba(155,111,69,.07);
}
body:not(.auth-page--login) .sidebar .nav-help-index-group > summary > span:first-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body:not(.auth-page--login) .sidebar .nav-help-index-group > summary > small{
  min-width:20px;
  padding:2px 5px;
  border-radius:999px;
  color:#8b735c;
  background:rgba(155,111,69,.09);
  font-size:calc(.58rem + 1px);
  font-weight:800;
  text-align:center;
}
body:not(.auth-page--login) .sidebar .nav-help-index-chevron{
  position:relative;
  width:12px;
  height:12px;
  color:#9a7b5e;
}
body:not(.auth-page--login) .sidebar .nav-help-index-chevron::before,
body:not(.auth-page--login) .sidebar .nav-help-index-chevron::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:6px;
  height:1.25px;
  border-radius:999px;
  background:currentColor;
  transition:transform .18s ease;
}
body:not(.auth-page--login) .sidebar .nav-help-index-chevron::before{transform:translate(-70%,-50%) rotate(42deg)}
body:not(.auth-page--login) .sidebar .nav-help-index-chevron::after{transform:translate(-30%,-50%) rotate(-42deg)}
body:not(.auth-page--login) .sidebar .nav-help-index-group[open] .nav-help-index-chevron::before{transform:translate(-70%,-50%) rotate(-42deg)}
body:not(.auth-page--login) .sidebar .nav-help-index-group[open] .nav-help-index-chevron::after{transform:translate(-30%,-50%) rotate(42deg)}
body:not(.auth-page--login) .sidebar .nav-help-index-chapters{
  display:grid;
  gap:1px;
  padding:2px 4px 6px 11px;
}
body:not(.auth-page--login) .sidebar .nav-group-items .nav-help-index-chapters .nav-help-chapter{
  min-height:0;
  display:block;
  padding:6px 8px;
  border-radius:7px;
  color:#786d61;
  font-size:calc(.66rem + 1px);
  font-weight:650;
  line-height:1.34;
}
body:not(.auth-page--login) .sidebar .nav-group-items .nav-help-index-chapters .nav-help-chapter::before{content:none}
body:not(.auth-page--login) .sidebar .nav-group-items .nav-help-index-chapters .nav-help-chapter:hover{
  color:var(--ink);
  background:rgba(155,111,69,.07);
}
@media (max-width:700px){
  body:not(.auth-page--login) .sidebar .nav-help-index-group > summary{min-height:38px}
  body:not(.auth-page--login) .sidebar .nav-group-items .nav-help-index-chapters .nav-help-chapter{padding-top:7px;padding-bottom:7px}
}

/* Settings navigation subsections */
body:not(.auth-page--login) .sidebar .nav-settings-subgroup{
  margin:0;
  border:0;
  border-radius:10px;
  background:transparent;
  overflow:hidden;
}
body:not(.auth-page--login) .sidebar .nav-settings-subgroup>summary{
  min-height:39px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px 8px 12px;
  border-radius:9px;
  color:var(--muted);
  font-size:calc(calc(12px * var(--font-scale)) + 1px);
  font-weight:400;
  letter-spacing:0;
}
body:not(.auth-page--login) .sidebar .nav-settings-subgroup>summary:hover,
body:not(.auth-page--login) .sidebar .nav-settings-subgroup[open]>summary{
  color:var(--ink);
  background:rgba(155,111,69,.08);
}
body:not(.auth-page--login) .sidebar .nav-settings-subgroup__label{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}
body:not(.auth-page--login) .sidebar .nav-settings-subgroup__label>svg{
  width:18px;
  height:18px;
  flex:0 0 auto;
  fill:none;
  stroke:#9a7b5e;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body:not(.auth-page--login) .sidebar .nav-settings-subgroup__chevron{
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .18s ease;
}
body:not(.auth-page--login) .sidebar .nav-settings-subgroup[open] .nav-settings-subgroup__chevron{
  transform:rotate(225deg) translate(-1px,-1px);
}
body:not(.auth-page--login) .sidebar .nav-settings-subitems{
  display:grid;
  gap:1px;
  margin:1px 0 4px 28px;
  padding:3px 0 3px 9px;
  border-left:1px solid rgba(155,111,69,.24);
}
body:not(.auth-page--login) .sidebar .nav-group-items .nav-settings-subitems a{
  min-height:30px;
  padding:5px 9px;
  border-radius:7px;
  font-size:calc(calc(11px * var(--font-scale)) + 1px);
  font-weight:400;
  line-height:1.25;
}
body:not(.auth-page--login) .sidebar .nav-group-items .nav-settings-subitems a.active{
  font-weight:700;
  box-shadow:inset 2px 0 0 var(--accent);
}

/* Servis a příprava po dnech + tým eventu. */
.event-schedule-legacy-fields{
  display:none;
}
.event-service-days{
  container-type:inline-size;
  container-name:event-service-days;
  display:grid;
  gap:10px;
  max-width:100%;
  min-width:0;
  padding:12px;
  overflow:visible;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.5);
}
.event-service-days__head,
.event-team-multi__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.event-service-days__head{
  align-items:center;
}
.event-service-days__head > div:first-child{
  min-width:0;
}
.event-service-days__actions{
  display:flex;
  flex:0 0 auto;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:nowrap;
}
.event-service-days__tools{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
}
.event-service-day-color-controls{
  display:flex;
  align-items:center;
  gap:5px;
  min-width:0;
  flex-wrap:nowrap;
}
.event-service-day-color-control{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:30px;
  padding:4px 7px 4px 9px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--paper);
  color:var(--muted);
  font-size:calc(.62rem + 1px);
  font-weight:700;
  line-height:1;
  white-space:nowrap;
}
.event-service-day-color-control input[type="color"]{
  width:24px;
  min-width:24px;
  height:22px;
  min-height:22px;
  padding:0;
  border:0;
  border-radius:5px;
  background:transparent;
  cursor:pointer;
}
.event-service-day-color-status{
  min-width:0;
  color:var(--muted);
  font-size:calc(.58rem + 1px);
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
}
.event-service-day-color-status.is-success{color:var(--success)}
.event-service-day-color-status.is-error{color:var(--danger)}
.event-service-day-add{
  min-height:30px;
  padding:5px 10px;
  font-size:calc(.62rem + 1px);
  font-weight:700;
  line-height:1.05;
  white-space:nowrap;
}
.event-service-days__rows,
.event-team-multi__rows{
  display:grid;
  gap:8px;
}
.event-service-day-row{
  display:grid;
  gap:7px;
  align-items:end;
  min-width:0;
  padding:8px 10px;
  border:1px solid rgba(122,98,70,.16);
  border-radius:12px;
  background:#fff;
}
.event-service-day-row--preparation{
  grid-template-columns:minmax(140px,1.15fr) minmax(125px,.82fr) minmax(125px,.82fr) minmax(30px,1.35fr) minmax(175px,.95fr) 34px;
}
.event-service-day-row--event,
.event-service-day-row:not([data-service-day-kind]){
  grid-template-columns:minmax(140px,1.05fr) repeat(4,minmax(112px,.86fr)) minmax(160px,.92fr) 34px;
}
.event-service-day-row--cleanup{
  grid-template-columns:minmax(140px,1.15fr) minmax(140px,.9fr) minmax(30px,1.2fr) minmax(140px,.9fr) minmax(175px,.95fr) 34px;
}
.event-service-day-row > label{
  min-width:0;
}
.event-service-day-row > label > input:not([type="hidden"]){
  width:100%;
  min-width:0;
}
.event-service-day-row > label > span small{
  color:var(--muted);
  font-size:calc(.62rem + 1px);
  font-weight:500;
}
.event-service-day-row--preparation > label:nth-of-type(1){grid-column:1}
.event-service-day-row--preparation > label:nth-of-type(2){grid-column:2}
.event-service-day-row--preparation > label:nth-of-type(3){grid-column:3}
.event-service-day-row--preparation .event-service-day-kind{grid-column:5}
.event-service-day-row--preparation .event-service-day-remove{grid-column:6}
.event-service-day-row--event .event-service-day-kind{grid-column:6}
.event-service-day-row--event .event-service-day-remove{grid-column:7}
.event-service-day-row--cleanup > label:nth-of-type(1){grid-column:1}
.event-service-day-row--cleanup > label:nth-of-type(2){grid-column:2}
.event-service-day-row--cleanup > label:nth-of-type(3){grid-column:4}
.event-service-day-row--cleanup .event-service-day-kind{grid-column:5}
.event-service-day-row--cleanup .event-service-day-remove{grid-column:6}
.event-service-day-kind,
.event-service-day-row:not([data-service-day-kind])::after{
  min-height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  align-self:end;
  min-width:0;
  width:100%;
  padding:4px 6px;
  border:1px solid currentColor;
  border-radius:2px;
  font-size:calc(.54rem + 1px);
  font-weight:800;
  letter-spacing:.02em;
  line-height:1.05;
  text-align:center;
  white-space:nowrap;
}
.event-service-day-row:not([data-service-day-kind])::after{
  content:'AKCE';
  grid-column:6;
}
.event-service-day-row:not([data-service-day-kind]) .event-service-day-end-only{
  display:none!important;
}
.event-service-day-row:not([data-service-day-kind]) .event-service-day-remove{
  grid-column:7;
}
.event-service-day-remove{
  align-self:center;
  justify-self:center;
  width:30px;
  min-width:30px;
  height:30px;
  min-height:30px;
  margin:0;
  padding:0!important;
  border-radius:999px!important;
  box-shadow:none!important;
  font-size:calc(.92rem + 1px)!important;
  line-height:1!important;
}
.event-service-days__error{
  margin:0;
  color:var(--danger);
  font-size:calc(.7rem + 1px);
  font-weight:700;
  line-height:1.4;
}

.staff-plan-kind-heading__content{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.staff-plan-kind-heading__note{font-size:calc(.72rem + 1px);font-weight:400;color:var(--muted)}
.event-team-multi{
  display:grid;
  gap:4px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.event-team-multi__head{
  align-items:center;
  gap:6px;
  min-height:22px;
}
.event-team-multi__head .field-label{
  font-size:calc(.72rem + 1px);
  line-height:1.08;
}
.event-team-add{
  flex:0 0 auto;
  min-height:22px;
  padding:3px 8px!important;
  font-size:calc(.7rem + 1px)!important;
  line-height:1!important;
  white-space:nowrap;
}
.event-team-multi__rows{
  gap:4px;
}
.event-team-member-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 26px;
  gap:4px;
  align-items:center;
}
.event-team-member-remove{
  width:26px;
  min-width:26px;
  height:24px;
  min-height:24px;
  padding:0!important;
  border-radius:6px!important;
  font-size:calc(1rem + 1px)!important;
  line-height:1!important;
  box-shadow:none!important;
}
/* Narrow event detail: service rows wrap instead of forcing a horizontal scrollbar. */
@container event-service-days (max-width:900px){
  .event-service-day-row--preparation,
  .event-service-day-row--event,
  .event-service-day-row--cleanup,
  .event-service-day-row:not([data-service-day-kind]){
    grid-template-columns:repeat(3,minmax(0,1fr)) 34px;
  }
  .event-service-day-row--preparation .event-service-day-kind,
  .event-service-day-row--cleanup .event-service-day-kind{
    grid-column:1 / 4;
    grid-row:2;
  }
  .event-service-day-row--event .event-service-day-kind,
  .event-service-day-row:not([data-service-day-kind])::after{
    grid-column:3;
    grid-row:2;
  }
  .event-service-day-row--event > label:nth-of-type(4),
  .event-service-day-row:not([data-service-day-kind]) > label:nth-of-type(4){grid-column:1;grid-row:2}
  .event-service-day-row--event > label:nth-of-type(5),
  .event-service-day-row:not([data-service-day-kind]) > label:nth-of-type(5){grid-column:2;grid-row:2}
  .event-service-day-row--preparation .event-service-day-remove,
  .event-service-day-row--event .event-service-day-remove,
  .event-service-day-row--cleanup .event-service-day-remove,
  .event-service-day-row:not([data-service-day-kind]) .event-service-day-remove{
    grid-column:4;
    grid-row:2;
  }
  .event-service-day-row--cleanup > label:nth-of-type(3){grid-column:3;grid-row:1}
}
@container event-service-days (max-width:900px){
  .event-service-days__head{
    align-items:stretch;
    flex-direction:column;
  }
  .event-service-days__tools{
    width:100%;
    justify-content:space-between;
    flex-wrap:wrap;
  }
  .event-service-day-color-controls{
    flex-wrap:wrap;
  }
  .event-service-days__actions{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:100%;
  }
  .event-service-day-add{
    width:100%;
  }
}
@container event-service-days (max-width:620px){
  .event-service-days__tools{
    align-items:stretch;
    flex-direction:column;
  }
  .event-service-day-color-controls{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:100%;
  }
  .event-service-day-color-control{
    justify-content:space-between;
    width:100%;
  }
  .event-service-day-color-status{
    min-height:1.15em;
  }
  .event-service-days__actions{
    grid-template-columns:1fr;
  }
}
@media (max-width:620px){
  .event-team-member-row{
    grid-template-columns:minmax(0,1fr) 26px;
  }
}

/* Plán personálu je rozdělený podle servisních dnů; kalkulace personálu má jediný souhrnný řádek. */
body:not(.auth-page--login) .event-form .event-table--cost-staff-summary{
  table-layout:fixed;
  width:100%;
}
body:not(.auth-page--login) .event-form .event-table--cost-staff-summary th:first-child,
body:not(.auth-page--login) .event-form .event-table--cost-staff-summary td:first-child{
  width:68%;
}
body:not(.auth-page--login) .event-form .event-table--cost-staff-summary th:last-child,
body:not(.auth-page--login) .event-form .event-table--cost-staff-summary td:last-child{
  width:32%;
  text-align:right;
}
body:not(.auth-page--login) .event-form .staff-plan-day-heading td{
  padding:5px 4px !important;
  overflow:visible;
  background:rgba(122,98,70,.08);
  border-top:1px solid rgba(122,98,70,.2);
  border-bottom:1px solid rgba(122,98,70,.15);
}
body:not(.auth-page--login) .event-form .event-table--staff-plan tbody:first-of-type .staff-plan-day-heading td{
  border-top:0;
}
body:not(.auth-page--login) .event-form .staff-plan-day-heading__content{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  font-size:calc(.64rem + 1px);
}
body:not(.auth-page--login) .event-form .staff-plan-day-heading__content strong{
  display:inline;
  flex:0 0 auto;
  font-size:calc(.66rem + 1px);
  text-align:left;
  overflow:visible;
}
body:not(.auth-page--login) .event-form .staff-plan-day-heading__content span{
  overflow:hidden;
  text-overflow:ellipsis;
  color:var(--muted);
}
body:not(.auth-page--login) .event-form .staff-plan-day-heading__action{
  text-align:center;
}
body:not(.auth-page--login) .event-form .staff-plan-day-add{
  width:22px;
  min-width:22px;
  height:22px;
  min-height:22px;
  padding:0 !important;
  border-radius:6px !important;
  font-size:calc(.9rem + 1px) !important;
  line-height:1 !important;
  box-shadow:none !important;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan input[data-plan-arrival-date][readonly]{
  background:rgba(255,255,255,.55);
  color:var(--muted);
  cursor:default;
}

/* Personál v kalkulaci: oddělení skutečných nákladů a kontrolních řádků. */
body:not(.auth-page--login) .event-form .staff-calculation-group-heading th{
    padding:10px 8px 7px;
    background:rgba(255,255,255,.46);
    border-top:1px solid rgba(128,94,61,.16);
    text-align:left;
}
body:not(.auth-page--login) .event-form .staff-calculation-group-heading:first-of-type th{
    border-top:0;
}
body:not(.auth-page--login) .event-form .staff-calculation-group-title{
    display:flex;
    align-items:center;
    gap:12px;
}
body:not(.auth-page--login) .event-form .staff-calculation-group-title > div{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:2px;
}
body:not(.auth-page--login) .event-form .staff-calculation-group-title strong{
    font-size:calc(.92rem + 1px);
    font-weight:700;
}
body:not(.auth-page--login) .event-form .staff-calculation-group-title small{
    color:var(--muted, #756b63);
    font-weight:400;
    line-height:1.3;
}
body:not(.auth-page--login) .event-form tbody[data-staff-zone="control"] .event-row{
    background:rgba(255,255,255,.28);
}
body:not(.auth-page--login) .event-form .staff-calculation-totals{
    display:grid;
    gap:8px;
    margin-top:8px;
}
body:not(.auth-page--login) .event-form .section-total--control{
    background:rgba(255,255,255,.5);
}
@media (max-width: 820px){
    body:not(.auth-page--login) .event-form .staff-calculation-group-title{
        align-items:flex-start;
        flex-direction:column;
    }
    body:not(.auth-page--login) .event-form .staff-calculation-totals{
        grid-template-columns:1fr;
    }
}

/* 2026-08-09: Personál v kalkulaci bez vodorovného posuvníku. */
body:not(.auth-page--login) .event-form .staff-calculation-wrap{
  overflow:visible!important;
  overflow-x:visible!important;
  scrollbar-gutter:auto!important;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap > .event-table--cost-staff{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  table-layout:fixed!important;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap > .event-table--cost-staff th,
body:not(.auth-page--login) .event-form .staff-calculation-wrap > .event-table--cost-staff td{
  min-width:0!important;
  white-space:normal!important;
  overflow:hidden;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap > .event-table--cost-staff th *,
body:not(.auth-page--login) .event-form .staff-calculation-wrap > .event-table--cost-staff td *{
  min-width:0!important;
  max-width:100%;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap .event-table--cost-staff input[type="text"],
body:not(.auth-page--login) .event-form .staff-calculation-wrap .event-table--cost-staff input[type="number"],
body:not(.auth-page--login) .event-form .staff-calculation-wrap .event-table--cost-staff [data-staff-hours],
body:not(.auth-page--login) .event-form .staff-calculation-wrap .event-table--cost-staff [data-staff-count],
body:not(.auth-page--login) .event-form .staff-calculation-wrap .event-table--cost-staff [data-staff-rate]{
  width:100%!important;
  min-width:0!important;
  padding-inline:5px!important;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap .staff-calculation-group-title{
  min-width:0;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap .staff-calculation-group-title small{
  white-space:normal!important;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap .staff-calculation-add{
  width:22px!important;
  min-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  padding:0!important;
  border-radius:6px!important;
  font-size:calc(.9rem + 1px) !important;
  line-height:1!important;
  flex:0 0 22px;
  box-shadow:none!important;
}
body:not(.auth-page--login) .event-form .staff-calculation-totals{
  grid-template-columns:minmax(0,1fr)!important;
}

/* Plán personálu: samostatná provozní sekce Kuchaři pro Personalform / HR. */
body:not(.auth-page--login) .event-form .staff-plan-kind-heading td{
  padding:4px 4px!important;
  background:rgba(255,255,255,.5);
  border-bottom:1px solid rgba(122,98,70,.12);
  overflow:visible!important;
}
body:not(.auth-page--login) .event-form .staff-plan-kind-heading--kitchen td{
  background:rgba(243,235,220,.62);
}
body:not(.auth-page--login) .event-form .staff-plan-kind-heading__content{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  white-space:normal!important;
}
body:not(.auth-page--login) .event-form .staff-plan-kind-heading__content strong{
  display:inline;
  flex:0 0 auto;
  font-size:calc(.64rem + 1px);
  text-align:left;
  white-space:nowrap!important;
  overflow:visible;
}
body:not(.auth-page--login) .event-form .staff-plan-kind-heading__content span{
  min-width:0;
  color:var(--muted);
  font-size:calc(.56rem + 1px);
  white-space:normal!important;
  line-height:1.2;
}
body:not(.auth-page--login) .event-form .staff-plan-row--kitchen td{
  background:rgba(250,247,239,.7);
}
body:not(.auth-page--login) .event-form .staff-plan-row--kitchen [data-plan-per-person],
body:not(.auth-page--login) .event-form .staff-plan-row--kitchen [data-plan-total]{
  color:var(--muted);
  font-weight:600;
}
body:not(.auth-page--login) .event-form .staff-calculation-wrap > .event-table--cost-staff th:last-child,
body:not(.auth-page--login) .event-form .staff-calculation-wrap > .event-table--cost-staff td:last-child{
  width:54px!important;
  min-width:0!important;
}

/* Plán personálu se vždy skládá do dostupné šířky. Všechny sloupce včetně
   odebrání řádku zůstávají viditelné bez lokálního vodorovného posuvníku. */
body:not(.auth-page--login) .event-form .staff-plan-wrap{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow-x:hidden!important;
  overflow-y:visible!important;
  scrollbar-gutter:auto!important;
}
body:not(.auth-page--login) .event-form .staff-plan-wrap > .event-table--staff-plan{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  table-layout:fixed!important;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan :is(
  [data-plan-count],
  [data-plan-rate],
  [data-plan-hours],
  [data-plan-per-person],
  [data-plan-total]
){
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums;
}

/* Staff table: fixed narrow remove button and readable date/time on two lines.
   Percentages intentionally total 100%, with no horizontal scrollbar. */
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-position{width:16%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-count{width:5%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-rate{width:6%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-arrival,
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-departure{width:20%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-hours-total{width:6%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-per-person-total,
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-grand-total{width:10%}
body:not(.auth-page--login) .event-form .event-table--staff-plan col.col-actions{width:34px!important}
body:not(.auth-page--login) .event-form .event-table--staff-plan .plan-datetime{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:2px;
  min-width:0;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan .plan-datetime input[type="date"],
body:not(.auth-page--login) .event-form .event-table--staff-plan .plan-datetime input[type="time"]{
  flex:none;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body:not(.auth-page--login) .event-form .event-table--staff-plan .row-action-controls{
  width:100%;
  display:flex;
  justify-content:center;
}
/* 2026-08-09: systemovy radek Obsluha ma stejnou typografii jako bezny personalni radek. */
body:not(.auth-page--login) .event-form .event-table--cost-staff tr[data-system-key="staff_plan_total"] td:first-child strong{
  font-size:calc(.69rem + 1px) !important;
  font-weight:400;
  line-height:1.25;
  text-align:left!important;
}

/* 2026-08-09: Event inventar zobrazuje dostupny sklad a chybejici pocet k objednani. */
body:not(.auth-page--login) .event-form .event-table--itinerary .itinerary-stock-cell,
body:not(.auth-page--login) .event-form .event-table--itinerary .itinerary-order-cell{
  text-align:right;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
  font-size:calc(.66rem + 1px);
}
body:not(.auth-page--login) .event-form .event-table--itinerary tr.is-stock-shortage .itinerary-stock-cell,
body:not(.auth-page--login) .event-form .event-table--itinerary .itinerary-order-cell.is-shortage{
  color:var(--danger);
  font-weight:700;
}
body:not(.auth-page--login) .event-form .event-table--itinerary input[data-itinerary-quantity].is-stock-shortage{
  color:var(--danger)!important;
  border-color:var(--danger)!important;
  font-weight:700;
}

/* ONLYOFFICE PPTX template integration */

.onlyoffice-editor-page { position: fixed; inset: 0; display: grid; grid-template-rows: auto minmax(0, 1fr); background: var(--surface, #fff); z-index: 9999; }
.onlyoffice-editor-page__bar { min-height: 54px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 8px 14px; border-bottom: 1px solid var(--border, #ddd); background: var(--surface, #fff); }
.onlyoffice-editor-page__bar > div:first-child { display: grid; gap: 2px; }
.onlyoffice-editor-page__bar small { color: var(--muted, #6f6a65); font-size: calc(.72rem + 1px); text-transform: uppercase; letter-spacing: .06em; }
.onlyoffice-editor-page__actions { display: flex; align-items: center; gap: 12px; }
.onlyoffice-editor-page__frame { min-height: 0; width: 100%; height: 100%; overflow: hidden; }
.onlyoffice-editor-page__frame iframe { width: 100% !important; height: 100% !important; border: 0 !important; }
.onlyoffice-variable-help { position: relative; }
.onlyoffice-variable-help > summary { list-style: none; cursor: pointer; white-space: nowrap; }
.onlyoffice-variable-help > summary::-webkit-details-marker { display: none; }
.onlyoffice-variable-help__panel { position: absolute; z-index: 10020; top: calc(100% + 8px); right: 0; width: min(520px, 86vw); max-height: 70vh; overflow: auto; padding: 14px; border: 1px solid var(--border, #ddd); border-radius: 10px; background: var(--surface, #fff); box-shadow: 0 16px 38px rgba(24,31,37,.2); }
.onlyoffice-variable-help__panel > p { margin: 6px 0 10px; }
.onlyoffice-variable-help__grid { display: grid; gap: 6px; }
.onlyoffice-variable-help__grid > div { display: grid; grid-template-columns: minmax(90px, auto) 1fr; gap: 10px; align-items: baseline; padding: 5px 0; border-bottom: 1px solid var(--border, #eee); }
.onlyoffice-variable-help__grid code { white-space: nowrap; }
.onlyoffice-editor-error { max-width: 720px; margin: 48px auto; padding: 24px; border: 1px solid #d9a0a0; border-radius: 12px; background: #fff6f6; }
@media (max-width: 780px){
    .onlyoffice-editor-page__bar { align-items: flex-start; }
    .onlyoffice-editor-page__actions .muted { display: none; }
}

/* Vícedenní MENU v nákladové i prodejní kalkulaci + viditelné PPTX proměnné. */
body:not(.auth-page--login) .event-form .event-menu-day-heading td{
  padding:6px 6px !important;
  background:rgba(64,91,73,.07);
  border-top:1px solid rgba(64,91,73,.18);
  border-bottom:1px solid rgba(64,91,73,.14);
}
body:not(.auth-page--login) .event-form .event-menu-day-heading__content{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
body:not(.auth-page--login) .event-form .event-menu-day-heading__content > span{
  display:flex;
  align-items:baseline;
  gap:7px;
  min-width:0;
  font-size:calc(.7rem + 1px);
}
body:not(.auth-page--login) .event-form .event-menu-day-heading__content [data-menu-day-label]{
  color:var(--muted);
  font-weight:600;
}
body:not(.auth-page--login) .event-form .event-pptx-token-cell{
  text-align:center;
  white-space:nowrap;
}
body:not(.auth-page--login) .event-form .event-pptx-token-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  min-height:24px;
  padding:2px 6px;
  border:1px solid rgba(50,93,72,.24);
  border-radius:6px;
  background:rgba(255,255,255,.64);
  color:#265e45;
  font-size:calc(.68rem + 1px);
  font-weight:750;
  cursor:help;
}
body:not(.auth-page--login) .event-form .event-pptx-token-badge.is-disabled{
  color:var(--muted);
  border-color:rgba(80,80,80,.12);
  background:rgba(255,255,255,.3);
  font-weight:600;
}
@media (max-width:900px){
  body:not(.auth-page--login) .event-form .event-menu-day-heading__content{align-items:flex-start;flex-direction:column}
}

.event-pptx-token-details {
    position: relative;
    display: inline-block;
}

.event-pptx-token-details > summary {
    list-style: none;
    cursor: pointer;
}

.event-pptx-token-details > summary::-webkit-details-marker {
    display: none;
}

.event-pptx-token-details.is-disabled > summary {
    cursor: default;
}

.event-pptx-token-details.is-disabled .event-pptx-token-details__panel {
    display: none;
}

.event-pptx-token-details__panel {
    position: absolute;
    z-index: 40;
    top: calc(100% + 6px);
    right: 0;
    width: max-content;
    min-width: 245px;
    max-width: min(360px, 80vw);
    padding: 10px 12px;
    border: 1px solid rgba(0, 0, 0, 0.14);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.16);
    text-align: left;
}

.event-pptx-token-details__panel > strong,
.event-pptx-token-details__panel > span,
.event-pptx-token-details__panel > small {
    display: block;
}

.event-pptx-token-details__panel > span {
    display: grid;
    grid-template-columns: minmax(110px, auto) 1fr;
    gap: 10px;
    align-items: baseline;
    padding: 3px 0;
}

.event-pptx-token-details__panel code {
    white-space: nowrap;
}

/* Sekce 6: cenová kalkulace je u vícedenních akcí seskupená po servisních dnech. */
body:not(.auth-page--login) .event-form .event-sales-day-stack{
  gap:16px;
}
body:not(.auth-page--login) .event-form .event-calculation-day{
  display:grid;
  gap:10px;
}
body:not(.auth-page--login) .event-form .event-calculation-day__heading{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:30px;
  padding:4px 8px;
  border-bottom:1px solid rgba(35,35,35,.10);
}
body:not(.auth-page--login) .event-form .event-calculation-day__heading strong{
  font-size:calc(.82rem + 1px);
}
body:not(.auth-page--login) .event-form .event-calculation-day__heading span{
  color:var(--muted);
  font-size:calc(.78rem + 1px);
}
body:not(.auth-page--login) .event-form .event-calculation-day .section-total{
  margin-top:4px;
}
@media (max-width:900px){
  body:not(.auth-page--login) .event-form .event-calculation-day{padding:6px}
  body:not(.auth-page--login) .event-form .event-calculation-day__heading{align-items:flex-start;flex-direction:column;gap:2px}
}

.onlyoffice-media-panel {
  position: fixed;
  z-index: 80;
  top: 72px;
  right: 18px;
  bottom: 18px;
  width: min(430px, calc(100vw - 36px));
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(47, 37, 29, .16);
  overflow: hidden;
}

.onlyoffice-media-panel[hidden] {
  display: none;
}

.onlyoffice-media-panel__head,
.onlyoffice-media-panel__tools {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.onlyoffice-media-panel__head h2 {
  margin: 2px 0 4px;
}

.onlyoffice-media-panel__tools {
  flex-wrap: wrap;
}

.onlyoffice-media-search {
  flex: 1 1 190px;
}

.onlyoffice-media-search input {
  width: 100%;
}

.onlyoffice-media-upload {
  cursor: pointer;
}

.onlyoffice-media-status {
  min-height: 18px;
  margin: 0;
}

.onlyoffice-media-status.is-error {
  color: #a03b2f;
}

.onlyoffice-media-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-height: 0;
  overflow: auto;
  padding-right: 4px;
}

.onlyoffice-media-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px;
  border: 1px solid rgba(47, 37, 29, .16);
  border-radius: 12px;
  background: #fffaf2;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.onlyoffice-media-card:hover,
.onlyoffice-media-card:focus-visible {
  border-color: #26895f;
  box-shadow: 0 8px 18px rgba(38, 137, 95, .14);
  outline: none;
}

.onlyoffice-media-card__thumb {
  display: block;
  aspect-ratio: 4 / 3;
  border-radius: 9px;
  background: #efe6d9;
  overflow: hidden;
}

.onlyoffice-media-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.onlyoffice-media-card__name {
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.onlyoffice-media-card small {
  color: #83786e;
  overflow-wrap: anywhere;
}

@media (max-width: 720px){
  .onlyoffice-media-panel {
    top: 58px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    width: auto;
  }
  .onlyoffice-media-grid {
    grid-template-columns: 1fr;
  }
}

/* PPTX template list: compact one-row overview for large template libraries. */
.pptx-template-list{
  display:grid;
  gap:8px;
  min-width:0;
}
.pptx-template-list__head,
.pptx-template-row{
  display:grid;
  grid-template-columns:minmax(220px,1.55fr) minmax(100px,.55fr) minmax(64px,.35fr) minmax(140px,.8fr) minmax(150px,.8fr) minmax(330px,1.55fr);
  gap:12px;
  align-items:center;
}
.pptx-template-list__head{
  padding:0 14px 4px;
  color:var(--muted);
  font-size:calc(.78rem + 1px);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.pptx-template-row{
  position:relative;
  padding:11px 14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.9);
  box-shadow:0 5px 16px rgba(67,48,30,.045);
}
.pptx-template-row:hover{
  border-color:rgba(155,111,69,.35);
  box-shadow:0 8px 22px rgba(67,48,30,.075);
}
.pptx-template-row__identity{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.pptx-template-row__identity h3{
  margin:0;
  font-size:calc(1rem + 1px);
  line-height:1.25;
  overflow-wrap:anywhere;
}
.pptx-template-row__identity small{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:calc(.78rem + 1px);
}
.pptx-template-row__icon{
  display:grid;
  place-items:center;
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:11px;
  background:#e7f1ea;
  color:#257047;
  font:700 calc(20px * var(--font-scale) + 1px)/1 Georgia,serif;
}
.pptx-template-row__status{
  display:flex;
  gap:5px;
  align-items:center;
  flex-wrap:wrap;
}
.pptx-template-row__meta{
  min-width:0;
  color:var(--ink);
  font-size:calc(.88rem + 1px);
  overflow-wrap:anywhere;
}
.pptx-template-row__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
}
.pptx-template-row__actions form{
  margin:0;
}
.pptx-template-row__actions .button{
  min-height:34px;
  padding:7px 10px;
  white-space:nowrap;
}

@media(max-width:1180px){
  .pptx-template-list__head{display:none;}
  .pptx-template-row{
    grid-template-columns:minmax(220px,1.4fr) minmax(100px,.6fr) minmax(70px,.35fr) minmax(140px,.75fr) minmax(150px,.8fr);
  }
  .pptx-template-row__actions{
    grid-column:1 / -1;
    justify-content:flex-start;
    padding-top:4px;
  }
}
@media(max-width:760px){
  .pptx-template-row{
    grid-template-columns:1fr;
    gap:8px;
    padding:12px;
  }
  .pptx-template-row__status,
  .pptx-template-row__meta,
  .pptx-template-row__actions{
    grid-column:1;
  }
  .pptx-template-row__meta{
    display:flex !important;
    gap:8px;
  }
  .pptx-template-row__meta::before{
    content:attr(data-label) ":";
    color:var(--muted);
    font-weight:600;
  }
  .pptx-template-row__actions{
    padding-top:2px;
  }
  
  
}

/* Event form: tabulkové položky mají stejnou využitelnou šířku jako řádek Celkem.
   Globální scrollbar-gutter: stable both-edges rezervoval po stranách tabulky prázdné místo. */
body:not(.auth-page--login) .event-form .event-block > .table-wrap,
body:not(.auth-page--login) .event-form .event-block > .staff-calculation-wrap{
  scrollbar-gutter:auto;
}

/* 2026-08-11: Přehled uživatelů se na desktopu vejde bez vodorovného posuvníku. */

/* Event PPTX offers: use the same compact row layout as the Templates section. */
.event-offer-template-list .pptx-template-list__head,
.event-offer-template-list .pptx-template-row{
  grid-template-columns:minmax(260px,1.8fr) minmax(110px,.6fr) minmax(72px,.36fr) minmax(220px,1fr);
}
.event-offer-created-list .pptx-template-list__head,
.event-offer-created-list .pptx-template-row{
  grid-template-columns:minmax(300px,1.65fr) minmax(150px,.82fr) minmax(70px,.34fr) minmax(70px,.34fr) minmax(70px,.34fr) minmax(155px,.78fr) minmax(300px,1.35fr);
}
.event-offer-version-icon{
  font-family:Georgia,serif;
  font-size:calc(calc(13px * var(--font-scale)) + 1px);
  letter-spacing:-.02em;
}
.event-offer-template-list .pptx-template-row__actions,
.event-offer-created-list .pptx-template-row__actions{
  justify-content:flex-end;
}
@media(max-width:1180px){
  .event-offer-template-list .pptx-template-list__head,
  .event-offer-created-list .pptx-template-list__head{display:none;}
  .event-offer-template-list .pptx-template-row{
    grid-template-columns:minmax(240px,1.5fr) minmax(105px,.6fr) minmax(70px,.36fr);
  }
  .event-offer-created-list .pptx-template-row{
    grid-template-columns:minmax(260px,1.5fr) minmax(150px,.82fr) minmax(70px,.36fr) minmax(70px,.36fr) minmax(70px,.36fr) minmax(150px,.8fr);
  }
  .event-offer-template-list .pptx-template-row__actions,
  .event-offer-created-list .pptx-template-row__actions{
    grid-column:1 / -1;
    justify-content:flex-start;
    padding-top:4px;
  }
}
@media(max-width:760px){
  .event-offer-template-list .pptx-template-row,
  .event-offer-created-list .pptx-template-row{
    grid-template-columns:1fr;
    gap:8px;
    padding:12px;
  }
  .event-offer-template-list .pptx-template-row__status,
  .event-offer-template-list .pptx-template-row__meta,
  .event-offer-template-list .pptx-template-row__actions,
  .event-offer-created-list .pptx-template-row__meta,
  .event-offer-created-list .pptx-template-row__actions{
    grid-column:1;
  }
  .event-offer-template-list .pptx-template-row__meta,
  .event-offer-created-list .pptx-template-row__meta{
    display:flex !important;
    gap:8px;
  }
  .event-offer-template-list .pptx-template-row__meta::before,
  .event-offer-created-list .pptx-template-row__meta::before{
    content:attr(data-label) ":";
    color:var(--muted);
    font-weight:600;
  }
}

/* Event form: jednotné + / − ovládání řádků a přidávání vždy pod cílovou skupinou. */
body:not(.auth-page--login) .event-form [data-add-row],
body:not(.auth-page--login) .event-form [data-add-staff-plan-row],
body:not(.auth-page--login) .event-form [data-remove-row],
body:not(.auth-page--login) .event-form [data-remove-staff-plan-row]{
  display:inline-grid!important;
  place-items:center;
  width:22px!important;
  min-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  padding:0!important;
  border-radius:6px!important;
  font-size:calc(.9rem + 1px) !important;
  line-height:1!important;
  box-shadow:none!important;
}
body:not(.auth-page--login) .event-form .staff-plan-add-action > td{
  background:rgba(255,255,255,.34)!important;
}
body:not(.auth-page--login) .event-form .staff-calculation-group-title{
  justify-content:flex-start;
}

/* Eventy / Všechny nabídky. */
.event-section-switcher{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 12px;
}
.nav-group-items .nav-group-subitem{
  padding-left:28px;
  font-size:calc(.92em + 1px);
}
.nav-group-items .nav-group-subitem svg{
  width:17px;
  height:17px;
}
.event-offer-directory-table{
  width:100%;
  border-collapse:collapse;
  table-layout:auto;
}
.event-offer-directory-table th,
.event-offer-directory-table td{
  padding:9px 10px;
  border-bottom:1px solid var(--line);
  vertical-align:middle;
  white-space:nowrap;
}
.event-offer-directory-table th{
  color:var(--muted);
  font-size:calc(.72rem + 1px);
  font-weight:700;
  text-align:left;
}
.event-offer-sort-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:inherit;
  text-decoration:none;
  white-space:nowrap;
  transition:color .14s ease;
}
.event-offer-sort-link:hover,
.event-offer-sort-link.is-active{
  color:var(--accent-dark);
}
.event-offer-sort-link--icon{
  justify-content:center;
}
.event-offer-sort-link__indicator{
  min-width:10px;
  color:#b7a28e;
  font-size:calc(.72rem + 1px);
  font-weight:800;
  line-height:1;
  text-align:center;
}
.event-offer-sort-link.is-active .event-offer-sort-link__indicator{
  color:var(--accent-dark);
}
.event-offer-directory-table .event-offer-directory-event{
  min-width:210px;
  white-space:normal;
}
.event-offer-directory-table .event-offer-directory-offer{
  min-width:250px;
  white-space:normal;
}
.event-offer-directory-table .event-offer-template-cell{
  width:260px;
  max-width:260px;
  min-width:180px;
  overflow:hidden;
  white-space:normal!important;
}
.event-offer-template-name{
  display:block;
  width:260px;
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.event-offer-directory-event a,
.event-offer-directory-table .event-offer-directory-offer{
  display:grid;
  gap:2px;
}
.event-offer-directory-event small,
.event-offer-directory-table .event-offer-directory-offer small{
  color:var(--muted);
}

@media (max-width:1100px){
  .event-offer-directory-table{
    min-width:1040px;
  }
}
#event-offer-created-list{
  scroll-margin-top:18px;
}

/* Historie změn Eventformu */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.app-changelog-top-link{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:rgba(255,255,255,.72);transition:.16s ease}
.app-changelog-top-link:hover,.app-changelog-top-link.active{color:var(--accent-dark);border-color:rgba(155,111,69,.42);background:#fff;box-shadow:0 8px 20px rgba(71,49,29,.08)}
.app-changelog-top-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.changelog-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:14px;padding:16px 18px!important;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(250,244,236,.93))}
.changelog-hero .eyebrow{margin-bottom:3px;font-size:calc(.62rem + 1px)}
.changelog-hero h2{margin:0;font-size:calc(1.45rem + 1px);line-height:1.12}
.changelog-hero p{max-width:860px;margin:6px 0 0;color:var(--muted);font-size:calc(.82rem + 1px);line-height:1.45}
.changelog-hero-stat{min-width:76px;min-height:66px;display:grid;place-items:center;align-content:center;padding:9px 12px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.78)}
.changelog-hero-stat strong{font-size:calc(1.65rem + 1px);line-height:1}
.changelog-hero-stat span{margin-top:4px;color:var(--muted);font-size:calc(.62rem + 1px);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.changelog-timeline{position:relative;display:grid;gap:8px;margin-top:0;padding-left:22px}
.changelog-timeline::before{content:'';position:absolute;top:18px;bottom:18px;left:7px;width:2px;border-radius:99px;background:linear-gradient(180deg,var(--accent),#e3d7c9)}
.changelog-release{position:relative;margin:0;padding:0!important;overflow:visible;border-radius:15px!important;box-shadow:0 5px 16px rgba(58,41,24,.035)!important}
.changelog-release-marker{position:absolute;top:21px;left:-29px;width:14px;height:14px;display:grid;place-items:center;border:3px solid #f7f1ea;border-radius:50%;background:#b8a490;box-shadow:0 0 0 1px #d6c7b7}
.changelog-release-marker span{width:4px;height:4px;border-radius:50%;background:#fff}
.changelog-release.is-latest{border-color:rgba(155,111,69,.38)}
.changelog-release.is-latest .changelog-release-marker{background:var(--accent);box-shadow:0 0 0 1px #bd9875,0 5px 12px rgba(123,82,46,.18)}
.changelog-release-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:12px;min-height:58px;padding:9px 14px;cursor:pointer;list-style:none;border-radius:14px;transition:background .16s ease}
.changelog-release-summary::-webkit-details-marker{display:none}.changelog-release-summary::marker{content:''}
.changelog-release-summary:hover{background:#fdfaf6}.changelog-release[open]>.changelog-release-summary{border-bottom:1px solid #eee3d6;border-radius:14px 14px 0 0;background:#fdfaf6}
.changelog-release-summary-main{min-width:0;display:flex;align-items:center;gap:12px}
.changelog-version-row{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0}
.changelog-version{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;color:var(--accent-dark);background:#f5eadf;font-size:calc(.68rem + 1px);font-weight:700;letter-spacing:.035em}
.changelog-version-row .badge{padding:4px 7px;font-size:calc(.62rem + 1px)}
.changelog-release-summary-title{min-width:0;display:flex;align-items:baseline;gap:9px}
.changelog-release-summary h2{min-width:0;margin:0;overflow:hidden;color:var(--ink);font-size:calc(.94rem + 1px) !important;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.changelog-release-count,.changelog-release-summary time{flex:0 0 auto;color:var(--muted);font-size:calc(.66rem + 1px);font-weight:600;white-space:nowrap}
.changelog-release-chevron{width:9px;height:9px;justify-self:center;border-right:2px solid #8b7b6b;border-bottom:2px solid #8b7b6b;transform:rotate(45deg) translateY(-2px);transition:transform .16s ease}
.changelog-release[open] .changelog-release-chevron{transform:rotate(225deg) translate(-2px,-2px)}
.changelog-release-body{padding:11px 14px 13px}
.changelog-release-description{max-width:920px;margin:0;color:var(--muted);font-size:calc(.76rem + 1px);line-height:1.5}
.changelog-change-list{display:grid;gap:6px;margin:11px 0 0;padding:0;counter-reset:changelog-item;list-style:none}
.changelog-change-list li{counter-increment:changelog-item;display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:start;color:#4d453c;font-size:calc(.76rem + 1px);line-height:1.48}
.changelog-change-list li::before{content:counter(changelog-item);width:20px;height:20px;display:grid;place-items:center;border-radius:7px;color:var(--accent-dark);background:#f4e9dc;font-size:calc(.62rem + 1px);font-weight:700}
.changelog-change-list li span{padding-top:1px}

/* Ověřený changelog: funkční změny oddělené od technického seznamu souborů. */
.changelog-groups{display:grid;gap:10px;margin-top:13px}
.changelog-group{
  --changelog-group-color:var(--accent-dark);
  --changelog-group-tint:rgba(10,167,173,.065);
  padding:11px 14px 12px;
  border:1px solid var(--line);
  border-left:3px solid var(--changelog-group-color);
  border-radius:11px;
  background:var(--changelog-group-tint);
}
.changelog-group--fixed{--changelog-group-color:#208965;--changelog-group-tint:rgba(32,137,101,.06)}
.changelog-group--improved{--changelog-group-color:#158eae;--changelog-group-tint:rgba(21,142,174,.06)}
.changelog-group--new{--changelog-group-color:#7964b3;--changelog-group-tint:rgba(121,100,179,.06)}
.changelog-group--security{--changelog-group-color:#b57b25;--changelog-group-tint:rgba(181,123,37,.06)}
.changelog-group--other{--changelog-group-color:var(--muted);--changelog-group-tint:var(--paper-soft)}
.changelog-group-heading{display:flex;align-items:center;gap:8px;margin:0;color:var(--ink);font-size:calc(.8rem + 1px);font-weight:700}
.changelog-group-symbol{width:23px;height:23px;display:grid;place-items:center;border-radius:8px;color:var(--changelog-group-color);background:var(--paper)}
.changelog-group-symbol::before{content:'✓'}
.changelog-group--improved .changelog-group-symbol::before{content:'↗'}
.changelog-group--new .changelog-group-symbol::before{content:'+'}
.changelog-group--security .changelog-group-symbol::before{content:'◆'}
.changelog-group--other .changelog-group-symbol::before{content:'i'}
.changelog-group-count{padding:2px 7px;border-radius:10px;color:var(--muted);background:var(--paper);font-size:calc(.66rem + 1px);font-weight:600}
.changelog-group-items{display:grid;gap:5px;margin:8px 0 0;padding-left:23px;color:var(--ink);font-size:calc(.76rem + 1px);line-height:1.5}
.changelog-group-items li::marker{color:var(--changelog-group-color)}
.changelog-technical-files{margin-top:13px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--paper-soft);color:var(--muted);font-size:calc(.72rem + 1px)}
.changelog-technical-files summary{cursor:pointer;font-weight:700;color:var(--accent-dark)}
.changelog-technical-files[open] summary{margin-bottom:9px}
.changelog-technical-file-group{margin-top:8px;min-width:0}
.changelog-technical-file-group strong{display:block;margin-bottom:3px;color:var(--ink)}
.changelog-technical-file-group ul{display:grid;gap:3px;margin:0;padding-left:18px}
.changelog-technical-file-group code{overflow-wrap:anywhere;font-size:calc(.68rem + 1px)}
.changelog-release-admin{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px dashed #e4d9cc}
.changelog-release-admin>span{color:var(--muted);font-size:calc(.66rem + 1px)}.changelog-release-admin form{margin:0}
.changelog-empty{display:grid;justify-items:center;gap:8px;margin-top:10px;padding:42px 24px!important;text-align:center}.changelog-empty>span{font-size:calc(calc(32px * var(--font-scale)) + 1px)}.changelog-empty h2{margin:0;font-size:calc(1.25rem + 1px)}.changelog-empty p{max-width:620px;margin:0;color:var(--muted);font-size:calc(.82rem + 1px)}

/* Oznámení nové verze po F5 nebo přihlášení. Je pod povinným PWA update dialogem. */
body.app-changelog-update-open{overflow:hidden}
.app-changelog-update{position:fixed;inset:0;z-index:10010;display:grid;place-items:center;padding:max(14px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:rgba(32,24,18,.68);backdrop-filter:blur(7px)}
.app-changelog-update[hidden]{display:none}
.app-changelog-update__card{width:min(570px,100%);max-height:min(78vh,660px);overflow:auto;padding:18px;border:1px solid rgba(155,111,69,.34);border-radius:20px;background:#fff;box-shadow:0 28px 80px rgba(30,20,12,.36)}
.app-changelog-update__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.app-changelog-update__head>div{min-width:0}.app-changelog-update__head .eyebrow{margin-bottom:0;font-size:calc(.6rem + 1px)}
.app-changelog-update__version{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;color:var(--accent-dark);background:#f5eadf;font-size:calc(.68rem + 1px);font-weight:700}
.app-changelog-update__head h2{margin:6px 0 0;font-size:calc(1.32rem + 1px);line-height:1.18}
.app-changelog-update__close{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:var(--paper-soft);font-size:calc(1.25rem + 1px);line-height:1;cursor:pointer}
.app-changelog-update__summary{margin:10px 0 0;color:var(--muted);font-size:calc(.79rem + 1px);line-height:1.5}
.app-changelog-update__list{display:grid;gap:6px;margin:12px 0 0;padding:0;counter-reset:update-change;list-style:none}
.app-changelog-update__list li{counter-increment:update-change;display:grid;grid-template-columns:21px minmax(0,1fr);gap:8px;align-items:start;color:#4d453c;font-size:calc(.75rem + 1px);line-height:1.45}
.app-changelog-update__list li::before{content:counter(update-change);width:20px;height:20px;display:grid;place-items:center;border-radius:7px;color:var(--accent-dark);background:#f4e9dc;font-size:calc(.61rem + 1px);font-weight:700}
.app-changelog-update__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px;padding-top:12px;border-top:1px solid #eee3d6}.app-changelog-update__actions .button{min-height:38px;padding:8px 13px}

@media (max-width:760px){
  .changelog-hero{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 13px!important}.changelog-hero .eyebrow{font-size:calc(.54rem + 1px)}.changelog-hero h2{font-size:calc(1.08rem + 1px)}.changelog-hero p{margin-top:4px;font-size:calc(.69rem + 1px);line-height:1.4}.changelog-hero-stat{min-width:61px;min-height:55px;padding:7px 8px;border-radius:14px}.changelog-hero-stat strong{font-size:calc(1.35rem + 1px)}.changelog-hero-stat span{font-size:calc(.54rem + 1px)}
  .changelog-timeline{gap:6px;padding-left:17px}.changelog-timeline::before{left:4px}.changelog-release-marker{top:19px;left:-22px;width:12px;height:12px;border-width:2px}
  .changelog-release-summary{grid-template-columns:minmax(0,1fr) auto 14px;gap:7px;min-height:50px;padding:7px 9px}.changelog-release-summary-main{gap:7px}.changelog-version-row{gap:4px}.changelog-version{min-height:21px;padding:2px 6px;font-size:calc(.59rem + 1px)}.changelog-version-row .badge{display:none}.changelog-release-summary-title{gap:6px}.changelog-release-summary h2{font-size:calc(.79rem + 1px) !important}.changelog-release-count,.changelog-release-summary time{font-size:calc(.58rem + 1px)}.changelog-release-body{padding:9px 10px 11px}.changelog-release-description{font-size:calc(.66rem + 1px)}.changelog-change-list{gap:5px;margin-top:9px}.changelog-change-list li{grid-template-columns:19px minmax(0,1fr);gap:6px;font-size:calc(.66rem + 1px)}.changelog-change-list li::before{width:18px;height:18px;border-radius:6px;font-size:calc(.56rem + 1px)}.changelog-release-admin{align-items:stretch;flex-direction:column}.changelog-release-admin .button{width:100%}
  .changelog-group{padding:9px 10px}.changelog-group-heading{font-size:calc(.72rem + 1px)}.changelog-group-items{padding-left:17px;font-size:calc(.68rem + 1px)}.changelog-technical-files{padding:8px 10px;font-size:calc(.65rem + 1px)}
  .app-changelog-update{place-items:end center;padding:8px 8px max(8px,env(safe-area-inset-bottom))}.app-changelog-update__card{max-height:84vh;padding:14px;}.app-changelog-update__head h2{font-size:calc(1.08rem + 1px)}.app-changelog-update__summary{font-size:calc(.7rem + 1px)}.app-changelog-update__list{gap:5px;margin-top:10px}.app-changelog-update__list li{grid-template-columns:19px minmax(0,1fr);gap:6px;font-size:calc(.66rem + 1px)}.app-changelog-update__list li::before{width:18px;height:18px;border-radius:6px;font-size:calc(.55rem + 1px)}.app-changelog-update__actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px;padding-top:10px}.app-changelog-update__actions .button{width:100%;min-height:38px;padding:7px 8px;font-size:calc(.68rem + 1px)}
}

/* 2026-08-12: Přehled uživatelů – textové akce nahrazené jednotnými ikonami. */

@media print{body{zoom:1!important}}

/* 2026-08 typography parity with Personalform at the same font-size setting. */

/* 2026-08-13: Produkční informační vrstva pro soukromí a cookies. */

.legal-public-page{min-height:100vh;margin:0;color:var(--ink);background:linear-gradient(145deg,#f5eee6 0,#fbf8f4 46%,#f0e7dd 100%)}
.legal-public-shell{width:min(1040px,calc(100% - 28px));margin:0 auto;padding:28px 0 48px}
.legal-public-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.legal-public-brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.legal-public-brand img{width:48px;height:48px;object-fit:contain}.legal-public-brand span{display:grid;gap:1px}.legal-public-brand small{color:var(--muted);font-size:calc(.68rem + 1px);text-transform:uppercase;letter-spacing:.08em}.legal-public-brand strong{font-size:calc(1rem + 1px)}
.legal-public-card{padding:clamp(20px,4vw,42px);border:1px solid rgba(155,111,69,.22);border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 22px 64px rgba(67,46,28,.09)}
.legal-public-card h1{margin:6px 0 8px;font-size:calc(clamp(1.7rem,calc(4vw * var(--font-scale)),2.55rem) + 1px);line-height:1.08}.legal-public-card h2{margin:0 0 8px;font-size:calc(1.04rem + 1px)}.legal-public-card section{margin-top:26px;padding-top:22px;border-top:1px solid #eee4d9}.legal-public-card p{margin:0 0 10px;color:#544a41;line-height:1.65}.legal-public-lead{max-width:820px!important;color:#51463c!important;font-size:calc(.94rem + 1px)}.legal-public-card code{padding:2px 5px;border-radius:5px;background:#f3ece4;font-size:calc(.82em + 1px)}
.legal-storage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.legal-storage-item{padding:15px;border:1px solid #eadfd3;border-radius:15px;background:#fdfaf7}.legal-storage-item strong{display:block;margin-bottom:6px;font-size:calc(.82rem + 1px)}.legal-storage-item p{margin:0;font-size:calc(.76rem + 1px);line-height:1.55}
.legal-public-list{display:grid;gap:7px;margin:0;padding-left:20px;color:#544a41;font-size:calc(.82rem + 1px);line-height:1.55}.legal-public-note{padding:17px!important;border:1px solid #e4d6c8!important;border-radius:16px;background:#faf5ef}.legal-public-note h2{margin-top:0}.legal-public-note .button{margin-top:5px}
.legal-public-links{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:26px;padding-top:18px;border-top:1px solid #eee4d9}.legal-public-links a{color:var(--accent-dark);font-size:calc(.78rem + 1px);font-weight:700;text-decoration:none}.legal-public-links a:hover{text-decoration:underline}
@media(max-width:700px){.legal-public-shell{width:min(100% - 18px,1040px);padding-top:14px}.legal-public-header{align-items:flex-start}.legal-public-header>.button{padding:7px 9px;font-size:calc(.68rem + 1px)}.legal-public-brand img{width:40px;height:40px}.legal-public-card{padding:18px 15px;border-radius:18px}.legal-storage-grid{grid-template-columns:1fr}.legal-public-card section{margin-top:21px;padding-top:18px}}

/* 2026-08-16: Event form – vizuálně sjednocená tlačítka pro přidání a odebrání řádku. */
body:not(.auth-page--login) .event-form .button[data-add-row],
body:not(.auth-page--login) .event-form .button[data-add-staff-plan-row],
body:not(.auth-page--login) .event-form .button[data-remove-row],
body:not(.auth-page--login) .event-form .button[data-remove-staff-plan-row]{
  border-width:1px!important;
  border-style:solid!important;
  background:#fff!important;
  box-shadow:none!important;
  font-weight:700!important;
  transform:none!important;
  transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease!important;
}
body:not(.auth-page--login) .event-form .button[data-add-row],
body:not(.auth-page--login) .event-form .button[data-add-staff-plan-row]{
  color:#2f815d!important;
  border-color:#9fcab5!important;
  background:#f4faf7!important;
}
body:not(.auth-page--login) .event-form .button[data-add-row]:hover,
body:not(.auth-page--login) .event-form .button[data-add-staff-plan-row]:hover{
  color:#226649!important;
  border-color:#6eae90!important;
  background:#eaf6f0!important;
  box-shadow:0 0 0 2px rgba(47,129,93,.08)!important;
}
body:not(.auth-page--login) .event-form .button[data-remove-row],
body:not(.auth-page--login) .event-form .button[data-remove-staff-plan-row]{
  color:#a6534d!important;
  border-color:#ddb5b1!important;
  background:#fff8f7!important;
}
body:not(.auth-page--login) .event-form .button[data-remove-row]:hover,
body:not(.auth-page--login) .event-form .button[data-remove-staff-plan-row]:hover{
  color:#8c3b35!important;
  border-color:#c98d87!important;
  background:#fff0ee!important;
  box-shadow:0 0 0 2px rgba(140,59,53,.07)!important;
}
body:not(.auth-page--login) .event-form .button[data-add-row]:focus-visible,
body:not(.auth-page--login) .event-form .button[data-add-staff-plan-row]:focus-visible,
body:not(.auth-page--login) .event-form .button[data-remove-row]:focus-visible,
body:not(.auth-page--login) .event-form .button[data-remove-staff-plan-row]:focus-visible{
  outline:2px solid rgba(76,96,112,.38)!important;
  outline-offset:2px!important;
}

/* TO-DO v3: jeden plochý seznam bez podsekcí. */
.todo-flat-selection{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:7px;
}
.todo-task-card--flat{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-height:0;
  padding:10px 12px;
  background:rgba(255,255,255,.7);
}
.todo-task-card--flat.has-pending-changes{
  border-color:rgba(188,125,46,.52);
  background:#fffaf1;
  box-shadow:0 0 0 1px rgba(188,125,46,.07);
}
.todo-task-card__selection{
  min-width:0;
  margin:0;
}
.event-todo-dispatch{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  min-width:0;
}
.event-todo-dispatch[hidden]{display:none!important}
.event-todo-dispatch__state{
  color:var(--muted);
  font-size:calc(.7rem + 1px);
  line-height:1.25;
  text-align:right;
  white-space:nowrap;
}
.event-todo-dispatch__state.is-warning{
  color:#945b18;
  font-weight:700;
}
.event-todo-dispatch.has-dispatch-error .event-todo-dispatch__state{
  color:#8c3b35;
  font-weight:700;
}
.event-todo-dispatch .button{
  flex:0 0 auto;
  white-space:nowrap;
}
.todo-task-card__copy{
  display:grid;
  gap:2px;
}
.todo-task-card__copy small{
  color:var(--muted);
  font-size:calc(.76rem + 1px);
  font-weight:400;
  line-height:1.35;
}
.todo-flat-list-panel{
  margin-bottom:20px;
}
.todo-flat-list{
  display:grid;
  gap:8px;
}
.todo-flat-item{
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  overflow:hidden;
  transition:border-color .16s ease, box-shadow .16s ease;
}
.todo-flat-item.has-pending-changes{
  border-color:rgba(188,125,46,.55);
  box-shadow:0 0 0 1px rgba(188,125,46,.08);
}
.todo-flat-item.is-done{
  background:rgba(247,249,247,.92);
}
.todo-flat-item__main{
  display:grid;
  grid-template-columns:minmax(130px,.8fr) minmax(220px,1.45fr) minmax(210px,1.35fr) auto;
  gap:14px;
  align-items:center;
  padding:12px 14px;
}
.todo-flat-item__status,
.todo-flat-item__task,
.todo-flat-item__event{
  display:grid;
  gap:4px;
  min-width:0;
}
.todo-flat-item__task > strong,
.todo-flat-item__event > strong,
.todo-flat-item__event > a{
  min-width:0;
  overflow-wrap:anywhere;
}
.todo-flat-item__task span,
.todo-flat-item__event span,
.todo-dispatch-state{
  color:var(--muted);
  font-size:calc(.76rem + 1px);
  line-height:1.35;
}
.todo-dispatch-state.is-warning{
  color:#9a5d13;
  font-weight:700;
}
.todo-flat-item__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:6px;
}
.todo-flat-item__actions form{
  margin:0;
}
.todo-flat-item__details{
  padding:0 14px 14px;
  border-top:1px solid var(--line);
  background:rgba(249,247,244,.72);
}
.todo-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding-top:12px;
}
.todo-detail-block{
  display:grid;
  align-content:start;
  gap:9px;
  min-width:0;
  padding:12px;
  border:1px solid rgba(122,98,70,.16);
  border-radius:14px;
  background:rgba(255,255,255,.86);
}
.todo-detail-block h4,
.todo-detail-block p{
  margin:0;
}
.todo-recipient-line{
  font-size:calc(.82rem + 1px);
  overflow-wrap:anywhere;
}
.todo-change-warning{
  padding:9px 10px;
  border:1px solid rgba(188,125,46,.35);
  border-radius:10px;
  background:#fff7e9;
  color:#7c4d16;
  font-size:calc(.8rem + 1px);
}

.button-warning{
  border-color:#c88736 !important;
  background:#c88736 !important;
  color:#fff !important;
}
.todo-attachment-list{
  display:grid;
  gap:6px;
  margin:0;
  padding:0;
  list-style:none;
}
.todo-attachment-list li{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:8px;
  align-items:center;
  padding:8px 9px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.todo-attachment-list li > a{
  overflow-wrap:anywhere;
  font-weight:700;
}
.todo-attachment-list li > small{
  color:var(--muted);
  white-space:nowrap;
}
.todo-attachment-list form{
  margin:0;
}
.todo-attachment-upload{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.todo-attachment-upload input[type="file"]{
  flex:1 1 220px;
  min-width:0;
}
.todo-preserve-lines{
  white-space:normal;
  overflow-wrap:anywhere;
}
.todo-secondary-action{
  grid-column:span 1;
}

/* Dashboard upozornění na úkoly. */
.dashboard-todo-notifications{
  margin-bottom:20px;
}
.dashboard-todo-notifications__list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:9px;
}
.dashboard-todo-notification{
  display:grid;
  gap:4px;
  padding:12px 13px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:inherit;
  text-decoration:none;
}
.dashboard-todo-notification:hover{
  border-color:rgba(155,111,69,.45);
  box-shadow:0 5px 16px rgba(72,52,34,.08);
}
.dashboard-todo-notification__state{
  width:max-content;
  padding:3px 7px;
  border-radius:999px;
  background:#f3eee7;
  color:var(--muted);
  font-size:calc(.68rem + 1px);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.dashboard-todo-notification--changes .dashboard-todo-notification__state,
.dashboard-todo-notification--overdue .dashboard-todo-notification__state{
  background:#fff0e2;
  color:#985216;
}
.dashboard-todo-notification > span:not(.dashboard-todo-notification__state),
.dashboard-todo-notification > small{
  color:var(--muted);
  font-size:calc(.78rem + 1px);
  line-height:1.4;
}

@media (max-width:1050px){
  .todo-flat-item__main{
    grid-template-columns:minmax(120px,.7fr) minmax(200px,1.25fr) minmax(200px,1.25fr);
  }
  .todo-flat-item__actions{
    grid-column:1/-1;
    justify-content:flex-start;
  }
}
@media (max-width:760px){
  .todo-flat-item__main,
  .todo-detail-grid{
    grid-template-columns:minmax(0,1fr);
  }
  .todo-flat-item__actions{
    grid-column:auto;
    justify-content:flex-start;
  }
  .todo-attachment-list li{
    grid-template-columns:minmax(0,1fr);
  }
  .todo-attachment-list li > small{
    white-space:normal;
  }
}
.dashboard-todo-notifications__empty{
  grid-column:1/-1;
  padding:14px;
}

.todo-purchase-links {
    display: grid;
    gap: 6px;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--line, #dedede);
}

.todo-purchase-links a {
    overflow-wrap: anywhere;
    font-size: calc(0.86rem + 1px);
}

.todo-purchase-readonly {
    margin-top: 8px;
    padding: 10px 12px;
    border: 1px solid var(--line, #dedede);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.55);
    white-space: normal;
}

.todo-purchase-editor{
  display:grid;
  gap:5px;
  min-width:0;
}
.todo-task-card__purchase-panel{
  grid-column:1/-1;
  min-width:0;
  padding:8px 6px 4px 25px;
}
.todo-task-card__purchase-panel[hidden]{display:none!important}

.todo-purchase-launch{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid rgba(122,98,70,.18);
  border-radius:11px;
  background:rgba(255,255,255,.48);
}
.todo-purchase-launch__copy{
  display:grid;
  gap:3px;
  min-width:0;
}
.todo-purchase-launch__copy small{
  color:var(--muted);
  font-size:calc(.72rem + 1px);
  line-height:1.35;
}

.purchase-editor-modal[hidden]{display:none!important}
.purchase-editor-modal{
  position:fixed;
  inset:0;
  z-index:10080;
  display:grid;
  place-items:center;
  padding:16px;
}
.purchase-editor-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(31,24,18,.42);
  backdrop-filter:blur(3px);
}
.purchase-editor-modal__dialog{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  width:min(1180px,calc(100vw - 32px));
  max-height:calc(100vh - 32px);
  overflow:hidden;
  border:1px solid rgba(122,98,70,.24);
  border-radius:18px;
  background:var(--surface,#fffdfa);
  box-shadow:0 24px 70px rgba(50,35,24,.24);
}
.purchase-editor-modal__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:10px 14px 8px;
  border-bottom:1px solid var(--line);
}
.purchase-editor-modal__header>div{
  display:grid;
  gap:4px;
  min-width:0;
}
.purchase-editor-modal__header h3{
  margin:0;
  font-size:calc(1.25rem + 1px);
}
.purchase-editor-modal__header p{
  margin:0;
  color:var(--muted);
  font-size:calc(.78rem + 1px);
  line-height:1.4;
}
.purchase-editor-modal__close{
  flex:0 0 auto;
  width:34px;
  height:34px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:calc(1.15rem + 1px);
  line-height:1;
  cursor:pointer;
}
.purchase-editor-modal__close:hover{border-color:rgba(155,111,69,.5)}
.purchase-editor-modal .todo-purchase-editor{
  min-height:0;
  overflow:auto;
  padding:8px 14px;
}
.purchase-editor-modal__footer{
  display:flex;
  justify-content:flex-end;
  padding:8px 14px 10px;
  border-top:1px solid var(--line);
}
body.purchase-modal-open{overflow:hidden}

.todo-purchase-editor__head,
.todo-purchase-editor__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.todo-purchase-editor__head>div{
  display:grid;
  gap:3px;
  min-width:0;
}
.todo-purchase-editor__head small{
  color:var(--muted);
  font-size:calc(.72rem + 1px);
  line-height:1.35;
}
.todo-purchase-editor__table-scroll{
  min-width:0;
  overflow-x:auto;
  padding-bottom:3px;
}
.todo-purchase-editor__columns,
.todo-purchase-row{
  display:grid;
  grid-template-columns:minmax(145px,1.25fr) minmax(76px,.55fr) minmax(170px,1.35fr) minmax(130px,1fr) minmax(88px,.65fr) 30px;
  gap:8px;
  align-items:center;
  min-width:680px;
  width:100%;
  box-sizing:border-box;
}
.todo-purchase-editor__columns{
  padding:0 6px 2px;
  color:var(--muted);
  font-size:calc(.66rem + 1px);
  font-weight:600;
}
.todo-purchase-editor__columns span:nth-child(5){text-align:center}
.todo-purchase-editor__list{
  display:grid;
  gap:2px;
  min-width:680px;
}
.todo-purchase-row{
  padding:3px 6px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(255,255,255,.62);
}
.todo-purchase-row.is-purchased{
  border-color:rgba(85,145,102,.38);
  background:rgba(238,248,239,.72);
}
.todo-purchase-row label{
  min-width:0;
  margin:0;
}
.todo-purchase-editor--single-line .todo-purchase-row label>span:first-child:not(.todo-purchase-url-field){
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.todo-purchase-row input[type="text"],
.todo-purchase-row input[type="url"]{
  min-width:0;
  width:100%;
  height:30px;
  padding:4px 7px;
  font-size:calc(.76rem + 1px);
}
.todo-purchase-url-field{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 30px;
  gap:4px;
  align-items:center;
  margin:0!important;
}
.todo-purchase-url-open{
  display:inline-grid;
  place-items:center;
  width:28px;
  height:30px;
  padding:0;
  border:1px solid rgba(40,135,100,.38);
  border-radius:8px;
  background:rgba(235,248,242,.9);
  color:#177b58;
  font:inherit;
  font-size:calc(.9rem + 1px);
  font-weight:700;
  cursor:pointer;
}
.todo-purchase-url-open:hover:not(:disabled){
  border-color:#17845f;
  background:rgba(225,245,236,.95);
}
.todo-purchase-url-open:disabled{
  opacity:.32;
  cursor:default;
}
.todo-purchase-row__done{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:0;
  min-height:30px;
  padding:2px 5px;
  border:1px solid var(--line);
  border-radius:9px;
  background:rgba(255,255,255,.72);
}
.todo-purchase-row__done>span:first-of-type{
  display:inline!important;
  margin:0!important;
  color:var(--ink)!important;
  font-size:calc(.68rem + 1px) !important;
  font-weight:700;
  white-space:nowrap;
}
.todo-purchase-row__done small{
  display:none;
}
.todo-purchase-row>.row-control-button{
  align-self:center;
  justify-self:center;
}
.todo-purchase-row__status{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:30px;
}
.todo-purchase-row__status .badge{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.todo-purchase-editor__note{
  margin:0;
}
.todo-purchase-editor__note textarea{
  min-height:42px;
  padding-top:6px;
  padding-bottom:6px;
}
.todo-purchase-editor__workflow-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-top:8px;
  color:var(--muted);
  font-size:calc(.72rem + 1px);
}
.todo-purchase-readonly-list{
  display:grid;
  gap:7px;
  margin-top:8px;
}
.todo-purchase-readonly-row{
  display:grid;
  grid-template-columns:auto minmax(150px,1fr) auto auto;
  gap:8px 10px;
  align-items:center;
  padding:9px 10px;
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(255,255,255,.55);
}
.todo-purchase-readonly-row.is-purchased{
  border-color:rgba(85,145,102,.34);
  background:rgba(238,248,239,.68);
}
.todo-purchase-readonly-row small{
  grid-column:2/-1;
  color:var(--muted);
}
.todo-purchase-readonly-row a{
  white-space:nowrap;
}
@media (max-width:720px){
  .todo-task-card__purchase-panel{padding-left:4px;padding-right:4px}
  .todo-purchase-launch{align-items:flex-start;flex-direction:column}
  .todo-purchase-launch .button{width:100%}
  .purchase-editor-modal{padding:8px}
  .purchase-editor-modal__dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}
  .purchase-editor-modal__header{padding:14px}
  .purchase-editor-modal .todo-purchase-editor{padding:12px 14px}
  .purchase-editor-modal__footer{padding:10px 14px 14px}
  .todo-purchase-editor__workflow-link{align-items:flex-start;flex-direction:column}
  .todo-purchase-readonly-row{grid-template-columns:auto minmax(0,1fr)}
  .todo-purchase-readonly-row a,
  .todo-purchase-readonly-row>span:not(.badge){grid-column:2}
  .todo-purchase-readonly-row small{grid-column:2}
}

/* Sekce 8 má vlastní BEO proměnné; BEO se již nekopíruje do kalkulací. */
.event-table--recipes .col-date{width:12%}
.event-table--recipes .col-label{width:44%}
.event-table--recipes .col-qty{width:12%}
.event-table--recipes .col-offer{width:8%}
.event-table--recipes .col-pptx-token{width:14%}
.event-table--recipes .col-actions{width:10%}
body:not(.auth-page--login) .event-form .event-table--recipes .event-pptx-token-cell code{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:58px;
  min-height:24px;
  padding:2px 7px;
  border:1px solid rgba(50,93,72,.24);
  border-radius:6px;
  background:rgba(255,255,255,.64);
  color:#265e45;
  font-size:calc(.68rem + 1px);
  font-weight:750;
  white-space:nowrap;
}

/* Event form: TO-DO lze schválit / rozeslat přímo u konkrétního úkolu. */
body:not(.auth-page--login) .event-form .todo-task-card--flat{
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px;
  padding:3px 4px!important;
}
body:not(.auth-page--login) .event-form .todo-task-card--flat .todo-task-card__selection{
  min-height:22px;
  padding:2px 4px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body:not(.auth-page--login) .event-form .todo-task-card--flat .todo-task-card__copy{
  display:grid!important;
  align-items:center;
  gap:1px;
  min-width:0;
  line-height:1.12;
}
body:not(.auth-page--login) .event-form .todo-task-card--flat .todo-task-card__copy small{
  line-height:1.15;
}
body:not(.auth-page--login) .event-form .event-todo-dispatch{
  gap:5px;
}
body:not(.auth-page--login) .event-form .event-todo-dispatch__state{
  max-width:118px;
  font-size:calc(.61rem + 1px);
  white-space:normal;
}
body:not(.auth-page--login) .event-form .event-todo-dispatch .button{
  min-height:24px!important;
  padding:2px 8px!important;
  border-radius:5px!important;
  font-size:calc(.65rem + 1px) !important;
  line-height:18px!important;
  box-shadow:none!important;
}
@media (max-width:900px){
  body:not(.auth-page--login) .event-form .todo-task-card--flat{
    grid-template-columns:minmax(0,1fr);
  }
  body:not(.auth-page--login) .event-form .event-todo-dispatch{
    justify-content:flex-start;
    padding:0 4px 3px 21px;
  }
  body:not(.auth-page--login) .event-form .event-todo-dispatch__state{
    max-width:none;
    text-align:left;
  }
}

/* Sekce 2 - evidence vratek a spotreby napoju. */
.event-table .drink-return-row td{padding-top:4px;padding-bottom:6px;background:rgba(255,255,255,.42);border-top:1px dashed rgba(122,98,70,.2)}
.drink-return-row__label{display:flex;align-items:baseline;gap:7px;min-width:0}
.drink-return-row__label strong{order:1;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:calc(.72rem + 1px);font-weight:700;color:var(--ink)}
.drink-return-row__label small{order:2;flex:0 0 auto;margin-left:auto;text-align:right;font-size:calc(.62rem + 1px);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.drink-consumption{display:inline-flex;align-items:center;gap:5px;font-size:calc(.7rem + 1px);color:var(--muted);white-space:nowrap}
.drink-consumption strong{color:var(--ink)}
.drink-return-row.is-over-returned .drink-consumption,.drink-return-row.is-over-returned .drink-consumption strong{color:var(--danger)}

/* Sekce 4 - dokumenty a doklady navazane na event. */
.todo-task-card__actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0;flex-wrap:wrap}
.todo-task-card--documents .todo-task-card__actions{grid-column:1/-1;width:100%;padding-left:25px;justify-content:stretch}
.todo-document-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px;width:100%;min-width:0}
.todo-document-actions[hidden]{display:none!important}
.todo-document-list{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0;width:100%}
.todo-document-list:empty{display:none}
.todo-document-item{display:grid;grid-template-columns:minmax(0,1fr) 28px;align-items:center;min-width:0;width:100%;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.82);overflow:hidden}
.todo-document-open{display:flex;align-items:center;gap:7px;min-width:0;width:100%;padding:6px 8px;border:0;background:transparent;color:var(--ink);font:inherit;cursor:pointer;text-align:left}
.todo-document-open:hover .todo-document-name{text-decoration:underline}
.todo-document-file-icon{width:17px;height:17px;flex:0 0 17px;display:grid;place-items:center;color:var(--accent-dark)}
.todo-document-file-icon svg,.todo-document-icon-button svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.todo-document-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(.68rem + 1px);font-weight:700}
.todo-document-icon-button{width:29px;height:29px;flex:0 0 29px;display:grid;place-items:center;padding:6px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);cursor:pointer}
.todo-document-icon-button:hover{background:var(--paper-soft)}
.todo-document-icon-button:disabled{opacity:.45;cursor:wait}
.todo-document-icon-button--add{
  grid-column:2;
  grid-row:1;
  justify-self:end;
  width:24px;
  height:24px;
  flex-basis:24px;
  padding:4px;
  border-color:#9fcab5;
  border-radius:7px;
  background:#f4faf7;
  color:#2f815d;
}
.todo-document-icon-button--add:hover{border-color:#6eae90;background:#eaf6f0;color:#226649;box-shadow:0 0 0 2px rgba(47,129,93,.08)}
.todo-document-icon-button--delete{width:28px;height:28px;flex-basis:28px;border:0;border-left:1px solid var(--line);border-radius:0;color:var(--danger);background:transparent}
.todo-document-status{grid-column:1;grid-row:1;align-self:center;justify-self:end;max-width:100%;white-space:normal;font-size:calc(.61rem + 1px);line-height:1.2;text-align:right}
.todo-document-status:empty{display:none}
.todo-document-dialog{width:min(1100px,calc(100vw - 28px));height:min(820px,calc(100vh - 28px));padding:0;border:0;border-radius:20px;background:var(--paper);box-shadow:0 24px 70px rgba(45,33,20,.24);overflow:hidden}
.todo-document-dialog::backdrop{background:rgba(24,20,16,.55);backdrop-filter:blur(3px)}
.todo-document-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.todo-document-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line);background:var(--paper-soft)}
.todo-document-dialog__header .eyebrow{margin-bottom:4px}
.todo-document-dialog__header h3{max-width:min(760px,72vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(1.05rem + 1px)}
.todo-document-dialog__close{width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);font-size:calc(1.35rem + 1px);line-height:1;cursor:pointer}
.todo-document-dialog__body{min-height:0;background:#ece8e3}
.todo-document-dialog iframe{display:block;width:100%;height:100%;border:0;background:#fff}

/* Service sequence přílohy v Event formu. */
.service-sequence-documents{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.52)}
.service-sequence-documents__head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.service-sequence-documents__head>div{display:grid;gap:2px;min-width:0}
.service-sequence-documents__upload{flex:0 0 auto;margin:0}
.service-sequence-documents__list{grid-row:auto;display:grid;gap:6px}
.service-sequence-document-item{grid-template-columns:20px minmax(0,1fr) auto;gap:7px;padding:5px 6px 5px 8px;overflow:visible}
.service-sequence-document-item>.todo-document-file-icon{grid-column:1;align-self:center}
.service-sequence-document-item>.todo-document-name{grid-column:2;white-space:normal;overflow-wrap:anywhere;line-height:1.25}
.service-sequence-document-item__actions{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;min-width:0}
.service-sequence-document-item__actions .todo-document-icon-button--delete{border:1px solid var(--line);border-radius:8px;background:#fff}
.service-sequence-documents>.todo-document-status{grid-column:1;grid-row:auto;justify-self:stretch;text-align:left}
@media (max-width:760px){
  .service-sequence-documents__head{align-items:flex-start;flex-direction:column}
  .service-sequence-document-item{grid-template-columns:20px minmax(0,1fr)}
  .service-sequence-document-item__actions{grid-column:1/-1;justify-content:flex-start;padding-left:27px}
}
@media (max-width:900px){
  body:not(.auth-page--login) .event-form .todo-task-card__actions{justify-content:flex-start;padding:0 4px 3px 21px}
  body:not(.auth-page--login) .event-form .todo-task-card--documents .todo-task-card__actions{width:100%;justify-content:stretch}
  body:not(.auth-page--login) .event-form .todo-task-card__actions .event-todo-dispatch{padding:0}
  .todo-document-status{max-width:none}
}
@media (max-width:760px){
  .todo-task-card--documents .todo-task-card__actions{padding-left:21px}
  .todo-document-dialog{width:calc(100vw - 14px);height:calc(100vh - 14px);border-radius:14px}
  .todo-document-dialog__header{padding:12px 14px}
}

/* Mezinárodní telefon uživatele: předvolba a národní číslo se zadávají odděleně. */
.phone-field{
  margin:0;
  padding:0;
  min-width:0;
  border:0;
}
.phone-field legend{
  margin:0 0 8px;
  padding:0;
}
.phone-field__controls{
  display:grid;
  grid-template-columns:minmax(120px,170px) minmax(0,1fr);
  gap:10px;
}
.phone-field__controls select,
.phone-field__controls input{
  min-width:0;
}
@media (max-width:640px){
  .phone-field__controls{
    grid-template-columns:minmax(0,1fr);
  }
}

/* Telefon finálního klienta: země/předvolba a číslo v oddělených částech. */
.segmented-phone-field{
  display:grid;
  gap:8px;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
}
.segmented-phone-field legend{
  margin:0;
  padding:0;
}
.segmented-phone-field__controls{
  display:grid;
  align-items:stretch;
  justify-content:start;
  min-width:0;
}
.segmented-phone-field__controls select,
.segmented-phone-field__controls input[data-segmented-phone-part]{
  min-width:0;
  width:100%;
  height:100%;
  margin:0;
}
.segmented-phone-field__controls select{
  font-variant-numeric:tabular-nums;
}
.segmented-phone-field__controls input[data-segmented-phone-part]{
  text-align:center;
  font-variant-numeric:tabular-nums;
}

/* iOS Safari/Chrome/PWA automaticky zoomuje formulář při focusu na pole s písmem pod 16 px.
   Na Event formu držíme na iPhonu vstupní prvky minimálně na 16 px, takže po psaní stránka nezůstane přiblížená. */
@supports (-webkit-touch-callout: none){
  @media (max-width:900px){
    .event-form input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),
    .event-form select,
    .event-form textarea{font-size:calc(max(16px,calc(16px * var(--font-scale))) + 1px) !important}
  }
}

/* Compact event-list filters: use page width instead of one control per row. */
.event-filters-compact{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 16px;
  align-items:end;
}
.event-filters-compact>label{min-width:0;margin:0}
.event-filters-compact .filter-actions{grid-column:1/-1;margin-top:2px}
@media (max-width:720px){
  .event-filters-compact{grid-template-columns:1fr}
  .event-filters-compact .filter-actions{grid-column:1}
}

/* PWA push controls. */
.pwa-push-panel{margin-bottom:20px}
.pwa-push-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.pwa-push-status-grid>div{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--paper-soft)}
.pwa-push-status-grid span{font-size:calc(.78rem + 1px);color:var(--muted)}
.pwa-push-status-grid strong{font-size:calc(.94rem + 1px);overflow-wrap:anywhere}
.pwa-push-message{margin:14px 0}
.pwa-push-actions{margin-top:0}
@media (max-width:760px){
  .pwa-push-status-grid{grid-template-columns:1fr}
  .pwa-push-actions .button{width:100%}
}

.button-danger-outline{border-color:#dca39b!important;color:#a13d32!important}

/* 2026-08-20: jednotné + / − ovládání dynamických řádků a polí v celé aplikaci. */
body:not(.auth-page--login) .row-control-button{
  display:inline-grid!important;
  place-items:center!important;
  width:24px!important;
  min-width:24px!important;
  max-width:24px!important;
  height:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  margin:0!important;
  padding:0!important;
  border-width:1px!important;
  border-style:solid!important;
  border-radius:7px!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:calc(1rem + 1px) !important;
  font-weight:700!important;
  line-height:1!important;
  transform:none!important;
  text-decoration:none!important;
  transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease!important;
}
body:not(.auth-page--login) .row-control-button--add{
  color:#2f815d!important;
  border-color:#9fcab5!important;
  background:#f4faf7!important;
}
body:not(.auth-page--login) .row-control-button--add:hover{
  color:#226649!important;
  border-color:#6eae90!important;
  background:#eaf6f0!important;
  box-shadow:0 0 0 2px rgba(47,129,93,.08)!important;
}
body:not(.auth-page--login) .row-control-button--remove{
  color:#a6534d!important;
  border-color:#ddb5b1!important;
  background:#fff8f7!important;
}
body:not(.auth-page--login) .row-control-button--remove:hover{
  color:#8c3b35!important;
  border-color:#c98d87!important;
  background:#fff0ee!important;
  box-shadow:0 0 0 2px rgba(140,59,53,.07)!important;
}
body:not(.auth-page--login) .row-control-button:focus-visible{
  outline:2px solid rgba(76,96,112,.38)!important;
  outline-offset:2px!important;
}
.event-offer-language-badge{margin-left:5px;vertical-align:middle;}
.event-offer-version-icon{display:grid!important;place-items:center;align-content:center;gap:1px;line-height:1!important;}
.event-offer-version-icon small{font-family:inherit;font-size:calc(calc(8px * var(--font-scale)) + 1px);font-weight:800;letter-spacing:.08em;}

/* Osobní TO-DO zvoneček: zobrazuje pouze rozeslané úkoly, které čekají na potvrzení přihlášeným příjemcem. */
.app-todo-bell{position:relative;flex:0 0 auto}
.app-todo-bell>summary{list-style:none}
.app-todo-bell>summary::-webkit-details-marker{display:none}
.app-todo-bell>summary::marker{content:''}
.app-todo-bell__button{position:relative;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;color:var(--muted);background:rgba(255,255,255,.72);cursor:pointer;transition:.16s ease}
.app-todo-bell__button:hover,.app-todo-bell[open] .app-todo-bell__button,.app-todo-bell.has-items .app-todo-bell__button{color:var(--accent-dark);border-color:rgba(155,111,69,.42);background:#fff;box-shadow:0 8px 20px rgba(71,49,29,.08)}
.app-todo-bell__button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.app-todo-bell__count{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border:2px solid #fff;border-radius:999px;background:#b0443d;color:#fff;font-size:calc(.66rem + 1px);font-weight:800;line-height:1}
.app-todo-bell__count[hidden]{display:none!important}
.app-todo-bell__popover{position:absolute;z-index:160;top:calc(100% + 10px);right:0;width:min(390px,calc(100vw - 28px));border:1px solid var(--line);background:#fff;box-shadow:0 22px 55px rgba(43,32,21,.18)}
.app-todo-bell__head{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);background:var(--paper-soft)}
.app-todo-bell__head>div{display:grid;gap:2px}
.app-todo-bell__head small{color:var(--muted);font-size:calc(.7rem + 1px)}
.app-todo-bell__list{max-height:min(430px,62vh);overflow:auto;}
.app-todo-bell__item{display:grid;gap:4px;transition:background .14s ease}
.app-todo-bell__item:hover{background:var(--paper-soft)}
.app-todo-bell__item.is-overdue{background:#fff5f2}
.app-todo-bell__item.is-overdue:hover{background:#ffede8}
.app-todo-bell__item-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}
.app-todo-bell__item-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(.82rem + 1px)}
.app-todo-bell__item-title em{flex:0 0 auto;color:var(--accent-dark);font-size:calc(.68rem + 1px);font-style:normal;font-weight:700}
.app-todo-bell__item>span:not(.app-todo-bell__item-title){color:var(--muted);font-size:calc(.72rem + 1px);line-height:1.35}
.app-todo-bell__item small{color:var(--muted);font-size:calc(.66rem + 1px);font-weight:700}
.app-todo-bell__item.is-overdue small{color:var(--danger)}
.app-todo-bell__empty{padding:22px 16px;color:var(--muted);font-size:calc(.78rem + 1px);line-height:1.45;text-align:center}
.app-todo-bell__empty[hidden]{display:none!important}
.app-todo-bell__footer{display:block;padding:10px 14px;border-top:1px solid var(--line);background:var(--paper-soft);color:var(--accent-dark);font-size:calc(.74rem + 1px);font-weight:700;text-align:center}

/* Stav dokončení je společný pro pracovní TO-DO i Sekci 4 konkrétního eventu. */
.todo-completion-meta{color:var(--muted);font-size:calc(.66rem + 1px);line-height:1.25}
.todo-assignee-only-note{max-width:160px;color:var(--muted);font-size:calc(.66rem + 1px);line-height:1.25;text-align:right}
.event-todo-completion-state{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}
.event-todo-completion-state small{max-width:210px;overflow:hidden;color:var(--muted);font-size:calc(.62rem + 1px);line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.event-todo-completion-state.is-done small{color:#3c7059}

@media (max-width:760px){
  .app-todo-bell__popover{position:fixed;top:70px;right:10px;left:10px;width:auto;max-height:calc(100vh - 90px)}
  .app-todo-bell__list{max-height:calc(100vh - 190px)}
  .event-todo-completion-state{justify-content:flex-start;flex-wrap:wrap}
  .todo-assignee-only-note{text-align:left}
}

/* Role a oprávnění: tato jediná administrativní tabulka se musí vejít do obsahu bez vodorovného scrollu. */
body:not(.auth-page--login) .role-permission-card .table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:hidden!important;
  scrollbar-gutter:auto!important;
}

/* Nákupy a objednávky – faktury nahrávané přímo z editoru nákupního seznamu. */
.purchase-editor-toolbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex:0 0 auto;
}
.purchase-invoice-controls{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
}
.purchase-invoice-upload-button{
  width:28px;
  height:28px;
  flex-basis:28px;
  padding:5px;
  border-color:#9fcab5;
  background:#f4faf7;
  color:#2f815d;
}
.purchase-invoice-upload-button:hover:not(:disabled){
  border-color:#6eae90;
  background:#eaf6f0;
  color:#226649;
}
.purchase-invoice-status{
  max-width:260px;
  font-size:calc(.65rem + 1px);
  line-height:1.25;
  text-align:right;
}
.purchase-invoice-status:empty{display:none}
.purchase-invoice-list{
  display:flex;
  align-items:center;
  gap:5px;
  min-width:0;
  overflow-x:auto;
  padding:1px 0 3px;
}
.purchase-invoice-list:empty{display:none}
.purchase-invoice-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px;
  align-items:center;
  flex:0 0 min(280px,72vw);
  min-width:180px;
  max-width:360px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(255,255,255,.82);
  overflow:hidden;
}
.purchase-invoice-open{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  width:100%;
  padding:5px 7px;
  border:0;
  background:transparent;
  color:var(--ink);
  font:inherit;
  cursor:pointer;
  text-align:left;
}
.purchase-invoice-open>span:last-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:calc(.68rem + 1px);
  font-weight:700;
}
.purchase-invoice-open:hover>span:last-child{text-decoration:underline}
.todo-attachment-list__invoice{
  grid-template-columns:minmax(0,1fr) auto auto!important;
}
.todo-attachment-main{
  display:grid;
  gap:2px;
  min-width:0;
}
.todo-attachment-main strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.todo-attachment-main small{
  color:var(--muted);
  font-size:calc(.68rem + 1px);
}
.todo-attachment-actions{
  display:flex;
  align-items:center;
  gap:5px;
  flex-wrap:wrap;
}
.todo-secondary-action--purchase-invoices .button:disabled{
  opacity:.5;
  cursor:not-allowed;
}
@media (max-width:720px){
  .todo-purchase-editor__toolbar{
    align-items:flex-start;
  }
  .purchase-editor-toolbar-actions{
    align-items:flex-end;
    flex-direction:column-reverse;
  }
  .purchase-invoice-status{max-width:180px}
  .todo-attachment-list__invoice{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .todo-attachment-actions{justify-content:flex-start}
}

/* 2026-08-21: mobilni viewport containment.
   Siroke tabulky/formulare mohou rolovat uvnitr vlastniho kontejneru,
   ale nesmi rozsirit celou aplikaci mimo sirku telefonu. */
@media (max-width:1100px){
  html,
  body:not(.auth-page--login){
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }
  @supports (overflow:clip){
    body:not(.auth-page--login){overflow-x:clip}
  }
  body:not(.auth-page--login) .shell,
  body:not(.auth-page--login) .content,
  body:not(.auth-page--login) .content > *,
  body:not(.auth-page--login) .panel,
  body:not(.auth-page--login) .grid,
  body:not(.auth-page--login) .stack,
  body:not(.auth-page--login) .stack-md,
  body:not(.auth-page--login) .stack-lg,
  body:not(.auth-page--login) .page-header,
  body:not(.auth-page--login) .page-header__title-group,
  body:not(.auth-page--login) .header-actions,
  body:not(.auth-page--login) .inline-actions,
  body:not(.auth-page--login) .form-actions,
  body:not(.auth-page--login) .filter-actions{
    min-width:0;
    max-width:100%;
  }
  body:not(.auth-page--login) .content{
    width:100%;
    
  }
  body:not(.auth-page--login) .table-wrap,
body:not(.auth-page--login) .preview-table-wrap,
body:not(.auth-page--login) .itinerary-admin-table-wrap,
body:not(.auth-page--login) .itinerary-history-wrap,
body:not(.auth-page--login) .todo-purchase-editor__table-scroll{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
  }
  body:not(.auth-page--login) img,
  body:not(.auth-page--login) video,
  body:not(.auth-page--login) canvas{
    max-width:100%;
  }
}

@media (max-width:720px){
  body:not(.auth-page--login) .content{
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
  }
  body:not(.auth-page--login) .panel{
    min-width:0;
    max-width:100%;
    padding-left:14px;
    padding-right:14px;
  }
  body:not(.auth-page--login) .panel-head{
    min-width:0;
    max-width:100%;
    flex-wrap:wrap;
  }
  body:not(.auth-page--login) .panel-head > *,
  body:not(.auth-page--login) .page-header > *,
  body:not(.auth-page--login) .header-actions > *{
    min-width:0;
    max-width:100%;
  }
  body:not(.auth-page--login) input,
  body:not(.auth-page--login) select,
  body:not(.auth-page--login) textarea{
    min-width:0;
    max-width:100%;
  }
}

/* Central role colour system */
.role-tone--super-admin{--role-color:#76539a;--role-soft:#f1e9f7;--role-ink:#55356f}
.role-tone--sys-admin{--role-color:#4d74a6;--role-soft:#e9f0f8;--role-ink:#35577e}
.role-tone--head-user{--role-color:#9b6f45;--role-soft:#f5ece3;--role-ink:#6f4a2d}
.role-tone--event-user{--role-color:#4d8664;--role-soft:#e7f2ea;--role-ink:#2f6847}
.role-tone--logistics{--role-color:#bd852f;--role-soft:#fff1d9;--role-ink:#765019}
.role-tone--personnel{--role-color:#ad5f78;--role-soft:#f8e9ee;--role-ink:#7a3c53}
.role-tone--cooks{--role-color:#b65e38;--role-soft:#faebe4;--role-ink:#7d3d23}
.role-tone--assistant{--role-color:#54858d;--role-soft:#e6f1f2;--role-ink:#35646a}
.role-tone--unknown{--role-color:#8a8176;--role-soft:#f0ede9;--role-ink:#5e574f}

.role-badge{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 9px 4px 10px;
  border:1px solid var(--role-color,#8a8176);
  border-left-width:4px;
  border-radius:999px;
  background:var(--role-soft,#f0ede9);
  color:var(--role-ink,#5e574f);
  font-size:calc(.76rem + 1px);
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
  vertical-align:middle;
}
.role-badge-group{
  display:inline-flex;
  align-items:stretch;
  max-width:100%;
  border:1px solid rgba(122,98,70,.16);
  border-radius:999px;
  overflow:hidden;
  vertical-align:middle;
  box-shadow:0 1px 2px rgba(58,43,29,.04);
}
.role-badge__segment{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 9px;
  background:var(--role-soft,#f0ede9);
  color:var(--role-ink,#5e574f);
  box-shadow:inset 0 3px 0 var(--role-color,#8a8176);
  font-size:calc(.74rem + 1px);
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
}
.role-badge__segment + .role-badge__segment{border-left:1px solid rgba(122,98,70,.16)}

.role-choice-card{
  position:relative;
  overflow:hidden;
}
.role-choice-card[class*="role-tone--"]{
  border-left:4px solid var(--role-color);
  background:linear-gradient(90deg,var(--role-soft) 0,rgba(255,255,255,.92) 42%);
}
.role-choice-card[class*="role-tone--"]:hover{border-color:var(--role-color)}
.role-choice-card[class*="role-tone--"] input[type="checkbox"]{accent-color:var(--role-color)}
.role-choice-card .role-badge-group{width:max-content;max-width:100%}

.role-permission-card[class*="role-tone--"]{
  border-left:5px solid var(--role-color);
}
.role-permission-card[class*="role-tone--"]>summary{
  background:linear-gradient(90deg,var(--role-soft) 0,var(--paper-soft) 36%);
}
.role-permission-card[class*="role-tone--"]>summary .role-badge{font-size:calc(.82rem + 1px)}
.role-permission-card[class*="role-tone--"] .role-action-check input{accent-color:var(--role-color)}

.news-readers__list .role-badge{
  margin-top:4px;
  min-height:21px;
  padding:2px 7px 2px 8px;
  font-size:calc(.66rem + 1px);
}

@media (max-width:720px){
  .role-badge-group{border-radius:14px;flex-wrap:wrap}
  .role-badge__segment{white-space:normal}
  .role-badge__segment + .role-badge__segment{border-left:0;border-top:1px solid rgba(122,98,70,.16)}
}

/* Přehled eventů: počet výsledků a kompaktní hromadné akce v dialogu. */
.event-filter-count{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  min-height:34px;
  margin-top:-2px;
}
.event-filter-count small{color:var(--muted);font-size:calc(.73rem + 1px)}
.event-filter-count strong{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 11px;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--paper-soft);
  color:var(--accent-dark);
  font-size:calc(.78rem + 1px);
}
.event-directory__pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid var(--line);
}
.event-directory__page-size-form{
  display:flex;
  align-items:end;
  gap:8px;
  margin:0;
}
.event-directory__page-size-field{
  display:grid;
  gap:4px;
  min-width:170px;
}
.event-directory__page-size-field>span{
  color:var(--muted);
  font-size:calc(.71rem + 1px);
}
.event-directory__page-size-field select{
  min-width:170px;
  min-height:34px;
  padding-top:5px;
  padding-bottom:5px;
}
.event-directory__pager{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  min-width:0;
}
.event-directory__pager-summary{
  color:var(--muted);
  font-size:calc(.73rem + 1px);
  white-space:nowrap;
}
.event-directory__pager-links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
  flex-wrap:wrap;
}
.event-directory__pager-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--paper-soft);
  color:var(--ink);
  font-size:calc(.72rem + 1px);
  font-weight:600;
  line-height:1;
  text-decoration:none;
}
.event-directory__pager-link:hover{
  border-color:rgba(155,111,69,.45);
  background:#f5ede4;
}
.event-directory__pager-link.is-active{
  border-color:var(--accent);
  background:var(--accent);
  color:#fff;
}
.event-directory__pager-link.is-disabled{
  opacity:.45;
  cursor:default;
}
.event-directory__pager-gap{
  min-width:20px;
  color:var(--muted);
  text-align:center;
}
.event-offer-directory__head{
  flex-wrap:wrap;
  align-items:center;
}
.event-offer-directory__head>div{
  flex:1 1 32rem;
  min-width:0;
}
.event-offer-page-size-form{
  flex:0 1 auto;
  margin:0;
}
.event-offer-bulk-toolbar .event-directory__toolbar-actions{
  flex-wrap:wrap;
  min-width:0;
}
.event-offer-bulk-toolbar .event-directory__selection-summary{
  align-self:stretch;
  min-height:40px;
  padding:4px 10px;
  gap:0;
  line-height:1.2;
}
.event-offer-bulk-toolbar .event-offer-storage-total--toolbar,
.event-offer-bulk-toolbar .event-directory__bulk-open{
  align-self:stretch;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0;
}
.event-directory__toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
  padding:2px 0 14px;
  border-bottom:1px solid var(--line);
}
.event-directory__toolbar-copy{
  display:grid;
  gap:3px;
  min-width:0;
  max-width:760px;
}
.event-directory__toolbar-copy strong{color:var(--ink)}
.event-directory__toolbar-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
}
.event-directory__selection-summary{
  display:grid;
  gap:2px;
  min-width:116px;
  padding:7px 11px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--paper-soft);
}
.event-directory__selection-summary strong{color:var(--accent-dark);font-size:calc(.82rem + 1px)}
.event-directory__selection-summary span{color:var(--muted);font-size:calc(.69rem + 1px)}
.event-directory__bulk-open{white-space:nowrap}

body.event-bulk-modal-open{overflow:hidden}
.event-directory__bulk-modal[hidden]{display:none!important}
.event-directory__bulk-modal{
  position:fixed;
  inset:0;
  z-index:10020;
  display:grid;
  place-items:center;
  padding:max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
}
.event-directory__bulk-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(32,24,18,.58);
  backdrop-filter:blur(7px);
}
.event-directory__bulk-dialog{
  position:relative;
  z-index:1;
  width:min(920px,100%);
  max-height:min(820px,calc(100vh - 36px));
  overflow:auto;
  border:1px solid rgba(155,111,69,.28);
  border-radius:22px;
  background:#fff;
  box-shadow:0 30px 90px rgba(30,20,12,.34);
}
.event-directory__bulk-dialog-header{
  position:sticky;
  top:0;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:20px 22px 17px;
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(10px);
}
.event-directory__bulk-dialog-header>div{display:grid;gap:4px;min-width:0}
.event-directory__bulk-dialog-header .eyebrow{margin:0;color:var(--accent-dark);font-size:calc(.62rem + 1px);letter-spacing:.08em}
.event-directory__bulk-dialog-header h2{margin:0;font-size:calc(1.35rem + 1px);line-height:1.2}
.event-directory__bulk-dialog-header p{margin:0;color:var(--muted);font-size:calc(.82rem + 1px)}
.event-directory__bulk-dialog-header p strong{color:var(--ink)}
.event-directory__bulk-dialog-close{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--paper-soft);
  color:var(--ink);
  font-size:calc(1.45rem + 1px);
  line-height:1;
  cursor:pointer;
}
.event-directory__bulk-dialog-close:hover{border-color:rgba(155,111,69,.5);background:#f5ede4}
.event-directory__bulk-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  width:100%;
  min-width:0;
  margin:0;
  padding:18px 22px 20px;
}
.event-directory__bulk-group{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:10px;
  min-width:0;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--paper-soft);
}
.event-directory__bulk-group-copy{
  grid-column:1/-1;
  display:grid;
  gap:3px;
  min-width:0;
}
.event-directory__bulk-group-copy strong{font-size:calc(.9rem + 1px);color:var(--ink)}
.event-directory__bulk-group-copy span{font-size:calc(.72rem + 1px);color:var(--muted);line-height:1.35}
.event-directory__bulk-group--historical-manager{
  grid-column:1/-1;
  grid-template-columns:minmax(0,1fr) auto;
}
.event-directory__bulk-manager-fields{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:end;
  gap:8px;
  min-width:0;
}
.event-directory__bulk-group--export{
  grid-column:1/-1;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  background:#f7fbf8;
  border-color:rgba(55,116,82,.2);
}
.event-directory__bulk-export{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px;
  min-width:146px;
}
.event-directory__bulk-export .event-ui-icon__svg{
  width:17px!important;
  height:17px!important;
  flex-basis:17px!important;
  stroke-width:1.35!important;
}
.event-directory__bulk-group--storage{
  align-content:end;
  background:#f5f9f6;
  border-color:rgba(55,116,82,.2);
}
.event-directory__bulk-group--storage .button{min-width:150px}
.event-directory__bulk-group--danger{
  align-content:end;
  background:#fff7f5;
  border-color:rgba(166,64,52,.2);
}
.event-directory__bulk-group--danger .button{min-width:150px}
.event-directory__bulk-field{display:grid;gap:5px;min-width:0}
.event-directory__bulk-field span{font-size:calc(.72rem + 1px);color:var(--muted)}
.event-directory__bulk-field select,.event-directory__bulk-field input{width:100%;min-width:0}
.event-directory__bulk-arrow{
  align-self:end;
  padding:0 1px 10px;
  color:var(--accent-dark);
  font-size:calc(1.15rem + 1px);
}
.event-directory__bulk-group .button{white-space:nowrap}
.event-directory__bulk-dialog-footer{
  grid-column:1/-1;
  display:flex;
  justify-content:flex-end;
  padding-top:2px;
}

@media (max-width:900px){
  .event-directory__bulk-form{grid-template-columns:1fr}
  .event-directory__bulk-group--historical-manager,
  .event-directory__bulk-group--export{grid-column:auto}
}
@media (max-width:760px){
  
  .event-directory__pagination{align-items:stretch;flex-direction:column}
  .event-directory__page-size-form{align-items:end;justify-content:flex-start}
  .event-directory__page-size-field{flex:1 1 auto;min-width:0}
  .event-directory__page-size-field select{width:100%;min-width:0}
  .event-directory__pager{align-items:flex-start;flex-direction:column;gap:8px}
  .event-directory__pager-summary{white-space:normal}
  .event-directory__pager-links{justify-content:flex-start}
  .event-directory__toolbar{align-items:stretch;flex-direction:column}
  .event-directory__toolbar-actions{justify-content:space-between;width:100%}
  .event-directory__selection-summary{min-width:0}
  .event-directory__bulk-open{flex:1 1 auto}
  .event-directory__bulk-modal{padding:8px}
  .event-directory__bulk-dialog{width:100%;max-height:calc(100vh - 16px);border-radius:18px}
  .event-directory__bulk-dialog-header{padding:16px}
  .event-directory__bulk-form{padding:14px 16px 16px}
  .event-directory__bulk-group,
  .event-directory__bulk-group--historical-manager,
  .event-directory__bulk-group--export{grid-template-columns:1fr;align-items:stretch}
  .event-directory__bulk-manager-fields{grid-template-columns:1fr}
  
  
  
  .event-directory__bulk-group--danger .button{min-width:0}
  .event-directory__bulk-dialog-footer .button{width:100%}
}

/* Jednotný skutečný průběh hromadných operací napříč aplikací. */
body.bulk-operation-running{overflow:hidden}
.bulk-progress-overlay{
  position:fixed;
  inset:0;
  z-index:10030;
  display:grid;
  place-items:center;
  padding:max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
  background:rgba(32,24,18,.7);
  backdrop-filter:blur(8px);
}
.bulk-progress-overlay[hidden]{display:none}
.bulk-progress-card{
  width:min(560px,100%);
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:15px 16px;
  padding:24px;
  border:1px solid rgba(155,111,69,.34);
  border-radius:22px;
  background:#fff;
  box-shadow:0 30px 90px rgba(30,20,12,.38);
}
.bulk-progress-icon{
  grid-row:1;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:#f3e9de;
  color:var(--accent-dark);
  font-size:calc(1.55rem + 1px);
  font-weight:800;
}
.bulk-progress-copy{min-width:0;display:grid;gap:4px;align-content:center}
.bulk-progress-copy .eyebrow{margin:0;font-size:calc(.62rem + 1px)}
.bulk-progress-copy h2{margin:0;font-size:calc(1.35rem + 1px);line-height:1.2}
.bulk-progress-copy p{margin:0;color:var(--muted);font-size:calc(.86rem + 1px)}
.bulk-progress-meter{
  grid-column:1/-1;
  height:13px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:999px;
  background:#f4eee7;
}
.bulk-progress-meter>span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--accent),var(--accent-dark));
  transition:width .22s ease;
}
.bulk-progress-meta{
  grid-column:1/-1;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  color:var(--muted);
  font-size:calc(.78rem + 1px);
}
.bulk-progress-meta strong{color:var(--ink);font-size:calc(1.15rem + 1px)}
.bulk-progress-card>[data-bulk-progress-close]{grid-column:1/-1;justify-self:end}
.bulk-progress-overlay.is-complete .bulk-progress-icon{background:#e8f5e9;color:#26713a}
.bulk-progress-overlay.is-complete .bulk-progress-meter>span{background:#6f9d63}
.bulk-progress-overlay.is-error .bulk-progress-icon{background:#fde7e4;color:#a33c32}
.bulk-progress-overlay.is-error .bulk-progress-meter>span{background:#b34a42}
.bulk-operation-result-alert{display:flex;align-items:center;gap:9px}
.bulk-operation-result-alert>strong{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:rgba(55,126,71,.14);
}

@media (max-width:1100px){
  .event-directory__bulk-form{grid-template-columns:1fr}
  .event-directory__bulk-group--historical-manager{grid-column:auto}
}
@media (max-width:760px){
  .event-filter-count{justify-content:flex-start}
  .event-directory__toolbar-head{align-items:stretch;flex-direction:column}
  .event-directory__selection-summary{justify-items:start;width:100%}
  .event-directory__bulk-form{grid-template-columns:1fr;width:100%}
  .event-directory__bulk-group,
  .event-directory__bulk-group--historical-manager{grid-template-columns:1fr;align-items:stretch}
  .event-directory__bulk-arrow{display:none}
  .event-directory__bulk-field,.event-directory__bulk-field select,.event-directory__bulk-field input{min-width:0;width:100%}
  .event-directory__bulk-group .button{width:100%}
  .bulk-progress-card{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:18px;border-radius:19px}
  .bulk-progress-icon{width:44px;height:44px;border-radius:14px;font-size:calc(1.25rem + 1px)}
  .bulk-progress-copy h2{font-size:calc(1.12rem + 1px)}
  .bulk-progress-meta{align-items:flex-start;flex-direction:column;gap:2px}
  .bulk-progress-card>[data-bulk-progress-close]{width:100%}
}

/* 2026-08-26: Deaktivované uživatelské účty musí být na první pohled odlišitelné od aktivních. */

/* Event directory: the unfiltered overview is capped at 50 newest rows; filtered results are shown in full. */
.event-filter-count>span{
  color:var(--muted);
  font-size:calc(.67rem + 1px);
}

/* Event code/name validation */
.event-code-validation-help{
  transition:color .15s ease;
}
.event-code-validation-help.is-error{
  color:var(--danger);
  font-weight:600;
}
.event-code-validation-help.is-success{
  color:var(--success);
}
[data-event-code-input].is-invalid{
  border-color:rgba(140,59,53,.62);
  box-shadow:0 0 0 3px rgba(140,59,53,.1);
}

/* 2026-08-27: Kompaktní ikonový přehled eventů – status, manager a řádkové akce. */

.event-directory .event-status-col,
.event-directory .event-status-cell{
  width:38px;
  min-width:38px;
  text-align:center;
}
.event-directory .event-manager-col,
.event-directory .event-manager-cell{
  width:42px;
  min-width:42px;
  max-width:42px;
  text-align:center;
  overflow:visible;
}
.event-directory .event-sort-link--icon{
  gap:2px;
  text-decoration:none!important;
}
.event-directory .event-sort-link--icon svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.event-directory .event-status-icon{
  display:inline-grid;
  place-items:center;
  width:28px;
  min-width:28px;
  height:28px;
  min-height:28px;
  padding:0;
  gap:0;
  border-radius:9px;
  cursor:help;
}
.event-directory .event-status-icon svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.event-directory .event-manager-avatar{
  display:inline-grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid rgba(122,98,70,.22);
  border-radius:50%;
  font-size:calc(.61rem + 1px);
  font-weight:800;
  line-height:1;
  letter-spacing:-.02em;
  cursor:help;
  box-shadow:0 1px 2px rgba(45,33,20,.06);
}
.event-directory .event-manager-avatar--tone-0{background:#f2e8dc;color:#6f4827;border-color:#dcc4aa}
.event-directory .event-manager-avatar--tone-1{background:#e8f1ec;color:#315f49;border-color:#bfd6c9}
.event-directory .event-manager-avatar--tone-2{background:#e8eef6;color:#355875;border-color:#c2d1e2}
.event-directory .event-manager-avatar--tone-3{background:#f3e8ef;color:#76506a;border-color:#dcc2d2}
.event-directory .event-manager-avatar--tone-4{background:#f0efdf;color:#65602f;border-color:#d7d3ac}
.event-directory .event-manager-avatar--tone-5{background:#eee9f5;color:#5e4c78;border-color:#d1c4df}
.event-directory .event-manager-avatar--empty{background:#f3f0ec;color:var(--muted);border-color:var(--line)}
.event-directory .dashboard-events-table__actions-wrap{
  gap:4px!important;
}
.event-directory .dashboard-events-table__action-pill{
  width:28px;
  min-width:28px;
  max-width:28px;
  height:28px;
  min-height:28px;
  padding:0;
  border-radius:9px;
}
.event-directory .dashboard-events-table__action-pill svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}
.event-directory .dashboard-events-table__action-pill:hover{
  transform:translateY(-1px);
}
.event-directory .dashboard-events-table__action-pill--detail:hover{background:#e5efd0}
.event-directory .dashboard-events-table__action-pill--copy:hover{background:#f0dfca}
.event-directory .dashboard-events-table__action-pill--delete:hover{background:linear-gradient(135deg,#9f433d,#8c3b35)}

/* 2026-08-27: odsouhlasená lehká sada eventových ikon napříč Eventy, Dashboardem, Statistikami a nabídkami. */
.event-ui-icon__svg{
  display:block;
  width:18px;
  height:18px;
  flex:0 0 18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.35;
  stroke-linecap:round;
  stroke-linejoin:round;
  shape-rendering:geometricPrecision;
  overflow:visible;
}
.event-ui-icon__svg path,
.event-ui-icon__svg circle,
.event-ui-icon__svg rect,
.event-ui-icon__svg ellipse,
.event-ui-icon__svg line,
.event-ui-icon__svg polyline,
.event-ui-icon__svg polygon{
  vector-effect:non-scaling-stroke;
}
.event-icon-header{
  box-sizing:border-box;
  display:grid!important;
  place-items:center!important;
  width:32px;
  min-width:32px;
  height:32px;
  min-height:32px;
  padding:0;
  margin:0 auto;
  line-height:0;
  vertical-align:middle;
  color:#57483a;
}
.event-icon-header .event-ui-icon__svg,
.event-sort-link--icon .event-ui-icon__svg{
  width:18px!important;
  height:18px!important;
  flex-basis:18px!important;
  stroke-width:1.35!important;
}
.event-status-col,
.event-status-cell,
.event-manager-col,
.event-manager-cell{
  width:44px;
  min-width:44px;
  max-width:44px;
  padding-left:6px!important;
  padding-right:6px!important;
  text-align:center!important;
  vertical-align:middle!important;
}
.event-directory .event-sort-link--icon{
  box-sizing:border-box;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:32px;
  min-height:32px;
  padding:0!important;
  line-height:0;
}
.event-status-icon{
  box-sizing:border-box;
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  min-width:32px!important;
  max-width:32px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  padding:0!important;
  margin:0 auto!important;
  border:1px solid transparent;
  border-radius:9px!important;
  line-height:0!important;
  vertical-align:middle;
  cursor:help;
  box-shadow:0 1px 2px rgba(45,33,20,.04);
}
.event-status-icon .event-ui-icon__svg{
  width:18px!important;
  height:18px!important;
  flex-basis:18px!important;
  stroke-width:1.35!important;
  margin:auto!important;
}
.event-status-icon--in_progress{background:#e8f3fb;color:#214f71;border-color:#bfd8e9}
.event-status-icon--offer{background:#e7f0f9;color:#244f72;border-color:#bed2e5}
.event-status-icon--offer_sent{background:#eee9f7;color:#5b4778;border-color:#d2c5e4}
.event-status-icon--confirmed{background:#e4f1e5;color:#245b3c;border-color:#bad7bf}
.event-status-icon--closed{background:#f0efed;color:#4d4842;border-color:#d3cfca}
.event-status-icon--cancelled{background:#fbe7e5;color:#a2332d;border-color:#edb7b2}
.event-status-icon--unknown{background:#f3f0ec;color:#6f675e;border-color:#d9d2ca}
.event-manager-avatar{
  box-sizing:border-box;
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  min-width:32px!important;
  max-width:32px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  padding:0!important;
  margin:0 auto!important;
  border:1px solid rgba(122,98,70,.22);
  border-radius:50%!important;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-size:calc(calc(11px * var(--font-scale)) + 1px) !important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-align:center;
  vertical-align:middle;
  cursor:help;
  box-shadow:0 1px 2px rgba(45,33,20,.04);
}
.event-manager-avatar--tone-0{background:#f5eee5;color:#5f4630;border-color:#dfcbb4}
.event-manager-avatar--tone-1{background:#e7f2eb;color:#285a43;border-color:#bad8c7}
.event-manager-avatar--tone-2{background:#e8f1f8;color:#2e5876;border-color:#bed3e5}
.event-manager-avatar--tone-3{background:#f2e8f1;color:#684f72;border-color:#d8c2db}
.event-manager-avatar--tone-4{background:#f7f0dc;color:#6b5824;border-color:#e2d29f}
.event-manager-avatar--tone-5{background:#eceaf7;color:#504d7c;border-color:#c9c6e3}
.event-manager-avatar--empty{background:#f3f1ee;color:#746c63;border-color:#d8d2cb}
.dashboard-events-table__actions-wrap{
  align-items:center!important;
  justify-content:center!important;
}
.dashboard-events-table__actions-wrap form{
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  line-height:0;
}
.dashboard-events-table__action-pill.event-action-icon,
.event-action-icon{
  box-sizing:border-box;
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  min-width:32px!important;
  max-width:32px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  padding:0!important;
  margin:0!important;
  border-radius:9px!important;
  line-height:0!important;
  vertical-align:middle;
  box-shadow:none!important;
}
.event-action-icon .event-ui-icon__svg{
  width:18px!important;
  height:18px!important;
  flex-basis:18px!important;
  stroke-width:1.35!important;
  pointer-events:none;
  margin:auto!important;
}
.event-action-icon--detail{background:#e9f4ec!important;border:1px solid #bdd9c6!important;color:#285b42!important}
.event-action-icon--copy{background:#f7efe5!important;border:1px solid #dfcab1!important;color:#604934!important}
.event-action-icon--delete{background:#fbe8e6!important;border:1px solid #efb5b0!important;color:#a32e29!important}
.event-action-icon:hover{transform:translateY(-1px)!important}
.event-action-icon--detail:hover{background:#dff0e4!important}
.event-action-icon--copy:hover{background:#f1e4d5!important}
.event-action-icon--delete:hover{background:#f7d9d6!important;color:#8f2622!important}
.event-directory .dashboard-events-table__actions{
  width:112px!important;
  min-width:112px!important;
}

.event-offer-directory-table .event-status-col,
.event-offer-directory-table .event-status-cell,
.event-offer-directory-table .event-manager-col,
.event-offer-directory-table .event-manager-cell{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  text-align:center!important;
  vertical-align:middle!important;
}
/* Poslední přepis drží odsouhlasenou jemnou kresbu i proti starším specifičtějším pravidlům. */
.event-sort-link--icon .event-ui-icon__svg{
  width:18px!important;
  height:18px!important;
  stroke-width:1.35!important;
}
.event-manager-avatar.event-manager-avatar--tone-0{background:#f5eee5!important;color:#5f4630!important;border-color:#dfcbb4!important}
.event-manager-avatar.event-manager-avatar--tone-1{background:#e7f2eb!important;color:#285a43!important;border-color:#bad8c7!important}
.event-manager-avatar.event-manager-avatar--tone-2{background:#e8f1f8!important;color:#2e5876!important;border-color:#bed3e5!important}
.event-manager-avatar.event-manager-avatar--tone-3{background:#f2e8f1!important;color:#684f72!important;border-color:#d8c2db!important}
.event-manager-avatar.event-manager-avatar--tone-4{background:#f7f0dc!important;color:#6b5824!important;border-color:#e2d29f!important}
.event-manager-avatar.event-manager-avatar--tone-5{background:#eceaf7!important;color:#504d7c!important;border-color:#c9c6e3!important}
.event-manager-avatar.event-manager-avatar--empty{background:#f3f1ee!important;color:#746c63!important;border-color:#d8d2cb!important}

/* 2026-08-27: Skládací filtr Eventů nad tabulkou. */
.event-filter-builder-panel{
  padding:16px 18px;
}
.event-filter-builder{
  display:grid;
  gap:12px;
}
.event-filter-builder__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.event-filter-builder__head>div{
  display:grid;
  gap:3px;
}
.event-filter-builder__head strong{
  font-size:calc(.9rem + 1px);
  font-weight:500;
}
.event-filter-builder__head .muted{
  font-size:calc(.75rem + 1px);
  line-height:1.35;
}
.event-filter-builder__body{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px 14px;
  align-items:end;
}
.event-filter-builder__rules{
  display:grid;
  gap:8px;
  min-width:0;
}
.event-filter-builder__rule{
  display:grid;
  grid-template-columns:minmax(190px,260px) minmax(220px,1fr) 34px;
  gap:8px;
  align-items:center;
  min-width:0;
}
.event-filter-builder__field-wrap,
.event-filter-builder__value{
  min-width:0;
  margin:0;
}
.event-filter-builder__field,
.event-filter-builder__value-control{
  box-sizing:border-box;
  width:100%;
  margin:0;
  padding:7px 10px;
  border:1px solid rgba(122,98,70,.24);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
  box-shadow:none;
  font:400 calc(.76rem + 1px)/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;
}
.event-filter-builder__field{
  padding-right:30px;
  font-weight:500;
}
.event-filter-builder__field:focus,
.event-filter-builder__value-control:focus{
  outline:none;
  border-color:rgba(155,111,69,.62);
  box-shadow:0 0 0 2px rgba(155,111,69,.1);
}
.event-filter-builder__value-control::placeholder{
  color:#95897d;
  opacity:1;
}
.event-filter-builder__value-control[type="number"]{
  font-variant-numeric:tabular-nums;
}
.event-filter-builder__remove{
  box-sizing:border-box;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(163,46,41,.28);
  border-radius:9px;
  background:#fff7f6;
  color:#9d3933;
  font:400 calc(20px * var(--font-scale) + 1px)/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  cursor:pointer;
}
.event-filter-builder__remove:hover{
  border-color:rgba(163,46,41,.45);
  background:#fbe9e7;
}
.event-filter-builder__controls{
  display:flex;
  align-items:center;
  align-self:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.event-filter-builder__controls .button{
  white-space:nowrap;
}
.event-filter-builder__add{
  gap:7px;
}
.event-filter-builder__add>span:first-child{
  display:grid;
  place-items:center;
  font:400 calc(16px * var(--font-scale) + 1px)/calc(14px * var(--font-scale)) system-ui,-apple-system,"Segoe UI",sans-serif;
}
.event-filter-builder__add:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.event-filter-builder .event-filter-count{
  grid-column:1/-1;
  margin:0;
  padding-top:2px;
  border-top:1px solid rgba(122,98,70,.1);
}
.event-directory .event-directory-table{
  min-width:1100px;
}
@media (max-width:980px){
  .event-filter-builder__body{
    grid-template-columns:1fr;
  }
  .event-filter-builder__controls{
    justify-content:flex-start;
  }
}
@media (max-width:680px){
  .event-filter-builder-panel{
    padding:14px;
  }
  .event-filter-builder__rule{
    grid-template-columns:1fr 34px;
  }
  .event-filter-builder__field-wrap{
    grid-column:1;
  }
  .event-filter-builder__value{
    grid-column:1;
  }
  .event-filter-builder__remove{
    grid-column:2;
    grid-row:1 / span 2;
    align-self:center;
  }
  .event-filter-builder__controls{
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .event-filter-builder__controls .button{
    width:100%;
    justify-content:center;
  }
  .event-filter-builder .event-filter-count{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}

/* Event form - 2026-08: kompaktnější telefon a drobné zarovnání Sekce 2/3. */
.segmented-phone-field__controls{
  grid-template-columns:minmax(102px,122px) 48px 48px minmax(58px,68px);
  gap:2px;
}
.segmented-phone-field__controls select{padding-inline:7px}
.segmented-phone-field__controls input[data-segmented-phone-part]{padding-inline:4px;letter-spacing:0}
body:not(.auth-page--login) .event-form .event-section--staff .event-meta-grid--staff + .summary-grid.compact{
  margin-top:8px;
}
body:not(.auth-page--login) .event-form .event-table .drink-return-row__label{
  width:100%;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:8px;
}
body:not(.auth-page--login) .event-form .event-table .drink-return-row__label strong{
  display:block;
  width:auto;
  flex:1 1 auto;
  margin:0;
  text-align:left !important;
  font-weight:500;
}
body:not(.auth-page--login) .event-form .event-table .drink-return-row__label small{
  display:block;
  flex:0 0 auto;
  margin-left:auto;
  text-align:right !important;
  font-weight:500;
}
@media (max-width:560px){
  .segmented-phone-field__controls{
    grid-template-columns:minmax(100px,118px) 48px 48px minmax(58px,1fr);
    gap:2px;
  }
}

/* 2026-08-28: ikonová tlačítka pro přidání a reset skládacího filtru Eventů. */
.event-filter-builder__icon-button{
  box-sizing:border-box;
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  gap:0!important;
  line-height:0!important;
}
.event-filter-builder__icon-button .event-ui-icon__svg{
  width:18px!important;
  height:18px!important;
  margin:auto!important;
  stroke-width:1.35!important;
}
.event-filter-builder__add>span:first-child{
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  font:inherit;
}
@media (max-width:680px){
  .event-filter-builder__controls{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:wrap;
  }
  .event-filter-builder__controls .event-filter-builder__add{
    grid-column:auto;
  }
  .event-filter-builder__controls .event-filter-builder__icon-button{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
  }
  .event-filter-builder__controls .button:not(.event-filter-builder__icon-button){
    width:auto;
  }
}

/* Premium interaction layer: delete, download, search and checkbox UI. */
:root{
  --premium-accent:var(--accent-dark);
  --premium-accent-soft:rgba(155,111,69,.12);
  --premium-accent-glow:rgba(155,111,69,.24);
  --premium-ink:#2d2118;
}

/* Premium checkbox treatment, including the indeterminate Select all state. */
input[type="checkbox"]{
  --premium-checkbox-size:18px;
  --premium-checkbox-color:var(--role-color,var(--premium-accent));
  appearance:none;
  -webkit-appearance:none;
  width:var(--premium-checkbox-size);
  min-width:var(--premium-checkbox-size);
  height:var(--premium-checkbox-size);
  min-height:var(--premium-checkbox-size);
  margin:0;
  padding:0!important;
  border:1.5px solid rgba(124,85,50,.42);
  border-radius:5px;
  background:#fff;
  box-shadow:0 1px 2px rgba(45,33,24,.04),inset 0 0 0 1px rgba(255,255,255,.72);
  vertical-align:middle;
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,background-color .16s ease,box-shadow .16s ease,opacity .16s ease;
}
input[type="checkbox"]:hover:not(:disabled){
  border-color:var(--premium-checkbox-color);
  box-shadow:0 0 0 4px var(--premium-accent-soft);
}
input[type="checkbox"]:checked{
  border-color:var(--premium-checkbox-color);
  background-color:var(--premium-checkbox-color);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3 3 7-7' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position:center;
  background-repeat:no-repeat;
  background-size:86% 86%;
  box-shadow:0 5px 12px rgba(124,85,50,.2);
  animation:premium-checkbox-pop .2s ease-out;
}
input[type="checkbox"]:indeterminate{
  border-color:var(--premium-checkbox-color);
  background-color:var(--premium-checkbox-color);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10h10' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E");
  background-position:center;
  background-repeat:no-repeat;
  background-size:82% 82%;
  box-shadow:0 5px 12px rgba(124,85,50,.2);
}
input[type="checkbox"]:focus-visible{
  outline:none;
  border-color:var(--premium-checkbox-color);
  box-shadow:0 0 0 4px var(--premium-accent-glow),0 5px 12px rgba(124,85,50,.16);
}
input[type="checkbox"]:disabled{
  cursor:not-allowed;
  opacity:.46;
  filter:saturate(.55);
}
.checkbox-card:has(input[type="checkbox"]:checked),
.checkbox-inline:has(input[type="checkbox"]:checked),
.todo-purchase-row__done:has(input[type="checkbox"]:checked){
  border-color:rgba(124,85,50,.34);
  background:linear-gradient(135deg,rgba(155,111,69,.105),rgba(255,255,255,.86));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 8px 20px rgba(67,48,30,.055);
}
body:not(.auth-page--login) .event-form .checkbox-card input[type="checkbox"],
body:not(.auth-page--login) .event-form .checkbox-inline input[type="checkbox"]{
  --premium-checkbox-size:12px;
  border-radius:4px;
}
.contact-select-col input[type="checkbox"],
.event-select-col input[type="checkbox"],
.audit-select-col input[type="checkbox"]{
  --premium-checkbox-size:17px;
}
@keyframes premium-checkbox-pop{
  0%{transform:scale(.72)}
  65%{transform:scale(1.13)}
  100%{transform:scale(1)}
}

/* Search toggle inspired by the reference: icon, focus halo, clear action and ESC affordance. */
.premium-search{
  position:relative;
  display:flex;
  width:100%;
  min-width:0;
  align-items:center;
  isolation:isolate;
}
.premium-search::before{
  content:"";
  position:absolute;
  inset:-3px;
  z-index:-1;
  border-radius:19px;
  background:radial-gradient(circle at 12% 50%,rgba(155,111,69,.18),transparent 28%),linear-gradient(90deg,rgba(155,111,69,.08),rgba(255,255,255,.2));
  opacity:0;
  transform:scale(.985);
  transition:opacity .18s ease,transform .18s ease;
}
.premium-search.is-focused::before{
  opacity:1;
  transform:scale(1);
}
.premium-search__input{
  padding-left:43px!important;
  padding-right:74px!important;
  border-color:rgba(124,85,50,.24)!important;
  box-shadow:inset 0 1px 2px rgba(67,48,30,.025)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease!important;
}
.premium-search__input::-webkit-search-cancel-button{
  -webkit-appearance:none;
  appearance:none;
}
.premium-search.is-focused .premium-search__input{
  border-color:rgba(124,85,50,.68)!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(155,111,69,.11),0 10px 28px rgba(67,48,30,.07)!important;
}
.premium-search__icon{
  position:absolute;
  left:13px;
  top:50%;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  transform:translateY(-50%);
  color:var(--premium-accent);
  pointer-events:none;
  transition:transform .18s ease,color .18s ease;
}
.premium-search__icon svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
}
.premium-search.is-focused .premium-search__icon{transform:translateY(-50%) scale(1.08)}
.premium-search__clear{
  position:absolute;
  right:39px;
  top:50%;
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(155,111,69,.1);
  color:var(--premium-accent);
  cursor:pointer;
  transform:translateY(-50%);
  transition:background-color .15s ease,transform .15s ease;
}
.premium-search__clear:hover{background:rgba(155,111,69,.19);transform:translateY(-50%) scale(1.05)}
.premium-search__clear svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.premium-search__hint{
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  opacity:.42;
  pointer-events:none;
  transition:opacity .15s ease;
}
.premium-search.is-focused .premium-search__hint{opacity:.78}
.premium-search__hint kbd{
  display:inline-flex;
  min-width:23px;
  min-height:20px;
  align-items:center;
  justify-content:center;
  padding:2px 4px;
  border:1px solid rgba(124,85,50,.2);
  border-bottom-width:2px;
  border-radius:6px;
  background:#fff;
  color:var(--muted);
  font:600 calc(.56rem + 1px)/1 system-ui,sans-serif;
  text-transform:uppercase;
  box-shadow:0 2px 4px rgba(67,48,30,.04);
}

/* Premium download feedback. It never replaces the original navigation/download behavior. */
.premium-download{
  --premium-download-progress:0;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
.premium-download::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(155,111,69,.08),rgba(255,255,255,0));
  transform:translateX(-105%);
  transition:transform .42s ease;
}
.premium-download.is-downloading::after,.premium-download.is-complete::after{transform:translateX(0)}
.premium-download__progress{
  --ring-size:25px;
  position:relative;
  flex:0 0 var(--ring-size);
  width:var(--ring-size);
  height:var(--ring-size);
  display:inline-grid;
  place-items:center;
  border-radius:50%;
  background:conic-gradient(var(--premium-accent) calc(var(--premium-download-progress) * 3.6deg),rgba(155,111,69,.16) 0);
  box-shadow:0 0 0 1px rgba(124,85,50,.1),0 5px 12px rgba(67,48,30,.08);
  transition:background .08s linear,transform .16s ease;
}
.premium-download__progress::before{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:50%;
  background:#fff;
}
.premium-download__progress-core{
  position:relative;
  z-index:1;
  width:15px;
  height:15px;
  display:grid;
  place-items:center;
  color:var(--premium-accent);
}
.premium-download__progress-core svg{
  position:absolute;
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:opacity .16s ease,transform .16s ease;
}
.premium-download__check{opacity:0;transform:scale(.45)}
.premium-download.is-downloading .premium-download__progress{animation:premium-download-pulse .8s ease-in-out infinite alternate}
.premium-download.is-complete .premium-download__progress{background:var(--success);transform:scale(1.06)}
.premium-download.is-complete .premium-download__progress::before{background:var(--success)}
.premium-download.is-complete .premium-download__progress-core{color:#fff}
.premium-download.is-complete .premium-download__arrow{opacity:0;transform:translateY(3px) scale(.7)}
.premium-download.is-complete .premium-download__check{opacity:1;transform:scale(1)}
@keyframes premium-download-pulse{from{box-shadow:0 0 0 1px rgba(124,85,50,.12),0 5px 12px rgba(67,48,30,.08)}to{box-shadow:0 0 0 5px rgba(155,111,69,.1),0 7px 18px rgba(67,48,30,.11)}}

/* Selected events receive a premium card-like state and a fixed action tray. */
.event-directory .dashboard-events-table tr.is-premium-selected td{
  background:linear-gradient(90deg,rgba(155,111,69,.12),rgba(155,111,69,.045));
  box-shadow:inset 0 1px 0 rgba(124,85,50,.14),inset 0 -1px 0 rgba(124,85,50,.14);
}
.event-directory .dashboard-events-table tr.is-premium-selected td:first-child{box-shadow:inset 3px 0 0 var(--premium-accent),inset 0 1px 0 rgba(124,85,50,.14),inset 0 -1px 0 rgba(124,85,50,.14)}
.premium-selection-tray{
  position:fixed;
  z-index:10000;
  left:50%;
  bottom:22px;
  width:min(760px,calc(100vw - 32px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 14px 12px 16px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(63,44,30,.97),rgba(124,85,50,.97));
  color:#fff;
  box-shadow:0 24px 60px rgba(45,33,24,.28),inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(20px);
  transform:translate(-50%,18px) scale(.98);
  opacity:0;
  transition:opacity .2s ease,transform .2s ease;
}
.premium-selection-tray.is-visible{transform:translate(-50%,0) scale(1);opacity:1}
.premium-selection-tray__status{display:flex;align-items:center;gap:12px;min-width:0}
.premium-selection-tray__status>span:last-child{display:grid;gap:1px;min-width:0}
.premium-selection-tray__status strong{font-size:calc(.84rem + 1px);line-height:1.2}
.premium-selection-tray__status small{color:rgba(255,255,255,.68);font-size:calc(.64rem + 1px);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.premium-selection-tray__badge{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.premium-selection-tray__badge svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.premium-selection-tray__actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.premium-selection-tray .button{min-height:38px;padding:8px 13px;font-size:calc(.72rem + 1px);box-shadow:none}
.premium-selection-tray .button-ghost{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff}
.premium-selection-tray__delete svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.premium-selection-tray__clear{width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.11);color:#fff;font-size:calc(1.25rem + 1px);line-height:1;cursor:pointer;transition:background-color .15s ease,transform .15s ease}
.premium-selection-tray__clear:hover{background:rgba(255,255,255,.2);transform:rotate(4deg)}
body.event-bulk-modal-open .premium-selection-tray{opacity:.2;pointer-events:none}

/* Premium destructive confirmation replaces native browser confirm only for destructive actions. */
body.premium-confirm-open{overflow:hidden}
.premium-confirm{
  position:fixed;
  inset:0;
  z-index:10080;
  display:grid;
  place-items:center;
  padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
  opacity:0;
  transition:opacity .18s ease;
}
.premium-confirm.is-visible{opacity:1}
.premium-confirm__backdrop{position:absolute;inset:0;background:rgba(31,23,18,.62);backdrop-filter:blur(9px)}
.premium-confirm__card{
  position:relative;
  width:min(480px,100%);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:16px;
  padding:22px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:26px;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(249,242,234,.98));
  box-shadow:0 30px 90px rgba(35,25,18,.3),inset 0 1px 0 #fff;
  transform:translateY(12px) scale(.98);
  transition:transform .2s ease;
  outline:none;
}
.premium-confirm.is-visible .premium-confirm__card{transform:translateY(0) scale(1)}
.premium-confirm__icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:linear-gradient(135deg,#fff2ef,#f8d9d5);
  color:var(--danger);
  box-shadow:inset 0 0 0 1px rgba(140,59,53,.13),0 10px 24px rgba(140,59,53,.11);
}
.premium-confirm__icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.premium-confirm__copy{display:grid;gap:7px;align-content:start;min-width:0}
.premium-confirm__eyebrow{font-size:calc(.61rem + 1px);font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--danger)}
.premium-confirm__copy h2{font-size:calc(1.28rem + 1px);line-height:1.15}
.premium-confirm__copy p{margin:0;color:var(--muted);font-size:calc(.79rem + 1px);line-height:1.55;overflow-wrap:anywhere}
.premium-confirm__actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin-top:3px;padding-top:15px;border-top:1px solid var(--line)}
.premium-confirm__actions .button{width:100%;min-height:44px}
.premium-confirm__approve svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

@media (max-width:760px){
  .premium-search__hint{display:none}
  .premium-search__input{padding-right:43px!important}
  .premium-search__clear{right:9px}
  .premium-selection-tray{
    bottom:calc(82px + env(safe-area-inset-bottom));
    width:calc(100vw - 20px);
    align-items:stretch;
    gap:10px;
    padding:11px;
    border-radius:19px;
  }
  .premium-selection-tray__status small{display:none}
  .premium-selection-tray__actions{gap:6px}
  .premium-selection-tray .button{padding-inline:10px}
  .premium-selection-tray__bulk{display:none}
  .premium-confirm{place-items:end center;padding:12px 10px calc(84px + env(safe-area-inset-bottom))}
  .premium-confirm__card{grid-template-columns:42px minmax(0,1fr);gap:13px;padding:18px;border-radius:22px}
  .premium-confirm__icon{width:42px;height:42px;border-radius:14px}
  .premium-confirm__actions{grid-template-columns:1fr 1fr}
}

@media (prefers-reduced-motion:reduce){
  input[type="checkbox"]:checked,.premium-download.is-downloading .premium-download__progress{animation:none}
  .premium-search::before,.premium-search__input,.premium-search__icon,.premium-search__clear,.premium-download,.premium-download__progress,.premium-selection-tray,.premium-confirm,.premium-confirm__card{transition:none!important}
}

