tenda-motif-crop { display: block; color: inherit; }
.tc-shell { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
.tc-workspace { min-width: 0; }
.tc-caption { margin: 0 0 12px; font-weight: 600; font-variant-numeric: tabular-nums; }
.tc-stage { min-height: 180px; background: #eeeae4; padding: 20px; display: flex; align-items: center; justify-content: center; }
.tc-side { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 24px; }
.tc-side .tc-label:first-child { margin-top: 0; }
.tc-frame { position: relative; overflow: hidden; flex: none; cursor: grab; touch-action: none; outline: 1px solid #65574b; background: #e0e9dd; }
.tc-frame:active { cursor: grabbing; }
.tc-frame img { position: absolute; max-width: none; user-select: none; pointer-events: none; }
.tc-help, .tc-note { font-size: 14px; line-height: 1.55; }
.tc-help { margin: 12px 0 0; }
.tc-overview { position: relative; margin: 12px 0 0; overflow: hidden; background: #eeeae4; }
.tc-overview img { display: block; width: 100%; }
.tc-outline { position: absolute; box-sizing: border-box; border: 2px solid #fff; outline: 1px solid #30261e; box-shadow: 0 0 0 400px #211c1980; pointer-events: none; }
.tc-label { display: block; margin: 18px 0 8px; font-size: 15px; font-weight: 600; }
.tc-range { display: block; width: 100%; min-height: 44px; accent-color: #7b2428; cursor: pointer; }
.tc-range:disabled { cursor: default; opacity: .5; }
.tc-button { min-height: 44px; border: 1px solid #7b2428; padding: 10px 16px; background: transparent; color: #7b2428; font: inherit; cursor: pointer; }
.tc-button:hover:not(:disabled) { background: #f1e4e1; }
.tc-button:disabled { opacity: .5; cursor: not-allowed; }
.tc-frame:focus-visible, .tc-button:focus-visible, .tc-range:focus-visible { outline: 3px solid #7b2428; outline-offset: 5px; }
.tc-error { color: #852327; }
tenda-motif-crop [hidden] { display: none !important; }
@media (max-width: 700px) {
  .tc-shell { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .tc-stage { padding: 12px; }
  .tc-side { display: grid; grid-template-columns: minmax(0, 110px) minmax(0, 1fr); gap: 18px; }
  .tc-side .tc-label:first-child { margin-top: 0; }
  .tc-overview { margin-bottom: 0; }
}
