.msps-gallery,.msps-manager{--msps-ink:#1d1c1b;--msps-red:#941b25;--msps-line:#e5e0d7;color:var(--msps-ink);max-width:1180px;margin:3rem auto;font-family:inherit}
.msps-gallery{box-sizing:border-box;padding:0 clamp(1rem,3vw,2rem)}
.msps-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;border-bottom:1px solid var(--msps-line);padding-bottom:1rem;margin-bottom:1.5rem}
.msps-heading span{font:700 .7rem/1.3 system-ui,sans-serif;letter-spacing:.18em;color:var(--msps-red)}
.msps-heading h2{font:700 clamp(2rem,4vw,3rem)/1.1 Georgia,serif;margin:.2rem 0 0}
.msps-heading p{margin:0;color:#68645e}
.msps-gallery-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem}
.msps-gallery-filters button{border:1px solid var(--msps-line);border-radius:999px;background:#fff;color:var(--msps-ink);padding:.52rem .85rem;cursor:pointer;font:700 .85rem system-ui,sans-serif}
.msps-gallery-filters button[aria-pressed=true]{background:var(--msps-ink);border-color:var(--msps-ink);color:#fff}
.msps-gallery-filters button:focus-visible{outline:3px solid var(--msps-red);outline-offset:2px}
.msps-gallery-filters span{font-size:.75rem;opacity:.75;margin-left:.2rem}
.msps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:1.25rem}
.msps-card{min-width:0;border:1px solid var(--msps-line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.04)}
.msps-card[hidden]{display:none}
.msps-card>a{display:block;border:0!important;padding:0!important;background:#f5f3ef;overflow:hidden}
.msps-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .25s ease}
.msps-card>a:hover img,.msps-card>a:focus-visible img{transform:scale(1.025)}
.msps-card-copy{padding:1rem 1.1rem 1.25rem}
.msps-kind-badge{display:inline-block;margin:0 0 .6rem;border-radius:999px;background:#f0ebe3;color:#453d35;padding:.25rem .6rem;font:700 .73rem/1.25 system-ui,sans-serif}
.msps-dialog-copy .msps-kind-badge{margin-bottom:.7rem}
.msps-card h3{font:700 1.15rem/1.3 Georgia,serif;margin:0 0 .5rem;overflow-wrap:anywhere}
.msps-credit{font-weight:700;font-size:.9rem;overflow-wrap:anywhere}
.msps-card-copy p{margin:.45rem 0 0}
.msps-caption{font-size:.88rem;color:#68645e;line-height:1.5}
.msps-dialog{position:fixed;width:min(96vw,1100px);max-width:none;max-height:94vh;border:0;border-radius:18px;padding:0;box-shadow:0 24px 90px rgba(0,0,0,.35);background:#fff;color:#1d1c1b;overflow:auto}
.msps-dialog::backdrop{background:rgba(14,13,12,.8)}
.msps-dialog-main{position:relative;background:#151515;display:flex;justify-content:center;align-items:center;min-height:220px}
.msps-dialog-main img{display:block;max-width:100%;max-height:68vh;width:auto;height:auto;object-fit:contain}
.msps-dialog-main button{position:absolute;right:.75rem;top:.75rem;z-index:2;background:#fff;color:#111;border:0;border-radius:50%;width:2.6rem;height:2.6rem;font-size:1.8rem;line-height:1;cursor:pointer}
.msps-dialog-copy{padding:1.4rem clamp(1.2rem,4vw,2.5rem) 2rem}
.msps-dialog-copy h2{font:700 clamp(1.6rem,3vw,2.3rem)/1.15 Georgia,serif;margin:0}
.msps-dialog-copy p{max-width:65ch;white-space:normal}
.msps-dialog-copy .msps-position{margin:0 0 .5rem;color:#706b64;font:.78rem system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.msps-dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap;margin-top:1.5rem;border-top:1px solid var(--msps-line);padding-top:1rem}
.msps-dialog-actions button,.msps-dialog-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:2.6rem;border-radius:8px;border:1px solid #cac4ba;background:#fff;color:#1d1c1b;padding:.5rem .8rem;font:700 .82rem system-ui,sans-serif;text-decoration:none!important;cursor:pointer}
.msps-dialog-actions a{background:#941b25;color:#fff;border-color:#941b25}
.msps-dialog-actions :focus-visible,.msps-card>a:focus-visible{outline:3px solid #941b25;outline-offset:3px}
.msps-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem 1.5rem;margin:1.2rem 0 0}
.msps-details div{border-top:1px solid var(--msps-line);padding-top:.55rem;min-width:0}
.msps-details dt{color:#706b64;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.msps-details dd{margin:.2rem 0 0;font-weight:600;overflow-wrap:anywhere}
.msps-manager{background:#faf8f4;border:1px solid var(--msps-line);border-radius:20px;padding:clamp(1.2rem,3vw,2rem)}
.msps-admin-nav{display:flex;gap:1rem;flex-wrap:wrap;margin:0 0 1rem;font-size:.9rem;font-weight:700}
.msps-admin-nav a{color:var(--msps-red);text-decoration:underline}
.msps-admin-context{padding:.75rem 1rem;background:#fff;border-left:4px solid var(--msps-red);margin:0 0 1.25rem!important}
.msps-manager>p{max-width:80ch}
.msps-help{color:#65605a;font-size:.9rem}
.msps-notice{border-left:4px solid var(--msps-red);padding:.75rem 1rem;background:#fff}
.msps-gallery-summary{font-weight:700;margin:.7rem 0}
.msps-credit-settings{max-width:660px;background:#fff;border:1px solid var(--msps-line);border-radius:12px;padding:1rem 1.2rem;margin:1.25rem 0}
.msps-credit-settings h3{margin:0 0 .6rem;font:700 1.15rem Georgia,serif}
.msps-credit-settings p{margin:.55rem 0}
.msps-credit-example{font-weight:700}
.msps-upload{background:#fff;border:1px solid var(--msps-line);border-radius:14px;padding:1.25rem;margin:1.5rem 0 2rem}
.msps-upload h3{margin:0 0 .9rem;font:700 1.3rem Georgia,serif}
.msps-upload small{display:block;color:#6a655e;margin-top:.5rem}
.msps-manager label{display:block;font-size:.88rem;font-weight:700}
.msps-manager input:not([type=checkbox]),.msps-manager textarea,.msps-manager select{display:block;box-sizing:border-box;width:100%;min-width:0;padding:.7rem .8rem;margin:.32rem 0 0;border:1px solid #cbc5bb;border-radius:8px;background:#fff;color:inherit;font:inherit}
.msps-file{max-width:580px}
.msps-upload .msps-kind-field,.msps-replace .msps-kind-field{max-width:430px;margin:.8rem 0}
.msps-file input{margin:.6rem 0 1rem!important}
.msps-upload-preview[hidden],.msps-replace-preview[hidden],.msps-selection-error[hidden],.msps-upload-progress[hidden],.msps-upload-status-detail[hidden]{display:none}
.msps-upload-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:.8rem;max-width:860px;margin:.8rem 0}
.msps-upload-preview figure,.msps-replace-preview figure{margin:0;min-width:0}
.msps-upload-preview figcaption,.msps-replace-preview figcaption{font-size:.8rem;overflow-wrap:anywhere;padding:.35rem 0}
.msps-selection-error{color:#941b25;font-weight:700;margin:.25rem 0}
.msps-upload-preview img,.msps-replace-preview img{display:block;max-width:250px;max-height:180px;object-fit:contain;border-radius:9px;margin:0 0 1rem}
.msps-upload-preview figure img{width:100%;height:120px;max-width:none;object-fit:cover;margin:0}
.msps-upload-preview>p{align-self:center;color:#65605a;font-size:.9rem}
.msps-upload-progress{position:fixed;left:max(1rem,calc(50vw - 290px));bottom:1rem;z-index:9999;box-sizing:border-box;width:min(580px,calc(100vw - 2rem));max-height:45vh;overflow:auto;background:#fff;border:1px solid var(--msps-line);border-left:4px solid var(--msps-red);border-radius:10px;box-shadow:0 6px 22px rgba(0,0,0,.2);padding:.8rem;margin:0}
.msps-upload-progress progress{display:block;width:100%;height:1rem;accent-color:var(--msps-red)}
.msps-upload-progress p{margin:.4rem 0}
.msps-upload-status-detail{line-height:1.5;font-size:.9rem;overflow-wrap:anywhere}
.msps-upload-status-detail button,.msps-upload-status-detail a{display:inline-block;margin:.35rem .35rem 0 0;border:1px solid #c7bcb0;border-radius:7px;padding:.3rem .6rem;background:#fff;color:var(--msps-red);font:700 .85rem system-ui,sans-serif;cursor:pointer;text-decoration:none}
.msps-manager .msps-check{display:flex;align-items:flex-start;gap:.55rem;font-weight:500;margin:.6rem 0;line-height:1.45}
.msps-manager .msps-check input{margin:.22rem 0 0;flex:0 0 auto}
.msps-manager button[type=submit]{border:0;border-radius:8px;padding:.75rem 1.05rem;background:#171717;color:#fff;font:700 .9rem system-ui,sans-serif;cursor:pointer;margin-top:.8rem}
.msps-manager button[type=submit]:hover,.msps-manager button[type=submit]:focus-visible{background:#8d1520}
.msps-manager button[type=submit]:disabled{opacity:.6;cursor:wait}
.msps-bulk-toolbar{position:sticky;top:0;z-index:5;background:#fff;border:1px solid var(--msps-line);border-left:4px solid var(--msps-red);border-radius:10px;padding:.6rem .9rem;margin:1rem 0;display:flex;align-items:center;flex-wrap:wrap;gap:.55rem 1rem;box-shadow:0 5px 20px rgba(0,0,0,.08)}
.msps-bulk-toolbar .msps-check{margin:0}
.msps-bulk-toolbar [data-msps-selected]{font-weight:700;white-space:nowrap}
.msps-bulk-toolbar .msps-select-drafts{border:1px solid var(--msps-line);background:#faf8f4;border-radius:8px;padding:.45rem .65rem;font:700 .8rem system-ui,sans-serif;cursor:pointer}
.msps-bulk-reviewed{flex:1 1 250px}
.msps-bulk-buttons{display:flex;gap:.5rem;flex-wrap:wrap}
.msps-manager .msps-bulk-buttons button{margin:0;padding:.6rem .8rem}
.msps-bulk-form{background:#fff;border:1px solid var(--msps-line);border-radius:12px;margin:0 0 1.25rem;padding:.8rem 1rem}
.msps-bulk-form summary{cursor:pointer;font-weight:700}
.msps-bulk-form details>p{margin:.8rem 0}
.msps-bulk-form .msps-common{border-top:1px solid var(--msps-line);padding-top:.8rem;margin-top:1rem}
.msps-bulk-form .msps-common summary{font-weight:700}
.msps-bulk-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem 1rem;margin:1rem 0}
.msps-bulk-fields label{min-width:0}
.msps-bulk-fields .msps-bulk-span{grid-column:1/-1}
.msps-bulk-visibility{grid-column:1/-1;min-width:0;border:1px solid var(--msps-line);border-radius:10px;padding:.7rem 1rem}
.msps-bulk-visibility legend{font-weight:700}
.msps-bulk-visibility .msps-bulk-fields{margin:.2rem 0 1rem}
.msps-bulk-visibility .msps-bulk-gps-confirm{max-width:75ch}
.msps-manage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:start;gap:1.2rem}
.msps-manage-card{background:#fff;border:1px solid var(--msps-line);border-radius:14px;overflow:hidden;min-width:0}
.msps-manage-card.msps-selected{border-color:#941b25;box-shadow:0 0 0 2px rgba(148,27,37,.12)}
.msps-manage-card>img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#ece8e0}
.msps-manage-card .msps-card-select{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.7rem 1.1rem;background:#f5f3ef;cursor:pointer}
.msps-manage-card .msps-status{margin-left:auto;color:#5e5850;font-size:.75rem}
.msps-manage-card .msps-kind-badge{margin:0;white-space:nowrap}
.msps-quick{padding:1rem 1.1rem;border-bottom:1px solid var(--msps-line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.msps-quick label:first-child,.msps-quick label:nth-child(2),.msps-quick label:nth-child(5),.msps-quick label:nth-child(6),.msps-quick label:nth-child(7),.msps-quick .msps-check,.msps-quick .msps-help{grid-column:1/-1}
.msps-quick .msps-check{margin:0}
.msps-quick .msps-help{margin:0}
.msps-card-select input{flex:0 0 auto}
.msps-manage-card details{padding:1.1rem}
.msps-manage-card summary{cursor:pointer;font-weight:700;overflow-wrap:anywhere}
.msps-manage-card summary span{display:inline-block;border-radius:999px;background:#eee9df;padding:.15rem .55rem;margin-left:.3rem;font-size:.72rem;white-space:nowrap}
.msps-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:1.2rem 0}
.msps-fields label{min-width:0}
.msps-fields .msps-span{grid-column:1/-1}
.msps-options{border-top:1px solid var(--msps-line);padding-top:1rem}
.msps-options h4{margin:0 0 .5rem}
.msps-options .msps-publish{font-weight:700;border-top:1px solid var(--msps-line);padding-top:.8rem;margin-top:.9rem}
.msps-replace{border-top:1px solid var(--msps-line);margin-top:1rem;padding-top:.8rem}
.msps-replace h4{margin:.3rem 0}
.msps-replace input[type=file]{margin:.6rem 0 1rem!important}
.msps-delete{border-top:1px solid var(--msps-line);margin-top:1rem}
.msps-manager .msps-delete button{background:#fff;color:#941b25;border:1px solid #d8a8ab}
@media(max-width:760px){.msps-bulk-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.msps-heading{align-items:start;flex-direction:column}.msps-fields,.msps-bulk-fields{grid-template-columns:1fr}.msps-bulk-toolbar{top:0}.msps-dialog{width:100vw;max-height:100vh;border-radius:0}.msps-dialog-main img{max-height:60vh}.msps-dialog-actions a{order:-1;width:100%}}
