.home-banner-section{display:grid;gap:20px;margin-block:26px}
.home-banner-image{display:block;overflow:hidden;border-radius:16px;border:1px solid var(--line);background:var(--paper)}
.home-banner-image img{display:block;width:100%;height:auto}
a.home-banner-image:focus-visible{outline:3px solid var(--coral);outline-offset:4px}
.home-banner-table{min-width:700px;width:100%}
.home-banner-table td{vertical-align:middle}
.home-banner-thumb{width:140px;height:80px;object-fit:cover;border:1px solid var(--line);border-radius:9px;margin-bottom:8px}
.home-banner-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.home-banner-actions form{margin:0}
.home-banner-actions .button{font-size:11px;padding:8px 12px}
.home-banner-dialog{width:min(660px,calc(100vw - 24px));max-height:calc(100dvh - 36px);padding:0;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);box-shadow:var(--shadow);overflow:auto}
.home-banner-dialog::backdrop{background:rgba(5,40,38,.45);backdrop-filter:blur(3px)}
.home-banner-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}
.home-banner-dialog-head h3{margin:0;font-size:18px}
.home-banner-dialog-head button{border:0;background:var(--mint);color:var(--pine);width:32px;height:32px;border-radius:50%;font-size:22px}
.home-banner-form{padding:22px}
.home-banner-form label.home-banner-check{display:flex;align-items:center;gap:9px;font-weight:500}
.home-banner-form label.home-banner-check input{width:18px;height:18px;margin:0;accent-color:var(--pine)}
.home-banner-edit-preview{width:100%;max-height:150px;object-fit:contain;background:var(--paper);border-radius:10px;margin-bottom:8px}
.home-banner-form .muted{font-size:11px}
@media(max-width:560px){#homepage-banners .panel-card-head{align-items:flex-start;flex-direction:column;gap:14px}.home-banner-dialog-head,.home-banner-form{padding:16px}.home-banner-section{margin-block:18px}}
