big steppy
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 

618 wiersze
8.7 KiB

  1. .light {
  2. color: #000;
  3. background: #eee;
  4. font-family: Arial;
  5. }
  6. .dark {
  7. color: #eee;
  8. background: #111;
  9. font-family: Arial;
  10. }
  11. #character-presets {
  12. font-size: 24px;
  13. }
  14. #export-area {
  15. max-width: 80%;
  16. width: 80%;
  17. }
  18. body.dark input {
  19. color: #eee;
  20. background: #444;
  21. }
  22. body.dark select {
  23. color: #eee;
  24. background: #444;
  25. }
  26. body.light button {
  27. color: #000;
  28. background: #ddd;
  29. }
  30. body.dark button {
  31. color: #eee;
  32. background: #111;
  33. }
  34. body.dark div {
  35. background: #111;
  36. }
  37. .game-area {
  38. display: flex;
  39. margin: auto;
  40. }
  41. @media (max-aspect-ratio: 16/9){
  42. .game-area {
  43. width: 100%
  44. }
  45. }
  46. @media (min-aspect-ratio: 16/10){
  47. .game-area {
  48. width: 75%
  49. }
  50. }
  51. #log-area {
  52. flex: 5;
  53. display:none;
  54. }
  55. body.light #log {
  56. height: 900px;
  57. overflow: auto;
  58. color: #000;
  59. background-color: #fff;
  60. }
  61. body.dark #log {
  62. height: 900px;
  63. overflow: auto;
  64. color: #eee;
  65. background-color: #111;
  66. }
  67. .stat-header-self {
  68. font-weight: bold;
  69. font-size: 150%;
  70. min-width:250px;
  71. }
  72. .stat-header {
  73. font-weight: bold;
  74. font-size: 150%;
  75. min-width:130px;
  76. }
  77. .stat-line {
  78. font-weight: normal;
  79. font-size: 12pt;
  80. }
  81. .stat-line-hidden {
  82. font-weight: normal;
  83. font-size: 12pt;
  84. }
  85. .stat-line-hidden {
  86. display: none;
  87. position: relative;
  88. }
  89. .stat-line-hidden:before {
  90. content: attr(data-stat);
  91. position: absolute;
  92. text-align: center;
  93. top: 5px;
  94. left: 0;
  95. right: 0;
  96. }
  97. .stat-line-hidden .value {
  98. background-color: #0f0;
  99. display: inline-block;
  100. height: 24px;
  101. width: attr(data-percent percentage);
  102. }
  103. progress {
  104. background: blue;
  105. }
  106. .stat-percent-full {
  107. background: #f00;
  108. }
  109. .sidebar {
  110. display: none;
  111. flex-wrap: wrap;
  112. flex-direction: column;
  113. text-align: right;
  114. min-width: 250px;
  115. flex: 1;
  116. }
  117. .preset-selector {
  118. height: 25px;
  119. }
  120. .option-container {
  121. margin: auto;
  122. }
  123. .button-container {
  124. flex-wrap: wrap;
  125. flex-direction: column;
  126. flex: 1;
  127. }
  128. .stat-container {
  129. width: 100%;
  130. display: flex;
  131. flex-wrap: wrap;
  132. flex-direction: row;
  133. flex: 1
  134. }
  135. .action-part-container {
  136. max-height: 1000px;
  137. display: flex;
  138. flex-wrap: wrap;
  139. }
  140. #action-panel {
  141. display: none;
  142. }
  143. .option-button {
  144. font-size: 20px;
  145. width: 120px;
  146. height: 75px;
  147. }
  148. #button-start {
  149. width:200px;
  150. height:100px;
  151. font-size: 32px;
  152. }
  153. .option-form {
  154. font-size: 16px;
  155. width: 300px;
  156. height: 100px;
  157. }
  158. .stat-button {
  159. font-size: 18px;
  160. width: 50%;
  161. height: 75px;
  162. }
  163. .action-button {
  164. font-size: 18px;
  165. width: 50%;
  166. height: 75px;
  167. display: none;
  168. }
  169. #victim-table {
  170. display: none;
  171. margin: auto;
  172. width: 80%;
  173. }
  174. .victim-table-cell {
  175. width: 10%;
  176. }
  177. .reveal-if-active {
  178. opacity: 0;
  179. max-height: 0;
  180. overflow: hidden;
  181. }
  182. input[type="radio"]:checked ~ .reveal-if-active,
  183. input[type="checkbox"]:checked ~ .reveal-if-active {
  184. opacity: 1;
  185. max-height: 500000px; /* little bit of a magic number :( */
  186. overflow: visible;
  187. }
  188. .flex-outer {
  189. width: 100%;
  190. display: flex;
  191. flex-direction: row;
  192. flex-wrap: wrap;
  193. text-align: center;
  194. justify-content: center;
  195. padding: 0px;
  196. }
  197. .custom-category {
  198. text-align: center;
  199. margin: 10px;
  200. width: 500px;
  201. }
  202. .custom-category-sub {
  203. text-align: center;
  204. margin: 10px;
  205. width: 400px;
  206. padding: 0px;
  207. margin: 0px 50px;
  208. }
  209. body.light .custom-category {
  210. background: #ddd;
  211. }
  212. body.dark .custom-category {
  213. background: #222;
  214. }
  215. body.dark .custom-category div {
  216. background: #222;
  217. }
  218. .custom-header-static {
  219. font-size: 250%;
  220. margin: 10px;
  221. display: inline-block;
  222. }
  223. body.light .custom-header-static {
  224. background: #ddd;
  225. }
  226. body.dark .custom-header-static {
  227. background: #555;
  228. }
  229. .custom-header {
  230. font-size: 250%;
  231. margin: 10px;
  232. display: inline-block;
  233. border-style: dotted;
  234. border-width: 1px;
  235. border-length: 5px;
  236. }
  237. .custom-category-sub .custom-header {
  238. font-size: 200%;
  239. }
  240. body.light .custom-header {
  241. color: #aaa;
  242. background: #ddd;
  243. }
  244. body.dark .custom-header {
  245. color: #555;
  246. background: #222;
  247. }
  248. body.light input[type="checkbox"]:checked+
  249. .custom-header {
  250. color: #000;
  251. border-style: solid;
  252. margin: 10px;
  253. background: #bbb;
  254. }
  255. body.dark input[type="checkbox"]:checked+
  256. .custom-header {
  257. color: #fff;
  258. border-style: solid;
  259. margin: 10px;
  260. background: #444;
  261. }
  262. .custom-header-checkbox {
  263. display: none;
  264. }
  265. .flex-outer li,
  266. .flex-inner {
  267. display: flex;
  268. flex-wrap: wrap;
  269. align-items: center;
  270. text-align: center;
  271. width: 500px;
  272. }
  273. .flex-outer input[type="radio"],
  274. .flex-outer input[type="checkbox"] {
  275. display: none;
  276. }
  277. .flex-outer input[type="radio"] + label:not(.custom-header),
  278. .flex-outer input[type="checkbox"] + label:not(.custom-header) {
  279. user-select: none;
  280. flex: 1 0 400px;
  281. font-size: 24px;
  282. }
  283. body.dark .flex-outer input[type="radio"] + label:not(.custom-header),
  284. body.dark .flex-outer input[type="checkbox"] + label:not(.custom-header) {
  285. color: #888;
  286. background: #311;
  287. }
  288. body.dark .flex-outer input[type="radio"]:checked + label:not(.custom-header),
  289. body.dark .flex-outer input[type="checkbox"]:checked + label:not(.custom-header) {
  290. color: #fff;
  291. background: #131;
  292. }
  293. body.light .flex-outer input[type="radio"] + label:not(.custom-header),
  294. body.light .flex-outer input[type="checkbox"] + label:not(.custom-header) {
  295. color: #555;
  296. background: #faa;
  297. }
  298. body.light .flex-outer input[type="radio"]:checked + label:not(.custom-header),
  299. body.light .flex-outer input[type="checkbox"]:checked + label:not(.custom-header) {
  300. color: #111;
  301. background: #afa;
  302. }
  303. .flex-outer label {
  304. flex: 0 1 40%;
  305. }
  306. .flex-outer label + * {
  307. flex: 1 1 20%;
  308. }
  309. .preview {
  310. flex: 1 1 10%;
  311. }
  312. .flex-outer-sub {
  313. padding: 0px;
  314. align-items: center;
  315. }
  316. .flex-outer-sub li {
  317. display: flex;
  318. flex-wrap: wrap;
  319. align-items: center;
  320. width: 80%;
  321. }
  322. body.light .has-tooltip {
  323. position: relative;
  324. display: inline-block;
  325. border-bottom: 1px dotted black;
  326. }
  327. body.dark .has-tooltip {
  328. position: relative;
  329. display: inline-block;
  330. border-bottom: 1px dotted white;
  331. }
  332. body.light a {
  333. color: #0000FF;
  334. text-decoration: none;
  335. }
  336. body.light a:visited {
  337. color: #0000AA;
  338. }
  339. body.light a:hover {
  340. color: #0000EE;
  341. }
  342. body.dark a {
  343. color: #0000FF;
  344. text-decoration: none;
  345. }
  346. body.dark a:visited {
  347. color: #0000DD;
  348. }
  349. body.dark a:hover {
  350. color: #0000EE;
  351. }
  352. .character-build {
  353. margin: 50px;
  354. width: 90%;
  355. text-align: center;
  356. }
  357. #grow-panel {
  358. width: 100%;
  359. }
  360. th {
  361. font-weight: normal;
  362. }
  363. .growth-option {
  364. display: none;
  365. }
  366. .growth-option+label {
  367. display: none;
  368. }
  369. .growth-label {
  370. font-size: 20pt;
  371. }
  372. input[type="radio"]:checked+
  373. .growth-label {
  374. font-weight: bold;
  375. }
  376. .growth-amount {
  377. width: 50%;
  378. }
  379. ul {
  380. list-style: none;
  381. }
  382. .action-tab {
  383. flex-wrap: wrap;
  384. display: none;
  385. width: 100%;
  386. }
  387. .action-part-button {
  388. border: 1px;
  389. font-size: 30px;
  390. width: 50%;
  391. height: 70px;
  392. display: none;
  393. }
  394. .action-part-button.active {
  395. background: #555;
  396. }
  397. /* SRC: https://stackoverflow.com/questions/29738787/filling-water-animation/29740828 */
  398. .meter {
  399. border-radius: 0%;
  400. width: 10%;
  401. height: 150px;
  402. overflow: hidden;
  403. backface-visibility: hidden;
  404. transform: translate3d(0, 0, 0);
  405. display: inline-block;
  406. }
  407. body.light .meter {
  408. background: #ddd !important;
  409. }
  410. body.dark .meter {
  411. background: #222 !important;
  412. }
  413. .meter .meterLabel {
  414. z-index: 1;
  415. writing-mode: vertical-lr;
  416. text-orientation: upright;
  417. background: none;
  418. transform: rotate(0deg);
  419. font-size: 12px;
  420. text-align: center;
  421. position: absolute;
  422. left: 50%;
  423. top: 50%;
  424. transform: translate(-50%, -50%);
  425. }
  426. body.light .meterLabel {
  427. color: #000;
  428. }
  429. body.dark .meterLabel {
  430. color: #fff;
  431. mix-blend-mode: exclusion;
  432. }
  433. .meter {
  434. display: none
  435. }
  436. .meter .fill {
  437. position: absolute;
  438. top: 0;
  439. left: 0;
  440. background: none;
  441. }
  442. .meter #waveShape {
  443. animation-name: waveAction;
  444. animation-iteration-count: infinite;
  445. animation-timing-function: linear;
  446. animation-duration: 0.5s;
  447. width:300px;
  448. height: 150px;
  449. fill: #04ACFF;
  450. }
  451. .meter#arousalMeter #waveShape {
  452. fill: #FF0000;
  453. }
  454. .meter#orgasmMeter #waveShape {
  455. fill: #FFFFFF;
  456. }
  457. .meter#edgeMeter #waveShape {
  458. fill: #FF6600;
  459. }
  460. .meter#cumMeter #waveShape {
  461. fill: #EEEEEE;
  462. }
  463. .meter#femcumMeter #waveShape {
  464. fill: #999999;
  465. }
  466. .meter#milkMeter #waveShape {
  467. fill: #FFFFFF;
  468. }
  469. .meter#gasMeter #waveShape {
  470. fill: #33FF33;
  471. }
  472. .meter#pissMeter #waveShape {
  473. fill: #FFFF33;
  474. }
  475. .meter#scatMeter #waveShape {
  476. animation-duration: 2s;
  477. fill: #552222;
  478. }
  479. @keyframes fillAction {
  480. 0% {
  481. transform: translate(0, 150px);
  482. }
  483. 100% {
  484. transform: translate(0, -5px);
  485. }
  486. }
  487. @keyframes waveAction {
  488. 0% {
  489. transform: translate(-150px, 0);
  490. }
  491. 100% {
  492. transform: translate(0, 0);
  493. }
  494. }
  495. /* stolen directly from w3schools lol */
  496. .shaking {
  497. animation: shake 1s;
  498. animation-iteration-count: infinite;
  499. }
  500. @keyframes shake {
  501. 0% { transform: translate(0px, 0px); }
  502. 10% { transform: translate(0px, -2px); }
  503. 25% { transform: translate(0px, 0px); }
  504. 100% { transform: translate(0px, 0px); }
  505. }