_extra-child-theme.scss 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706
  1. /**
  2. * Extra Child Theme Styles
  3. */
  4. /**
  5. * Reset
  6. */
  7. // Reset Links
  8. a {
  9. text-decoration: none;
  10. .reply &,
  11. .widget-area &,
  12. .wp-block-cover &,
  13. .wp-block-cover-image &,
  14. .wp-block-media-text &,
  15. p:not(.site-title) & {
  16. text-decoration: underline;
  17. &.wp-block-button__link,
  18. &:hover {
  19. text-decoration: none;
  20. }
  21. }
  22. }
  23. // Reset Navigations
  24. .main-navigation > div > ul,
  25. .social-navigation > div > ul,
  26. .pagination .nav-links {
  27. justify-content: center;
  28. }
  29. /**
  30. * Header
  31. */
  32. #masthead {
  33. background: #{map-deep-get($config-global, "color", "foreground", "dark")};
  34. display: flex;
  35. justify-content: space-between;
  36. margin: 0;
  37. padding: #{0.25 * map-deep-get($config-global, "spacing", "vertical")} #{map-deep-get($config-global, "spacing", "horizontal")};
  38. position: relative;
  39. text-align: left;
  40. z-index: 9999;
  41. //@extend %responsive-alignfull;
  42. @include media(mobile) {
  43. align-items: flex-end;
  44. }
  45. @include media(tablet) {
  46. left: 0;
  47. max-width: 100%;
  48. position: absolute;
  49. right: 0;
  50. .wp-sticky-header & {
  51. position: fixed;
  52. }
  53. }
  54. }
  55. /**
  56. * Site Branding
  57. */
  58. .site-branding {
  59. margin: 0;
  60. margin-right: auto;
  61. padding-bottom: #{0.25 * map-deep-get($config-global, "spacing", "vertical")};
  62. padding-right: #{map-deep-get($config-global, "spacing", "horizontal")};
  63. padding-top: #{0.25 * map-deep-get($config-global, "spacing", "vertical")};
  64. text-align: inherit;
  65. @include media(mobile) {
  66. padding-bottom: 0;
  67. padding-top: 0;
  68. }
  69. }
  70. .site-title {
  71. display: inline;
  72. }
  73. .site-description {
  74. display: none;
  75. }
  76. @include media(tablet) {
  77. .site-description {
  78. display: inline;
  79. }
  80. .site-title:not(:empty) + .site-description:not(:empty):before {
  81. color: map-deep-get($config-global, "color", "foreground", "light");
  82. content: "\2022";
  83. font-family: Arial, Helvetica, sans-serif; // For browsers without CSS custom properties support.
  84. font-family: var( --font-headings, 'Arial, Helvetica, sans-serif' );
  85. margin: 0 .25em;
  86. }
  87. }
  88. /**
  89. * Header Menu
  90. */
  91. #site-navigation {
  92. margin: 0;
  93. text-align: right;
  94. > div {
  95. background: #{map-deep-get($config-global, "color", "foreground", "dark")};
  96. border-top: #{0.25 * map-deep-get($config-global, "spacing", "vertical")} solid #{map-deep-get($config-global, "color", "foreground", "dark")};
  97. box-shadow: inset 0 1px 0 0 #{map-deep-get($config-global, "color", "primary", "default")};
  98. left: 0;
  99. position: absolute;
  100. padding: 0 #{map-deep-get($config-global, "spacing", "horizontal")};
  101. right: 0;
  102. @include media(mobile) {
  103. background: transparent;
  104. border: 0;
  105. box-shadow: none;
  106. left: auto;
  107. margin-bottom: -2px;
  108. position: inherit;
  109. padding: 0;
  110. right: auto;
  111. }
  112. > ul {
  113. justify-content: flex-end;
  114. & > .menu-item-has-children > a::after {
  115. font-size: #{0.5 * map-deep-get($config-global, "font", "size", "base")};
  116. }
  117. .sub-menu .menu-item a {
  118. &::before {
  119. display: none;
  120. }
  121. &::after {
  122. counter-increment: nested-list;
  123. content: " –" counters(nested-list, " –", none);
  124. }
  125. }
  126. @include media(mobile) {
  127. > li {
  128. &:not(:first-child):before {
  129. color: map-deep-get($config-global, "color", "foreground", "light");
  130. content: "\2022";
  131. font-family: Arial, Helvetica, sans-serif; // For browsers without CSS custom properties support.
  132. font-family: var( --font-headings, Arial, Helvetica, sans-serif );
  133. line-height: 1;
  134. padding-bottom: #{0.5 * map-deep-get($config-global, "spacing", "unit")};
  135. padding-top: #{0.5 * map-deep-get($config-global, "spacing", "unit")};
  136. }
  137. > a {
  138. padding-bottom: #{0.5 * map-deep-get($config-global, "spacing", "unit")};
  139. padding-top: #{0.5 * map-deep-get($config-global, "spacing", "unit")};
  140. &:before,
  141. &:after {
  142. margin: 0;
  143. }
  144. }
  145. > .sub-menu {
  146. background: map-deep-get($config-global, "color", "foreground", "dark");
  147. box-shadow: none;
  148. left: auto;
  149. right: 0;
  150. text-align: right;
  151. }
  152. }
  153. }
  154. }
  155. }
  156. }
  157. // Toggle Menu
  158. #site-navigation #toggle:focus + #toggle-menu,
  159. #toggle-menu {
  160. text-decoration: none;
  161. }
  162. #site-navigation #toggle-menu {
  163. align-items: center;
  164. display: flex;
  165. padding: #{0.5 * map-deep-get($config-global, "spacing", "unit")} #{map-deep-get($config-global, "spacing", "unit")};
  166. &:after {
  167. content: "";
  168. background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z'/%3E%3C/svg%3E");
  169. display: block;
  170. height: 24px;
  171. margin: 0;
  172. margin-left: #{0.25 * map-deep-get($config-global, "spacing", "unit")};
  173. width: 24px;
  174. }
  175. @include media(mobile) {
  176. display: none;
  177. }
  178. }
  179. #site-navigation #toggle:checked + #toggle-menu {
  180. &:after {
  181. background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'%3E%3C/path%3E%3C/svg%3E");
  182. }
  183. }
  184. /**
  185. * Content Area
  186. */
  187. .site-main > * {
  188. margin-bottom: #{map-deep-get($config-global, "spacing", "vertical")};
  189. margin-top: #{map-deep-get($config-global, "spacing", "vertical")};
  190. @include media(mobile) {
  191. margin-bottom: #{2 * map-deep-get($config-global, "spacing", "vertical")};
  192. margin-top: #{2 * map-deep-get($config-global, "spacing", "vertical")};
  193. }
  194. }
  195. @include media(mobile) {
  196. #main {
  197. padding-top: #{2 * map-deep-get($config-global, "spacing", "vertical")};
  198. }
  199. }
  200. @include media(tablet) {
  201. #primary {
  202. margin-top: 44px; // JS Fallback
  203. }
  204. }
  205. /**
  206. * Post Navigation
  207. */
  208. .post-navigation {
  209. border-bottom: 1px solid #{map-deep-get($config-global, "color", "border", "default")};
  210. border-top: 2px solid #{map-deep-get($config-global, "color", "border", "default")};
  211. padding: #{0.5 * map-deep-get($config-global, "spacing", "vertical")} 0;
  212. .meta-nav {
  213. color: #{map-deep-get($config-global, "color", "foreground", "light")};
  214. @include font-family( map-deep-get($config-global, "font", "family", "ui") );
  215. font-weight: bold;
  216. text-transform: uppercase;
  217. }
  218. .post-title {
  219. font-size: inherit;
  220. }
  221. }
  222. /**
  223. * Hentry
  224. */
  225. // Entry Header
  226. .entry-header {
  227. .entry-meta {
  228. display: none;
  229. }
  230. }
  231. // Entry Title
  232. .entry-header,
  233. .page-title,
  234. .a8c-posts-list-item__title,
  235. .a8c-posts-list .a8c-posts-list-item__featured {
  236. text-align: center;
  237. }
  238. // Entry Footer
  239. .entry-footer {
  240. text-align: center;
  241. }
  242. // Sticky Post
  243. .sticky-post,
  244. .a8c-posts-list .a8c-posts-list-item__featured span {
  245. background: #{map-deep-get($config-global, "color", "secondary", "default")};
  246. color: #{map-deep-get($config-global, "color", "background", "default")};
  247. @include font-family( map-deep-get($config-global, "font", "family", "ui") );
  248. text-transform: uppercase;
  249. }
  250. // Remove margin if alignfull is first element
  251. .home.hide-homepage-title {
  252. .hentry .entry-content {
  253. & > *:first-child {
  254. &.alignfull {
  255. margin-top: -#{map-deep-get($config-global, "spacing", "unit")};
  256. @include media(mobile) {
  257. margin-top: -#{2 * map-deep-get($config-global, "spacing", "vertical")};
  258. }
  259. }
  260. }
  261. }
  262. }
  263. // Remove margin if alignfull is last element
  264. .page:not(.logged-in) {
  265. .hentry .entry-content {
  266. & > *:last-child {
  267. &.alignfull {
  268. margin-bottom: -#{map-deep-get($config-global, "spacing", "vertical")};
  269. @include media(mobile) {
  270. margin-bottom: -#{2 * map-deep-get($config-global, "spacing", "vertical")};
  271. }
  272. }
  273. }
  274. }
  275. }
  276. // Author Bio
  277. .author-bio {
  278. border: 2px solid #{map-deep-get($config-global, "color", "border", "default")};
  279. padding: #{map-deep-get($config-global, "spacing", "unit")};
  280. .author-title {
  281. font-size: inherit;
  282. }
  283. }
  284. /**
  285. * Blocks
  286. */
  287. // Cover & Hero block
  288. .wp-block-cover .wp-block-cover__inner-container,
  289. .wp-block-coblocks-hero .wp-block-coblocks-hero__box {
  290. & > * {
  291. margin-top: #{0.666 * map-deep-get($config-global, "spacing", "vertical")};
  292. margin-bottom: #{0.666 * map-deep-get($config-global, "spacing", "vertical")};
  293. @include media(mobile) {
  294. margin-top: map-deep-get($config-global, "spacing", "vertical");
  295. margin-bottom: map-deep-get($config-global, "spacing", "vertical");
  296. }
  297. &:first-child {
  298. margin-top: 0;
  299. }
  300. &:last-child {
  301. margin-bottom: 0;
  302. }
  303. }
  304. }
  305. // Pullquote
  306. .wp-block-pullquote {
  307. border-bottom-width: 1px;
  308. blockquote {
  309. padding: 0;
  310. }
  311. }
  312. // Table block
  313. table,
  314. .wp-block-table {
  315. td,
  316. th {
  317. border-color: #{map-deep-get($config-global, "color", "border", "default")};
  318. }
  319. }
  320. // Blog Posts Listing
  321. .a8c-posts-list {
  322. text-align: center;
  323. }
  324. .a8c-posts-list__item {
  325. margin-bottom: #{map-deep-get($config-global, "spacing", "vertical")};
  326. margin-top: #{map-deep-get($config-global, "spacing", "vertical")};
  327. @include media(mobile) {
  328. margin-bottom: #{2 * map-deep-get($config-global, "spacing", "vertical")};
  329. margin-top: #{2 * map-deep-get($config-global, "spacing", "vertical")};
  330. }
  331. .a8c-posts-list-item__meta {
  332. text-align: center;
  333. }
  334. }
  335. .a8c-posts-list__listing {
  336. text-align: left;
  337. &:not(:last-child) {
  338. margin-bottom: #{map-deep-get($config-global, "spacing", "vertical")};
  339. @include media(mobile) {
  340. margin-bottom: #{2 * map-deep-get($config-global, "spacing", "vertical")};
  341. }
  342. }
  343. }
  344. /**
  345. * Comments
  346. */
  347. .comments-title {
  348. text-align: center;
  349. }
  350. .comment-list {
  351. > li:first-child {
  352. border-top-width: 2px;
  353. }
  354. }
  355. .comment-body {
  356. content: "";
  357. display: table;
  358. table-layout: fixed;
  359. width: 100%;
  360. }
  361. .comment-meta .comment-metadata {
  362. @include font-family( map-deep-get($config-global, "font", "family", "ui") );
  363. font-size: #{map-deep-get($config-global, "font", "size", "sm")};
  364. font-weight: bold;
  365. text-transform: uppercase;
  366. }
  367. .reply {
  368. font-size: #{map-deep-get($config-global, "font", "size", "sm")};
  369. }
  370. .comment-reply-title {
  371. display: inherit;
  372. text-align: center;
  373. }
  374. .comment .comment-reply-title {
  375. display: flex;
  376. }
  377. .comment-respond {
  378. .form-submit {
  379. display: flex;
  380. justify-content: center;
  381. }
  382. }
  383. @include media(tablet) {
  384. .comment-meta {
  385. border-right: 1px solid #{map-deep-get($config-global, "color", "border", "default")};
  386. display: block;
  387. float: left;
  388. padding-right: #{map-deep-get($config-global, "spacing", "horizontal")};
  389. width: 20%;
  390. .comment-author {
  391. display: block;
  392. width: 100%;
  393. .avatar,
  394. .fn {
  395. display: block;
  396. margin-bottom: #{0.25 * map-deep-get($config-global, "spacing", "vertical")};
  397. }
  398. }
  399. }
  400. .comment-content, .reply {
  401. float: right;
  402. width: 75%;
  403. width: calc(80% - #{map-deep-get($config-global, "spacing", "horizontal")} - 1px);
  404. }
  405. }
  406. .comment-navigation a {
  407. font-size: inherit;
  408. font-weight: bold;
  409. }
  410. /**
  411. * Widgets
  412. */
  413. // Widget Area
  414. .widget-area {
  415. width: 100%;
  416. &:before {
  417. background: map-deep-get($config-global, "color", "border", "default");;
  418. height: 1px;
  419. content: "";
  420. display: block;
  421. margin-bottom: #{0.666 * map-deep-get($config-global, "spacing", "vertical")};
  422. @include media(mobile) {
  423. margin-bottom: #{2 * map-deep-get($config-global, "spacing", "vertical")};
  424. }
  425. @extend %responsive-alignfull;
  426. }
  427. .widget-title,
  428. .widgettitle {
  429. font-size: #{map-deep-get($config-global, "font", "size", "base")};
  430. @include font-family( map-deep-get($config-global, "font", "family", "ui") );
  431. margin-bottom: #{0.5 * map-deep-get($config-global, "spacing", "vertical")};
  432. &:empty {
  433. display: none;
  434. }
  435. }
  436. @include media(laptop) {
  437. display: flex;
  438. flex-wrap: wrap;
  439. justify-content: space-between;
  440. & > *:nth-child(2) {
  441. margin-top: 0;
  442. }
  443. .widget {
  444. width: calc(50% - #{map-deep-get($config-global, "spacing", "horizontal")});
  445. }
  446. }
  447. }
  448. // Widgets
  449. .widget_calendar,
  450. .widget_calendar {
  451. caption {
  452. font-weight: bold;
  453. }
  454. td,
  455. th {
  456. text-align: center;
  457. }
  458. }
  459. .widget_archive,
  460. .widget_categories,
  461. .widget_links,
  462. .widget_meta,
  463. .widget_nav_menu,
  464. .widget_pages,
  465. .widget_recent_comments,
  466. .widget_recent_entries,
  467. .widget_rss,
  468. .widget_rss_links,
  469. .widget_top-posts,
  470. .widget_authors,
  471. .widget_jp_blogs_i_follow,
  472. .widget_top-click,
  473. .widget_upcoming_events_widget {
  474. ul {
  475. border-bottom: 1px solid map-deep-get($config-global, "color", "border", "default");
  476. list-style: none;
  477. padding-left: 0;
  478. }
  479. li {
  480. border-top: 1px solid map-deep-get($config-global, "color", "border", "default");
  481. padding: #{0.25 * map-deep-get($config-global, "spacing", "vertical")} 0;
  482. }
  483. }
  484. .widget_categories .children,
  485. .widget_nav_menu .sub-menu,
  486. .widget_pages .children {
  487. border-bottom: 0;
  488. margin-bottom: #{-0.25 * map-deep-get($config-global, "spacing", "vertical")};
  489. margin-top: #{0.25 * map-deep-get($config-global, "spacing", "vertical")};
  490. padding-left: map-deep-get($config-global, "spacing", "horizontal");
  491. }
  492. .widget_recent_entries .post-date {
  493. display: block;
  494. }
  495. .widget_rss {
  496. cite,
  497. .rssSummary,
  498. .rss-date {
  499. display: block;
  500. }
  501. }
  502. .widget_search {
  503. input[type="search"] {
  504. display: block;
  505. margin-bottom: #{0.25 * map-deep-get($config-global, "spacing", "vertical")};
  506. width: 100%;
  507. }
  508. }
  509. /**
  510. * Social Menu
  511. */
  512. .social-navigation {
  513. background: #{map-deep-get($config-global, "color", "foreground", "dark")};
  514. padding: #{map-deep-get($config-global, "spacing", "vertical")} 0;
  515. width: calc(100% + #{map-deep-get($config-global, "spacing", "horizontal")});
  516. @extend %responsive-alignfull;
  517. .social-links-menu {
  518. margin: 0;
  519. padding: 0 #{map-deep-get($config-global, "spacing", "horizontal")};
  520. text-align: center;
  521. }
  522. }
  523. /**
  524. * Footer
  525. */
  526. .site-footer {
  527. align-items: unset;
  528. flex-direction: column;
  529. padding-left: 0;
  530. padding-right: 0;
  531. }
  532. .site-footer > * {
  533. padding-left: #{map-deep-get($config-global, "spacing", "horizontal")};
  534. padding-right: #{map-deep-get($config-global, "spacing", "horizontal")};
  535. }
  536. /**
  537. * Footer Menu
  538. */
  539. .footer-navigation {
  540. display: block;
  541. flex: 1 0 100%;
  542. order: 1;
  543. text-align: center;
  544. .footer-menu {
  545. justify-content: center;
  546. text-align: inherit;
  547. > li {
  548. &:not(:first-child):before {
  549. color: map-deep-get($config-global, "color", "border", "dark");
  550. content: "\2022";
  551. font-family: Arial, Helvetica, sans-serif; // For browsers without CSS custom properties support.
  552. font-family: var( --font-headings, 'Arial, Helvetica, sans-serif' );
  553. }
  554. }
  555. }
  556. @include media(mobile) {
  557. margin-bottom: #{0.25 * map-deep-get($config-global, "spacing", "vertical")};
  558. }
  559. }
  560. /**
  561. * Site Info
  562. */
  563. .site-info {
  564. font-weight: bold;
  565. text-align: center;
  566. a {
  567. font-weight: inherit;
  568. }
  569. }
  570. /**
  571. * Buttons
  572. */
  573. .button,
  574. .wp-block-button__link,
  575. .wp-block-file__button,
  576. .a8c-posts-list__view-all {
  577. position: relative;
  578. &:before {
  579. border: 2px solid;
  580. content: "";
  581. display: block;
  582. left: 3px;
  583. margin: 0;
  584. position: absolute;
  585. top: 3px;
  586. height: calc(100% - 6px);
  587. width: calc(100% - 6px);
  588. }
  589. }
  590. button,
  591. input[type="submit"] {
  592. outline: 2px solid;
  593. outline-offset: -5px;
  594. }
  595. .is-style-circular .wp-block-button__link {
  596. &:before {
  597. border-radius: 100px;
  598. }
  599. }