123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197 |
- body {
- font-family: sans-serif;
- background-color: #24273a;
- margin: 0;
- padding: 20px;
- transition: background-image 0.3s ease;
- }
- body.recording-active {
- background-image: url('stripesbg.png');
- background-repeat: repeat;
- background-size: 100px 100px;
- animation: moveStripes 2s linear infinite;
- }
- .container {
- max-width: 600px;
- margin: 0 auto;
- background-color: #363a4f;
- padding: 20px;
- border-radius: 8px;
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
- }
- h1 {
- text-align: center;
- color: #eed49f;
- }
- .controls {
- margin-bottom: 20px;
- text-align: center;
- color: #cad3f5;
- }
- .file-input, .tape-input {
- padding: 10px;
- margin: 10px;
- border: 1px solid #eed49f;
- border-radius: 4px;
- color: #cad3f5;
- background-color: #24273a;
- }
- .tape-input {
- height: 1.6em;
- }
- .playlist {
- border: 1px solid #eed49f;
- border-radius: 4px;
- padding: 15px;
- margin-bottom: 20px;
- color: #cad3f5;
- background-color: #24273a;
- }
- .track-list {
- list-style: none;
- padding: 0;
- }
- .track-list li {
- padding: 8px;
- border-bottom: 1px solid #494d64;
- cursor: move;
- user-select: none;
- transition: background-color 0.2s ease;
- }
- .track-list li:last-child {
- border-bottom: none;
- }
- .track-list li:hover {
- background-color: #363a4f;
- }
- .track-list li:active {
- background-color: #494d64;
- }
- .info {
- text-align: center;
- margin-bottom: 20px;
- color: #cad3f5;
- }
- .record-button {
- background-color: #ed8796;
- color: #24273a;
- padding: 10px 20px;
- border: none;
- font-weight: bold;
- border-radius: 8px; /* Slightly more rounded corners */
- cursor: pointer;
- display: block;
- margin: 30px auto;
- box-shadow:
- 3px 3px 0 #d16573, /* Darker shade for the bottom-right shadow, creating depth */
- -3px -3px 0 #ffa8b9; /* Lighter shade for the top-left highlight, adding a cel-shaded effect */
- transform: translateY(-2px); /* Initial slight raise */
- transition: all 0.2s ease; /* Smooth transition for hover and click */
- position: relative; /* For positioning the click effect */
- outline: none; /* Remove default focus outline */
- }
- .record-button:hover {
- background-color: #f5a97f;
- transform: translateY(0px); /* Press down on hover */
- box-shadow:
- 1px 1px 0 #d16573, /* Reduced shadow on hover */
- -1px -1px 0 #ffa8b9; /* Reduced highlight on hover */
- }
- .record-button:active {
- transform: translateY(2px); /* Clicked effect - further press down */
- box-shadow: none; /* No shadow when clicked */
- }
- .record-button:active::after { /* Click animation */
- content: "";
- position: absolute;
- top: 50%;
- left: 50%;
- width: 0;
- height: 0;
- border-radius: 50%;
- background-color: rgba(255, 255, 255, 0.3); /* Faint white circle for click effect */
- transform: translate(-50%, -50%);
- animation: clickEffect 0.3s ease-out;
- }
- @keyframes clickEffect {
- 0% {
- width: 0;
- height: 0;
- }
- 50% {
- width: 60%;
- height: 60%;
- }
- 100% {
- width: 120%;
- height: 120%;
- opacity: 0;
- }
- }
- .progress {
- height: 20px;
- background-color: #181926;
- margin-top: 2em;
- border-radius: 4px;
- overflow: hidden;
- }
- .progress-bar {
- height: 100%;
- background: linear-gradient(90deg, #eed49f, #c6a0f6);
- width: 0%;
- transition: width 0.3s ease-in-out;
- }
- .volume-indicator {
- position: fixed;
- bottom: 10px;
- right: 10px;
- width: 20px;
- height: 100px;
- background: linear-gradient(0deg, #eed49f, #c6a0f6);
- border: 1px solid #999;
- }
- @keyframes moveStripes {
- 0% {
- background-position: 0 0;
- }
- 100% {
- background-position: 50px 50px;
- }
- }
- .faq {
- color: #cad3f5;
- margin-top: 2em;
- }
- .faq-question {
- font-weight: bold;
- font-size: 1.2em;
- }
- .faq-answer {
- margin-top: 0;
- font-size: 1em;
- }
|