page.module.css 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. .page {
  2. --gray-rgb: 0, 0, 0;
  3. --gray-alpha-200: rgba(var(--gray-rgb), 0.08);
  4. --gray-alpha-100: rgba(var(--gray-rgb), 0.05);
  5. --button-primary-hover: #383838;
  6. --button-secondary-hover: #f2f2f2;
  7. display: grid;
  8. grid-template-rows: 20px 1fr 20px;
  9. align-items: center;
  10. justify-items: center;
  11. min-height: 100svh;
  12. padding: 80px;
  13. gap: 64px;
  14. font-synthesis: none;
  15. }
  16. @media (prefers-color-scheme: dark) {
  17. .page {
  18. --gray-rgb: 255, 255, 255;
  19. --gray-alpha-200: rgba(var(--gray-rgb), 0.145);
  20. --gray-alpha-100: rgba(var(--gray-rgb), 0.06);
  21. --button-primary-hover: #ccc;
  22. --button-secondary-hover: #1a1a1a;
  23. }
  24. }
  25. .main {
  26. display: flex;
  27. flex-direction: column;
  28. gap: 32px;
  29. grid-row-start: 2;
  30. }
  31. .main ol {
  32. font-family: var(--font-geist-mono);
  33. padding-left: 0;
  34. margin: 0;
  35. font-size: 14px;
  36. line-height: 24px;
  37. letter-spacing: -0.01em;
  38. list-style-position: inside;
  39. }
  40. .main li:not(:last-of-type) {
  41. margin-bottom: 8px;
  42. }
  43. .main code {
  44. font-family: inherit;
  45. background: var(--gray-alpha-100);
  46. padding: 2px 4px;
  47. border-radius: 4px;
  48. font-weight: 600;
  49. }
  50. .ctas {
  51. display: flex;
  52. gap: 16px;
  53. }
  54. .ctas a {
  55. appearance: none;
  56. border-radius: 128px;
  57. height: 48px;
  58. padding: 0 20px;
  59. border: none;
  60. font-family: var(--font-geist-sans);
  61. border: 1px solid transparent;
  62. transition: background 0.2s, color 0.2s, border-color 0.2s;
  63. cursor: pointer;
  64. display: flex;
  65. align-items: center;
  66. justify-content: center;
  67. font-size: 16px;
  68. line-height: 20px;
  69. font-weight: 500;
  70. }
  71. a.primary {
  72. background: var(--foreground);
  73. color: var(--background);
  74. gap: 8px;
  75. }
  76. a.secondary {
  77. border-color: var(--gray-alpha-200);
  78. min-width: 180px;
  79. }
  80. button.secondary {
  81. appearance: none;
  82. border-radius: 128px;
  83. height: 48px;
  84. padding: 0 20px;
  85. border: none;
  86. font-family: var(--font-geist-sans);
  87. border: 1px solid transparent;
  88. transition: background 0.2s, color 0.2s, border-color 0.2s;
  89. cursor: pointer;
  90. display: flex;
  91. align-items: center;
  92. justify-content: center;
  93. font-size: 16px;
  94. line-height: 20px;
  95. font-weight: 500;
  96. background: transparent;
  97. border-color: var(--gray-alpha-200);
  98. min-width: 180px;
  99. }
  100. .footer {
  101. font-family: var(--font-geist-sans);
  102. grid-row-start: 3;
  103. display: flex;
  104. gap: 24px;
  105. }
  106. .footer a {
  107. display: flex;
  108. align-items: center;
  109. gap: 8px;
  110. }
  111. .footer img {
  112. flex-shrink: 0;
  113. }
  114. /* Enable hover only on non-touch devices */
  115. @media (hover: hover) and (pointer: fine) {
  116. a.primary:hover {
  117. background: var(--button-primary-hover);
  118. border-color: transparent;
  119. }
  120. a.secondary:hover {
  121. background: var(--button-secondary-hover);
  122. border-color: transparent;
  123. }
  124. .footer a:hover {
  125. text-decoration: underline;
  126. text-underline-offset: 4px;
  127. }
  128. }
  129. @media (max-width: 600px) {
  130. .page {
  131. padding: 32px;
  132. padding-bottom: 80px;
  133. }
  134. .main {
  135. align-items: center;
  136. }
  137. .main ol {
  138. text-align: center;
  139. }
  140. .ctas {
  141. flex-direction: column;
  142. }
  143. .ctas a {
  144. font-size: 14px;
  145. height: 40px;
  146. padding: 0 16px;
  147. }
  148. a.secondary {
  149. min-width: auto;
  150. }
  151. .footer {
  152. flex-wrap: wrap;
  153. align-items: center;
  154. justify-content: center;
  155. }
  156. }
  157. @media (prefers-color-scheme: dark) {
  158. .logo {
  159. filter: invert();
  160. }
  161. }