#sheetEditor {margin-top:24px;padding:18px;border:1px solid #466077;border-radius:12px;font-size:16px}
#gridEditor {position:relative;width:min(100%,650px);margin:16px auto}
#gridPreview {display:block;width:100%;height:auto}
#gridHandles {position:absolute;inset:0;pointer-events:none}
.grid-handle {position:absolute;z-index:2;padding:0;border:0;background:transparent;pointer-events:auto;touch-action:none}
.grid-handle::after {content:"";position:absolute;background:#00e5ff;box-shadow:0 0 0 1px rgba(0,18,32,.8)}
.grid-handle-x {top:0;bottom:0;width:18px;transform:translateX(-50%);cursor:col-resize}
.grid-handle-x::after {top:0;bottom:0;left:50%;width:2px;transform:translateX(-50%)}
.grid-handle-y {left:0;right:0;height:18px;transform:translateY(-50%);cursor:row-resize}
.grid-handle-y::after {left:0;right:0;top:50%;height:2px;transform:translateY(-50%)}
#gridActions {display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px}
#gridActions span {flex:1 1 100%;font-size:14px;color:#a7bfd0}
#gridActions button {padding:10px 16px;cursor:pointer;font:inherit}
#applyGrid {margin-top:16px;padding:12px 18px;cursor:pointer;font:inherit}
#gridActions #applyGrid {margin-top:0}
.thumb img {object-fit:contain}
@media(max-width:700px){.thumb:nth-child(n+5){display:block}.thumb{font-size:14px}}
