_config-child-theme-deep.scss 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405
  1. /**
  2. * Redefine Sass map values for child theme output.
  3. * - See: style-child-theme.scss
  4. */
  5. /**
  6. * Global
  7. */
  8. // Vertical Rhythm Multiplier
  9. $baseline-unit: 8px;
  10. $typescale-root: 16px; // Set 16px/1em default on html
  11. $typescale-base: 1.25rem; // Set 1em default on body == $typescale-root;
  12. $typescale-ratio: 1.2; // Run ratio math on 1em == $typescale-base * $typescale-root;
  13. $config-global: (
  14. /* Fonts */
  15. "font": (
  16. /* Font Family */
  17. "family": (
  18. "primary": (
  19. "fallback": "\"Lora\"\, Georgia\, sans-serif",
  20. "css-var": '--font-headings',
  21. ),
  22. "secondary": (
  23. "fallback": "\"Karla\"\, Arial\, sans-serif",
  24. "css-var": '--font-base',
  25. ),
  26. "code": "Monaco\, Consolas\, \"Andale Mono\"\, \"DejaVu Sans Mono\"\, monospace",
  27. "ui": (
  28. "fallback": "-apple-system\, BlinkMacSystemFont\, \"Segoe UI\"\, \"Roboto\"\, \"Oxygen\"\, \"Ubuntu\"\, \"Cantarell\"\, \"Fira Sans\"\, \"Droid Sans\"\, \"Helvetica Neue\"\, sans-serif",
  29. "css-var": '--font-base',
  30. ),
  31. ),
  32. /* Font Size */
  33. "size": (
  34. "root": $typescale-root,
  35. "ratio": $typescale-ratio,
  36. "xs": ($typescale-base / $typescale-ratio / $typescale-ratio),
  37. "sm": ($typescale-base / $typescale-ratio),
  38. "base": $typescale-base,
  39. "md": ($typescale-base * $typescale-ratio),
  40. "lg": ($typescale-base * $typescale-ratio * $typescale-ratio),
  41. "xl": ($typescale-base * $typescale-ratio * $typescale-ratio * $typescale-ratio),
  42. "xxl": ($typescale-base * $typescale-ratio * $typescale-ratio * $typescale-ratio * $typescale-ratio),
  43. "xxxl": ($typescale-base * $typescale-ratio * $typescale-ratio * $typescale-ratio * $typescale-ratio * $typescale-ratio),
  44. "xxxxl": ($typescale-base * $typescale-ratio * $typescale-ratio * $typescale-ratio * $typescale-ratio * $typescale-ratio * $typescale-ratio),
  45. ),
  46. /* Letter Spacing */
  47. "letter-spacing": (
  48. "base": normal,
  49. "xs": normal,
  50. "sm": normal,
  51. "md": normal,
  52. "lg": normal,
  53. "xl": normal,
  54. "xxl": normal,
  55. "xxxl": normal,
  56. ),
  57. /* Line Height */
  58. "line-height": (
  59. "base": strip-unit($typescale-base),
  60. "body": 1.6,
  61. "heading": 1.125,
  62. ),
  63. ),
  64. /* Colors */
  65. "color": (
  66. "primary": (
  67. "default": #3E7D98,
  68. "hover": #2f5f74,
  69. ),
  70. "secondary": (
  71. "default": #9B6A36,
  72. "hover": #755029,
  73. ),
  74. "foreground": (
  75. "default": #394d55,
  76. "light": #4d6974, // must be accessible against background (#fcfbf9,)
  77. "dark": #253136, // must be accessible against background
  78. ),
  79. "background": (
  80. "default": #ffffff,
  81. "light": #fafafa, // must be accessible against foreground-default
  82. "dark": #d9d9d9, // must be accessible against foreground-default
  83. ),
  84. "border": (
  85. "default": #3E7D98,
  86. "light": #fcfbf9,
  87. "dark": #9B6A36,
  88. ),
  89. "alert": (
  90. "success": yellowgreen,
  91. "info": skyblue,
  92. "warning": gold,
  93. "error": salmon,
  94. ),
  95. "text-selection": lightblue,
  96. "black": black,
  97. "white": white,
  98. ),
  99. /* Spacing */
  100. "spacing": (
  101. "unit": (2 * $baseline-unit), // 16px
  102. "measure": unset, // Use ch units here. ie: 60ch = 60 character max-width
  103. "horizontal": (2 * $baseline-unit), // 16px
  104. "vertical": (4 * $baseline-unit), // 32px matches default spacing in the editor.
  105. ),
  106. /* Breakpoints */
  107. "breakpoint": (
  108. "sm": 560px,
  109. "md": 640px,
  110. "lg": 782px,
  111. "xl": 1024px,
  112. "xxl": 1280px,
  113. ),
  114. /* Elevation */
  115. "elevation": (
  116. "none": 0px 0px 0px 0px rgba( 0, 0, 0, 0 ),
  117. "2dp": 0px 0px 4px 2px rgba( 0, 0, 0, 0.2 ),
  118. "4dp": 0px 0px 8px 2px rgba( 0, 0, 0, 0.2 ),
  119. "6dp": 2px 2px 4px 2px rgba( 0, 0, 0, 0.2 ),
  120. "8dp": 2px 2px 8px 0px rgba( 0, 0, 0, 0.2 ),
  121. "10dp": 4px 4px 8px 0px rgba( 0, 0, 0, 0.2 ),
  122. ),
  123. /* Border radius */
  124. "border-radius": (
  125. "sm": (0.5 * $typescale-root),
  126. "md": (0.75 * $typescale-root),
  127. "lg": $typescale-root,
  128. "pill": (10 * $typescale-root),
  129. ),
  130. );
  131. /**
  132. * Elements
  133. */
  134. $config-elements: (
  135. "form": (
  136. // Colors
  137. "color": (
  138. "text": map-deep-get($config-global, "color", "black"),
  139. "border": map-deep-get($config-global, "color", "border", "default"),
  140. "border-focus": map-deep-get($config-global, "color", "primary", "hover"),
  141. ),
  142. // Fonts
  143. "font": (
  144. "family": (
  145. "fallback": map-deep-get($config-global, "font", "family", "secondary", "fallback"),
  146. "css-var": map-deep-get($config-global, "font", "family", "secondary", "css-var"),
  147. ),
  148. "line-height": map-deep-get($config-global, "font", "line-height", "md"),
  149. "size": map-deep-get($config-global, "font", "size", "md"),
  150. "weight": bold,
  151. ),
  152. // Borders
  153. "border": (
  154. "width": 1px,
  155. "radius": 3px,
  156. ),
  157. "padding": #{map-deep-get($config-global, "spacing", "unit")},
  158. ),
  159. );
  160. /**
  161. * Button
  162. */
  163. $config-button: (
  164. // Colors
  165. "color": (
  166. "text": map-deep-get($config-global, "color", "background", "default"),
  167. "text-hover": map-deep-get($config-global, "color", "background", "default"),
  168. "background": map-deep-get($config-global, "color", "primary", "default"),
  169. "background-hover": map-deep-get($config-global, "color", "primary", "hover"),
  170. ),
  171. // Fonts
  172. "font": (
  173. "family": (
  174. "fallback": map-deep-get($config-global, "font", "family", "secondary", "fallback"),
  175. "css-var": map-deep-get($config-global, "font", "family", "secondary", "css-var"),
  176. ),
  177. "size": map-deep-get($config-global, "font", "size", "sm"),
  178. "weight": bold,
  179. "line-height": 1,
  180. ),
  181. // Borders
  182. "border-radius": map-deep-get($config-global, "border-radius", "pill"),
  183. "border-width": 2px,
  184. // Padding
  185. "padding": (
  186. "vertical": (2 * $baseline-unit),
  187. "horizontal": (6 * $baseline-unit),
  188. ),
  189. );
  190. /**
  191. * Cover
  192. */
  193. $config-cover: (
  194. "height": calc( 17 * #{map-deep-get($config-global, "spacing", "vertical")} ),
  195. "color": (
  196. "foreground": #{map-deep-get($config-global, "color", "white")},
  197. "background": #{map-deep-get($config-global, "color", "black")},
  198. )
  199. );
  200. /**
  201. * Heading
  202. */
  203. $config-heading: (
  204. // Fonts & Typography
  205. "font": (
  206. // Family
  207. "family": (
  208. "fallback": map-deep-get($config-global, "font", "family", "primary", "fallback"),
  209. "css-var": map-deep-get($config-global, "font", "family", "primary", "css-var"),
  210. ),
  211. // Size
  212. "size": (
  213. "h6": map-deep-get($config-global, "font", "size", "base"),
  214. "h5": map-deep-get($config-global, "font", "size", "md"),
  215. "h4": map-deep-get($config-global, "font", "size", "lg"),
  216. "h3": map-deep-get($config-global, "font", "size", "xl"),
  217. "h2": map-deep-get($config-global, "font", "size", "xxl"),
  218. "h1": map-deep-get($config-global, "font", "size", "xxxl"),
  219. ),
  220. // Letter spacing
  221. "line-height": (
  222. "h6": map-deep-get($config-global, "font", "line-height", "heading"),
  223. "h5": map-deep-get($config-global, "font", "line-height", "heading"),
  224. "h4": map-deep-get($config-global, "font", "line-height", "heading"),
  225. "h3": map-deep-get($config-global, "font", "line-height", "heading"),
  226. "h2": map-deep-get($config-global, "font", "line-height", "heading"),
  227. "h1": map-deep-get($config-global, "font", "line-height", "heading"),
  228. ),
  229. // Letter spacing
  230. "letter-spacing": (
  231. "h6": map-deep-get($config-global, "font", "letter-spacing", "sm"),
  232. "h5": map-deep-get($config-global, "font", "letter-spacing", "md"),
  233. "h4": map-deep-get($config-global, "font", "letter-spacing", "lg"),
  234. "h3": map-deep-get($config-global, "font", "letter-spacing", "xl"),
  235. "h2": map-deep-get($config-global, "font", "letter-spacing", "xxl"),
  236. "h1": map-deep-get($config-global, "font", "letter-spacing", "xxxl"),
  237. ),
  238. // Font Weight
  239. "weight": normal,
  240. ),
  241. );
  242. /**
  243. * List
  244. */
  245. $config-list: (
  246. // Fonts
  247. "font": (
  248. "family": (
  249. "fallback": map-deep-get($config-global, "font", "family", "secondary", "fallback"),
  250. "css-var": map-deep-get($config-global, "font", "family", "secondary", "css-var"),
  251. ),
  252. ),
  253. );
  254. /**
  255. * Pullquote
  256. */
  257. $config-pullquote: (
  258. // Font
  259. "font": (
  260. "family": (
  261. "fallback": #{map-deep-get($config-heading, "font", "family", "fallback")},
  262. "css-var": #{map-deep-get($config-heading, "font", "family", "css-var")},
  263. ),
  264. ),
  265. // Border
  266. "color": (
  267. "border": #{map-deep-get($config-global, "color", "border", "default")},
  268. "background": #{map-deep-get($config-global, "color", "primary", "default")},
  269. ),
  270. // Border
  271. "border": (
  272. "width": #{0.5 * $baseline-unit},
  273. ),
  274. );
  275. /**
  276. * Quote
  277. */
  278. $config-quote: (
  279. // Font
  280. "font": (
  281. "family": (
  282. "fallback": #{map-deep-get($config-heading, "font", "family", "fallback")},
  283. "css-var": #{map-deep-get($config-heading, "font", "family", "css-var")},
  284. ),
  285. ),
  286. );
  287. /**
  288. * Separator
  289. */
  290. $config-separator: (
  291. "height": #{0.25 * $baseline-unit},
  292. "width": #{6 * map-deep-get($config-global, "spacing", "horizontal")},
  293. );
  294. /**
  295. * Header
  296. */
  297. $config-header: (
  298. "branding": (
  299. // Colors
  300. "color": (
  301. "text": map-deep-get($config-global, "color", "foreground", "light"),
  302. "link": map-deep-get($config-global, "color", "foreground", "default"),
  303. "link-hover": map-deep-get($config-global, "color", "primary", "hover"),
  304. ),
  305. // Fonts & Typography
  306. "title": (
  307. // Fonts
  308. "font": (
  309. "family": (
  310. "fallback": map-deep-get($config-global, "font", "family", "primary", "fallback"),
  311. "css-var": map-deep-get($config-global, "font", "family", "primary", "css-var"),
  312. ),
  313. "size": map-deep-get($config-global, "font", "size", "lg"),
  314. "weight": bold,
  315. "line-height": 1,
  316. ),
  317. ),
  318. // Fonts & Typography
  319. "description": (
  320. // Fonts
  321. "font": (
  322. "family": (
  323. "fallback": map-deep-get($config-global, "font", "family", "secondary", "fallback"),
  324. "css-var": map-deep-get($config-global, "font", "family", "secondary", "css-var"),
  325. ),
  326. "size": map-deep-get($config-global, "font", "size", "sm"),
  327. ),
  328. ),
  329. ),
  330. "main-nav": (
  331. // Colors
  332. "color": (
  333. "text": map-deep-get($config-global, "color", "foreground", "default"),
  334. "link": map-deep-get($config-global, "color", "foreground", "default"),
  335. "link-hover": map-deep-get($config-global, "color", "primary", "hover"),
  336. ),
  337. // Fonts
  338. "font": (
  339. "family": (
  340. "fallback": map-deep-get($config-global, "font", "family", "secondary", "fallback"),
  341. "css-var": map-deep-get($config-global, "font", "family", "secondary", "css-var"),
  342. ),
  343. "size": map-deep-get($config-global, "font", "size", "sm"),
  344. "weight": bold,
  345. "line-height": 1,
  346. ),
  347. "link-padding": map-deep-get($config-global, "spacing", "unit"),
  348. ),
  349. "social-nav": (
  350. // Colors
  351. "color": (
  352. "link": map-deep-get($config-global, "color", "foreground", "default"),
  353. "link-hover": map-deep-get($config-global, "color", "primary", "hover"),
  354. ),
  355. "link-padding": calc( 0.5 * calc(0.66 * #{map-deep-get($config-global, "spacing", "unit")} ) ),
  356. ),
  357. );
  358. /**
  359. * Footer
  360. */
  361. $config-footer: (
  362. // Colors
  363. "color": (
  364. "text": map-deep-get($config-global, "color", "foreground", "light"),
  365. "link": map-deep-get($config-global, "color", "primary", "default"),
  366. "link-hover": map-deep-get($config-global, "color", "primary", "hover"),
  367. ),
  368. // Fonts
  369. "font": (
  370. "family": (
  371. "fallback": map-deep-get($config-global, "font", "family", "primary", "fallback"),
  372. "css-var": map-deep-get($config-global, "font", "family", "primary", "css-var"),
  373. ),
  374. "size": map-deep-get($config-global, "font", "size", "sm"),
  375. "line-height": map-deep-get($config-global, "font", "line-height", "sm"),
  376. ),
  377. );