1
0

style.css 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. /* rekopub.monoexp.com: the monoexp.com stylesheet, plus code, tables and downloads */
  2. :root {
  3. --bg: #fafaf9;
  4. --surface: #ffffff;
  5. --text: #1c1c1a;
  6. --muted: #5f5f5a;
  7. --border: #e4e4e0;
  8. --accent: #1c1c1a;
  9. --tag-bg: #f0f0ed;
  10. --focus: #2f6fdb;
  11. --sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  12. --mono: ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  13. --radius: 10px;
  14. --max: 760px;
  15. }
  16. @media (prefers-color-scheme: dark) {
  17. :root {
  18. --bg: #121211;
  19. --surface: #1a1a19;
  20. --text: #ececea;
  21. --muted: #a3a39e;
  22. --border: #2c2c2a;
  23. --accent: #ececea;
  24. --tag-bg: #252524;
  25. --focus: #7aa7f5;
  26. }
  27. }
  28. *,
  29. *::before,
  30. *::after { box-sizing: border-box; }
  31. html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
  32. body {
  33. margin: 0;
  34. background: var(--bg);
  35. color: var(--text);
  36. font: 17px/1.6 var(--sans);
  37. -webkit-font-smoothing: antialiased;
  38. }
  39. a { color: inherit; text-underline-offset: 3px; }
  40. a:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; border-radius: 4px; }
  41. .wrap {
  42. max-width: var(--max);
  43. margin: 0 auto;
  44. padding: 0 20px;
  45. }
  46. .sr-only {
  47. position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  48. overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
  49. }
  50. /* Header */
  51. .site-header { border-bottom: 1px solid var(--border); }
  52. .header-inner {
  53. display: flex;
  54. align-items: center;
  55. justify-content: space-between;
  56. height: 64px;
  57. }
  58. .wordmark {
  59. font: 600 18px/1 var(--mono);
  60. letter-spacing: -0.02em;
  61. text-decoration: none;
  62. }
  63. .wordmark span { color: var(--muted); }
  64. nav { display: flex; gap: 20px; }
  65. nav a {
  66. font-size: 15px;
  67. color: var(--muted);
  68. text-decoration: none;
  69. }
  70. nav a:hover { color: var(--text); }
  71. /* About */
  72. .about { padding: 56px 0 40px; }
  73. .about h1 {
  74. margin: 0 0 12px;
  75. font-size: clamp(30px, 6vw, 42px);
  76. line-height: 1.15;
  77. letter-spacing: -0.03em;
  78. }
  79. .about p { margin: 0 0 14px; color: var(--muted); max-width: 62ch; }
  80. .about .lede { font-size: 20px; color: var(--text); }
  81. /* Sections */
  82. main section:not(.about) { padding-bottom: 48px; scroll-margin-top: 16px; }
  83. main h2 {
  84. margin: 0 0 16px;
  85. font: 600 13px/1 var(--mono);
  86. text-transform: uppercase;
  87. letter-spacing: 0.08em;
  88. color: var(--muted);
  89. }
  90. main h3 { margin: 28px 0 8px; font-size: 19px; letter-spacing: -0.01em; }
  91. main section p, main section li { max-width: 68ch; }
  92. main section ul:not(.cards) { padding-left: 22px; }
  93. main section li { margin-bottom: 6px; }
  94. main section li pre { margin: 8px 0 0; }
  95. .small { font-size: 14.5px; color: var(--muted); }
  96. /* Code */
  97. code { font: 0.88em/1.5 var(--mono); }
  98. :not(pre) > code {
  99. background: var(--tag-bg);
  100. padding: 2px 5px;
  101. border-radius: 5px;
  102. white-space: nowrap;
  103. }
  104. pre {
  105. margin: 0 0 16px;
  106. padding: 14px 16px;
  107. background: var(--surface);
  108. border: 1px solid var(--border);
  109. border-radius: var(--radius);
  110. overflow-x: auto;
  111. }
  112. pre code { font-size: 14px; }
  113. /* Feature cards */
  114. .cards {
  115. list-style: none;
  116. margin: 0;
  117. padding: 0;
  118. display: grid;
  119. grid-template-columns: 1fr;
  120. gap: 16px;
  121. }
  122. @media (min-width: 640px) {
  123. .cards { grid-template-columns: 1fr 1fr; }
  124. }
  125. .card {
  126. background: var(--surface);
  127. border: 1px solid var(--border);
  128. border-radius: var(--radius);
  129. padding: 20px;
  130. }
  131. .card h3 { margin: 0 0 8px; font-size: 17px; }
  132. .card p { margin: 0; color: var(--muted); font-size: 15.5px; }
  133. /* Tables */
  134. .table-scroll { overflow-x: auto; margin: 0 0 16px; }
  135. table { width: 100%; border-collapse: collapse; font-size: 15.5px; }
  136. th, td { text-align: left; vertical-align: top; padding: 9px 12px 9px 0; border-bottom: 1px solid var(--border); }
  137. th { font-weight: 600; font-size: 14px; color: var(--muted); }
  138. td:first-child { white-space: nowrap; }
  139. .libraries td:first-child { white-space: normal; min-width: 9em; }
  140. .libraries td:last-child { white-space: nowrap; padding-right: 0; }
  141. /* Download box */
  142. .release {
  143. background: var(--surface);
  144. border: 1px solid var(--border);
  145. border-radius: var(--radius);
  146. padding: 20px 20px 6px;
  147. margin-bottom: 20px;
  148. }
  149. .release-version {
  150. display: flex;
  151. flex-wrap: wrap;
  152. align-items: baseline;
  153. gap: 4px 12px;
  154. margin: 0 0 8px;
  155. }
  156. .release-version strong { font: 600 22px/1.2 var(--mono); letter-spacing: -0.02em; }
  157. .release-version span { color: var(--muted); font-size: 15px; }
  158. .downloads td:last-child a { font: 14.5px/1.5 var(--mono); overflow-wrap: anywhere; }
  159. .downloads td:first-child { white-space: normal; }
  160. @media (max-width: 520px) {
  161. .downloads thead { display: none; }
  162. .downloads tr { display: block; padding: 9px 0; border-bottom: 1px solid var(--border); }
  163. .downloads td { display: block; padding: 0; border: 0; }
  164. .downloads td:first-child { font-size: 14px; color: var(--muted); }
  165. }
  166. /* Footer */
  167. .site-footer { border-top: 1px solid var(--border); }
  168. .site-footer p { margin: 0; padding: 24px 0 32px; font-size: 14px; color: var(--muted); }