Pen Settings

HTML

CSS

CSS Base

Vendor Prefixing

Add External Stylesheets/Pens

Any URLs added here will be added as <link>s in order, and before the CSS in the editor. You can use the CSS from another Pen by using its URL and the proper URL extension.

+ add another resource

JavaScript

Babel includes JSX processing.

Add External Scripts/Pens

Any URL's added here will be added as <script>s in order, and run before the JavaScript in the editor. You can use the URL of any other Pen and it will include the JavaScript from that Pen.

+ add another resource

Packages

Add Packages

Search for and use JavaScript packages from npm here. By selecting a package, an import statement will be added to the top of the JavaScript editor for this package.

Behavior

Auto Save

If active, Pens will autosave every 30 seconds after being saved once.

Auto-Updating Preview

If enabled, the preview panel updates automatically as you code. If disabled, use the "Run" button to update.

Format on Save

If enabled, your code will be formatted when you actively save your Pen. Note: your code becomes un-folded during formatting.

Editor Settings

Code Indentation

Want to change your Syntax Highlighting theme, Fonts and more?

Visit your global Editor Settings.

HTML

              
                <div></div>

<section class="tool-bar">
	<label for="fit">Fit to width</label>
		<input type="checkbox" checked id="fit">
	
</section>
              
            
!

CSS

              
                @import url("https://fonts.googleapis.com/css2?family=Mulish:wght@1000&display=swap");

@function cs($x, $y, $color: #444) {
	$result: calc(var(--sh) * #{$x}) calc(var(--sh) * #{$y}) $color;
	@return $result;
}

@function line($x, $y, $size, $color, $isVer: false) {
	$shadows: ();

	@if $isVer {
		@for $i from $y through $y + $size - 1 {
			$shadows: append($shadows, cs($x, $i, $color), comma);
		}
	} @else {
		@for $i from $x through $x + $size - 1 {
			$shadows: append($shadows, cs($i, $y, $color), comma);
		}
	}

	@return $shadows;
}

@function dash($x, $y, $size, $color, $dashGap: 2, $dashSize: 1) {
	$shadows: ();

	$i: $x;
	$currentSize: 0;
	@while $i < $x + $size {
		$shadows: append($shadows, cs($i, $y, $color), comma);
		$currentSize: $currentSize + 1;

		@if $currentSize >= $dashSize {
			$i: $i + $dashGap;
			$currentSize: 0;
		} @else {
			$i: $i + 1;
		}
	}

	@return $shadows;
}

@function bucket($x, $y, $c: red) {
	$result: cs(5 + $x, 0 + $y, $c), line(0 + $x, 1 + $y, 2, $c),
		cs(6 + $x, 1 + $y, $c), cs(0 + $x, 2 + $y, $c), cs(7 + $x, 2 + $y, $c),
		line(0 + $x, 3 + $y, 8, $c), line(0 + $x, 4 + $y, 8, $c),
		line(0 + $x, 5 + $y, 7, $c), line(1 + $x, 6 + $y, 6, $c),
		line(1 + $x, 7 + $y, 6, $c), line(1 + $x, 8 + $y, 6, $c),
		line(1 + $x, 9 + $y, 6, $c), line(1 + $x, 10 + $y, 6, $c),
		line(1 + $x, 11 + $y, 6, $c), line(2 + $x, 12 + $y, 4, $c),
		line(2 + $x, 13 + $y, 4, $c);

	@return $result;
}

@function head($x, $y, $c1: #e44, $c2: #222, $c3: #caa, $c4: #6a6) {
	$result: line(2 + $x, 0 + $y, 6, $c1), line(1 + $x, 1 + $y, 8, $c1),
		line(0 + $x, 2 + $y, 10, $c1), line(0 + $x, 3 + $y, 11, $c1),
		cs(0 + $x, 4 + $y, $c1), line(4 + $x, 4 + $y, 7, $c1),
		line(1 + $x, 4 + $y, 3, $c2), line(0 + $x, 5 + $y, 6, $c2),
		line(6 + $x, 5 + $y, 6, $c1), line(0 + $x, 6 + $y, 5, $c3),
		line(5 + $x, 6 + $y, 2, $c2), line(7 + $x, 6 + $y, 5, $c1),
		line(-1 + $x, 7 + $y, 7, $c3), line(6 + $x, 7 + $y, 2, $c2),
		line(8 + $x, 7 + $y, 4, $c1), line(-1 + $x, 8 + $y, 3, $c3),
		cs(2 + $x, 8 + $y, $c2), line(3 + $x, 8 + $y, 3, $c3),
		line(6 + $x, 8 + $y, 2, $c2), line(8 + $x, 8 + $y, 4, $c1),
		line(0 + $x, 9 + $y, 3, $c3), line(3 + $x, 9 + $y, 2, $c1),
		cs(5 + $x, 9 + $y, $c3), line(6 + $x, 9 + $y, 2, $c2),
		line(8 + $x, 9 + $y, 4, $c1), cs(0 + $x, 10 + $y, $c1),
		line(1 + $x, 10 + $y, 2, $c3), line(3 + $x, 10 + $y, 2, $c1),
		cs(5 + $x, 10 + $y, $c3), line(6 + $x, 10 + $y, 2, $c2),
		line(8 + $x, 10 + $y, 3, $c1), line(12 + $x, 10 + $y, 2, $c1),
		line(1 + $x, 11 + $y, 5, $c3), line(6 + $x, 11 + $y, 2, $c2),
		line(8 + $x, 11 + $y, 7, $c1), line(1 + $x, 12 + $y, 5, $c3),
		line(8 + $x, 12 + $y, 8, $c1), line(9 + $x, 13 + $y, 2, $c1),
		cs(13 + $x, 13 + $y, $c1), line(2 + $x, 13 + $y, 6, $c4),
		line(3 + $x, 14 + $y, 4, $c3), cs(2 + $x, 14 + $y, $c4),
		cs(7 + $x, 14 + $y, $c4), line(9 + $x, 14 + $y, 3, $c1),
		line(2 + $x, 15 + $y, 6, $c4), line(10 + $x, 15 + $y, 3, $c1),
		line(12 + $x, 16 + $y, 2, $c1), cs(13 + $x, 17 + $y, $c1);

	@return $result;
}

@function arm(
	$x,
	$y,
	$c1: #e44,
	$c2: #222,
	$c3: #caa,
	$c4: #6a6,
	$c5: #ffac1c
) {
	$result: line(8 + $x, 2 + $y, 2, $c4), line(13 + $x, 2 + $y, 2, $c3),
		line(6 + $x, 1 + $y, 2, $c4), line(10 + $x, 1 + $y, 2, $c4),
		line(8 + $x, 1 + $y, 2, $c3), line(13 + $x, 1 + $y, 6, $c3),
		line(1 + $x, 1 + $y, 2, $c3), line(0 + $x, 0 + $y, 4, $c3),
		line(4 + $x, 0 + $y, 2, $c4), line(6 + $x, 0 + $y, 16, $c3),
		line(1 + $x, -1 + $y, 3, $c3), line(4 + $x, -1 + $y, 2, $c4),
		line(6 + $x, -1 + $y, 3, $c3), cs(9 + $x, -1 + $y, $c4),
		line(10 + $x, -1 + $y, 6, $c3), cs(16 + $x, -1 + $y, $c4),
		cs(18 + $x, -1 + $y, $c4), cs(20 + $x, -1 + $y, $c4),
		cs(17 + $x, -1 + $y, $c3), cs(19 + $x, -1 + $y, $c3),
		cs(21 + $x, -1 + $y, $c3), line(6 + $x, -2 + $y, 2, $c4),
		cs(8 + $x, -3 + $y, $c4), cs(9 + $x, -4 + $y, $c4),
		line(10 + $x, -5 + $y, 3, $c4), line(12 + $x, -6 + $y, 2, $c4),
		cs(14 + $x, -7 + $y, $c4), line(15 + $x, -8 + $y, 3, $c4),
		line(16 + $x, -9 + $y, 3, $c4), line(17 + $x, -10 + $y, 3, $c4),
		line(17 + $x, -11 + $y, 7, $c4), line(18 + $x, -12 + $y, 3, $c4),
		line(19 + $x, -13 + $y, 2, $c4), line(20 + $x, -14 + $y, 2, $c4),
		line(21 + $x, -15 + $y, 4, $c4), line(8 + $x, -2 + $y, 3, $c3),
		line(12 + $x, -2 + $y, 12, $c3), line(9 + $x, -3 + $y, 3, $c3),
		line(13 + $x, -3 + $y, 6, $c3), line(22 + $x, -3 + $y, 2, $c3),
		cs(20 + $x, -3 + $y, $c3), cs(19 + $x, -3 + $y, $c4),
		cs(21 + $x, -3 + $y, $c4), cs(12 + $x, -3 + $y, $c4),
		cs(11 + $x, -2 + $y, $c4), line(10 + $x, -4 + $y, 7, $c3),
		line(18 + $x, -4 + $y, 5, $c3), cs(17 + $x, -4 + $y, $c4),
		cs(16 + $x, -5 + $y, $c4), cs(18 + $x, -5 + $y, $c4),
		cs(20 + $x, -5 + $y, $c4), line(13 + $x, -5 + $y, 3, $c3),
		cs(17 + $x, -5 + $y, $c3), cs(19 + $x, -5 + $y, $c3),
		cs(21 + $x, -5 + $y, $c3), line(14 + $x, -6 + $y, 7, $c3),
		line(15 + $x, -7 + $y, 5, $c3), cs(18 + $x, -8 + $y, $c3),
		cs(19 + $x, -8 + $y, $c2), cs(20 + $x, -7 + $y, $c2),
		cs(21 + $x, -6 + $y, $c2), cs(22 + $x, -5 + $y, $c2),
		cs(23 + $x, -4 + $y, $c2), cs(24 + $x, -3 + $y, $c2),
		line(19 + $x, -9 + $y, 2, $c5), line(21 + $x, -9 + $y, 3, $c4),
		line(24 + $x, -9 + $y, 4, $c5), line(20 + $x, -8 + $y, 5, $c5),
		line(21 + $x, -7 + $y, 4, $c5), line(25 + $x, -8 + $y, 3, $c4),
		line(25 + $x, -6 + $y, 3, $c4), line(22 + $x, -6 + $y, 3, $c5),
		line(23 + $x, -5 + $y, 3, $c5), line(24 + $x, -4 + $y, 2, $c5),
		cs(20 + $x, -10 + $y, $c5), cs(21 + $x, -10 + $y, $c4),
		cs(22 + $x, -10 + $y, $c5), cs(23 + $x, -10 + $y, $c4),
		cs(25 + $x, -7 + $y, $c4), cs(26 + $x, -7 + $y, $c5),
		cs(27 + $x, -7 + $y, $c4), line(24 + $x, -10 + $y, 3, $c5),
		line(24 + $x, -11 + $y, 2, $c5), line(21 + $x, -12 + $y, 4, $c5),
		line(21 + $x, -13 + $y, 3, $c5), cs(22 + $x, -14 + $y, $c5),
		cs(23 + $x, -14 + $y, $c2), cs(24 + $x, -13 + $y, $c2),
		cs(25 + $x, -12 + $y, $c2), cs(26 + $x, -11 + $y, $c2),
		cs(27 + $x, -10 + $y, $c2), cs(28 + $x, -9 + $y, $c2),
		cs(26 + $x, -12 + $y, $c3), line(25 + $x, -13 + $y, 2, $c3),
		line(24 + $x, -14 + $y, 3, $c3), line(25 + $x, -15 + $y, 2, $c3),
		line(27 + $x, -15 + $y, 2, $c1), line(27 + $x, -14 + $y, 3, $c1),
		line(27 + $x, -13 + $y, 4, $c1), line(27 + $x, -12 + $y, 5, $c1),
		line(27 + $x, -11 + $y, 6, $c1), line(28 + $x, -10 + $y, 4, $c1),
		line(29 + $x, -9 + $y, 2, $c1), cs(29 + $x, -15 + $y, $c4),
		line(30 + $x, -14 + $y, 2, $c4), line(31 + $x, -13 + $y, 2, $c4);
	@return $result;
}

@function body($x, $y, $c1: #34e, $c2: #ffac1c, $c3: #008080, $c4: #811331) {
	$result: line(2 + $x, -1 + $y, 18, $c1), line(6 + $x, -2 + $y, 14, $c1),
		line(9 + $x, -3 + $y, 10, $c1), line(9 + $x, -4 + $y, 11, $c1),
		line(11 + $x, -5 + $y, 9, $c1), line(12 + $x, -6 + $y, 9, $c1),
		line(13 + $x, -7 + $y, 9, $c1), line(13 + $x, -8 + $y, 9, $c1),
		line(15 + $x, -9 + $y, 7, $c1), line(15 + $x, -10 + $y, 7, $c1),
		line(15 + $x, -11 + $y, 7, $c1), line(18 + $x, -12 + $y, 4, $c1),
		line(19 + $x, -13 + $y, 3, $c1), line(20 + $x, -14 + $y, 2, $c1),
		line(19 + $x, -15 + $y, 2, $c1), line(0 + $x, 0 + $y, 21, $c1),
		line(1 + $x, 1 + $y, 20, $c1), line(1 + $x, 2 + $y, 21, $c1),
		line(1 + $x, 3 + $y, 21, $c1), line(-1 + $x, 4 + $y, 2, $c1),
		line(-1 + $x, 5 + $y, 2, $c1), line(-1 + $x, 6 + $y, 2, $c1),
		line(-1 + $x, 7 + $y, 3, $c1), line(-1 + $x, 8 + $y, 2, $c1),
		line(-1 + $x, 9 + $y, 2, $c1), line(-1 + $x, 10 + $y, 23, $c1),
		line(-1 + $x, 11 + $y, 23, $c1), line(-1 + $x, 12 + $y, 23, $c1),
		line(1 + $x, 9 + $y, 21, $c2), dash(1 + $x, 8 + $y, 21, $c2),
		dash(2 + $x, 8 + $y, 20, $c1), dash(2 + $x, 7 + $y, 20, $c2),
		dash(3 + $x, 7 + $y, 20, $c1), dash(2 + $x, 6 + $y, 20, $c3),
		dash(1 + $x, 6 + $y, 21, $c4), dash(2 + $x, 5 + $y, 20, $c4, 4),
		dash(4 + $x, 4 + $y, 20, $c3, 4), dash(1 + $x, 4 + $y, 20, $c4, 2, 3),
		dash(3 + $x, 5 + $y, 20, $c3, 2, 3), cs(1 + $x, 5 + $y, $c3),
		cs(21 + $x, 4 + $y, $c4);
	@return $result;
}

@function horse(
	$x,
	$y,
	$c1: #5c4033,
	$c2: #ffac1c,
	$c3: #7c3030,
	$c4: #811331,
	$c5: #222
) {
	$result: line(2 + $x, -5 + $y, 5, $c1, true),
		line(3 + $x, -5 + $y, 3, $c1, true), line(4 + $x, -5 + $y, 6, $c1, true),
		line(5 + $x, -5 + $y, 6, $c1, true), line(6 + $x, -5 + $y, 3, $c1, true),
		line(7 + $x, -4 + $y, 4, $c1, true), line(1 + $x, -20 + $y, 19, $c2, true),
		line(2 + $x, -16 + $y, 9, $c2), line(2 + $x, -17 + $y, 9, $c2),
		line(2 + $x, -18 + $y, 8, $c2), line(2 + $x, -6 + $y, 6, $c2),
		line(7 + $x, -5 + $y, 2, $c2), line(2 + $x, -15 + $y, 9, $c3, true),
		line(3 + $x, -15 + $y, 9, $c3, true), line(6 + $x, -12 + $y, 6, $c3, true),
		line(7 + $x, -11 + $y, 5, $c3, true), line(8 + $x, -11 + $y, 6, $c3, true),
		line(4 + $x, -8 + $y, 2, $c3, true), line(5 + $x, -8 + $y, 2, $c3, true),
		line(4 + $x, -14 + $y, 2, $c2), line(4 + $x, -15 + $y, 5, $c3),
		line(6 + $x, -14 + $y, 3, $c3), line(9 + $x, -13 + $y, 3, $c3, true),
		cs(8 + $x, -13 + $y, $c3), line(6 + $x, -13 + $y, 3, $c1),
		line(7 + $x, -12 + $y, 3, $c1), line(4 + $x, -13 + $y, 5, $c5, true),
		line(5 + $x, -13 + $y, 5, $c5, true), line(2 + $x, -21 + $y, 3, $c2, true),
		line(3 + $x, -22 + $y, 2, $c2, true), cs(4 + $x, -22 + $y, $c2),
		cs(5 + $x, -23 + $y, $c5), cs(6 + $x, -24 + $y, $c5),
		line(7 + $x, -25 + $y, 4, $c5), cs(9 + $x, -24 + $y, $c5),
		cs(8 + $x, -23 + $y, $c5), line(6 + $x, -21 + $y, 2, $c2, true),
		line(4 + $x, -21 + $y, 2, $c3), line(7 + $x, -21 + $y, 4, $c3),
		line(3 + $x, -20 + $y, 3, $c3), line(3 + $x, -19 + $y, 4, $c3),
		line(5 + $x, -22 + $y, 2, $c3), line(6 + $x, -23 + $y, 2, $c3),
		line(7 + $x, -24 + $y, 2, $c3), cs(9 + $x, -20 + $y, $c3),
		line(7 + $x, -22 + $y, 6, $c5), cs(11 + $x, -21 + $y, $c5),
		cs(10 + $x, -20 + $y, $c5), line(7 + $x, -20 + $y, 2, $c5),
		line(7 + $x, -19 + $y, 3, $c2), line(9 + $x, -15 + $y, 2, $c2),
		line(9 + $x, -14 + $y, 2, $c2), line(1 + $x, -23 + $y, 3, $c5, true),
		line(2 + $x, -23 + $y, 2, $c5, true), line(0 + $x, -23 + $y, 6, $c5, true),
		line(-1 + $x, -23 + $y, 2, $c5, true), line(-1 + $x, -19 + $y, 2, $c5, true),
		line(-2 + $x, -23 + $y, 3, $c5, true), line(-2 + $x, -18 + $y, 2, $c5, true),
		line(-3 + $x, -21 + $y, 8, $c5, true), line(-4 + $x, -21 + $y, 13, $c5, true),
		line(-3 + $x, -13 + $y, 5, $c3, true), line(-2 + $x, -16 + $y, 9, $c3, true),
		line(-1 + $x, -17 + $y, 14, $c3, true), line(0 + $x, -17 + $y, 15, $c3, true),
		line(-2 + $x, -20 + $y, 2, $c3, true), line(-1 + $x, -21 + $y, 2, $c3, true),
		cs(-5 + $x, -22 + $y, $c5), line(-5 + $x, -21 + $y, 23, $c3, true),
		line(-6 + $x, -21 + $y, 8, $c5, true), line(-6 + $x, -13 + $y, 15, $c3, true),
		line(-7 + $x, -20 + $y, 9, $c5, true), line(-7 + $x, -11 + $y, 14, $c3, true);
	@return $result;
}

@function horseBody(
	$x,
	$y,
	$c1: #5c4033,
	$c2: #ffac1c,
	$c3: #7c3030,
	$c4: #6a6,
	$c5: #222,
	$c6: #34e
) {
	$result: 
		line(-1 + $x, 1 + $y, 2, $c5, true),
		line(0 + $x, 0 + $y, 4, $c5, true),
		line(1 + $x, -2 + $y, 4, $c5, true),
		line(2 + $x, -3 + $y, 7, $c5, true),
		line(3 + $x, -5 + $y, 6, $c5, true),
		line(4 + $x, -9 + $y, 6, $c5, true),
		line(4 + $x, -1 + $y, 2, $c5, true),
		line(5 + $x, -12 + $y, 10, $c5, true),
		line(6 + $x, -15 + $y, 12, $c5, true),
		line(7 + $x, -4 + $y, 3, $c5, true),
		line(8 + $x, -13 + $y, 9, $c5, true),
		line(9 + $x, -14 + $y, 9, $c5, true),
		cs(8 + $x, -15 + $y,  $c5),
		cs(8 + $x, -14 + $y,  $c3),
		cs(9 + $x, -16 + $y,  $c5),
		cs(9 + $x, -15 + $y,  $c3),
		cs(10 + $x, -17 + $y,  $c5),
		cs(10 + $x, -16 + $y,  $c3),
		cs(10 + $x, -15 + $y,  $c5),
		cs(11 + $x, -18 + $y,  $c5),
		cs(11 + $x, -17 + $y,  $c3),
		line(11 + $x, -16 + $y, 9, $c5, true),
		line(12 + $x, -19 + $y, 9, $c5, true),
		line(13 + $x, -19 + $y, 7, $c5, true),
		line(13 + $x, -10 + $y, 2, $c5, true),
		cs(14 + $x, -19 + $y,  $c5),
		line(14 + $x, -12 + $y, 3, $c5, true),
		line(1 + $x, 2 + $y, 3, $c3, true),
		line(2 + $x, 4 + $y, 2, $c3, true),
		line(3 + $x, 1 + $y, 5, $c3, true),
		line(4 + $x, 1 + $y, 5, $c3, true),
		line(4 + $x, -3 + $y, 2, $c3, true),
		line(5 + $x, -2 + $y, 9, $c3, true),
		line(6 + $x, -3 + $y, 10, $c3, true),
		line(7 + $x, -1 + $y, 8, $c3, true),
		line(7 + $x, -15 + $y, 11, $c3, true),
		line(8 + $x, -2 + $y, 9, $c3, true),
		cs(8 + $x, -4 + $y,  $c3),
		cs(8 + $x, -3 + $y,  $c5),
		line(9 + $x, -5 + $y, 11, $c3, true),
		line(10 + $x, -14 + $y, 20, $c3, true),
		line(11 + $x, -7 + $y, 13, $c3, true),
		line(12 + $x, -10 + $y, 15, $c3, true),
		line(13 + $x, -8 + $y, 13, $c3, true),
		line(14 + $x, -9 + $y, 13, $c3, true),
		line(14 + $x, -18 + $y, 6, $c3, true),
		line(13 + $x, -12 + $y, 2, $c3, true),
		line(-1 + $x, 3 + $y, 5, $c2, true),
		line(0 + $x, 4 + $y, 3, $c2, true),
		line(1 + $x, 5 + $y, 4, $c2, true),
		cs(2 + $x, 6 + $y,  $c2),
		line(3 + $x, 6 + $y, 3, $c2, true),
		line(4 + $x, 6 + $y, 2, $c2, true),
		line(5 + $x, 7 + $y, 3, $c2, true),
		line(6 + $x, 7 + $y, 2, $c2, true),
		line(7 + $x, 7 + $y, 4, $c2, true),
		line(8 + $x, 7 + $y, 2, $c2, true),
		line(9 + $x, 6 + $y, 5, $c2, true),
		line(10 + $x, 6 + $y, 3, $c2, true),
		line(11 + $x, 6 + $y, 2, $c2, true),
		line(12 + $x, 5 + $y, 4, $c2, true),
		line(13 + $x, 5 + $y, 2, $c2, true),
		line(14 + $x, 4 + $y, 2, $c2, true),
		cs(15 + $x, 4 + $y,  $c2),
		line(16 + $x, 3 + $y, 4, $c2, true),
		cs(17 + $x, 3 + $y,  $c2),
		line(18 + $x, 2 + $y, 4, $c2, true),
		line(19 + $x, 1 + $y, 2, $c2, true),
		line(20 + $x, 0 + $y, 4, $c2, true),
		line(21 + $x, -2 + $y, 2, $c2, true),
		cs(22 + $x, -1 + $y,  $c2),
		line(-1 + $x, 11 + $y, 20, $c4),
		line(-1 + $x, 8 + $y, 3, $c3, true),
		line(0 + $x, 7 + $y, 4, $c3, true),
		line(1 + $x, 9 + $y, 2, $c3, true),
		line(2 + $x, 7 + $y, 4, $c3, true),
		line(3 + $x, 9 + $y, 2, $c3, true),
		line(4 + $x, 8 + $y, 3, $c3, true),
		cs(5 + $x, 10 + $y,  $c3),
		line(6 + $x, 9 + $y, 2, $c3, true),
		line(8 + $x, 9 + $y, 2, $c3, true),
		line(10 + $x, 9 + $y, 2, $c3, true),
		line(11 + $x, 8 + $y, 3, $c3, true),
		line(12 + $x, 9 + $y, 2, $c3, true),
		line(13 + $x, 7 + $y, 4, $c3, true),
		line(14 + $x, 6 + $y, 5, $c3, true),
		line(15 + $x, 5 + $y, 6, $c3, true),
		line(16 + $x, 7 + $y, 4, $c3, true),
		line(17 + $x, 4 + $y, 7, $c3, true),
		line(18 + $x, 6 + $y, 5, $c3, true),
		
		line(-1 + $x, 12 + $y, 20, $c3),
		cs(-1 + $x, 13 + $y,  $c2),
		line(0 + $x, 13 + $y, 6, $c3),
		
		cs(6 + $x, 13 + $y,  $c2),
		line(7 + $x, 13 + $y, 5, $c3),
		
		cs(12 + $x, 13 + $y,  $c2),
		line(13 + $x, 13 + $y, 4, $c3),
		
		cs(17 + $x, 13 + $y,  $c2),
		line(18 + $x, 13 + $y, 2, $c3),
		
		dash(-2 + $x, 14 + $y, 22, $c3, 2,5),
		
		line(-1 + $x, 15 + $y, 2, $c3, true),
		line(6 + $x, 15 + $y, 2, $c3, true),
		line(12 + $x, 15 + $y, 2, $c3, true),
		line(17 + $x, 15 + $y, 2, $c3, true),
		
		
		
		line(-1 + $x, 18 + $y, 3, $c2, true),
		
		cs(3 + $x, 15 + $y,  $c2),
		line(1 + $x, 16 + $y, 4, $c2),
		line(0 + $x, 17 + $y, 6, $c2),
		
		cs(9 + $x, 15 + $y,  $c2),
		line(8 + $x, 16 + $y, 3, $c2),
		line(7 + $x, 17 + $y, 5, $c2),
		
		cs(15 + $x, 15 + $y,  $c2),
		line(14 + $x, 16 + $y, 3, $c2),
		line(13 + $x, 17 + $y, 4, $c2),
		
		cs(19 + $x, 16 + $y,  $c2),
		line(18 + $x, 17 + $y, 2, $c2),
		line(4 + $x, 18 + $y, 4, $c2),
		line(11 + $x, 18 + $y, 9, $c2),
		line(0 + $x, 19 + $y, 14, $c2),
		line(17 + $x, 19 + $y, 2, $c2),
		line(4 + $x, 20 + $y, 3, $c2),
		line(10 + $x, 20 + $y, 8, $c2),
		
		cs(-1 + $x, 17 + $y,  $c4),		
		cs(6 + $x, 17 + $y,  $c4),		
		cs(12 + $x, 17 + $y,  $c4),		
		cs(17 + $x, 17 + $y,  $c4),
		
		line(0 + $x, 15 + $y, 2, $c4, true),
		line(1 + $x, 15 + $y, 2, $c4),
		line(4 + $x, 15 + $y, 2, $c4),
		line(7 + $x, 15 + $y, 2, $c4),
		line(10 + $x, 15 + $y, 2, $c4),
		line(13 + $x, 15 + $y, 2, $c4),
		line(18 + $x, 15 + $y, 2, $c4),
		
		cs(3 + $x, 14 + $y,  $c4),
		cs(9 + $x, 14 + $y,  $c4),
		cs(15 + $x, 14 + $y,  $c4),
		cs(16 + $x, 15 + $y,  $c4),
		cs(18 + $x, 16 + $y,  $c4),
		cs(13 + $x, 16 + $y,  $c4),
		cs(11 + $x, 16 + $y,  $c4),
		cs(7 + $x, 16 + $y,  $c4),
		cs(5 + $x, 16 + $y,  $c4),
		
		cs(0 + $x, 18 + $y,  $c2),
		cs(0 + $x, 20 + $y,  $c2),
		
		line(1 + $x, 18 + $y, 3, $c6),
		line(8 + $x, 18 + $y, 3, $c6),
		
		line(1 + $x, 20 + $y, 3, $c6),
		line(7 + $x, 20 + $y, 3, $c6),
		
		line(14 + $x, 19 + $y, 3, $c6),
		
		cs(18 + $x, 20 + $y,  $c6),
		cs(19 + $x, 19 + $y,  $c6),
		
		;
	@return $result;
}

@function art(
	$x,
	$y
) {
	$result: 
		bucket(24+ $x, 30+ $y, #34e), 
			head(53+ $x, 2+ $y), 
			arm(32+ $x, 33+ $y), 
			body(45+ $x, 36+ $y),
			horse(22+ $x, 29+ $y), 
			horseBody(0+ $x, 28+ $y)
	;
	@return $result;
}
div {
	box-shadow: var(--shadow-elevation-medium);
	overflow: hidden;
	margin: auto;
	font-size: calc(100vw / 40);
	// font-size: 4rem;
	width: 55ch;
	height: 37ch;
	line-height: 1ch;
	font-family: "Mulish", serif;

	// https://css-pattern.com/
	--s: 0.565ch; /* size of the lines */
	--g: 0.217ch; /* gap between lines */

	--c1: #999;
	--c2: #aaa;

	background: conic-gradient(
				at var(--s) calc(100% - var(--s)),
				#0000 270deg,
				var(--c1) 0
			)
			calc(var(--s) + var(--g)) 0,
		linear-gradient(var(--c2) var(--s), #0000 0) 0 var(--g),
		conic-gradient(
			at var(--s) calc(100% - var(--s)),
			#0000 90deg,
			var(--c2) 0 180deg,
			var(--c1) 0
		),
		#2220;
	background-size: calc(2 * (var(--s) + var(--g)))
		calc(2 * (var(--s) + var(--g)));

	&:before {
		content: "×";
		position: relative;
		z-index: 1;
		color: #0000;
		display: block;
		line-height: inherit;
		font-weight: 1000;
		top: calc(0ch - (var(--g) / 3 + 0.05ch));
		left: calc(var(--s) - var(--g) / 2 + 0.1ch);
		--sh: calc(1ch - (var(--g)));

		filter: drop-shadow(1px 1px 3px #111);
		text-shadow: 
			art(0,-2),
	}
}

body:has(#fit:not(:checked)) div {
	 font-size: 4rem;
}

body {
	min-height: 100vh;
	background-color: #444;
	color: white;
	display: grid;
	padding: 0;
	margin: 0;
	font-family: monospace;
}

* {
	box-sizing: border-box;
}

.tool-bar {
	position: fixed;
	display: grid;
	max-width: 162px;
	width: 100%;
	padding: 1rem;
	left: 1ch;
	background-color: rgba(#161a20, .64);
	border-radius: 0 0 1ch 1ch;
	z-index: 3;
	box-shadow: var(--shadow-elevation-high);
	grid-template-columns: 1fr auto;

}

:root {
	--shadow-color: 0deg 0% 9%;
	--shadow-elevation-low: 0.3px 0.5px 0.7px hsl(var(--shadow-color) / 0.34),
		0.4px 0.8px 1px -1.2px hsl(var(--shadow-color) / 0.34),
		1px 2px 2.5px -2.5px hsl(var(--shadow-color) / 0.34);
	--shadow-elevation-medium: 0.3px 0.5px 0.7px hsl(var(--shadow-color) / 0.36),
		0.8px 1.6px 2px -0.8px hsl(var(--shadow-color) / 0.36),
		2.1px 4.1px 5.2px -1.7px hsl(var(--shadow-color) / 0.36),
		5px 10px 12.6px -2.5px hsl(var(--shadow-color) / 0.36);
	--shadow-elevation-high: 0.3px 0.5px 0.7px hsl(var(--shadow-color) / 0.34),
		1.5px 2.9px 3.7px -0.4px hsl(var(--shadow-color) / 0.34),
		2.7px 5.4px 6.8px -0.7px hsl(var(--shadow-color) / 0.34),
		4.5px 8.9px 11.2px -1.1px hsl(var(--shadow-color) / 0.34),
		7.1px 14.3px 18px -1.4px hsl(var(--shadow-color) / 0.34),
		11.2px 22.3px 28.1px -1.8px hsl(var(--shadow-color) / 0.34),
		17px 33.9px 42.7px -2.1px hsl(var(--shadow-color) / 0.34),
		25px 50px 62.9px -2.5px hsl(var(--shadow-color) / 0.34);
}
              
            
!

JS

              
                
              
            
!
999px

Console