demo.css 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. :root {
  2. --bg-color: #111;
  3. --text-color: #9b9b9b;
  4. --highlight-color: #ff4b4b;
  5. --secondary-color: #2a2a2e;
  6. --accent-color: #ff9f43;
  7. --code-bg: #000;
  8. --orange: #FF8F42;
  9. --border-color: #222;
  10. }
  11. body {
  12. background-color: var(--bg-color);
  13. color: var(--text-color);
  14. font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  15. margin: 0;
  16. padding: 40px;
  17. display: flex;
  18. justify-content: center;
  19. overflow-y: auto;
  20. }
  21. .container {
  22. max-width: 900px;
  23. width: 100%;
  24. }
  25. h1 {
  26. color: var(--orange);
  27. font-size: 42px;
  28. margin-bottom: 15px;
  29. font-weight: 600;
  30. letter-spacing: -1px;
  31. }
  32. .description {
  33. font-size: 18px;
  34. line-height: 1.5;
  35. margin-bottom: 40px;
  36. color: #ccc;
  37. }
  38. h2 {
  39. font-size: 24px;
  40. color: #fff;
  41. margin-bottom: 10px;
  42. font-weight: 500;
  43. }
  44. p {
  45. margin-top: 0;
  46. margin-bottom: 20px;
  47. line-height: 1.6;
  48. }
  49. code.inline {
  50. background: rgba(255,255,255,0.1);
  51. color: #e6e6e6;
  52. padding: 2px 6px;
  53. border-radius: 3px;
  54. font-family: 'Roboto Mono', monospace;
  55. font-size: 0.9em;
  56. }
  57. /* Code & Demo Box */
  58. .box-container {
  59. margin-top: 50px;
  60. background: #171717;
  61. border-radius: 6px;
  62. overflow: hidden;
  63. box-shadow: 0 10px 40px rgba(0,0,0,0.2);
  64. }
  65. .box-header {
  66. display: flex;
  67. justify-content: space-between;
  68. align-items: center;
  69. padding: 0 20px;
  70. height: 50px;
  71. background: rgba(255,255,255,0.02);
  72. border-bottom: 1px solid var(--border-color);
  73. }
  74. .box-title {
  75. color: var(--orange);
  76. font-weight: 600;
  77. font-size: 14px;
  78. }
  79. .tabs {
  80. display: flex;
  81. gap: 20px;
  82. height: 100%;
  83. }
  84. .tab {
  85. display: flex;
  86. align-items: center;
  87. height: 100%;
  88. cursor: pointer;
  89. color: #666;
  90. font-weight: 600;
  91. font-size: 13px;
  92. border-bottom: 2px solid transparent;
  93. transition: color 0.2s;
  94. }
  95. .tab:hover {
  96. color: #999;
  97. }
  98. .tab.active {
  99. color: var(--orange);
  100. border-bottom-color: var(--orange);
  101. }
  102. /* Code Views */
  103. .code-view, .html-view {
  104. background: var(--code-bg);
  105. padding: 20px;
  106. font-family: 'Roboto Mono', 'Monaco', monospace;
  107. font-size: 13px;
  108. line-height: 1.6;
  109. color: #abb2bf;
  110. overflow-x: auto;
  111. display: none;
  112. white-space: pre; /* Use pre to respect indentation */
  113. margin: 0;
  114. }
  115. .code-view.active, .html-view.active {
  116. display: block;
  117. }
  118. /* Syntax Highlighting */
  119. .kwd { color: #c678dd; }
  120. .str { color: #98c379; }
  121. .fun { color: #61afef; }
  122. .num { color: #d19a66; }
  123. .tag { color: #e06c75; }
  124. .attr { color: #d19a66; }
  125. .val { color: #98c379; }
  126. .punc { color: #abb2bf; }
  127. .com { color: #5c6370; font-style: italic; }
  128. /* Visual Demo Area */
  129. .demo-visual {
  130. padding: 30px;
  131. background: #1a1a1a;
  132. border-top: 1px solid var(--border-color);
  133. min-height: 150px;
  134. /* Flex alignment defaults, can be overridden by specific page styles */
  135. display: flex;
  136. flex-direction: column;
  137. justify-content: center;
  138. }
  139. .action-bar {
  140. padding: 15px 30px;
  141. display: flex;
  142. justify-content: flex-end;
  143. border-top: 1px solid var(--border-color);
  144. }
  145. .play-btn {
  146. background: transparent;
  147. border: 1px solid #444;
  148. color: #fff;
  149. padding: 6px 14px;
  150. border-radius: 100px;
  151. font-size: 12px;
  152. font-weight: 600;
  153. cursor: pointer;
  154. transition: all 0.2s;
  155. }
  156. .play-btn:hover {
  157. border-color: var(--orange);
  158. color: var(--orange);
  159. }