/* LyfPDF v36 — reference-studied single-canvas image workflow */
.v36-cutout-studio{grid-template-columns:minmax(300px,350px) minmax(0,1fr);gap:18px;align-items:start}
.v36-cutout-studio .lab-sidebar{max-height:calc(100vh - 32px);overflow:auto;scrollbar-width:thin}
.v36-single-stage{min-width:0;padding:18px;background:linear-gradient(180deg,#f7fbfd 0%,#eef6f8 100%)}
.v36-main-compare{margin:0;background:#fff;border:1px solid #d7e5eb;border-radius:22px;padding:14px;box-shadow:0 18px 44px rgba(15,35,62,.09)}
.v36-cutout-media{min-height:420px;max-height:760px;display:grid;place-items:center;background-color:#edf2f6!important;background-image:linear-gradient(45deg,#d7e0e8 25%,transparent 25%),linear-gradient(-45deg,#d7e0e8 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d7e0e8 75%),linear-gradient(-45deg,transparent 75%,#d7e0e8 75%)!important;background-size:24px 24px!important;background-position:0 0,0 12px,12px -12px,-12px 0!important}
.v36-cutout-media canvas{width:auto!important;max-width:100%;height:auto!important;max-height:740px;object-fit:contain;background:transparent!important}
.v36-cutout-media #bgCompareBase{position:relative;z-index:0}
.v36-cutout-media #bgCompareTop{position:absolute;inset:0;margin:auto;width:auto!important;max-width:100%;height:auto!important;max-height:740px;z-index:1}
.v36-cutout-media .v29-compare-line,.v36-cutout-media .v29-split-label{z-index:3}
.v36-processing{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:rgba(246,250,252,.88);backdrop-filter:blur(4px);color:#10243d;text-align:center}
.v36-processing[hidden]{display:none}
.v36-processing small{color:#64748b}
.v36-spinner{width:34px;height:34px;border:4px solid #cde8e8;border-top-color:#0ea5a4;border-radius:50%;animation:v36spin .8s linear infinite}
@keyframes v36spin{to{transform:rotate(360deg)}}
.v36-action-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 0}
.v36-action-dock button{border:1px solid #d7e5eb;background:#fff;color:#17324d;border-radius:12px;padding:.72rem .65rem;font-weight:800;cursor:pointer;transition:.18s ease}
.v36-action-dock button:hover{border-color:#14b8a6;transform:translateY(-1px);box-shadow:0 8px 20px rgba(20,184,166,.12)}
.v36-action-dock button:nth-last-child(-n+2){background:linear-gradient(135deg,#0f9e9a,#1887df);color:#fff;border-color:transparent}
.v36-advanced-controls,.v36-refine{border:1px solid #dbe7ec;border-radius:14px;background:#fbfdfe;margin:12px 0;padding:0}
.v36-advanced-controls summary,.v36-refine summary{cursor:pointer;padding:12px 13px;font-weight:850;color:#17324d;list-style:none;display:flex;align-items:center;justify-content:space-between}
.v36-advanced-controls summary:after,.v36-refine summary:after{content:'+';font-size:1.1rem;color:#0f9e9a}
.v36-advanced-controls[open] summary:after,.v36-refine[open] summary:after{content:'−'}
.v36-advanced-controls .lab-field,.v36-refine .lab-field,.v36-refine .tool-palette,.v36-refine .btn{margin-left:12px;margin-right:12px}
.v36-advanced-controls .lab-field:last-child,.v36-refine .btn:last-child{margin-bottom:12px}
.v36-swatches button{width:34px;height:34px;border-radius:10px}
.v36-cutout-studio .v29-view-buttons button{min-width:80px}
.v36-cutout-studio .v29-compare-range{accent-color:#0ea5a4}
/* Improve all four reference-reviewed workspaces without changing routes/meta. */
.v31-enhancer .v29-canvas-card,.v31-passport .v29-passport-card,.lab-workspace .v29-compare-panel{overflow:hidden}
.v31-enhancer .v29-zoom-wrap{background:#eef3f7;max-height:720px}
.v31-enhancer .v29-zoom-wrap canvas{image-rendering:auto}
.v31-passport .passport-editor,.v31-passport .passport-sheet{background:#f8fafc}
.v31-passport .v29-compare-media{background:#eef3f7!important}
@media(max-width:980px){.v36-cutout-studio{grid-template-columns:1fr}.v36-cutout-studio .lab-sidebar{position:static;max-height:none}.v36-action-dock{grid-template-columns:repeat(2,minmax(0,1fr))}.v36-cutout-media{min-height:320px}.v36-cutout-media canvas{max-height:620px}}
@media(max-width:560px){.v36-single-stage{padding:10px}.v36-main-compare{padding:9px;border-radius:16px}.v36-cutout-media{min-height:260px}.v36-action-dock{grid-template-columns:1fr 1fr}.v36-cutout-studio .v29-view-buttons button{min-width:0}.v36-cutout-studio .v29-compare-head{gap:10px}}
