﻿.banner-carousel{position:relative;background:white;width:100%;overflow:hidden}.banner-slide{display:none}.banner-slide.current{display:block}.banner-slide img{display:block;width:100%;height:auto}.banner-arrow{position:absolute;top:45%;transform:translateY(-50%);border:1px solid #ddd;background:#ffffffe6;color:#7130a5;border-radius:50%;width:38px;height:38px;font-size:30px;line-height:1;cursor:pointer}.banner-arrow.prev{left:20px}.banner-arrow.next{right:20px}.banner-dots{display:flex;justify-content:center;gap:7px;padding:15px 80px;min-height:42px}.banner-dots button{width:12px;height:12px;border:0;border-radius:50%;background:#ddd;padding:0}.banner-dots button[aria-current=true]{background:#a442e8}.banner-pause{position:absolute;bottom:10px;right:20px;background:white;border:1px solid #e4d8ed;border-radius:15px;color:#7130a5;padding:5px 12px;font-size:10px}.edit-banners{border:1px solid #e4d8ed;border-radius:5px;background:white;color:#7130a5;font-size:11px;padding:8px 12px}.banner-row{border-bottom:1px solid #eee;padding:15px 0;display:grid;grid-template-columns:90px 1fr;gap:10px}.banner-row img{width:90px;height:55px;object-fit:contain;background:#f7f7f7}.banner-row input{width:100%;padding:7px;border:1px solid #ddd;border-radius:4px;font-size:12px}.banner-row button{margin:6px 4px 0 0;border:1px solid #ddd;border-radius:3px;background:white;padding:4px 8px;font-size:11px}#banner-upload{max-width:100%;font-size:12px}#banner-manager{width:620px}#banner-list{margin-top:20px}#banner-message{color:#7130a5}button:disabled{opacity:.45;cursor:default}@media(max-width:600px){.banner-arrow{width:28px;height:28px;font-size:22px}.banner-arrow.prev{left:8px}.banner-arrow.next{right:8px}}

#banner-slides{display:flex;touch-action:pan-y;transition:transform .45s ease;will-change:transform}.banner-slide,.banner-slide.current{display:block;flex:0 0 100%;min-width:0;aspect-ratio:2048/452}.banner-slide img{width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}.banner-carousel{cursor:grab}.banner-carousel:active{cursor:grabbing}@media(prefers-reduced-motion:reduce){#banner-slides{transition:none}}
