.ms{position:relative;width:100%;touch-action:pan-y;user-select:none;-webkit-user-select:none;font-family:'Albert Sans',Arial,sans-serif}
.ms-stage{position:relative;overflow:hidden;width:100%;height:calc(100vh - var(--ms-offset,140px));height:calc(100svh - var(--ms-offset,140px));background:#ddd}
.ms figure{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.2s;background:center/cover no-repeat;cursor:default}
.ms figure[data-link]:not([data-link="#"]){cursor:pointer}
.ms figure.on{opacity:1}
.ms figure:not(.on){pointer-events:none}
.ms-cap{display:block!important;text-align:right!important;padding:12px 0 0;margin:0;color:#000!important;font-family:'Albert Sans',Arial,sans-serif!important;font-size:13px!important;line-height:1.4!important;font-weight:400!important;min-height:1.4em}
.ms-edit{position:absolute;top:0;left:0;z-index:2;width:44px;height:44px;border:0;background:none;color:#fff;font-size:18px;cursor:pointer;opacity:0}
.ms:not([data-edit]) .ms-edit{display:none}
.mse{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;font:15px/1.4 'Albert Sans',Arial,sans-serif}
.mse form{background:#fff;color:#000;padding:16px;width:min(520px,92vw);max-height:92vh;overflow:auto;box-shadow:0 4px 20px rgba(0,0,0,.4)}
.mse h3{margin:0 0 8px}.mse small{color:#777}
.mse label{display:block;margin-top:10px}
.mse input[type=text],.mse input[type=password],.mse input[type=file],.mse textarea{display:block;width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid #ccc;font:inherit}
.mse input[type=radio]{margin:0 4px 0 8px}
.mse .row{margin-top:12px}
.mse button{padding:8px 16px;border:0;background:#eee;font:inherit;cursor:pointer;margin-right:4px}
.mse .ok{background:#000;color:#fff}.mse .del{float:right;color:#c00;margin:0}.mse .new{float:right;margin:0}
.mse .err{color:#c00;min-height:1.4em;margin-top:10px}
