.nash-private-open{overflow:hidden}
.nash-private-modal[hidden]{display:none!important}
.nash-private-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px;color:#102633;font-family:inherit}
.nash-private-backdrop{position:absolute;inset:0;background:rgba(5,19,29,.78);backdrop-filter:blur(5px)}
.nash-private-dialog{position:relative;display:flex;flex-direction:column;width:min(1120px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:hidden;border:1px solid rgba(13,55,74,.16);border-radius:20px;background:#f8fafb;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.nash-private-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:23px 26px 19px;border-bottom:1px solid #dce5e9;background:#fff}
.nash-private-header h2{margin:2px 0 3px;color:#0b2637;font-size:clamp(1.35rem,2.6vw,2rem);line-height:1.15}
.nash-private-header p{margin:0;color:#5c6d76;font-size:.93rem}
.nash-private-kicker,.nash-step-label{display:block;color:#b01824;font-size:.72rem;font-weight:800;letter-spacing:.12em}
.nash-private-close{flex:0 0 44px;width:44px;height:44px;border:1px solid #cfdadd;border-radius:50%;background:#fff;color:#173544;font-size:1.65rem;line-height:1;cursor:pointer}
.nash-private-body{min-height:300px;overflow:auto;overscroll-behavior:contain;padding:26px}
.nash-private-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;padding:12px 26px;border-top:1px solid #dce5e9;background:#fff}
.nash-private-footer p{margin:0;color:#536772;font-size:.82rem}
.nash-private-delete{min-height:42px;padding:9px 15px;border:1px solid #b01824;border-radius:9px;background:#fff;color:#9d1520;font-weight:800;cursor:pointer}
.nash-private-step{width:min(940px,100%);margin:0 auto}
.nash-private-step>h3{margin:7px 0 12px;color:#0b2637;font-size:clamp(1.25rem,2.4vw,1.75rem)}
.nash-private-step>p{color:#50636e;line-height:1.65}
.nash-private-facts{display:grid;gap:10px;margin:20px 0;padding:0;list-style:none}
.nash-private-facts li{position:relative;padding:13px 15px 13px 44px;border:1px solid #dce5e9;border-radius:11px;background:#fff;color:#29424f;line-height:1.45}
.nash-private-facts li:before{position:absolute;left:15px;top:12px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#e4f4ef;color:#08745b;content:"✓";font-weight:900}
.nash-private-consent{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid #cbd9de;border-radius:12px;background:#fff;cursor:pointer}
.nash-private-consent input,.nash-private-check input,.nash-mask-check input{flex:0 0 auto;width:20px;height:20px;margin-top:1px;accent-color:#b01824}
.nash-private-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:22px;flex-wrap:wrap}
.nash-primary-action,.nash-secondary-action,.nash-danger-action{min-height:46px;padding:11px 20px;border-radius:10px;font-weight:800;cursor:pointer}
.nash-primary-action{border:1px solid #b01824;background:#b01824;color:#fff}
.nash-secondary-action{border:1px solid #b9c8ce;background:#fff;color:#173544}
.nash-danger-action{border:1px solid #8e101a;background:#8e101a;color:#fff}
.nash-primary-action:disabled{opacity:.46;cursor:not-allowed}
.nash-private-live,.nash-mask-live{min-height:22px;margin:12px 0 0;color:#9d1520;font-weight:700}
.nash-file-drop{display:grid;place-items:center;gap:10px;min-height:230px;margin-top:18px;padding:30px;border:2px dashed #b7cbd3;border-radius:16px;background:#fff}
.nash-file-drop small{color:#61737c}
.nash-prepare-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:24px;align-items:start}
.nash-prepare-preview{position:sticky;top:0;min-width:0;padding:12px;border:1px solid #d4e0e4;border-radius:14px;background:#071a26}
.nash-prepare-preview canvas{display:block;width:100%;height:auto;max-height:58vh;object-fit:contain;border-radius:9px;touch-action:none;cursor:crosshair}
.nash-prepare-preview p{margin:9px 5px 1px;color:#dce8ed;font-size:.78rem}
.nash-prepare-controls{display:grid;gap:13px}
.nash-prepare-controls>label,.nash-crop-ranges label,.nash-perspective-ranges label{display:grid;gap:6px;color:#29424f;font-size:.82rem;font-weight:750}
.nash-prepare-controls select{width:100%;min-height:44px;padding:8px 10px;border:1px solid #bdcdd3;border-radius:8px;background:#fff}
.nash-rotate-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.nash-rotate-row button,.nash-mask-toolbar button{min-height:42px;padding:8px 10px;border:1px solid #bcccd2;border-radius:8px;background:#fff;color:#173544;font-weight:750;cursor:pointer}
.nash-private-check{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px}
.nash-crop-ranges{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px;border:1px solid #d4e0e4;border-radius:11px;background:#fff}
.nash-crop-ranges input,.nash-perspective-ranges input,.nash-mask-settings input[type=range]{width:100%;accent-color:#b01824}
.nash-perspective-ranges{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:12px;border:1px solid #d4e0e4;border-radius:11px;background:#fff}
.nash-perspective-ranges:disabled{opacity:.5}
.nash-perspective-ranges legend{padding:0 5px;color:#173544;font-size:.8rem;font-weight:800}
.nash-progress{height:15px;margin:26px 0 11px;overflow:hidden;border-radius:999px;background:#dae4e8}
.nash-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b01824,#e45831);transition:width .24s ease}
.nash-processing-step ul{display:grid;gap:8px;margin:22px 0;padding-left:20px;color:#45606d}
.nash-private-spinner{display:block;width:44px;height:44px;margin:34px auto 18px;border:4px solid #d8e3e7;border-top-color:#b01824;border-radius:50%;animation:nash-private-spin .8s linear infinite}
.nash-loading-step{text-align:center}
.nash-quality-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px;padding:14px 16px;border:1px solid #cfe0db;border-radius:12px;background:#f2faf7}
.nash-quality-card strong,.nash-quality-card span{display:block}
.nash-quality-card span{margin-top:4px;color:#527068;font-size:.78rem}
.nash-quality-card ul{margin:0;padding-left:20px;color:#3f5d55;font-size:.82rem}
.nash-segmentation-review canvas{display:block;width:100%;height:auto;max-height:56vh;margin:14px 0;border:1px solid #284653;border-radius:13px;background:#102b37;object-fit:contain}
.nash-segmentation-badge{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;border:1px solid #a8d9c6;border-radius:11px;background:#ecf9f4;color:#185b49}
.nash-segmentation-badge strong{font-size:.78rem;letter-spacing:.08em}
.nash-segmentation-badge span{font-size:.82rem}
.nash-segmentation-legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin:-4px 0 14px;color:#45606d;font-size:.8rem}
.nash-segmentation-legend span{display:inline-flex;align-items:center;gap:7px}
.nash-segmentation-legend i{width:13px;height:13px;border:1px solid #38515e;border-radius:3px;background:#eef3f5}
.nash-segmentation-legend .is-suggested{border-color:#198750;background:rgba(25,196,105,.48)}
.nash-surface-list{display:grid;gap:7px;margin:0 0 14px;padding:0;list-style:none}
.nash-surface-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid #d5e1e5;border-radius:9px;background:#f8fbfc;color:#304c59;font-size:.8rem}
.nash-surface-list span{color:#526a75}
.nash-review-warning,.nash-confirmed-suggestion{padding:11px 13px;border-left:4px solid #d69f1f;background:#fff7dc;color:#5a491d!important;font-weight:700}
.nash-mask-editor{outline:0}
.nash-mask-toolbar{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}
.nash-mask-toolbar button.is-active{border-color:#0b6b78;background:#0b6b78;color:#fff}
.nash-mask-toolbar button:disabled{opacity:.4;cursor:not-allowed}
.nash-mask-operations,.nash-smart-tools{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 10px}
.nash-mask-operations button,.nash-smart-tools button,.nash-edge-choice button,.nash-smart-progress button{min-height:42px;padding:8px 11px;border:1px solid #bcccd2;border-radius:8px;background:#fff;color:#173544;font-weight:750;cursor:pointer}
.nash-mask-operations button:disabled,.nash-smart-tools button:disabled{opacity:.45;cursor:not-allowed}
.nash-mask-settings{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin-bottom:12px;padding:11px 12px;border:1px solid #d5e1e5;border-radius:11px;background:#fff}
.nash-mask-settings label{display:grid;gap:5px;color:#304c59;font-size:.78rem;font-weight:750}
.nash-mask-settings .nash-mask-check{display:flex;align-items:center;gap:8px}
.nash-mask-viewport{position:relative;display:grid;place-items:center;min-height:320px;max-height:58vh;overflow:hidden;border:1px solid #284653;border-radius:13px;background:repeating-conic-gradient(#152f3b 0 25%,#193744 0 50%) 50%/22px 22px}
.nash-mask-canvas-wrap{width:100%;transform-origin:center center;will-change:transform}
.nash-mask-canvas-wrap canvas{display:block;width:100%;height:auto;max-height:58vh;object-fit:contain;touch-action:none;user-select:none}
.nash-mask-help{margin:10px 2px 0!important;color:#526a75!important;font-size:.82rem}
.nash-smart-select{margin:0 0 13px;padding:14px;border:1px solid #b8d8d2;border-radius:12px;background:#f1faf7}
.nash-smart-select>p{margin:7px 0 11px;color:#3d5c57;font-size:.83rem;line-height:1.5}
.nash-smart-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}
.nash-smart-heading strong,.nash-smart-heading span{display:block}
.nash-smart-heading strong{color:#123d36;font-size:1rem}
.nash-smart-heading span{margin-top:2px;color:#56746f;font-size:.72rem}
.nash-smart-heading label{display:grid;gap:4px;color:#365b55;font-size:.74rem;font-weight:800}
.nash-smart-heading select{min-height:40px;padding:7px 9px;border:1px solid #a9c9c3;border-radius:8px;background:#fff}
.nash-smart-tools button.is-active{border-color:#126b5c;background:#126b5c;color:#fff}
.nash-smart-tools [data-smart-run]{border-color:#126b5c;background:#126b5c;color:#fff}
.nash-smart-progress{position:relative;height:14px;margin:8px 0 40px;border-radius:999px;background:#d6e5e2}
.nash-smart-progress span{display:block;height:100%;border-radius:inherit;background:#169773;transition:width .2s ease}
.nash-smart-progress button{position:absolute;right:0;top:20px;min-height:32px;padding:5px 10px}
.nash-smart-review{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:10px;padding:11px;border:1px solid #9fd0b5;border-radius:10px;background:#fff}
.nash-smart-review[hidden]{display:none!important}
.nash-smart-review p{flex:1 1 300px;margin:0;color:#285247;font-size:.8rem}
.nash-smart-status{min-height:20px!important;margin:8px 0 0!important;color:#285247!important;font-weight:700}
.nash-edge-choice{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 10px;padding:9px 11px;border:1px solid #e1c26c;border-radius:9px;background:#fff8dd;color:#5a491d;font-size:.8rem}
.nash-edge-choice span{flex:1 1 220px;font-weight:700}
.nash-mask-legend{display:flex;gap:14px;flex-wrap:wrap;margin:8px 2px 0!important;color:#526a75!important;font-size:.76rem}
.nash-mask-legend span{display:inline-flex;align-items:center;gap:6px}
.nash-mask-legend i{width:13px;height:13px;border:1px solid rgba(0,0,0,.2);border-radius:3px}
.nash-mask-legend .is-selection{background:rgba(22,183,210,.55)}
.nash-mask-legend .is-suggestion{background:rgba(46,205,104,.58)}
.nash-mask-legend .is-protected{background:rgba(245,157,47,.58)}
.nash-error-step,.nash-delete-confirm,.nash-deleted-step,.nash-complete-step{text-align:center;padding:36px 10px}
.nash-error-step .nash-private-actions,.nash-delete-confirm .nash-private-actions,.nash-deleted-step .nash-private-actions,.nash-complete-step .nash-private-actions{justify-content:center}
.nash-private-modal button:focus-visible,.nash-private-modal input:focus-visible,.nash-private-modal select:focus-visible,.nash-mask-editor:focus-visible{outline:3px solid #f6c453;outline-offset:2px}
@keyframes nash-private-spin{to{transform:rotate(360deg)}}
@media(max-width:860px){
  .nash-private-modal{padding:8px}
  .nash-private-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px);border-radius:15px}
  .nash-private-header,.nash-private-body,.nash-private-footer{padding-left:16px;padding-right:16px}
  .nash-prepare-layout{grid-template-columns:1fr}
  .nash-prepare-preview{position:relative}
  .nash-mask-settings{grid-template-columns:1fr 1fr}
  .nash-quality-card{display:block}
  .nash-quality-card ul{margin-top:10px}
  .nash-surface-list li{align-items:flex-start;flex-direction:column;gap:3px}
  .nash-smart-heading{align-items:stretch;flex-direction:column}
}
@media(max-width:520px){
  .nash-private-header{padding-top:16px;padding-bottom:14px}
  .nash-private-header p{display:none}
  .nash-private-body{padding-top:18px;padding-bottom:18px}
  .nash-private-footer{display:block}
  .nash-private-footer p{margin-bottom:8px}
  .nash-private-actions{display:grid;grid-template-columns:1fr;width:100%}
  .nash-private-actions button{width:100%}
  .nash-rotate-row{grid-template-columns:1fr}
  .nash-crop-ranges,.nash-perspective-ranges,.nash-mask-settings{grid-template-columns:1fr}
  .nash-mask-toolbar{display:grid;grid-template-columns:1fr 1fr}
  .nash-mask-operations,.nash-smart-tools{display:grid;grid-template-columns:1fr 1fr}
  .nash-smart-review{display:grid;grid-template-columns:1fr}
  .nash-smart-review button{width:100%}
  .nash-mask-viewport{min-height:240px}
}
@media(prefers-reduced-motion:reduce){
  .nash-private-modal *{scroll-behavior:auto!important;transition:none!important;animation-duration:.001ms!important;animation-iteration-count:1!important}
  .nash-private-spinner{animation:none;border-color:#b01824}
}
