common.css 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842
  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: "Helvetica Neue", Helvetica, Arial, sans-serif;
  13. text-rendering: optimizeLegibility;
  14. }
  15. main {
  16. padding-left: 5px;
  17. padding-right: 5px;
  18. margin-bottom: 30px;
  19. }
  20. a {
  21. color: #3366CC;
  22. }
  23. a:focus {
  24. outline: 0;
  25. color: red;
  26. text-decoration: none;
  27. border: 1px dotted #aaa;
  28. }
  29. a:hover {
  30. color: #333;
  31. text-decoration: none;
  32. }
  33. /* Header and main menu */
  34. .header {
  35. margin-top: 10px;
  36. margin-bottom: 20px;
  37. }
  38. .header nav ul {
  39. display: none;
  40. }
  41. .header li {
  42. cursor: pointer;
  43. padding-left: 10px;
  44. line-height: 2.1em;
  45. font-size: 1.2em;
  46. border-bottom: 1px dotted #ddd;
  47. }
  48. .header li:hover a {
  49. color: #888;
  50. }
  51. .header a {
  52. font-size: 0.9em;
  53. color: #444;
  54. text-decoration: none;
  55. border: none;
  56. }
  57. .header .active a {
  58. font-weight: 600;
  59. }
  60. .header a:hover,
  61. .header a:focus {
  62. color: #888;
  63. }
  64. /* Page header */
  65. .page-header {
  66. margin-bottom: 25px;
  67. }
  68. .page-header h1 {
  69. font-weight: 500;
  70. border-bottom: 1px dotted #ddd;
  71. }
  72. .page-header ul {
  73. margin-left: 25px;
  74. }
  75. .page-header li {
  76. list-style-type: circle;
  77. line-height: 1.8em;
  78. }
  79. /* Logo */
  80. .logo {
  81. cursor: pointer;
  82. text-align: center;
  83. }
  84. .logo a {
  85. color: #000;
  86. letter-spacing: 1px;
  87. }
  88. .logo a:hover {
  89. color: #339966;
  90. }
  91. .logo a span {
  92. color: #339966;
  93. }
  94. .logo a:hover span {
  95. color: #000;
  96. }
  97. /* Search form */
  98. .search {
  99. text-align: center;
  100. display: none;
  101. }
  102. .search-toggle-switch {
  103. display: none;
  104. }
  105. @media (min-width: 600px) {
  106. body {
  107. margin: auto;
  108. max-width: 750px;
  109. }
  110. .header {
  111. margin-bottom: 0;
  112. }
  113. .logo {
  114. text-align: left;
  115. float: left;
  116. margin-right: 15px;
  117. margin-left: 5px;
  118. }
  119. .header nav ul {
  120. display: block;
  121. }
  122. .header li {
  123. display: inline;
  124. padding: 0;
  125. padding-right: 15px;
  126. line-height: normal;
  127. border: none;
  128. font-size: 1.0em;
  129. }
  130. .page-header ul {
  131. margin-left: 0;
  132. }
  133. .page-header li {
  134. display: inline;
  135. padding-right: 15px;
  136. }
  137. /* Search form */
  138. .search {
  139. text-align: right;
  140. display: block;
  141. margin-top: 10px;
  142. }
  143. .search-toggle-switch {
  144. display: block;
  145. }
  146. .search-form {
  147. display: none;
  148. }
  149. .search-toggle-switch.has-search-query {
  150. display: none;
  151. }
  152. .search-form.has-search-query {
  153. display: block;
  154. }
  155. }
  156. /* Tables */
  157. table {
  158. width: 100%;
  159. border-collapse: collapse;
  160. }
  161. table, th, td {
  162. border: 1px solid #ddd;
  163. }
  164. th, td {
  165. padding: 5px;
  166. text-align: left;
  167. }
  168. td {
  169. vertical-align: top;
  170. }
  171. th {
  172. background: #fcfcfc;
  173. }
  174. tr:hover {
  175. background-color: #f9f9f9;
  176. }
  177. .column-40 {
  178. width: 40%;
  179. }
  180. .column-25 {
  181. width: 25%;
  182. }
  183. .column-20 {
  184. width: 20%;
  185. }
  186. /* Forms */
  187. fieldset {
  188. border: 1px solid #ddd;
  189. padding: 8px;
  190. }
  191. legend {
  192. font-weight: 500;
  193. padding-left: 3px;
  194. padding-right: 3px;
  195. }
  196. label {
  197. cursor: pointer;
  198. display: block;
  199. }
  200. .radio-group {
  201. line-height: 1.9em;
  202. }
  203. div.radio-group label {
  204. display: inline-block;
  205. }
  206. select {
  207. margin-bottom: 15px;
  208. }
  209. input[type="search"],
  210. input[type="url"],
  211. input[type="password"],
  212. input[type="text"] {
  213. border: 1px solid #ccc;
  214. padding: 3px;
  215. line-height: 20px;
  216. width: 250px;
  217. font-size: 99%;
  218. margin-bottom: 10px;
  219. margin-top: 5px;
  220. -webkit-appearance: none;
  221. }
  222. input[type="search"]:focus,
  223. input[type="url"]:focus,
  224. input[type="password"]:focus,
  225. input[type="text"]:focus {
  226. color: #000;
  227. border-color: rgba(82, 168, 236, 0.8);
  228. outline: 0;
  229. box-shadow: 0 0 8px rgba(82, 168, 236, 0.6);
  230. }
  231. input[type="checkbox"] {
  232. margin-bottom: 15px;
  233. }
  234. ::-moz-placeholder,
  235. ::-ms-input-placeholder,
  236. ::-webkit-input-placeholder {
  237. color: #ddd;
  238. padding-top: 2px;
  239. }
  240. .form-help {
  241. font-size: 0.9em;
  242. color: brown;
  243. margin-bottom: 15px;
  244. }
  245. .form-section {
  246. border-left: 2px dotted #ddd;
  247. padding-left: 20px;
  248. margin-left: 10px;
  249. }
  250. /* Buttons */
  251. a.button {
  252. text-decoration: none;
  253. }
  254. .button {
  255. display: inline-block;
  256. -webkit-appearance: none;
  257. -moz-appearance: none;
  258. font-size: 1.1em;
  259. cursor: pointer;
  260. padding: 3px 10px;
  261. border: 1px solid;
  262. border-radius: unset;
  263. }
  264. .button-primary {
  265. border-color: #3079ed;
  266. background: #4d90fe;
  267. color: #fff;
  268. }
  269. .button-primary:hover,
  270. .button-primary:focus {
  271. border-color: #2f5bb7;
  272. background: #357ae8;
  273. }
  274. .button-danger {
  275. border-color: #b0281a;
  276. background: #d14836;
  277. color: #fff;
  278. }
  279. .button-danger:hover,
  280. .button-danger:focus {
  281. color: #fff;
  282. background: #c53727;
  283. }
  284. .button:disabled {
  285. color: #ccc;
  286. background: #f7f7f7;
  287. border-color: #ccc;
  288. }
  289. .buttons {
  290. margin-top: 10px;
  291. margin-bottom: 20px;
  292. }
  293. /* Alerts */
  294. .alert {
  295. padding: 8px 35px 8px 14px;
  296. margin-bottom: 20px;
  297. color: #c09853;
  298. background-color: #fcf8e3;
  299. border: 1px solid #fbeed5;
  300. border-radius: 4px;
  301. overflow: auto;
  302. }
  303. .alert h3 {
  304. margin-top: 0;
  305. margin-bottom: 15px;
  306. }
  307. .alert-success {
  308. color: #468847;
  309. background-color: #dff0d8;
  310. border-color: #d6e9c6;
  311. }
  312. .alert-error {
  313. color: #b94a48;
  314. background-color: #f2dede;
  315. border-color: #eed3d7;
  316. }
  317. .alert-error a {
  318. color: #b94a48;
  319. }
  320. .alert-info {
  321. color: #3a87ad;
  322. background-color: #d9edf7;
  323. border-color: #bce8f1;
  324. }
  325. /* Panel */
  326. .panel {
  327. color: #333;
  328. background-color: #fcfcfc;
  329. border: 1px solid #ddd;
  330. border-radius: 5px;
  331. padding: 10px;
  332. margin-bottom: 15px;
  333. }
  334. .panel h3 {
  335. font-weight: 500;
  336. margin-top: 0;
  337. margin-bottom: 20px;
  338. }
  339. .panel ul {
  340. margin-left: 30px;
  341. }
  342. /* Modals */
  343. #modal-left {
  344. position: fixed;
  345. top: 0;
  346. left: 0;
  347. bottom: 0;
  348. width: 360px;
  349. overflow: auto;
  350. background: #f0f0f0;
  351. box-shadow: 2px 0 5px 0 #ccc;
  352. padding: 5px;
  353. padding-top: 30px;
  354. }
  355. #modal-left h3 {
  356. font-weight: 400;
  357. margin: 0;
  358. }
  359. .btn-close-modal {
  360. position: absolute;
  361. top: 0;
  362. right: 0;
  363. font-size: 1.7em;
  364. color: #ccc;
  365. padding:0 .2em;
  366. margin: 10px;
  367. text-decoration: none;
  368. }
  369. .btn-close-modal:hover {
  370. color: #999;
  371. }
  372. /* Keyboard Shortcuts */
  373. .keyboard-shortcuts li {
  374. margin-left: 25px;
  375. list-style-type: square;
  376. color: #333;
  377. font-size: 0.95em;
  378. line-height: 1.45em;
  379. }
  380. .keyboard-shortcuts p {
  381. line-height: 1.9em;
  382. }
  383. /* Login form */
  384. .login-form {
  385. margin: 50px auto 0;
  386. max-width: 280px;
  387. }
  388. /* Counters */
  389. .unread-counter-wrapper,
  390. .error-feeds-counter-wrapper {
  391. font-size: 0.9em;
  392. font-weight: 300;
  393. color: #666;
  394. }
  395. /* Category label */
  396. .category {
  397. font-size: 0.75em;
  398. background-color: #fffcd7;
  399. border: 1px solid #d5d458;
  400. border-radius: 5px;
  401. margin-left: 0.25em;
  402. padding: 1px 0.4em 1px 0.4em;
  403. white-space: nowrap;
  404. }
  405. .category a {
  406. color: #555;
  407. text-decoration: none;
  408. }
  409. .category a:hover,
  410. .category a:focus {
  411. color: #000;
  412. }
  413. /* Pagination */
  414. .pagination {
  415. font-size: 1.1em;
  416. display: flex;
  417. align-items: center;
  418. padding-top: 8px;
  419. }
  420. .pagination-bottom {
  421. border-top: 1px dotted #ddd;
  422. margin-bottom: 15px;
  423. margin-top: 50px;
  424. }
  425. .pagination > div {
  426. flex: 1;
  427. }
  428. .pagination-next {
  429. text-align: right;
  430. }
  431. .pagination-prev:before {
  432. content: "« ";
  433. }
  434. .pagination-next:after {
  435. content: " »";
  436. }
  437. .pagination a {
  438. color: #333;
  439. }
  440. .pagination a:hover,
  441. .pagination a:focus {
  442. text-decoration: none;
  443. }
  444. /* List view */
  445. .item {
  446. border: 1px dotted #ddd;
  447. margin-bottom: 20px;
  448. padding: 5px;
  449. overflow: hidden;
  450. }
  451. .item.current-item {
  452. border: 3px solid #bce;
  453. padding: 3px;
  454. }
  455. .item-title a {
  456. text-decoration: none;
  457. font-weight: 600;
  458. }
  459. .item-status-read .item-title a {
  460. color: #777;
  461. }
  462. .item-meta {
  463. color: #777;
  464. font-size: 0.8em;
  465. }
  466. .item-meta a {
  467. color: #777;
  468. text-decoration: none;
  469. }
  470. .item-meta a:hover,
  471. .item-meta a:focus {
  472. color: #333;
  473. }
  474. .item-meta ul {
  475. margin-top: 5px;
  476. }
  477. .item-meta li {
  478. display: inline;
  479. }
  480. .item-meta li:after {
  481. content: "|";
  482. color: #aaa;
  483. }
  484. .item-meta li:last-child:after {
  485. content: "";
  486. }
  487. .items {
  488. overflow-x: hidden;
  489. }
  490. .hide-read-items .item-status-read {
  491. display: none;
  492. }
  493. /* Feeds list */
  494. article.feed-parsing-error {
  495. background-color: #fcf8e3;
  496. border-color: #aaa;
  497. }
  498. .parsing-error {
  499. font-size: 0.85em;
  500. margin-top: 2px;
  501. color: #333;
  502. }
  503. .parsing-error-count {
  504. cursor: pointer;
  505. }
  506. /* Entry view */
  507. .entry header {
  508. padding-bottom: 5px;
  509. border-bottom: 1px dotted #ddd;
  510. }
  511. .entry header h1 {
  512. font-size: 2.0em;
  513. line-height: 1.25em;
  514. margin: 5px 0 30px 0;
  515. }
  516. .entry header h1 a {
  517. text-decoration: none;
  518. color: #333;
  519. }
  520. .entry header h1 a:hover,
  521. .entry header h1 a:focus {
  522. color: #666;
  523. }
  524. .entry-actions {
  525. margin-bottom: 20px;
  526. }
  527. .entry-actions a {
  528. text-decoration: none;
  529. }
  530. .entry-actions li {
  531. display: inline;
  532. }
  533. .entry-actions li:not(:last-child):after {
  534. content: "|";
  535. }
  536. .entry-meta {
  537. font-size: 0.95em;
  538. margin: 0 0 20px;
  539. color: #666;
  540. overflow-wrap: break-word;
  541. }
  542. .entry-website img {
  543. vertical-align: top;
  544. }
  545. .entry-website a {
  546. color: #666;
  547. vertical-align: top;
  548. text-decoration: none;
  549. }
  550. .entry-website a:hover,
  551. .entry-website a:focus {
  552. text-decoration: underline;
  553. }
  554. .entry-date {
  555. font-size: 0.65em;
  556. font-style: italic;
  557. color: #555;
  558. }
  559. .entry-content {
  560. padding-top: 15px;
  561. font-size: 1.2em;
  562. font-weight: 300;
  563. font-family: Georgia, 'Times New Roman', Times, serif;
  564. color: #555;
  565. line-height: 1.4em;
  566. overflow-wrap: break-word;
  567. }
  568. .entry-content h1, h2, h3, h4, h5, h6 {
  569. margin-top: 15px;
  570. margin-bottom: 10px;
  571. }
  572. .entry-content iframe,
  573. .entry-content video,
  574. .entry-content img {
  575. max-width: 100%;
  576. }
  577. .entry-content figure {
  578. margin-top: 15px;
  579. margin-bottom: 15px;
  580. }
  581. .entry-content figure img {
  582. border: 1px solid #000;
  583. }
  584. .entry-content figcaption {
  585. font-size: 0.75em;
  586. text-transform: uppercase;
  587. color: #777;
  588. }
  589. .entry-content p {
  590. margin-top: 10px;
  591. margin-bottom: 15px;
  592. }
  593. .entry-content a {
  594. overflow-wrap: break-word;
  595. }
  596. .entry-content a:visited {
  597. color: purple;
  598. }
  599. .entry-content dt {
  600. font-weight: 500;
  601. margin-top: 15px;
  602. color: #555;
  603. }
  604. .entry-content dd {
  605. margin-left: 15px;
  606. margin-top: 5px;
  607. padding-left: 20px;
  608. border-left: 3px solid #ddd;
  609. color: #777;
  610. font-weight: 300;
  611. line-height: 1.4em;
  612. }
  613. .entry-content blockquote {
  614. border-left: 4px solid #ddd;
  615. padding-left: 25px;
  616. margin-left: 20px;
  617. margin-top: 20px;
  618. margin-bottom: 20px;
  619. color: #888;
  620. line-height: 1.4em;
  621. font-family: Georgia, serif;
  622. }
  623. .entry-content q {
  624. color: purple;
  625. font-family: Georgia, serif;
  626. font-style: italic;
  627. }
  628. .entry-content q:before {
  629. content: "“";
  630. }
  631. .entry-content q:after {
  632. content: "”";
  633. }
  634. .entry-content pre {
  635. padding: 5px;
  636. background: #f0f0f0;
  637. border: 1px solid #ddd;
  638. overflow: scroll;
  639. overflow-wrap: initial;
  640. }
  641. .entry-content table {
  642. table-layout: fixed;
  643. max-width: 100%;
  644. }
  645. .entry-content ul,
  646. .entry-content ol {
  647. margin-left: 30px;
  648. }
  649. .entry-content ul {
  650. list-style-type: square;
  651. }
  652. .entry-enclosures h3 {
  653. font-weight: 500;
  654. }
  655. .entry-enclosure {
  656. border: 1px dotted #ddd;
  657. padding: 5px;
  658. margin-top: 10px;
  659. max-width: 100%;
  660. }
  661. .entry-enclosure-download {
  662. font-size: 0.85em;
  663. overflow-wrap: break-word;
  664. }
  665. .enclosure-video video,
  666. .enclosure-image img {
  667. max-width: 100%;
  668. }
  669. /* Confirmation */
  670. .confirm {
  671. font-weight: 500;
  672. color: #ed2d04;
  673. }
  674. .confirm a {
  675. color: #ed2d04;
  676. }
  677. .loading {
  678. font-style: italic;
  679. }
  680. /* Bookmarlet */
  681. .bookmarklet {
  682. border: 1px dashed #ccc;
  683. border-radius: 5px;
  684. padding: 15px;
  685. margin: 15px;
  686. text-align: center;
  687. }
  688. .bookmarklet a {
  689. font-weight: 600;
  690. text-decoration: none;
  691. font-size: 1.2em;
  692. }