/* Crop Desk – shared styles for redactor, scanner, carousel, watermark and palette tools */
.nt-stage{position:relative;margin:12px 0;border:1px solid var(--line,#ddd);border-radius:10px;background:#f4f1ea;overflow:hidden;text-align:center}
.nt-stage canvas{display:block;max-width:100%;height:auto;margin:0 auto;touch-action:none;user-select:none;-webkit-user-select:none}
.nt-stage canvas.cross{cursor:crosshair}
.nt-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
.nt-bar .grow{flex:1}
.nt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin:10px 0}
.nt-grid figure{margin:0;border:1px solid var(--line,#ddd);border-radius:8px;padding:4px;background:#fff;text-align:center;font-size:.85em}
.nt-grid img,.nt-grid canvas{max-width:100%;height:auto;display:block;margin:0 auto 4px}
.nt-grid figure.sel{outline:3px solid var(--stamp,#0c6b62)}
.nt-pos{display:inline-grid;grid-template-columns:repeat(3,30px);gap:3px;vertical-align:middle}
.nt-pos button{width:30px;height:30px;border:1px solid var(--line,#ccc);border-radius:5px;background:#fff;cursor:pointer;padding:0}
.nt-pos button.on{background:var(--stamp,#0c6b62);border-color:var(--stamp,#0c6b62)}
.nt-sw{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:10px 0}
.nt-sw .s{border:1px solid var(--line,#ddd);border-radius:10px;overflow:hidden;background:#fff}
.nt-sw .c{height:70px}
.nt-sw .t{padding:6px 8px;font:13px/1.5 ui-monospace,Menlo,Consolas,monospace}
.nt-sw .t button{font:inherit;border:0;background:none;padding:0;cursor:pointer;color:inherit;text-align:left;display:block;width:100%}
.nt-sw .t button:hover{text-decoration:underline}
.nt-hover{display:flex;gap:10px;align-items:center;margin:6px 0;font:14px ui-monospace,Menlo,Consolas,monospace;flex-wrap:wrap}
.nt-hover .c{width:38px;height:38px;border-radius:8px;border:1px solid #0003}
.nt-range{display:inline-flex;align-items:center;gap:6px}
@media(max-width:640px){.nt-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}}


/* Phase 3: newtools align with tokens */
.tool-box{border-radius:16px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 8px 24px rgba(15,23,42,.06)}
.dz{border-radius:16px}
.btn{min-height:44px;border-radius:12px}

/* Photo background change – soft BG picker */
.pbg-panel{margin-top:14px;padding:14px;border:1px solid var(--line,#e2e8f0);border-radius:14px;background:linear-gradient(180deg,#fafbff,#f8fafc)}
.pbg-panel h2{font-size:1.05rem;margin:0 0 8px;letter-spacing:-.01em}
.pbg-panel .pbg-hint{margin:0 0 12px;color:#64748b;font-size:.92rem}
.pbg-modes{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.pbg-modes button{appearance:none;border:1.5px solid #cbd5e1;background:#fff;border-radius:12px;padding:10px 12px;font:inherit;font-weight:600;font-size:.88rem;cursor:pointer;min-height:44px;color:#0f172a;display:inline-flex;align-items:center;gap:6px;transition:border-color .15s,box-shadow .15s,background .15s}
.pbg-modes button:hover{border-color:#6366f1;background:#eef2ff}
.pbg-modes button.on{border-color:#4f46e5;background:#eef2ff;box-shadow:0 0 0 3px rgba(79,70,229,.18);color:#3730a3}
.pbg-modes button .pbg-ico{font-size:1.05rem;line-height:1}
.pbg-swatches{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
.pbg-swatches button{width:36px;height:36px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1.5px #cbd5e1;cursor:pointer;padding:0;min-height:36px}
.pbg-swatches button.on{box-shadow:0 0 0 2px #4f46e5,0 0 0 4px rgba(79,70,229,.25)}
.pbg-swatches button.pbg-checker{background-image:linear-gradient(45deg,#e2e8f0 25%,transparent 25%),linear-gradient(-45deg,#e2e8f0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e2e8f0 75%),linear-gradient(-45deg,transparent 75%,#e2e8f0 75%);background-size:12px 12px;background-position:0 0,0 6px,6px -6px,-6px 0;background-color:#fff}
.pbg-sub{display:none;margin:4px 0 8px;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #e2e8f0}
.pbg-sub.on{display:block}
.pbg-brush{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}
.pbg-brush .btn-ghost.on{background:#eef2ff;border-color:#6366f1;color:#3730a3}
.pbg-stage{position:relative;margin:12px 0;border:1px solid var(--line,#ddd);border-radius:12px;overflow:auto;max-height:min(70vh,720px);background-image:linear-gradient(45deg,#e5e7eb 25%,transparent 25%),linear-gradient(-45deg,#e5e7eb 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e5e7eb 75%),linear-gradient(-45deg,transparent 75%,#e5e7eb 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;background-color:#f8fafc;touch-action:none}
.pbg-stage canvas{display:block;max-width:100%;height:auto;margin:0 auto;cursor:default}
.pbg-stage canvas.brushing{cursor:crosshair}
.pbg-progress{height:6px;border-radius:99px;background:#e2e8f0;overflow:hidden;margin:8px 0;display:none}
.pbg-progress.on{display:block}
.pbg-progress>i{display:block;height:100%;width:0;background:linear-gradient(90deg,#6366f1,#14b8a6);border-radius:99px;transition:width .2s}
@media (max-width:560px){.pbg-modes button{flex:1 1 calc(50% - 8px);justify-content:center}}
