.mws-authoring{max-width:960px;margin:1.5rem auto;line-height:1.5}.mws-authoring fieldset,.mws-card{border:1px solid #bbb;border-radius:6px;padding:1.25rem;margin:1rem 0}.mws-authoring legend{font-weight:700;padding:0 .5rem}.mws-authoring label{display:block;margin:.8rem 0}.mws-authoring input:not([type=checkbox]):not([type=hidden]),.mws-authoring textarea,.mws-authoring select{display:block;width:100%;max-width:100%;padding:.65rem;border:1px solid #999;border-radius:4px;font:inherit;color:inherit;background:transparent}.mws-authoring select[multiple]{min-height:9rem}.mws-authoring [hidden]{display:none!important}.mws-authoring button,.mws-button{padding:.6rem 1rem;border:1px solid currentColor;border-radius:4px;cursor:pointer;font:inherit}.mws-actions,.mws-tabs{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.mws-action-form{margin:0}.mws-feature{display:flex;gap:.5rem;margin:.5rem 0}.mws-feature input{flex:1;min-width:0}.mws-status{display:inline-block;border:1px solid currentColor;border-radius:1rem;padding:.15rem .65rem;font-size:.9em}.mws-errors{border:2px solid #a52222;padding:1rem}.mws-success{border:2px solid #28733b;padding:1rem}.mws-note{font-size:.95em}.mws-tabs [aria-current=page]{font-weight:bold;text-decoration:underline}.mws-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 .8rem}.mws-types h3{grid-column:1/-1}.mws-authoring input:focus,.mws-authoring textarea:focus,.mws-authoring select:focus,.mws-authoring button:focus{outline:2px solid currentColor;outline-offset:2px}@media(max-width:600px){.mws-types{grid-template-columns:1fr}.mws-authoring fieldset{padding:.8rem}.mws-actions{align-items:stretch;flex-direction:column}.mws-feature{flex-wrap:wrap}.mws-feature input{flex-basis:100%}}

/* Shared authoring corrections and public Services presentation. */
.mws-manage-add { margin-block: 1rem 2rem; }
.mws-tabs { margin-block: 1.5rem; }
.mws-public { max-width: 100%; overflow-wrap: anywhere; }
.mws-public [hidden], .mws-authoring [hidden] { display: none !important; }
.mws-filters { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; padding: 1.25rem; margin-block: 1rem 2rem; border: 1px solid currentColor; border-radius: .5rem; }
.mws-filters label { display: flex; flex-direction: column; gap: .4rem; font-weight: 600; min-width: 0; }
.mws-filters input, .mws-filters select { width: 100%; min-width: 0; max-width: 100%; font: inherit; box-sizing: border-box; }
.mws-filter-actions { display: flex; align-items: end; flex-wrap: wrap; gap: 1rem; }
.mws-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; margin-block: 1.5rem; }
.mws-public-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid rgba(127,127,127,.35); border-radius: .65rem; }
.mws-card-content { padding: 1.25rem; display: flex; flex: 1; flex-direction: column; align-items: flex-start; }
.mws-card-content h3 { font-size: 1.3rem; margin: 0 0 .6rem; }
.mws-card-content p { margin: 0 0 .75rem; }
.mws-card-content > .mws-button { margin-top: auto; }
.mws-visual { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .5rem; aspect-ratio: 16/9; background: repeating-linear-gradient(135deg,rgba(127,127,127,.07),rgba(127,127,127,.07) 18px,rgba(127,127,127,.13) 18px,rgba(127,127,127,.13) 19px); border-bottom: 1px solid rgba(127,127,127,.25); }
.mws-visual span { font-size: .85rem; letter-spacing: .12em; }
.mws-visual strong { font-size: 1.6rem; font-weight: 500; }
.mws-visual--detail { max-height: 25rem; margin-block: 2rem; border-radius: .65rem; }
.mws-public .mws-button { display: inline-flex; align-items: center; gap: .35rem; padding: .65rem 1rem; border: 1px solid currentColor; border-radius: .35rem; text-decoration: none; }
.mws-public a:focus-visible,.mws-public button:focus-visible,.mws-public input:focus-visible,.mws-public select:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.mws-provider,.mws-price { font-weight: 600; }
.mws-category,.mws-types,.mws-location { font-size: .9rem; }
.mws-public .mws-types { display: block; }
.mws-breadcrumb { margin-bottom: 1.5rem; font-size: .9rem; }
.mws-single header h1 { margin-bottom: .6rem; }
.mws-single section { margin-block: 2rem; }
.mws-lead { font-size: 1.15rem; }
.mws-description { line-height: 1.75; }
.mws-included { padding-inline-start: 1.5rem; }
.mws-included li { margin-bottom: .5rem; }
.mws-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem 2rem; }
.mws-details > div { padding-block: .75rem; border-bottom: 1px solid rgba(127,127,127,.3); }
.mws-details dt { font-weight: 600; margin-bottom: .3rem; }
.mws-details dd { margin: 0; }
.mws-external-actions,.mws-pagination { display: flex; flex-wrap: wrap; gap: .75rem; }
.mws-pagination { margin-block: 2rem; align-items: center; }
.mws-pagination a { padding: .5rem .75rem; border: 1px solid currentColor; border-radius: .25rem; }
.mws-pagination [aria-current] { font-weight: 700; text-decoration: underline; }
.mws-empty { padding: 2rem 0; }
.mws-more { margin-top: 3rem; }
@media(max-width: 1000px) { .mws-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .mws-filters { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 600px) { .mws-grid,.mws-filters,.mws-details { grid-template-columns: minmax(0,1fr); } .mws-filters { padding: 1rem; } .mws-single header h1 { font-size: 1.8rem; } }

/* Services-owned media: direct uploads, responsive cards and keyboard reorder. */
.mws-photos input[type=file]{display:block;max-width:100%;margin:1rem 0}
.mws-photo-preview img,.mws-gallery-editor img{width:150px;height:110px;object-fit:cover;border-radius:.35rem}
.mws-gallery-editor{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;padding-left:1.5rem}
.mws-gallery-item{padding:.75rem;border:1px solid currentColor;border-radius:.4rem}
.mws-gallery-item label{display:block;margin:.75rem 0}
.mws-gallery-controls{display:flex;flex-wrap:wrap;gap:.5rem}
.mws-gallery-controls button{font-size:.85em;padding:.4rem .6rem}
.mws-gallery-item:has(input[type=checkbox]:checked){opacity:.6}
.mws-image-frame{aspect-ratio:16/10;overflow:hidden;background:var(--c-ps-postbox-bg,#f5f5f5)}
.mws-image-frame img{display:block;width:100%;height:100%;object-fit:cover}
.mws-image-frame--detail{aspect-ratio:16/9;max-height:650px;border-radius:.5rem}
.mws-public-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.mws-public-gallery figure{margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:.4rem}
.mws-public-gallery img{display:block;width:100%;height:100%;object-fit:cover}
.mws-gallery-controls button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:900px){.mws-public-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.mws-public-gallery{grid-template-columns:1fr}}

/* Internal requests and owner inbox. Forms remain usable without JavaScript. */
.mws-inquiry-form,.mws-consultation,.mws-inquiry-card{border:1px solid currentColor;border-radius:.5rem;padding:1.25rem;margin:1.5rem 0}
.mws-inquiry-form summary{cursor:pointer;font-weight:600;padding:.5rem}
.mws-inquiry-form form{max-width:680px;margin-top:1rem;position:relative}
.mws-inquiry-form label{display:block;margin:.8rem 0 .3rem}
.mws-inquiry-form input:not([type=hidden]),.mws-inquiry-form textarea{width:100%;max-width:100%;box-sizing:border-box;padding:.7rem;border:1px solid currentColor;border-radius:.3rem;font:inherit;color:inherit;background:transparent}
.mws-inquiry-form textarea{min-height:7rem}
.mws-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none}
.mws-inquiry-form button{padding:.7rem 1rem;font:inherit;cursor:pointer}
.mws-inquiry-form summary:focus-visible,.mws-inquiry-form input:focus-visible,.mws-inquiry-form textarea:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.mws-inquiry-details dt{font-weight:600;margin-top:1rem}.mws-inquiry-details dd{margin:.4rem 0;overflow-wrap:anywhere}
.mws-owner-nav{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid currentColor}
.mws-settings-form{max-width:780px}.mws-consultation>a{display:inline-block;margin-top:1rem}
