@import url('https://fonts.googleapis.com/css2?family=Comfortaa:wght@300;400;500;600;700&display=swap');
:root{--bg:#f6f1ea;--paper:#fff;--paper-soft:#fbf7f1;--ink:#171614;--muted:#726a5f;--line:#e5dacb;--accent:#9b6f45;--accent-dark:#7c5532;--success:#285945;--danger:#8c3b35;--shadow:0 20px 50px rgba(45,33,20,.08);--radius:24px}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(circle at top right, rgba(155,111,69,.12), transparent 30%),linear-gradient(180deg,#f8f4ee 0%,var(--bg) 100%);color:var(--ink);font-family:'Comfortaa',system-ui,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:'Comfortaa',system-ui,sans-serif;font-weight:600;line-height:1.05;margin:0;letter-spacing:.01em}h1{font-size:clamp(2.3rem,4vw,4rem)}h2{font-size:clamp(1.9rem,3vw,2.7rem)}h3{font-size:1.7rem}small.eyebrow,.eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--accent);margin-bottom:.8rem}.shell{display:grid;grid-template-columns:300px 1fr;min-height:100vh}.sidebar{border-right:1px solid rgba(122,98,70,.12);background:rgba(255,255,255,.65);backdrop-filter:blur(16px);padding:28px;display:flex;flex-direction:column;gap:28px}.brand{display:flex;align-items:center;gap:16px}.brand-mark{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#d8b089);color:#fff;font-weight:700;letter-spacing:.08em}.nav{display:grid;gap:8px}.nav a{padding:12px 14px;border-radius:14px;color:var(--muted);transition:.2s ease}.nav a:hover{background:rgba(155,111,69,.08);color:var(--ink)}.sidebar-footer{margin-top:auto;display:grid;gap:14px}.profile-card{padding:16px;border-radius:20px;background:var(--paper-soft);border:1px solid var(--line);display:grid;gap:4px}.content{padding:40px 48px 56px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:28px}.header-actions,.filter-actions,.form-actions,.inline-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.panel,.auth-card,.stat-card{background:rgba(255,255,255,.9);border:1px solid rgba(122,98,70,.12);border-radius:var(--radius);box-shadow:var(--shadow)}.panel{padding:24px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.hero-panel{display:grid;grid-template-columns:1.4fr .9fr;gap:24px;background:linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,248,239,.9));border-radius:32px;padding:32px;margin-bottom:24px;border:1px solid rgba(122,98,70,.12);box-shadow:var(--shadow)}.hero-panel p{max-width:68ch;color:var(--muted)}.hero-metrics{display:grid;gap:16px;align-content:start}.hero-metrics div,.stat-card{padding:18px 20px;background:rgba(255,255,255,.78);border-radius:20px;border:1px solid var(--line)}.hero-metrics strong,.stat-card strong{display:block;font-size:1.6rem;font-family:'Comfortaa',system-ui,sans-serif}.hero-metrics span,.stat-card small{color:var(--muted)}.grid{display:grid;gap:20px;margin-bottom:20px}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.95rem}thead th{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);color:var(--muted);font-weight:600;font-size:.85rem}tbody td{padding:14px;border-bottom:1px solid rgba(229,218,203,.7);vertical-align:top}tbody tr:last-child td{border-bottom:none}.sub-row td{padding-top:0;color:var(--muted);font-size:.92rem}.button,.link-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:none;border-radius:999px;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;font-weight:600;transition:transform .15s ease;box-shadow:0 10px 22px rgba(155,111,69,.2)}.button:hover,.link-button:hover{transform:translateY(-1px)}.button-ghost,.link-button{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}.button-danger{background:linear-gradient(135deg,var(--danger),#b14d45);color:#fff;border:none;box-shadow:0 10px 22px rgba(140,59,53,.22)}.button-small{padding:10px 14px;font-size:.92rem}.small-note{font-size:.85rem}.users-table th,.users-table td{vertical-align:middle}.users-table .actions-col{text-align:right}.user-actions{justify-content:flex-end}.user-actions form{margin:0}.switch-card{align-items:center}.switch-card input{width:auto}.switch-card span{display:grid;gap:4px}.switch-card strong{font-size:1rem}.switch-card small{color:var(--muted)}.button-full{width:100%}.link{color:var(--accent-dark);font-weight:600}.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;font-size:.78rem;font-weight:600;border:1px solid transparent}.badge-muted{background:#f1ece6;color:#6a6052}.badge-success{background:#e6f2eb;color:var(--success)}.badge-info{background:#edf1f9;color:#426182}.badge-dark{background:#ece7e0;color:#3f352d}.badge-danger{background:#faece9;color:var(--danger)}.alert{margin-bottom:18px;padding:16px 18px;border-radius:18px;border:1px solid var(--line)}.alert-success{background:#ebf6f0;color:#22533f}.alert-error{background:#fff0ed;color:#8c3b35}.filters,.form-grid,.stack,.stack-lg{display:grid;gap:16px}.stack-lg{gap:24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:span 2}label{display:grid;gap:8px}input,select,textarea{width:100%;padding:13px 14px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.9);font-size:.96rem;color:var(--ink)}textarea{min-height:110px;resize:vertical}.checkbox-card,.checkbox-inline{display:flex;gap:12px;align-items:flex-start}.checkbox-card{padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--paper-soft)}.checkbox-card input{width:auto;margin-top:3px}.share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.feature-list,.audit-list{display:grid;gap:10px;margin:0;padding-left:18px}.audit-item{background:var(--paper-soft);border:1px solid var(--line);border-radius:20px;padding:16px}.audit-item pre{background:#1d1b18;color:#f2ebe1;border-radius:16px;padding:14px;overflow:auto;font-size:.82rem}.definition-list{display:grid;gap:12px;margin:0}.definition-list div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(229,218,203,.7)}.definition-list div:last-child{border-bottom:none}.definition-list dt{color:var(--muted)}.definition-list dd{margin:0;text-align:right;font-weight:600}.notes-block{display:grid;gap:8px}.notes-block p{margin:0 0 12px;padding:14px;border-radius:16px;background:var(--paper-soft);border:1px solid var(--line)}.break-all{word-break:break-all}.muted{color:var(--muted)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-wrap{width:min(1180px,100%);display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}.auth-visual{padding:48px;border-radius:32px;color:#fff;background:linear-gradient(135deg, rgba(26,23,20,.82), rgba(52,39,27,.7));box-shadow:var(--shadow);display:grid;align-content:end}.auth-visual h1{font-size:clamp(2.8rem,5vw,4.7rem);max-width:11ch}.auth-visual p{max-width:58ch;color:rgba(255,255,255,.8)}.hero-notes{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.hero-notes span{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px)}.auth-card{padding:34px;max-width:520px;width:100%}button,input,select,textarea{font:inherit}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}@media (max-width:1100px){.shell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid rgba(122,98,70,.12)}.content{padding:24px}.grid-4,.grid-2,.share-grid,.auth-wrap,.hero-panel,.form-grid{grid-template-columns:1fr}.page-header{align-items:flex-start;flex-direction:column}}

.mfa-panel p{max-width:72ch}.mfa-qr-layout{display:grid;grid-template-columns:minmax(240px,280px) 1fr;gap:24px;align-items:start}.mfa-qr-card{display:grid;gap:12px;justify-items:center;padding:18px;border:1px solid var(--line);border-radius:24px;background:var(--paper-soft)}.mfa-qr-code{width:240px;min-height:240px;display:grid;place-items:center;padding:12px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:inset 0 0 0 1px rgba(0,0,0,.02)}.mfa-qr-code svg{display:block;width:100%;height:auto}.mfa-qr-caption{margin:0;text-align:center;color:var(--muted);font-size:.93rem}.mfa-definition-list{align-self:stretch}@media (max-width:1100px){.mfa-qr-layout{grid-template-columns:1fr}}

.mfa-definition-list dd{text-align:left;max-width:100%;overflow-wrap:anywhere}.mfa-otp-form{align-content:start}.mfa-otp-block{gap:12px}.mfa-otp-inputs{display:flex;gap:12px;flex-wrap:wrap}.mfa-otp-digit{width:58px;min-width:58px;height:64px;padding:0;border-radius:18px;text-align:center;font-size:1.4rem;font-weight:700;letter-spacing:0;background:#fff}.mfa-otp-digit:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(155,111,69,.12)}.mfa-submit{justify-self:start;min-width:220px}@media (max-width:640px){.mfa-otp-inputs{gap:10px}.mfa-otp-digit{width:50px;min-width:50px;height:58px;font-size:1.2rem}.mfa-submit{min-width:180px}}


.event-form{max-width:none}
.event-form-section{padding:28px 28px 30px}
.event-header-card{display:grid;gap:24px;padding:24px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,248,239,.85))}
.event-header-brand{display:flex;justify-content:space-between;gap:16px;align-items:center}
.event-header-brand h2{font-size:clamp(2rem,3vw,3rem)}
.event-header-logo{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;font-weight:700;font-size:1.4rem;letter-spacing:.08em;box-shadow:0 10px 24px rgba(155,111,69,.2)}
.event-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.event-block{padding:20px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.72);display:grid;gap:16px}
.event-block h4{font-size:1.45rem}
.event-table{width:100%;border-collapse:separate;border-spacing:0 10px}
.event-table thead th{padding:0 12px 8px;border-bottom:1px solid var(--line)}
.event-table tbody tr{background:var(--paper-soft)}
.event-table tbody td{padding:10px 12px;border-top:1px solid rgba(229,218,203,.65);border-bottom:1px solid rgba(229,218,203,.65)}
.event-table tbody td:first-child{border-left:1px solid rgba(229,218,203,.65);border-top-left-radius:18px;border-bottom-left-radius:18px}
.event-table tbody td:last-child{border-right:1px solid rgba(229,218,203,.65);border-top-right-radius:18px;border-bottom-right-radius:18px}
.event-table strong{white-space:nowrap}
.section-total{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;border-radius:18px;background:#faf3ee;border:1px solid rgba(155,111,69,.16)}
.section-total strong{font-size:1.2rem;font-family:'Comfortaa',system-ui,sans-serif}
.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.summary-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}
.summary-card{padding:18px 20px;border-radius:22px;border:1px solid rgba(155,111,69,.18);background:#fff3ee;display:grid;gap:8px}
.summary-card small{color:var(--muted);font-size:.92rem}
.summary-card strong{font-size:1.6rem;font-family:'Comfortaa',system-ui,sans-serif;line-height:1}
.event-meta-grid,.todo-grid{display:grid;gap:16px}
.event-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.todo-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.todo-column{display:grid;gap:12px}
.todo-row{display:grid;gap:8px;max-width:320px}
.settings-grid{max-width:720px}
.details-grid{align-items:start}
@media (max-width:1100px){
  .event-form-grid,.event-meta-grid,.summary-grid,.summary-grid.compact,.todo-columns,.settings-grid{grid-template-columns:1fr}
  .event-header-brand{align-items:flex-start;flex-direction:column}
}

/* 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 thead th{padding:0 10px 6px}
.event-table tbody td{padding:8px 10px}
.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:.9rem;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:.86rem}
.summary-card strong{font-size:1.35rem}
.hero-metrics div,.stat-card{padding:14px 16px}
.checkbox-card{padding:10px 12px;border-radius:14px}
.button,.link-button{padding:10px 16px}
.button-small{padding:8px 12px;font-size:.88rem}
.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,.recipient-user-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,.recipient-user-grid{grid-template-columns:1fr}
}

.is-hidden{display:none!important}
.settings-grid-full{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}
.collaboration-alert{padding:12px 16px;border-radius:16px;border:1px solid rgba(191,139,39,.28);background:#fff4df;color:#775415}
.collaboration-toast{display:grid;gap:12px}
.collaboration-toast__header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.collaboration-toast__body p{margin:0 0 8px}
.collaboration-toast__list{margin:0;padding-left:18px;display:grid;gap:6px}
@media (max-width:1100px){.settings-grid-full{grid-template-columns:1fr}.collaboration-toast__header{align-items:flex-start;flex-direction:column}}
.autosave-status{padding:8px 2px;font-size:13px}
.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{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.event-form > .autosave-status,.event-form > .collaboration-alert,.event-form > .collaboration-modal,.event-form > .form-actions,.event-form > datalist,.event-form > script,.event-form > input[type="hidden"]{grid-column:1 / -1}
.event-section--header{grid-column:1 / -1;order:1}
.event-section--notes{grid-column:1;order:2}
.event-section--todo{grid-column:2;order:3}
.event-section--summary{grid-column:1 / -1;order:4}
.event-section--costs{grid-column:1;order:5}
.event-section--sales{grid-column:2;order:6}
.event-section--staff{grid-column:1 / -1;order:7}
.collaboration-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px}
.collaboration-modal__backdrop{position:absolute;inset:0;background:rgba(23,22,20,.48)}
.collaboration-modal__dialog{position:relative;z-index:1;width:min(640px,calc(100vw - 32px));padding:24px 24px 20px;border-radius:24px;background:#fff;border:1px solid rgba(122,98,70,.14);box-shadow:0 24px 50px rgba(20,15,10,.28);display:grid;gap:14px}
.collaboration-modal__close{position:absolute;top:14px;right:14px;width:40px;height:40px;border:none;border-radius:999px;background:#f3ede5;color:#43382e;font-size:1.5rem;line-height:1;cursor:pointer}
.collaboration-modal__header strong{display:block;font-size:1.35rem;font-family:'Comfortaa',system-ui,sans-serif}
.collaboration-modal__body p{margin:0 0 10px}
.collaboration-toast__list{margin:0;padding-left:18px;display:grid;gap:6px}
@media (max-width:1100px){.event-form{grid-template-columns:1fr}.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 > .collaboration-alert,.event-form > .collaboration-modal,.event-form > .form-actions{grid-column:1}.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--confirmed{background:#b7d39b;border-color:#7ea05c}
.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-section--header{background:linear-gradient(180deg,rgba(247,241,234,.96),rgba(255,255,255,.92))}
.event-section--costs{background:linear-gradient(180deg,rgba(252,238,235,.92),rgba(255,255,255,.94))}
.event-section--staff{background:linear-gradient(180deg,rgba(236,246,241,.92),rgba(255,255,255,.94))}
.event-section--todo{background:linear-gradient(180deg,rgba(241,238,251,.92),rgba(255,255,255,.94))}
.event-section--notes{background:linear-gradient(180deg,rgba(248,241,230,.92),rgba(255,255,255,.94))}
.event-section--sales{background:linear-gradient(180deg,rgba(235,243,248,.92),rgba(255,255,255,.94))}

.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)}

.event-block > .panel-head{align-items:flex-start;gap:14px}
.section-title-input{flex:1 1 auto;width:100%;min-width:0;max-width:none;padding:9px 12px;border-radius:14px;border:2px solid rgba(21,130,92,.95);background:rgba(255,255,255,.78);font-size:clamp(1.02rem,1.15vw,1.38rem);font-weight:700;line-height:1.12;text-transform:uppercase;letter-spacing:0;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]{min-width:74px;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{grid-column:1 / -1;order:4;background:linear-gradient(180deg,rgba(239,244,221,.96),rgba(255,255,255,.94))}
.event-section--costs{order:5}
.event-section--sales{order:6}
.event-section--staff{grid-column:1 / -1;order:7}

.section-stack{gap:18px}
.section-head-actions{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.section-move-actions{display:inline-flex;align-items:center;gap:8px}
.section-move-actions .button{min-width:42px;padding-inline:12px}
.section-move-actions .button:disabled{opacity:.45;cursor:not-allowed;transform:none}

.event-table{table-layout:fixed}
.event-table col.col-actions{width:62px}
.event-table--cost-general col.col-label{width:50%}
.event-table--cost-general col.col-qty{width:14%}
.event-table--cost-general col.col-unit{width:14%}
.event-table--cost-general col.col-total{width:22%}
.event-table--cost-staff col.col-label{width:38%}
.event-table--cost-staff col.col-hours{width:12%}
.event-table--cost-staff col.col-count{width:10%}
.event-table--cost-staff col.col-rate{width:15%}
.event-table--cost-staff col.col-total{width:25%}
.event-table--sales col.col-label{width:38%}
.event-table--sales col.col-qty{width:9%}
.event-table--sales col.col-unit{width:11%}
.event-table--sales col.col-total{width:11%}
.event-table--sales col.col-vat{width:9%}
.event-table--sales col.col-total-vat{width:22%}

.event-table input,.event-table select{min-width:0;max-width:100%}
.event-table input[type="text"]{font-size:.78rem;padding:8px 10px}
.event-table input[type="number"],.event-table input[type="datetime-local"],.event-table input[type="time"],.event-table select{font-size:.8rem;padding:8px 10px}
.event-table tbody td:first-child input[type="text"]{text-align:left;padding-inline:10px;font-size:.77rem}
.event-table strong{font-size:1rem}
.event-table thead th{font-size:.8rem}

.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:.76rem}
}
@media (max-width:1280px){
  .section-title-input{font-size:1rem;padding:8px 10px}
  .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 > .collaboration-alert,.event-form > .collaboration-modal,.event-form > .form-actions{grid-column:1}
  .section-head-actions{justify-content:flex-start}
}

.presence-live-toast{position:fixed;top:24px;right:24px;z-index:140;min-width:min(360px,calc(100vw - 32px));padding:16px 18px;border-radius:18px;border:1px solid rgba(36,97,62,.2);background:rgba(235,246,240,.98);color:#1f5a38;box-shadow:0 18px 34px rgba(23,22,20,.14);opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.presence-live-toast.is-visible{opacity:1;transform:translateY(0)}
.users-table [data-presence-cell]{min-width:220px}


/* Event form layout hard-fix: Sekce 2 a Sekce 6 musí být vedle sebe */
.event-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  grid-template-areas:
    "header header"
    "notes todo"
    "summary summary"
    "costs sales"
    "staff staff"
    "actions actions";
  gap:18px;
  align-items:start;
}
.event-form > .autosave-status,
.event-form > .collaboration-alert,
.event-form > .collaboration-modal,
.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;
  align-items:start;
  gap:12px;
}
.section-head-actions{
  min-width:0;
  gap:6px;
}
.section-head-actions .button.button-small{
  padding:8px 11px;
  font-size:.82rem;
}
.section-move-actions .button{
  min-width:36px;
  padding-inline:10px;
}
.section-title-input{
  width:100%;
  min-width:0;
  padding:8px 11px;
  font-size:clamp(.88rem,.9vw,1.05rem);
  line-height:1.04;
  letter-spacing:-.01em;
}
.event-block h4{
  font-size:clamp(1rem,1vw,1.18rem);
  line-height:1.08;
}

@media (max-width:1280px){
  .section-title-input{font-size:.86rem;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-columns:1fr;
    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 final layout and readability refinements */
.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 > .collaboration-alert,
.event-form > .collaboration-modal,
.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;
  gap:8px;
  padding:6px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.75);
}
.section-color-control span{
  font-size:.72rem;
  color:var(--muted);
  font-weight:600;
  letter-spacing:.03em;
}
.section-color-control input[type="color"]{
  width:34px;
  height:34px;
  padding:0;
  border:none;
  background:transparent;
  border-radius:999px;
  cursor:pointer;
}
.section-title-input{
  min-height:46px;
  resize:none;
  overflow:hidden;
  white-space:normal;
  font-size:clamp(.76rem,.8vw,.95rem) !important;
  line-height:1.05;
  padding:8px 12px;
}
.event-block h4{
  font-size:clamp(.84rem,.9vw,1.02rem) !important;
  line-height:1.1;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.section-head-actions{
  align-items:flex-start;
}
.section-formula-note,
.inline-note{
  font-size:.76rem;
  color:var(--muted);
}
.section-formula-note{margin:-6px 0 0}
.event-cell-note{
  text-align:center;
  color:var(--muted);
  font-size:.76rem;
}

.event-table thead th{
  font-size:.72rem;
  padding:0 8px 6px;
}
.event-table tbody td{
  padding:7px 8px;
}
.event-table input[type="text"]{
  font-size:.72rem !important;
}
.event-table input[type="number"],
.event-table input[type="datetime-local"],
.event-table input[type="time"],
.event-table select{
  font-size:.76rem !important;
  padding:7px 9px !important;
}
.event-table strong{font-size:.92rem}
.event-table--cost-general col.col-label{width:40%}
.event-table--cost-general col.col-qty{width:12%}
.event-table--cost-general col.col-unit{width:12%}
.event-table--cost-general col.col-total{width:24%}
.event-table--cost-staff col.col-label{width:32%}
.event-table--cost-staff col.col-hours{width:10%}
.event-table--cost-staff col.col-count{width:10%}
.event-table--cost-staff col.col-rate{width:14%}
.event-table--cost-staff col.col-total{width:24%}
.event-table--sales col.col-label{width:32%}
.event-table--sales col.col-qty{width:9%}
.event-table--sales col.col-unit{width:12%}
.event-table--sales col.col-total{width:14%}
.event-table--sales col.col-vat{width:11%}
.event-table--sales col.col-total-vat{width:16%}
.event-table--cost-other-excluded col.col-label{width:52%}
.event-table--cost-other-excluded col.col-value{width:20%}
.event-table--cost-other-excluded col.col-total{width:20%}

.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:.75rem;
}
.event-section--summary .summary-card strong,
.summary-card--tiny strong{
  font-size:1.05rem;
}
.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}
}


/* v7 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: .7rem !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: .82rem !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: .82rem !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{width: 14% !important}
.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: 48% !important}
.event-table--cost-other-excluded col.col-value{width: 20% !important}
.event-table--cost-other-excluded col.col-total{width: 20% !important}
.event-table col.col-actions{width: 58px !important}
.event-form-grid input[type="date"],
.event-form-grid input[type="datetime-local"],
.event-meta-grid input[type="date"],
.event-meta-grid input[type="datetime-local"]{
  min-width: 0;
  font-size: .9rem;
  padding: 11px 12px;
}
@media (max-width: 1450px){
  .event-table thead th{font-size: .69rem !important}
  .event-table tbody td{padding: 7px 6px !important}
  .event-table tbody td:first-child input[type="text"]{font-size: .68rem !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{width: 13% !important}
  .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{width: 15% !important}
  .event-table--cost-general col.col-unit{width: 15% !important}
  .event-table--cost-general col.col-total{width: 19% !important}
}


/* v9 compact section headers + sticky sidebar */
.shell{
  grid-template-columns:260px minmax(0,1fr) !important;
  align-items:start;
}
.content{
  min-width:0;
}
.sidebar{
  position:sticky;
  top:0;
  align-self:start;
  height:100vh;
  max-height:100vh;
  overflow-y:auto;
  padding:18px 16px 18px;
  gap:18px;
}
.sidebar-top,
.sidebar-account{
  display:grid;
  gap:12px;
}
.sidebar-account{
  margin-top:auto;
  padding-top:12px;
}
.brand{
  align-items:flex-start;
  gap:12px;
}
.brand strong{
  display:block;
  font-size:1rem;
  line-height:1.2;
}
.nav{
  gap:4px;
}
.nav a{
  padding:10px 12px;
}
.profile-card{
  padding:12px 14px;
  border-radius:18px;
}
.button-full{
  min-height:40px;
}

.event-block > .panel-head{
  gap:8px !important;
  margin-bottom:12px;
  align-items:center !important;
}
.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:clamp(.74rem,.78vw,.9rem) !important;
}
.event-block h4{
  display:flex;
  align-items:center;
  font-size:clamp(.76rem,.8vw,.94rem) !important;
  border:2px solid rgba(21,130,92,.95);
  background:rgba(255,255,255,.78);
  color:#0d2834;
  flex:1 1 auto;
}
.section-color-control{
  min-height:36px;
  gap:6px;
  padding:4px 10px;
}
.section-color-control span{
  font-size:.68rem;
}
.section-color-control input[type="color"]{
  width:24px;
  height:24px;
}
.section-head-actions .button.button-small{
  min-height:36px;
  padding:7px 11px;
  font-size:.8rem;
}
.section-move-actions .button{
  width:32px;
  min-width:32px;
  height:32px;
  padding:0 !important;
}

@media (max-width:1100px){
  .shell{
    grid-template-columns:1fr !important;
  }
  .sidebar{
    position:static;
    height:auto;
    max-height:none;
    overflow:visible;
    padding:18px;
  }
}

/* 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 col.col-actions{
  width:68px !important;
}
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,
body:not(.auth-page--login) .event-form .event-table.event-table--staff-plan 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,
body:not(.auth-page--login) .event-form .event-table.event-table--staff-plan th:last-child,
body:not(.auth-page--login) .event-form .event-table.event-table--staff-plan 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;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  padding:5px 9px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.86);
}
.event-offer-versions__label{
  color:var(--muted);
  font-size:.68rem;
  font-weight:700;
}
.event-offer-versions__items{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
}
.event-offer-version-button{
  display:inline-flex;
  align-items:center;
  min-height:27px;
  padding:4px 9px;
  border-radius:999px;
  border:1px solid rgba(155,111,69,.3);
  background:#fff;
  color:var(--accent-dark);
  font-size:.68rem;
  font-weight:700;
}
.event-offer-version-button:hover{
  background:#f7eee4;
}
.offer-snapshot-banner{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 18px;
  border:1px solid #c69b59;
  border-radius:14px;
  background:#fff8e8;
  color:#4d3821;
}
.event-form > .offer-snapshot-banner{
  grid-column:1 / -1 !important;
}
.event-form [data-offer-new-link][hidden],
.event-form .form-actions > button[hidden]{
  display:none !important;
}
.offer-snapshot-banner > div{
  display:grid;
  gap:3px;
}
.offer-snapshot-banner small{
  color:#93652f;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.08em;
}
.offer-snapshot-banner strong{
  font-size:1rem;
}
.offer-snapshot-banner span{
  font-size:.76rem;
}
[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;
}

/* Session inactivity countdown */
.session-timer{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border:1px solid rgba(122,98,70,.16);
  border-radius:14px;
  background:rgba(255,255,255,.72);
  color:var(--ink);
  text-align:left;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease;
}
.session-timer__icon{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(155,111,69,.1);
  color:var(--accent-dark);
}
.session-timer__icon svg{width:17px;height:17px}
.session-timer__copy{display:grid;gap:1px;min-width:0}
.session-timer__copy > span{font-size:.68rem;font-weight:700;line-height:1.2}
.session-timer__copy small{color:var(--muted);font-size:.61rem;line-height:1.2}
.session-timer__countdown{
  min-width:46px;
  color:var(--accent-dark);
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:.86rem;
  font-variant-numeric:tabular-nums;
  letter-spacing:.02em;
  text-align:right;
}
.session-timer.is-expiring{
  border-color:rgba(140,59,53,.38);
  background:#fff0ed;
  color:#6f2925;
}
.session-timer.is-expiring .session-timer__icon{background:rgba(140,59,53,.12);color:var(--danger)}
.session-timer.is-expiring .session-timer__copy small,
.session-timer.is-expiring .session-timer__countdown{color:var(--danger)}
.session-timer.is-expired{opacity:.78}

@media (max-width:1100px){
  .session-timer{max-width:300px;width:100%;justify-self:center}
}


/* v13 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;
  min-width:220px;
  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;
  vertical-align:middle !important;
}
.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;
}
.dashboard-events-table__delete{
  min-height:32px;
  padding:7px 12px !important;
  font-size:.82rem !important;
}

@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%;
  }
}

/* v14 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--todo .event-section-surface .todo-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{
  table-layout:fixed;
}
.dashboard-events-table th,
.dashboard-events-table td{
  vertical-align:middle !important;
}
.dashboard-events-table__actions-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  white-space:nowrap;
}
.dashboard-events-table__actions-wrap form{
  margin:0;
}
.dashboard-events-table__delete{
  min-height:28px;
  padding:5px 10px !important;
  font-size:.78rem !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;
  }
}


/* v15 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{
  display:flex !important;
  align-items:center !important;
  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;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  white-space:nowrap;
}
.dashboard-events-table__actions-wrap form{
  display:inline-flex;
  align-items:center;
  margin:0;
}
.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:.82rem;
  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;
}

/* v17 saved client picker + deterministic section title alignment */
.inline-field-stack{
  display:grid;
  gap:8px;
}
.inline-field-stack select,
.inline-field-stack input{
  width:100%;
}

.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;
}

/* v18 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:.88rem}.template-apply-date input{min-width:160px;padding:10px 12px;border-radius:14px}


/* v21 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;
}
.sidebar-account{
  text-align:center;
}
.profile-card{
  justify-items:center;
  text-align:center;
}
.profile-card__name{
  display:block;
  width:100%;
  text-align:center;
  line-height:1.25;
}
.sidebar-account .badge{
  justify-self:center;
}
.sidebar-account form{
  display:block;
}
.sidebar-account .button-full{
  justify-content:center;
}

/* v22 compact application interface */
html{font-size:var(--app-font-size,14px)}
body:not(.auth-page--login){font-size:.94rem;line-height:1.42}
body:not(.auth-page--login) .shell{grid-template-columns:232px minmax(0,1fr) !important}
body:not(.auth-page--login) .sidebar{padding:14px 12px;gap:14px}
body:not(.auth-page--login) .brand{gap:10px}
body:not(.auth-page--login) .brand-mark{width:44px;height:44px}
body:not(.auth-page--login) .brand-mark--image{padding:6px}
body:not(.auth-page--login) .brand strong{font-size:.9rem;line-height:1.18}
body:not(.auth-page--login) .eyebrow,
body:not(.auth-page--login) small.eyebrow{font-size:.64rem;letter-spacing:.14em;margin-bottom:.5rem}
body:not(.auth-page--login) .nav{gap:2px}
body:not(.auth-page--login) .nav a{padding:8px 10px;border-radius:11px;font-size:.86rem}
body:not(.auth-page--login) .sidebar-account{gap:8px;padding-top:8px}
body:not(.auth-page--login) .profile-card{padding:10px 12px;border-radius:14px}
body:not(.auth-page--login) .profile-card__name{font-size:.86rem}
body:not(.auth-page--login) .badge{padding:5px 9px;font-size:.7rem}
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:clamp(2.15rem,3.5vw,3.35rem)}
body:not(.auth-page--login) h2{font-size:clamp(1.65rem,2.6vw,2.25rem)}
body:not(.auth-page--login) h3{font-size:1.38rem}
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-panel{grid-template-columns:1.45fr .8fr;gap:16px;padding:22px;margin-bottom:16px;border-radius:24px}
body:not(.auth-page--login) .hero-panel p{margin:.7rem 0 0}
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:1.35rem}
body:not(.auth-page--login) .grid{gap:12px;margin-bottom:12px}
body:not(.auth-page--login) .button,
body:not(.auth-page--login) .link-button{gap:6px;padding:8px 13px;font-size:.84rem;box-shadow:0 7px 16px rgba(155,111,69,.16)}
body:not(.auth-page--login) .button-small{padding:7px 10px;font-size:.78rem}
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:.83rem;line-height:1.22}
body:not(.auth-page--login) textarea{min-height:76px}
body:not(.auth-page--login) table{font-size:.8rem}
body:not(.auth-page--login) thead th{padding:8px 9px;font-size:.72rem}
body:not(.auth-page--login) tbody td{padding:9px}
body:not(.auth-page--login) .sub-row td{font-size:.78rem}
body:not(.auth-page--login) .small-note{font-size:.76rem}
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{gap:12px !important}
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:.67rem !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:.69rem !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:.74rem}
body:not(.auth-page--login) .summary-card strong{font-size:1.18rem}
body:not(.auth-page--login) .section-total{padding:10px 12px;border-radius:13px}
body:not(.auth-page--login) .section-total strong{font-size:1rem}

@media (max-width:1100px){
  body:not(.auth-page--login) .shell{grid-template-columns:1fr !important}
  body:not(.auth-page--login) .sidebar{position:static;height:auto;max-height:none;overflow:visible;padding:14px}
  body:not(.auth-page--login) .content{padding:18px}
  body:not(.auth-page--login) .hero-panel{grid-template-columns:1fr}
}

/* ServiceDesk-inspired login */
.auth-page--login{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:28px;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(155,111,69,.13),transparent 29%),
    radial-gradient(circle at 92% 88%,rgba(124,85,50,.1),transparent 31%),
    #f3eee7;
}
.login-shell{
  position:relative;
  z-index:1;
  width:min(1120px,100%);
  min-height:min(720px,calc(100vh - 56px));
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(410px,.92fr);
  overflow:hidden;
  border:1px solid rgba(92,72,50,.12);
  border-radius:30px;
  background:#fff;
  box-shadow:0 30px 80px rgba(49,37,24,.16);
}
.login-intro{
  position:relative;
  min-width:0;
  padding:34px 38px;
  display:flex;
  flex-direction:column;
  color:#fff;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%,rgba(201,153,105,.2),transparent 26%),
    linear-gradient(145deg,#2c2925 0%,#4a4037 58%,#6a5240 100%);
}
.login-intro::after{
  content:"";
  position:absolute;
  right:-130px;
  bottom:-170px;
  width:420px;
  height:420px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:50%;
  box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.018);
  pointer-events:none;
}
.login-brand{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:13px;
}
.login-brand__logo{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  padding:7px;
  border-radius:15px;
  background:#fff;
  box-shadow:0 12px 28px rgba(0,0,0,.15);
}
.login-brand__logo img{display:block;width:100%;height:100%;object-fit:contain}
.login-brand__text{display:grid;gap:2px}
.login-brand__text small{
  color:#dcb486;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.login-brand__text strong{font-size:.98rem;line-height:1.2}
.login-intro__content{
  position:relative;
  z-index:1;
  max-width:570px;
  margin:auto 0;
  padding:56px 0 34px;
}
.login-intro__eyebrow{
  display:block;
  margin-bottom:16px;
  color:#e4b987;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.login-intro h1{
  max-width:9ch;
  color:#fff;
  font-size:clamp(3rem,5.2vw,5.1rem);
  line-height:.92;
  letter-spacing:-.025em;
}
.login-intro__content > p{
  max-width:48ch;
  margin:24px 0 0;
  color:rgba(255,255,255,.73);
  font-size:1rem;
  line-height:1.65;
}
.login-benefits{
  display:grid;
  gap:13px;
  max-width:500px;
  margin-top:32px;
}
.login-benefit{
  display:flex;
  align-items:center;
  gap:13px;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:16px;
  background:rgba(255,255,255,.055);
  backdrop-filter:blur(10px);
}
.login-benefit__icon{
  flex:0 0 auto;
  width:37px;
  height:37px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#efc493;
  background:rgba(255,255,255,.09);
}
.login-benefit__icon svg{width:20px;height:20px}
.login-benefit > span:last-child{display:grid;gap:1px}
.login-benefit strong{font-size:.84rem}
.login-benefit small{color:rgba(255,255,255,.62);font-size:.73rem;line-height:1.35}
.login-panel{
  position:relative;
  min-width:0;
  display:grid;
  place-items:center;
  padding:48px 52px;
  background:linear-gradient(180deg,#fff 0%,#fcfaf7 100%);
}
.login-panel__inner{width:min(390px,100%)}
.login-header{margin-bottom:28px}
.login-security{
  display:inline-flex;
  align-items:center;
  margin-bottom:16px;
  padding:6px 10px;
  border:1px solid #eadac8;
  border-radius:999px;
  color:#865d38;
  background:#fbf5ee;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.login-header h2{
  font-size:clamp(2.45rem,4vw,3.4rem);
  line-height:.95;
  letter-spacing:-.02em;
}
.login-header p{margin:13px 0 0;color:var(--muted);font-size:.88rem}
.login-panel .alert{margin:0 0 18px;padding:11px 13px;border-radius:12px;font-size:.8rem}
.login-form{display:grid;gap:16px}
.login-field{display:grid;gap:7px}
.login-field > span,
.login-field__heading{color:#2a2520;font-size:.8rem;font-weight:600}
.login-field > span small{color:var(--muted);font-size:.7rem;font-weight:500}
.login-field__heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.login-field__heading a{color:var(--accent-dark);font-size:.72rem;font-weight:600}
.login-field__heading a:hover{text-decoration:underline;text-underline-offset:3px}
.login-field input{
  min-height:47px;
  padding:11px 13px;
  border:1px solid #dfd5c8;
  border-radius:12px;
  background:#fff;
  color:var(--ink);
  font-size:.9rem;
  line-height:1.2;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.login-field input:hover{border-color:#cbb8a4}
.login-field input:focus{
  outline:none;
  border-color:var(--accent);
  box-shadow:0 0 0 4px rgba(155,111,69,.12);
}
.login-field input::placeholder{color:#aaa096}
.login-submit{
  min-height:47px;
  margin-top:3px;
  border-radius:12px;
  font-size:.87rem;
  box-shadow:0 12px 24px rgba(124,85,50,.2);
}
.login-authorized{
  margin:20px 0 0;
  color:#958a7e;
  font-size:.68rem;
  line-height:1.45;
  text-align:center;
}

@media (max-width:900px){
  .auth-page--login{padding:18px}
  .login-shell{min-height:auto;grid-template-columns:1fr;border-radius:24px}
  .login-intro{padding:24px 26px}
  .login-intro__content{padding:42px 0 12px}
  .login-intro h1{max-width:none;font-size:clamp(2.7rem,10vw,4.2rem)}
  .login-benefits{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}
  .login-benefit{align-items:flex-start}
  .login-panel{padding:38px 28px}
}
@media (max-width:620px){
  .auth-page--login{padding:0;background:#fff}
  .login-shell{width:100%;min-height:100vh;border:0;border-radius:0;box-shadow:none}
  .login-intro{padding:20px 20px 24px}
  .login-intro__content{padding:34px 0 6px}
  .login-intro__content > p{margin-top:16px;font-size:.86rem}
  .login-benefits{display:none}
  .login-panel{padding:34px 22px 42px}
  .login-header{margin-bottom:24px}
}

/* v23 Comfortaa + scrollable dashboard news */
body,
button,
input,
select,
textarea{
  font-family:'Comfortaa',system-ui,sans-serif;
}

h1,h2,h3,h4,h5,h6,
.hero-metrics strong,
.stat-card strong,
.summary-card strong,
.section-total strong,
.collaboration-modal__header strong{
  font-family:'Comfortaa',system-ui,sans-serif;
}

.dashboard-overview{
  grid-template-columns:minmax(0,1.55fr) minmax(250px,.65fr);
  align-items:stretch;
}

.dashboard-news{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.dashboard-news__header{
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.dashboard-news__header .eyebrow{
  margin-bottom:.35rem !important;
}

.dashboard-news__header h2{
  font-size:1.55rem !important;
  line-height:1.15;
}

.dashboard-news__feed{
  min-height:0;
  max-height:238px;
  overflow-y:auto;
  overscroll-behavior:contain;
  display:grid;
  gap:9px;
  padding:1px 7px 1px 1px;
  scrollbar-width:thin;
  scrollbar-color:rgba(155,111,69,.55) rgba(155,111,69,.08);
}

.dashboard-news__feed::-webkit-scrollbar{width:8px}
.dashboard-news__feed::-webkit-scrollbar-track{background:rgba(155,111,69,.08);border-radius:999px}
.dashboard-news__feed::-webkit-scrollbar-thumb{background:rgba(155,111,69,.5);border-radius:999px}

.news-card__columns{
  position:sticky;
  z-index:2;
  top:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) 14px;
  align-items:center;
  gap:10px;
  padding:3px 12px 2px;
  background:rgba(255,253,250,.96);
  color:#8a7c6f;
  font-size:.58rem;
  font-weight:700;
  letter-spacing:.07em;
  line-height:1.25;
  text-transform:uppercase;
}

.news-card__columns-line{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(90px,28%) minmax(155px,34%) minmax(0,1fr);
}

.news-card__columns-line>span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.news-card__columns-line>span:nth-child(2),
.news-card__columns-line>span:nth-child(3){
  padding-left:12px;
}

.dashboard-news__empty{
  min-height:120px;
  display:grid;
  place-content:center;
  gap:5px;
  padding:20px;
  text-align:center;
  color:var(--muted);
  border:1px dashed var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.46);
}

.dashboard-news__empty strong{
  color:var(--ink);
  font-size:.9rem;
}

.dashboard-news__empty span{
  font-size:.78rem;
}

.news-card{
  padding:0;
  border:1px solid var(--line);
  border-radius:12px;
  background:rgba(255,255,255,.78);
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}

.news-card.is-unread{
  border-color:rgba(155,111,69,.48);
  background:#fffaf4;
}

.news-card__open{
  width:100%;
  min-height:44px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 14px;
  align-items:center;
  gap:10px;
  padding:9px 12px;
  border:0;
  border-radius:inherit;
  background:transparent;
  color:var(--ink);
  text-align:left;
  cursor:pointer;
  box-shadow:none;
}

.news-card__open:hover{
  background:rgba(155,111,69,.07);
}

.news-card__open:focus-visible{
  outline:2px solid rgba(155,111,69,.7);
  outline-offset:2px;
}

.news-card__line{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(90px,28%) minmax(155px,34%) minmax(0,1fr);
  align-items:center;
}

.news-card__title{
  min-width:0;
  display:block;
  overflow:hidden;
  padding-right:12px;
  color:var(--ink);
  font-size:.78rem;
  font-weight:700;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.news-card.is-read .news-card__title{
  font-weight:600;
}

.news-card__creator{
  min-width:0;
  display:flex;
  align-items:center;
  gap:5px;
  overflow:hidden;
  padding-left:12px;
  border-left:1px solid var(--line);
  color:#786b5e;
  font-size:.63rem;
  line-height:1.35;
  white-space:nowrap;
}

.news-card__creator>span:first-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}

.news-card__creator time{
  flex:0 0 auto;
  color:var(--muted);
}

.news-card__excerpt{
  min-width:0;
  overflow:hidden;
  padding-left:12px;
  border-left:1px solid var(--line);
  color:var(--muted);
  font-size:.7rem;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.news-card__arrow{
  color:var(--accent-dark);
  font-size:1.25rem;
  line-height:1;
  text-align:center;
}

.news-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin:4px 0 0;
  color:var(--muted);
  font-size:.66rem;
  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:1.35rem!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:1.3rem;
  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:.82rem;
  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:.78rem;
  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:.68rem;
  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:.8rem;
}

.news-readers__header span{
  min-width:26px;
  padding:3px 8px;
  border-radius:999px;
  background:#fff;
  color:var(--accent-dark);
  font-size:.68rem;
  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:.72rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}

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

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

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

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

.news-card__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-card__actions form{
  margin:0;
}

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

.news-composer{
  position:static;
}

.news-edit{
  position:relative;
}

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

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

.news-composer__form{
  position:absolute;
  z-index:30;
  top:calc(100% + 8px);
  right:0;
  left:0;
  width:100%;
  max-width:none;
  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:.74rem;
  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:1100px){
  .dashboard-overview{
    grid-template-columns:1fr !important;
  }
  .dashboard-news__feed{
    max-height:280px;
  }
}

@media (max-width:640px){
  .dashboard-news__header{
    align-items:stretch;
    flex-direction:column;
  }
  .news-composer__form{
    position:static;
    width:100%;
    margin-top:8px;
  }
  .dashboard-news__feed{
    max-height:320px;
  }
  .news-card__line,
  .news-card__columns-line{
    grid-template-columns:minmax(90px,40%) minmax(0,1fr);
  }
  .news-card__columns-line>span:nth-child(2){padding-left:8px}
  .news-card__columns-line>span:nth-child(3){display:none}
  .news-card__creator{
    min-width:0;
    max-width:none;
    padding-left:8px;
  }
  .news-card__excerpt{
    display:none;
  }
  .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:.78rem;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:.85rem;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:.8rem;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:.68rem;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}
.auth-page--login .auth-language-switch .language-switch__button{background:rgba(255,255,255,.94)}

/* Rich editor for dashboard news */
.news-editor-field{display:grid;gap:6px}
.news-editor-field__label{font-size:.74rem;font-weight:600}
.news-editor{position:relative;width:100%;min-width:0;overflow:visible;border:1px solid var(--line);border-radius:13px;background:#fff}
.news-editor:focus-within{border-color:rgba(155,111,69,.68);box-shadow:0 0 0 3px rgba(155,111,69,.11)}
.news-editor__toolbar{position:relative;display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:7px;border-bottom:1px solid var(--line);border-radius:12px 12px 0 0;background:#f8f4ef}
.news-editor__gallery-setting{display:inline-flex;align-items:center;gap:5px;min-height:30px;margin:0;padding:3px 5px 3px 8px;border:1px solid rgba(121,95,66,.2);border-radius:7px;background:#fff;color:#5f5145;font-size:.66rem;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 rgba(121,95,66,.2);border-radius:5px;background-color:#fff;color:#312a23;font:inherit;box-shadow:none}
.news-editor__table-picker{position:relative;display:inline-flex}
.news-editor__table-menu[hidden]{display:none!important}
.news-editor__table-menu{position:absolute;z-index:90;top:calc(100% + 7px);left:0;width:max-content;min-width:236px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 18px 40px rgba(45,33,20,.2)}
.news-editor__table-picker-head{display:grid;gap:2px;margin-bottom:8px;color:#312a23}
.news-editor__table-picker-head strong{font-size:.72rem}
.news-editor__table-picker-head span{color:var(--muted);font-size:.62rem}
.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 #cdbda9;border-radius:2px;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:#9b6f45;background:#ead8c2;outline:0}
.news-editor__image-tools[hidden]{display:none!important}
.news-editor__image-tools{display:grid;gap:6px;padding:7px 10px;border-bottom:1px solid var(--line);background:#fffaf4;color:#4e4034;font-size:.69rem}
.news-editor__image-tools-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.news-editor__image-tools-row>strong{font-size:.7rem;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:5px 6px;border:1px solid rgba(121,95,66,.16);border-radius:9px;background:#fff}
.news-editor__image-layout-group--wrap{border-color:rgba(155,111,69,.35);background:#fff7ed}
.news-editor__image-layout-label{color:#6f6154;font-size:.65rem;font-weight:700;white-space:nowrap}
.news-editor__image-resize-help{align-self:center;color:var(--muted);font-size:.62rem;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:27px;padding:4px 8px;border:1px solid rgba(121,95,66,.24);border-radius:7px;background:#fff;color:#312a23;font:inherit;font-size:.67rem;cursor:pointer}
.news-editor__image-preset:hover,.news-editor__image-reset:hover,.news-editor__image-layout-button:hover{border-color:rgba(121,95,66,.55);background:#f7ede2}
.news-editor__image-preset:disabled,.news-editor__image-reset:disabled,.news-editor__image-layout-button:disabled{opacity:.48;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__surface img[data-editor-selected="1"]{outline:0;cursor:default}
.news-editor__image-resizer[hidden]{display:none!important}
.news-editor__image-resizer{position:absolute;z-index:35;box-sizing:border-box;border:1px solid #9b6f45;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:#9b6f45;box-shadow:0 1px 4px rgba(46,31,17,.32);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__tool,.news-editor__select,.news-editor__color{min-height:30px;border:1px solid rgba(121,95,66,.2);border-radius:7px;background:#fff;color:#312a23;font:inherit;font-size:.7rem;box-shadow:none}
.news-editor__tool{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:5px 8px;cursor:pointer}
.news-editor__tool:hover{border-color:rgba(121,95,66,.48);background:#fffaf4}
.news-editor__tool:disabled{opacity:.55;cursor:wait}
.news-editor__select{width:auto;max-width:125px;padding:4px 23px 4px 7px}
.news-editor__select--size{max-width:85px}
.news-editor__color{position:relative;display:inline-grid;place-items:center;width:31px;padding:0;overflow:hidden;cursor:pointer;font-weight:700}
.news-editor__color input{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;opacity:0;cursor:pointer}
.news-editor__color--background{background:linear-gradient(180deg,#fff 0 58%,#fff2a8 58%)}
.news-editor__surface{width:100%;min-width:0;min-height:150px;max-height:350px;overflow:auto;padding:12px 13px;outline:0;color:#312b25;font-size:.79rem;line-height:1.55;white-space:normal}
.news-editor__surface:empty::before{content:attr(data-placeholder);color:#a39a91;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:1.35rem!important}.news-editor__surface h3{font-size:1.13rem!important}.news-editor__surface h4{font-size:.98rem!important}
.news-editor__surface blockquote{margin:.6rem 0;padding:8px 12px;border-left:3px solid var(--accent);background:#faf5ef;color:#5c5147}
.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 #d8cabb;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:#7d4f27;text-decoration:underline;text-underline-offset:2px}
.news-editor__status{min-height:0;padding:0 10px;color:#35634e;font-size:.67rem}
.news-editor__status:not(:empty){padding-top:6px;padding-bottom:7px;border-top:1px solid rgba(229,218,203,.7)}
.news-editor__status.is-error{color:var(--danger)}
.news-editor__input{display:none!important}
.news-composer__form{width:100%;max-width:none}
.news-edit__form{width:100%;max-width:none}
.news-editor-field{width:100%;min-width:0}
.news-card__content.rich-content{display:block}
.rich-content p{width:auto;max-width:none!important;margin:.35rem 0}
.rich-content h2{font-size:1.18rem!important}.rich-content h3{font-size:1.02rem!important}.rich-content h4{font-size:.9rem!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:#faf5ef}

@media (max-width:1100px){
  .news-composer__form{width:100%}
}
@media (max-width:640px){
  .auth-language-switch{top:14px;right:14px}
  .language-switch__menu{right:0}
  .news-editor__toolbar{max-height:none;overflow:visible}
  .news-editor__table-menu{left:auto;right:0;max-width:calc(100vw - 48px)}
  .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:135px}
  .news-composer__form{width:100%}
}

/* Password recovery page */
.auth-page--forgot .auth-visual{align-content:center}
.auth-page--forgot .auth-visual h1{font-size:clamp(2rem,3.4vw,3.65rem);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}}

/* Login autofill control and persistent sign-in */
.auth-autofill-trap{
  position:fixed!important;
  left:-10000px!important;
  top:-10000px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.login-remember{
  display:flex;
  align-items:center;
  gap:9px;
  width:max-content;
  max-width:100%;
  color:#4d453d;
  font-size:.76rem;
  font-weight:600;
  cursor:pointer;
}
.login-remember input{
  width:17px;
  height:17px;
  min-height:0;
  margin:0;
  padding:0;
  accent-color:var(--accent-dark);
}

/* Settings: global interface font size */
.settings-font-block{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,320px);
  align-items:end;
  gap:20px;
}
.settings-font-block h4{margin:0 0 5px}
.settings-font-block p{margin:0;max-width:68ch}
.settings-font-control{align-self:end}

/* 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){
  .settings-font-block{grid-template-columns:1fr;align-items:stretch}
  .auth-card--forgot{padding-top:70px}
  .auth-card--forgot .auth-language-switch{top:16px;right:16px}
}

/* Supplier and customer directories */
.nav-section{
  display:grid;
  gap:2px;
  margin:4px 0;
  padding:7px 0 5px;
  border-top:1px solid rgba(122,98,70,.12);
  border-bottom:1px solid rgba(122,98,70,.12);
}
.nav-section__label{
  padding:0 10px 3px;
  color:var(--accent-dark);
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body:not(.auth-page--login) .nav .nav-section a{
  padding-left:22px;
}
.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;
}
.field-copy-button{
  justify-self:start;
  padding-block:8px;
}

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

/* v24 dense spreadsheet-like Event form for compact notebook screens */
body:not(.auth-page--login) .event-form{
  gap:8px !important;
  font-size:.86rem;
}
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:1.05rem;
  line-height:1.08;
}
body:not(.auth-page--login) .event-form .panel-head .eyebrow{
  margin-bottom:2px;
  font-size:.58rem;
}
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:1.45rem;
}
body:not(.auth-page--login) .event-form .event-header-brand p{
  margin:4px 0 0;
  font-size:.72rem;
  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 .event-form-grid,
body:not(.auth-page--login) .event-form .form-grid{
  column-gap:8px;
  row-gap:5px;
}
body:not(.auth-page--login) .event-form label{
  gap:2px;
}
body:not(.auth-page--login) .event-form label > span{
  font-size:.72rem;
  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{
  min-height:28px;
  padding:4px 7px !important;
  border-radius:5px !important;
  font-size:.75rem;
  line-height:1.1;
}
body:not(.auth-page--login) .event-form .inline-field-stack{
  gap:4px;
}
body:not(.auth-page--login) .event-form .inline-field-actions{
  gap:4px;
}
body:not(.auth-page--login) .event-form .inline-field-actions .button,
body:not(.auth-page--login) .event-form .field-copy-button{
  min-height:28px;
  padding:4px 8px !important;
  border-radius:5px;
  font-size:.69rem;
  box-shadow:none;
}
body:not(.auth-page--login) .event-form .event-section-surface{
  padding:7px !important;
  border-radius:7px !important;
  box-shadow:none;
}
body:not(.auth-page--login) .event-form .event-section--notes textarea{
  min-height:50px;
}
body:not(.auth-page--login) .event-form .todo-grid,
body:not(.auth-page--login) .event-form .todo-columns,
body:not(.auth-page--login) .event-form .todo-column{
  gap:5px;
}
body:not(.auth-page--login) .event-form .todo-row{
  gap:2px;
}
body:not(.auth-page--login) .event-form .checkbox-card{
  min-height:27px;
  gap:6px;
  padding:4px 6px;
  border-radius:5px;
}
body:not(.auth-page--login) .event-form .checkbox-card input[type="checkbox"]{
  width:13px;
  height:13px;
  margin-top:0;
}
body:not(.auth-page--login) .event-form .checkbox-card strong{
  font-size:.7rem;
  line-height:1.05;
}
body:not(.auth-page--login) .event-form .section-stack{
  gap:7px;
}
body:not(.auth-page--login) .event-form .event-block{
  gap:5px !important;
  padding:7px !important;
  border-radius:7px !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{
  min-width:125px !important;
  min-height:27px !important;
  padding:3px 7px !important;
  border-width:1px;
  border-radius:5px;
  font-size:.7rem !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:.66rem;
}
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 .section-move-actions .button{
  width:25px !important;
  min-width:25px !important;
  height:25px !important;
  border-radius:5px;
}
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{
  padding:2px 4px !important;
  border-bottom:1px solid rgba(122,98,70,.25);
  font-size:.61rem !important;
  line-height:1.05;
}
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{
  height:27px;
  padding:2px !important;
  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;
  min-height:22px;
  padding:2px 4px !important;
  border-radius:3px !important;
  font-size:.68rem !important;
  line-height:1.05;
}
body:not(.auth-page--login) .event-form .event-table tbody td:first-child input[type="text"]{
  padding-inline:4px !important;
  font-size:.66rem !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:.7rem;
  line-height:1.05;
}
body:not(.auth-page--login) .event-form .event-table col.col-actions{
  width:34px !important;
}
body:not(.auth-page--login) .event-form .event-table .button{
  min-width:23px;
  min-height:23px;
  padding:2px 4px !important;
  border-radius:4px;
  box-shadow:none;
  font-size:.68rem;
}
body:not(.auth-page--login) .event-form .section-total{
  gap:7px;
  padding:5px 7px !important;
  border-radius:4px !important;
  font-size:.72rem;
}
body:not(.auth-page--login) .event-form .section-total strong{
  font-size:.78rem;
}
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:.64rem;
}
body:not(.auth-page--login) .event-form .summary-card strong,
body:not(.auth-page--login) .event-form .summary-card--tiny strong{
  font-size:.84rem;
}

@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:32px;
  }
}

/* v25 reduced row heights for 14-inch notebook screens */
body:not(.auth-page--login) .event-form .event-form-grid,
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-stack,
body:not(.auth-page--login) .event-form .inline-field-actions{
  gap:2px;
}
body:not(.auth-page--login) .event-form .inline-field-actions .button,
body:not(.auth-page--login) .event-form .field-copy-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 .todo-grid,
body:not(.auth-page--login) .event-form .todo-columns,
body:not(.auth-page--login) .event-form .todo-column{
  gap:3px;
}
body:not(.auth-page--login) .event-form .todo-row{
  gap:1px;
}
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 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{
  height:23px;
  padding:1px !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:20px;
  min-height:20px;
  padding:1px 3px !important;
  border-radius:2px !important;
  line-height:1;
}
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 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{
    height:25px;
    min-height:25px;
  }
  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{
    height:28px;
  }
  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;
  }
}

/* v26 vertically center every compact Event form row and cell */
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;
  line-height:18px;
}
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;
  }
}

/* v27 compact, vertically centered 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 */
.nav-link--templates{display:flex!important;align-items:center;gap:10px}.nav-link__icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(155,111,69,.1);color:var(--accent-dark);font-size:14px}.template-type-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.template-type-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:20px 22px;border-radius:24px;border:1px solid var(--line);background:rgba(255,255,255,.76);box-shadow:0 12px 34px rgba(67,48,30,.08);transition:.2s ease}.template-type-card:hover{transform:translateY(-2px);border-color:rgba(155,111,69,.35)}.template-type-card.is-active{background:linear-gradient(135deg,rgba(155,111,69,.14),rgba(255,255,255,.95));border-color:rgba(155,111,69,.42);box-shadow:0 16px 38px rgba(111,76,43,.14)}.template-type-card__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:18px;background:#f2e9df;color:var(--accent-dark);font-size:27px;font-weight:700}.template-type-card__icon--money{background:#e7f1ea;color:#257047;font-family:Georgia,serif}.template-type-card strong{display:block;font-size:1.08rem}.template-type-card small{display:block;margin-top:4px;color:var(--muted);line-height:1.45}.template-type-card__count{display:grid;place-items:center;min-width:34px;height:34px;padding:0 9px;border-radius:999px;background:var(--paper-soft);font-weight:700}.templates-panel-head{align-items:flex-start}.template-heading-money{display:inline-grid;place-items:center;width:38px;height:38px;margin-right:8px;border-radius:12px;background:#e7f1ea;color:#257047;font-family:Georgia,serif;font-size:1.4rem;vertical-align:middle}.template-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.template-card{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.92);box-shadow:0 12px 34px rgba(67,48,30,.08)}.template-card__preview{height:150px;display:grid;place-items:center;border-bottom:1px solid var(--line);background:linear-gradient(145deg,#f7f1e9,#eee4d8)}.template-card__preview--calculation{grid-template-columns:auto 1fr;gap:22px;padding:26px;background:linear-gradient(145deg,#eef5f0,#dfece4)}.template-mini-sheet{width:180px;height:104px;padding:14px;border-radius:8px;background:#fff;box-shadow:0 14px 28px rgba(57,40,25,.15);display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.template-mini-sheet span{border-radius:4px;background:#eadfd3}.template-mini-sheet span:first-child{grid-column:span 2;height:18px;background:#c8a57e}.template-card__money{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:#fff;color:#257047;font:700 38px/1 Georgia,serif;box-shadow:0 12px 24px rgba(26,89,54,.12)}.template-mini-lines{display:grid;gap:10px;width:100%}.template-mini-lines span{height:13px;border-radius:999px;background:rgba(37,112,71,.18)}.template-mini-lines span:nth-child(2){width:78%}.template-mini-lines span:nth-child(3){width:58%}.template-card__body{display:grid;gap:16px;padding:20px}.template-card__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.template-card__title-row h3{font-size:1.3rem}.template-card__meta{display:grid;gap:8px;margin:0}.template-card__meta div{display:flex;justify-content:space-between;gap:14px;padding-bottom:8px;border-bottom:1px dashed rgba(122,98,70,.18)}.template-card__meta div:last-child{border-bottom:none}.template-card__meta dt{color:var(--muted)}.template-card__meta dd{margin:0;text-align:right;font-weight:600}.template-card__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.template-card__actions form{margin:0}.template-preview-dialog{width:min(1180px,calc(100vw - 34px));height:min(880px,calc(100vh - 34px));padding:0;border:0;border-radius:26px;background:#fff;box-shadow:0 30px 90px rgba(24,19,14,.34)}.template-preview-dialog::backdrop{background:rgba(20,17,14,.62);backdrop-filter:blur(5px)}.template-preview-dialog[open]{display:grid;grid-template-rows:auto 1fr auto}.template-preview-dialog__header,.template-preview-dialog__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;background:#fff}.template-preview-dialog__header{border-bottom:1px solid var(--line)}.template-preview-dialog__header h2{font-size:1.55rem}.template-preview-dialog__footer{justify-content:flex-end;border-top:1px solid var(--line)}.template-preview-dialog__close{border:0;background:#f3eee8;color:var(--ink);width:42px;height:42px;border-radius:50%;font-size:28px;line-height:1;cursor:pointer}.template-preview-dialog__body{position:relative;min-height:0;background:#ddd5cc}.template-preview-dialog iframe{width:100%;height:100%;border:0;background:#f4f0eb}.template-preview-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:rgba(244,240,235,.88);font-weight:700;color:var(--muted)}.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}.event-template-picker-panel label{max-width:480px;justify-self:end;width:100%}

/* Standalone Event form template preview */
.template-preview-page{margin:0;padding:22px;background:#d7d0c8}.event-template-preview-document{display:grid;gap:22px;max-width:1320px;margin:0 auto}.event-template-preview-sheet{min-height:720px;padding:42px;border-radius:12px;background:#fff;box-shadow:0 18px 48px rgba(34,26,18,.18);break-after:page}.event-template-preview-sheet--cover{min-height:760px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#fff 0%,#f6efe7 58%,#dfc9b2 100%)}.event-template-preview-brand{display:flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.15em;font-size:.78rem}.event-template-preview-brand img,.event-template-preview-sheet__header img{width:62px;height:62px;object-fit:contain}.event-template-preview-cover-copy{max-width:750px}.event-template-preview-cover-copy small{color:var(--accent);text-transform:uppercase;letter-spacing:.15em}.event-template-preview-cover-copy h1{margin-top:18px;font-size:clamp(3rem,7vw,6.5rem);line-height:.95}.event-template-preview-cover-copy p{max-width:620px;color:var(--muted);font-size:1.15rem}.event-template-preview-cover-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--muted)}.event-template-preview-sheet__header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;margin-bottom:26px;border-bottom:2px solid #1f1b18}.event-template-preview-sheet__header small{display:block;color:var(--accent);text-transform:uppercase;letter-spacing:.14em;margin-bottom:8px}.event-template-preview-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.event-template-preview-fields>div,.event-template-preview-notes>div{padding:15px 17px;border-radius:16px;background:#f7f3ee;border:1px solid #e8ddd2}.event-template-preview-fields .span-2{grid-column:span 2}.event-template-preview-fields span,.event-template-preview-notes span,.event-template-preview-summary-grid span{display:block;color:#75695d;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.event-template-preview-fields strong{display:block;margin-top:6px}.event-template-preview-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.event-template-preview-notes p{margin:8px 0 0}.event-template-preview-sections{display:grid;gap:18px}.event-template-preview-section{padding:18px;border-radius:18px;border:1px solid #eadfd4;background:#fbf8f4}.event-template-preview-section h3{font-size:1.12rem;margin-bottom:12px}.preview-table-wrap{overflow:auto}.preview-table{font-size:.82rem}.preview-table th,.preview-table td{padding:9px 10px}.preview-empty{margin:0;color:var(--muted)}.event-template-preview-total{font-size:1.55rem}.event-template-preview-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}.event-template-preview-summary-grid>div{padding:18px;border:1px solid #ddd0c4;border-radius:16px}.event-template-preview-summary-grid strong{display:block;margin-top:8px;font-size:1.35rem}.event-template-preview-summary-grid .is-primary{background:#111;color:#fff;border-color:#111}.event-template-preview-summary-grid .is-primary span{color:#ddd}

@media (max-width:900px){.template-type-switch,.template-card-grid,.template-editor-meta,.event-template-picker-panel{grid-template-columns:1fr}.event-template-picker-panel label{justify-self:stretch}.event-template-preview-fields,.event-template-preview-notes,.event-template-preview-summary-grid{grid-template-columns:1fr}.event-template-preview-fields .span-2{grid-column:auto}.template-preview-dialog{width:calc(100vw - 16px);height:calc(100vh - 16px)}}
@media print{.template-preview-page{padding:0;background:#fff}.event-template-preview-document{display:block;max-width:none}.event-template-preview-sheet{min-height:0;border-radius:0;box-shadow:none;margin:0;page-break-after:always}.event-template-preview-sheet:last-child{page-break-after:auto}}
.template-preview-loading[hidden]{display:none!important}
.nav-section--templates>a{display:flex;align-items:center;gap:9px}.nav-template-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(155,111,69,.1);color:var(--accent-dark);font-size:14px;font-weight:700}.nav-template-icon--money{background:#e7f1ea;color:#257047;font-family:Georgia,serif}

/* Itinerář – správa skladových položek */
.itinerary-create-form{grid-template-columns:minmax(280px,2fr) minmax(190px,.8fr) minmax(230px,1fr) auto;align-items:end}
.itinerary-create-form .form-actions{align-self:end}
.itinerary-row-form{display:grid;grid-template-columns:minmax(280px,2fr) minmax(170px,.7fr) minmax(130px,.55fr) auto;gap:12px;align-items:center}
.itinerary-row-form .checkbox-inline{align-items:center;margin:0}
.itinerary-row-form .inline-actions{justify-content:flex-end;flex-wrap:nowrap}
.event-table--itinerary .col-label{width:auto}.event-table--itinerary .col-qty{width:180px}.event-table--itinerary .col-actions{width:150px}
@media (max-width:1100px){.itinerary-create-form,.itinerary-row-form{grid-template-columns:1fr}.itinerary-row-form .inline-actions{justify-content:flex-start}}

/* v31 Itinerář: Sekce 7 je vždy přímo pod Sekcí 6 a před Personálem. */
body:not(.auth-page--login) .event-form{
  grid-template-areas:
    "header header"
    "notes todo"
    "summary summary"
    "costs sales"
    "itinerary itinerary"
    "staff staff"
    "actions actions" !important;
}
body:not(.auth-page--login) .event-section--itinerary{
  grid-area:itinerary;
  grid-column:1 / -1 !important;
  order:7;
}
body:not(.auth-page--login) .event-section--staff{
  order:8;
}
body:not(.auth-page--login) .event-form > .form-actions{
  order:9;
}

/* 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-row-form{
  display:grid;
  grid-template-columns:minmax(260px,1.55fr) minmax(120px,.55fr) minmax(120px,.55fr) minmax(105px,.45fr) minmax(120px,.55fr) auto;
  gap:10px;
  align-items:center;
}
.itinerary-row-form .inline-actions{justify-content:flex-end;flex-wrap:nowrap}
.itinerary-stock-state{display:flex;align-items:center;justify-content:center}
.itinerary-category-panel{margin-top:14px}
.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){
  body:not(.auth-page--login) .event-form{
    grid-template-areas:
      "header"
      "notes"
      "todo"
      "summary"
      "costs"
      "sales"
      "itinerary"
      "staff"
      "actions" !important;
  }
  .itinerary-create-form,.itinerary-row-form{grid-template-columns:1fr}
  .itinerary-row-form .inline-actions{justify-content:flex-start}
  .itinerary-stock-state{justify-content:flex-start}
}
