LegacyLauncher/style.css
gardenGnostic f5d44043a7
bug fixes
2026-03-05 23:35:01 +01:00

605 lines
11 KiB
CSS

@font-face {
font-family: 'Minecraft';
src: url('Minecraft.ttf') format('truetype');
}
.btn-mini {
width: 56px !important;
height: 56px;
max-width: 56px !important;
padding: 0 !important;
margin: 0 !important;
margin-left: 8px !important;
}
.btn-mini img {
height: 24px;
width: auto;
}
:root {
--mc-gui-bg: #c6c6c6;
--mc-progress-bg: #313131;
--mc-progress-fill: #55ff55;
--mc-border-dark: #555;
--mc-border-light: #fff;
--mc-button-bg: #6e6e6e;
--mc-button-hover: #7e7e7e;
}
* {
box-sizing: border-box;
-webkit-font-smoothing: none;
}
body {
margin: 0;
padding: 0;
height: 100vh;
width: 100vw;
display: flex;
flex-direction: column;
background-color: var(--mc-gui-bg);
font-family: 'Minecraft', monospace;
overflow: hidden;
image-rendering: pixelated;
-webkit-user-select: none;
user-select: none;
border: 2px solid #000;
}
.title-bar {
height: 32px;
background: #222;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 10px;
-webkit-app-region: drag;
z-index: 1000;
border-bottom: 2px solid #000;
}
.title-bar-text {
color: #aaa;
font-size: 16px;
text-shadow: 1px 1px 0 #000;
}
.window-controls {
display: flex;
gap: 5px;
-webkit-app-region: no-drag;
}
.win-btn {
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
padding-bottom: 2px;
cursor: pointer;
color: #aaa;
font-size: 18px;
transition: all 0.1s;
}
.win-btn:hover {
background: #444;
color: #fff;
}
.win-btn.close:hover {
background: #c42b1c;
}
.main-wrapper {
display: flex;
flex-grow: 1;
overflow: hidden;
position: relative;
width: 100%;
}
.sidebar {
width: 380px;
background: rgba(0, 0, 0, 0.7);
border-right: 4px solid #000;
display: flex;
flex-direction: column;
padding: 30px 20px;
overflow-y: auto;
z-index: 10;
backdrop-filter: blur(8px);
}
.sidebar-title {
font-size: 32px;
color: #fff;
text-shadow: 2px 2px 0 #000;
margin-bottom: 25px;
text-align: center;
border-bottom: 2px solid #555;
padding-bottom: 15px;
}
.commit-author {
display: flex;
align-items: center;
gap: 8px;
}
.author-img {
width: 24px;
height: 24px;
border-radius: 4px;
border: 1px solid #555;
}
.commit-sha {
font-size: 16px !important;
color: #55ff55 !important;
font-family: monospace;
margin-bottom: 8px !important;
}
.commit-msg {
font-size: 15px !important;
color: #eee !important;
line-height: 1.4 !important;
}
#updates-list {
display: flex;
flex-direction: column;
gap: 15px;
}
.update-item.patch-note-card {
background-color: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.1);
box-shadow: none;
padding: 20px;
cursor: default;
transition: none;
margin-bottom: 20px;
border-radius: 4px;
}
.update-item.patch-note-card:hover {
outline: none;
background-color: rgba(255, 255, 255, 0.08);
}
.pn-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 8px;
}
.pn-title {
color: #fff;
font-size: 22px;
font-weight: bold;
margin-bottom: 12px;
text-shadow: 1px 1px 0 #000;
}
.pn-body {
color: #ccc;
font-size: 16px;
line-height: 1.6;
white-space: pre-wrap;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
.pn-body li {
margin-left: 15px;
list-style-type: disc;
}
.pn-h1 { font-size: 20px; color: #fff; margin-top: 10px; }
.pn-h2 { font-size: 18px; color: #fff; margin-top: 8px; }
.pn-h3 { font-size: 16px; color: #fff; margin-top: 6px; }
.update-tag {
color: #55ff55;
font-size: 20px;
text-shadow: 1px 1px 0 #000;
display: block;
margin-bottom: 4px;
}
.update-name {
color: #fff;
font-size: 18px;
display: block;
margin-bottom: 4px;
}
.update-date {
color: #aaa;
font-size: 14px;
}
.sidebar::-webkit-scrollbar {
width: 10px;
}
.sidebar::-webkit-scrollbar-track {
background: rgba(0,0,0,0.3);
}
.sidebar::-webkit-scrollbar-thumb {
background: #555;
border: 2px solid #000;
}
.sidebar::-webkit-scrollbar-thumb:hover {
background: #666;
}
.content-area {
flex-grow: 1;
background-image: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4)), url('minecraft.jpg');
background-size: cover;
background-position: center;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
position: relative;
overflow: hidden;
height: 100%;
}
.mc-logo-img {
width: 650px;
max-width: 95%;
filter: drop-shadow(6px 6px 0px rgba(0,0,0,0.6));
margin-bottom: 50px;
transition: transform 0.3s ease;
}
.mc-logo-img:hover {
transform: scale(1.02);
}
.btn-mc {
width: 500px;
max-width: 90%;
height: 60px;
background-color: var(--mc-button-bg);
border: 2px solid #000;
color: #e0e0e0;
font-size: 24px;
display: flex;
align-items: center;
justify-content: center;
padding-bottom: 6px;
cursor: pointer;
box-shadow: inset -3px -3px 0px #333, inset 3px 3px 0px #aaa;
margin-bottom: 16px;
position: relative;
transition: transform(0.05s);
}
.btn-mc:hover:not(.disabled), .btn-mc.focused:not(.disabled) {
background-color: var(--mc-button-hover);
color: #fff;
outline: 2px solid #fff;
z-index: 5;
}
.version-select-box:hover, .version-select-box.focused {
border-color: #fff;
}
.btn-mc:active:not(.disabled) {
box-shadow: inset 3px 3px 0px #333, inset -3px -3px 0px #aaa;
transform: translateY(2px);
}
.btn-mc.disabled, .btn-mc.running {
background-color: #4e4e4e;
color: #888;
cursor: default;
box-shadow: inset -3px -3px 0px #222, inset 3px 3px 0px #666;
opacity: 0.8;
transform: none !important;
}
.btn-mc.running {
color: #55ff55;
text-shadow: 2px 2px 0 #000;
}
.btn-play {
height: 96px;
font-size: 44px;
margin-bottom: 36px;
color: #fff;
text-shadow: 2px 2px 0 #000;
}
.version-row {
display: flex;
width: 500px;
max-width: 90%;
margin-bottom: 28px;
align-items: center;
}
.version-label {
color: white;
font-size: 24px;
margin-right: 15px;
text-shadow: 2px 2px 0 #000;
white-space: nowrap;
}
.version-select-box {
flex-grow: 1;
height: 56px;
background: #000;
border: 2px solid #555;
display: flex;
align-items: center;
padding: 0 15px 6px 15px;
color: white;
font-size: 24px;
cursor: pointer;
position: relative;
transition: border-color 0.2s;
}
.version-select-box:hover {
border-color: #fff;
}
.select-arrow {
width: 48px;
height: 52px;
background: #6e6e6e;
border-left: 2px solid #555;
display: flex;
align-items: center;
justify-content: center;
color: white;
position: absolute;
right: 0;
}
.progress-container {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 50px;
background: rgba(0,0,0,0.9);
border-top: 4px solid #000;
display: none;
flex-direction: column;
justify-content: center;
padding: 0 30px;
z-index: 50;
animation: slideUp 0.3s ease-out;
}
@keyframes slideUp {
from { transform: translateY(100%); }
to { transform: translateY(0); }
}
.progress-bar-bg {
width: 100%;
height: 16px;
background: var(--mc-progress-bg);
border: 2px solid #000;
position: relative;
}
.progress-bar-fill {
width: 0%;
height: 100%;
background: var(--mc-progress-fill);
box-shadow: inset 0 3px 0 rgba(255,255,255,0.4);
transition: width 0.2s ease-out;
}
.progress-text {
color: #fff;
font-size: 20px;
text-shadow: 2px 2px 0 #000;
margin-bottom: 6px;
text-align: center;
}
.modal-overlay {
position: absolute;
inset: 0;
background: rgba(0,0,0,0.9);
display: none;
align-items: center;
justify-content: center;
z-index: 150;
backdrop-filter: blur(4px);
}
.modal-box {
width: 750px;
max-width: 95%;
background: var(--mc-gui-bg);
border: 4px solid #000;
padding: 50px;
display: flex;
flex-direction: column;
align-items: center;
box-shadow: inset 4px 4px 0 #fff;
animation: modalPop 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
position: relative;
}
.modal-close-btn {
position: absolute;
top: 10px;
right: 15px;
font-size: 32px;
color: #444;
cursor: pointer;
transition: color 0.1s;
line-height: 1;
}
.modal-close-btn:hover {
color: #c42b1c;
text-shadow: 1px 1px 0 #fff;
}
@keyframes modalPop {
from { transform: scale(0.8); opacity: 0; }
to { transform: scale(1); opacity: 1; }
}
.modal-title {
font-size: 42px;
color: #333;
margin-bottom: 30px;
text-shadow: 2px 2px 0 #fff;
text-align: center;
}
.modal-body-text {
color: #333;
font-size: 22px;
text-align: center;
margin-bottom: 40px;
text-shadow: 1px 1px 0 #fff;
line-height: 1.6;
width: 100%;
}
.modal-body-text b {
color: #000;
}
.mc-input-group {
width: 100%;
margin-bottom: 20px;
}
.mc-label {
display: block;
color: #444;
font-size: 22px;
margin-bottom: 6px;
}
.mc-input {
width: 100%;
background: #000;
border: 2px solid #555;
color: white;
padding: 12px;
font-size: 22px;
outline: none;
transition: border-color 0.2s;
}
.mc-input:focus, .mc-input.focused {
border-color: #fff;
}
#server-checkbox.focused {
outline: 2px solid #fff;
}
#loader {
position: absolute;
inset: 0;
background: rgba(0,0,0,1);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: white;
font-size: 36px;
z-index: 2000;
background-image: url('minecraft.jpg');
background-size: cover;
background-position: center;
}
#loader::before {
content: '';
position: absolute;
inset: 0;
background: rgba(0,0,0,0.8);
}
.loader-content {
position: relative;
z-index: 1;
text-align: center;
}
.loader-spinner {
width: 80px;
height: 80px;
border: 8px solid #333;
border-top: 8px solid var(--mc-progress-fill);
border-radius: 50%;
margin: 0 auto 20px;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
#toast {
position: fixed;
bottom: 80px;
left: 50%;
transform: translateX(-50%);
background: rgba(0,0,0,0.95);
color: #fff;
padding: 15px 40px;
border: 3px solid #fff;
font-size: 24px;
display: none;
z-index: 3000;
text-align: center;
box-shadow: 0 0 20px rgba(0,0,0,0.5);
}
select.hidden-select {
position: absolute;
inset: 0;
opacity: 0;
cursor: pointer;
width: 100%;
}
::-webkit-scrollbar {
width: 12px;
}
::-webkit-scrollbar-track {
background: #333;
border-left: 2px solid #000;
}
::-webkit-scrollbar-thumb {
background: #6e6e6e;
border: 2px solid #000;
box-shadow: inset -2px -2px 0 #333, inset 2px 2px 0 #aaa;
}
::-webkit-scrollbar-thumb:hover {
background: #7e7e7e;
}