.pm-panel form {
  display: grid;
  gap: 16px;
  margin: 20px 0;
}
.pm-field {
  display: grid;
  gap: 7px;
  font-weight: 700;
  min-width: 0;
}
.pm-field .field {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.pm-editor > summary {
  font-weight: 750;
  cursor: pointer;
  padding: 16px 0;
  color: #1967d2;
}
.pm-hour-row {
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  gap: 12px;
  background: #f5f8ff;
  border: 1px solid #dce6fa;
  border-radius: 16px;
  padding: 16px;
  margin: 12px 0;
}
.pm-hour-row label {
  display: grid;
  gap: 5px;
  font-size: 14px;
  font-weight: 650;
  min-width: 0;
}
.pm-hour-row .field {
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}
.pm-hour-row .pm-check {
  grid-column: 1/3;
  display: flex;
  align-items: center;
  gap: 8px;
}
.pm-exception-row {
  padding: 16px;
  border: 1px solid #dce6fa;
  border-radius: 16px;
  margin: 12px 0;
  display: grid;
  gap: 12px;
}
.pm-exception-row details .pm-field {
  margin-top: 12px;
}
.pm-check {
  display: flex;
  align-items: center;
  gap: 8px;
}
.pm-check input,
.pm-town-options input {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  accent-color: #1a73e8;
}
.pm-change {
  padding: 20px;
  background: #f2f7ff;
  border: 1px solid #d5e5ff;
  border-radius: 20px;
  margin: 20px 0;
}
.pm-change.confirmed,
.pm-change.simulated {
  background: #effaf4;
  border-color: #b8e5cb;
}
.pm-change-heading {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.pm-change-heading span {
  font-size: 12px;
  color: #586575;
}
.pm-before {
  margin-top: 16px;
  color: #526079;
}
.pm-before summary {
  cursor: pointer;
}
.pm-before p,
.pm-summary {
  white-space: pre-line;
  overflow-wrap: anywhere;
  line-height: 1.65;
}
.pm-photo-preview {
  width: 100%;
  height: auto;
  max-height: 350px;
  object-fit: contain;
  border-radius: 14px;
  background: #eef1f7;
  margin-top: 12px;
}
.pm-town-options {
  display: grid;
  gap: 10px;
}
.pm-town-options label {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid #dce6fa;
  padding: 14px;
  border-radius: 12px;
  cursor: pointer;
  font-weight: 650;
}
.pm-inline-error:not(:empty) {
  padding: 16px;
  background: #fff1ed;
  color: #9c2720;
  border-radius: 12px;
}
.pm-panel .button {
  white-space: normal;
  max-width: 100%;
}
.pm-panel .pm-change form {
  margin-bottom: 8px;
}
.pm-panel .pm-editor .button[type="submit"] {
  margin-top: 12px;
}
@media (max-width: 480px) {
  .pm-change {
    padding: 16px;
  }
  .pm-hour-row {
    grid-template-columns: 1fr 1fr;
    padding: 12px;
  }
  .pm-hour-row > label:first-child {
    grid-column: 1/-1;
  }
  .pm-hour-row .pm-check {
    grid-column: 1/-1;
  }
  .pm-hour-row button {
    grid-column: 1/-1;
  }
  .pm-field input[type="file"] {
    font-size: 14px;
    padding: 12px;
  }
  .pm-change-heading strong {
    font-size: 16px;
  }
}

.profile-details-page{max-width:900px}.profile-details-page h1{font-size:clamp(1.7rem,5vw,2.6rem);line-height:1.12}.profile-details-page>.diagnostic-panel{margin-block:16px}.pm-attribute{border:0;border-bottom:1px solid #e6eaf0;padding:16px 0;min-width:0}.pm-attribute legend{font-weight:650;padding:0}.profile-details-page .easy-details{margin:12px 0}.profile-details-page .field{max-width:100%;min-width:0}.profile-details-page textarea{width:100%;resize:vertical}

.pm-more-fields{border:0;margin:0;padding:0;min-width:0}.pm-more-fields:disabled{opacity:.5}

.pm-date-parts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.pm-date-parts .field{width:100%}
.profile-details-page :is(h1,summary,p,legend){overflow-wrap:anywhere;hyphens:auto}

/* A full catalogue stays browsable without making the short journey longer. */
.pc-toolbar{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:end;margin:28px 0 12px}.pc-toolbar label{display:grid;gap:8px;font-weight:650}.pc-group{margin-bottom:12px}.pc-group>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;min-height:44px}.pc-group>summary span{font-size:13px;color:#5f6f83}.pc-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e0e7f1;padding:18px 0}.pc-row:first-child{margin-top:20px}.pc-row>div{display:grid;gap:7px;min-width:0}.pc-row strong,.pc-row small{overflow-wrap:anywhere}.pc-row small{color:#5f6f83}.pc-row button{flex:none}.pc-state{font-size:12px;color:#6b7280}.pc-state.is-filled{color:#137333}.pc-state.is-empty{color:#8f5b00}.pc-limits details{padding:16px 0;border-top:1px solid #e0e7f1}.pc-limits summary{cursor:pointer;font-weight:650}.bm-field{display:grid;gap:8px;margin:14px 0;min-width:0}.bm-object,.bm-array{min-width:0;margin:16px 0;padding:14px;border:1px solid #dce4ef;border-radius:14px}.bm-object>summary,.bm-array>summary{cursor:pointer;font-weight:700;min-height:30px}.bm-object>div{padding:0 8px}.bm-item{padding:12px;border-left:3px solid #4285f4;margin:14px 0}.bm-section{border-top:1px solid #e0e7f1;padding:12px 0}.bm-section>[data-bm-section-fields]{border:0;padding:0;margin:0;min-width:0}.business-module-form .consent{margin:12px 0}.business-module-form input,.business-module-form select{max-width:100%}.pc-row[hidden],.pc-group[hidden],[data-bm-section-fields][hidden]{display:none}.pc-toolbar button{min-height:48px}@media(max-width:760px){.pc-toolbar{grid-template-columns:1fr}.pc-row{align-items:flex-start;gap:10px}.pc-row button{font-size:13px}.pc-group>summary{align-items:flex-start;flex-direction:column;gap:5px}.bm-object,.bm-array{padding:10px}.bm-object>div{padding:0}.bm-item{padding:8px}}
.business-module-form{min-width:0;grid-template-columns:minmax(0,1fr)}.business-module-form>*{min-width:0}.business-module-form :is(input,select,textarea,button){min-width:0;max-width:100%;box-sizing:border-box}.business-module-form :is(summary,legend,button,span){overflow-wrap:anywhere;white-space:normal}.business-module-form .field{width:100%}.business-module-form .bm-section{max-width:100%}@media(max-width:600px){.business-module-form .bm-object,.business-module-form .bm-array{border:0;border-top:1px solid #dce4ef;border-radius:0;padding:10px 0}.business-module-form .bm-item{padding:8px 0 8px 8px}.business-module-form .bm-field{margin:12px 0}.business-module-form [data-bm-section-fields]{width:100%}}
.profile-media-library{min-width:0;margin-bottom:28px}.media-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 16px}.profile-media-library .media-heading>.button{width:auto;flex:none}.media-heading>div{min-width:0}.media-heading h2,.media-heading p{margin:0 0 6px}.media-brand-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:18px}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.media-card{border:1px solid #dce4ef;border-radius:20px;overflow:hidden;min-width:0;background:white;margin:0;padding:0}.media-picture{aspect-ratio:4/3;background:#eef3fb;position:relative;display:grid;place-items:center;overflow:hidden}.media-brand .media-picture{aspect-ratio:auto;height:230px}.media-picture img{width:100%;height:100%;object-fit:cover;min-width:0}.profile-media-library .media-picture img{position:absolute;inset:0;width:100%;height:100%;max-height:100%}.media-logo img{object-fit:contain;padding:20px}.media-picture [hidden]{display:none!important}.media-picture [data-media-placeholder]{padding:18px;text-align:center;color:#5f6c82;font-size:14px}.media-picture small{display:block;margin-top:8px}.media-card-body{padding:16px;overflow-wrap:anywhere}.media-card-body h3{font-size:17px;margin:0 0 8px}.media-card-body p{font-size:14px;line-height:1.5}.media-card-body>small{color:#667085;font-size:12px}.media-actions{margin-top:12px}.media-actions summary{cursor:pointer;font-weight:700;color:#185abc;padding:10px 0}.media-actions label{display:grid;gap:8px}.media-actions .field,.media-actions button{width:100%;min-width:0;max-width:100%;margin-top:10px;white-space:normal}.media-delete{color:#b3261e}.media-count{color:#667085;font-size:18px}.media-review{max-width:320px;border-radius:14px;margin-top:16px}.management-modes{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.management-modes article{border:1px solid #dce4ef;border-radius:16px;padding:18px;background:#fff}.management-modes h3{font-size:17px;margin:0 0 8px}.management-modes p{font-size:14px;margin:0}.management-modes button{margin-top:12px}.app-update-notice{position:fixed;bottom:20px;right:20px;z-index:120;background:#fff;border:2px solid #1a73e8;border-radius:18px;padding:18px;box-shadow:0 8px 24px #14285225;max-width:360px}.app-update-notice p{margin:0 0 10px;font-size:14px}.app-update-notice button{min-height:44px}
@media(max-width:800px){.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.media-brand-grid,.media-grid,.management-modes{grid-template-columns:1fr}.media-heading{align-items:stretch;flex-direction:column}.profile-media-library .media-heading>.button{width:100%}.media-brand .media-picture{height:200px}.app-update-notice{left:16px;right:16px;bottom:86px;max-width:none}.media-card .media-picture{aspect-ratio:16/10}.media-review{max-width:100%}}

.service-ai-panel{margin:14px 0;padding:16px;background:#edf4ff;border:1px solid #cbdcff;border-radius:16px}.service-ai-panel p{font-size:14px;line-height:1.5;margin:0 0 8px}.service-ai-panel blockquote{margin:12px 0;padding:14px;background:white;border-left:3px solid #1967d2;overflow-wrap:anywhere}.service-ai-panel[aria-busy="true"]{border-color:#1967d2}.service-ai-success{color:#137333;font-weight:650}
.service-ai-bulk{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 24px;padding:18px 20px;background:#edf4ff;border:1px solid #cbdcff;border-radius:16px}.service-ai-bulk>div{min-width:0}.service-ai-bulk strong{display:block;margin-bottom:4px}.service-ai-bulk p{margin:0;font-size:14px;line-height:1.45}.service-ai-bulk .button{flex:0 0 auto;width:auto;max-width:360px;margin:0}.service-ai-inline-progress{display:flex;align-items:center;gap:9px;margin-top:10px;color:#185abc;font-size:13px;font-weight:700}.service-ai-inline-progress span{width:16px;height:16px;border:2px solid #a8c7fa;border-top-color:#1967d2;border-radius:50%;animation:service-ai-spin .7s linear infinite}@keyframes service-ai-spin{to{transform:rotate(360deg)}}
@media(max-width:640px){.service-ai-bulk{align-items:stretch;flex-direction:column;gap:14px}.service-ai-bulk .button{width:100%;max-width:none}}
@media(prefers-reduced-motion:reduce){.service-ai-inline-progress span{animation:none;border-color:#1967d2}}
