.hutbe-banner{position:relative;width:100%;min-width:0;margin:0 0 22px;overflow:hidden;border-radius:20px;background:#edf3e9;box-shadow:0 8px 28px rgba(23,62,48,.08)}
.hutbe-banner img{display:block;width:100%;height:auto;max-width:100%}
.hutbe-banner-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:600px){.hutbe-banner{border-radius:12px;margin-bottom:16px}}
.hutbe-banner{container-type:inline-size}
.hutbe-banner-copy{position:absolute;left:6%;width:88%;transform:translateY(-50%);font-size:clamp(9px,calc(var(--hutbe-size) * 100cqw / 1024),96px);font-weight:650;line-height:1.25;white-space:pre-wrap;overflow-wrap:anywhere;text-shadow:0 2px 8px #000b;max-height:88%;overflow:auto}
.hutbe-banner-edit{display:none;position:absolute;right:14px;top:14px;border:1px solid #ffffff99;border-radius:10px;background:#fffdf5f5;color:#21483f;padding:9px 15px;font:inherit;font-weight:650;cursor:pointer;box-shadow:0 3px 12px #0002}
.kz-admin .hutbe-banner-edit{display:block}
.hutbe-editor{width:min(880px,calc(100vw - 28px));max-width:880px;max-height:90dvh;overflow:auto;padding:28px;box-sizing:border-box;border:1px solid #dce6df;border-radius:20px;color:#21483f;background:#fffcf8}
.hutbe-editor::backdrop{background:#102d2677}
.hutbe-editor h2{margin:0 35px 8px 0}.hutbe-editor>p{font-size:14px;color:#65756d}
.hutbe-editor-form{display:grid;gap:14px}.hutbe-editor-form label{display:grid;gap:7px;font-weight:600;min-width:0}.hutbe-editor-form textarea,.hutbe-editor-form select{width:100%;box-sizing:border-box;padding:10px;border:1px solid #d5e0d8;border-radius:10px;background:white;font:inherit}
.hutbe-editor-form input[type=file]{width:100%;font:inherit;font-size:14px}.hutbe-editor-form input[type=range]{width:100%;accent-color:#21483f}.hutbe-editor-form small{color:#65756d}.hutbe-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hutbe-editor-form [role=status]{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.hutbe-editor-form .row{flex-wrap:wrap}.hutbe-editor-preview{margin-top:20px}.hutbe-editor-form>button{justify-self:start}
@media(max-width:600px){.hutbe-editor{padding:18px}.hutbe-banner-edit{top:8px;right:8px;padding:6px 10px;font-size:12px}.hutbe-editor-grid{gap:12px}}

/* The Hutbe reader uses the entire available screen. */
#dialog.hutbe-pdf-dialog{inset:0;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:12px 16px;box-sizing:border-box;border:0;border-radius:0}
.hutbe-pdf-dialog .hutbe-pdf-heading h2{font-size:20px}.hutbe-pdf-dialog .hutbe-pdf-toolbar{padding:7px 10px}
.hutbe-pdf-dialog .hutbe-pdf-viewport{padding:8px;scrollbar-gutter:stable both-edges}.hutbe-pdf-dialog .hutbe-pdf-sheet{align-items:flex-start}
.hutbe-pdf-dialog .hutbe-pdf-status,.hutbe-pdf-dialog .hutbe-pdf-status:empty{display:block;min-height:16px;height:16px;line-height:16px;overflow:hidden}
@media(max-width:650px){#dialog.hutbe-pdf-dialog{padding:10px 6px 6px}.hutbe-pdf-dialog .hutbe-pdf-heading h2{font-size:16px}.hutbe-pdf-dialog .hutbe-pdf-toolbar{padding:6px;gap:6px}.hutbe-pdf-dialog .hutbe-pdf-viewport{padding:4px}.hutbe-pdf-dialog .hutbe-pdf-reader{gap:6px}}

/* Read in a centered window over the existing page. */
#dialog.hutbe-pdf-dialog{inset:0;width:min(1120px,calc(100vw - 40px));max-width:1120px;height:90vh;height:90dvh;max-height:calc(100dvh - 32px);margin:auto;padding:20px 18px 14px;border:1px solid #dce6df;border-radius:18px;box-shadow:0 20px 80px #173e3040}
#dialog.hutbe-pdf-dialog::backdrop{background:#143b3266;backdrop-filter:blur(3px)}
.hutbe-editor-preview .hutbe-banner-copy{cursor:grab;user-select:none;touch-action:none;outline-offset:4px}.hutbe-editor-preview .hutbe-banner-copy:focus-visible{outline:2px dashed #c9a34a}.hutbe-editor-preview.is-dragging .hutbe-banner-copy{cursor:grabbing;outline:1px dashed #fff}
@media(max-width:650px){#dialog.hutbe-pdf-dialog{width:calc(100vw - 20px);height:90vh;height:90dvh;max-height:calc(100dvh - 28px);padding:14px 8px 8px;border-radius:14px}}

/* Compact single-row reader header, leaving more height for the PDF. */
#dialog.hutbe-pdf-dialog{height:94vh;height:94dvh;max-height:calc(100dvh - 20px);padding:16px 14px 12px}
.hutbe-pdf-topbar{display:flex;align-items:center;gap:12px;flex:none;min-width:0;max-width:100%;margin-right:28px;padding:7px 10px;overflow-x:auto;overscroll-behavior-x:contain;background:#eaf4f0;border:1px solid #dce8df;border-radius:10px;scrollbar-width:thin}
.hutbe-pdf-topbar .hutbe-pdf-heading{display:flex;align-items:center;gap:12px;padding:0;flex:0 0 auto}
.hutbe-pdf-topbar .hutbe-heading-title{flex:none;max-width:150px}.hutbe-pdf-topbar .hutbe-heading-title h2{margin:0;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:32px}
.hutbe-pdf-topbar .hutbe-heading-title .eyebrow,.hutbe-pdf-topbar .hutbe-audio-label{display:none}
.hutbe-pdf-topbar .hutbe-heading-audio{width:180px;flex:none}.hutbe-pdf-topbar .hutbe-heading-audio audio{height:32px}
.hutbe-pdf-topbar .hutbe-pdf-toolbar{flex:1 0 auto;flex-wrap:nowrap;gap:7px;margin:0;padding:0;border:0;background:transparent;white-space:nowrap}
.hutbe-pdf-topbar .hutbe-pdf-pages,.hutbe-pdf-topbar .hutbe-pdf-zoom{flex:none;gap:5px}.hutbe-pdf-topbar .hutbe-pdf-pages span{min-width:72px}.hutbe-pdf-topbar .hutbe-pdf-zoom output{min-width:34px}
.hutbe-pdf-topbar .hutbe-pdf-toolbar .btn{min-height:32px;padding:5px 8px;font-size:10px;flex:none}.hutbe-pdf-topbar .hutbe-pdf-toolbar>[data-hutbe-download]{margin-left:auto}
@media(max-width:650px){#dialog.hutbe-pdf-dialog{height:94vh;height:94dvh;padding:12px 7px 7px}.hutbe-pdf-topbar{padding:6px 8px;gap:10px;margin-right:27px}.hutbe-pdf-topbar .hutbe-heading-title{max-width:120px}.hutbe-pdf-topbar .hutbe-heading-title h2{font-size:15px}}

/* Hutbe title sits between the controls and the document. */
.hutbe-pdf-caption{flex:none;margin:0;padding:0 10px;font-size:17px;line-height:1.35;font-weight:600;color:#21483f;overflow-wrap:anywhere}
.hutbe-pdf-dialog .hutbe-pdf-status,.hutbe-pdf-dialog .hutbe-pdf-status:empty{height:14px;min-height:14px;line-height:14px}
.hutbe-pdf-dialog .hutbe-pdf-viewport{touch-action:none;overflow:auto;-webkit-overflow-scrolling:touch;overflow-anchor:none}
.hutbe-pdf-dialog .hutbe-pdf-sheet,.hutbe-pdf-dialog .hutbe-pdf-sheet canvas{touch-action:none;user-select:none;-webkit-user-select:none}
@media(max-width:650px){.hutbe-pdf-caption{font-size:15px;padding:0 6px}}

.hutbe-pdf-info{display:grid;grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:8px;flex:none}.hutbe-pdf-info .hutbe-pdf-status{text-align:right;white-space:nowrap;padding-right:8px;box-sizing:border-box}
@media(max-width:650px){.hutbe-pdf-info{grid-template-columns:minmax(0,1fr) 120px;gap:4px}}
