/* Shared profile shell; layouts follow the business's public category. */
.social-business .services-section{--catalog-ink:#172238;--catalog-muted:#5e6274;--catalog-purple:#6547e8;min-width:0}
.catalog-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:24px 0 16px}.catalog-controls label{display:grid;gap:7px;font-size:13px;font-weight:650;color:#515568;min-width:0}.catalog-controls label:first-child{flex:1 1 260px}.catalog-controls input,.catalog-controls select{min-height:44px;padding:11px 14px;border:1px solid #ddd8eb;border-radius:12px;background:#fff;color:#172238;font:inherit;width:100%;min-width:0}.catalog-layout{display:flex;gap:4px}.catalog-layout button,.catalog-saved-filter,.catalog-categories button{min-height:44px;border:1px solid #e2dfed;border-radius:12px;background:#f7f6fc;color:#515568;padding:10px 15px;font:inherit;font-size:13px;cursor:pointer}.catalog-layout button[aria-pressed=true],.catalog-saved-filter[aria-pressed=true],.catalog-categories button[aria-pressed=true]{background:#6547e8;border-color:#6547e8;color:#fff}.catalog-categories{display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:3px 2px 8px;scrollbar-width:thin}.catalog-categories button{flex-shrink:0;white-space:nowrap;border-radius:24px}.catalog-status,.catalog-notice{font-size:13px;color:#5e6274;margin:8px 0}.catalog-notice:empty{display:none}.catalog-status{margin-bottom:18px}
.social-business .services-section .service-grid{display:grid;gap:18px;align-items:stretch}.social-business .services-section[data-view=list] .service-grid{grid-template-columns:1fr}.social-business .services-section[data-view=grid] .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-business .services-section[data-catalog=retail][data-view=grid] .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.social-business .services-section .service-card{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:start;gap:20px;padding:20px;background:#fff!important;border:1px solid #e2dfed!important;border-radius:18px!important;min-width:0;box-shadow:0 4px 20px #17223804}
.catalog-media{position:relative;aspect-ratio:1;min-width:0;overflow:hidden;border-radius:13px;background:#f4f1fb;isolation:isolate}.catalog-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff}.catalog-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:12px;gap:10px;background:linear-gradient(140deg,#f6f3fd,#eee8fb)}.catalog-placeholder img{width:90%;max-width:220px;height:auto}.catalog-placeholder span{color:#645b79;font-size:11px;text-align:center}.catalog-placeholder[hidden]{display:none!important}
.catalog-item-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 14px;min-width:0}.social-business .services-section .service-card h3{grid-column:1;grid-row:1;font-size:19px;line-height:1.35;color:#172238!important;margin:0;overflow-wrap:anywhere}.services-section .service-card-top{grid-column:2;grid-row:1;display:block;margin:0}.services-section .service-price{display:block;background:transparent!important;color:#172238!important;padding:0;font-weight:750;font-size:17px;line-height:1.4;text-align:right;max-width:200px;overflow-wrap:anywhere}.services-section .service-description{grid-column:1/-1;grid-row:2;margin:0!important;color:#5e6274!important;font-size:14px;line-height:1.65;white-space:pre-line}.catalog-card-actions{grid-column:1/-1;display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;margin-top:5px}.social-business .services-section .service-enquire{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:1px solid #d9cff8;border-radius:11px;background:#eee9ff;color:#5636c5!important;padding:10px 15px;text-decoration:none;font-size:13px;font-weight:700;cursor:pointer;line-height:1.4;max-width:100%}.social-business .services-section button.service-enquire{background:#6547e8;color:#fff!important;border-color:#6547e8}.cart-review,.catalog-use-post{display:inline-flex;align-items:center;min-height:44px;color:#5636c5!important;font-size:13px;font-weight:650;text-decoration:none}.catalog-card-actions a:hover{text-decoration:underline;text-underline-offset:4px}.catalog-original-price{display:inline;color:#777185;font-size:12px;font-weight:400;margin-right:7px}.catalog-discount{position:absolute;top:10px;left:10px;z-index:1;background:#7046cc;color:#fff;padding:6px 10px;border-radius:20px;font-size:12px;font-weight:700}.catalog-save{position:absolute;right:8px;top:8px;z-index:2;display:grid;place-items:center;width:44px;height:44px;border:1px solid #e2dfed;border-radius:50%;background:#fff;color:#5e6274;cursor:pointer;font-size:25px;box-shadow:0 2px 7px #1722380b}.catalog-save[aria-pressed=true]{color:#653bc4;background:#f4efff}
.social-business .services-section[data-catalog=restaurant] .catalog-photo{object-fit:cover}.social-business .services-section[data-catalog=restaurant] .service-card{grid-template-columns:100px minmax(0,1fr)}.services-section[data-catalog-layout=appointments] .catalog-photo{object-fit:cover}.social-business .services-section[data-catalog-layout=appointments] .service-card{grid-template-columns:88px minmax(0,1fr)}.social-business .services-section[data-catalog=service]:not([data-catalog-layout=appointments]) .service-card{border-top:3px solid #d6c9f8!important}
.social-business .services-section[data-catalog=retail][data-view=grid] .service-card{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}.services-section[data-catalog=retail][data-view=grid] .catalog-media{width:100%;aspect-ratio:1.2;border-radius:0}.services-section[data-catalog=retail][data-view=grid] .catalog-item-body{display:flex;flex-direction:column;gap:10px;padding:18px;flex:1;width:100%}.services-section[data-catalog=retail][data-view=grid] .service-card h3{font-size:17px;order:0}.services-section[data-catalog=retail][data-view=grid] .service-card-top{order:1}.services-section[data-catalog=retail][data-view=grid] .service-price{text-align:left;max-width:none;font-size:19px}.services-section[data-catalog=retail][data-view=grid] .service-description{order:2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.services-section[data-catalog=retail][data-view=grid] .catalog-card-actions{order:3;margin-top:auto;padding-top:6px;gap:4px 12px}.services-section[data-catalog=retail][data-view=grid] .catalog-original-price{display:inline}
.catalog-request-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:20px;padding:17px 20px;background:#eee9ff;border:1px solid #d9cff8;border-radius:14px;color:#46328d}.catalog-request-summary a{color:#5636c5;font-weight:750;text-decoration:none;min-height:44px;display:flex;align-items:center}.catalog-request-summary[hidden],.service-card[hidden],.catalog-no-matches[hidden]{display:none!important}.catalog-no-matches,.catalog-empty{text-align:center;padding:34px 22px;border:1px dashed #d9cff8;border-radius:18px;background:linear-gradient(140deg,#fff,#f4efff);color:#172238}.catalog-empty>img{width:min(240px,80%);height:auto;margin-bottom:16px}.catalog-empty h3,.catalog-no-matches h3{margin:0 0 10px}.catalog-empty p,.catalog-no-matches p{color:#5e6274}.catalog-empty .service-enquire{margin:10px}.catalog-owner-help{color:#5e6274;font-size:13px;margin-top:14px}.catalog-owner-help summary{padding:10px;cursor:pointer}.catalog-tools{margin-left:auto}.services-section :is(a,button,input,select):focus-visible{outline:3px solid #956ff2;outline-offset:4px}
@media(max-width:900px){.social-business .services-section[data-catalog=retail][data-view=grid] .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-business .services-section[data-view=grid]:not([data-catalog=retail]) .service-grid{grid-template-columns:1fr}}
@media(max-width:600px){.catalog-controls{gap:10px}.catalog-controls>label:first-child{flex-basis:100%}.catalog-controls>label{flex:1;min-width:120px}.catalog-layout button{padding:10px 12px}.catalog-saved-filter{flex-basis:100%}.social-business .services-section .service-card{grid-template-columns:90px minmax(0,1fr);gap:13px;padding:15px}.social-business .services-section[data-catalog=restaurant] .service-card{grid-template-columns:82px minmax(0,1fr)}.social-business .services-section[data-catalog-layout=appointments] .service-card{grid-template-columns:72px minmax(0,1fr)}.catalog-item-body{grid-template-columns:minmax(0,1fr);gap:7px}.services-section .service-card-top{grid-column:1;grid-row:2}.services-section .service-description{grid-row:3;font-size:13px}.social-business .services-section .service-card h3{font-size:17px}.services-section .service-price{text-align:left;font-size:16px}.catalog-card-actions{gap:4px 10px}.catalog-request-summary{padding:12px 15px;align-items:start;flex-direction:column;gap:0}.social-business .services-section[data-catalog=retail][data-view=grid] .service-grid{gap:11px}.services-section[data-catalog=retail][data-view=grid] .catalog-item-body{padding:12px;gap:7px}.social-business .services-section[data-catalog=retail][data-view=grid] .service-card h3{font-size:15px}.services-section[data-catalog=retail][data-view=grid] .service-price{font-size:17px}.services-section[data-catalog=retail][data-view=grid] .service-enquire{padding:9px 10px;font-size:12px}.catalog-discount{font-size:10px;padding:5px 7px;left:6px;top:8px;max-width:calc(100% - 58px)}.catalog-save{right:6px;top:6px}.catalog-placeholder{padding:8px;gap:8px}.catalog-placeholder span{font-size:10px}}

/* Manager-only secondary action, consistent with catalog request buttons. */
.social-business .services-section a.catalog-studio-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #d9cff8;border-radius:11px;background:#f6f3ff;color:#5636c5!important;font-size:13px;font-weight:700;line-height:1.4;text-decoration:none;max-width:100%;text-align:center;transition:background .15s,border-color .15s}.social-business .services-section a.catalog-studio-button:hover{background:#eee9ff;border-color:#9276e5;text-decoration:none}.catalog-studio-icon{font-size:19px;line-height:1}.catalog-studio-button[aria-busy=true]{opacity:.65;cursor:wait}.catalog-studio-button:focus-visible{outline:3px solid #9b85e9;outline-offset:3px}
