.tenant-brand-logo { width:44px; height:44px; flex-shrink:0; object-fit:contain; }
.tenant-brand-logo[hidden],#brandDefaultMark[hidden] { display:none!important; }
.brand>div:last-child { min-width:0; }
#brandName { overflow:hidden; text-overflow:ellipsis; display:block; white-space:nowrap; }
#brandSubtitle { max-width:175px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#presentationManager { color:#284760; max-width:1500px; margin:auto; padding-bottom:32px; }
#presentationManager [hidden],.presentation-dialog [hidden] { display:none!important; }
.presentation-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; flex-wrap:wrap; }
.presentation-heading h1 { margin:5px 0 10px; }
.presentation-heading p,.presentation-section-title p { color:#658095; margin:6px 0 0; font-size:15px; }
.presentation-tools,.presentation-list-tools { display:flex; align-items:end; gap:12px; flex-wrap:wrap; }
.presentation-tools label,.presentation-list-tools label { display:grid; gap:7px; font-size:14px; }
.presentation-card { margin-top:20px; background:#fff; border:1px solid #e2ebf2; border-radius:16px; padding:24px; box-shadow:0 4px 20px #263d5005; }
.presentation-section-title { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
.presentation-section-title h2 { font-size:21px; margin:0; }
.presentation-brand-grid { display:grid; grid-template-columns:200px minmax(0,1fr); gap:32px; }
.presentation-logo-edit { display:flex; flex-direction:column; align-items:center; gap:10px; }
.presentation-logo-preview { width:180px; height:110px; border:1px dashed #bed2e1; border-radius:12px; display:grid; place-items:center; background:linear-gradient(135deg,#f3f9fc,#f0f6f8); }
.presentation-logo-preview img { max-width:155px; max-height:90px; object-fit:contain; }
.presentation-logo-preview span { font-size:22px; color:#8ba6b9; letter-spacing:5px; }
.presentation-logo-edit small { font-size:13px; line-height:1.6; color:#70879a; }
.presentation-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-content:start; }
.presentation-fields label,.presentation-note-field { display:grid; gap:8px; font-size:15px; }
#presentationManager input:not([type=checkbox]):not([type=file]),#presentationManager select,.presentation-dialog input:not([type=checkbox]):not([type=radio]),.presentation-dialog select,.presentation-dialog textarea { width:100%; min-height:43px; box-sizing:border-box; border:1px solid #d5e2ed; border-radius:8px; padding:9px 12px; color:#284760; background:#fbfdff; font:inherit; }
.presentation-dialog textarea { resize:vertical; }
.presentation-dialog input:focus,.presentation-dialog select:focus,#presentationManager input:focus,#presentationManager select:focus { outline:2px solid #81bdd3; outline-offset:1px; }
.presentation-actions { display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; padding-top:20px; margin-top:16px; border-top:1px solid #e9eff4; }
.presentation-actions>span { color:#6c8295; font-size:14px; }
.presentation-pill { display:inline-block; white-space:nowrap; padding:4px 9px; border-radius:20px; background:#eaf7f4; color:#328874; font-size:13px; }
.presentation-pill.muted { background:#eef1f4; color:#7a8a99; }
.presentation-status { margin:12px 0; min-height:20px; font-size:15px; color:#398675; }
.presentation-status:empty { display:none; }
.presentation-status.is-error,#screenEditorStatus { color:#b5564e; }
.presentation-list-tools { border-bottom:1px solid #e9eff4; padding-bottom:18px; margin-bottom:6px; }
.presentation-check { display:flex!important; flex-direction:row; align-items:center; gap:8px!important; padding:8px 0; }
.presentation-check input { width:17px!important; height:17px!important; flex-shrink:0; accent-color:#3999ad; }
.presentation-check small { color:#7890a3; }
.presentation-screen-card { display:grid; grid-template-columns:260px minmax(0,1fr); gap:24px; padding:23px 0; border-bottom:1px solid #e9eff4; }
.presentation-screen-card:last-child { border-bottom:0; padding-bottom:0; }
.presentation-template-thumb { border-radius:12px; padding:8px; border:1px solid #dce7ee; background:#f8fbfd; display:grid; align-self:start; gap:10px; cursor:pointer; text-align:center; font:inherit; color:#4f718b; }
.presentation-template-thumb>span:last-child { font-size:14px; padding-bottom:4px; }
.presentation-preview-image { display:block; aspect-ratio:16/9; overflow:hidden; border-radius:8px; background:#eff4f8; position:relative; }
.presentation-preview-image img { display:block; width:100%; height:100%; object-fit:contain; }
.preview-missing { display:none; }
.preview-unavailable .preview-missing { position:absolute; inset:0; display:grid; place-items:center; font-size:14px; color:#6c8497; }
.preview-unavailable img { visibility:hidden; }
.presentation-screen-title { display:flex; flex-wrap:wrap; gap:9px; align-items:center; }
.presentation-screen-title h3 { margin:0 8px 0 0; font-size:18px; overflow-wrap:anywhere; }
.presentation-screen-copy>p { font-size:14px; color:#6c8497; margin:10px 0; }
.presentation-screen-copy .presentation-notes { white-space:pre-wrap; max-height:90px; overflow:auto; color:#47667d; line-height:1.7; }
.presentation-screen-id { color:#8b9dac; font-size:12px; }
.presentation-screen-actions { display:flex; flex-wrap:wrap; gap:7px 18px; margin-top:14px; }
.presentation-screen-actions button,.presentation-screen-actions a { border:0; padding:3px 0; font:inherit; font-size:14px; color:#31859c; background:transparent; text-decoration:none; cursor:pointer; }
.presentation-screen-actions button:hover,.presentation-screen-actions a:hover { text-decoration:underline; }
.presentation-rules { margin-top:20px; font-size:14px; color:#688196; line-height:1.8; }
.presentation-rules summary { cursor:pointer; }
.presentation-empty,.presentation-loading { padding:40px 20px; text-align:center; color:#728c9f; }
.presentation-dialog { width:min(920px,calc(100vw - 32px)); max-height:90dvh; overflow:auto; border:1px solid #d8e5ee; border-radius:18px; padding:26px; color:#284760; background:#fff; box-shadow:0 25px 80px #27415340; }
.presentation-dialog::backdrop { background:#1d3e524d; backdrop-filter:blur(3px); }
.presentation-dialog fieldset { border:0; padding:0; margin:0; min-width:0; }
.presentation-dialog .presentation-actions { position:sticky; bottom:-26px; background:white; margin-bottom:-26px; padding:16px 0 20px; z-index:2; box-shadow:0 -8px 14px #ffffffee; }
.presentation-template-library { margin:24px 0; padding:20px 0; border-top:1px solid #e9eff4; border-bottom:1px solid #e9eff4; }
.presentation-library-heading { display:flex; gap:16px; justify-content:space-between; align-items:center; flex-wrap:wrap; }
.presentation-library-heading h3 { font-size:19px; margin:0; }
.presentation-library-heading p { font-size:14px; color:#6c8497; margin:7px 0 0; }
.presentation-dialog #templateSearch { width:230px; }
.presentation-template-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:18px 0; }
.presentation-template-option { min-width:0; border:2px solid #e3ebf1; padding:9px; display:flex; flex-direction:column; border-radius:12px; background:white; transition:border-color .15s; }
.presentation-template-option>label { display:grid; gap:12px; cursor:pointer; flex:1; }
.presentation-template-option:hover { border-color:#abcddc; }
.presentation-template-option:has(input:checked) { background:#f2f9fc; border-color:#3b9bb1; }
.presentation-template-option:has(input:focus-visible) { outline:2px solid #388fa6; outline-offset:3px; }
.presentation-template-name { display:flex; align-items:center; gap:7px; font-size:16px; }
.presentation-template-option input { accent-color:#388fa6; width:17px; height:17px; margin:0; flex-shrink:0; }
.presentation-template-selected { margin-left:auto; font-size:12px; color:#238198; visibility:hidden; }
.presentation-template-option:has(input:checked) .presentation-template-selected { visibility:visible; }
.presentation-template-description { color:#71889a; font-size:14px; line-height:1.65; }
.presentation-template-meta { display:flex; align-items:center; justify-content:space-between; gap:6px; border-top:1px solid #e3edf2; margin-top:12px; padding-top:9px; font-size:12px; color:#748b9d; }
.presentation-template-meta button { border:0; background:transparent; color:#2c839a; padding:4px 0; font-size:13px; cursor:pointer; }
.presentation-selected-template { font-size:14px; color:#328496; margin:10px 0 0; }
.presentation-preview-dialog { width:min(1200px,calc(100vw - 32px)); box-sizing:border-box; max-height:94dvh; padding:22px; border:1px solid #d8e5ee; border-radius:16px; background:#fff; color:#284760; box-shadow:0 25px 80px #27415340; }
.presentation-preview-dialog::backdrop { background:#17344580; backdrop-filter:blur(3px); }
.presentation-preview-dialog .presentation-preview-image { max-height:65dvh; margin:auto; }
.presentation-preview-dialog>p { font-size:15px; line-height:1.7; }
.presentation-device-choices { max-height:190px; overflow:auto; border:1px solid #dce7ee; border-radius:10px; padding:8px 15px; margin-top:15px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 10px; }
.presentation-device-choices[hidden] { display:none; }
.presentation-device-choices label { overflow-wrap:anywhere; align-items:flex-start; }
.presentation-toggles { display:flex; gap:24px; flex-wrap:wrap; margin-top:16px; }
.presentation-field-hint { color:#6e879a; font-size:13px; line-height:1.6; margin:3px 0 18px; }
@media(max-width:760px) {
  .presentation-card { padding:18px; }
  .presentation-brand-grid { grid-template-columns:1fr; gap:22px; }
  .presentation-logo-edit { flex-direction:row; flex-wrap:wrap; }
  .presentation-logo-edit small { flex-basis:100%; }
  .presentation-logo-preview { width:130px; height:80px; }
  .presentation-logo-preview img { max-width:110px; max-height:65px; }
  .presentation-fields { grid-template-columns:1fr; gap:14px; }
  .presentation-screen-card { grid-template-columns:1fr; gap:16px; }
  .presentation-template-thumb { width:100%; max-width:360px; }
  .presentation-template-choices { grid-template-columns:1fr; }
  .presentation-dialog #templateSearch { width:100%; }
  .presentation-preview-dialog { padding:16px; }
  .presentation-dialog { padding:18px; }
  .presentation-dialog .presentation-actions { bottom:-18px; margin-bottom:-18px; }
  .presentation-device-choices { grid-template-columns:1fr; }
  .presentation-section-title { align-items:flex-start; flex-wrap:wrap; }
}
