ds-one 0.2.5-alpha.8 → 0.3.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/DS1/0-face/device.ts +138 -0
  2. package/DS1/0-face/i18n.ts +36 -89
  3. package/DS1/0-face/scaling.ts +152 -0
  4. package/DS1/1-root/fonts/Iosevka-Regular.woff2 +0 -0
  5. package/DS1/1-root/one.css +124 -77
  6. package/DS1/2-core/ds-banner.ts +120 -1
  7. package/DS1/2-core/ds-button.ts +16 -96
  8. package/DS1/2-core/ds-card.ts +137 -0
  9. package/DS1/2-core/ds-cycle.ts +82 -184
  10. package/DS1/2-core/ds-date.ts +3 -10
  11. package/DS1/2-core/ds-gap.ts +38 -0
  12. package/DS1/2-core/ds-icon.ts +6 -35
  13. package/DS1/2-core/ds-input.ts +306 -1
  14. package/DS1/2-core/ds-pagedots.ts +52 -0
  15. package/DS1/2-core/ds-text.ts +55 -28
  16. package/DS1/2-core/ds-tooltip.ts +14 -66
  17. package/DS1/2-core/styles/ds-banner.css +77 -0
  18. package/DS1/2-core/styles/ds-button.css +67 -0
  19. package/DS1/2-core/styles/ds-cycle.css +21 -0
  20. package/DS1/2-core/styles/ds-date.css +9 -0
  21. package/DS1/2-core/styles/ds-gap.css +93 -0
  22. package/DS1/2-core/styles/ds-icon.css +30 -0
  23. package/DS1/2-core/styles/ds-input.css +46 -0
  24. package/DS1/2-core/styles/ds-pagedots.css +31 -0
  25. package/DS1/2-core/styles/ds-text.css +29 -0
  26. package/DS1/2-core/styles/ds-tooltip.css +49 -0
  27. package/DS1/3-unit/ds-accordion.ts +95 -0
  28. package/DS1/3-unit/ds-form.ts +304 -0
  29. package/DS1/3-unit/ds-list.ts +5 -14
  30. package/DS1/3-unit/ds-row.ts +3 -19
  31. package/DS1/3-unit/ds-table.ts +3 -86
  32. package/DS1/3-unit/styles/ds-accordion.css +46 -0
  33. package/DS1/3-unit/styles/ds-list.css +9 -0
  34. package/DS1/3-unit/styles/ds-row.css +19 -0
  35. package/DS1/3-unit/styles/ds-table.css +80 -0
  36. package/DS1/4-page/ds-container.ts +28 -0
  37. package/DS1/4-page/ds-grid.ts +37 -50
  38. package/DS1/4-page/ds-layout.ts +652 -163
  39. package/DS1/4-page/styles/ds-container.css +35 -0
  40. package/DS1/4-page/styles/ds-grid.css +56 -0
  41. package/DS1/4-page/styles/ds-layout.css +246 -0
  42. package/DS1/index.ts +9 -1
  43. package/DS1/vite-env.d.ts +13 -0
  44. package/DS1/x-icon/2x.svg +4 -0
  45. package/DS1/x-icon/2xdots.svg +18 -0
  46. package/DS1/x-icon/2xgrid.svg +6 -0
  47. package/DS1/x-icon/2xlines.svg +6 -0
  48. package/DS1/x-icon/4x4.svg +18 -0
  49. package/DS1/x-icon/apple.svg +4 -0
  50. package/DS1/x-icon/avatar.svg +4 -0
  51. package/DS1/x-icon/big.svg +4 -0
  52. package/DS1/x-icon/blank.svg +3 -0
  53. package/DS1/x-icon/check.svg +3 -0
  54. package/DS1/x-icon/close.svg +3 -0
  55. package/DS1/x-icon/collapse.svg +3 -0
  56. package/DS1/x-icon/color.svg +4 -0
  57. package/DS1/x-icon/column.svg +5 -0
  58. package/DS1/x-icon/default.svg +3 -0
  59. package/DS1/x-icon/delete.svg +5 -0
  60. package/DS1/x-icon/dictate.svg +6 -0
  61. package/DS1/x-icon/do.svg +3 -0
  62. package/DS1/x-icon/down.svg +3 -0
  63. package/DS1/x-icon/duplicate.svg +4 -0
  64. package/DS1/x-icon/gallery.svg +5 -0
  65. package/DS1/x-icon/google.svg +6 -0
  66. package/DS1/x-icon/head.svg +5 -0
  67. package/DS1/x-icon/home.svg +3 -0
  68. package/DS1/x-icon/icon.svg +4 -0
  69. package/DS1/x-icon/in.svg +4 -0
  70. package/DS1/x-icon/lock.svg +5 -0
  71. package/DS1/x-icon/loop.svg +5 -0
  72. package/DS1/x-icon/mic.svg +5 -0
  73. package/DS1/x-icon/minimize.svg +3 -0
  74. package/DS1/x-icon/more.svg +5 -0
  75. package/DS1/x-icon/neutral.svg +6 -0
  76. package/DS1/x-icon/note.svg +6 -0
  77. package/DS1/x-icon/page.svg +4 -0
  78. package/DS1/x-icon/plus.svg +3 -0
  79. package/DS1/x-icon/rewind.svg +4 -0
  80. package/DS1/x-icon/row.svg +5 -0
  81. package/DS1/x-icon/sdown.svg +3 -0
  82. package/DS1/x-icon/search.svg +4 -0
  83. package/DS1/x-icon/see.svg +4 -0
  84. package/DS1/x-icon/ship.svg +5 -0
  85. package/DS1/x-icon/star.svg +3 -0
  86. package/DS1/x-icon/status.svg +4 -0
  87. package/DS1/x-icon/sup.svg +3 -0
  88. package/DS1/x-icon/title.svg +3 -0
  89. package/DS1/x-icon/undo.svg +3 -0
  90. package/DS1/x-icon/ungroup.svg +4 -0
  91. package/DS1/x-icon/unhead.svg +3 -0
  92. package/DS1/x-icon/unicon.svg +3 -0
  93. package/DS1/x-icon/unlock.svg +5 -0
  94. package/DS1/x-icon/unmic.svg +6 -0
  95. package/DS1/x-icon/unsee.svg +5 -0
  96. package/DS1/x-icon/unstar.svg +3 -0
  97. package/DS1/x-icon/untitle.svg +3 -0
  98. package/DS1/x-icon/up.svg +3 -0
  99. package/LICENSE +1 -1
  100. package/README.md +4 -4
  101. package/dist/0-face/device.d.ts +5 -0
  102. package/dist/0-face/device.d.ts.map +1 -1
  103. package/dist/0-face/device.js +111 -0
  104. package/dist/0-face/i18n.d.ts +0 -2
  105. package/dist/0-face/i18n.d.ts.map +1 -1
  106. package/dist/0-face/i18n.js +36 -73
  107. package/dist/0-face/scaling.d.ts +48 -0
  108. package/dist/0-face/scaling.d.ts.map +1 -0
  109. package/dist/0-face/scaling.js +114 -0
  110. package/dist/2-core/ds-banner.d.ts +67 -0
  111. package/dist/2-core/ds-banner.d.ts.map +1 -1
  112. package/dist/2-core/ds-banner.js +97 -1
  113. package/dist/2-core/ds-button.d.ts +4 -20
  114. package/dist/2-core/ds-button.d.ts.map +1 -1
  115. package/dist/2-core/ds-button.js +14 -88
  116. package/dist/2-core/ds-card.d.ts +39 -0
  117. package/dist/2-core/ds-card.d.ts.map +1 -0
  118. package/dist/2-core/ds-card.js +119 -0
  119. package/dist/2-core/ds-cycle.d.ts +1 -5
  120. package/dist/2-core/ds-cycle.d.ts.map +1 -1
  121. package/dist/2-core/ds-cycle.js +79 -166
  122. package/dist/2-core/ds-date.d.ts.map +1 -1
  123. package/dist/2-core/ds-date.js +3 -9
  124. package/dist/2-core/ds-gap.d.ts +28 -0
  125. package/dist/2-core/ds-gap.d.ts.map +1 -0
  126. package/dist/2-core/ds-gap.js +25 -0
  127. package/dist/2-core/ds-icon.d.ts.map +1 -1
  128. package/dist/2-core/ds-icon.js +6 -35
  129. package/dist/2-core/ds-input.d.ts +127 -0
  130. package/dist/2-core/ds-input.d.ts.map +1 -1
  131. package/dist/2-core/ds-input.js +252 -1
  132. package/dist/2-core/ds-pagedots.d.ts +32 -0
  133. package/dist/2-core/ds-pagedots.d.ts.map +1 -0
  134. package/dist/2-core/ds-pagedots.js +36 -0
  135. package/dist/2-core/ds-text.d.ts +5 -3
  136. package/dist/2-core/ds-text.d.ts.map +1 -1
  137. package/dist/2-core/ds-text.js +49 -27
  138. package/dist/2-core/ds-tooltip.d.ts +3 -3
  139. package/dist/2-core/ds-tooltip.d.ts.map +1 -1
  140. package/dist/2-core/ds-tooltip.js +13 -65
  141. package/dist/2-core/styles/ds-banner.css +77 -0
  142. package/dist/2-core/styles/ds-button.css +67 -0
  143. package/dist/2-core/styles/ds-cycle.css +21 -0
  144. package/dist/2-core/styles/ds-date.css +9 -0
  145. package/dist/2-core/styles/ds-gap.css +93 -0
  146. package/dist/2-core/styles/ds-icon.css +30 -0
  147. package/dist/2-core/styles/ds-input.css +46 -0
  148. package/dist/2-core/styles/ds-pagedots.css +26 -0
  149. package/dist/2-core/styles/ds-text.css +29 -0
  150. package/dist/2-core/styles/ds-tooltip.css +49 -0
  151. package/dist/3-unit/ds-accordion.d.ts +47 -0
  152. package/dist/3-unit/ds-accordion.d.ts.map +1 -0
  153. package/dist/3-unit/ds-accordion.js +75 -0
  154. package/dist/3-unit/ds-form.d.ts +70 -0
  155. package/dist/3-unit/ds-form.d.ts.map +1 -0
  156. package/dist/3-unit/ds-form.js +232 -0
  157. package/dist/3-unit/ds-list.d.ts.map +1 -1
  158. package/dist/3-unit/ds-list.js +5 -11
  159. package/dist/3-unit/ds-row.d.ts.map +1 -1
  160. package/dist/3-unit/ds-row.js +3 -19
  161. package/dist/3-unit/ds-table.d.ts.map +1 -1
  162. package/dist/3-unit/ds-table.js +3 -86
  163. package/dist/3-unit/styles/ds-accordion.css +46 -0
  164. package/dist/3-unit/styles/ds-list.css +9 -0
  165. package/dist/3-unit/styles/ds-row.css +19 -0
  166. package/dist/3-unit/styles/ds-table.css +80 -0
  167. package/dist/{3-unit/row-v1.d.ts → 4-page/ds-container.d.ts} +3 -11
  168. package/dist/4-page/ds-container.d.ts.map +1 -0
  169. package/dist/4-page/ds-container.js +11 -0
  170. package/dist/4-page/ds-grid.d.ts +5 -0
  171. package/dist/4-page/ds-grid.d.ts.map +1 -1
  172. package/dist/4-page/ds-grid.js +38 -56
  173. package/dist/4-page/ds-layout.d.ts +3 -3
  174. package/dist/4-page/ds-layout.d.ts.map +1 -1
  175. package/dist/4-page/ds-layout.js +651 -162
  176. package/dist/4-page/styles/ds-container.css +35 -0
  177. package/dist/4-page/styles/ds-grid.css +56 -0
  178. package/dist/4-page/styles/ds-layout.css +251 -0
  179. package/dist/ds-one.bundle.css +700 -0
  180. package/dist/ds-one.bundle.css.map +7 -0
  181. package/dist/ds-one.bundle.js +2728 -1597
  182. package/dist/ds-one.bundle.js.map +1 -7
  183. package/dist/ds-one.bundle.min.css +2 -0
  184. package/dist/ds-one.bundle.min.css.map +7 -0
  185. package/dist/ds-one.bundle.min.js +3850 -546
  186. package/dist/ds-one.bundle.min.js.map +1 -7
  187. package/dist/index.d.ts +9 -1
  188. package/dist/index.d.ts.map +1 -1
  189. package/dist/index.js +9 -1
  190. package/package.json +4 -3
  191. package/dist/3-unit/doublenav-v1.d.ts +0 -51
  192. package/dist/3-unit/doublenav-v1.d.ts.map +0 -1
  193. package/dist/3-unit/doublenav-v1.js +0 -88
  194. package/dist/3-unit/ds-portfolio-doublenav.d.ts +0 -51
  195. package/dist/3-unit/ds-portfolio-doublenav.d.ts.map +0 -1
  196. package/dist/3-unit/ds-portfolio-doublenav.js +0 -88
  197. package/dist/3-unit/ds-portfolio-panel.d.ts +0 -11
  198. package/dist/3-unit/ds-portfolio-panel.d.ts.map +0 -1
  199. package/dist/3-unit/ds-portfolio-panel.js +0 -16
  200. package/dist/3-unit/ds-portfolio-singlenav.d.ts +0 -32
  201. package/dist/3-unit/ds-portfolio-singlenav.d.ts.map +0 -1
  202. package/dist/3-unit/ds-portfolio-singlenav.js +0 -62
  203. package/dist/3-unit/list-v1.d.ts +0 -11
  204. package/dist/3-unit/list-v1.d.ts.map +0 -1
  205. package/dist/3-unit/list-v1.js +0 -15
  206. package/dist/3-unit/panel-v1.d.ts +0 -11
  207. package/dist/3-unit/panel-v1.d.ts.map +0 -1
  208. package/dist/3-unit/panel-v1.js +0 -16
  209. package/dist/3-unit/row-v1.d.ts.map +0 -1
  210. package/dist/3-unit/row-v1.js +0 -32
  211. package/dist/3-unit/singlenav-v1.d.ts +0 -32
  212. package/dist/3-unit/singlenav-v1.d.ts.map +0 -1
  213. package/dist/3-unit/singlenav-v1.js +0 -62
@@ -0,0 +1,35 @@
1
+ /* ds-container.css */
2
+ /* Container component styles with responsive width constraints */
3
+
4
+ :host {
5
+ display: flex;
6
+ width: 100%;
7
+ max-width: 100%;
8
+ flex-direction: column;
9
+ background-color: var(--background-color);
10
+ box-sizing: border-box;
11
+ }
12
+
13
+ /* Ensure children don't overflow */
14
+ :host ::slotted(*) {
15
+ max-width: 100%;
16
+ box-sizing: border-box;
17
+ }
18
+
19
+ /* Mobile: 100% width */
20
+ @media (max-width: 820px) {
21
+ :host {
22
+ width: 100%;
23
+ max-width: 100%;
24
+ }
25
+ }
26
+
27
+ /* Desktop: max-width 1000px, centered */
28
+ @media (min-width: 821px) {
29
+ :host {
30
+ max-width: 1000px;
31
+ margin-left: auto;
32
+ margin-right: auto;
33
+ width: 100%;
34
+ }
35
+ }
@@ -0,0 +1,56 @@
1
+ /* ds-grid.css */
2
+ /* Grid layout component styles */
3
+
4
+ :host {
5
+ margin-top: 0.5px !important;
6
+ margin-left: 0.5px !important;
7
+ display: grid;
8
+ width: 1440px;
9
+ height: 1280px;
10
+ grid-template-columns: repeat(auto-fill, 19px);
11
+ grid-template-rows: repeat(auto-fill, 19px);
12
+ gap: 1px;
13
+ row-rule: calc(1px * var(--sf)) solid var(--grid-color);
14
+ column-rule: calc(1px * var(--sf)) solid var(--grid-color);
15
+ outline: calc(1px * var(--sf)) solid light-dark(var(--sharp-blue), var(--yellow));
16
+ position: fixed;
17
+ top: 0;
18
+ left: 50%;
19
+ transform: translateX(-50%);
20
+ pointer-events: none;
21
+ z-index: 300;
22
+ }
23
+
24
+ /* DO NOT CHANGE THIS GRID CODE FOR MOBILE. ITS PERFECT FOR MOBILE. */
25
+ :host(.mobile) {
26
+ width: calc(100% - calc(1px * var(--sf)));
27
+ max-width: 100vw;
28
+ margin-left: 0.5px !important;
29
+ margin-top: 0 !important;
30
+ box-sizing: border-box;
31
+ position: fixed;
32
+ top: calc(0.5px * var(--sf));
33
+ left: 50%;
34
+ transform: translateX(-50%);
35
+ pointer-events: none;
36
+ z-index: 300;
37
+ gap: calc(1px * var(--sf));
38
+ grid-template-columns: repeat(14, calc(19px * var(--sf)));
39
+ grid-template-rows: repeat(auto-fill, calc(19px * var(--sf)));
40
+ }
41
+
42
+ :host([align="left"]) {
43
+ left: 0;
44
+ transform: none;
45
+ }
46
+
47
+ :host([align="center"]) {
48
+ left: 50%;
49
+ transform: translateX(-50%);
50
+ }
51
+
52
+ :host([align="right"]) {
53
+ left: auto;
54
+ right: 0;
55
+ transform: none;
56
+ }
@@ -0,0 +1,251 @@
1
+ /* ds-layout.css */
2
+ /* Layout component styles with view mode */
3
+
4
+ :host {
5
+ display: grid;
6
+ position: relative;
7
+ width: 100%;
8
+ }
9
+
10
+ slot {
11
+ display: contents;
12
+ }
13
+
14
+ /* Portfolio mode */
15
+ :host([mode="portfolio"]) {
16
+ --portfolio-cols: 120px 480px 40px;
17
+ --portfolio-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
18
+ --portfolio-areas: "square . ." ". title ." ". header ." ". projects ."
19
+ ". . ." ". bio ." ". . ." ". nav ." ". . ." ". footer ." ". . .";
20
+ --portfolio-overlay-cols: 120px 480px;
21
+ --portfolio-overlay-areas: "square ." ". title" ". header" ". projects"
22
+ ". ." ". bio" ". ." ". nav" ". ." ". footer" ". .";
23
+ grid-template-columns: var(--portfolio-cols);
24
+ grid-template-rows: var(--portfolio-rows);
25
+ grid-template-areas: var(--portfolio-areas);
26
+ min-height: 600px;
27
+ background-color: rgba(165, 165, 165, 0.03);
28
+ max-width: 640px;
29
+ margin: 0;
30
+ }
31
+
32
+ :host([mode="portfolio"]) .view-overlay {
33
+ grid-template-columns: var(--portfolio-overlay-cols);
34
+ grid-template-rows: var(--portfolio-rows);
35
+ grid-template-areas: var(--portfolio-overlay-areas);
36
+ }
37
+
38
+ /* Company mode */
39
+ :host([mode="company"]) {
40
+ --company-cols: auto 400px auto;
41
+ --company-rows: 80px 20px 20px 120px 20px 120px;
42
+ --company-areas: ". . ." ". header ." ". . ." ". content ." ". . ."
43
+ ". footer .";
44
+ grid-template-columns: var(--company-cols);
45
+ grid-template-rows: var(--company-rows);
46
+ grid-template-areas: var(--company-areas);
47
+ gap: 0;
48
+ max-width: 100%;
49
+ }
50
+
51
+ :host([mode="company"]) .view-overlay {
52
+ grid-template-columns: var(--company-cols);
53
+ grid-template-rows: var(--company-rows);
54
+ grid-template-areas: var(--company-areas);
55
+ gap: 0;
56
+ }
57
+
58
+ /* Alignment modifiers */
59
+ :host([align="left"]),
60
+ :host([mode="portfolio"][align="left"]),
61
+ :host([mode="company"][align="left"]),
62
+ :host([mode="app"][align="left"]) {
63
+ margin: 0;
64
+ justify-self: start;
65
+ }
66
+
67
+ :host([align="center"]),
68
+ :host([mode="portfolio"][align="center"]),
69
+ :host([mode="company"][align="center"]),
70
+ :host([mode="app"][align="center"]) {
71
+ margin: 0 auto;
72
+ justify-self: center;
73
+ }
74
+
75
+ :host([align="right"]),
76
+ :host([mode="portfolio"][align="right"]),
77
+ :host([mode="company"][align="right"]),
78
+ :host([mode="app"][align="right"]) {
79
+ margin: 0 0 0 auto;
80
+ justify-self: end;
81
+ }
82
+
83
+ /* App mode - Base */
84
+ :host([mode="app"]) {
85
+ --app-cols: 100%;
86
+ --app-rows: calc(var(--unit) * var(--sf)) calc(var(--unit) * var(--sf))
87
+ calc(var(--unit) * var(--sf)) calc(var(--double) * var(--sf))
88
+ calc(var(--dozen) * var(--sf)) calc(var(--unit) * var(--sf))
89
+ calc(var(--quad) * var(--sf)) calc(var(--double) * var(--sf));
90
+ --app-areas: "banner" "." "header" "." "main" "page-dots" "." "footer";
91
+ --app-overlay-cols: 100%;
92
+ --app-overlay-rows: calc(var(--unit) * var(--sf))
93
+ calc(var(--unit) * var(--sf)) calc(var(--unit) * var(--sf))
94
+ calc(var(--double) * var(--sf)) calc(var(--dozen) * var(--sf))
95
+ calc(var(--unit) * var(--sf)) calc(var(--quad) * var(--sf))
96
+ calc(var(--double) * var(--sf));
97
+ --app-overlay-areas: "banner" "." "header" "." "main" "page-dots" "."
98
+ "footer";
99
+ grid-template-columns: var(--app-cols);
100
+ grid-template-rows: var(--app-rows);
101
+ grid-template-areas: var(--app-areas);
102
+ min-height: 100vh;
103
+ background-color: transparent;
104
+ width: calc(240px * var(--sf, 1));
105
+ max-width: calc(240px * var(--sf, 1));
106
+ margin: 0 auto;
107
+ }
108
+
109
+ :host([mode="app"]) .view-overlay {
110
+ grid-template-columns: var(--app-overlay-cols);
111
+ grid-template-rows: var(--app-overlay-rows);
112
+ grid-template-areas: var(--app-overlay-areas);
113
+ }
114
+
115
+ /* View overlay */
116
+ .view-overlay {
117
+ position: absolute;
118
+ margin-left: -1px;
119
+ top: 0;
120
+ left: 0;
121
+ right: 0;
122
+ bottom: 0;
123
+ pointer-events: none;
124
+ z-index: 1000;
125
+ display: grid;
126
+ }
127
+
128
+ .view-area {
129
+ display: flex;
130
+ width: calc(240px * var(--sf, 1));
131
+ height: 100%;
132
+ align-items: center;
133
+ justify-content: center;
134
+ font-family: var(--typeface-regular);
135
+ font-size: calc(var(--type-size-default) * var(--05));
136
+ color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
137
+ background-color: color-mix(
138
+ in srgb,
139
+ var(--accent-color) 25%,
140
+ transparent
141
+ );
142
+ opacity: 1;
143
+ }
144
+
145
+ /* Portfolio mode view areas */
146
+ :host([mode="portfolio"]) .view-area:nth-of-type(1) {
147
+ background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
148
+ }
149
+
150
+ :host([mode="portfolio"]) .view-area:nth-of-type(2) {
151
+ border-color: var(--sharp-blue);
152
+ }
153
+
154
+ :host([mode="portfolio"]) .view-area:nth-of-type(3) {
155
+ border-color: var(--yellow);
156
+ }
157
+
158
+ :host([mode="portfolio"]) .view-area:nth-of-type(4) {
159
+ border-color: var(--apple-green);
160
+ }
161
+
162
+ :host([mode="portfolio"]) .view-area:nth-of-type(5) {
163
+ border-color: var(--pink);
164
+ }
165
+
166
+ :host([mode="portfolio"]) .view-area:nth-of-type(6) {
167
+ border-color: var(--orange);
168
+ }
169
+
170
+ :host([mode="portfolio"]) .view-area:nth-of-type(7) {
171
+ border-color: var(--zenith-blue);
172
+ }
173
+
174
+ /* Company mode view areas */
175
+ :host([mode="company"]) .view-area:nth-of-type(1) {
176
+ border-color: var(--tuned-red);
177
+ }
178
+
179
+ :host([mode="company"]) .view-area:nth-of-type(2) {
180
+ border-color: var(--sharp-blue);
181
+ }
182
+
183
+ :host([mode="company"]) .view-area:nth-of-type(3) {
184
+ border-color: var(--yellow);
185
+ }
186
+
187
+ /* App mode view areas */
188
+ :host([mode="app"]) .view-area:nth-of-type(1) {
189
+ background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
190
+ }
191
+
192
+ :host([mode="app"]) .view-area:nth-of-type(2) {
193
+ background-color: color-mix(in srgb, var(--sharp-blue) 25%, transparent);
194
+ }
195
+
196
+ :host([mode="app"]) .view-area:nth-of-type(3) {
197
+ background-color: color-mix(in srgb, var(--yellow) 25%, transparent);
198
+ }
199
+
200
+ :host([mode="app"]) .view-area:nth-of-type(4) {
201
+ background-color: color-mix(in srgb, var(--apple-green) 25%, transparent);
202
+ }
203
+
204
+ :host([mode="app"]) .view-area:nth-of-type(5) {
205
+ background-color: color-mix(in srgb, var(--pink) 25%, transparent);
206
+ }
207
+
208
+ /* Grid area assignments */
209
+ .view-square {
210
+ grid-area: square;
211
+ }
212
+
213
+ .view-title {
214
+ grid-area: title;
215
+ }
216
+
217
+ .view-header {
218
+ grid-area: header;
219
+ }
220
+
221
+ .view-projects {
222
+ grid-area: projects;
223
+ }
224
+
225
+ .view-bio {
226
+ grid-area: bio;
227
+ }
228
+
229
+ .view-nav {
230
+ grid-area: nav;
231
+ }
232
+
233
+ .view-footer {
234
+ grid-area: footer;
235
+ }
236
+
237
+ .view-content {
238
+ grid-area: content;
239
+ }
240
+
241
+ .view-banner {
242
+ grid-area: banner;
243
+ }
244
+
245
+ .view-main {
246
+ grid-area: main;
247
+ }
248
+
249
+ .view-page-dots {
250
+ grid-area: page-dots;
251
+ }