aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/css/dumbymap.css83
1 files changed, 57 insertions, 26 deletions
diff --git a/src/css/dumbymap.css b/src/css/dumbymap.css
index 996cce6..fe948e8 100644
--- a/src/css/dumbymap.css
+++ b/src/css/dumbymap.css
@@ -1,3 +1,7 @@
1.Dumby {
2 --block-focus-color: lightyellow;
3}
4
1[class^="leader-line"] { 5[class^="leader-line"] {
2 z-index: 9999; 6 z-index: 9999;
3} 7}
@@ -82,14 +86,22 @@
82} 86}
83 87
84.dumby-block { 88.dumby-block {
85 margin-left: -0.5em; 89 padding: 1rem 1rem 1rem 2rem;
86 padding-left: 0.5em;
87 90
88 border-left: #f0f0f0 0.5em solid; 91 position: relative;
89 margin-bottom: 3rem; 92
93 &::before {
94 content: "";
95 height: calc(100% - 2rem);
96
97 position: absolute;
98 left: 0.8rem;
99
100 border-left: 0.5em solid #e0e0e0;
101 }
90 102
91 &.focus { 103 &.focus {
92 background: lightyellow; 104 background: var(--block-focus-color);
93 } 105 }
94} 106}
95 107
@@ -101,11 +113,14 @@
101 113
102 position: relative; 114 position: relative;
103 overflow-x: auto; 115 overflow-x: auto;
116 padding-block: 1em;
104 117
105 .SemanticHtml { 118 .SemanticHtml {
119 display: flex;
120 flex-direction: column;
106 height: 100%; 121 height: 100%;
107 padding: 1.5rem;
108 overflow-y: auto; 122 overflow-y: auto;
123 gap: 1rem;
109 124
110 pre { 125 pre {
111 width: 100%; 126 width: 100%;
@@ -213,8 +228,8 @@
213 background-color: #3887be; 228 background-color: #3887be;
214 background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiICAgd2lkdGg9IjYwIiAgIGhlaWdodD0iNjAiICAgdmVyc2lvbj0iMS4xIiAgIHZpZXdCb3g9IjAgMCA2MCA2MCIgICBpZD0ic3ZnNTQzNCIgICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkxK2RldmVsK29zeG1lbnUgcjEyOTExIiAgIHNvZGlwb2RpOmRvY25hbWU9Imwtci5zdmciPiAgPG1ldGFkYXRhICAgICBpZD0ibWV0YWRhdGE1NDQ0Ij4gICAgPHJkZjpSREY+ICAgICAgPGNjOldvcmsgICAgICAgICByZGY6YWJvdXQ9IiI+ICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4gICAgICAgIDxkYzp0eXBlICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+ICAgICAgPC9jYzpXb3JrPiAgICA8L3JkZjpSREY+ICA8L21ldGFkYXRhPiAgPGRlZnMgICAgIGlkPSJkZWZzNTQ0MiIgLz4gIDxzb2RpcG9kaTpuYW1lZHZpZXcgICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIgICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IiAgICAgYm9yZGVyb3BhY2l0eT0iMSIgICAgIG9iamVjdHRvbGVyYW5jZT0iMTAiICAgICBncmlkdG9sZXJhbmNlPSIxMCIgICAgIGd1aWRldG9sZXJhbmNlPSIxMCIgICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwIiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIgICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTI4NiIgICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9Ijc1MSIgICAgIGlkPSJuYW1lZHZpZXc1NDQwIiAgICAgc2hvd2dyaWQ9InRydWUiICAgICBpbmtzY2FwZTp6b29tPSI0IiAgICAgaW5rc2NhcGU6Y3g9IjI1Ljg4OTgzMSIgICAgIGlua3NjYXBlOmN5PSIzNC4zODE4MzMiICAgICBpbmtzY2FwZTp3aW5kb3cteD0iMCIgICAgIGlua3NjYXBlOndpbmRvdy15PSIyMyIgICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjAiICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJzdmc1NDM0IiAgICAgaW5rc2NhcGU6b2JqZWN0LW5vZGVzPSJ0cnVlIiAgICAgaW5rc2NhcGU6c25hcC1zbW9vdGgtbm9kZXM9InRydWUiPiAgICA8aW5rc2NhcGU6Z3JpZCAgICAgICB0eXBlPSJ4eWdyaWQiICAgICAgIGlkPSJncmlkNTk4OSIgLz4gIDwvc29kaXBvZGk6bmFtZWR2aWV3PiAgPHBhdGggICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjFweDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2Utb3BhY2l0eToxIiAgICAgZD0iTSAyNSAyNCBMIDE2IDMwIEwgMjUgMzYgTCAyNSAyNCB6IE0gMzUgMjQgTCAzNSAzNiBMIDQ0IDMwIEwgMzUgMjQgeiAiICAgICBpZD0icGF0aDU5OTUiIC8+PC9zdmc+"); 229 background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiICAgd2lkdGg9IjYwIiAgIGhlaWdodD0iNjAiICAgdmVyc2lvbj0iMS4xIiAgIHZpZXdCb3g9IjAgMCA2MCA2MCIgICBpZD0ic3ZnNTQzNCIgICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkxK2RldmVsK29zeG1lbnUgcjEyOTExIiAgIHNvZGlwb2RpOmRvY25hbWU9Imwtci5zdmciPiAgPG1ldGFkYXRhICAgICBpZD0ibWV0YWRhdGE1NDQ0Ij4gICAgPHJkZjpSREY+ICAgICAgPGNjOldvcmsgICAgICAgICByZGY6YWJvdXQ9IiI+ICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4gICAgICAgIDxkYzp0eXBlICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+ICAgICAgPC9jYzpXb3JrPiAgICA8L3JkZjpSREY+ICA8L21ldGFkYXRhPiAgPGRlZnMgICAgIGlkPSJkZWZzNTQ0MiIgLz4gIDxzb2RpcG9kaTpuYW1lZHZpZXcgICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIgICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IiAgICAgYm9yZGVyb3BhY2l0eT0iMSIgICAgIG9iamVjdHRvbGVyYW5jZT0iMTAiICAgICBncmlkdG9sZXJhbmNlPSIxMCIgICAgIGd1aWRldG9sZXJhbmNlPSIxMCIgICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwIiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIgICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTI4NiIgICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9Ijc1MSIgICAgIGlkPSJuYW1lZHZpZXc1NDQwIiAgICAgc2hvd2dyaWQ9InRydWUiICAgICBpbmtzY2FwZTp6b29tPSI0IiAgICAgaW5rc2NhcGU6Y3g9IjI1Ljg4OTgzMSIgICAgIGlua3NjYXBlOmN5PSIzNC4zODE4MzMiICAgICBpbmtzY2FwZTp3aW5kb3cteD0iMCIgICAgIGlua3NjYXBlOndpbmRvdy15PSIyMyIgICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjAiICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJzdmc1NDM0IiAgICAgaW5rc2NhcGU6b2JqZWN0LW5vZGVzPSJ0cnVlIiAgICAgaW5rc2NhcGU6c25hcC1zbW9vdGgtbm9kZXM9InRydWUiPiAgICA8aW5rc2NhcGU6Z3JpZCAgICAgICB0eXBlPSJ4eWdyaWQiICAgICAgIGlkPSJncmlkNTk4OSIgLz4gIDwvc29kaXBvZGk6bmFtZWR2aWV3PiAgPHBhdGggICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1ydWxlOmV2ZW5vZGQ7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjFweDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2Utb3BhY2l0eToxIiAgICAgZD0iTSAyNSAyNCBMIDE2IDMwIEwgMjUgMzYgTCAyNSAyNCB6IE0gMzUgMjQgTCAzNSAzNiBMIDQ0IDMwIEwgMzUgMjQgeiAiICAgICBpZD0icGF0aDU5OTUiIC8+PC9zdmc+");
215 230
216 transform: scale(0.5, 0.5);
217 transition: transform 0.3s ease-in-out; 231 transition: transform 0.3s ease-in-out;
232 transform: scale(0.5, 0.5);
218 cursor: grab; 233 cursor: grab;
219 box-shadow: inset 0 0 0 2px white; 234 box-shadow: inset 0 0 0 2px white;
220 235
@@ -268,8 +283,8 @@
268 283
269 284
270 &:hover { 285 &:hover {
271 opacity: 1;
272 visibility: visible; 286 visibility: visible;
287 opacity: 1;
273 } 288 }
274 289
275 [id] { 290 [id] {
@@ -305,11 +320,20 @@
305 border: solid gray 3px; 320 border: solid gray 3px;
306 border-radius: 0.5rem; 321 border-radius: 0.5rem;
307 322
308 background-color: white; 323 background: white;
309 324
310 font-size: 0.8rem; 325 font-size: 0.8rem;
311 pointer-events: auto; 326 pointer-events: auto;
312 327
328 p:first-child {
329 margin-top: 0;
330 }
331
332 &:has(.dumby-block.focus) {
333 outline: solid #505050 1px;
334 border-color: #505050
335 }
336
313 &:has(pre:only-child [data-placeholder]:only-child) { 337 &:has(pre:only-child [data-placeholder]:only-child) {
314 display: none; 338 display: none;
315 } 339 }
@@ -327,7 +351,8 @@
327 max-width: 25vw; 351 max-width: 25vw;
328 min-height: 5rem; 352 min-height: 5rem;
329 max-height: 50vh; 353 max-height: 50vh;
330 padding-inline: 1em; 354 padding-inline: 1rem;
355 padding-block: 0;
331 356
332 /* allow random width/height after resize */ 357 /* allow random width/height after resize */
333 &[style*="height"], 358 &[style*="height"],
@@ -339,15 +364,21 @@
339 /* gray out top of content, make draggable part easy to be seen */ 364 /* gray out top of content, make draggable part easy to be seen */
340 365
341 &::before { 366 &::before {
367 content: '';
342 display: block; 368 display: block;
343 width: 100%; 369 width: 120%;
344 height: 1.5rem; 370 height: 1.5rem;
345 371
346 position: sticky; 372 position: sticky;
347 top: 0; 373 top: 0;
348 374
375 border: none;
376
349 background: linear-gradient(0deg, rgb(255 255 255 / 0%), white 60%); 377 background: linear-gradient(0deg, rgb(255 255 255 / 0%), white 60%);
350 content: ''; 378 }
379
380 &.focus::before {
381 background: linear-gradient(0deg, rgb(255 255 255 / 0%), var(--block-focus-color) 60%);
351 } 382 }
352 383
353 .map-container { 384 .map-container {
@@ -370,18 +401,20 @@
370 } 401 }
371 402
372 .handle { 403 .handle {
373 font-size: 1.1rem; 404 font-size: 1.1rem;
374 text-align: center; 405 text-align: center;
375 background: white;
376 406
377 transform: translate(0, -0.6rem); 407 transition: all 0.3s ease-in-out;
378 transition: all 0.3s ease-in-out; 408
379 } 409 /* background: white; */
410
411 transform: translate(0, -0.6rem);
412 }
380 413
381 &.hide { 414 &.hide {
382 opacity: 0;
383 transition: all 0.5s; 415 transition: all 0.5s;
384 visibility: hidden; 416 visibility: hidden;
417 opacity: 0;
385 } 418 }
386 419
387 &.drag, &:has(.draggable-part:hover) { 420 &.drag, &:has(.draggable-part:hover) {
@@ -391,18 +424,16 @@
391 transform: unset; 424 transform: unset;
392 } 425 }
393 426
394 .dumby-block {
395 color: gray;
396
397 opacity: 0.7;
398 }
399
400
401 .utils { 427 .utils {
402 visibility: visible; 428 visibility: visible;
403 animation: fade-in .5s; 429 animation: fade-in .5s;
404 } 430 }
405 431
432 > *:not(.draggable-part, .utils) {
433 color: gray;
434
435 opacity: 0.7;
436 }
406 } 437 }
407} 438}
408 439