3DCOMUNITY/3dcomunity/sub/about.css
2025-11-10 19:17:31 +00:00

377 lines
10 KiB
CSS
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* ===========================
about.css — 3DCOMMUNITY.NET
Diseño full-width + botones neon
(coloca las fuentes en /fonts)
=========================== */
/* 0) Reset + Variables */
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { height: 100%; }
:root{
/* Colores base */
--bg-0: #0a0a0a;
--bg-1: #0f0f0f;
--bg-2: #151515;
--panel: #1b1b1b;
--text: #f2f2f2;
--muted: #a9a9a9;
/* Neón */
--neon-green: #39FF14;
--neon-orange: #FF7A18;
/* Gradientes */
--grad-gn-or: linear-gradient(90deg, var(--neon-green) 0%, var(--neon-orange) 100%);
--grad-or-gn: linear-gradient(90deg, var(--neon-orange) 0%, var(--neon-green) 100%);
/* Sombras / bordes */
--shadow: rgba(0,0,0,.6);
--stroke: #0e0e0e;
/* Tipografías */
--font-ui: 'Oxanium', 'Rajdhani', 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
--font-title: 'ThreeDIsometric', var(--font-ui);
--font-display: 'Gunplay', var(--font-ui);
/* Tamaños */
--header-h: clamp(88px, 16vh, 160px);
--radius: 16px;
--pad: clamp(14px, 2vw, 24px);
}
/* 1) Fuentes locales (absolutas para que funcionen en /sub) */
@font-face{
font-family: 'ThreeDIsometric';
src: url('/fonts/3DIsometric-Regular.ttf') format('truetype'),
url('/fonts/3DIsometric-Regular.otf') format('opentype');
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face{
font-family: 'Gunplay';
src: url('/fonts/Gunplay-Regular.otf') format('opentype');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face{
font-family: 'Oxanium';
src: url('/fonts/Oxanium-VariableFont_wght.ttf') format('truetype');
font-weight: 200 800;
font-style: normal;
font-display: swap;
}
/* 2) Base documento */
body{
font-family: var(--font-ui);
color: var(--text);
background:
radial-gradient(1200px 700px at 8% -10%, #141414 0%, #0c0c0c 55%, #070707 100%),
var(--bg-0);
min-height: 100svh;
display: grid;
grid-template-rows: var(--header-h) 1fr;
}
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-thumb { background: #2a2a2a; border-radius: 999px; }
*::-webkit-scrollbar-thumb:hover { background: #3a3a3a; }
@media (prefers-reduced-motion: reduce){
* { animation: none !important; transition: none !important; }
}
/* 3) Header + Navegación (coherente con la home) */
.site-header{
background: linear-gradient(180deg, #0e0e0e 0%, #0a0a0a 100%);
border-bottom: 1px solid #121212;
box-shadow: 0 6px 24px var(--shadow);
display: grid;
grid-auto-rows: min-content;
align-content: center;
justify-items: center;
gap: .65rem;
padding: clamp(10px, 2vw, 18px) clamp(14px, 2.4vw, 22px) clamp(14px, 2.6vw, 28px);
}
.site-title{
font-family: var(--font-title);
font-weight: 800;
font-size: clamp(2.6rem, 6.5vw, 5rem);
letter-spacing: .06em;
color: var(--neon-orange);
text-shadow:
0 0 6px rgba(255,122,24,.25),
0 12px 28px rgba(0,0,0,.45);
white-space: nowrap;
}
.nav-menu{
display: flex; flex-wrap: wrap; justify-content: center;
gap: .75rem .85rem;
}
/* 4) Botones globales (bonitos, con hover y variantes) */
.btn{
--h: clamp(44px, 5.4vh, 56px);
--px: clamp(16px, 2.4vw, 26px);
display: inline-flex; align-items: center; justify-content: center;
height: var(--h); padding: 0 var(--px);
border-radius: 14px;
border: 1px solid #1a1a1a;
font-family: var(--font-display);
font-weight: 800; letter-spacing: .02em;
text-decoration: none; user-select: none; cursor: pointer;
background-image: var(--grad-gn-or);
background-size: 220% 100%;
background-position: 0% 50%;
color: #0b0b0b;
box-shadow:
0 8px 22px rgba(0,0,0,.55),
0 0 0 0 rgba(57,255,20,0);
transition: background-position .35s ease, transform .12s ease,
box-shadow .25s ease, filter .2s ease, border-color .2s ease, opacity .2s ease;
position: relative; isolation: isolate;
}
.btn::after{
content:""; position: absolute; inset: -2px; border-radius: inherit;
background: radial-gradient(60% 60% at 50% 50%, rgba(57,255,20,.18), rgba(255,122,24,.1) 60%, transparent 70%);
z-index: -1; opacity: 0; transition: opacity .25s ease;
}
.btn:hover{
background-position: 100% 50%;
transform: translateY(-1px);
box-shadow:
0 14px 28px rgba(0,0,0,.65),
0 0 18px rgba(57,255,20,.28),
0 0 28px rgba(255,122,24,.22);
filter: saturate(1.07);
border-color: #262626;
}
.btn:hover::after{ opacity: 1; }
.btn:active{ transform: translateY(0); box-shadow: inset 0 4px 10px rgba(0,0,0,.45); }
.btn:focus-visible{ outline: 2px solid rgba(57,255,20,.9); outline-offset: 3px; }
/* Variantes */
.btn-green{ background-image: none; background: var(--neon-green); }
.btn-orange{ background-image: none; background: var(--neon-orange); }
.btn-outline{
background: transparent;
color: var(--text);
border-color: #2d2d2d;
box-shadow: 0 8px 22px rgba(0,0,0,.45);
}
.btn-outline:hover{
background: #151515;
border-color: var(--neon-green);
box-shadow: 0 10px 26px rgba(0,0,0,.6), 0 0 14px rgba(57,255,20,.22);
}
/* Botones del header (compatibles) */
.nav-menu button{
composes: btn;
/* composes no es estándar; replicamos estilos: */
--h: clamp(42px, 5.2vh, 54px);
--px: clamp(14px, 2.2vw, 22px);
font-family: var(--font-display);
font-weight: 800;
font-size: clamp(1.02rem, 1.5vw, 1.28rem);
height: var(--h);
padding: 0 var(--px);
border-radius: 12px;
border: 1px solid #1a1a1a;
background-image: var(--grad-gn-or);
background-size: 220% 100%;
background-position: 0% 50%;
color: #0b0b0b;
box-shadow: 0 6px 18px rgba(0,0,0,.55);
transition: background-position .35s ease, transform .12s ease, box-shadow .25s ease, filter .2s ease, border-color .2s ease;
}
.nav-menu button:hover{
background-position: 100% 50%; transform: translateY(-1px);
box-shadow: 0 10px 26px rgba(0,0,0,.6), 0 0 18px rgba(57,255,20,.28), 0 0 28px rgba(255,122,24,.22);
border-color: #262626; filter: saturate(1.06);
}
.nav-menu button:active{ transform: translateY(0); box-shadow: inset 0 4px 10px rgba(0,0,0,.45); }
.nav-menu button:focus-visible{ outline: 2px solid rgba(57,255,20,.9); outline-offset: 3px; }
.nav-menu button.active{
background: var(--neon-green);
color: #0b0b0b;
border-color: #2b2b2b;
box-shadow: 0 8px 22px rgba(0,0,0,.5), 0 0 10px rgba(57,255,20,.35);
}
/* 5) Layout de la página About (full width real) */
.about-page{
/* sin caja centrada; usamos ancho completo para “llamar” */
padding: 0;
overflow-y: auto;
min-height: 0;
}
.doc-card{
width: 100%;
background:
radial-gradient(1400px 700px at 0% 0%, rgba(57,255,20,.06), transparent 60%),
linear-gradient(180deg, #121212 0%, #0e0e0e 100%);
border-top: 1px solid #171717;
border-bottom: 1px solid #171717;
/* borde redondeado opcional: */
border-radius: 0;
box-shadow: 0 10px 28px var(--shadow) inset;
padding: clamp(18px, 3.2vw, 42px);
display: grid;
gap: clamp(16px, 2.2vw, 28px);
}
/* 6) HERO / INTRO */
.hero-head{
display: grid; gap: clamp(10px, 1.4vw, 16px);
padding: clamp(8px, 1.2vw, 12px) 0 clamp(8px, 1.2vw, 12px);
border-bottom: 1px solid #202020;
}
.hero-title{
font-family: var(--font-title);
font-size: clamp(2.2rem, 5.8vw, 4rem);
line-height: 1.05;
letter-spacing: .02em;
color: var(--neon-orange);
text-shadow: 0 0 8px rgba(255,122,24,.18);
}
.hero-title span{ color: var(--neon-green); text-shadow: 0 0 10px rgba(57,255,20,.22); }
.hero-subtitle{
font-size: clamp(1.04rem, 1.8vw, 1.24rem);
color: var(--text);
max-width: 1100px;
}
.btn-row{
display: flex; flex-wrap: wrap; gap: .75rem .85rem;
margin-top: .2rem;
}
.pills{
display: flex; flex-wrap: wrap; gap: .5rem .6rem; list-style: none;
}
.pill{
padding: .5rem .7rem;
border: 1px solid #242424;
border-radius: 999px;
background: #141414;
font-weight: 700;
font-size: .95rem;
color: #cfcfcf;
}
/* 7) Bloques + tarjetas */
.block{ display: grid; gap: .8rem; }
.block-title{
font-family: var(--font-display);
font-size: clamp(1.3rem, 2.6vw, 1.7rem);
letter-spacing: .01em;
}
.grid-2{
display: grid; gap: clamp(12px, 2vw, 18px);
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.card{
background: var(--panel);
border: 1px solid var(--stroke);
border-radius: var(--radius);
box-shadow: 0 10px 26px var(--shadow);
padding: var(--pad);
display: grid; gap: .7rem;
}
.card h4{
font-weight: 800;
font-size: clamp(1.05rem, 1.9vw, 1.25rem);
letter-spacing: .01em;
}
/* 8) Listas */
.check-list{
display: grid; gap: .5rem; list-style: none;
}
.check-list li{
position: relative; padding-left: 1.65rem;
}
.check-list li::before{
content: "✓";
position: absolute; left: 0; top: 0;
color: var(--neon-green); font-weight: 900;
}
.dash-list{
display: grid; gap: .45rem; list-style: none;
}
.dash-list li{
position: relative; padding-left: 1.2rem;
}
.dash-list li::before{
content: "—";
position: absolute; left: 0; top: 0; color: #7c7c7c;
}
.steps{
display: grid; gap: .45rem; counter-reset: step;
}
.steps li{
counter-increment: step;
position: relative;
padding-left: 2rem;
}
.steps li::before{
content: counter(step);
position: absolute; left: 0; top: 0;
width: 1.4rem; height: 1.4rem; border-radius: 6px;
background: var(--neon-green); color: #0b0b0b; font-weight: 900;
display: inline-grid; place-items: center;
}
/* 9) Índice rápido (fila de botones) */
.index-row{
display: flex; flex-wrap: wrap; gap: .6rem .7rem;
padding: .25rem 0 .2rem;
border-top: 1px solid #202020;
border-bottom: 1px solid #202020;
}
/* 10) FAQ */
.faq{
background: #141414;
border: 1px solid #2a2a2a;
border-radius: 12px;
padding: .8rem 1rem;
}
.faq + .faq{ margin-top: .6rem; }
.faq summary{ cursor: pointer; list-style: none; }
.faq summary::-webkit-details-marker{ display: none; }
.faq summary::after{ content: "+"; float: right; font-weight: 900; }
.faq[open] summary::after{ content: ""; }
/* 11) Tipografía de texto general en secciones */
.doc-card p, .doc-card ul, .doc-card ol{
line-height: 1.7;
color: var(--text);
}
/* 12) Responsive */
@media (max-width: 1200px){
.grid-2{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 900px){
.site-title{ font-size: clamp(2.1rem, 7vw, 3.2rem); }
.nav-menu{ gap: .55rem .6rem; }
.nav-menu button{ height: clamp(40px, 5.2vh, 50px); font-size: 1rem; }
.grid-2{ grid-template-columns: 1fr; }
}
@media (max-width: 680px){
.btn{ --h: 44px; }
.btn-row{ gap: .6rem; }
.pill{ font-size: .9rem; }
}
@media (max-width: 480px){
.hero-title{ font-size: clamp(1.8rem, 10vw, 2.3rem); }
.hero-subtitle{ font-size: 1rem; }
}