common.css 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230
  1. /* Layout */
  2. * {
  3. margin: 0;
  4. padding: 0;
  5. box-sizing: border-box;
  6. }
  7. html {
  8. -webkit-text-size-adjust: 100%;
  9. -ms-text-size-adjust: 100%;
  10. }
  11. body {
  12. font-family: var(--font-family);
  13. text-rendering: optimizeLegibility;
  14. color: var(--body-color);
  15. background: var(--body-background);
  16. }
  17. hr {
  18. border: 0;
  19. height: 0;
  20. border-top: 1px dotted var(--hr-border-color);
  21. padding-bottom: 10px;
  22. }
  23. h1, h2, h3 {
  24. color: var(--title-color);
  25. }
  26. main {
  27. padding-left: 3px;
  28. padding-right: 3px;
  29. margin-bottom: 30px;
  30. }
  31. a {
  32. color: var(--link-color);
  33. }
  34. a:focus {
  35. outline: 0;
  36. color: var(--link-focus-color);
  37. text-decoration: none;
  38. outline: 1px dotted #aaa;
  39. }
  40. a:hover {
  41. color: var(--link-hover-color);
  42. text-decoration: none;
  43. }
  44. .sr-only {
  45. border: 0 !important;
  46. clip: rect(1px, 1px, 1px, 1px) !important;
  47. -webkit-clip-path: inset(50%) !important;
  48. clip-path: inset(50%) !important;
  49. height: 1px !important;
  50. overflow: hidden !important;
  51. margin: -1px !important;
  52. padding: 0 !important;
  53. position: absolute !important;
  54. width: 1px !important;
  55. white-space: nowrap !important;
  56. }
  57. .skip-to-content-link {
  58. --padding-size: 8px;
  59. --border-size: 1px;
  60. background-color: var(--category-background-color);
  61. color: var(--category-color);
  62. border: var(--border-size) solid var(--category-border-color);
  63. border-radius: 5px;
  64. inset-inline-start: 50%;
  65. padding: var(--padding-size);
  66. position: absolute;
  67. transition: translate 0.3s;
  68. translate: -50% calc(-100% - calc(var(--padding-size) * 2) - calc(var(--border-size) * 2));
  69. }
  70. .skip-to-content-link:focus {
  71. translate: -50% 0;
  72. }
  73. /* Header and main menu */
  74. .header {
  75. margin-top: 10px;
  76. margin-bottom: 20px;
  77. }
  78. .header nav {
  79. display: flex;
  80. align-items: stretch;
  81. flex-direction: column;
  82. }
  83. .header nav .logo svg {
  84. padding: 5px;
  85. inline-size: 24px;
  86. block-size: 24px;
  87. }
  88. .header nav .logo[aria-expanded="true"] svg {
  89. rotate: 180deg;
  90. }
  91. .header ul.js-menu-show {
  92. display: initial;
  93. }
  94. .header ul:not(.js-menu-show) {
  95. display: none;
  96. }
  97. .header li {
  98. cursor: pointer;
  99. padding-left: 10px;
  100. line-height: 2.1em;
  101. font-size: 1.2em;
  102. border-bottom: 1px dotted var(--header-list-border-color);
  103. }
  104. .header li a:hover {
  105. color: #888;
  106. }
  107. .header :is(a, summary) {
  108. font-size: 0.9em;
  109. color: var(--header-link-color);
  110. text-decoration: none;
  111. border: none;
  112. font-weight: 400;
  113. }
  114. .header .active a {
  115. color: var(--header-active-link-color);
  116. /* Note: Firefox on Windows does not show the link as bold if the value is under 600 */
  117. font-weight: 600;
  118. }
  119. .header a:focus {
  120. color: var(--header-link-focus-color);
  121. }
  122. /* Page header and footer*/
  123. .page-header {
  124. padding-inline: 3px;
  125. margin-bottom: 25px;
  126. }
  127. .page-footer {
  128. margin-bottom: 10px;
  129. }
  130. .page-header h1 {
  131. font-weight: 500;
  132. border-bottom: 1px dotted var(--page-header-title-border-color);
  133. font-size: 1.5rem;
  134. }
  135. .page-header h1 a {
  136. text-decoration: none;
  137. color: var(--page-header-title-color);
  138. }
  139. .page-header h1 a:hover,
  140. .page-header h1 a:focus {
  141. color: #666;
  142. }
  143. .page-header li,
  144. .page-footer li {
  145. list-style-type: none;
  146. line-height: 1.8em;
  147. white-space: nowrap;
  148. }
  149. .page-header ul a .icon {
  150. padding-bottom: 2px;
  151. }
  152. .page-header-action-form {
  153. display: inline-flex;
  154. }
  155. :is(.page-button, .page-link) {
  156. color: var(--link-color);
  157. border: none;
  158. background-color: transparent;
  159. font-size: 1rem;
  160. cursor: pointer;
  161. &:is(:hover, :focus) {
  162. color: var(--link-hover-color);
  163. }
  164. }
  165. .page-button:active {
  166. translate: 1px 1px;
  167. }
  168. /* Logo */
  169. .logo {
  170. text-align: center;
  171. display: flex;
  172. justify-content: center;
  173. }
  174. .logo a {
  175. color: var(--logo-color);
  176. letter-spacing: 1px;
  177. display: flex;
  178. align-items: center;
  179. }
  180. .logo a:hover {
  181. color: #339966;
  182. }
  183. .logo a span {
  184. color: #339966;
  185. }
  186. .logo a:hover span {
  187. color: var(--logo-hover-color-span);
  188. }
  189. /* PWA prompt */
  190. #prompt-home-screen {
  191. display: none;
  192. position: fixed;
  193. bottom: 0;
  194. right: 0;
  195. width: 100%;
  196. text-align: center;
  197. background: #000;
  198. opacity: 85%;
  199. }
  200. #btn-add-to-home-screen {
  201. text-decoration: none;
  202. line-height: 30px;
  203. color: #fff;
  204. }
  205. #btn-add-to-home-screen:hover {
  206. color: red;
  207. }
  208. /* Notification - "Toast" */
  209. #toast-wrapper {
  210. visibility: hidden;
  211. opacity: 0;
  212. position: fixed;
  213. left: 0;
  214. bottom: 10%;
  215. color: #fff;
  216. width: 100%;
  217. text-align: center;
  218. }
  219. #toast-msg {
  220. background-color: rgba(0,0,0,0.7);
  221. padding-bottom: 4px;
  222. padding-left: 4px;
  223. padding-right: 5px;
  224. border-radius: 5px;
  225. }
  226. .toast-animate {
  227. animation: toastKeyFrames 2s;
  228. }
  229. @keyframes toastKeyFrames {
  230. 0% {visibility: hidden; opacity: 0;}
  231. 25% {visibility: visible; opacity: 1; z-index: 9999}
  232. 50% {visibility: visible; opacity: 1; z-index: 9999}
  233. 75% {visibility: visible; opacity: 1; z-index: 9999}
  234. 100% {visibility: hidden; opacity: 0; z-index: 0}
  235. }
  236. /* Hide the logo when there is not enough space to display menus when using languages more verbose than English */
  237. @media (min-width: 625px) and (max-width: 830px) {
  238. .logo {
  239. display: none;
  240. }
  241. }
  242. @media (min-width: 830px) {
  243. .logo {
  244. padding-right: 8px;
  245. }
  246. }
  247. @media (min-width: 620px) {
  248. body {
  249. margin: auto;
  250. max-width: 820px;
  251. }
  252. .header {
  253. padding-left: 3px;
  254. }
  255. .header li {
  256. display: inline-block;
  257. padding: 0;
  258. padding-right: 12px;
  259. line-height: normal;
  260. border: none;
  261. font-size: 1.0em;
  262. }
  263. .header nav {
  264. align-items: end;
  265. flex-direction: row;
  266. }
  267. .header .logo svg {
  268. display: none;
  269. }
  270. .header ul:not(.js-menu-show), .header ul.js-menu-show {
  271. display: revert;
  272. }
  273. .header :is(a, summary):hover {
  274. color: var(--header-link-hover-color);
  275. }
  276. .page-header li,
  277. .page-footer li {
  278. display: inline;
  279. padding-right: 15px;
  280. }
  281. }
  282. /* Tables */
  283. table {
  284. width: 100%;
  285. border-collapse: collapse;
  286. }
  287. table, th, td {
  288. border: 1px solid var(--table-border-color);
  289. }
  290. th, td {
  291. padding: 5px;
  292. text-align: left;
  293. }
  294. td {
  295. vertical-align: top;
  296. }
  297. th {
  298. background: var(--table-th-background);
  299. color: var(--table-th-color);
  300. font-weight: 400;
  301. }
  302. tr:hover {
  303. color: var(--table-tr-hover-color);
  304. background-color: var(--table-tr-hover-background-color);
  305. }
  306. .column-40 {
  307. width: 40%;
  308. }
  309. .column-25 {
  310. width: 25%;
  311. }
  312. .column-20 {
  313. width: 20%;
  314. }
  315. /* Forms */
  316. fieldset {
  317. border: 1px dotted #ddd;
  318. padding: 8px;
  319. margin-bottom: 20px;
  320. }
  321. legend {
  322. font-weight: 500;
  323. padding-left: 3px;
  324. padding-right: 3px;
  325. }
  326. label {
  327. cursor: pointer;
  328. display: block;
  329. }
  330. .radio-group {
  331. line-height: 1.9em;
  332. }
  333. div.radio-group label {
  334. display: inline-block;
  335. }
  336. select {
  337. margin-bottom: 15px;
  338. }
  339. input[type="search"],
  340. input[type="url"],
  341. input[type="password"],
  342. input[type="text"],
  343. input[type="number"] {
  344. color: var(--input-color);
  345. background: var(--input-background);
  346. border: var(--input-border);
  347. padding: 3px;
  348. line-height: 20px;
  349. width: 250px;
  350. font-size: 99%;
  351. margin-bottom: 10px;
  352. margin-top: 5px;
  353. appearance: none;
  354. }
  355. input[type="search"]:focus,
  356. input[type="url"]:focus,
  357. input[type="password"]:focus,
  358. input[type="text"]:focus,
  359. input[type="number"]:focus {
  360. color: var(--input-focus-color);
  361. border-color: var(--input-focus-border-color);
  362. outline: 0;
  363. box-shadow: var(--input-focus-box-shadow);
  364. }
  365. #form-entries-per-page {
  366. max-width: 80px;
  367. }
  368. input[type="checkbox"] {
  369. margin-bottom: 15px;
  370. }
  371. textarea {
  372. width: 350px;
  373. color: var(--input-color);
  374. background: var(--input-background);
  375. border: var(--input-border);
  376. padding: 3px;
  377. margin-bottom: 10px;
  378. margin-top: 5px;
  379. appearance: none;
  380. }
  381. textarea:focus {
  382. color: var(--input-focus-color);
  383. border-color: var(--input-focus-border-color);
  384. outline: 0;
  385. box-shadow: var(--input-focus-box-shadow);
  386. }
  387. input::placeholder {
  388. color: var(--input-placeholder-color);
  389. padding-top: 2px;
  390. }
  391. .form-label-row {
  392. display: flex;
  393. }
  394. .form-help {
  395. font-size: 0.9em;
  396. color: brown;
  397. margin-bottom: 15px;
  398. }
  399. .form-section {
  400. border-left: 2px dotted #ddd;
  401. padding-left: 20px;
  402. margin-left: 10px;
  403. }
  404. details > summary {
  405. outline: none;
  406. cursor: pointer;
  407. }
  408. .details-content {
  409. margin-top: 15px;
  410. }
  411. /* Buttons */
  412. a.button {
  413. text-decoration: none;
  414. }
  415. .button {
  416. display: inline-block;
  417. appearance: none;
  418. font-size: 1.1em;
  419. cursor: pointer;
  420. padding: 3px 10px;
  421. border: 1px solid;
  422. border-radius: unset;
  423. }
  424. .button-primary {
  425. border-color: var(--button-primary-border-color);
  426. background: var(--button-primary-background);
  427. color: var(--button-primary-color);
  428. }
  429. a.button-primary:hover,
  430. a.button-primary:focus,
  431. .button-primary:hover,
  432. .button-primary:focus {
  433. border-color: var(--button-primary-focus-border-color);
  434. background: var(--button-primary-focus-background);
  435. color: var(--button-primary-color);
  436. }
  437. .button-danger {
  438. border-color: #b0281a;
  439. background: #d14836;
  440. color: #fff;
  441. }
  442. .button-danger:hover,
  443. .button-danger:focus {
  444. color: #fff;
  445. background: #c53727;
  446. }
  447. .button:disabled {
  448. color: #ccc;
  449. background: #f7f7f7;
  450. border-color: #ccc;
  451. }
  452. .buttons {
  453. margin-top: 10px;
  454. margin-bottom: 20px;
  455. }
  456. fieldset .buttons {
  457. margin-bottom: 0;
  458. }
  459. /* Alerts */
  460. .alert {
  461. padding: 8px 35px 8px 14px;
  462. margin-bottom: 20px;
  463. color: var(--alert-color);
  464. background-color: var(--alert-background-color);
  465. border: 1px solid var(--alert-border-color);
  466. border-radius: 4px;
  467. overflow: auto;
  468. }
  469. .alert h3 {
  470. margin-top: 0;
  471. margin-bottom: 15px;
  472. }
  473. .alert-success {
  474. color: var(--alert-success-color);
  475. background-color: var(--alert-success-background-color);
  476. border-color: var(--alert-success-border-color);
  477. }
  478. .alert-error {
  479. color: var(--alert-error-color);
  480. background-color: var(--alert-error-background-color);
  481. border-color: var(--alert-error-border-color);
  482. }
  483. .alert-error h3,
  484. .alert-error a {
  485. color: var(--alert-error-color);
  486. }
  487. .alert-info {
  488. color: var(--alert-info-color);
  489. background-color: var(--alert-info-background-color);
  490. border-color: var(--alert-info-border-color);
  491. }
  492. /* Panel */
  493. .panel {
  494. color: var(--panel-color);
  495. background-color: var(--panel-background);
  496. border: 1px solid var(--panel-border-color);
  497. border-radius: 5px;
  498. padding: 10px;
  499. margin-bottom: 15px;
  500. }
  501. .panel h3 {
  502. font-weight: 500;
  503. margin-top: 0;
  504. margin-bottom: 20px;
  505. }
  506. .panel ul {
  507. margin-left: 30px;
  508. }
  509. /* Modals */
  510. template {
  511. display: none;
  512. }
  513. #modal-left {
  514. position: fixed;
  515. top: 0;
  516. left: 0;
  517. bottom: 0;
  518. width: 380px;
  519. overflow: auto;
  520. color: var(--modal-color);
  521. background: var(--modal-background);
  522. box-shadow: var(--modal-box-shadow);
  523. padding: 5px;
  524. padding-top: 30px;
  525. }
  526. #modal-left h3 {
  527. font-weight: 400;
  528. margin: 0;
  529. }
  530. .btn-close-modal {
  531. position: absolute;
  532. top: 0;
  533. right: 0;
  534. font-size: 1.7em;
  535. color: #ccc;
  536. padding:0 .2em;
  537. margin: 10px;
  538. text-decoration: none;
  539. background-color: transparent;
  540. border: none;
  541. }
  542. .btn-close-modal:hover {
  543. color: #999;
  544. }
  545. /* Keyboard Shortcuts */
  546. .keyboard-shortcuts li {
  547. margin-left: 25px;
  548. list-style-type: square;
  549. color: var(--keyboard-shortcuts-li-color);
  550. font-size: 0.95em;
  551. line-height: 1.45em;
  552. }
  553. .keyboard-shortcuts p {
  554. line-height: 1.9em;
  555. }
  556. /* Login form */
  557. .login-form {
  558. margin: 50px auto 0;
  559. max-width: 300px;
  560. }
  561. /* Counters */
  562. .unread-counter-wrapper,
  563. .error-feeds-counter-wrapper {
  564. font-size: 0.9em;
  565. font-weight: 300;
  566. color: var(--counter-color);
  567. }
  568. /* Category label */
  569. .category {
  570. font-size: 0.75em;
  571. background-color: var(--category-background-color);
  572. border: 1px solid var(--category-border-color);
  573. border-radius: 5px;
  574. margin-left: 0.25em;
  575. padding: 1px 0.4em 1px 0.4em;
  576. white-space: nowrap;
  577. color: var(--category-color);
  578. }
  579. .category a {
  580. color: var(--category-link-color);
  581. text-decoration: none;
  582. }
  583. .category a:hover,
  584. .category a:focus {
  585. color: var(--category-link-hover-color);
  586. }
  587. .category-item-total {
  588. color: var(--body-color);
  589. }
  590. /* Pagination */
  591. .pagination {
  592. font-size: 1.1em;
  593. display: flex;
  594. align-items: center;
  595. }
  596. .pagination-top {
  597. padding-bottom: 8px;
  598. }
  599. .pagination-bottom {
  600. padding-top: 8px;
  601. }
  602. .pagination-entry-top {
  603. padding-top: 8px;
  604. }
  605. .pagination-entry-bottom {
  606. border-top: 1px dotted var(--pagination-border-color);
  607. margin-bottom: 15px;
  608. margin-top: 50px;
  609. padding-top: 8px;
  610. }
  611. .pagination > div {
  612. flex: 1;
  613. }
  614. .pagination-next {
  615. text-align: right;
  616. }
  617. .pagination-prev:before {
  618. content: "« ";
  619. }
  620. .pagination-next:after {
  621. content: " »";
  622. }
  623. .pagination a {
  624. color: var(--pagination-link-color);
  625. }
  626. .pagination a:hover,
  627. .pagination a:focus {
  628. text-decoration: none;
  629. }
  630. /* List view */
  631. .item {
  632. border: 1px dotted var(--item-border-color);
  633. margin-bottom: 20px;
  634. padding: var(--item-padding);
  635. overflow: hidden;
  636. }
  637. .item.current-item {
  638. border: var(--current-item-border-width) solid var(--current-item-border-color);
  639. padding: 3px;
  640. box-shadow: var(--current-item-box-shadow);
  641. }
  642. .item.current-item:focus {
  643. outline: none;
  644. }
  645. .item-header {
  646. font-size: 1rem;
  647. }
  648. .item-header span {
  649. font-weight: normal;
  650. display: inline-block;
  651. }
  652. .item-title {
  653. font-size: 1rem;
  654. margin: 0;
  655. display: inline;
  656. }
  657. .item-title a {
  658. text-decoration: none;
  659. font-weight: var(--item-title-link-font-weight);
  660. font-size: inherit;
  661. }
  662. .feed-entries-counter {
  663. display: inline-flex;
  664. gap: 2px;
  665. align-items: center;
  666. }
  667. .item-status-read .item-title a {
  668. color: var(--item-status-read-title-link-color);
  669. }
  670. .item-meta {
  671. color: var(--item-meta-focus-color);
  672. font-size: 0.8em;
  673. }
  674. .item-meta a {
  675. color: #777;
  676. text-decoration: none;
  677. }
  678. .item-meta :is(a:is(:focus, :hover), button:is(:focus, :hover)) {
  679. color: #333;
  680. }
  681. .item-meta ul {
  682. margin-top: 5px;
  683. }
  684. .item-meta li {
  685. display: inline-block;
  686. }
  687. .item-meta-info {
  688. font-size: 0.85em;
  689. }
  690. .item-meta-info li:not(:last-child):after {
  691. content: "|";
  692. color: var(--item-meta-li-color);
  693. }
  694. .item-meta-icons li {
  695. margin-right: 8px;
  696. margin-top: 4px;
  697. }
  698. .item-meta-icons li:last-child {
  699. margin-right: 0;
  700. }
  701. .item-meta-icons li > :is(a, button) {
  702. color: #777;
  703. text-decoration: none;
  704. font-size: 0.8rem;
  705. border: none;
  706. background-color: transparent;
  707. cursor: pointer;
  708. }
  709. .item-meta-icons a span {
  710. text-decoration: underline;
  711. }
  712. .item-meta-icons button:active {
  713. translate: 1px 1px;
  714. }
  715. .items {
  716. overflow-x: hidden;
  717. touch-action: pan-y;
  718. }
  719. .hide-read-items .item-status-read:not(.current-item) {
  720. display: none;
  721. }
  722. .entry-swipe {
  723. transition-property: transform;
  724. transition-duration: 0s;
  725. transition-timing-function: ease-out;
  726. }
  727. /* Feeds list */
  728. article.feed-parsing-error {
  729. background-color: var(--feed-parsing-error-background-color);
  730. border-style: var(--feed-parsing-error-border-style);
  731. border-color: var(--feed-parsing-error-border-color);
  732. }
  733. article.feed-has-unread {
  734. background-color: var(--feed-has-unread-background-color);
  735. border-style: var(--feed-has-unread-border-style);
  736. border-color: var(--feed-has-unread-border-color);
  737. }
  738. .parsing-error {
  739. font-size: 0.85em;
  740. margin-top: 2px;
  741. color: var(--parsing-error-color);
  742. }
  743. .parsing-error-count {
  744. cursor: pointer;
  745. }
  746. /* Categories list */
  747. article.category-has-unread {
  748. background-color: var(--category-has-unread-background-color);
  749. border-style: var(--category-has-unread-border-style);
  750. border-color: var(--category-has-unread-border-color);
  751. }
  752. /* Icons */
  753. .icon,
  754. .icon-label {
  755. vertical-align: middle;
  756. display: inline-block;
  757. padding-right: 2px;
  758. }
  759. .icon {
  760. width: 16px;
  761. height: 16px;
  762. }
  763. /* Entry view */
  764. .entry header {
  765. padding-bottom: 5px;
  766. padding-inline: 5px;
  767. border-bottom: 1px dotted var(--entry-header-border-color);
  768. }
  769. .entry header h1 {
  770. font-size: 2.0em;
  771. line-height: 1.25em;
  772. margin: 5px 0 30px 0;
  773. overflow-wrap: break-word;
  774. }
  775. .entry header h1 a {
  776. text-decoration: none;
  777. color: var(--entry-header-title-link-color);
  778. }
  779. .entry header h1 a:hover,
  780. .entry header h1 a:focus {
  781. color: #666;
  782. }
  783. .entry-actions {
  784. margin-bottom: 20px;
  785. }
  786. .entry-actions a span {
  787. text-decoration: underline;
  788. }
  789. .entry-actions li {
  790. display: inline-block;
  791. margin-right: 15px;
  792. line-height: 1.7em;
  793. }
  794. .entry-meta {
  795. font-size: 0.95em;
  796. margin: 0 0 20px;
  797. color: #666;
  798. overflow-wrap: break-word;
  799. }
  800. .entry-tags {
  801. margin-top: 20px;
  802. margin-bottom: 20px;
  803. }
  804. .entry-tags strong {
  805. font-weight: 600;
  806. }
  807. .entry-website img {
  808. vertical-align: top;
  809. }
  810. .entry-website a {
  811. color: #666;
  812. vertical-align: top;
  813. text-decoration: none;
  814. }
  815. .entry-website a:hover,
  816. .entry-website a:focus {
  817. text-decoration: underline;
  818. }
  819. .entry-date {
  820. font-size: 0.65em;
  821. font-style: italic;
  822. color: #555;
  823. }
  824. .entry-content {
  825. padding-top: 15px;
  826. font-size: 1.2em;
  827. font-weight: var(--entry-content-font-weight);
  828. font-family: var(--entry-content-font-family);
  829. color: var(--entry-content-color);
  830. line-height: 1.4em;
  831. overflow-wrap: break-word;
  832. touch-action: pan-y pinch-zoom;
  833. }
  834. .entry-content h1, h2, h3, h4, h5, h6 {
  835. margin-top: 15px;
  836. margin-bottom: 10px;
  837. }
  838. .entry-content iframe,
  839. .entry-content video,
  840. .entry-content img {
  841. max-width: 100%;
  842. }
  843. .entry-content figure {
  844. margin-top: 15px;
  845. margin-bottom: 15px;
  846. }
  847. .entry-content figure img {
  848. border: 1px solid #000;
  849. }
  850. .entry-content figcaption {
  851. font-size: 0.75em;
  852. text-transform: uppercase;
  853. color: #777;
  854. }
  855. .entry-content p {
  856. margin-top: 10px;
  857. margin-bottom: 15px;
  858. }
  859. .entry-content a {
  860. overflow-wrap: break-word;
  861. }
  862. .entry-content a:visited {
  863. color: var(--link-visited-color);
  864. }
  865. .entry-content dt {
  866. font-weight: 500;
  867. margin-top: 15px;
  868. color: #555;
  869. }
  870. .entry-content dd {
  871. margin-left: 15px;
  872. margin-top: 5px;
  873. padding-left: 20px;
  874. border-left: 3px solid #ddd;
  875. color: #777;
  876. font-weight: 300;
  877. line-height: 1.4em;
  878. }
  879. .entry-content blockquote {
  880. border-left: 4px solid #ddd;
  881. padding-left: 25px;
  882. margin-left: 20px;
  883. margin-top: 20px;
  884. margin-bottom: 20px;
  885. line-height: 1.4em;
  886. font-family: var(--entry-content-quote-font-family);
  887. }
  888. .entry-content q {
  889. color: var(--entry-content-quote-color);
  890. font-family: var(--entry-content-quote-font-family);
  891. font-style: italic;
  892. }
  893. .entry-content q:before {
  894. content: "“";
  895. }
  896. .entry-content q:after {
  897. content: "”";
  898. }
  899. .entry-content pre {
  900. padding: 5px;
  901. overflow: auto;
  902. overflow-wrap: initial;
  903. border-width: 1px;
  904. border-style: solid;
  905. }
  906. .entry-content pre,
  907. .entry-content code {
  908. color: var(--entry-content-code-color);
  909. background: var(--entry-content-code-background);
  910. border-color: var(--entry-content-code-border-color);
  911. }
  912. .entry-content table {
  913. max-width: 100%;
  914. }
  915. .entry-content ul,
  916. .entry-content ol {
  917. margin-left: 30px;
  918. margin-top: 15px;
  919. margin-bottom: 15px;
  920. }
  921. .entry-content li ul,
  922. .entry-content li ol {
  923. margin-top: 0;
  924. margin-bottom: 0;
  925. }
  926. .entry-content ul {
  927. list-style-type: square;
  928. }
  929. .entry-content strong {
  930. font-weight: 600;
  931. }
  932. .entry-content sub,
  933. .entry-content sup {
  934. font-size: 75%;
  935. line-height: 0;
  936. position: relative;
  937. vertical-align: baseline;
  938. }
  939. .entry-content sub {
  940. bottom: -0.25em;
  941. }
  942. .entry-content sup {
  943. top: -0.5em;
  944. }
  945. .entry-content abbr {
  946. cursor: pointer;
  947. text-decoration: none;
  948. border-bottom: 1px dashed var(--entry-content-abbr-border-color);
  949. }
  950. details.entry-enclosures {
  951. margin-top: 25px;
  952. }
  953. .entry-enclosures summary {
  954. font-weight: 500;
  955. font-size: 1.2em;
  956. }
  957. .entry-enclosure {
  958. border: 1px dotted var(--entry-enclosure-border-color);
  959. padding: 5px;
  960. margin-top: 10px;
  961. max-width: 100%;
  962. }
  963. .entry-enclosure-download {
  964. font-size: 0.85em;
  965. overflow-wrap: break-word;
  966. }
  967. .enclosure-video video,
  968. .enclosure-image img {
  969. max-width: 100%;
  970. }
  971. /* Confirmation */
  972. .confirm {
  973. font-weight: 500;
  974. color: #ed2d04;
  975. }
  976. .confirm button {
  977. color: #ed2d04;
  978. border: none;
  979. background-color: transparent;
  980. cursor: pointer;
  981. font-size: inherit;
  982. }
  983. .loading {
  984. font-style: italic;
  985. }
  986. /* Bookmarlet */
  987. .bookmarklet {
  988. border: 1px dashed #ccc;
  989. border-radius: 5px;
  990. padding: 15px;
  991. margin: 15px;
  992. text-align: center;
  993. }
  994. .bookmarklet a {
  995. font-weight: 600;
  996. text-decoration: none;
  997. font-size: 1.2em;
  998. }
  999. .disabled {
  1000. opacity: 20%;
  1001. }
  1002. audio, video {
  1003. width: 100%;
  1004. }
  1005. .integration-form summary {
  1006. font-weight: 700;
  1007. }
  1008. .integration-form details {
  1009. margin-bottom: 15px;
  1010. }
  1011. .integration-form details .form-section {
  1012. margin-top: 15px;
  1013. }
  1014. .hidden {
  1015. display: none;
  1016. }