/* A customer-facing review, separate from the editor and its internal fields. */
#client-review-dialog{box-sizing:border-box;position:fixed;inset:0;width:min(1120px,calc(100% - 40px));max-width:none;height:calc(100vh - 40px);height:calc(100dvh - 40px);max-height:none;margin:auto;padding:0;border:1px solid var(--line,#b8c7d5);border-radius:16px;background:var(--surface,#fff);color:var(--ink,#172b3c);overflow:hidden}
#client-review-dialog[open]{display:flex;flex-direction:column}
#client-review-dialog::backdrop{background:#07121ed9}
#client-review-dialog *{box-sizing:border-box}
#client-review-dialog :is(h2,h3,p,dl,figure){margin:0}
.client-review-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line,#b8c7d5);flex-shrink:0}
.client-review-heading{display:flex;align-items:center;gap:20px;min-width:0}
#client-review-dialog .client-review-logo{flex-shrink:0;width:130px;height:65px;object-fit:contain;background:#fff;border-radius:8px;padding:8px}
#client-review-dialog .client-review-company{font-size:.9rem;color:var(--muted,#445769);font-weight:600;overflow-wrap:anywhere}
#client-review-dialog h2{font-size:1.4rem;line-height:1.3;overflow-wrap:anywhere}
#client-review-dialog h3{font-size:1.05rem;line-height:1.45;overflow-wrap:anywhere}
#client-review-title:focus{outline:none}
.client-review-header>.icon-button{flex-shrink:0;min-width:44px;min-height:44px;font-size:1.5rem;color:var(--ink,#172b3c)}
.client-review-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
.client-review-content{max-width:900px;margin:auto;padding:24px;overflow-wrap:anywhere}
#client-review-dialog .client-review-intro{color:var(--muted,#445769);line-height:1.65;margin-bottom:22px}
.client-review-overview{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;background:var(--surface-2,#eef3f7);padding:18px;border:1px solid var(--line,#b8c7d5);border-radius:10px}
.client-review-overview :is(span,small){display:block;font-size:.875rem;color:var(--muted,#445769)}
.client-review-overview strong{font-size:1rem}
#client-review-dialog :is(.client-review-equipment,.client-review-timings){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
#client-review-dialog .client-review-timings{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:24px;border-bottom:1px solid var(--line,#b8c7d5)}
#client-review-dialog dt{font-size:.875rem;color:var(--muted,#445769);margin:0 0 3px}
#client-review-dialog dd{margin:0;font-size:1rem;font-weight:600;line-height:1.5}
.client-review-section{margin-top:24px}
#client-review-dialog .client-review-section>h3{margin-bottom:8px}
.client-review-prose{white-space:pre-wrap;line-height:1.75;overflow-wrap:anywhere}
#client-review-dialog .client-review-empty{color:var(--muted,#445769);line-height:1.65}
#client-review-dialog .client-review-result{display:inline-block;margin-bottom:10px;font-size:1rem;font-weight:700;color:var(--ink,#172b3c);background:var(--surface-2,#eef3f7);padding:6px 12px;border:1px solid var(--line,#b8c7d5);border-radius:8px}
.client-review-materials{overflow-x:auto;border:1px solid var(--line,#b8c7d5);border-radius:8px}
#client-review-dialog table{width:100%;min-width:0;border-collapse:collapse;table-layout:fixed}
#client-review-dialog :is(th,td){padding:12px 14px;text-align:left;border-bottom:1px solid var(--line,#b8c7d5);font-size:1rem;color:var(--ink,#172b3c);white-space:normal;overflow-wrap:anywhere}
#client-review-dialog th{font-size:.875rem;background:var(--surface-2,#eef3f7);font-weight:700}
#client-review-dialog :is(th,td):last-child{width:125px;text-align:right}
#client-review-dialog tr:last-child td{border-bottom:0}
#client-review-dialog tbody tr:hover{background:transparent}
.client-review-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.client-review-photos figure{border:1px solid var(--line,#b8c7d5);border-radius:8px;overflow:hidden;background:var(--surface-2,#eef3f7)}
.client-review-photos img{display:block;width:100%;max-height:360px;object-fit:contain;background:#fff}
.client-review-photos figcaption{padding:12px;font-size:.95rem;line-height:1.6;white-space:pre-wrap}
.client-review-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:16px 24px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--line,#b8c7d5);background:var(--surface,#fff)}
.client-review-footer p{max-width:25rem;font-size:.9rem;line-height:1.5;color:var(--muted,#445769)}
.client-review-actions{display:flex;gap:10px;flex-shrink:0;flex-wrap:wrap}
#client-review-dialog .button{min-height:44px;font-size:.95rem;white-space:normal}
@media(max-width:1200px){
 #client-review-dialog{width:100%;height:100vh;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}
}
@media(max-width:760px){
 .client-review-header{padding:12px 16px}.client-review-heading{gap:12px}
 #client-review-dialog .client-review-logo{width:86px;height:48px;padding:5px}
 #client-review-dialog h2{font-size:1.2rem}.client-review-content{padding:20px 16px}
 .client-review-footer{align-items:stretch;flex-direction:column;gap:10px;padding:12px 16px max(12px,env(safe-area-inset-bottom))}
 .client-review-footer p{max-width:none}.client-review-actions{width:100%}.client-review-actions .button{flex:1}
}
@media(max-width:460px){
 .client-review-overview{grid-template-columns:minmax(0,1fr);gap:14px}
 #client-review-dialog .client-review-timings{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 #client-review-dialog .client-review-timings>div:last-child{grid-column:1/-1}
 #client-review-dialog .client-review-equipment,.client-review-photos{grid-template-columns:minmax(0,1fr)}
 #client-review-dialog :is(th,td){padding:10px}#client-review-dialog :is(th,td):last-child{width:100px}
}
@media(max-height:540px){
 .client-review-header{padding:8px 16px}#client-review-dialog .client-review-logo{width:80px;height:40px}
 #client-review-dialog h2{font-size:1.15rem}#client-review-dialog .client-review-company{display:none}
 .client-review-footer{padding:8px 16px;flex-direction:row;align-items:center}.client-review-footer p{display:none}
 .client-review-actions{width:100%;justify-content:flex-end}.client-review-actions .button{flex:0 1 auto}
}
@media print{#client-review-dialog{display:none!important}}
