:root { --bg: #120d22; --bg-top: #1a1130; --panel: rgba(28, 20, 53, 0.94); --panel-soft: rgba(255, 255, 255, 0.025); --panel-strong: rgba(255, 255, 255, 0.05); --container-bg: var(--panel); --container-border: rgba(105, 80, 164, 0.55); --container-highlight: rgba(255, 255, 255, 0.05); --text-color: #f7ecd6; --text-muted: #c9bc9b; --accent-color: #e0a05b; --accent-glow: rgba(224, 160, 91, 0.2); --link-bg: var(--panel-soft); --link-hover-bg: rgba(224, 160, 91, 0.09); --link-border: rgba(105, 80, 164, 0.45); --link-hover-border: rgba(224, 160, 91, 0.48); --success: #8fc17d; --danger: #ea7a7a; --shadow: rgba(0, 0, 0, 0.35); } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; min-height: 100vh; padding: 20px; display: flex; align-items: center; justify-content: center; background: radial-gradient( circle at top left, rgba(224, 160, 91, 0.08), transparent 28% ), radial-gradient( circle at top right, rgba(139, 71, 137, 0.18), transparent 30% ), linear-gradient(180deg, var(--bg-top) 0%, var(--bg) 100%); color: var(--text-color); font-family: Georgia, "Times New Roman", serif; overflow-x: hidden; } body::before { content: ""; position: fixed; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px); background-size: 24px 24px; mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.55), transparent); } a { color: inherit; } .container { position: relative; z-index: 1; width: 100%; max-width: 720px; margin: auto; padding: 28px; background: linear-gradient( 180deg, rgba(29, 21, 55, 0.96), rgba(18, 13, 35, 0.98) ); border: 1px solid var(--container-border); box-shadow: 0 18px 45px var(--shadow), inset 0 1px 0 var(--container-highlight); } .homepage { max-width: 760px; background: radial-gradient( circle at top left, rgba(224, 160, 91, 0.1), transparent 34% ), linear-gradient(180deg, rgba(29, 21, 55, 0.96), rgba(18, 13, 35, 0.98)); } h1 { margin: 0 0 18px; display: flex; align-items: center; justify-content: center; gap: 16px; color: var(--text-color); font-size: clamp(2rem, 5vw, 2.8rem); font-weight: 700; line-height: 1.05; text-align: center; letter-spacing: -0.02em; } h2 { margin: 0 0 14px; color: var(--accent-color); font-size: 1rem; font-family: "Courier New", Courier, monospace; letter-spacing: 0.08em; text-transform: uppercase; } h3, h4 { margin: 0 0 10px; color: var(--accent-color); } p { margin: 0 0 20px; color: var(--text-muted); font-size: 1rem; line-height: 1.65; text-align: center; } ol, ul { margin: 0; padding-left: 20px; } ul { list-style: none; padding-left: 0; display: grid; gap: 10px; } li { margin: 0; } li a { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 15px 18px; color: var(--text-color); text-decoration: none; background: var(--link-bg); border: 1px solid var(--link-border); transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease; } li a:hover { transform: translateY(-2px); background: var(--link-hover-bg); border-color: var(--link-hover-border); box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22); } li a strong { display: block; font-size: 1.05rem; font-weight: 600; } li a span { display: block; color: var(--text-muted); font-size: 0.92rem; text-align: right; } .icon { width: 56px; height: 56px; padding: 8px; display: inline-flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.22); border: 1px solid rgba(224, 160, 91, 0.45); box-shadow: 0 0 28px rgba(224, 160, 91, 0.14); flex-shrink: 0; } .icon img { width: 100%; height: 100%; object-fit: contain; display: block; } .fade-in, .slide-down, .slide-up { animation: none; opacity: 1; } .homepage .icon { box-shadow: 0 0 28px rgba(224, 160, 91, 0.15); } .hero { margin-bottom: 24px; } .band { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 18px; align-items: center; } .mark { width: 64px; height: 64px; margin: 0; } .copy { text-align: left; } .homepage h1 { margin-bottom: 10px; justify-content: flex-start; text-align: left; font-size: clamp(2.3rem, 5vw, 3.9rem); } .lead { margin: 0; text-align: left; max-width: 42rem; } .box { margin-top: 18px; padding: 14px; border: 1px solid var(--container-border); background: rgba(255, 255, 255, 0.02); } .links { margin: 0; padding: 0; } .links li { margin: 0; } .link { border-color: var(--link-border); background: var(--link-bg); } .link.main { background: linear-gradient(135deg, rgba(224, 160, 91, 0.12), transparent 68%), var(--link-bg); border-color: rgba(224, 160, 91, 0.32); } .foot { margin-top: 20px; padding-top: 18px; border-top: 1px solid rgba(224, 160, 91, 0.22); } .foot p { text-align: left; margin-bottom: 14px; } .support, .support-row { display: flex; justify-content: center; } .support-row { margin-top: 12px; } .button { display: inline-flex; justify-content: center; align-items: center; min-width: 220px; padding: 14px 22px; color: #221433; text-decoration: none; font-weight: 700; background: linear-gradient(135deg, #e0a05b, #f1ba77); border: 1px solid rgba(255, 245, 228, 0.4); box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.35); transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease; } .button:hover { transform: translateY(-2px); filter: brightness(1.04); box-shadow: 0 14px 28px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.35); } li.support-row a.button, .support a.button { justify-content: center; background: linear-gradient(135deg, #e0a05b, #f1ba77) !important; border: 1px solid rgba(255, 245, 228, 0.4) !important; color: #221433 !important; } .matrix-link { background: linear-gradient(135deg, rgba(143, 193, 125, 0.12), transparent 70%), var(--link-bg) !important; border-color: rgba(143, 193, 125, 0.35) !important; } .discord-link { background: linear-gradient(135deg, rgba(114, 137, 218, 0.14), transparent 70%), var(--link-bg) !important; border-color: rgba(114, 137, 218, 0.35) !important; } .app-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; margin-top: 20px; } .app-card { display: flex; flex-direction: column; align-items: center; padding: 20px; text-align: center; text-decoration: none; color: var(--text-color); background: var(--link-bg); border: 1px solid var(--link-border); transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease; } .app-card:hover { transform: translateY(-2px); background: var(--link-hover-bg); border-color: var(--link-hover-border); box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22); } .app-card.highlighted { border-color: rgba(224, 160, 91, 0.35); } .app-icon { width: 72px; height: 72px; object-fit: contain; margin-bottom: 16px; } .app-card p { margin: 0; font-size: 0.92rem; } .librecounter { margin-top: 18px; padding-top: 12px; border-top: 1px solid rgba(255, 255, 255, 0.08); display: flex; flex-direction: column; align-items: center; gap: 2px; } .counter { color: var(--text-muted); font-size: 0.86rem; } .counter a { color: var(--accent-color); text-decoration: none; } .counter a:hover { text-decoration: underline; } .librecounter img { height: 44px; opacity: 0.9; } .librecounter img[width="0"] { display: block; width: 0; height: 0; opacity: 0; } .back-to-top, .ai-chat { display: none !important; } @media (max-width: 700px) { body { padding: 12px; } .container { padding: 20px 16px; } h1 { font-size: 1.9rem; } li a, .link { display: grid; justify-content: stretch; } li a span, .link span { text-align: left; } .band { grid-template-columns: 1fr; text-align: center; } .mark { margin: 0 auto; } .homepage h1, .lead, .foot p { text-align: center; justify-content: center; } .app-gallery { grid-template-columns: 1fr; } }