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.

562 lines
10.0KB

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