academic.css 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196
  1. /*************************************************
  2. * Hugo Academic: an academic theme for Hugo.
  3. * Designed by @GeorgeCushen.
  4. * https://github.com/gcushen/hugo-academic
  5. **************************************************/
  6. /*************************************************
  7. * Core
  8. **************************************************/
  9. html {
  10. font-family: '{{ .Get "body_font" }}', sans-serif;
  11. font-size: {{ .Get "font_size_small" }}px;
  12. color: rgba(0,0,0,0.8);
  13. line-height: 1.65;
  14. }
  15. @media screen and (min-width: 58em) {
  16. html {
  17. font-size: {{ .Get "font_size" }}px;
  18. }
  19. }
  20. body {
  21. font-family: inherit;
  22. font-size: 1rem;
  23. line-height: inherit;
  24. color: inherit;
  25. background-color: {{ .Get "background" }};
  26. margin-top: 71px; /* Offset body content by navbar height. */
  27. padding-top: 0;
  28. counter-reset: captions;
  29. }
  30. @media screen and (max-width: 1200px) { /* Match max-width of .nav-bar query. */
  31. body {
  32. margin-top: 51px; /* Offset body content by navbar height. */
  33. }
  34. }
  35. .max-width-640 {
  36. max-width: 640px;
  37. }
  38. .margin-auto {
  39. margin-left: auto;
  40. margin-right: auto;
  41. }
  42. .center-text {
  43. text-align: center;
  44. }
  45. /* Body text */
  46. p {
  47. margin-top: 0;
  48. margin-bottom: 1rem;
  49. }
  50. /* Lists */
  51. ul, ol, dl {
  52. margin-top: 0;
  53. margin-bottom: 1rem;
  54. }
  55. /* Navigation bar text */
  56. .navbar-light {
  57. font-family: '{{ .Get "nav_font" }}', sans-serif;
  58. font-weight: 400;
  59. line-height: 1.25;
  60. text-rendering: optimizeLegibility;
  61. }
  62. /* Headings */
  63. h1, h2, h3, h4, h5, h6 {
  64. font-family: '{{ .Get "heading_font" }}', sans-serif;
  65. font-weight: 400;
  66. margin-top: 1rem;
  67. margin-bottom: .5rem;
  68. line-height: 1.25;
  69. color: #313131;
  70. text-rendering: optimizeLegibility;
  71. overflow-wrap: break-word; /* Ensures very long heading words do not overflow into content. */
  72. }
  73. h1 {
  74. font-size: 2.25rem;
  75. }
  76. h2 {
  77. margin-top: 1rem;
  78. font-size: 1.5rem;
  79. }
  80. h3 {
  81. font-weight: 700;
  82. margin-top: 1.5rem;
  83. font-size: 1.25rem;
  84. }
  85. h4, h5, h6 {
  86. font-weight: 700;
  87. margin-top: 1rem;
  88. font-size: 1rem;
  89. }
  90. a,
  91. h3.article-title a:hover {
  92. color: {{ .Get "link" }};
  93. text-decoration: none;
  94. transition: color 0.6s ease;
  95. }
  96. a:hover,
  97. a:focus {
  98. color: {{ .Get "link_hover" }};
  99. }
  100. img,
  101. video {
  102. height: auto;
  103. max-width: 100%;
  104. display: block;
  105. }
  106. video {
  107. width: 100%;
  108. height: auto;
  109. max-height: 400px;
  110. }
  111. .img-responsive {
  112. /* Extend Bootstrap declaration with centering. */
  113. margin: 0 auto;
  114. }
  115. figcaption {
  116. display: block;
  117. margin-top: 0.75em;
  118. line-height: 1.25;
  119. font-size: 1rem;
  120. margin-bottom: 1.65rem;
  121. font-family: '{{ .Get "heading_font" }}', sans-serif;
  122. }
  123. figcaption.numbered:before {
  124. font-weight: 700;
  125. text-transform: uppercase;
  126. content: attr(data-pre) counter(captions) attr(data-post);
  127. }
  128. figcaption.numbered {
  129. counter-increment: captions;
  130. }
  131. figcaption h4 {
  132. display: inline;
  133. font-size: 1rem;
  134. font-weight: 400;
  135. margin: 0;
  136. }
  137. pre,
  138. code {
  139. font-family: '{{ .Get "mono_font" }}', monospace;
  140. color: #c7254e;
  141. background-color: #f9f2f4;
  142. }
  143. pre {
  144. margin: 0 0 1rem 0;
  145. background-color: rgb(248, 248, 248); /* Match default highlight theme. */
  146. border-color: rgb(248, 248, 248);
  147. font-size: 0.7rem;
  148. border-radius: 4px;
  149. }
  150. pre code {
  151. white-space: pre; /* Override Bootstrap to preserve line breaks in code. */
  152. overflow-x: auto;
  153. }
  154. hr {
  155. border: 0;
  156. height: 1px;
  157. background: #333;
  158. background-image: linear-gradient(to right, #ccc, #333, #ccc);
  159. }
  160. /* Quotes */
  161. blockquote {
  162. padding: .5rem 1rem;
  163. margin: .8rem 0;
  164. color: #7a7a7a;
  165. border-left: .25rem solid #e5e5e5;
  166. }
  167. blockquote p:last-child {
  168. margin-bottom: 0;
  169. }
  170. @media (min-width: 30em) {
  171. blockquote {
  172. padding-right: 5rem;
  173. padding-left: 1.25rem;
  174. }
  175. }
  176. .markup-quote {
  177. background-color: transparent;
  178. background-image: linear-gradient(to bottom, rgba(233, 231, 245, 1), rgba(233, 231, 245, 1));
  179. }
  180. .space-below {
  181. margin-bottom: 50px;
  182. }
  183. @media screen and (max-width: 768px) {
  184. .space-below {
  185. margin-bottom: 10px;
  186. }
  187. }
  188. .universal-wrapper {
  189. margin: 0 auto;
  190. padding-right: 1rem;
  191. padding-left: 1rem;
  192. padding-top: 0.1rem;
  193. width: 100%;
  194. }
  195. @media only screen and (min-width: 1001px) {
  196. .universal-wrapper {
  197. width: 1000px;
  198. }
  199. }
  200. small,
  201. .small {
  202. font-size: .75em;
  203. }
  204. .responsive-wrap iframe {
  205. max-width: 100%;
  206. }
  207. /*************************************************
  208. * Search.
  209. **************************************************/
  210. .search-results {
  211. transform: scale(0);
  212. background-color: {{ .Get "background" }};
  213. bottom: 0;
  214. left: 0;
  215. right: 0;
  216. top: 0;
  217. overflow: scroll;
  218. position: fixed;
  219. visibility: hidden;
  220. z-index: -99;
  221. }
  222. .dark .search-results {
  223. background-color: rgb(40, 42, 54);
  224. }
  225. .searching {
  226. overflow: hidden;
  227. }
  228. .searching .search-results {
  229. transform: scale(1);
  230. visibility: visible;
  231. z-index: 11; /* Second highest index, after navbar. */
  232. }
  233. .searching #search-box #search-query {
  234. width: 100%;
  235. }
  236. .search-results > .container {
  237. padding-top: calc(70px + 2rem); /* Max responsive navbar height plus padding. */
  238. }
  239. .search-header {
  240. background-color: {{ .Get "background" }};
  241. position: sticky;
  242. top: calc(70px + 2rem); /* Max responsive navbar height plus padding. */
  243. padding-bottom: 1rem;
  244. }
  245. .dark .search-header {
  246. background-color: rgb(40, 42, 54);
  247. }
  248. .search-header h1 {
  249. margin: 0;
  250. line-height: 1;
  251. }
  252. .col-search-close {
  253. text-align: right;
  254. }
  255. .search-header i {
  256. font-size: 2rem;
  257. line-height: 1;
  258. }
  259. #search-box {
  260. position: relative; /* Required for search icon positioning. */
  261. margin-bottom: 0.5rem;
  262. }
  263. #search-box::before {
  264. font-family: 'Font Awesome 5 Free';
  265. font-weight: 900;
  266. content: "\f002";
  267. font-size: 1rem;
  268. opacity: 0.25;
  269. line-height: 1rem;
  270. position: absolute;
  271. left: 0.7rem;
  272. top: 0.6rem;
  273. overflow-x: hidden;
  274. }
  275. #search-box #search-query {
  276. border: 1px solid #dedede;
  277. border-radius: 1rem;
  278. padding: 1rem 1rem 1rem 2rem; /* Wider left padding for search icon to fit in. */
  279. width: 250px;
  280. line-height: 1rem;
  281. height: 1rem;
  282. font-size: 0.8rem;
  283. }
  284. .search-hit em {
  285. font-style: normal;
  286. background-color: #FFE0B2;
  287. color: #E65100;
  288. border-bottom: 1px solid #E65100;
  289. }
  290. .search-hit-type {
  291. margin-bottom: 0 !important; /* Override .article-metadata margin. */
  292. text-transform: capitalize;
  293. }
  294. .search-hit-description {
  295. font-size: 0.7rem;
  296. }
  297. /* Load more results button - hide when there are no more results. */
  298. #search-hits button[disabled] {
  299. display: none;
  300. }
  301. .form-control:focus {
  302. border-color: {{ .Get "primary" }};
  303. box-shadow: 0 0 0 .2rem {{ .Get "primary_light" }};
  304. }
  305. /*************************************************
  306. * Modals.
  307. **************************************************/
  308. .modal-content {
  309. background: {{ .Get "background" }};
  310. }
  311. .modal-title {
  312. margin: 0; /* Override default h5 margin. */
  313. }
  314. .modal-content pre {
  315. margin: 0;
  316. }
  317. .modal-header {
  318. border: 0;
  319. color: rgba(0,0,0,0.8);
  320. }
  321. .modal-footer {
  322. border: 0;
  323. }
  324. #modal-error {
  325. color: red;
  326. }
  327. /*************************************************
  328. * Gallery.
  329. **************************************************/
  330. .gallery {
  331. margin: 0.5em -4px 1.5em -4px;
  332. font-size: 0;
  333. }
  334. a[data-fancybox] {
  335. text-decoration: none;
  336. }
  337. a[data-fancybox] img {
  338. height: 250px;
  339. max-width: inherit;
  340. display: inherit;
  341. margin: 0;
  342. padding: 4px;
  343. box-shadow: none;
  344. vertical-align: inherit;
  345. }
  346. .fancybox-caption {
  347. font-size: 1rem;
  348. line-height: 1.5rem;
  349. text-align: center;
  350. }
  351. /*************************************************
  352. * Pager.
  353. **************************************************/
  354. .post-nav {
  355. margin-top: 1rem;
  356. font-size: 0.8rem;
  357. }
  358. .post-nav-item {
  359. hyphens: auto;
  360. word-wrap: break-word;
  361. padding: 11px 0 12px;
  362. width: 100%;
  363. }
  364. .post-nav-item a {
  365. color: #2b2b2b;
  366. line-height: 1.7;
  367. text-transform: none;
  368. }
  369. .post-nav-item .meta-nav {
  370. color: #767676;
  371. font-weight: 900;
  372. line-height: 2;
  373. text-transform: uppercase;
  374. }
  375. .dark .post-nav-item a {
  376. color: #ddd;
  377. }
  378. /*************************************************
  379. * Home Sections
  380. **************************************************/
  381. @keyframes intro {
  382. 0% {
  383. opacity: 0;
  384. }
  385. 100% {
  386. opacity: 1;
  387. }
  388. }
  389. .home-section {
  390. background-color: {{ .Get "home_section_odd" }};
  391. padding: 110px 0 110px 0;
  392. animation: intro 0.3s both;
  393. animation-delay: 0.15s;
  394. }
  395. .home-section:first-of-type {
  396. padding-top: 50px;
  397. }
  398. .home-section:nth-of-type(even) {
  399. background-color: {{ .Get "home_section_even" }};
  400. }
  401. @media screen and (max-width: 768px) {
  402. .home-section {
  403. padding: 60px 0 60px 0;
  404. }
  405. .home-section:first-of-type {
  406. padding-top: 40px;
  407. }
  408. }
  409. .section-heading h1 {
  410. margin: 0 0 10px 0;
  411. }
  412. .section-heading p {
  413. font-weight: 400;
  414. font-size: 1.1rem;
  415. color: #b2b2b2;
  416. }
  417. /*************************************************
  418. * Hero Widget
  419. **************************************************/
  420. .hero-overlay {
  421. padding: 3em 0;
  422. clear: both;
  423. background-size: cover;
  424. background-repeat: no-repeat;
  425. background-position: center;
  426. animation: intro 0.3s both;
  427. animation-delay: 0s;
  428. animation-delay: 0.25s;
  429. }
  430. .hero-title {
  431. font-size: 2.7rem;
  432. margin-top: 0;
  433. line-height: 1;
  434. }
  435. .hero-lead {
  436. max-width: 768px;
  437. font-size: 1.35rem;
  438. }
  439. .hero-overlay .hero-title,
  440. .hero-overlay .hero-lead,
  441. .hero-overlay .btn {
  442. color: #fff;
  443. text-shadow: 1px 1px 4px rgba(0,0,0,0.5);
  444. }
  445. .hero-overlay a {
  446. color: #fff;
  447. }
  448. .hero-overlay .hero-lead a {
  449. color: #fff;
  450. text-decoration-line: underline;
  451. }
  452. .hero-overlay .btn-lg {
  453. font-size: 1.1rem;
  454. }
  455. /*************************************************
  456. * Featurette Widget
  457. **************************************************/
  458. .featurette {
  459. font-size: 0.8rem;
  460. line-height: 1.5;
  461. color: #555;
  462. text-align: center;
  463. }
  464. .featurette h3 {
  465. margin-top: 0;
  466. margin-bottom: 5px;
  467. font-weight: 400;
  468. color: #333;
  469. }
  470. .dark .featurette,
  471. .dark .featurette h3 {
  472. color: #fff;
  473. }
  474. .featurette-icon {
  475. display: block;
  476. width: 100%;
  477. color: {{ .Get "primary" }};
  478. font-size: 3rem;
  479. text-align: center;
  480. }
  481. /*************************************************
  482. * Biography
  483. **************************************************/
  484. #profile {
  485. text-align: center;
  486. padding: 30px 10px;
  487. position: relative;
  488. }
  489. #profile .portrait {
  490. width: 200px;
  491. height: 200px;
  492. margin: 0 auto;
  493. border-radius: 50%;
  494. object-fit: cover;
  495. }
  496. #profile .portrait-title h2 {
  497. font-size: 1.75em;
  498. font-weight: 300;
  499. color: #000000;
  500. margin: 20px 0 10px 0;
  501. }
  502. #profile .portrait-title h3 {
  503. font-size: 1rem;
  504. font-weight: 300;
  505. color: rgba(0,0,0, 0.54);
  506. margin: 0px 0 10px 0;
  507. }
  508. ul.network-icon {
  509. display: inline-flex;
  510. flex-direction: row;
  511. flex-wrap: wrap;
  512. justify-content: center;
  513. list-style: none;
  514. padding: 0;
  515. }
  516. #profile .network-icon {
  517. margin-top: 30px;
  518. }
  519. .network-icon li {
  520. margin-right: 10px;
  521. }
  522. .network-icon li:last-of-type {
  523. margin-right: 0;
  524. }
  525. .network-icon li:hover {
  526. transform: scale(1.2)
  527. }
  528. .big-icon {
  529. font-size: 2rem;
  530. }
  531. ul.ul-interests li {
  532. font-size: 0.9rem;
  533. }
  534. ul.ul-edu {
  535. list-style: none;
  536. }
  537. ul.ul-edu li {
  538. position: relative;
  539. padding: 0px 15px 4px 3px;
  540. }
  541. ul.ul-edu li .description p {
  542. margin: 0;
  543. }
  544. ul.ul-edu li .description p.course {
  545. font-size: 0.9rem;
  546. }
  547. ul.ul-edu li .description p.institution {
  548. font-size: 0.75rem;
  549. color: rgba(0,0,0,0.6);
  550. }
  551. /*************************************************
  552. * Sharing
  553. **************************************************/
  554. .share-box {
  555. float: right;
  556. }
  557. ul.share {
  558. display: flex;
  559. flex-direction: row;
  560. flex-wrap: wrap;
  561. list-style: none;
  562. margin: 0;
  563. padding: 0;
  564. }
  565. ul.share li {
  566. display: inline-flex;
  567. margin-right: 5px;
  568. }
  569. ul.share li:last-of-type {
  570. margin-right: 0;
  571. }
  572. ul.share li i {
  573. display: block;
  574. width: 30px;
  575. height: 30px;
  576. line-height: 30px;
  577. font-size: 16px;
  578. text-align: center;
  579. transition: all 150ms ease-in-out;
  580. color: #fff;
  581. }
  582. .dark ul.share li i {
  583. color: rgb(68, 71, 90);
  584. }
  585. ul.share li a {
  586. background-color: #b5c6ce;
  587. display: block;
  588. border-radius: 50%;
  589. text-decoration: none !important;
  590. margin: 0;
  591. }
  592. ul.share li:hover i {
  593. transform: scale(1.4)
  594. }
  595. /*************************************************
  596. * Page content style
  597. **************************************************/
  598. article {
  599. animation: intro 0.3s both;
  600. animation-delay: 0.15s;
  601. }
  602. .article-container {
  603. max-width: 760px;
  604. padding: 0 20px 0 20px;
  605. margin: 0 auto 0 auto;
  606. }
  607. .split-header {
  608. margin-bottom: 2rem;
  609. }
  610. .split-header .share-box {
  611. float: left;
  612. }
  613. .page-subtitle {
  614. font-size: 1.15rem;
  615. color: rgba(0,0,0,.54);
  616. margin-bottom: 1rem;
  617. }
  618. .dark .page-subtitle {
  619. color: rgba(255,255,255,0.54);
  620. }
  621. .split-header .page-subtitle {
  622. margin-bottom: 1.5rem;
  623. }
  624. .split-header-content {
  625. max-width: 612px;
  626. width: 100%;
  627. padding: 60px 60px 32px 0;
  628. margin-left: auto;
  629. -webkit-box-sizing: border-box;
  630. box-sizing: border-box;
  631. }
  632. /* Prevent FA's line height of 1 causing FA button links to be taller than other button links. */
  633. .btn-links .fab,
  634. .btn-links .fas {
  635. line-height: inherit !important;
  636. }
  637. .split-header-image {
  638. position: relative; /* Required for caption positioning */
  639. clear: both;
  640. max-width: 580px;
  641. }
  642. .article-header {
  643. position: relative; /* Required for caption positioning */
  644. clear: both;
  645. }
  646. .article-banner {
  647. width: 100%;
  648. height: auto;
  649. }
  650. .article-header-caption {
  651. position: absolute;
  652. bottom: 0;
  653. right: 0;
  654. margin: 0 auto;
  655. padding: 2px 5px;
  656. color: #fff;
  657. font-size: .7em;
  658. background: #000;
  659. text-align: right;
  660. z-index: 5;
  661. opacity: 0.65;
  662. border-radius: 5px 0 0 0;
  663. }
  664. @media (min-width: 64em) {
  665. .article-header-caption {
  666. padding: 5px 10px;
  667. }
  668. }
  669. .article-header-caption a {
  670. color: #fff;
  671. text-decoration: none;
  672. }
  673. .article-title {
  674. font-size: 1.75rem;
  675. }
  676. .article-title a {
  677. color: #151515;
  678. transition: color 0.6s ease;
  679. }
  680. .text-muted {
  681. color: rgba(0,0,0,0.54); /* Override Bootstrap */
  682. }
  683. .dark .text-muted {
  684. color: rgba(255,255,255,0.54);
  685. }
  686. .article-metadata {
  687. margin-bottom: 15px;
  688. overflow: hidden;
  689. font-size: 14px;
  690. letter-spacing: 0.03em;
  691. color: rgba(0,0,0,0.54);
  692. }
  693. .dark .article-metadata {
  694. color: rgba(255,255,255,0.54);
  695. }
  696. .stream-meta.article-metadata {
  697. margin-bottom: 5px;
  698. }
  699. /* For article page only, not lists. */
  700. article .article-metadata {
  701. margin-bottom: 20px;
  702. line-height: 30px; /* Match share bar line height. */
  703. }
  704. .article-metadata a {
  705. color: rgba(0,0,0,.54);
  706. }
  707. .dark .article-metadata a {
  708. color: rgba(255,255,255,0.54);
  709. }
  710. .article-metadata a:hover {
  711. color: {{ .Get "primary" }};
  712. }
  713. .middot-divider {
  714. padding-right: .45em;
  715. padding-left: .45em;
  716. font-size: 15px;
  717. }
  718. .middot-divider::after {
  719. content: '\00B7';
  720. }
  721. .article-style img,
  722. .article-style video {
  723. margin-left: auto;
  724. margin-right: auto;
  725. margin-top: 2rem;
  726. margin-bottom: 2rem;
  727. padding: 0;
  728. }
  729. .article-style td img,
  730. .article-style td video {
  731. margin-top: 0;
  732. margin-bottom: 0;
  733. }
  734. .article-style figure {
  735. margin-top: 2rem;
  736. margin-bottom: 2rem;
  737. }
  738. .article-style figure img {
  739. margin-top: 0;
  740. margin-bottom: 0;
  741. }
  742. .article-widget {
  743. padding-top: 1rem;
  744. }
  745. .article-widget h3 {
  746. margin-top: 0;
  747. }
  748. .hr-light {
  749. border-top: 1px solid rgba(0,0,0,.05);
  750. margin-top: 0.5rem;
  751. margin-bottom: 1rem;
  752. }
  753. #comments {
  754. padding-top: 1rem;
  755. }
  756. /*************************************************
  757. * Stream
  758. **************************************************/
  759. .media.stream-item {
  760. margin-bottom: 2rem;
  761. }
  762. .media.stream-item .article-title {
  763. font-size: 1.2rem;
  764. }
  765. .media.stream-item .article-style {
  766. margin-top: 2px;
  767. font-size: 0.8rem;
  768. }
  769. .media.stream-item .stream-meta {
  770. margin-top: 12px;
  771. }
  772. .media.stream-item img {
  773. max-width: 150px;
  774. height: auto;
  775. object-fit: cover;
  776. }
  777. @media screen and (max-width: 768px) {
  778. .media.stream-item img {
  779. max-width: 80px;
  780. }
  781. }
  782. /*************************************************
  783. * Author profile card
  784. **************************************************/
  785. .author-card {
  786. margin-top: 1rem;
  787. padding-top: 1rem;
  788. border-top: 1px solid rgba(0,0,0,.05);
  789. }
  790. .dark .author-card {
  791. border-top: 1px solid rgba(255,255,255,.05);
  792. }
  793. .author-card .portrait {
  794. width: 60px;
  795. height: 60px;
  796. margin: 0 auto;
  797. border-radius: 50%;
  798. object-fit: cover;
  799. }
  800. .author-card .card-title {
  801. margin-top: 0;
  802. margin-bottom: 15px;
  803. font-weight: 600;
  804. color: rgba(0, 0, 0, 0.84);
  805. }
  806. .author-card .card-title a {
  807. color: rgba(0, 0, 0, 0.84);
  808. }
  809. .dark .author-card .card-title,
  810. .dark .author-card .card-title a {
  811. color: rgba(255, 255, 255, 0.84);
  812. }
  813. .author-card p {
  814. margin-bottom: 5px;
  815. }
  816. .author-card .card-subtitle {
  817. font-weight: 300;
  818. font-size: 0.8rem;
  819. color: rgba(0, 0, 0, 0.54);
  820. margin-bottom: 7px;
  821. }
  822. .dark .author-card .card-subtitle {
  823. color: rgba(255, 255, 255, 0.54);
  824. }
  825. .author-card .card-text {
  826. color: rgba(0, 0, 0, 0.76);
  827. font-size: 0.8rem;
  828. margin-bottom: 4px;
  829. }
  830. .dark .author-card .card-text {
  831. color: rgba(255, 255, 255, 0.76);
  832. }
  833. /*************************************************
  834. * Publications
  835. **************************************************/
  836. .pub-icon {
  837. color: rgba(0, 0, 0, 0.54);
  838. font-size: 0.81em;
  839. padding-top: 6px;
  840. }
  841. .pub-banner {
  842. max-width: 100%;
  843. height: auto;
  844. margin-left: auto;
  845. margin-right: auto;
  846. }
  847. .pub .pub-authors {
  848. font-style: italic;
  849. line-height: 30px; /* Match share bar line height. */
  850. }
  851. .pub-row-heading {
  852. font-weight: bold;
  853. }
  854. .pub-list-item .pub-abstract {
  855. font-size: 1rem;
  856. }
  857. .pub-list-item .pub-authors {
  858. line-height: normal;
  859. font-style: normal;
  860. font-size: 0.9rem;
  861. color: rgba(0,0,0,0.54);
  862. }
  863. .pub-list-item .pub-publication {
  864. color: rgba(0,0,0,0.54);
  865. font-size: 0.9rem;
  866. }
  867. .dark .pub-authors,
  868. .dark .pub-publication {
  869. color: rgba(255,255,255,0.54);
  870. }
  871. .pub-list-item .btn-links {
  872. padding-top: 10px;
  873. }
  874. #container-publications {
  875. display: block;
  876. position: relative;
  877. overflow: hidden;
  878. }
  879. /*************************************************
  880. * Experience
  881. **************************************************/
  882. .exp-title {
  883. text-transform: none !important;
  884. }
  885. .exp-company {
  886. font-weight: normal !important;
  887. text-transform: none !important;
  888. }
  889. .exp-meta {
  890. font-size: 0.8rem;
  891. }
  892. .experience .card-text,
  893. .experience .card-text p {
  894. color: #000 !important;
  895. font-size: 0.75rem !important;
  896. }
  897. .dark .experience .text-muted {
  898. color: rgba(255, 255, 255, 0.8) !important;
  899. }
  900. .dark .experience .card-text,
  901. .dark .experience .card-text p {
  902. color: rgb(248, 248, 242) !important;
  903. }
  904. .card .card-text ul {
  905. margin-top: -1rem;
  906. margin-bottom: 0rem;
  907. }
  908. .experience .m-2 .border,
  909. .experience .col.border-right {
  910. border-color: {{ .Get "primary" }} !important;
  911. }
  912. .experience .m-2 .border.exp-fill {
  913. background-color: {{ .Get "primary" }} !important;
  914. }
  915. /*************************************************
  916. * Talks
  917. **************************************************/
  918. .talk-metadata {
  919. color: #4b4f56;
  920. font-size: 0.8rem;
  921. }
  922. /*************************************************
  923. * Projects
  924. **************************************************/
  925. .project-widget-simple li {
  926. margin-bottom: 1rem;
  927. }
  928. .project-widget-simple li:last-of-type {
  929. margin-bottom: 0;
  930. }
  931. .project-widget-simple .project-title {
  932. margin-bottom: 6px;
  933. }
  934. .project-widget-simple .project-summary {
  935. font-size: 0.9rem;
  936. margin-bottom: 0.4rem;
  937. }
  938. .projects-container {
  939. display: block;
  940. position: relative;
  941. /*margin-top: 5rem;*/
  942. overflow: hidden;
  943. }
  944. .project-toolbar{
  945. margin-bottom: 2rem;
  946. }
  947. .project-item {
  948. margin-bottom: 1.5rem;
  949. }
  950. .project-showcase .project-item {
  951. margin-bottom: 3rem;
  952. }
  953. .project-item:last-of-type {
  954. margin-bottom: 0;
  955. }
  956. .isotope-item {
  957. z-index: 2;
  958. }
  959. .isotope-item:hover{
  960. z-index: 3;
  961. }
  962. /*************************************************
  963. * Card component
  964. **************************************************/
  965. .card-simple {
  966. background: #fff;
  967. box-shadow: 0 1px 4px rgba(0,0,0,.04);
  968. border: 1px solid rgba(0,0,0,.09);
  969. border-radius: 3px;
  970. margin-top: 20px;
  971. padding: 15px 20px 15px 20px;
  972. }
  973. .card-simple:first-of-type {
  974. margin-top: 0;
  975. }
  976. .card-simple p.read-more {
  977. margin: 0;
  978. }
  979. .dark .card-simple {
  980. background: rgb(40, 42, 54);
  981. box-shadow: 0 1px 4px rgba(0,0,0,.04);
  982. border: 1px solid rgb(68, 71, 90);
  983. }
  984. .card {
  985. margin-bottom: 1.5rem;
  986. overflow: hidden;
  987. text-overflow: ellipsis;
  988. background: #fff;
  989. box-shadow: 0 2px 4px 0 rgba(0,0,0,0.2);
  990. transition: all 0.2s ease-out;
  991. }
  992. .card .card-image {
  993. display: block;
  994. position: relative;
  995. min-height: 100px;
  996. }
  997. .card h4 {
  998. font-size: 0.9rem;
  999. font-weight: 700;
  1000. line-height: 1.5;
  1001. text-transform: uppercase;
  1002. }
  1003. .card h4 a {
  1004. color: #000;
  1005. border-bottom: solid 1px transparent;
  1006. }
  1007. .card h4 a:hover {
  1008. color: #000;
  1009. border-bottom: solid 1px #000;
  1010. text-decoration: none;
  1011. }
  1012. .card .card-text {
  1013. padding: 0.75rem 1rem 0.75rem;
  1014. }
  1015. .card .card-text p {
  1016. color: rgba(0,0,0,0.54);
  1017. font-size: 0.75rem;
  1018. }
  1019. .dark .card-text p {
  1020. color: rgb(248, 248, 242);
  1021. }
  1022. .card p:last-child {
  1023. margin-bottom: 0;
  1024. }
  1025. .card .card-image.hover-overlay:before {
  1026. display: block;
  1027. position: absolute;
  1028. left: 0;
  1029. top: 0;
  1030. width: 100%;
  1031. height: 100%;
  1032. background: #fff;
  1033. content: " ";
  1034. opacity: 0;
  1035. transition: all 0.2s ease-out;
  1036. }
  1037. .card .card-image.hover-overlay:after {
  1038. display: block;
  1039. position: absolute;
  1040. left: 0;
  1041. top: 50%;
  1042. width: 100%;
  1043. transform: translate(0, -50%);
  1044. opacity: 0;
  1045. transition: all 0.2s ease-out;
  1046. font-family: 'Font Awesome 5 Free';
  1047. font-weight: 900;
  1048. content: '\f0c1';
  1049. text-align: center;
  1050. font-size: 3rem;
  1051. color: #666;
  1052. }
  1053. .card:hover {
  1054. box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2);
  1055. }
  1056. .card:hover .card-image.hover-overlay:before {
  1057. opacity: 0.8;
  1058. }
  1059. .card:hover .card-image.hover-overlay:after {
  1060. opacity: 0.6;
  1061. }
  1062. /*************************************************
  1063. * Contact
  1064. **************************************************/
  1065. .contact-widget .fa-ul {
  1066. margin-left: 3.14285714rem; /* Must be > `fa-2x` icon size. */
  1067. }
  1068. .contact-widget .fa-li {
  1069. position: absolute;
  1070. left: -3.14285714rem; /* Negative of `.contact-widget .fa-ul` margin. */
  1071. width: 2rem; /* Match `fa-2x` icon size. */
  1072. top: 0.14285714em; /* Default FA value. */
  1073. text-align: center;
  1074. }
  1075. .contact-widget li {
  1076. padding-top: 0.8rem; /* Align text with bottom of `fa-2x` icon. */
  1077. margin-bottom: 0.3rem;
  1078. }
  1079. .contact-widget li:last-of-type {
  1080. margin-bottom: 0;
  1081. }
  1082. #map {
  1083. height: 350px;
  1084. width: 100%;
  1085. }
  1086. /*************************************************
  1087. * Footer
  1088. **************************************************/
  1089. footer {
  1090. margin: 4rem 0 0;
  1091. padding: 2rem 0;
  1092. width: 100%;
  1093. }
  1094. footer p {
  1095. font-size: 0.75rem;
  1096. text-align: center;
  1097. }
  1098. .site-footer,
  1099. footer a#back_to_top i {
  1100. color: rgba(0,0,0,0.54);
  1101. }
  1102. .dark .site-footer,
  1103. .dark footer a#back_to_top i,
  1104. .dark .docs .body-footer {
  1105. color: rgba(255,255,255,0.54);
  1106. }
  1107. /**************************************************
  1108. * Tags/Labels
  1109. **************************************************/
  1110. .badge-light {
  1111. border: none;
  1112. color: rgba(0,0,0,.68);
  1113. background: rgba(0,0,0,.05);
  1114. font-weight: normal;
  1115. border-radius: 3px;
  1116. padding: 5px 10px;
  1117. margin-right: 8px;
  1118. margin-bottom: 8px;
  1119. }
  1120. .article-tags > .badge-light:last-child {
  1121. margin-right: 0;
  1122. }
  1123. .badge-light[href]:focus,
  1124. .badge-light[href]:hover {
  1125. background: rgba(0,0,0,.1);
  1126. }
  1127. a.badge:focus,
  1128. a.badge:hover {
  1129. color: rgba(0,0,0,.68);
  1130. }
  1131. /*************************************************
  1132. * Button size override
  1133. *************************************************/
  1134. .btn {
  1135. padding: .5rem;
  1136. font-size: .8rem;
  1137. line-height: .5;
  1138. border-radius: .3rem;
  1139. }
  1140. .btn.btn-sm {
  1141. padding: .4rem;
  1142. font-size: .6rem;
  1143. border-radius: .2rem;
  1144. }
  1145. /*************************************************
  1146. * Button Primary: Color override
  1147. **************************************************/
  1148. .btn-primary {
  1149. border-color: {{ .Get "primary" }};
  1150. background: {{ .Get "primary" }};
  1151. }
  1152. .btn-outline-primary {
  1153. border-color: {{ .Get "primary" }};
  1154. color: {{ .Get "primary" }};
  1155. }
  1156. .btn-primary:hover,
  1157. .btn-primary:active,
  1158. .btn-primary.active,
  1159. .btn-primary:visited,
  1160. .open > .dropdown-toggle.btn-primary {
  1161. background: {{ .Get "primary" }};
  1162. }
  1163. .btn-outline-light:hover,
  1164. .btn-outline-light:active,
  1165. .btn-outline-light.active {
  1166. background: rgba(0,0,0,0.4);
  1167. }
  1168. .btn-outline-primary:not(:disabled):not(.disabled).active,
  1169. .btn-outline-primary:not(:disabled):not(.disabled):active,
  1170. .show > .btn-outline-primary.dropdown-toggle {
  1171. color: #fff;
  1172. background-color: {{ .Get "primary" }};
  1173. border-color: {{ .Get "primary" }};
  1174. }
  1175. .dark .btn-outline-primary:not(:disabled):not(.disabled).active,
  1176. .dark .btn-outline-primary:not(:disabled):not(.disabled):active,
  1177. .dark .show > .btn-outline-primary.dropdown-toggle {
  1178. color: rgb(68, 71, 90);
  1179. }
  1180. .btn-outline-primary:hover {
  1181. color: #fff;
  1182. background-color: {{ .Get "primary" }};
  1183. border-color: {{ .Get "primary" }};
  1184. }
  1185. .dark .btn-outline-primary:hover {
  1186. color: rgb(68, 71, 90);
  1187. }
  1188. /*************************************************
  1189. * Toolbar Buttons
  1190. **************************************************/
  1191. .btn-toolbar .btn {
  1192. font-size: 0.9rem;
  1193. padding: 10px 14px 9px;
  1194. border: none;
  1195. }
  1196. .btn-toolbar .btn:first-child {
  1197. border-radius: 6px 0 0 6px;
  1198. }
  1199. .btn-toolbar .btn:last-child {
  1200. border-radius: 0 6px 6px 0;
  1201. }
  1202. .btn-toolbar .btn.btn-primary:hover,
  1203. .btn-toolbar .btn.btn-primary:focus {
  1204. background-color: {{ .Get "primary_light" }} !important;
  1205. }
  1206. .btn-toolbar .btn.btn-primary:active,
  1207. .btn-toolbar .btn.btn-primary.active {
  1208. background-color: {{ .Get "primary_dark" }} !important;
  1209. }
  1210. .btn-primary:not(:disabled):not(.disabled).active:focus,
  1211. .btn-primary:not(:disabled):not(.disabled):active:focus,
  1212. .show > .btn-primary.dropdown-toggle:focus {
  1213. box-shadow: 0 0 0 .2rem {{ .Get "primary_light" }};
  1214. }
  1215. /*************************************************
  1216. * Navigation Bar
  1217. **************************************************/
  1218. .navbar {
  1219. min-height: 70px !important;
  1220. }
  1221. .navbar-light {
  1222. background: {{ .Get "menu_primary" }} !important;
  1223. box-shadow: 0 0.125rem 0.25rem 0 rgba(0,0,0,.11)
  1224. }
  1225. .navbar-light .navbar-toggler {
  1226. border-color: transparent;
  1227. }
  1228. .navbar-toggler {
  1229. color: {{ .Get "menu_text" }} !important;
  1230. }
  1231. .navbar-light .navbar-toggler:focus,
  1232. .navbar-light .navbar-toggler:hover {
  1233. background-color: transparent;
  1234. }
  1235. .dropdown-menu,
  1236. nav#navbar-main li.nav-item {
  1237. font-size: {{ .Get "font_size_small" }}px;
  1238. }
  1239. .navbar-light .navbar-nav>.nav-item>.nav-link,
  1240. .navbar-light .navbar-nav>.nav-item>.nav-link:focus,
  1241. .navbar-light .navbar-nav>.nav-item>.nav-link:hover {
  1242. white-space: nowrap;
  1243. -webkit-transition: 0.2s ease;
  1244. transition: 0.2s ease;
  1245. color: {{ .Get "menu_text" }};
  1246. font-weight: 600;
  1247. }
  1248. .navbar-light .navbar-nav>.nav-item>.nav-link:focus {
  1249. color: {{ .Get "menu_text" }};
  1250. background-color: transparent;
  1251. }
  1252. .navbar-light .navbar-nav>.nav-item>.nav-link:hover {
  1253. color: {{ .Get "menu_text_active" }};
  1254. background-color: transparent;
  1255. }
  1256. .navbar-light .navbar-nav>li.nav-item>a.active,
  1257. .navbar-light .navbar-nav>li.nav-item>a.active:focus,
  1258. .navbar-light .navbar-nav>li.nav-item>a.active:hover {
  1259. color: {{ .Get "menu_text_active" }};
  1260. font-weight: 700;
  1261. background-color: transparent !important; /* Override Bootstrap. */
  1262. }
  1263. .navbar-brand,
  1264. .navbar-nav li.nav-item a.nav-link {
  1265. height: inherit;
  1266. line-height: 50px;
  1267. padding-top: 10px;
  1268. padding-bottom: 10px;
  1269. }
  1270. .navbar-brand img {
  1271. max-height: 50px;
  1272. }
  1273. .navbar-light .navbar-toggler .icon-bar {
  1274. background-color: {{ .Get "menu_text" }} !important;
  1275. }
  1276. .dropdown-menu {
  1277. background-color: {{ .Get "menu_primary" }} !important;
  1278. }
  1279. .dropdown-menu > li > a {
  1280. display: block;
  1281. padding: 3px 20px;
  1282. clear: both;
  1283. font-weight: 400;
  1284. line-height: 1.42857143;
  1285. color: {{ .Get "menu_text" }};
  1286. white-space: nowrap;
  1287. }
  1288. .dropdown-menu>li>a:focus,
  1289. .dropdown-menu>li>a:hover {
  1290. color: {{ .Get "menu_text_active" }};
  1291. text-decoration: none;
  1292. background-color: {{ .Get "menu_primary" }};
  1293. }
  1294. .dropdown-menu > .active,
  1295. .dropdown-menu > .active:focus,
  1296. .dropdown-menu > .active:hover {
  1297. color: {{ .Get "menu_primary" }};
  1298. text-decoration: none;
  1299. background-color: {{ .Get "menu_text_active" }};
  1300. outline: 0;
  1301. }
  1302. .navbar-light .navbar-nav>.open>a,
  1303. .navbar-light .navbar-nav>.open>a:focus,
  1304. .navbar-light .navbar-nav>.open>a:hover,
  1305. .navbar-light .navbar-nav>.open>a:visited {
  1306. color: {{ .Get "menu_text" }} !important;
  1307. background-color: {{ .Get "menu_primary" }} !important;
  1308. }
  1309. .navbar-light .navbar-brand {
  1310. font-weight: bold;
  1311. font-size: 1.2em;
  1312. color: {{ .Get "menu_title" }};
  1313. }
  1314. .navbar-light .navbar-brand:focus,
  1315. .navbar-light .navbar-brand:hover {
  1316. color: {{ .Get "menu_title" }};
  1317. background-color: transparent;
  1318. }
  1319. @media screen and (max-width: 1200px) {
  1320. .navbar {
  1321. min-height: 50px !important;
  1322. }
  1323. .navbar-brand,
  1324. .navbar-nav li.nav-item a.nav-link {
  1325. height: inherit;
  1326. line-height: 40px;
  1327. padding-top: 5px;
  1328. padding-bottom: 5px;
  1329. }
  1330. .navbar-brand img {
  1331. max-height: 40px;
  1332. }
  1333. .navbar-toggler {
  1334. display: block;
  1335. }
  1336. .fixed-top {
  1337. top: 0;
  1338. border-width: 0 0 1px;
  1339. }
  1340. .navbar-nav > li.nav-item > a.nav-link {
  1341. padding-top: 10px;
  1342. padding-bottom: 10px;
  1343. line-height: normal;
  1344. }
  1345. .dropdown-menu > li > a {
  1346. display: block;
  1347. padding: 3px 20px;
  1348. clear: both;
  1349. font-weight: 400;
  1350. line-height: 1.42857143;
  1351. color: {{ .Get "menu_text" }};
  1352. white-space: nowrap;
  1353. }
  1354. .navbar-light .navbar-nav .open .dropdown-menu {
  1355. position: static;
  1356. width: auto;
  1357. margin-top: 0;
  1358. background-color: transparent;
  1359. border: 0;
  1360. box-shadow: none;
  1361. }
  1362. .navbar-light .navbar-nav .open .dropdown-menu > li > a {
  1363. padding: 5px 15px 5px 25px;
  1364. line-height: 20px;
  1365. color: {{ .Get "menu_text" }};
  1366. }
  1367. .navbar-light .navbar-nav .open .dropdown-menu > li > a:focus,
  1368. .navbar-light .navbar-nav .open .dropdown-menu > li > a:hover {
  1369. color: inherit;
  1370. background-color: transparent;
  1371. }
  1372. .navbar-light .navbar-nav .open .dropdown-menu >.nav-item> .active,
  1373. .navbar-light .navbar-nav .open .dropdown-menu >.nav-item> .active:focus,
  1374. .navbar-light .navbar-nav .open .dropdown-menu >.nav-item> .active:hover {
  1375. color: {{ .Get "menu_text_active" }};
  1376. background-color: transparent;
  1377. }
  1378. .collapse.in {
  1379. display: block !important;
  1380. }
  1381. }
  1382. /*************************************************
  1383. * Tables
  1384. **************************************************/
  1385. table {
  1386. width: 100%;
  1387. max-width: 100%;
  1388. margin-bottom: 1rem;
  1389. font-size: 0.93rem;
  1390. }
  1391. table > thead > tr > th,
  1392. table > tbody > tr > th,
  1393. table > tfoot > tr > th,
  1394. table > thead > tr > td,
  1395. table > tbody > tr > td,
  1396. table > tfoot > tr > td {
  1397. padding: 8px;
  1398. line-height: 1.43;
  1399. vertical-align: top;
  1400. border-top: 1px solid #ddd;
  1401. }
  1402. table > thead > tr > th {
  1403. vertical-align: bottom;
  1404. border-bottom: 2px solid #ddd;
  1405. }
  1406. table > caption + thead > tr:first-child > th,
  1407. table > colgroup + thead > tr:first-child > th,
  1408. table > thead:first-child > tr:first-child > th,
  1409. table > caption + thead > tr:first-child > td,
  1410. table > colgroup + thead > tr:first-child > td,
  1411. table > thead:first-child > tr:first-child > td {
  1412. border-top: 0;
  1413. }
  1414. table > tbody + tbody {
  1415. border-top: 2px solid #ddd;
  1416. }
  1417. table table {
  1418. background-color: #fff;
  1419. }
  1420. /* Table Striped */
  1421. table > tbody > tr:nth-child(odd) > td,
  1422. table > tbody > tr:nth-child(odd) > th {
  1423. background-color: #f9f9f9;
  1424. }
  1425. /* Table Hover */
  1426. table > tbody > tr:hover > td,
  1427. table > tbody > tr:hover > th {
  1428. background-color: #e5e5e5;
  1429. }
  1430. /*************************************************
  1431. * Alerts
  1432. **************************************************/
  1433. div.alert p {
  1434. position: relative;
  1435. display: block;
  1436. font-size: 1rem;
  1437. margin-left: 2rem;
  1438. margin-top: 0;
  1439. margin-bottom: 0;
  1440. }
  1441. div.alert p:first-child::before {
  1442. position: absolute;
  1443. top: -0.5rem;
  1444. left: -2rem;
  1445. font-size: 1.5rem;
  1446. color: #209cee;
  1447. font-family: 'Font Awesome 5 Free';
  1448. font-weight: 900;
  1449. content: '\f05a';
  1450. width: 1.5rem;
  1451. text-align: center;
  1452. }
  1453. div.alert-warning p:first-child::before {
  1454. font-family: 'Font Awesome 5 Free';
  1455. font-weight: 900;
  1456. color: #ff3860;
  1457. content: '\f071';
  1458. }
  1459. div.alert a {
  1460. color: currentColor;
  1461. text-decoration: none;
  1462. border-bottom: solid 1px currentColor;
  1463. }
  1464. .alert-note {
  1465. color: #12537e;
  1466. background-color: #f6fbfe;
  1467. border-color: #209cee;
  1468. }
  1469. .alert-warning {
  1470. color: #cd0930;
  1471. background-color: #fff5f7;
  1472. border-color: #ff3860;
  1473. }
  1474. /*************************************************
  1475. * Documentation layout
  1476. **************************************************/
  1477. .docs-article-container {
  1478. max-width: 760px;
  1479. }
  1480. /* Documentation: article footer. */
  1481. .docs .body-footer {
  1482. border-top: 1px solid #e8e8e8;
  1483. margin-top: 30px;
  1484. padding-top: 10px;
  1485. font-size: 14px;
  1486. color: #707070;
  1487. }
  1488. /* Docs content. */
  1489. .docs-content {
  1490. order: 1;
  1491. position: relative;
  1492. }
  1493. .docs-content>h2[id],
  1494. .docs-content>h3[id],
  1495. .docs-content>h4[id] {
  1496. pointer-events: none;
  1497. }
  1498. .docs-content>ol li,
  1499. .docs-content>ul li {
  1500. margin-bottom: .25rem;
  1501. }
  1502. /* Docs search. */
  1503. .docs-search {
  1504. position: relative;
  1505. padding: 1rem 15px;
  1506. margin-right: -15px;
  1507. margin-left: -15px;
  1508. border-bottom: 1px solid rgba(0, 0, 0, .05);
  1509. }
  1510. .docs-search .form-control:focus {
  1511. border-color: {{ .Get "primary" }};
  1512. box-shadow: 0 0 0 3px {{ .Get "primary_light" }};
  1513. }
  1514. /* Docs sidebar. */
  1515. .docs-sidebar {
  1516. order: 0;
  1517. border-bottom: 1px solid rgba(0, 0, 0, .1)
  1518. }
  1519. @media (min-width:768px) {
  1520. .docs-sidebar {
  1521. border-right: 1px solid rgba(0, 0, 0, .1)
  1522. }
  1523. @supports ((position:-webkit-sticky) or (position:sticky)) {
  1524. .docs-sidebar {
  1525. position: -webkit-sticky;
  1526. position: sticky;
  1527. top: 51px;
  1528. z-index: 10;
  1529. height: calc(100vh - 51px)
  1530. }
  1531. }
  1532. }
  1533. @media (min-width:1200px) {
  1534. .docs-sidebar {
  1535. border-right: 1px solid rgba(0, 0, 0, .1)
  1536. }
  1537. @supports ((position:-webkit-sticky) or (position:sticky)) {
  1538. .docs-sidebar {
  1539. position: -webkit-sticky;
  1540. position: sticky;
  1541. top: 71px;
  1542. z-index: 10;
  1543. height: calc(100vh - 71px)
  1544. }
  1545. }
  1546. }
  1547. @media (min-width:1200px) {
  1548. .docs-sidebar {
  1549. flex: 0 1 320px
  1550. }
  1551. }
  1552. /* Docs sidebar li>a. */
  1553. .docs-sidebar .nav>li>a {
  1554. display: block;
  1555. padding: .25rem 1.5rem;
  1556. font-size: 0.8rem;
  1557. color: rgba(0, 0, 0, .65);
  1558. }
  1559. .docs-sidebar .nav>li>a:hover {
  1560. color: rgba(0, 0, 0, .85);
  1561. text-decoration: none;
  1562. background-color: transparent;
  1563. }
  1564. .docs-sidebar .docs-toc-item.active a,
  1565. .docs-sidebar .nav>.active:hover>a,
  1566. .docs-sidebar .nav>.active>a {
  1567. font-weight: bold;
  1568. color: {{ .Get "primary" }};
  1569. background-color: transparent;
  1570. }
  1571. /* Docs links. */
  1572. .docs-toggle {
  1573. line-height: 1;
  1574. font-size: 1.2rem;
  1575. color: {{ .Get "primary" }};
  1576. background-color: transparent;
  1577. }
  1578. .docs-links {
  1579. padding-top: 1rem;
  1580. padding-bottom: 1rem;
  1581. margin-right: -15px;
  1582. margin-left: -15px;
  1583. }
  1584. @media (min-width:768px) {
  1585. @supports ((position:-webkit-sticky) or (position:sticky)) {
  1586. .docs-links {
  1587. max-height: calc(100vh - 5rem - 71px);
  1588. overflow-y: auto;
  1589. }
  1590. }
  1591. }
  1592. @media (min-width:768px) {
  1593. .docs-links {
  1594. display: block!important;
  1595. }
  1596. }
  1597. /* Docs TOC. */
  1598. .docs-toc {
  1599. order: 2;
  1600. padding-top: 1.5rem;
  1601. padding-bottom: 1.5rem;
  1602. font-size: .875rem
  1603. }
  1604. @supports ((position:-webkit-sticky) or (position:sticky)) {
  1605. .docs-toc {
  1606. position: -webkit-sticky;
  1607. position: sticky;
  1608. top: 71px;
  1609. height: calc(100vh - 71px);
  1610. overflow-y: auto
  1611. }
  1612. }
  1613. /* Docs TOC item links. */
  1614. .docs-toc-link {
  1615. display: block;
  1616. padding: .25rem 1.5rem;
  1617. font-weight: bold;
  1618. color: rgba(0, 0, 0, .65);
  1619. }
  1620. .docs-toc-link:hover {
  1621. color: rgba(0, 0, 0, .85);
  1622. text-decoration: none;
  1623. }
  1624. .docs-toc-item.active {
  1625. margin-bottom: 1rem;
  1626. }
  1627. .docs-toc-item.active:not(:first-child) {
  1628. margin-top: 1rem;
  1629. }
  1630. .docs-toc-item.active>.docs-toc-link {
  1631. color: rgba(0, 0, 0, .85);
  1632. }
  1633. .docs-toc-item.active>.docs-toc-link:hover {
  1634. background-color: transparent;
  1635. }
  1636. .docs-sidenav {
  1637. display: block;
  1638. }
  1639. /* Docs TOC nav. */
  1640. .docs-toc-title {
  1641. color: #b5b5b5;
  1642. font-size: .875rem;
  1643. font-weight: 600;
  1644. padding-left: calc(1.5rem + 1px);
  1645. margin-bottom: .5rem;
  1646. }
  1647. #TableOfContents {
  1648. padding-left: 0;
  1649. border-left: 1px solid #eee;
  1650. }
  1651. #TableOfContents ul,
  1652. ul.toc-top {
  1653. padding-left: 0;
  1654. }
  1655. #TableOfContents ul ul {
  1656. display: none;
  1657. }
  1658. #TableOfContents li {
  1659. display: block;
  1660. }
  1661. #TableOfContents li a,
  1662. .toc-top li a {
  1663. display: block;
  1664. padding: .125rem 1.5rem;
  1665. color: #99979c;
  1666. font-size: 0.7rem;
  1667. }
  1668. #TableOfContents li a:hover,
  1669. .toc-top li a:hover {
  1670. color: {{ .Get "primary" }};
  1671. text-decoration: none;
  1672. }
  1673. /* Docs achnorjs links. */
  1674. .anchorjs-link {
  1675. font-weight: 400;
  1676. color: {{ .Get "primary_dark" }};
  1677. transition: color .16s linear;
  1678. }
  1679. .anchorjs-link:hover {
  1680. color: {{ .Get "primary" }};
  1681. text-decoration: none;
  1682. }
  1683. /*************************************************
  1684. * Dark themed components
  1685. **************************************************/
  1686. body.dark,
  1687. .dark .docs-toc-link,
  1688. .dark .docs-sidebar .nav > li:not(.active) > a,
  1689. .dark .modal button.close,
  1690. .dark input,
  1691. .dark .form-control,
  1692. .dark .form-control:focus {
  1693. color: rgb(248, 248, 242);
  1694. background: rgb(40, 42, 54);
  1695. }
  1696. .dark .form-control {
  1697. background-color: rgb(68, 71, 90);
  1698. }
  1699. .dark .form-control:focus {
  1700. background-color: rgb(68, 71, 90);
  1701. border-color: {{ .Get "primary" }};
  1702. box-shadow: 0 0 0 .2rem {{ .Get "primary_dark" }};
  1703. }
  1704. .dark h1,
  1705. .dark h2,
  1706. .dark h3,
  1707. .dark h4,
  1708. .dark h5,
  1709. .dark h6 {
  1710. color: rgb(152, 166, 173);
  1711. }
  1712. .dark pre,
  1713. .dark code {
  1714. color: rgb(139, 233, 253);
  1715. background-color: rgb(68, 71, 90);
  1716. }
  1717. .dark pre {
  1718. background-color: rgb(68, 71, 90);
  1719. border-color: rgb(68, 71, 90);
  1720. }
  1721. .dark .markup-quote {
  1722. background-image: linear-gradient(to bottom, rgba(233, 231, 245, 0.2), rgba(233, 231, 245, 0.2));
  1723. }
  1724. .dark #MathJax_Zoom {
  1725. background-color: rgb(68, 71, 90) !important;
  1726. }
  1727. .dark ul.share li a {
  1728. background-color: {{ .Get "primary" }};
  1729. }
  1730. .dark table table {
  1731. background-color: rgb(40, 42, 54);
  1732. }
  1733. /* Table Striped */
  1734. .dark table > tbody > tr:nth-child(odd) > td,
  1735. .dark table > tbody > tr:nth-child(odd) > th {
  1736. background-color: rgb(50, 52, 64);
  1737. }
  1738. /* Table Hover */
  1739. .dark table > tbody > tr:hover > td,
  1740. .dark table > tbody > tr:hover > th {
  1741. background-color: rgb(60, 62, 74);
  1742. }
  1743. .dark .article-title a {
  1744. color: #fff;
  1745. }
  1746. .dark #profile .portrait-title h2 {
  1747. color: #fff;
  1748. }
  1749. .dark #profile .portrait-title h3 {
  1750. color: rgba(255, 255, 255, 0.54);
  1751. }
  1752. .dark ul.ul-edu li .description p.institution {
  1753. color: rgba(255, 255, 255, 0.6);
  1754. }
  1755. .dark .pub-icon {
  1756. color: rgba(255, 255, 255, 0.54);
  1757. }
  1758. .dark .talk-metadata {
  1759. color: rgba(255, 255, 255, 0.54);
  1760. }
  1761. .dark .pagination li > a, .pagination li > span {
  1762. background-color: rgb(40, 42, 54);
  1763. border: 1px solid #ddd;
  1764. }
  1765. .dark .card {
  1766. background: #343a40;
  1767. }
  1768. .dark .card h4 a {
  1769. color: {{ .Get "primary" }};
  1770. border-bottom: solid 1px transparent;
  1771. }
  1772. .dark .card .card-image.hover-overlay::before {
  1773. background: #666;
  1774. }
  1775. .dark .card .card-image.hover-overlay::after {
  1776. color: #fff;
  1777. }
  1778. .dark .navbar-light {
  1779. box-shadow: 0 0.125rem 0.25rem 0 rgba(255, 255, 255, .11);
  1780. border-color: #070707;
  1781. }
  1782. .dark select {
  1783. background: rgb(40, 42, 54);
  1784. color: rgb(248, 248, 242);
  1785. }
  1786. /* Algolia search input */
  1787. .dark .ais-search-box--input {
  1788. background-color: rgb(68, 71, 90);
  1789. }
  1790. .dark #search-query {
  1791. background-color: rgb(68, 71, 90);
  1792. }
  1793. .dark .badge-light {
  1794. color: rgba(255, 255, 255, .68);
  1795. background: rgba(255, 255, 255, .2);
  1796. }
  1797. .dark .badge-light[href]:focus,
  1798. .dark .badge-light[href]:hover {
  1799. background: rgba(255, 255, 255, .3);
  1800. }
  1801. .dark a.badge:focus,
  1802. .dark a.badge:hover {
  1803. color: rgba(255, 255, 255, .68);
  1804. }
  1805. .dark .btn-primary,
  1806. .dark .btn.btn-primary.active {
  1807. color: initial;
  1808. }