.about-builder-shell {
  --builder-accent: #0799ad;
  margin: 24px 0;
  overflow: hidden;
  border: 1px solid #dce7e9;
  border-radius: 18px;
  background: #f7fafb;
  box-shadow: 0 14px 40px rgba(20,55,63,.08);
}
.about-builder-legacy-hidden { display:none !important; }
.about-builder-header { display:flex; padding:28px 30px; align-items:center; justify-content:space-between; gap:24px; background:linear-gradient(135deg,#102d34,#17444e); color:#fff; }
.about-builder-header h3 { margin:6px 0 8px; font-size:24px; }
.about-builder-header p { margin:0; color:rgba(255,255,255,.66); font-size:13px; line-height:1.7; }
.about-builder-eyebrow { color:#69d3dc; font-size:10px; font-weight:800; letter-spacing:.18em; }
.about-builder-preview { flex:none; padding:11px 15px; border:1px solid rgba(255,255,255,.24); border-radius:9px; color:#fff; font-size:13px; text-decoration:none; }
.about-builder-languages { display:flex; padding:18px 24px; gap:8px; border-bottom:1px solid #e2eaec; background:#fff; }
.about-builder-language { padding:9px 14px; border:1px solid #dce6e8; border-radius:8px; background:#fff; color:#53676d; cursor:pointer; }
.about-builder-language.is-active { border-color:var(--builder-accent); background:#e9f8fa; color:#057f91; font-weight:700; }
.about-builder-modules { display:grid; padding:22px; gap:12px; }
.about-builder-module { overflow:hidden; border:1px solid #dce6e8; border-radius:12px; background:#fff; }
.about-builder-module[open] { border-color:#acdce3; box-shadow:0 8px 24px rgba(19,74,85,.06); }
.about-builder-module__summary { display:flex; min-height:62px; padding:0 20px; align-items:center; justify-content:space-between; gap:20px; list-style:none; cursor:pointer; }
.about-builder-module__summary::-webkit-details-marker { display:none; }
.about-builder-module__title { color:#183840; font-size:15px; font-weight:750; }
.about-builder-module__body { padding:22px; border-top:1px solid #e5ecee; background:#fbfdfd; }
.about-builder-toggle { display:inline-flex; align-items:center; gap:8px; color:#708188; font-size:12px; cursor:pointer; }
.about-builder-toggle input { position:absolute; opacity:0; pointer-events:none; }
.about-builder-toggle i { position:relative; display:block; width:38px; height:21px; border-radius:999px; background:#c7d2d5; transition:.2s; }
.about-builder-toggle i::after { position:absolute; top:3px; left:3px; width:15px; height:15px; border-radius:50%; background:#fff; content:''; transition:.2s; }
.about-builder-toggle input:checked + i { background:var(--builder-accent); }
.about-builder-toggle input:checked + i::after { transform:translateX(17px); }
.about-builder-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.about-builder-grid.is-two { align-items:start; }
.about-builder-card { padding:18px; border:1px solid #e1e9eb; border-radius:10px; background:#fff; }
.about-builder-card h4,.about-builder-subtitle { margin:0 0 15px; color:#183840; font-size:14px; }
.about-builder-field,.about-builder-upload { display:flex; min-width:0; margin-bottom:15px; flex-direction:column; gap:7px; }
.about-builder-label { color:#53676d; font-size:12px; font-weight:650; }
.about-builder-input { width:100%; min-height:42px; padding:10px 12px; border:1px solid #cfdbde; border-radius:8px; outline:none; background:#fff; color:#253e44; font:inherit; font-size:13px; line-height:1.55; resize:vertical; }
.about-builder-input:focus { border-color:var(--builder-accent); box-shadow:0 0 0 3px rgba(7,153,173,.11); }
.about-builder-upload { margin-top:6px; padding:16px; border:1px dashed #bfd3d7; border-radius:10px; background:#fff; }
.about-builder-upload__preview { display:grid; width:100%; min-height:90px; max-height:220px; overflow:hidden; place-items:center; border-radius:8px; background:#eef4f5; color:#87979b; font-size:12px; }
.about-builder-upload__preview img { width:100%; height:160px; object-fit:cover; }
.about-builder-upload input[type=file] { font-size:12px; }
.about-builder-repeaters { display:grid; margin:14px 0; gap:12px; }
.about-builder-repeater { position:relative; display:grid; padding:18px; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 14px; border:1px solid #e0e8ea; border-radius:10px; background:#fff; }
.about-builder-repeater.is-media { grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr); }
.about-builder-repeater.is-media .about-builder-item-actions { grid-column:1 / -1; }
.about-builder-item-actions { display:flex; grid-column:1 / -1; margin-bottom:12px; justify-content:flex-end; gap:6px; }
.about-builder-button,.about-builder-mini,.about-builder-save { border:0; cursor:pointer; }
.about-builder-button { padding:10px 14px; border:1px solid #cddadd; border-radius:8px; background:#fff; color:#315159; font-size:12px; }
.about-builder-mini { min-width:32px; min-height:30px; padding:0 9px; border:1px solid #d8e2e4; border-radius:7px; background:#f8fbfb; color:#526b72; font-size:11px; }
.about-builder-mini.is-danger { color:#cf4f55; }
.about-builder-footer { display:flex; padding:20px 24px; align-items:center; justify-content:space-between; gap:20px; border-top:1px solid #dfe8ea; background:#fff; }
.about-builder-status { color:#75868b; font-size:12px; }
.about-builder-status.is-dirty { color:#c17c0a; }
.about-builder-status.is-error,.about-builder-error { color:#cf4f55; }
.about-builder-note { margin:4px 0 0; padding:13px 15px; border:1px solid #cde4e8; border-radius:9px; background:#edf8fa; color:#477079; font-size:12px; line-height:1.7; }
.about-builder-save { min-height:44px; padding:0 22px; border-radius:9px; background:var(--builder-accent); color:#fff; font-weight:700; box-shadow:0 8px 20px rgba(7,153,173,.23); }
.about-builder-loading,.about-builder-error { padding:30px; text-align:center; }
@media(max-width:800px){
  .about-builder-header,.about-builder-footer { align-items:flex-start; flex-direction:column; }
  .about-builder-grid,.about-builder-repeater,.about-builder-repeater.is-media { grid-template-columns:1fr; }
  .about-builder-repeater.is-media .about-builder-item-actions { grid-column:1; }
  .about-builder-save { width:100%; }
}
