/* Brief composes shared work/content surfaces, Projects controls and dialog shell. */
.pb-builder-dialog{width:min(1080px,calc(100vw - 32px))!important;max-width:1080px!important}
.pb-builder-intro{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.pb-builder-intro textarea{min-height:80px;max-height:180px}
.pb-privacy-note{margin:0!important;font-size:12px;line-height:20px;color:var(--muted)}
.pb-answer-image+figcaption{font-size:12px;color:var(--muted);margin-top:8px}
.pi-image-choices>figure{margin:0;min-width:0}
.pb-builder{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);gap:16px;align-items:start}
.pb-question-nav{padding:12px;background:var(--surface-content);border-radius:var(--radius-content);display:flex;flex-direction:column;gap:12px;position:sticky;top:0}
.pb-question-nav [data-pb-outline]{display:flex;flex-direction:column;gap:8px;max-height:420px;overflow:auto}
.pb-question-tab{display:flex;gap:12px;align-items:start;padding:12px;border:0;border-radius:var(--radius-control);text-align:left;background:transparent;color:var(--text);width:100%;font:inherit}
.pb-question-tab>span:first-child{color:var(--muted);font-variant-numeric:tabular-nums}
.pb-question-tab>span:last-child{min-width:0;overflow-wrap:anywhere}
.pb-question-tab small{display:block;font-size:12px;line-height:20px;color:var(--muted);margin-top:4px}
.pb-question-tab:hover{background:var(--surface-hover)}
.pb-question-tab[aria-current=step]{background:var(--selection)}
[data-pb-editor]{min-width:0;display:flex;flex-direction:column;gap:16px}
[data-pb-editor]>.pi-panel-head{margin:0;gap:8px;flex-wrap:wrap}
.pb-builder-dialog .as-actions,.pb-client-dialog .as-actions,.pb-review-dialog .as-actions{gap:8px;flex-wrap:wrap}
.pb-options{display:flex;flex-direction:column;gap:8px}
.pb-option-row{display:flex;align-items:flex-end;gap:8px}
.pb-option-row label{flex:1}
.pb-builder-dialog .projects-radio{margin:0}
.pb-builder-dialog .projects-form-error:empty{display:none}
.pb-client-dialog,.pb-review-dialog{width:min(900px,calc(100vw - 32px))!important;max-width:900px!important}
.pb-client-dialog>.private-form{min-height:0}
.pb-client-dialog .event-dialog-scroll{padding-bottom:12px}
.pb-client-hero{padding:24px 12px}
.pb-client-hero h1{font-size:28px;line-height:36px;font-weight:500;margin:8px 0}
.pb-client-hero p{max-width:65ch;margin:0;white-space:pre-wrap}
.pb-eyebrow{font-size:13px;line-height:20px;color:var(--muted)}
.pb-client-progress{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px;background:var(--surface-content);border-radius:var(--radius-content);font-size:13px}
.pb-client-progress progress{width:100%;height:4px;border:0;accent-color:var(--action-blue)}
.pb-client-body{display:flex;flex-direction:column;gap:16px;margin:16px 0}
.pb-client-question,.pb-review-answer{padding:16px;background:var(--surface-content);border-radius:var(--radius-content);display:flex;flex-direction:column;gap:16px;min-width:0}
.pb-client-question h2{font-size:18px;line-height:26px;font-weight:500;margin:4px 0 0}
.pb-client-question header small,.pb-review-answer header small{color:var(--muted)}
.pb-client-question header p{margin:4px 0 0}
.pb-client-question[data-invalid=true]{box-shadow:inset 3px 0 var(--action-pink)}
.pb-client-question .projects-radio{margin:0;min-height:40px}
.pb-client-options{display:flex;flex-direction:column;gap:8px}
.pb-client-options label{padding:12px;border-radius:var(--radius-control);background:var(--surface-work)}
.pb-client-options label:has(input:checked){background:var(--selection)}
.pb-required{font-size:12px;font-weight:400;color:var(--muted);margin-left:8px}
.pb-client-footer{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;position:sticky;bottom:0;background:var(--surface-work);padding:12px 0;z-index:1}
.pb-client-footer .as-actions{display:flex;gap:8px;flex-wrap:wrap}
.pb-preview-note{font-size:12px;margin:8px 0!important;text-align:center}
.pb-inspirations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pb-inspiration{display:flex;flex-direction:column;align-items:start;gap:12px;padding:12px;background:var(--surface-work);border-radius:var(--radius-content);min-width:0}
.pb-inspiration>img{width:100%;max-height:300px;object-fit:contain;border-radius:var(--radius-control);background:var(--surface-content)}
.pb-inspiration>a{color:var(--action-blue);overflow-wrap:anywhere;text-decoration:underline}
.pb-inspiration>label{width:100%}.pb-inspiration p{white-space:pre-wrap;margin:0;overflow-wrap:anywhere}
.pb-answer-text{white-space:pre-wrap;margin:0!important;overflow-wrap:anywhere}
.pb-image-feedback{display:flex;flex-direction:column;gap:24px}
.pb-image-feedback article{display:flex;flex-direction:column;gap:12px;min-width:0}
.pb-image-feedback img{width:100%;height:auto;max-height:600px;object-fit:contain;border-radius:var(--radius-content)}
.pb-image-feedback h3,.pb-image-feedback p{margin:0}
.pb-rating-options{display:flex;flex-wrap:wrap;gap:8px}
.pb-rating-options .projects-radio{display:flex;gap:8px;align-items:center;padding:8px 12px;border-radius:var(--radius-control);background:var(--surface-work)}
.pb-ranking{display:flex;flex-direction:column;gap:8px}
.pb-ranking>div{display:flex;align-items:center;gap:8px;padding:12px;border-radius:var(--radius-control);background:var(--surface-work)}
.pb-ranking>div>span{flex:1;min-width:0;overflow-wrap:anywhere}
.pb-ranking-summary{margin:0;padding-left:24px}.pb-ranking-summary li{padding:6px 0}
.pb-answer-image{width:min(100%,300px);max-height:360px;object-fit:contain}
.pb-client-question .pi-image-choices,.pb-review-answer .pi-image-choices{grid-template-columns:1fr}
.pb-client-question .pi-image-choices img,.pb-review-answer .pi-image-choices img{width:100%;height:auto;max-height:600px;aspect-ratio:auto;object-fit:contain}
.pb-success{padding:48px 24px;text-align:center}.pb-success h1{font-size:28px;line-height:36px}
.pb-review-heading{display:flex;flex-direction:column;gap:8px}
.pb-review-heading p{margin:0}
.pb-review-notes{display:flex;flex-direction:column;gap:12px;padding-top:12px;border-top:1px solid var(--surface-raised)}
.pb-review-notes article{padding:12px;background:var(--surface-work);border-radius:var(--radius-control)}
.pb-review-notes article p{margin:0 0 4px}
.pb-client-page{height:100dvh;overflow:auto;margin:0;padding:24px;background:var(--surface-canvas)}
.pb-client-top{max-width:860px;margin:0 auto 16px;display:flex;justify-content:space-between;color:var(--muted)}
.pb-client-surface.pi-dialog{width:100%!important;max-width:860px!important;margin:auto;background:var(--surface-work);padding:24px;border-radius:var(--radius-work)}
.pb-client-surface .ms-form-label{margin:0;font-weight:400}
.pb-client-surface input:not([type=radio],[type=checkbox],[type=file]),.pb-client-surface textarea{font:inherit;width:100%;box-sizing:border-box}
.pb-client-surface .projects-radio{position:relative}
.pb-client-surface .projects-radio input{position:absolute;opacity:0;width:1px;height:1px}
.pb-client-surface .projects-radio:has(input:focus-visible){outline:2px solid var(--text)}
.pb-client-surface .as-actions{display:flex;gap:8px;flex-wrap:wrap}
.pi-space-links>.cta{align-self:flex-start}
/* One image-layout contract for editor, client and answer review. */
.pb-photo-grid,.pb-client-question .pb-photo-grid,.pb-review-answer .pb-photo-grid{display:grid;grid-template-columns:repeat(var(--photo-columns,1),minmax(0,1fr));gap:16px;align-items:start}
.pb-photo-grid>*{min-width:0}
.pb-photo-grid .pb-rating-options{gap:4px}.pb-photo-grid .pb-rating-options .projects-radio{padding:4px 8px}
@media(max-width:600px){.pb-photo-grid,.pb-client-question .pb-photo-grid,.pb-review-answer .pb-photo-grid{grid-template-columns:1fr}}
@media(max-width:700px){
 .pb-builder-intro,.pb-builder{grid-template-columns:1fr}
 .pb-question-nav{position:static}
 .pb-question-nav [data-pb-outline]{max-height:180px}
 .pb-client-hero{padding:16px 0}
 .pb-client-hero h1{font-size:24px;line-height:32px}
 .pb-client-page{padding:12px}
 .pb-client-surface.pi-dialog{padding:12px}
 .pb-inspirations{grid-template-columns:1fr}
 .pb-client-question,.pb-review-answer{padding:12px}
 .pb-client-footer>.cta{margin-left:auto}
}
