das-letzte-summen/style.css
2025-09-05 10:50:28 +02:00

693 lines
12 KiB
CSS

@keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
.fading-out {
animation-name: fadeOut;
animation-duration: 2s;
animation-fill-mode: forwards;
}
body {
background-color: #1a1a1a;
color: #e0e0e0;
font-family: "Courier New", Courier, monospace;
margin: 0;
background-image: url("images/Gemini_Generated_Image_s4582ks4582ks458.png");
background-size: cover;
background-position: center;
background-attachment: fixed;
}
#landingpage {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100vh;
text-align: center;
box-shadow: inset 0 0 200px rgba(0, 0, 0, 0.9);
}
.landingpage-content-box {
background-color: rgba(10, 10, 10, 0.4);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
padding: 40px;
border-radius: 15px;
border: 1px solid rgba(255, 255, 255, 0.2);
box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);
text-align: center;
width: 800px;
max-width: 90%;
}
#landingpage h1 {
font-size: 4em;
color: #ffffff;
margin-bottom: 15px;
letter-spacing: 2px;
text-shadow: 0 0 5px rgba(0, 0, 0, 0.7);
}
#landingpage .intro-text {
font-size: 1.3em;
color: #ffffff;
max-width: 650px;
line-height: 1.6;
margin-bottom: 50px;
text-shadow: 0 0 5px rgba(0, 0, 0, 0.9);
}
#initial-start-btn {
padding: 15px 35px;
font-size: 1.3em;
font-weight: bold;
cursor: pointer;
background-color: rgba(20, 20, 20, 0.7);
border: 1px solid #777;
color: #e0e0e0;
border-radius: 5px;
transition: all 0.3s;
backdrop-filter: blur(2px);
}
#initial-start-btn:hover {
background-color: #e74c3c;
border-color: #c0392b;
transform: scale(1.05);
}
#continue-btn {
padding: 15px 35px;
font-size: 1.3em;
font-weight: bold;
cursor: pointer;
background-color: rgba(20, 20, 20, 0.7);
border: 1px solid #777;
color: #e0e0e0;
border-radius: 5px;
transition: all 0.3s;
backdrop-filter: blur(2px);
}
#continue-btn:hover {
background-color: #e74c3c;
border-color: #c0392b;
transform: scale(1.05);
}
.prolog-text {
font-size: 1.2em;
line-height: 1.4em;
margin-bottom: 20px;
}
#weiter-btn,
#open-eyes-btn {
display: block;
margin: 40px auto;
padding: 20px 40px;
font-size: 1.5em;
font-weight: bold;
cursor: pointer;
background-color: #333;
border: 1px solid #777;
color: #e0e0e0;
border-radius: 5px;
transition: all 0.3s;
}
#start-crash-btn:hover,
#open-eyes-btn:hover {
background-color: #e74c3c;
transform: scale(1.05);
}
#game-start-btn {
background-color: #333;
border: 1px solid #777;
color: #e0e0e0;
display: block;
margin: 40px auto;
padding: 20px 40px;
font-size: 1.5em;
font-weight: bold;
border-radius: 5px;
cursor: pointer;
font-size: 1em;
transition: background-color 0.3s;
align-items: center;
}
#game-start-btn:hover {
background-color: #e74c3c;
transform: scale(1.05);
}
#story-text {
font-size: 1.2em;
line-height: 1.4;
margin-bottom: 20px;
min-height: 200px;
}
.button-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px;
}
.btn {
background-color: #333;
border: 1px solid #777;
color: #e0e0e0;
padding: 15px;
border-radius: 5px;
cursor: pointer;
font-size: 1em;
transition: background-color 0.3s;
}
.btn:hover {
background-color: #555;
}
#player-stats {
margin-top: 20px;
padding-top: 10px;
border-top: 1px solid #555;
display: flex;
justify-content: space-around;
}
#inventory {
margin-top: 20px;
padding: 10px;
border: 1px dashed #444;
min-height: 50px;
}
#inventory-items {
display: flex;
gap: 10px;
margin-top: 10px;
}
.hidden {
display: none !important;
}
#intro-container,
#game-container {
width: 800px;
max-width: 90%;
margin: 5vh auto 0 auto;
padding: 20px;
background-color: rgba(0, 0, 0, 0.75);
border: 2px solid #555;
border-radius: 10px;
box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
text-align: center;
}
#player-stats {
display: flex;
flex-direction: column;
gap: 10px;
margin-top: 20px;
padding-top: 20px;
border-top: 1px solid #555;
}
.stat-container {
display: flex;
align-items: center;
gap: 10px;
}
.stat-label {
width: 300px;
text-align: left;
}
.stat-bar-background {
flex-grow: 1;
height: 20px;
background-color: #333;
border: 1px solid #555;
border-radius: 10px;
overflow: hidden;
}
.stat-bar-fill {
height: 100%;
width: 100%;
border-radius: 8px;
transition: width 0.5s ease-out;
}
#health-bar-fill { background-color: #2ecc71; }
#hunger-bar-fill { background-color: #e67e22; }
#thirst-bar-fill { background-color: #3498db; }
#inventory {
margin-top: 20px;
padding: 20px;
border: 1px dashed #444;
border-radius: 5px;
min-height: 85px;
}
#inventory-items {
display: flex;
flex-wrap: wrap;
gap: 10px;
}
.inventory-item {
position: relative;
width: 60px;
height: 60px;
background-color: #2a2a2a;
border: 1px solid #666;
padding: 5px;
border-radius: 5px;
cursor: pointer;
transition: all 0.2s;
display: flex;
justify-content: center;
align-items: center;
}
.inventory-item:hover {
transform: scale(1.1);
border-color: #aaa;
background-color: #3f3f3f;
}
.inventory-item img {
max-width: 100%;
max-height: 100%;
}
.item-tooltip {
display: none;
position: fixed;
min-width: 280px;
max-width: 420px;
width: max-content;
padding: 16px 20px;
background: linear-gradient(135deg, rgba(26, 26, 26, 0.98), rgba(40, 40, 40, 0.98));
border: 2px solid rgba(52, 152, 219, 0.3);
border-radius: 12px;
box-shadow:
0 8px 32px rgba(0, 0, 0, 0.6),
0 0 0 1px rgba(255, 255, 255, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.1);
backdrop-filter: blur(10px);
z-index: 2000;
pointer-events: none;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
line-height: 1.4;
animation: tooltipFadeIn 0.2s ease-out;
}
@keyframes tooltipFadeIn {
from {
opacity: 0;
transform: translateY(10px) scale(0.95);
}
to {
opacity: 1;
transform: translateY(0) scale(1);
}
}
.item-tooltip {
display: flex;
flex-direction: column;
gap: 8px;
}
.item-tooltip h4 {
margin: 0;
color: #3498db;
font-size: 1.15em;
font-weight: 600;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 380px;
}
.item-tooltip p {
margin: 0;
font-size: 0.95em;
color: #e0e0e0;
line-height: 1.5;
word-wrap: break-word;
overflow-wrap: break-word;
hyphens: auto;
}
.item-tooltip::before {
content: '';
position: absolute;
width: 0;
height: 0;
border: 8px solid transparent;
z-index: -1;
}
.item-tooltip.tooltip-bottom::before {
top: -16px;
left: 50%;
transform: translateX(-50%);
border-bottom-color: rgba(52, 152, 219, 0.3);
}
.item-tooltip.tooltip-top::before {
bottom: -16px;
left: 50%;
transform: translateX(-50%);
border-top-color: rgba(52, 152, 219, 0.3);
}
.item-tooltip.tooltip-left::before {
right: -16px;
top: 50%;
transform: translateY(-50%);
border-left-color: rgba(52, 152, 219, 0.3);
}
.item-tooltip.tooltip-right::before {
left: -16px;
top: 50%;
transform: translateY(-50%);
border-right-color: rgba(52, 152, 219, 0.3);
}
.modal-content {
position: relative;
overflow: visible;
}
.modal-body {
overflow: visible;
}
.inventory-item:hover .item-tooltip {
display: flex;
}
.modal .inventory-item:hover .item-tooltip {
display: flex;
}
@media (max-width: 768px) {
.item-tooltip {
min-width: 240px;
max-width: 320px;
padding: 14px 16px;
font-size: 0.9em;
}
.item-tooltip h4 {
font-size: 1.1em;
max-width: 280px;
}
}
#utility-buttons {
display: flex;
gap: 10px;
margin-top: 15px;
}
#utility-buttons button {
flex: 1;
padding: 15px;
background-color: #16a085;
border: 1px solid #1abc9c;
color: white;
font-size: 1.1em;
cursor: pointer;
border-radius: 5px;
transition: all 0.3s;
}
#utility-buttons button:hover {
background-color: #1abc9c;
transform: translateY(-2px);
}
#open-basebuilding-btn {
background-color: #8e44ad;
border-color: #9b59b6;
}
#open-basebuilding-btn:hover {
background-color: #9b59b6;
}
.modal {
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.8);
display: flex;
justify-content: center;
align-items: center;
animation: fadeIn 0.3s ease-out;
}
.modal-content {
background-color: #1f1f1f;
border: 2px solid #555;
border-radius: 15px;
width: 600px;
max-width: 90%;
max-height: 80%;
overflow-y: auto;
animation: slideIn 0.3s ease-out;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}
.modal-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 20px 30px;
border-bottom: 1px solid #555;
background-color: #2a2a2a;
border-radius: 13px 13px 0 0;
}
.modal-header h2 {
margin: 0;
color: #fff;
}
.close-btn {
background: none;
border: none;
color: #ccc;
font-size: 24px;
cursor: pointer;
padding: 0;
width: 30px;
height: 30px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
transition: all 0.3s;
}
.close-btn:hover {
background-color: #555;
color: #fff;
}
.modal-body {
padding: 30px;
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes slideIn {
from { transform: translateY(-50px); opacity: 0; }
to { transform: translateY(0); opacity: 1; }
}
#crafting-options {
margin-top: 20px;
margin-bottom: 30px;
display: flex;
flex-direction: column;
gap: 10px;
}
.btn:disabled {
background-color: #222;
color: #555;
cursor: not-allowed;
border-color: #444;
}
.btn:disabled:hover {
transform: none;
}
.basebuilding-content {
width: 800px;
max-width: 95%;
}
.cabin-size-selector {
margin-bottom: 20px;
text-align: center;
}
.cabin-size-selector h3 {
margin-bottom: 15px;
color: #fff;
}
.size-btn {
padding: 10px 20px;
margin: 0 5px;
background-color: #34495e;
border: 2px solid #555;
color: white;
cursor: pointer;
border-radius: 5px;
transition: all 0.3s;
}
.size-btn:hover {
background-color: #4a6741;
}
.size-btn.active {
background-color: #27ae60;
border-color: #2ecc71;
}
.cabin-container {
display: flex;
justify-content: center;
margin: 20px 0;
padding: 20px;
background-color: #2a2a2a;
border-radius: 10px;
border: 2px solid #555;
}
.cabin-grid {
display: grid;
gap: 2px;
background-color: #8B4513;
padding: 10px;
border-radius: 5px;
border: 3px solid #654321;
}
.cabin-m { grid-template-columns: repeat(6, 40px); grid-template-rows: repeat(4, 40px); }
.cabin-l { grid-template-columns: repeat(8, 40px); grid-template-rows: repeat(6, 40px); }
.cabin-xl { grid-template-columns: repeat(10, 40px); grid-template-rows: repeat(8, 40px); }
.cabin-cell {
width: 40px;
height: 40px;
background-color: #D2B48C;
border: 1px solid #A0522D;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 20px;
transition: all 0.2s;
}
.cabin-cell:hover {
background-color: #F5DEB3;
transform: scale(1.1);
}
.cabin-cell.occupied {
background-color: #8FBC8F;
cursor: not-allowed;
}
.cabin-cell.occupied:hover {
transform: none;
}
.building-items {
text-align: center;
}
.building-items h3 {
margin-bottom: 15px;
color: #fff;
}
.item-selector {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
}
.building-item {
padding: 10px 15px;
background-color: #34495e;
border: 2px solid #555;
color: white;
cursor: pointer;
border-radius: 5px;
transition: all 0.3s;
font-size: 14px;
}
.building-item:hover {
background-color: #4a6741;
transform: translateY(-2px);
}
.building-item.selected {
background-color: #e74c3c;
border-color: #c0392b;
}