/* Density is equivalent to 80% browser zoom, including typography and controls. */
html[data-theme]{background:var(--nr-bg)!important}
html body{zoom:.8;min-height:125vh;--nr-gap:16px}
html body main{max-width:none;width:100%;min-width:0}
html body :is(.cols,.system-checks,.analytics-published-grid,.topic-catalogue,.contact-layout){gap:var(--nr-gap)!important}
html body :is(.panel,.news-card,.published-card,.slot){margin:0!important}
html body .cols>section{display:flex;flex-direction:column;gap:var(--nr-gap);min-width:0}
html body :is(.system-checks,.analytics-published-grid,.plan-list){margin-bottom:var(--nr-gap)}
html body :is(#feed-cards,.plan-list){display:flex;flex-direction:column;gap:var(--nr-gap)}
html body :is(.plan-summary,#future-plans){margin-top:var(--nr-gap)!important}
html body main>.panel{margin-block:var(--nr-gap)!important}
html body main>.published-card+.published-card{margin-top:var(--nr-gap)!important}
html body .system-checks .panel{height:100%}
html body nav a:hover:not(.active),html body nav a:focus-visible:not(.active){background:rgb(0 152 240 / .6)!important;color:var(--nr-on)!important}
html body .theme-toggle{position:relative;display:block!important;box-sizing:border-box;width:48px!important;min-width:48px!important;max-width:48px!important;height:28px!important;min-height:28px!important;padding:0!important;border-radius:999px!important;overflow:hidden;flex:0 0 48px!important;box-shadow:none!important}
html body .theme-toggle span{position:absolute;top:3px;left:3px;width:20px;height:20px;min-width:20px;border-radius:50%!important;transform:none!important;background:var(--nr-panel)!important;transition:left .15s ease;flex:none!important}
html body .theme-toggle[aria-checked=true] span{left:23px;transform:none!important}
html body .post-panel .media-switches{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}
html body .post-panel .media-switches>.row{margin:0}
html body .post-panel textarea#post{width:100%;min-height:180px;margin-bottom:0;line-height:1.45}
html body .post-panel .post-format-row:empty{display:none}
html body .video-import-row{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px}
html body .video-import-row>label:not(.file-button){display:flex;flex-direction:column;gap:4px;flex:1 1 200px;margin:0;min-width:160px}
html body .video-import-row select{display:block;width:100%}
html body :is(button,.file-button,.row>a[data-action],.draft-actions a){white-space:nowrap}
html body :is(.pick-item,.note-card){white-space:normal}
html body .plan-drag-handle{float:left;margin-right:10px;min-width:40px;cursor:grab;touch-action:none;user-select:none}
html body .slot[draggable=true]{cursor:grab}
html body .slot.is-dragging{opacity:.55}
html body .slot.is-drop-target{outline:2px solid var(--nr-accent);outline-offset:2px}
html body .plan-move-dialog{width:min(620px,95vw)}
html body .plan-move-dialog .move-options{display:grid;gap:10px;margin-block:12px}
html body .plan-move-dialog .move-options button{text-align:left}
@media(prefers-reduced-motion:reduce){html body .theme-toggle span{transition:none}}
@media(max-width:760px){html body .post-panel .media-switches{gap:8px}html body .video-import-row>label:not(.file-button){flex-basis:100%}html body .system-checks{grid-template-columns:1fr 1fr}}
@media(max-width:440px){html body .system-checks{grid-template-columns:1fr}}
/* 0.19.1: labels always precede their fields; toggles and upload buttons stay inline. */
html body label:not(.check):not(.file-button):has(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start;gap:5px;text-align:left;min-width:0}
html body label:not(.check):not(.file-button)>:is(select,input:not([type=checkbox]):not([type=radio]),textarea){display:block;width:100%;max-width:100%}
html body label[for]{text-align:left}
html body .toolbar{align-items:flex-end}
html body .voice-preset-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(200px,2fr);gap:12px;align-items:end}
html body .voice-preset-row>label{margin-top:0}
html body .speech-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-block:12px}
html body .speech-actions>.row{margin:0}
html body #video-speech-preview{display:contents}
html body #video-speech-preview audio{width:320px!important;max-width:100%;height:42px;flex:0 1 320px}
html body #video-speech-preview small{flex-basis:100%;margin:0}
@media(max-width:600px){html body .voice-preset-row{grid-template-columns:1fr}html body .speech-actions>.row{width:100%}}
