A search interface for the Performing Patents Otherwise publication as part of the Politics of Patents case study (part of Copim WP6): this parses data from the archive of RTF files and provides additional data from the European Patent Office OPS API. https://patents.copim.ac.uk
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.

561 lines
10KB

  1. /*
  2. # @name: custom.css
  3. # @creation_date: 2022-09-07
  4. # @license: The MIT License <https://opensource.org/licenses/MIT>
  5. # @author: Simon Bowie <ad7588@coventry.ac.uk>
  6. # @author: Joana Chicau <web@joanachicau.com>
  7. # @purpose: Custom CSS to override Bootstrap 5 defaults
  8. # @acknowledgements:
  9. # Bootstrap 5.1.3: https://getbootstrap.com/
  10. */
  11. /* NEW STYLE by Joana Chicau */
  12. /* FONTS*/
  13. @font-face {
  14. font-family: "MetaAccanthis";
  15. src: url(fonts/MetaAccanthis_regular.ttf) format('truetype');
  16. font-weight: bold;
  17. }
  18. @font-face {
  19. font-family: "MetaAccanthisAlternate";
  20. src: url(fonts/MetaAccanthisAlternate.ttf) format('truetype');
  21. font-weight: normal;
  22. }
  23. @font-face {
  24. font-family: "Cmunobi";
  25. src: url(fonts/cmunobi.ttf) format('opentype');
  26. font-weight: normal;
  27. }
  28. @font-face {
  29. font-family: "Compagnon";
  30. src: url(fonts/Compagnon-Roman.otf) format('opentype');
  31. font-weight: normal;
  32. }
  33. @font-face {
  34. font-family: "Compagnon-B";
  35. src: url(fonts/Compagnon-Bold.otf) format('opentype');
  36. font-weight: bolder;
  37. }
  38. @font-face {
  39. font-family: "Compagnon-M";
  40. src: url(fonts/Compagnon-Medium.otf) format('opentype');
  41. font-weight: bold;
  42. }
  43. @font-face {
  44. font-family: "Compagnon-L";
  45. src: url(fonts/Compagnon-Light.otf) format('opentype');
  46. font-weight: lighter;
  47. }
  48. @font-face {
  49. font-family: "Compagnon-T";
  50. src: url(fonts/Compagnon-LightItalic.otf) format('opentype');
  51. font-weight: bold;
  52. }
  53. :root {
  54. --color-dark: #0c2039;
  55. --color-whitish: #fcfbff;
  56. --color-lightyellow: #ffff99;
  57. --color-gray: #edecec;
  58. --color-blue: #4f1dff;
  59. --color-pink: #c00041;
  60. --title-font: "Compagnon-T"; /* Cmunobi */
  61. --body-font: "Compagnon";
  62. /*@media screen and (min-width: 320px)*/
  63. --title-fontsize: calc(2rem + 1.5vw) !important;
  64. --body-fontsize: calc(14px + 6 * (100vw - 320px) / 1600) !important;
  65. --button-fontsize: calc(16px + 6 * (100vw - 320px) / 1600) !important;
  66. --button-fontsize-s: calc(14px + 6 * (100vw - 320px) / 1600) !important;
  67. --body-fontsize-s: calc(11px + 6 * (100vw - 320px) / 1600) !important;
  68. }
  69. ::selection {
  70. background-color: var(--color-lightyellow);
  71. }
  72. body {
  73. color: var(--color-dark);
  74. font-family: var(--body-font) !important;
  75. font-size: var(--body-fontsize) !important;
  76. cursor: crosshair;
  77. background-color: var(--color-whitish) !important;
  78. }
  79. .background-random{
  80. background-position: center center;
  81. background-size: cover;
  82. background-repeat: no-repeat;
  83. }
  84. h1, .h1 {
  85. font-family: var(--title-font) !important;
  86. font-size: var(--title-fontsize) !important;
  87. -webkit-text-stroke-width: 0.08rem;
  88. -webkit-text-stroke-color: black;
  89. letter-spacing: -0.05rem;
  90. }
  91. a.h1 {
  92. text-decoration: none;
  93. }
  94. a, a:visited {
  95. cursor: cell;
  96. color: var(--color-dark) !important;
  97. }
  98. a:hover {
  99. text-shadow: 1px 1px 10px var(--color-lightyellow);
  100. }
  101. p {
  102. margin-top: 0;
  103. margin-bottom: 0rem !important;
  104. }
  105. .contrast {
  106. color: var(--color-lightyellow) !important;
  107. -webkit-text-stroke-width: 0.08rem;
  108. -webkit-text-stroke-color: var(--color-lightyellow) !important;
  109. }
  110. /* overwrite */
  111. .p-5 {
  112. padding: 3.5rem !important;
  113. }
  114. /* INDEX */
  115. .border, .border-dark {
  116. border-color: var(--color-dark) !important;
  117. border-radius: 0.25rem;
  118. }
  119. .border-glow, hr {
  120. box-shadow: 1px 1px 4px var(--color-lightyellow);
  121. }
  122. input#inputsearch, select#searchopt, select#sort, input#submit {
  123. background: var(--color-dark) !important;
  124. color: var(--color-lightyellow) !important;
  125. border: none !important;
  126. border-radius: 0.25rem !important;
  127. margin: 0.25rem;
  128. padding-bottom: 0.35rem;
  129. }
  130. select#searchopt{
  131. padding: 0.25rem 0.5rem;
  132. }
  133. input#inputsearch {
  134. width: 350px;
  135. }
  136. input#submit:hover {
  137. box-shadow: 0.25rem 0.25rem 0.5rem var(--color-lightyellow) !important;
  138. }
  139. .button-search a, .button-search input, .button-search select, .button-search button {
  140. font-size: var(--button-fontsize);
  141. text-decoration: none;
  142. border-radius: 0.25rem;
  143. padding: 0.25rem 0.5rem;
  144. border: 0px;
  145. }
  146. .random-interferences a {
  147. font-size: var(--button-fontsize-s);
  148. color: var(--color-dark) !important;
  149. background: var(--color-lightyellow);
  150. padding-bottom: 0.45rem;
  151. }
  152. .random-interferences a:hover {
  153. box-shadow: inset 0.25rem 0.25rem 0.5rem var(--color-gray) !important;
  154. }
  155. .button-hidden-off a, .button-hidden-off button {
  156. color: var(--color-dark) !important;
  157. background: var(--color-gray);
  158. text-decoration: none;
  159. padding-bottom: 0.5rem;
  160. }
  161. .button-hidden-off a:hover, .button-hidden-off button:hover {
  162. box-shadow: 0.25rem 0.25rem 0.5rem var(--color-dark) !important;
  163. text-shadow: 1px 1px 10px var(--color-lightyellow);
  164. }
  165. .arrow-back {
  166. position: fixed;
  167. left: 0;
  168. margin: 0.5rem;
  169. }
  170. .action {
  171. margin: 1.5rem 3rem;
  172. z-index: 999;
  173. position: fixed;
  174. top: 0;
  175. right: 0;
  176. }
  177. .action button {
  178. color: var(--color-pink) !important;
  179. font-size: 2rem;
  180. background-color: transparent;
  181. border: none;
  182. }
  183. .action button:hover {
  184. color: var(--color-dark) !important;
  185. }
  186. #random-img-page .action button:hover {
  187. color: var(--color-whitish) !important;
  188. }
  189. button#notes-operations{
  190. position: fixed;
  191. top: 0;
  192. right:0;
  193. margin: 0.25rem 0.75rem;
  194. font-size: 2rem;
  195. color: var(--color-pink);
  196. background: transparent;
  197. border: 0.1rem solid var(--color-pink);
  198. border-radius: 5rem 3rem;
  199. height: 2rem;
  200. width: 2rem;
  201. line-height: 0.1rem;
  202. }
  203. button#notes-operations:hover {
  204. color: var(--color-dark) !important;
  205. }
  206. .info {
  207. font-family: var(--body-font) !important;
  208. color: var(--color-pink) !important;
  209. }
  210. .code {
  211. line-height: 1.2rem;
  212. font-size: var(--body-fontsize-s);
  213. margin: 0.5rem 1rem;
  214. }
  215. .operations {
  216. font-size: var(--body-fontsize-s);
  217. }
  218. .w-6 {
  219. max-width: 75%;
  220. }
  221. .mb-10{
  222. margin-bottom: 10rem;
  223. }
  224. .note-veritcal {
  225. font-size: var(--body-fontsize-s);
  226. position: absolute;
  227. right: 0;
  228. z-index: 200;
  229. margin: 0.5rem;
  230. border-radius: 0.25rem;
  231. padding: 0.15rem 0.25rem;
  232. writing-mode: vertical-rl;
  233. text-orientation: mixed;
  234. }
  235. .note-interference span {
  236. display: inline-flex;
  237. background-color: var(--color-lightyellow);
  238. width: 2rem;
  239. height: 1rem;
  240. }
  241. p.about-text {
  242. margin: 10% ;
  243. }
  244. .index-row {
  245. display: flex;
  246. width: 100%;
  247. flex-wrap: wrap;
  248. justify-content: space-evenly;
  249. flex-direction: row;
  250. align-items: center;
  251. }
  252. /* SEARCH */
  253. .search-links {
  254. font-size: var(--body-fontsize-s);
  255. }
  256. .emphasis {
  257. border-bottom: 0.10rem var(--color-lightyellow) solid;
  258. }
  259. .search_term {
  260. background: var(--color-lightyellow);
  261. }
  262. .ID-link-search {
  263. background: var(--color-lightyellow);
  264. }
  265. /* PAGE —> RANDOM IMAGES */
  266. body#random-img-page{
  267. background-color: var(--color-dark) !important;
  268. }
  269. #random-img-page .img-fluid {
  270. flex-shrink: 1;
  271. flex-basis: 10px;
  272. height: 50vh;
  273. box-shadow: 1px 1px 10px #fff6af;
  274. border-radius: 100%;
  275. transition: all 1s ease-in-out;
  276. }
  277. #random-img-page .img-fluid:hover {
  278. transform: scale(2.0);
  279. border-radius: 0.15rem;
  280. transform-origin: top left;
  281. opacity: 0.85;
  282. }
  283. /* PAGE —> RANDOM TITLES */
  284. #page-titles a, #page-titles span {
  285. font-size: 3.5vw; /* should be converted to calc */
  286. }
  287. .joint {
  288. padding:0rem 2.5rem ;
  289. }
  290. /* COMPARE —> 2 RANDOM PATENTS */
  291. .skewY {
  292. transform: skewY(-20deg);
  293. }
  294. .compare {
  295. display: flex;
  296. flex-wrap: wrap;
  297. flex-direction: row;
  298. justify-content: space-between;
  299. }
  300. .compare > div {
  301. width: 48%;
  302. }
  303. /* COMPARE —> 10 ABSTRACTS */
  304. #rdn-abstracts #alltext p::first-letter {
  305. font-size: 5rem;
  306. }
  307. #rdn-abstracts #alltext p {
  308. margin: 0% 20%;
  309. line-height: 1.8rem;
  310. font-size: var(--body-fontsize);
  311. }
  312. /* DATA */
  313. canvas > * {
  314. font-family: var(--body-font) !important;
  315. }
  316. .anchordata {
  317. margin: 1rem 2rem;
  318. z-index: 999;
  319. position: fixed;
  320. right: 0;
  321. transform: skewY(10deg);
  322. }
  323. .anchordata a {
  324. text-decoration: none;
  325. border-bottom: 0.20rem var(--color-lightyellow) solid;
  326. }
  327. /* THEMES */
  328. .themes {
  329. margin: 0% 20%;
  330. }
  331. .themes h1 {
  332. text-align: center;
  333. }
  334. .themes p {
  335. margin: 2rem 0rem;
  336. }
  337. .allThemes {
  338. display: flex;
  339. width: 100%;
  340. justify-content: space-around;
  341. flex-wrap: wrap;
  342. }
  343. .allThemes a {
  344. text-decoration: none;
  345. padding: 3rem 1rem;
  346. margin: 2rem 0rem;
  347. border-radius: 10rem;
  348. background-color: var(--color-lightyellow);
  349. }
  350. .allThemes a:hover {
  351. background-color: var(--color-light-gray);
  352. }
  353. .themeResults {
  354. margin: 2rem 0rem;
  355. width: 100%;
  356. display: grid;
  357. grid-column-gap: 0px;
  358. grid-template-columns: 33.3% 33.3% 33.3%;
  359. }
  360. .eachthemeResult {
  361. text-align: center;
  362. margin: 0.5rem 0rem;
  363. padding: 1rem;
  364. border-radius: 50rem;
  365. background-color: var(--color-lightyellow);
  366. }
  367. .eachthemeResult a {
  368. text-decoration: none;
  369. }
  370. .eachthemeResult p {
  371. margin: 0rem !important;
  372. }
  373. .eachthemeResult:nth-child(even) {
  374. margin: 0.5rem 0.5rem;
  375. }
  376. .eachthemeResult:hover {
  377. background-color: var(--color-light-gray);
  378. }
  379. /* TEXT PAGES LIKE ARCHIVAL CONVERSATIONS AND MAKING OF */
  380. .text {
  381. margin: 0% 20%;
  382. }
  383. .text h1 {
  384. text-align: center;
  385. }
  386. .text p {
  387. margin: 2rem 0rem;
  388. }
  389. .text img {
  390. width: 100%;
  391. }
  392. .text h2, .text h3 {
  393. margin: 2rem 0rem;
  394. padding: 0rem 1rem;
  395. }
  396. .text h2 {
  397. font-size: 2.25 rem;
  398. background-color: var(--color-lightyellow);
  399. border-radius: 0.5rem;
  400. }
  401. .text h3 {
  402. border-bottom: 0.25rem dashed var(--color-lightyellow);
  403. }
  404. .text li {
  405. }
  406. code {
  407. display: flex;
  408. flex-direction: column;
  409. flex-wrap: wrap;
  410. }
  411. p code {
  412. margin: 1rem 0rem !important;
  413. }
  414. img + em {
  415. text-align: center;
  416. font-size: .8rem;
  417. }
  418. /***************** MOBILE ****************/
  419. @media screen and (min-width:0px) and (max-width: 768px) {
  420. /* overwrite */
  421. .p-5 {
  422. padding: 0.5rem !important;
  423. }
  424. .arrow-back {
  425. margin: -1rem 0.5rem;
  426. }
  427. /* INDEX SEARCH */
  428. input#inputsearch {
  429. width: 250px;
  430. }
  431. /* RANDOM TITLES */
  432. .action button {
  433. font-size: 1rem;
  434. }
  435. /* RANDOM IMAGES */
  436. #random-img-page .img-fluid:hover {
  437. transform: none;
  438. border-radius: 0.15rem;
  439. opacity: 1;
  440. }
  441. /* COMPARE —> 2 RANDOM PATENTS */
  442. .compare > div {
  443. width: 100%;
  444. }
  445. .col {
  446. flex: auto !important;
  447. }
  448. }