feat: enhance Gitea theme with cyber glassmorphism template, custom home hero and 3D banner logo

This commit is contained in:
eldov
2026-08-30 07:22:44 +02:00
parent 423f092da8
commit 55b9d9a53a
10 changed files with 497 additions and 71 deletions
+346 -71
View File
@@ -1,98 +1,373 @@
/* Gitea Custom Cyber Theme */
body {
background: #0f172a url('/assets/img/cyber_bg.jpg') no-repeat center center fixed !important;
/* ==========================================================================
GITEA CYBERDROP PRO THEME — High-Performance Glassmorphism & Cyber 3D
Domain: gitea.free-warez.win
========================================================================== */
/* 1. Global Setup, Viewport & Typography */
html, body {
font-family: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
background: #050811 url('/assets/img/cyber_bg.jpg') no-repeat center center fixed !important;
background-size: cover !important;
color: #f1f5f9 !important;
-webkit-font-smoothing: antialiased !important;
-moz-osx-font-smoothing: grayscale !important;
}
/* Make main containers glassmorphism */
.ui.container,
.full.height,
.page-content {
/* Ambient dark vignette over background image */
body::before {
content: '';
position: fixed;
inset: 0;
background:
radial-gradient(ellipse at 50% 15%, rgba(0, 242, 254, 0.12) 0%, transparent 65%),
radial-gradient(ellipse at 85% 75%, rgba(16, 185, 129, 0.08) 0%, transparent 60%),
linear-gradient(180deg, rgba(5, 8, 17, 0.65) 0%, rgba(5, 8, 17, 0.88) 100%) !important;
pointer-events: none;
z-index: -1;
}
/* Code & Technical Typography */
code, pre, kbd, samp,
.mono, .sha, .commit-id,
.lines-num, .lines-code,
.view-raw, .file-view pre,
.diff-file-box pre {
font-family: 'JetBrains Mono', monospace !important;
}
/* 2. Full-Width & Spacious Layout */
.ui.container:not(.fluid) {
width: min(1560px, 94vw) !important;
max-width: 1620px !important;
margin-left: auto !important;
margin-right: auto !important;
}
.full.height, .page-content {
background: transparent !important;
}
.repository.file.list,
.ui.segment,
.ui.attached.segment,
.ui.menu,
.ui.card,
.box {
background: rgba(15, 23, 42, 0.7) !important;
backdrop-filter: blur(12px) !important;
-webkit-backdrop-filter: blur(12px) !important;
border: 1px solid rgba(59, 130, 246, 0.3) !important;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5) !important;
}
/* Navbar / Header */
/* 3. Top Navigation Bar */
.ui.top.menu {
background: rgba(10, 15, 30, 0.8) !important;
backdrop-filter: blur(16px) !important;
border-bottom: 1px solid rgba(59, 130, 246, 0.4) !important;
background: rgba(8, 13, 26, 0.85) !important;
backdrop-filter: blur(24px) saturate(180%) !important;
-webkit-backdrop-filter: blur(24px) saturate(180%) !important;
border-bottom: 1px solid rgba(0, 242, 254, 0.25) !important;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5) !important;
padding: 4px 16px !important;
}
/* Neon Text Accents */
a, .ui.breadcrumb a {
color: #4ade80 !important; /* Neon Green */
text-shadow: 0 0 8px rgba(74, 222, 128, 0.4);
transition: all 0.3s ease;
.ui.menu .item {
color: #cbd5e1 !important;
font-weight: 500 !important;
transition: all 0.25s ease !important;
}
a:hover {
color: #60a5fa !important; /* Neon Blue */
text-shadow: 0 0 12px rgba(96, 165, 250, 0.6);
}
/* Primary Buttons */
.ui.primary.button, .ui.green.button {
background: linear-gradient(135deg, #22c55e 0%, #10b981 100%) !important;
border: none !important;
box-shadow: 0 0 15px rgba(34, 197, 94, 0.4) !important;
color: #fff !important;
.ui.menu a.item:hover {
color: #00f2fe !important;
background: rgba(0, 242, 254, 0.1) !important;
border-radius: 8px !important;
}
.ui.primary.button:hover, .ui.green.button:hover {
box-shadow: 0 0 25px rgba(34, 197, 94, 0.7) !important;
transform: translateY(-1px);
.ui.menu a.active.item {
color: #00f2fe !important;
background: rgba(0, 242, 254, 0.15) !important;
border-radius: 8px !important;
box-shadow: 0 0 12px rgba(0, 242, 254, 0.25) !important;
}
/* Secondary Buttons */
.ui.basic.button, .ui.button {
background: rgba(59, 130, 246, 0.1) !important;
border: 1px solid rgba(59, 130, 246, 0.5) !important;
color: #93c5fd !important;
/* Brand Navbar Icon */
.item.brand img.logo {
width: 34px !important;
height: 34px !important;
filter: drop-shadow(0 0 12px rgba(0, 242, 254, 0.6)) !important;
border-radius: 8px !important;
transition: transform 0.3s ease !important;
}
.ui.basic.button:hover, .ui.button:hover {
background: rgba(59, 130, 246, 0.2) !important;
box-shadow: 0 0 15px rgba(59, 130, 246, 0.4) !important;
.item.brand:hover img.logo {
transform: scale(1.1) rotate(5deg) !important;
}
/* Form Inputs */
input, textarea, .ui.input>input {
background: rgba(0, 0, 0, 0.4) !important;
border: 1px solid rgba(59, 130, 246, 0.3) !important;
color: #e2e8f0 !important;
border-radius: 6px !important;
/* 4. Cyber Hero Section (Home Page) */
.cyber-hero-container {
position: relative;
padding: 60px 20px 40px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
z-index: 2;
}
input:focus, textarea:focus, .ui.input>input:focus {
border-color: #4ade80 !important;
box-shadow: 0 0 10px rgba(74, 222, 128, 0.3) !important;
.cyber-hero-glow {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 600px;
height: 300px;
background: radial-gradient(circle, rgba(0, 242, 254, 0.2) 0%, rgba(16, 185, 129, 0.1) 50%, transparent 80%);
filter: blur(50px);
pointer-events: none;
z-index: -1;
}
/* Footers */
footer {
background: rgba(10, 15, 30, 0.8) !important;
backdrop-filter: blur(10px) !important;
border-top: 1px solid rgba(59, 130, 246, 0.3) !important;
.cyber-banner-wrapper {
display: inline-flex;
align-items: center;
justify-content: center;
background: rgba(11, 17, 33, 0.55);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border: 1px solid rgba(0, 242, 254, 0.25);
border-radius: 28px;
padding: 18px 36px;
box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6), 0 0 35px rgba(0, 242, 254, 0.18);
transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
margin-bottom: 24px;
}
/* Fix logo size since we use jpg for svg */
.brand.logo, img.logo {
border-radius: 8px;
box-shadow: 0 0 15px rgba(59, 130, 246, 0.5);
height: 32px !important;
width: auto !important;
.cyber-banner-wrapper:hover {
transform: translateY(-3px) scale(1.015);
border-color: rgba(0, 242, 254, 0.5);
box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7), 0 0 50px rgba(0, 242, 254, 0.3);
}
.cyber-banner-logo {
width: min(640px, 88vw);
height: auto;
max-height: 140px;
object-fit: contain;
filter: drop-shadow(0 0 25px rgba(0, 242, 254, 0.45));
}
.cyber-hero-subtitle {
font-size: 1.25rem;
font-weight: 400;
color: #94a3b8;
max-width: 800px;
margin: 0 auto 32px;
line-height: 1.6;
letter-spacing: 0.01em;
}
.cyber-hero-actions {
display: flex;
gap: 18px;
justify-content: center;
flex-wrap: wrap;
}
/* 5. Buttons & Micro-Interactions */
.cyber-btn-primary, .ui.primary.button, .ui.green.button, .ui.positive.button {
background: linear-gradient(135deg, #00f2fe 0%, #10b981 100%) !important;
color: #030712 !important;
font-weight: 700 !important;
font-size: 1rem !important;
padding: 13px 26px !important;
border-radius: 12px !important;
border: none !important;
box-shadow: 0 4px 20px rgba(0, 242, 254, 0.35) !important;
transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
cursor: pointer !important;
display: inline-flex !important;
align-items: center !important;
gap: 8px !important;
}
.cyber-btn-primary:hover, .ui.primary.button:hover, .ui.green.button:hover, .ui.positive.button:hover {
transform: translateY(-2px) scale(1.02) !important;
box-shadow: 0 8px 30px rgba(0, 242, 254, 0.55) !important;
filter: brightness(1.12) !important;
color: #000000 !important;
}
.cyber-btn-secondary, .ui.basic.button, .ui.button:not(.primary):not(.green):not(.positive) {
background: rgba(19, 28, 50, 0.75) !important;
color: #f8fafc !important;
font-weight: 600 !important;
font-size: 1rem !important;
padding: 13px 24px !important;
border-radius: 12px !important;
border: 1px solid rgba(56, 189, 248, 0.25) !important;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25) !important;
transition: all 0.25s ease !important;
display: inline-flex !important;
align-items: center !important;
gap: 8px !important;
}
.cyber-btn-secondary:hover, .ui.basic.button:hover, .ui.button:not(.primary):not(.green):not(.positive):hover {
background: rgba(30, 45, 78, 0.9) !important;
border-color: #00f2fe !important;
color: #00f2fe !important;
transform: translateY(-2px) !important;
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4), 0 0 15px rgba(0, 242, 254, 0.2) !important;
}
/* 6. Feature Cards on Home Page */
.cyber-features-grid {
margin-top: 40px !important;
margin-bottom: 60px !important;
}
.cyber-feature-card {
background: rgba(11, 17, 33, 0.82);
backdrop-filter: blur(24px) saturate(180%);
-webkit-backdrop-filter: blur(24px) saturate(180%);
border: 1px solid rgba(0, 242, 254, 0.2);
border-radius: 20px;
padding: 32px;
display: flex;
gap: 20px;
align-items: flex-start;
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.5);
transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
height: 100%;
}
.cyber-feature-card:hover {
transform: translateY(-4px);
border-color: rgba(0, 242, 254, 0.45);
box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 242, 254, 0.15);
}
.cyber-card-icon {
background: rgba(0, 242, 254, 0.12);
border: 1px solid rgba(0, 242, 254, 0.3);
border-radius: 14px;
padding: 14px;
display: flex;
align-items: center;
justify-content: center;
color: #00f2fe;
box-shadow: 0 0 15px rgba(0, 242, 254, 0.25);
flex-shrink: 0;
}
.cyber-card-icon svg {
width: 28px;
height: 28px;
}
.cyber-card-body h3 {
margin: 0 0 8px;
font-size: 1.25rem;
font-weight: 700;
color: #f8fafc;
}
.cyber-card-body p {
margin: 0;
color: #94a3b8;
line-height: 1.6;
font-size: 0.95rem;
}
/* 7. Glassmorphism Repository & Content Containers */
.ui.segment,
.ui.attached.segment,
.repository.file.list,
.ui.card,
.box,
.issue-content-left,
.issue-content-right {
background: rgba(11, 17, 33, 0.82) !important;
backdrop-filter: blur(24px) saturate(180%) !important;
-webkit-backdrop-filter: blur(24px) saturate(180%) !important;
border: 1px solid rgba(56, 189, 248, 0.22) !important;
border-radius: 16px !important;
box-shadow: 0 15px 40px rgba(0, 0, 0, 0.5) !important;
color: #f1f5f9 !important;
}
.ui.attached.header {
background: rgba(15, 23, 42, 0.92) !important;
border: 1px solid rgba(56, 189, 248, 0.22) !important;
border-radius: 16px 16px 0 0 !important;
color: #38bdf8 !important;
font-weight: 700 !important;
}
/* Repository File List */
#repo-files-table {
border-radius: 16px !important;
overflow: hidden !important;
}
#repo-files-table tr {
transition: background 0.2s ease !important;
}
#repo-files-table tr:hover {
background: rgba(0, 242, 254, 0.08) !important;
}
/* File Tree and Breadcrumbs */
.repo-header, .ui.breadcrumb {
color: #94a3b8 !important;
}
.ui.breadcrumb a, .repo-header a {
color: #00f2fe !important;
font-weight: 600 !important;
text-shadow: 0 0 10px rgba(0, 242, 254, 0.3) !important;
}
/* 8. Code View, Diffs & Markdown */
.file-view, .file-content, .code-view, .markup {
background: rgba(6, 10, 22, 0.88) !important;
border: 1px solid rgba(56, 189, 248, 0.2) !important;
border-radius: 16px !important;
box-shadow: inset 0 0 30px rgba(0, 0, 0, 0.5) !important;
}
.lines-num {
color: #64748b !important;
background: rgba(3, 7, 18, 0.5) !important;
border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
}
/* 9. Form Inputs & Textareas */
input, textarea, .ui.input>input, .ui.selection.dropdown {
background: rgba(6, 10, 22, 0.7) !important;
border: 1px solid rgba(148, 163, 184, 0.22) !important;
border-radius: 10px !important;
color: #f8fafc !important;
padding: 10px 14px !important;
transition: all 0.25s ease !important;
}
input:focus, textarea:focus, .ui.input>input:focus, .ui.selection.dropdown:focus {
border-color: #00f2fe !important;
background: rgba(6, 10, 22, 0.9) !important;
box-shadow: 0 0 0 3px rgba(0, 242, 254, 0.2), inset 0 2px 4px rgba(0, 0, 0, 0.3) !important;
}
/* 10. Footer */
footer, .ui.footer {
background: rgba(8, 13, 26, 0.88) !important;
backdrop-filter: blur(16px) !important;
border-top: 1px solid rgba(0, 242, 254, 0.2) !important;
color: #94a3b8 !important;
padding: 24px 0 !important;
margin-top: 50px !important;
}
/* 11. Custom Modern Scrollbar */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: rgba(5, 8, 17, 0.8);
}
::-webkit-scrollbar-thumb {
background: rgba(0, 242, 254, 0.4);
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: rgba(0, 242, 254, 0.7);
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 538 KiB

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 538 KiB

After

Width:  |  Height:  |  Size: 104 KiB