.ksrp-app{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:22px;align-items:start;margin:28px 0}.ksrp-panel{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:22px;box-shadow:0 14px 34px rgba(15,23,42,.07)}.ksrp-panel h2{margin:0 0 10px;font-size:24px;line-height:1.25}.ksrp-panel p{margin:0 0 18px;color:#64748b}.ksrp-controls{display:grid;gap:12px}.ksrp-controls select,.ksrp-controls button,.ksrp-file,.ksrp-size-box input{width:100%;min-height:44px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;padding:10px 12px;font-size:15px}.ksrp-controls button,.ksrp-file{cursor:pointer;font-weight:600;text-align:center}.ksrp-controls button:hover,.ksrp-file:hover{border-color:#cbd5e1;box-shadow:0 10px 20px rgba(15,23,42,.06)}.ksrp-file input{display:none}.ksrp-size-box{border:1px solid #f1f5f9;background:#fafafa;border-radius:14px;padding:13px}.ksrp-size-box label{display:block;margin:0 0 8px;font-size:14px;font-weight:600;color:#334155}.ksrp-size-row{display:grid;gap:10px}.ksrp-quick-widths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.ksrp-quick-widths button{min-height:36px;padding:7px 8px;border-radius:10px;background:#fff}.ksrp-size-note{margin:10px 0 5px!important;font-size:14px;line-height:1.4;color:#64748b}.ksrp-link-button{min-height:auto!important;padding:0!important;border:0!important;background:transparent!important;text-align:left!important;color:#e84d00!important;box-shadow:none!important}.ksrp-height-wrap{margin-top:10px}.ksrp-status{padding:10px 12px;border-radius:12px;font-size:14px;line-height:1.35;background:#f8fafc;color:#475569;border:1px solid #e5e7eb}.ksrp-status.is-error{background:#fff7ed;color:#c2410c;border-color:#fed7aa}.ksrp-status.is-ok{background:#ecfdf5;color:#047857;border-color:#bbf7d0}.ksrp-status.is-hint{background:#f8fafc;color:#475569;border-color:#e5e7eb}.ksrp-steps{margin:16px 0 0;padding-left:20px;color:#475569;font-size:14px;line-height:1.45}.ksrp-stage-wrap{position:relative;min-height:420px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(15,23,42,.06)}.ksrp-canvas{display:block;width:100%;height:auto;max-height:760px;cursor:grab;touch-action:none}.ksrp-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#64748b;font-weight:600;pointer-events:none}.ksrp-stage-wrap.has-photo .ksrp-empty{display:none}@media(max-width:900px){.ksrp-app{grid-template-columns:1fr}.ksrp-panel{padding:18px}.ksrp-panel h2{font-size:21px}.ksrp-quick-widths{grid-template-columns:repeat(4,minmax(0,1fr))}}

.ksrp-canvas:active{cursor:grabbing}.ksrp-size-note strong{color:#0f172a}.ksrp-height-wrap input{margin-top:6px}

.ksrp-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}.ksrp-mode-toggle button{min-height:40px;border-radius:10px;border:0;background:transparent;color:#475569;font-weight:700}.ksrp-mode-toggle button.is-active{background:#7a2642;color:#fff;box-shadow:0 8px 18px rgba(122,38,66,.22)}.ksrp-link-button:disabled{opacity:.45;cursor:not-allowed!important}.ksrp-size-summary{margin:6px 0 6px!important;font-size:13px;line-height:1.35;color:#64748b}.ksrp-size-box input::placeholder{color:#94a3b8}.ksrp-stage-wrap{background:#f8fafc}.ksrp-controls select{font-weight:500}

/* v0.1.9 */
.ksrp-controls select:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}.ksrp-controls select:disabled:hover{box-shadow:none;border-color:#e5e7eb}


/* v0.4.4 day / evening */
.ksrp-light-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;border:1px solid #e5e7eb;border-radius:14px;background:#fff}
.ksrp-light-toggle button{min-height:40px;border-radius:10px;border:0;background:transparent;color:#475569;font-weight:700}
.ksrp-light-toggle button.is-active{background:#7a2642;color:#fff;box-shadow:0 8px 18px rgba(122,38,66,.22)}
.ksrp-light-toggle button:disabled{opacity:.45;cursor:not-allowed!important;box-shadow:none!important}


/* v0.2.1 zoom controls */
.ksrp-zoom-controls{
  display:grid;
  gap:8px;
}
.ksrp-zoom-toggle{
  width:100%;
  min-height:42px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#fff;
  color:#334155;
  font-weight:700;
  cursor:pointer;
}
.ksrp-zoom-toggle.is-active{
  border-color:#8a2446;
  color:#8a2446;
  box-shadow:0 0 0 3px rgba(138,36,70,.08);
}
.ksrp-zoom-toggle:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.ksrp-zoom-levels{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
}
.ksrp-zoom-levels button{
  min-height:34px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#fff;
  color:#475569;
  font-weight:700;
  cursor:pointer;
}
.ksrp-zoom-levels button.is-active{
  border-color:#8a2446;
  background:#8a2446;
  color:#fff;
}
.ksrp-zoom-levels button:disabled{
  opacity:.45;
  cursor:not-allowed;
}


/* v0.2.8 zoom behavior */
.ksrp-stage-wrap.is-zoom-active{overflow:auto;background:#f8fafc}
.ksrp-stage-wrap.is-zoom-active .ksrp-canvas{width:calc(var(--ksrp-zoom,1) * 100%);max-height:none}
.ksrp-stage-wrap.is-zoom-active .ksrp-empty{position:sticky;left:0}

/* v0.5.0 start screen and built-in window example */
.ksrp-start-screen,.ksrp-editor-screen{min-width:0}
.ksrp-start-actions{display:grid;gap:10px;margin:18px 0}
.ksrp-default-button,.ksrp-file-primary{min-height:48px!important;border-radius:12px!important;font-weight:700!important}
.ksrp-default-button{background:#7a2642!important;border-color:#7a2642!important;color:#fff!important;box-shadow:0 8px 18px rgba(122,38,66,.18)}
.ksrp-default-button:hover{background:#682039!important;border-color:#682039!important}
.ksrp-default-button:disabled{opacity:.55;cursor:wait!important;box-shadow:none!important}
.ksrp-file-primary{display:flex!important;align-items:center;justify-content:center;background:#fff!important;color:#334155!important}
.ksrp-photo-help{margin-top:16px;padding:15px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.045)}
.ksrp-photo-help h3{margin:0 0 12px;font-size:16px;color:#1e293b}
.ksrp-photo-help ol{counter-reset:ksrp-photo-step;display:grid;gap:9px;margin:0;padding:0;list-style:none}
.ksrp-photo-help li{counter-increment:ksrp-photo-step;position:relative;padding-left:31px;color:#475569;font-size:14px;line-height:1.38}
.ksrp-photo-help li:before{content:counter(ksrp-photo-step);position:absolute;left:0;top:-1px;width:21px;height:21px;border:1px solid #cbd5e1;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f8fafc;color:#64748b;font-size:12px;font-weight:700}
.ksrp-width-tip{margin-top:14px;padding:13px 14px;border:1px solid #fde7b0;border-radius:14px;background:#fffaf0}
.ksrp-width-tip strong{display:block;margin-bottom:5px;color:#334155;font-size:14px}
.ksrp-width-tip p{margin:0!important;color:#64748b!important;font-size:13px;line-height:1.42}
.ksrp-width-tip b{color:#7a2642}
.ksrp-source-note{padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#475569;font-size:13px;line-height:1.4}
.ksrp-quick-widths button.is-selected{border-color:#7a2642;background:#7a2642;color:#fff;box-shadow:0 7px 16px rgba(122,38,66,.16)}
.ksrp-quick-widths button.is-recommended:not(.is-selected){border-color:#c4b5bd;color:#7a2642;background:#fffafb}
.ksrp-start-screen[hidden],.ksrp-editor-screen[hidden]{display:none!important}

@media(max-width:900px){
  .ksrp-start-actions{margin:14px 0}
  .ksrp-photo-help{padding:13px}
}

/* v0.6.2 selected product link */
.ksrp-product-view-link{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid #e5e7eb;border-radius:11px;background:#fff;color:#475569;text-decoration:none;font-size:14px;font-weight:700;transition:.15s ease}
.ksrp-product-view-link:hover{border-color:#cbd5e1;color:#7a2642;box-shadow:0 6px 16px rgba(15,23,42,.05)}
.ksrp-product-view-link[hidden]{display:none!important}
