/* NiteFade Studio — AI subject cutout + professional print proof.
 * No rulers, print marks, DPI labels or guide overlays on the main canvas.
 */
.nf-ai-dialog,.nf7-print-dialog{border:0;border-radius:16px;box-shadow:0 24px 80px #160d2540;
  width:min(1060px,96vw);max-width:96vw;max-height:92vh;padding:0;color:#4b315c;background:#fff}
.nf-ai-dialog::backdrop,.nf7-print-dialog::backdrop{background:#1e1634ae;backdrop-filter:blur(5px)}
.nf-ai-body{display:grid;grid-template-columns:minmax(230px,260px) minmax(0,1fr);
  gap:0;max-height:62vh;overflow:auto;border-top:1px solid #e6dfec}
.nf-ai-controls{padding:16px;border-right:1px solid #e7deef;display:flex;flex-direction:column;gap:12px}
.nf-ai-controls label{font-size:10px;color:#5e4477;font-weight:700;display:grid;gap:7px}
.nf-ai-controls select{width:100%;background:#fff;border:1px solid #d9cee6;border-radius:8px;
  padding:9px;color:#453459;font-size:11px}
.nf-ai-controls input[type=range]{width:100%;accent-color:#7851dd}
.nf-ai-controls output{color:#7851dd}
.nf-ai-hint,.nf-ai-note{font-size:10px;color:#8a769d;line-height:1.6;margin:8px 0 0}
.nf-ai-note{background:#f8f3ff;padding:10px;border-radius:9px}
.nf-ai-inline,#nf-ai-open-photo{display:block;border:1px solid #855deb;
  border-radius:8px;background:#f1ecff;color:#653bc7;padding:9px 10px;font-size:11px;
  font-weight:750;cursor:pointer;width:100%;margin-top:9px}
.nf-ai-preview{display:flex;flex-direction:column;min-width:0}
.nf-ai-preview-head{display:flex;justify-content:space-between;align-items:center;
  padding:11px 15px;font-size:11px;font-weight:700;color:#76569b}
.nf-ai-preview-head button{background:#f4effd;border:1px solid #e4d9f4;
  color:#6b4e92;border-radius:7px;padding:7px}
.nf-ai-checker{display:flex;align-items:center;justify-content:center;min-height:310px;
  padding:20px;max-height:50vh;overflow:auto;
  background-color:#fff;
  background-image:linear-gradient(45deg,#e9e2f3 25%,transparent 25%),
   linear-gradient(-45deg,#e9e2f3 25%,transparent 25%),
   linear-gradient(45deg,transparent 75%,#e9e2f3 75%),
   linear-gradient(-45deg,transparent 75%,#e9e2f3 75%);
  background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0}
.nf-ai-checker img{max-width:100%;max-height:46vh;object-fit:contain}
#nf-ai-status{font-size:11px;color:#624681;line-height:1.6;
  background:#f6efff;padding:10px 15px;min-height:35px}
.nf-ai-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;
  gap:10px;padding:12px 16px;border-top:1px solid #eee3f4}
.nf-ai-footer>span{color:#8b7e98;font-size:10px;max-width:340px;line-height:1.5}
.nf-ai-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}
.nf-ai-actions button{font-size:10px;padding:9px 11px;border:1px solid #d9cbeb;
  border-radius:8px;background:#fff;color:#66478d}
.nf-ai-actions button.primary-btn,#nf-ai-run.primary-btn{background:#7951e4;color:white;border-color:#7951e4}
.nf-ai-actions button:disabled{opacity:.42;cursor:not-allowed}
.nf7-print-dialog{width:min(780px,95vw)}
.nf7-print-body{padding:20px;overflow-y:auto;max-height:70vh;display:grid;gap:11px}
.nf7-print-body label{color:#6b4b82;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:650}
.nf7-print-body select{flex:1;max-width:350px;min-width:0;background:#fff;
  border:1px solid #d9c9e8;border-radius:8px;padding:10px;color:#563878}
.nf7-print-body input[type=checkbox]{accent-color:#7851dd}
.nf7-print-measure,.nf7-print-report{white-space:pre-wrap;font-size:11px;line-height:1.55;
  border-radius:9px;padding:12px;background:#f7f2ff;color:#61437c}
.nf7-print-report{border:1px solid #ded1ed;min-height:55px}
.nf7-print-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.nf7-print-buttons button{border:1px solid #d5c5e8;border-radius:9px;
  background:#fff;color:#5d4183;padding:12px;font-weight:750}
.nf7-print-buttons button.primary-btn{background:#7851df;color:#fff}
.nf7-print-warning{font-size:10px;color:#856b98;line-height:1.6}
@media(max-width:760px){
 .nf-ai-body{grid-template-columns:1fr;max-height:66vh}
 .nf-ai-controls{border-right:0;border-bottom:1px solid #e7deef;padding:10px}
 .nf-ai-checker{min-height:170px}
 .nf-ai-footer>span{max-width:none}
 .nf7-print-body label{flex-wrap:wrap}
 .nf7-print-body select{width:100%;max-width:none}
}

/* Phase 7.1A & 8A — multi-subject selection / durable cutout assets */
.nf-ai-controls .nf-ai-note{font-size:10px;line-height:1.55}
.nf8-cloud-choice{flex:1 1 100%;padding:9px 2px 1px;border-top:1px solid #e7dfef}
.nf8-cloud-choice label{display:flex;align-items:center;gap:8px;font-size:11px;
  font-weight:700;color:#5f407e;cursor:pointer}
.nf8-cloud-choice input{accent-color:#7851e4;width:16px;height:16px}
.nf8-cloud-choice p{font-size:10px;line-height:1.5;color:#866c94;margin:6px 0}
.nf8-saved-cutout .media-thumb{background-color:#fff;
  background-image:linear-gradient(45deg,#e8e1f3 25%,transparent 25%),
    linear-gradient(-45deg,#e8e1f3 25%,transparent 25%),
    linear-gradient(45deg,transparent 75%,#e8e1f3 75%),
    linear-gradient(-45deg,transparent 75%,#e8e1f3 75%);
  background-size:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}
.nf8-cutout-label{display:block;color:#754fb8;font-size:9px;font-weight:800}
#nf8-save-cutout{border-color:#a789e6;background:#f1ebff;color:#6240a5;font-weight:800}
#nf8-save-cutout:hover:not(:disabled){background:#e8ddff}

.nf-ai-quick-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:5px 0 10px}
.nf-ai-quick-modes button{border:1px solid #b49aec;border-radius:7px;background:#f6f2ff;
 color:#593785;font-size:10px;font-weight:800;padding:8px 4px;cursor:pointer}
.nf-ai-quick-modes button:hover{background:#ece3ff}
