Mobile-responsive personal website, generated using Hugo. https://kevin-mok.com/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

628 lines
12 KiB

  1. /* Base16 Eighties Colorscheme by Chris Kempson (http://chriskempson.com) */
  2. // base colors {{{ //
  3. $base04: #a09f93;
  4. $base05: #d3d0c8;
  5. $base-red: #f2777a;
  6. $base-orange: #f99157;
  7. $base-yellow: #ffcc66;
  8. $base-green: #99cc99;
  9. $base-sky-blue: #66cccc;
  10. $base-blue: #6699cc;
  11. $base-violet: #cc99cc;
  12. $base-dark-orange: #d27b53;
  13. /* .base00 { color: #2d2d2d; }
  14. .base01 { color: #393939; }
  15. .base02 { color: #515151; }
  16. .base03 { color: #747369; }
  17. .base04 { color: #a09f93; }
  18. .base06 { color: #e8e6df; }
  19. .base07 { color: #f2f0ec; } */
  20. .base08 { color: $base-red; }
  21. .base09 { color: $base-orange; }
  22. .base0a { color: $base-yellow; }
  23. .base0b { color: $base-green; }
  24. .base0c { color: $base-sky-blue; }
  25. .base0d { color: $base-blue; }
  26. .base0e { color: $base-violet; }
  27. .base0f { color: $base-dark-orange; }
  28. // }}} base colors //
  29. // mixins {{{ //
  30. $max-page-width: 52em;
  31. @mixin side-padding-rem($n) {
  32. padding-left: $n * 1rem;
  33. padding-right: $n * 1rem;
  34. }
  35. @mixin vert-padding-rem($n) {
  36. padding-top: $n * 1rem;
  37. padding-bottom: $n * 1rem;
  38. }
  39. @mixin auto-center() {
  40. margin-left: auto;
  41. margin-right: auto;
  42. }
  43. @mixin article-body() {
  44. /* background-color: #e6e6fa; */
  45. background-color: #cbbeb5;
  46. color: #2d2d2d;
  47. @include side-padding-rem(8);
  48. @include vert-padding-rem(1);
  49. /* min-height: 50%; */
  50. /* min-height: 30em; */
  51. @media (max-width: $max-page-width) {
  52. @include side-padding-rem(2);
  53. }
  54. }
  55. @mixin a-color($color) {
  56. a {
  57. color: $color;
  58. &:visited {
  59. color: $color;
  60. }
  61. &:active {
  62. color: $color;
  63. }
  64. }
  65. }
  66. // }}} mixins //
  67. // general elements {{{ //
  68. body {
  69. margin: 0;
  70. background-color: #2d2d2d;
  71. color: #f2f0ec;
  72. line-height: 1.5;
  73. font-size: 100%;
  74. /* font-family: 'Source Code Pro', monospace; */
  75. font-family: 'Hack', monospace;
  76. @include a-color($base-sky-blue);
  77. }
  78. .container {
  79. max-width: $max-page-width;
  80. margin-left: auto;
  81. margin-right: auto;
  82. .copyright {
  83. @include a-color(#747369);
  84. }
  85. @media (max-width: $max-page-width) {
  86. width: 100%;
  87. }
  88. }
  89. div {
  90. .right {
  91. float:right;
  92. }
  93. .clearfix {
  94. overflow: auto;
  95. }
  96. }
  97. article {
  98. .single {
  99. section {
  100. @include article-body();
  101. }
  102. }
  103. }
  104. .article-list {
  105. article {
  106. @include article-body();
  107. }
  108. }
  109. header {
  110. margin-top: 1.5rem;
  111. margin-bottom: 1rem;
  112. @media (max-width: $max-page-width) {
  113. margin-top: 0;
  114. @include side-padding-rem(2);
  115. }
  116. }
  117. footer {
  118. margin-top: 2rem;
  119. margin-bottom: 1rem;
  120. text-align: center;
  121. font-size: 0.9em;
  122. color: #747369;
  123. bottom: 0;
  124. position: absolute;
  125. width: 100%;
  126. .container {
  127. background-color: #393939;
  128. max-width: 62em;
  129. @include auto-center();
  130. height: 1.8em;
  131. }
  132. @media (max-width: $max-page-width) {
  133. margin-top: 0;
  134. margin-bottom: 0;
  135. }
  136. }
  137. /* Typography */
  138. @for $i from 1 to 6 {
  139. h#{$i} {
  140. font-weight: bold;
  141. line-height: 1.25;
  142. margin-top: 1em;
  143. margin-bottom: .5em;
  144. }
  145. }
  146. p {
  147. margin-top: 0;
  148. margin-bottom: 1rem;
  149. }
  150. h1 { font-size: 2rem }
  151. h2 { font-size: 1.5rem }
  152. h3 { font-size: 1.25rem }
  153. h4 { font-size: 1rem }
  154. h5 { font-size: .875rem }
  155. h6 { font-size: .75rem }
  156. pre, code {
  157. font-family: inherit;
  158. font-size: inherit;
  159. }
  160. // }}} general elements //
  161. // header {{{ //
  162. header {
  163. a {
  164. .path .path:visited {
  165. color: #6699cc;
  166. }
  167. }
  168. span {
  169. caret {
  170. color: #f2f0ec;
  171. }
  172. }
  173. }
  174. // }}} header //
  175. // footer {{{ //
  176. footer {
  177. @include a-color(#747369);
  178. }
  179. // }}} footer //
  180. // 404 {{{ //
  181. .page-not-found {
  182. h1 {
  183. text-align: center;
  184. font-size: 5em;
  185. }
  186. h2 {
  187. text-align: center;
  188. font-size: 3em;
  189. color: $base04;
  190. margin-bottom: 4rem;
  191. }
  192. @media (max-width: $max-page-width) {
  193. h1 {
  194. font-size: 3em;
  195. }
  196. h2 {
  197. font-size: 2em;
  198. }
  199. }
  200. }
  201. // }}} 404 //
  202. // homepage {{{ //
  203. #homepage {
  204. #about {
  205. font-size: 1.25rem;
  206. h1 {
  207. margin-top: 1.25rem;
  208. font-size: 2rem;
  209. color: $base-yellow;
  210. text-align: center;
  211. // @media (max-width: $max-page-width) {
  212. // @include side-padding-rem(2);
  213. // }
  214. }
  215. .me-equation {
  216. margin-top: 3em;
  217. text-align: center;
  218. display: flex;
  219. justify-content: center; /* align horizontal */
  220. align-items: center; /* align vertical */
  221. img {
  222. width: 8em;
  223. border-radius: 2em;
  224. display: inline;
  225. &#gnu {
  226. background-color: $base04;
  227. // background-color: $base05;
  228. }
  229. }
  230. p {
  231. font-size: 4rem;
  232. display: inline;
  233. @include side-padding-rem(1);
  234. // display: table-cell inline;
  235. }
  236. }
  237. }
  238. @media (max-width: $max-page-width) {
  239. margin-bottom: 2rem;
  240. }
  241. }
  242. /* .homepage section.categories,
  243. .homepage section.tags {
  244. padding-left: 2rem;
  245. padding-right: 2rem;
  246. }
  247. .homepage .category,
  248. .homepage .category a,
  249. .homepage .tag,
  250. .homepage .tag a {
  251. color: #cc99cc;
  252. }
  253. .homepage .tag {
  254. margin-right: 2em;
  255. } */
  256. // }}} homepage //
  257. // TODO: converted up to here
  258. // hero {{{ //
  259. h1.site-title {
  260. text-align: center;
  261. /* font-size: 3.5em; */
  262. font-size: 4.8em;
  263. // color: #66cccc;
  264. color: $base05;
  265. margin-top: 0.5em;
  266. margin-bottom: 0.2em;
  267. }
  268. @media (max-width: $max-page-width) {
  269. h1.site-title {
  270. font-size: 3em;
  271. }
  272. }
  273. .hero-logo img {
  274. width: 100%;
  275. }
  276. .nav-bar {
  277. margin-left: .5em;
  278. margin-bottom: 1em;
  279. }
  280. .hero-tagline{
  281. margin-top: .3em;
  282. font-size: .8rem;
  283. // font-style: italic;
  284. text-align: center;
  285. .icon {
  286. width: 1.25rem;
  287. }
  288. }
  289. // }}} hero //
  290. // article-list {{{ //
  291. .article-list h1.list-title {
  292. font-size: 3em;
  293. color: #ffcc66;
  294. }
  295. .article-list article {
  296. padding-top: 4rem;
  297. padding-bottom: 4rem;
  298. margin-bottom: 4rem;
  299. }
  300. .article-list article h2.headline,
  301. .article-list article h2.headline a {
  302. margin-top: 0;
  303. color: #6699cc;
  304. }
  305. .article-list article .meta {
  306. margin-bottom: 1rem;
  307. }
  308. .article-list article .meta .key {
  309. color: #747369;
  310. }
  311. .article-list article .meta .val,
  312. .article-list article .meta .val a {
  313. color: #cc99cc;
  314. }
  315. .article-list article section.summary a { color: #d27b53; }
  316. // }}} article-list //
  317. // article.single {{{ //
  318. article.single .meta {
  319. font-size: 0.9em;
  320. text-align: right;
  321. }
  322. article.single .meta .key {
  323. color: #747369;
  324. }
  325. article.single .meta .val, article.single .meta .val a {
  326. color: #cc99cc;
  327. }
  328. @media (max-width: $max-page-width) {
  329. article.single .meta {
  330. padding-left: 2rem;
  331. padding-right: 2rem;
  332. }
  333. }
  334. article.single h1.headline {
  335. margin-top: 0;
  336. font-size: 3em;
  337. color: #ffcc66;
  338. }
  339. @media (max-width: $max-page-width) {
  340. article.single h1.headline {
  341. padding-left: 2rem;
  342. padding-right: 2rem;
  343. }
  344. }
  345. article.single section.body {
  346. padding-top: 4rem;
  347. padding-bottom: 3rem;
  348. }
  349. @media (max-width: $max-page-width) {
  350. article.single section.body {
  351. padding-top: 2rem;
  352. padding-bottom: 1rem;
  353. }
  354. }
  355. /* Highlight Colors */
  356. article.single section.body h1 { color: #6699cc; }
  357. article.single section.body h2 { color: #99cc99; }
  358. article.single section.body h3 { color: #f99157; }
  359. article.single section.body h4 { color: #f2777a; }
  360. article.single section.body h5 { color: #515151; }
  361. article.single section.body h6 { color: #747369; }
  362. article.single section.body a,a:visited { color: #a06700; }
  363. /* Article Elements */
  364. article.single * {
  365. max-width: 100%;
  366. }
  367. article.single pre {
  368. margin-top: 0;
  369. margin-bottom: 1rem;
  370. overflow-x: scroll;
  371. border-radius: 3px;
  372. padding: 2rem;
  373. }
  374. article.single p code {
  375. padding: 0.2em 0.5em;
  376. border-radius: 3px;
  377. background: #747369;
  378. color: #f2f0ec;
  379. }
  380. article.single figure, article.single div.highlight {
  381. box-sizing: border-box;
  382. max-width: 52rem;
  383. width: 52rem;
  384. margin-left: -8rem;
  385. margin-right: -8rem;
  386. margin-bottom: 1rem;
  387. padding: 1em;
  388. background-color: #393939;
  389. }
  390. @media (max-width: $max-page-width) {
  391. article.single figure, article.single div.highlight {
  392. width: 100%;
  393. margin-left: 0;
  394. margin-right: 0;
  395. border-radius: 3px;
  396. }
  397. }
  398. article.single figure img {
  399. max-width: 100%;
  400. width: 100%;
  401. border-radius: 3px;
  402. }
  403. article.single figure figcaption {
  404. margin-top: 1rem;
  405. }
  406. article.single figure figcaption h4 {
  407. margin-top: 0;
  408. text-align: center;
  409. font-style: italic;
  410. font-weight: normal;
  411. color: #f2f0ec;
  412. }
  413. article.single table {
  414. border-collapse: separate;
  415. border-spacing: 0;
  416. max-width: 100%;
  417. width: 100%;
  418. }
  419. article.single th,
  420. article.single td {
  421. padding: .25rem 1rem;
  422. line-height: inherit;
  423. border-bottom-width: 1px;
  424. border-bottom-style: solid;
  425. border-bottom-color: $base04;
  426. }
  427. article.single tr:last-child td {
  428. border-bottom: 0;
  429. }
  430. article.single th {
  431. text-align: left;
  432. font-weight: bold;
  433. vertical-align: bottom;
  434. }
  435. article.single td { vertical-align: top }
  436. article.single blockquote {
  437. margin-left: 2rem;
  438. margin-right: 3rem;
  439. padding-left: 1rem;
  440. border-left: 5px solid #66cccc;
  441. }
  442. article.single hr {
  443. border: 0;
  444. border-bottom-style: solid;
  445. border-bottom-width: 1px;
  446. border-bottom-color: $base04;
  447. }
  448. // }}} article.single //
  449. // Pygments {{{ //
  450. pre { background: #2d2d2d; color: #f2f0ec }
  451. .highlight .hll { background-color: #515151 }
  452. .highlight .c { color: #747369 } /* Comment */
  453. .highlight .err { color: #f2777a } /* Error */
  454. .highlight .k { color: #cc99cc } /* Keyword */
  455. .highlight .l { color: #f99157 } /* Literal */
  456. .highlight .n { color: #f2f0ec } /* Name */
  457. .highlight .o { color: #66cccc } /* Operator */
  458. .highlight .p { color: #f2f0ec } /* Punctuation */
  459. .highlight .cm { color: #747369 } /* Comment.Multiline */
  460. .highlight .cp { color: #747369 } /* Comment.Preproc */
  461. .highlight .c1 { color: #747369 } /* Comment.Single */
  462. .highlight .cs { color: #747369 } /* Comment.Special */
  463. .highlight .gd { color: #f2777a } /* Generic.Deleted */
  464. .highlight .ge { font-style: italic } /* Generic.Emph */
  465. .highlight .gh { color: #f2f0ec; font-weight: bold } /* Generic.Heading */
  466. .highlight .gi { color: #99cc99 } /* Generic.Inserted */
  467. .highlight .gp { color: #747369; font-weight: bold } /* Generic.Prompt */
  468. .highlight .gs { font-weight: bold } /* Generic.Strong */
  469. .highlight .gu { color: #66cccc; font-weight: bold } /* Generic.Subheading */
  470. .highlight .kc { color: #cc99cc } /* Keyword.Constant */
  471. .highlight .kd { color: #cc99cc } /* Keyword.Declaration */
  472. .highlight .kn { color: #66cccc } /* Keyword.Namespace */
  473. .highlight .kp { color: #cc99cc } /* Keyword.Pseudo */
  474. .highlight .kr { color: #cc99cc } /* Keyword.Reserved */
  475. .highlight .kt { color: #ffcc66 } /* Keyword.Type */
  476. .highlight .ld { color: #99cc99 } /* Literal.Date */
  477. .highlight .m { color: #f99157 } /* Literal.Number */
  478. .highlight .s { color: #99cc99 } /* Literal.String */
  479. .highlight .na { color: #6699cc } /* Name.Attribute */
  480. .highlight .nb { color: #f2f0ec } /* Name.Builtin */
  481. .highlight .nc { color: #ffcc66 } /* Name.Class */
  482. .highlight .no { color: #f2777a } /* Name.Constant */
  483. .highlight .nd { color: #66cccc } /* Name.Decorator */
  484. .highlight .ni { color: #f2f0ec } /* Name.Entity */
  485. .highlight .ne { color: #f2777a } /* Name.Exception */
  486. .highlight .nf { color: #6699cc } /* Name.Function */
  487. .highlight .nl { color: #f2f0ec } /* Name.Label */
  488. .highlight .nn { color: #ffcc66 } /* Name.Namespace */
  489. .highlight .nx { color: #6699cc } /* Name.Other */
  490. .highlight .py { color: #f2f0ec } /* Name.Property */
  491. .highlight .nt { color: #66cccc } /* Name.Tag */
  492. .highlight .nv { color: #f2777a } /* Name.Variable */
  493. .highlight .ow { color: #66cccc } /* Operator.Word */
  494. .highlight .w { color: #f2f0ec } /* Text.Whitespace */
  495. .highlight .mf { color: #f99157 } /* Literal.Number.Float */
  496. .highlight .mh { color: #f99157 } /* Literal.Number.Hex */
  497. .highlight .mi { color: #f99157 } /* Literal.Number.Integer */
  498. .highlight .mo { color: #f99157 } /* Literal.Number.Oct */
  499. .highlight .sb { color: #99cc99 } /* Literal.String.Backtick */
  500. .highlight .sc { color: #f2f0ec } /* Literal.String.Char */
  501. .highlight .sd { color: #747369 } /* Literal.String.Doc */
  502. .highlight .s2 { color: #99cc99 } /* Literal.String.Double */
  503. .highlight .se { color: #f99157 } /* Literal.String.Escape */
  504. .highlight .sh { color: #99cc99 } /* Literal.String.Heredoc */
  505. .highlight .si { color: #f99157 } /* Literal.String.Interpol */
  506. .highlight .sx { color: #99cc99 } /* Literal.String.Other */
  507. .highlight .sr { color: #99cc99 } /* Literal.String.Regex */
  508. .highlight .s1 { color: #99cc99 } /* Literal.String.Single */
  509. .highlight .ss { color: #99cc99 } /* Literal.String.Symbol */
  510. .highlight .bp { color: #f2f0ec } /* Name.Builtin.Pseudo */
  511. .highlight .vc { color: #f2777a } /* Name.Variable.Class */
  512. .highlight .vg { color: #f2777a } /* Name.Variable.Global */
  513. .highlight .vi { color: #f2777a } /* Name.Variable.Instance */
  514. .highlight .il { color: #f99157 } /* Literal.Number.Integer.Long */
  515. /*# sourceMappingURL=style.css.map */
  516. // }}} Pygments //