ui.css 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788
  1. /* Website fonts. */
  2. @font-face {
  3. font-family: 'Nunito';
  4. src: url('/fonts/Nunito-Regular.ttf');
  5. }
  6. @font-face {
  7. font-family: 'Latin';
  8. src: url('/fonts/Latin-Modern-Mono-Light-Bold.otf');
  9. }
  10. /* Elements to be shown only in large screens. */
  11. .desktop{
  12. display: initial;
  13. }
  14. @media screen and (max-width : 800px){
  15. .desktop{
  16. display: none;
  17. }
  18. }
  19. /* Elements to be shown only in small screens. */
  20. .mobile{
  21. display: none;
  22. }
  23. @media screen and (max-width : 800px){
  24. .mobile{
  25. display: initial !important;
  26. }
  27. }
  28. /* Styles for the body of the page. */
  29. html {
  30. height: 100%;
  31. }
  32. body{
  33. height: 100%;
  34. padding: 0;
  35. margin: 0;
  36. background-color: #000000;
  37. font-size: 90%;
  38. min-height: 100vh;
  39. flex-direction: column;
  40. display: flex;
  41. }
  42. @media screen and (max-width : 800px){
  43. body{
  44. font-size: 100%;
  45. }
  46. }
  47. /* Style for all links. */
  48. a{
  49. color: #555555;
  50. text-shadow: 0 0 0.5em #7777ff;
  51. text-decoration: none;
  52. }
  53. /* Styles for elements that look and act as links. */
  54. .fake_a{
  55. color: #555555;
  56. text-shadow: 0 0 0.5em #7777ff;
  57. text-decoration: none;
  58. cursor: pointer;
  59. }
  60. /* Bold elements. */
  61. .bold{
  62. font-weight: bold;
  63. }
  64. /* Elements that look and act as buttons or links.*/
  65. .pointer {
  66. cursor: pointer;
  67. }
  68. /* Hidden elements. */
  69. .hidden{
  70. display: none;
  71. }
  72. img.slider{
  73. width: 1em;
  74. height: 1em;
  75. transition: all .3s ease-in-out;
  76. }
  77. div#cover{
  78. display: none;
  79. background-color: #000000bb;
  80. opacity: 0;
  81. transition: opacity .3s ease-in-out;
  82. position: fixed;
  83. top: 0;
  84. left: 0;
  85. right: 0;
  86. bottom: 0;
  87. }
  88. header{
  89. background-color: #000000;
  90. width: 100%;
  91. text-align: center;
  92. }
  93. header div#logo{
  94. color: #ffffff;
  95. font-size: 4em;
  96. font-family: 'Latin';
  97. }
  98. header nav{
  99. width: 100%;
  100. }
  101. header nav a{
  102. font-size: 1.5em;
  103. margin: 0.5em;
  104. color: #ffffff;
  105. text-decoration: none;
  106. position: relative;
  107. }
  108. header nav a:hover{
  109. color: #ffffff;
  110. }
  111. header nav a:before {
  112. content: " ";
  113. position: absolute;
  114. width: 100%;
  115. height: 0.1em;
  116. bottom: -0.1em;
  117. left: 0;
  118. background-color: #ffffff;
  119. visibility: hidden;
  120. transform: scaleX(0);
  121. transition: all 0.3s ease-in-out 0s;
  122. }
  123. header nav a:hover:before {
  124. visibility: visible;
  125. transform: scaleX(1);
  126. }
  127. header nav a img{
  128. height: 1.5em;
  129. vertical-align: bottom;
  130. }
  131. @media screen and (max-width : 800px){
  132. header div#logo{
  133. /* Adjusted for the text 'inigoValentin' */
  134. font-size: 12vw;
  135. }
  136. header nav{
  137. overflow: hidden;
  138. white-space: nowrap;
  139. width: 95%;
  140. margin: auto;
  141. }
  142. header nav a{
  143. display: inline-block;
  144. width: 30%;
  145. margin: 0;
  146. padding: 0.5em 0;
  147. text-align: center;
  148. color: #ffffff;
  149. text-decoration: none;
  150. border: 0.1em solid #aaaaaa;
  151. background-color: #222222;
  152. font-size: 4vw;
  153. }
  154. header nav a img{
  155. height: 1em;
  156. width: 1em;
  157. vertical-align: middle;
  158. margin-right: 0.2em;
  159. }
  160. }
  161. /* The actual footer */
  162. footer{
  163. background-color: #000000;
  164. font-size: 80%;
  165. text-align: center;
  166. height: 3.5em;
  167. margin-left: auto;
  168. margin-right: auto;
  169. margin-top: 3em;
  170. margin-bottom: 3.5em;
  171. color: #dddddd;
  172. bottom: 0;
  173. left: 0;
  174. padding: 1em 2em 3em 2em;
  175. }
  176. @media screen and (max-width : 800px){
  177. footer{
  178. padding: 1em 0;
  179. margin-top: 1em;
  180. margin-bottom: 7em;
  181. }
  182. }
  183. /* A table containing all the elements in the footer */
  184. footer table#footer_table{
  185. margin-left: auto;
  186. margin-right: auto;
  187. width: 80%;
  188. table-layout: fixed;
  189. }
  190. @media screen and (max-width : 800px){
  191. footer table#footer_table{
  192. width: 95%;
  193. }
  194. }
  195. /* An horizontal line separating the page contents from the footer. */
  196. footer table#footer_table hr#footer_separator{
  197. border: 0;
  198. background-color: #444444;
  199. height: 0.1em;
  200. width: 70%;
  201. }
  202. /* Left area of the footer. */
  203. footer table#footer_table td#footer_left{
  204. width: 33%;
  205. text-align: center;
  206. }
  207. /* Social label. */
  208. footer table#footer_table td#footer_left span#footer_follow{
  209. display: block;
  210. margin: 0 0 1em 0;
  211. }
  212. @media screen and (max-width : 800px){
  213. /* It already has the class 'desktop', which usually hiddes elements */
  214. /* for small devices, but I'm overriding the display property */
  215. footer table#footer_table td#footer_left span#footer_follow{
  216. display: none;
  217. }
  218. }
  219. /* Icons for social media */
  220. footer table#footer_table td#footer_left img.footer_social_icon{
  221. width: 2em;
  222. margin: 0.2em;
  223. vertical-align: middle;
  224. background-color: #ffffff;
  225. border: 0.1em solid #ffffff;
  226. border-radius: 0.3em;
  227. }
  228. /* Middle area of the footer */
  229. footer table#footer_table td#footer_center{
  230. width: 33%;
  231. text-align: center;
  232. }
  233. @media screen and (max-width : 800px){
  234. footer table#footer_table td#footer_center{
  235. display: none;
  236. }
  237. }
  238. /* Right area of the footer */
  239. footer table#footer_table td#footer_right{
  240. width: 33%;
  241. text-align: center;
  242. }
  243. /* Help link. */
  244. footer table#footer_table td#footer_right span#footer_help{
  245. display: block;
  246. margin: 0 0 1em 0;
  247. }
  248. /* Language flags. */
  249. footer table#footer_table td#footer_right a.lang img{
  250. height: 1em;
  251. margin: 0.5em;
  252. border-radius: 0.2em;
  253. border: 0.15em solid #555555;
  254. cursor: pointer;
  255. box-shadow: 0 0 0.7em #dde;
  256. transition: all .3s ease-in-out;
  257. }
  258. footer table#footer_table td#footer_right a.lang img:hover{
  259. box-shadow: 0 0 1em #111;
  260. }
  261. @media screen and (max-width : 800px){
  262. footer table#footer_table td#footer_right a.lang img{
  263. height: 1.2em;
  264. margin: 0.1em;
  265. border-radius: 0.1em;
  266. border: 0.1em solid #555555;
  267. box-shadow: 0 0 0 #dde;
  268. }
  269. }
  270. main{
  271. background-color: #000000;
  272. width: 100%;
  273. max-width: 90em;
  274. margin: 2em auto;
  275. padding: 0;
  276. text-align: center;
  277. flex: 1;
  278. }
  279. @media screen and (max-width : 800px){
  280. main{
  281. width: 100%;
  282. margin: 1em auto;
  283. }
  284. }
  285. section{
  286. text-align: left;
  287. margin: 0.5em;
  288. padding: 1em;
  289. background-color: #f0f0f0;
  290. border: 0.1em solid #003300;
  291. overflow: hidden;
  292. border-top-left-radius: 0.5em;
  293. border-top-right-radius: 0.5em;
  294. border-bottom-left-radius: 1.5em;
  295. border-bottom-right-radius: 1.5em;
  296. }
  297. @media screen and (max-width : 800px){
  298. section{
  299. margin: 1em;
  300. padding: 0.2em;
  301. }
  302. }
  303. section h3{
  304. position: relative;
  305. font-weight: bold;
  306. color: #ffffff;
  307. background-color: #60ae29;
  308. border-bottom: 0.1em solid #003300;
  309. font-size: 150%;
  310. padding: 0.5em 2em 0.2em 3em;
  311. margin: -0.8em -1em 1em -1em;
  312. font-variant: small-caps;
  313. }
  314. section h3:before {
  315. content: " /";
  316. opacity: 0.3;
  317. }
  318. @media screen and (max-width : 800px){
  319. section h3{
  320. font-size: 120%;
  321. padding: 1em 2em 0.2em 1.5em;
  322. }
  323. }
  324. /* .entry is a style only class to show content. Must be allways children os a .lighted element */
  325. section article{
  326. border: 0.1em solid #aaffaa00;
  327. border-radius: 0.3em;
  328. padding: 0.5em;
  329. margin: 0.5em;
  330. transition: all .4s ease-in-out;
  331. }
  332. @media screen and (max-width : 800px){
  333. section article{
  334. border-radius: 0.3em;
  335. padding: 0.2em;
  336. margin: 0.2em;
  337. }
  338. }
  339. section article h4{
  340. font-variant: small-caps;
  341. text-decoration: underline;
  342. text-decoration-color: #33553377;
  343. font-size: 140%;
  344. margin: 0.2em auto 1em auto;
  345. }
  346. @media screen and (max-width : 800px){
  347. section article h4{
  348. font-size: 120%;
  349. }
  350. }
  351. section section_list:hover{
  352. background-color: #efffef;
  353. border: 0.1em solid #aaffaaff;
  354. }
  355. /* Style for the mathces in search results */
  356. span.result_counter{
  357. margin-left: 1.2em;
  358. margin-bottom: 0.5em;
  359. font-weight: bold;
  360. font-style: italic;
  361. }
  362. /* Shown when no records on database */
  363. div.unavailable{
  364. margin-left: 4em;
  365. font-style: italic;
  366. }
  367. /**********************************
  368. * Styles to be applied to some *
  369. * horizontally scrollable *
  370. * elements *
  371. **********************************/
  372. /* Horizontall scrollbar that apears when a project has lots of renders */
  373. .slider::-webkit-scrollbar{
  374. width: 0.5em;
  375. height: 0.25em;
  376. background-color: #444444;
  377. }
  378. .slider::-webkit-scrollbar-thumb{
  379. background-color: #cccccc;
  380. border-radius: 0.714em;
  381. }
  382. .slider::-webkit-scrollbar-thumb:hover{
  383. background-color: #cccccc;
  384. border: 0.143em solid #000000;
  385. }
  386. .slider::-webkit-scrollbar-thumb:active{
  387. background-color: #cccccc;
  388. border: 0.143em solid #000000;
  389. }
  390. /* Icons for sharing page in a social network */
  391. img.social_icon{
  392. width: 3em;
  393. height: 3em;
  394. }
  395. /* Elements that should have the cursor as pointer */
  396. .pointer{
  397. cursor: pointer;
  398. }
  399. /**********************************
  400. * Styles for diverse input *
  401. * elements. Type-assigned *
  402. **********************************/
  403. /* Font for all the input elements */
  404. input{
  405. font-family: 'Nunito';
  406. }
  407. /* Style for the "submit" type elements in forms */
  408. input[type=submit]{
  409. font-weight: bold;
  410. color: #cccccc;
  411. background-color: #555555;
  412. border: 0.143em solid #bbbbbb;
  413. border-radius: 0.429em;
  414. padding: 0.5em;
  415. text-shadow: 0 0 0.75em #000000;
  416. cursor: pointer;
  417. }
  418. /* Style forr buttons */
  419. input[type=button]{
  420. cursor: pointer;
  421. display: inline-block;
  422. color: #cccccc;
  423. background-color: #278c3a;
  424. border: 0.143em solid #66bf38;
  425. border-radius: 0.429em;
  426. padding: 0.5em 0.8em;
  427. text-shadow: 0 0 0.75em #000000;
  428. text-decoration: none;
  429. font-family: 'Nunito';
  430. font-weight: bold;
  431. font-variant: small-caps;
  432. letter-spacing: 0.07em;
  433. font-size: 110%;
  434. box-shadow: inset 0 0 0.2em #082400;
  435. text-transform: capitalize;
  436. }
  437. @media screen and (max-width : 800px){
  438. input[type=button]{
  439. font-size: 120%;
  440. padding: 0.9em 1.4em;
  441. }
  442. }
  443. input[type=button]::first-letter{
  444. color: #ffffff;
  445. }
  446. input[type=button]:hover{
  447. color: #ffffff;
  448. background-color: #34b94d;
  449. box-shadow: inset 0 0 0.1em #000;
  450. border: 0.143em solid #285710;
  451. }
  452. input[type=button]:hover::first-letter{
  453. color: #ccffcc;
  454. }
  455. /* Style for textboxes */
  456. input[type=text]{
  457. font-weight: bold;
  458. color: #224422;
  459. background-color: #bbccbb;
  460. border: 0.286em solid #ddeedd;
  461. border-color: #dddddd;
  462. border-radius: 0.429em;
  463. padding: 0.25em;
  464. text-shadow: 0 0 0.5em #ffffff;
  465. }
  466. input[type=checkbox]{
  467. width: 1em;
  468. height: 1em;
  469. border-radius: 0.2em;
  470. border: 0.063em solid #005500;
  471. }
  472. /* Style for textareas */
  473. textarea{
  474. width: 80%;
  475. font-weight: bold;
  476. color: #444444;
  477. background-color: #bbbbbb;
  478. border: 0.286em solid #dddddd;
  479. border-color: #dddddd;
  480. border-radius: 0.286em;
  481. padding: 0.25em;
  482. text-shadow: 0 0 0.5em #ffffff;
  483. resize: none;
  484. }
  485. /* Style for selects */
  486. select{
  487. font-weight: bold;
  488. color: #444444;
  489. background-color: #bbbbbb;
  490. border: 0.286em solid #dddddd;
  491. border-radius: 0.286em;
  492. padding: 0.25em;
  493. text-shadow: 0 0 0.5em #ffffff;
  494. }
  495. /* Style for placeholders in input fields */
  496. ::-webkit-input-placeholder { /* WebKit browsers */
  497. color: #777777;
  498. }
  499. :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
  500. color: #777777;
  501. }
  502. ::-moz-placeholder { /* Mozilla Firefox 19+ */
  503. color: #777777;
  504. }
  505. :-ms-input-placeholder { /* Internet Explorer 10+ */
  506. color: #777777;
  507. }
  508. /* Style-only class user to indicate that a field is incorrect. Ususally this class is added to an element with js */
  509. .error{
  510. border-color: #ffaaaa;
  511. }
  512. /* Style for the textbox input when the entered text is not the expected one */
  513. input[type=text].error{
  514. border-color: #ffaaaa;
  515. }
  516. /* Style for the textared input when the entered text is not the expected one */
  517. textarea.error{
  518. border-color: #ffaaaa;
  519. }
  520. /* Style for buttons that act as links */
  521. a.a_button{
  522. display: inline-block;
  523. color: #cccccc;
  524. background-color: #278c3a;
  525. border: 0.143em solid #66bf38;
  526. border-radius: 0.429em;
  527. padding: 0.5em 0.8em;
  528. text-shadow: 0 0 0.75em #000000;
  529. text-decoration: none;
  530. font-family: 'Nunito';
  531. font-weight: bold;
  532. font-variant: small-caps;
  533. letter-spacing: 0.07em;
  534. font-size: 110%;
  535. box-shadow: inset 0 0 0.2em #082400;
  536. text-transform: capitalize;
  537. transition: all .3s ease-in-out;
  538. }
  539. @media screen and (max-width : 800px){
  540. a.a_button{
  541. font-size: 100%;
  542. padding: 0.3em 0.2em;
  543. }
  544. }
  545. a.a_button::first-letter{
  546. color: #ffffff;
  547. }
  548. a.a_button:hover{
  549. color: #ffffff;
  550. background-color: #34b94d;
  551. box-shadow: inset 0 0 0.1em #000;
  552. border: 0.143em solid #285710;
  553. }
  554. a.a_button:hover::first-letter{
  555. color: #ccffcc;
  556. }
  557. /**********************************
  558. * Styles for comment-related *
  559. * elements *
  560. **********************************/
  561. /* Contains fields to identify the user before the comment can be posted. Hidden by css, must be displayed with js */
  562. div#identification_form{
  563. display: none;
  564. }
  565. /* Contain a comment, with the details and the text */
  566. div.comment{
  567. background-color: #efffef;
  568. border: 0.1em solid #aaffaa;
  569. border-radius: 0.3em;
  570. padding: 0.5em;
  571. margin: 0.5em;
  572. }
  573. /* User who posted the coment */
  574. div.comment h4.comment_user{
  575. margin-top: 0.417em;
  576. margin-bottom: 0;
  577. }
  578. div.comment h4.comment_user span.comment_user_registered{
  579. font-weight: bold;
  580. font-size: 110%;
  581. color: #005500;
  582. }
  583. /* Style for the comment's images */
  584. img.comment_image{
  585. border: 0.077em solid black;
  586. max-height: 6em;
  587. max-width: 60%;
  588. display: block;
  589. border: 0.133em solid black;
  590. margin-left: 0.938em;
  591. margin-bottom: 0.938em;
  592. box-shadow: 0 0 1em #444444;
  593. }
  594. /* Paragraph with the comment text */
  595. p.comment_text{
  596. width: auto;
  597. display: block;
  598. margin-top: 0.938em;
  599. margin-left: 0.938em;
  600. }
  601. span.comment_date{
  602. font-size: 80%;
  603. font-style: italic;
  604. }
  605. /* Input field for the comment text */
  606. textarea#new_comment_text{
  607. width: 98%;
  608. }
  609. /* Input field for the comment user */
  610. input#new_comment_user{
  611. width: 47%;
  612. }
  613. /* Input field for the comment email */
  614. input#new_comment_email{
  615. width: 47%;
  616. }
  617. /* Styles so the input field to upload an image with the comment looks like a button */
  618. label.image_upload {
  619. font-weight: bold;
  620. color: #cccccc;
  621. background-color: #555555;
  622. border: 0.067em solid #bbbbbb;
  623. border-radius: 0.2em;
  624. padding: 0.5em;
  625. text-shadow: 0 0 0.750em #000000;
  626. font-size: 0.813em; /*Same as buttons*/
  627. font-family: 'Nunito';
  628. }
  629. label.image_upload input {
  630. width: 0 !important;
  631. opacity: 0 !important;
  632. overflow: hidden !important;
  633. }
  634. /* Previsualization for the upload image in a comment */
  635. img#new_comment_image_preview{
  636. max-height: 7.692em;
  637. max-width: 11.538em;
  638. }
  639. /**********************************
  640. * Styles for the social buttons. *
  641. **********************************/
  642. a.share img.share{
  643. display: inline-block;
  644. vertical-align: top;
  645. overflow: hidden;
  646. width: 1.6em;
  647. height: 1.6em;
  648. border: 0.1em solid #003300;
  649. border-radius: 2em;
  650. box-shadow: 0 0 0.3em #005500;
  651. margin: 0.2em;
  652. transition: all .3s ease-in-out;
  653. }
  654. a.share img.share:hover{
  655. box-shadow: 0 0 0.7em #005500;
  656. border-radius: 0.7em;
  657. }
  658. span.technology{
  659. display: inline-block;
  660. }
  661. span.technology img.technology_logo{
  662. display: inline-block;
  663. position:relative;
  664. vertical-align: middle;
  665. border-radius: 50%;
  666. border-width: 0.2em;
  667. z-index: 2;
  668. background-color: #ffffff;
  669. border-style: solid;
  670. border-color: #000000;
  671. height: 1.5em;
  672. width: 1.5em;
  673. }
  674. span.technology span.technology_name{
  675. display: inline-block;
  676. position:relative;
  677. vertical-align: middle;
  678. border-radius: 15%;
  679. border-width: 0.2em;
  680. border-style: solid;
  681. padding: 0.1em 0.2em 0.1em 1.1em;
  682. z-index: 1;
  683. background-color: #ffffff;
  684. border-color: #000000;
  685. margin-left: -1.3em;
  686. font-size: 70%;
  687. font-weight: bold;
  688. }
  689. span.technology_1 span.technology_name{
  690. background-color: #f4a4a4;
  691. }
  692. span.technology_2 span.technology_name{
  693. background-color: #ffc898;
  694. }
  695. span.technology_3 span.technology_name{
  696. background-color: #a4c3f4;
  697. }
  698. span.technology_4 span.technology_name{
  699. background-color: #f4a4e4;
  700. }
  701. span.technology_5 span.technology_name{
  702. background-color: #a4f4a9;
  703. }
  704. span.technology_6 span.technology_name{
  705. background-color: #f4e8a4;
  706. }