/* M-6 project builder (track 2A). Prototype palette from styles.css: navy #1E2761, gold #C89B3C,
   ice #CADCFC. Logical properties only, so the same rules serve Hebrew (RTL) and LTR. */
/* Full width (owner finding 13, 30.9): the cards span the page and their fields sit in a responsive
   grid (several columns on a desktop, one on a phone); headings, button rows, four-language editors,
   tables and notes take a whole row. min(100%, ...) keeps every column inside a 360px viewport. */
.builder .card, .builder .bwide { max-width: none; }
.builder .bwide.stack { grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); align-items: end; }
.builder .bwide.stack > :not(.bfield) { grid-column: 1 / -1; }
.builder .bwide.stack > * { min-width: 0; }
.builder h3 { color: var(--navy); font-size: .95rem; margin-block: 10px 4px; }
.builder .bfield { display: grid; gap: 3px; min-inline-size: 160px; }
.builder .bfield > span { font-size: .8rem; color: var(--muted); }
.builder textarea { display: block; inline-size: 100%; padding: 8px 10px; border: 1px solid var(--field); border-radius: 8px; font: inherit; font-size: .9rem; }
.builder .mono { font-family: monospace; font-size: .82rem; }
.builder .bi18n { border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; display: grid; gap: 6px 12px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); min-width: 0; }
.builder .bi18n > :not(.bfield) { grid-column: 1 / -1; }
.builder .bhint { font-size: .78rem; color: var(--muted); font-weight: 400; }
.builder .bi18n legend { font-weight: 700; color: var(--navy); padding-inline: 4px; }
/* "Who sees this" (inbox 22): the same frame, the heading inside the box (a floated legend is laid out as content,
   not on the border line, where it looked clipped on demo). */
.builder .bwho { border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; margin: 0; min-width: 0; display: grid; gap: 6px; justify-items: start; }
.builder .bwho legend { float: left; width: 100%; padding: 0; margin: 0; font-weight: 700; color: var(--navy); }
.builder .bsteps { display: flex; flex-wrap: wrap; gap: 6px; margin-block: 8px 12px; }
.builder .bsteps a { padding: 6px 10px; border-radius: 8px; background: var(--pill); color: var(--navy); text-decoration: none; font-size: .8rem; font-weight: 700; }
.builder .bsteps a.on { background: var(--navy); color: #fff; }
.builder .bbadge { display: inline-block; padding: 1px 8px; border-radius: 12px; font-size: .72rem; font-weight: 700; background: var(--ice); color: var(--navy); }
.builder .bbadge.good { background: #DDF2E6; color: var(--good); }
.builder .bbadge.warn { background: #FFF6E0; color: #6B4A00; }
.builder .bbadge.src { background: var(--navy); color: var(--ice); }
.builder .bbadge.wf-published { background: var(--gold); color: var(--navy); }
.builder .bbadge.wf-in_review { background: #FFF6E0; color: #6B4A00; }
.builder .bstatus { font-size: .82rem; }
.builder .bstatus.ok { color: var(--good); }
.builder .bstatus.err { color: var(--serious); }
.builder .bnote { background: #FFF6E0; border-inline-start: 4px solid var(--gold); padding: 8px 12px; border-radius: 6px; }
.builder .bitem { border-block-start: 1px solid var(--line); padding-block-start: 10px; }
.builder .bform { background: var(--soft); border-radius: 10px; padding: 10px; }
.builder .bscroll { overflow-x: auto; }
.builder .binternal { border: 2px solid var(--gold); }
.builder .banner { border: 1px solid #F0DDA8; border-radius: 8px; }
.builder .link { padding: 0 4px; }
.bmodal { position: fixed; inset: 0; background: rgba(30, 39, 97, .45); display: grid; place-items: center; padding: 16px; z-index: 10; }
.bmodal .card { inline-size: min(420px, 100%); }
@media (max-width: 560px) {
  .builder .bfield { min-inline-size: 0; }
}
.builder .bimg code { overflow-wrap: anywhere; min-width: 0; }
