Files
seedPass/landing/style.css
thePR0M3TH3AN 69a71c3573 update
2024-10-22 16:51:55 -04:00

740 lines
14 KiB
CSS

/* General Reset */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Roboto', sans-serif;
line-height: 1.6;
background-color: #f4f4f9;
color: #283c4f;
transition: background-color 0.3s, color 0.3s;
}
/* Dark Mode */
body.dark-mode {
background-color: #0d1117;
color: #c9d1d9;
}
/* Dark Mode Toggle */
.dark-mode-toggle {
position: fixed;
top: 20px;
right: 20px;
z-index: 1000;
}
.dark-mode-toggle input[type="checkbox"] {
height: 0;
width: 0;
visibility: hidden;
}
.dark-mode-toggle label {
cursor: pointer;
text-indent: -9999px;
width: 50px;
height: 25px;
background: grey;
display: block;
border-radius: 100px;
position: relative;
}
.dark-mode-toggle label:after {
content: '';
position: absolute;
top: 2px;
left: 2px;
width: 21px;
height: 21px;
background: #fff;
border-radius: 90px;
transition: 0.3s;
}
.dark-mode-toggle input:checked + label {
background: #6e5494;
}
.dark-mode-toggle input:checked + label:after {
left: calc(100% - 2px);
transform: translateX(-100%);
}
.dark-mode-toggle label:active:after {
width: 28px;
}
/* Navbar */
.navbar {
background-color: #283c4f;
padding: 20px 0;
position: sticky;
top: 0;
width: 100%;
z-index: 999;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
transition: background-color 0.3s;
}
.navbar .container {
display: flex;
justify-content: space-between;
align-items: center;
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
}
.navbar .logo {
max-width: 200px;
transition: transform 0.3s;
}
.navbar .logo:hover {
transform: scale(1.05);
}
.nav-links {
list-style: none;
display: flex;
}
.nav-links li {
margin-left: 20px;
}
.nav-links a {
color: #ffffff;
text-decoration: none;
font-weight: 500;
transition: color 0.3s;
}
.nav-links a:hover {
color: #e94a39;
}
/* Hamburger Menu Toggle */
.menu-toggle {
display: none;
font-size: 1.5rem;
color: #ffffff;
cursor: pointer;
}
@media screen and (max-width: 768px) {
.menu-toggle {
display: block;
}
.nav-links {
flex-direction: column;
width: 100%;
display: none;
}
.nav-links li {
margin: 10px 0;
}
.nav-links.active {
display: flex;
}
}
/* Hero/Intro Section */
.intro {
text-align: center;
padding: 120px 20px;
background: linear-gradient(135deg, #283c4f 0%, #1a2733 100%);
color: #ffffff;
position: relative;
overflow: hidden;
}
.intro::before {
content: '';
position: absolute;
top: 0;
left: 50%;
width: 200%;
height: 100%;
background: rgba(255, 255, 255, 0.1);
transform: translateX(-50%);
z-index: 1;
}
.intro .container {
position: relative;
z-index: 2;
}
.intro h1 {
font-size: 3rem;
margin-bottom: 20px;
animation: fadeInDown 1s ease-out;
}
.intro p {
font-size: 1.2rem;
margin-bottom: 30px;
animation: fadeInUp 1s ease-out 0.5s;
}
.cta-button {
display: inline-flex;
align-items: center;
justify-content: center;
background-color: #e94a39;
color: #ffffff;
padding: 15px 30px;
font-size: 1.2rem;
font-weight: bold;
text-decoration: none;
border-radius: 50px;
border: none;
transition: background-color 0.3s, transform 0.3s;
}
.cta-button i {
margin-right: 10px;
}
.cta-button:hover {
background-color: #d43d2a;
transform: translateY(-3px);
}
/* Features Section */
.features {
background-color: #f6f8fa;
padding: 80px 20px;
transition: background-color 0.3s;
}
.features h2 {
text-align: center;
font-size: 2.5rem;
color: #24292e;
margin-bottom: 50px;
position: relative;
}
.features h2::after {
content: '';
width: 60px;
height: 4px;
background-color: #e94a39;
display: block;
margin: 10px auto 0 auto;
border-radius: 2px;
}
.features ul {
max-width: 1000px;
margin: 0 auto;
list-style: none;
padding: 0;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
grid-gap: 30px;
}
.features ul li {
background-color: #ffffff;
padding: 30px 20px;
border-radius: 12px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
transition: transform 0.3s, box-shadow 0.3s;
display: flex;
align-items: center;
}
.features ul li i {
font-size: 2rem;
color: #e94a39;
margin-right: 20px;
}
.features ul li:hover {
transform: translateY(-5px);
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}
/* How It Works Section */
.how-it-works {
padding: 80px 20px;
background-color: #f6f8fa;
animation: fadeInUp 1s ease-out;
transition: background-color 0.3s;
}
.how-it-works h2 {
text-align: center;
font-size: 2.5rem;
color: #24292e;
margin-bottom: 40px;
position: relative;
}
.how-it-works h2::after {
content: '';
width: 60px;
height: 4px;
background-color: #e94a39;
display: block;
margin: 10px auto 0 auto;
border-radius: 2px;
}
.how-it-works p {
max-width: 800px;
margin: 0 auto 30px auto;
font-size: 1.1rem;
text-align: center;
color: #24292e;
}
.directory-tree {
background-color: #f6f8fa;
border-left: 4px solid #e94a39;
padding: 20px;
margin: 20px auto;
max-width: 800px;
overflow-x: auto;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
font-family: 'Courier New', Courier, monospace;
font-size: 1rem;
line-height: 1.5;
position: relative;
transition: transform 0.3s, background-color 0.3s, border-left 0.3s;
}
.directory-tree:hover {
transform: scale(1.02);
}
.directory-tree::before {
content: '';
position: absolute;
top: 10px;
left: 10px;
width: 20px;
height: 20px;
background-image: url('https://icons.iconarchive.com/icons/icons8/windows-8/256/Content-folder-icon.png');
background-size: cover;
}
.directory-tree .parent {
color: #e94a39;
font-weight: bold;
}
.directory-tree .child {
color: #24292e;
margin-left: 20px;
}
.directory-tree .grandchild {
color: #586069;
margin-left: 40px;
}
/* Tooltip Styling */
.directory-tree span[data-tooltip] {
position: relative;
}
.directory-tree span[data-tooltip]::after {
content: attr(data-tooltip);
position: absolute;
left: 50%;
bottom: 100%;
transform: translateX(-50%);
background-color: #24292e;
color: #ffffff;
padding: 5px 10px;
border-radius: 4px;
white-space: nowrap;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s;
pointer-events: none;
z-index: 10;
font-size: 0.9rem;
}
.directory-tree span[data-tooltip]:hover::after {
opacity: 1;
visibility: visible;
}
/* Disclaimer Section */
.disclaimer {
padding: 60px 0;
background-color: #fdf2f2;
transition: background-color 0.3s ease;
}
.disclaimer .container {
background-color: #fff;
border-radius: 10px;
padding: 40px;
max-width: 900px;
margin: 0 auto;
box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
transition: background-color 0.3s ease, color 0.3s ease;
}
.disclaimer h2 {
color: #e74c3c;
font-size: 2.5rem;
margin-bottom: 20px;
text-align: center;
font-weight: 700;
}
.disclaimer p {
font-size: 1.1rem;
line-height: 1.8;
color: #555;
margin-bottom: 20px;
text-align: center;
}
.disclaimer ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 20px;
}
.disclaimer ul li {
display: flex;
align-items: flex-start;
padding: 20px;
border-left: 4px solid #e74c3c;
background-color: #fdf2f2;
border-radius: 8px;
transition: background-color 0.3s ease, color 0.3s ease;
}
.disclaimer ul li:hover {
background-color: #fde0e0;
}
.disclaimer ul li i {
font-size: 1.5rem;
color: #e74c3c;
margin-right: 15px;
margin-top: 5px;
}
.disclaimer ul li strong {
font-weight: 600;
color: #333;
margin-right: 5px;
}
.disclaimer ul li span {
color: #777;
line-height: 1.6;
}
.disclaimer ul li:hover span {
color: #555;
}
/* Footer Info */
.disclaimer p:last-child {
margin-top: 30px;
font-size: 1rem;
text-align: center;
color: #666;
}
/* Dark Mode for Disclaimer Section */
body.dark-mode .disclaimer {
background-color: #1e1e1e;
}
body.dark-mode .disclaimer .container {
background-color: #2a2a2a;
color: #d1d1d1;
box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.4);
}
body.dark-mode .disclaimer ul li {
background-color: #333;
border-left: 4px solid #e74c3c;
}
body.dark-mode .disclaimer ul li:hover {
background-color: #444;
}
body.dark-mode .disclaimer ul li i {
color: #e74c3c;
}
body.dark-mode .disclaimer ul li strong {
color: #f0f0f0;
}
body.dark-mode .disclaimer ul li span {
color: #b0b0b0;
}
body.dark-mode .disclaimer p {
color: #cfcfcf;
}
/* Footer */
footer {
background-color: #24292e;
padding: 30px 20px;
text-align: center;
font-size: 0.9rem;
color: white;
transition: background-color 0.3s, color 0.3s; /* Added transition for consistency */
}
footer .container {
display: flex;
flex-direction: column;
align-items: center;
}
footer .social-media {
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 15px;
}
footer .social-media a {
color: white;
margin: 0 10px;
font-size: 1.2rem;
transition: color 0.3s, transform 0.3s;
display: flex;
align-items: center;
justify-content: center;
text-decoration: none;
}
footer .social-media a:hover {
color: #e94a39;
transform: scale(1.1);
}
/* Custom Nostr Icon Styling */
.nostr-icon {
width: 24px;
height: 24px;
fill: currentColor; /* Inherit color from parent link */
transition: fill 0.3s, transform 0.3s;
display: inline-block;
vertical-align: middle; /* Align vertically with GitHub icon */
}
/* Adjust Icon Color in Dark Mode */
body.dark-mode .nostr-icon {
/* No filter needed as color is inherited */
/* If the SVG doesn't display correctly, you can uncomment the next line */
/* filter: brightness(0) invert(1); */
}
/* GitHub Icon Styling */
.social-media a i.fab.fa-github {
font-size: 24px;
transition: color 0.3s, transform 0.3s;
width: 24px; /* Ensure consistent sizing */
height: 24px; /* Ensure consistent sizing */
}
/* Ensure both icons align vertically */
.social-media a,
.social-media a img,
.social-media a i {
vertical-align: middle;
}
/* Animations */
@keyframes fadeInDown {
from {
opacity: 0;
transform: translateY(-20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* Responsive Design */
@media screen and (max-width: 992px) {
.features ul {
grid-template-columns: 1fr 1fr;
}
}
@media screen and (max-width: 768px) {
.navbar .container {
flex-direction: column;
align-items: flex-start;
}
.nav-links {
flex-direction: column;
width: 100%;
display: none;
}
.nav-links li {
margin: 10px 0;
}
.nav-links.active {
display: flex;
}
.features ul {
grid-template-columns: 1fr;
}
.directory-tree {
padding: 15px;
font-size: 0.9rem;
}
.directory-tree::before {
top: 5px;
left: 5px;
width: 16px;
height: 16px;
}
.dark-mode-toggle {
top: 10px;
right: 10px;
}
/* Adjust disclaimer container padding on smaller screens */
.disclaimer .container {
padding: 40px 15px;
}
/* Adjust footer icons size for smaller screens */
footer .social-media a i.fab.fa-github,
footer .social-media a svg.nostr-icon {
width: 20px;
height: 20px;
}
}
/* Dark Mode Styling */
body.dark-mode .navbar {
background-color: #0d1117;
}
body.dark-mode .intro {
background: linear-gradient(135deg, #0d1117 0%, #161b22 100%);
}
body.dark-mode .intro p,
body.dark-mode .how-it-works p,
body.dark-mode .features h2,
body.dark-mode .features ul li,
body.dark-mode .disclaimer p {
color: #c9d1d9;
}
body.dark-mode .cta-button {
background-color: #e94a39;
color: #ffffff;
}
body.dark-mode .cta-button:hover {
background-color: #2ea043;
color: #ffffff;
}
body.dark-mode .features {
background-color: #0d1117;
}
body.dark-mode .features h2 {
color: #c9d1d9;
}
body.dark-mode .features ul li {
background-color: #161b22;
box-shadow: 0 4px 12px rgba(255, 255, 255, 0.05);
}
body.dark-mode .how-it-works {
background-color: #0d1117;
}
body.dark-mode .how-it-works h2 {
color: #c9d1d9;
}
body.dark-mode .directory-tree {
background-color: #161b22;
border-left: 4px solid #e94a39;
}
body.dark-mode .directory-tree span.parent {
color: #ff8779;
}
body.dark-mode .directory-tree span.child {
color: #c9d1d9;
}
body.dark-mode .directory-tree span.grandchild {
color: #ff8779;
}
body.dark-mode .disclaimer .container {
background-color: #2c2f33;
color: #ffffff;
border-left: 5px solid #e74c3c;
}
body.dark-mode .disclaimer ul li::before {
color: #e74c3c;
}
body.dark-mode footer {
background-color: #0d1117;
}
/* Additional Enhancements */
/* Smooth Scrolling */
html {
scroll-behavior: smooth;
}