|
| 1 | +{{- $theme := .Get "theme" | default "light" -}} |
| 2 | +{{- $color := cond (eq $theme "dark") "255, 255, 255" "0, 0, 0" -}} |
| 3 | +{{- $gridOpacity := cond (eq $theme "dark") "0.03" "0.02" -}} |
| 4 | +{{- $circleOpacity1 := cond (eq $theme "dark") "0.1" "0.06" -}} |
| 5 | +{{- $circleOpacity2 := cond (eq $theme "dark") "0.06" "0.04" -}} |
| 6 | +{{- $bracketOpacity1 := cond (eq $theme "dark") "0.12" "0.08" -}} |
| 7 | +{{- $bracketOpacity2 := cond (eq $theme "dark") "0.08" "0.05" -}} |
| 8 | +{{- $targetOpacity1 := cond (eq $theme "dark") "0.08" "0.05" -}} |
| 9 | +{{- $targetOpacity2 := cond (eq $theme "dark") "0.06" "0.04" -}} |
| 10 | +{{- $rectOpacity1 := cond (eq $theme "dark") "0.08" "0.05" -}} |
| 11 | +{{- $rectOpacity2 := cond (eq $theme "dark") "0.05" "0.04" -}} |
| 12 | +{{- $measureOpacity := cond (eq $theme "dark") "0.08" "0.06" -}} |
| 13 | + |
| 14 | +<!-- Blueprint-style technical drawing background --> |
| 15 | +<div class="position-absolute top-0 start-0 w-100 h-100"> |
| 16 | + <!-- Grid pattern --> |
| 17 | + <div class="position-absolute top-0 start-0 w-100 h-100" style="background-image: linear-gradient(rgba({{ $color }}, {{ $gridOpacity }}) 1px, transparent 1px), linear-gradient(90deg, rgba({{ $color }}, {{ $gridOpacity }}) 1px, transparent 1px); background-size: 60px 60px;"></div> |
| 18 | + |
| 19 | + {{- if eq $theme "dark" -}} |
| 20 | + <!-- Large circle outline top-left (like a compass drawing) --> |
| 21 | + <div class="position-absolute rounded-circle" style="width: 400px; height: 400px; top: -150px; left: -100px; border: 1px solid rgba({{ $color }}, {{ $circleOpacity1 }});"></div> |
| 22 | + <div class="position-absolute rounded-circle" style="width: 420px; height: 420px; top: -160px; left: -110px; border: 1px solid rgba({{ $color }}, {{ $circleOpacity2 }});"></div> |
| 23 | + |
| 24 | + <!-- Corner bracket top-right --> |
| 25 | + <div class="position-absolute" style="top: 40px; right: 60px; width: 80px; height: 80px; border-top: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }}); border-right: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }});"></div> |
| 26 | + <div class="position-absolute" style="top: 50px; right: 70px; width: 60px; height: 60px; border-top: 1px solid rgba({{ $color }}, {{ $bracketOpacity2 }}); border-right: 1px solid rgba({{ $color }}, {{ $bracketOpacity2 }});"></div> |
| 27 | + |
| 28 | + <!-- Center crosshair/target circle --> |
| 29 | + <div class="position-absolute rounded-circle" style="width: 250px; height: 250px; top: 50%; left: 50%; transform: translate(-50%, -50%); border: 1px solid rgba({{ $color }}, {{ $targetOpacity1 }});"></div> |
| 30 | + <div class="position-absolute rounded-circle" style="width: 200px; height: 200px; top: 50%; left: 50%; transform: translate(-50%, -50%); border: 1px solid rgba({{ $color }}, {{ $targetOpacity2 }});"></div> |
| 31 | + <!-- Crosshair lines --> |
| 32 | + <div class="position-absolute" style="width: 1px; height: 60px; top: calc(50% - 125px); left: 50%; background: rgba({{ $color }}, {{ $targetOpacity1 }});"></div> |
| 33 | + <div class="position-absolute" style="width: 1px; height: 60px; top: calc(50% + 65px); left: 50%; background: rgba({{ $color }}, {{ $targetOpacity1 }});"></div> |
| 34 | + <div class="position-absolute" style="width: 60px; height: 1px; top: 50%; left: calc(50% - 125px); background: rgba({{ $color }}, {{ $targetOpacity1 }});"></div> |
| 35 | + <div class="position-absolute" style="width: 60px; height: 1px; top: 50%; left: calc(50% + 65px); background: rgba({{ $color }}, {{ $targetOpacity1 }});"></div> |
| 36 | + |
| 37 | + <!-- Corner bracket bottom-left --> |
| 38 | + <div class="position-absolute" style="bottom: 60px; left: 40px; width: 100px; height: 100px; border-bottom: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }}); border-left: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }});"></div> |
| 39 | + |
| 40 | + <!-- Rectangle outline bottom-right (like a detail callout) --> |
| 41 | + <div class="position-absolute" style="bottom: -50px; right: -30px; width: 300px; height: 200px; border: 1px solid rgba({{ $color }}, {{ $rectOpacity1 }}); transform: rotate(-15deg);"></div> |
| 42 | + <div class="position-absolute" style="bottom: -40px; right: -20px; width: 280px; height: 180px; border: 1px solid rgba({{ $color }}, {{ $rectOpacity2 }}); transform: rotate(-15deg);"></div> |
| 43 | + |
| 44 | + <!-- Small measurement-style lines top --> |
| 45 | + <div class="position-absolute" style="top: 20%; left: 15%; width: 150px; height: 1px; background: rgba({{ $color }}, {{ $measureOpacity }});"></div> |
| 46 | + <div class="position-absolute" style="top: 20%; left: 15%; width: 1px; height: 8px; background: rgba({{ $color }}, {{ $measureOpacity }});"></div> |
| 47 | + <div class="position-absolute" style="top: 20%; left: calc(15% + 150px); width: 1px; height: 8px; background: rgba({{ $color }}, {{ $measureOpacity }});"></div> |
| 48 | + {{- else -}} |
| 49 | + <!-- Large circle outline top-right (like a compass drawing) --> |
| 50 | + <div class="position-absolute rounded-circle" style="width: 350px; height: 350px; top: -100px; right: -80px; border: 1px solid rgba({{ $color }}, {{ $circleOpacity1 }});"></div> |
| 51 | + <div class="position-absolute rounded-circle" style="width: 370px; height: 370px; top: -110px; right: -90px; border: 1px solid rgba({{ $color }}, {{ $circleOpacity2 }});"></div> |
| 52 | + |
| 53 | + <!-- Corner bracket top-left --> |
| 54 | + <div class="position-absolute" style="top: 40px; left: 60px; width: 80px; height: 80px; border-top: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }}); border-left: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }});"></div> |
| 55 | + <div class="position-absolute" style="top: 50px; left: 70px; width: 60px; height: 60px; border-top: 1px solid rgba({{ $color }}, {{ $bracketOpacity2 }}); border-left: 1px solid rgba({{ $color }}, {{ $bracketOpacity2 }});"></div> |
| 56 | + |
| 57 | + <!-- Center target circles --> |
| 58 | + <div class="position-absolute rounded-circle" style="width: 200px; height: 200px; top: 35%; left: 15%; border: 1px solid rgba({{ $color }}, {{ $targetOpacity1 }});"></div> |
| 59 | + <div class="position-absolute rounded-circle" style="width: 160px; height: 160px; top: calc(35% + 20px); left: calc(15% + 20px); border: 1px solid rgba({{ $color }}, {{ $targetOpacity2 }});"></div> |
| 60 | + |
| 61 | + <!-- Corner bracket bottom-right --> |
| 62 | + <div class="position-absolute" style="bottom: 80px; right: 40px; width: 100px; height: 100px; border-bottom: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }}); border-right: 2px solid rgba({{ $color }}, {{ $bracketOpacity1 }});"></div> |
| 63 | + |
| 64 | + <!-- Rectangle outline bottom-left (like a detail callout) --> |
| 65 | + <div class="position-absolute" style="bottom: -40px; left: -20px; width: 280px; height: 180px; border: 1px solid rgba({{ $color }}, {{ $targetOpacity1 }}); transform: rotate(12deg);"></div> |
| 66 | + |
| 67 | + <!-- Small measurement-style lines --> |
| 68 | + <div class="position-absolute" style="top: 25%; right: 20%; width: 120px; height: 1px; background: rgba({{ $color }}, {{ $measureOpacity }});"></div> |
| 69 | + <div class="position-absolute" style="top: 25%; right: 20%; width: 1px; height: 8px; background: rgba({{ $color }}, {{ $measureOpacity }});"></div> |
| 70 | + <div class="position-absolute" style="top: 25%; right: calc(20% + 120px); width: 1px; height: 8px; background: rgba({{ $color }}, {{ $measureOpacity }});"></div> |
| 71 | + {{- end -}} |
| 72 | +</div> |
0 commit comments