/* ========================================= ESTILOS GENERALES Y ESTRUCTURA ========================================= */ body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background: radial-gradient(circle at top left, rgba(41, 128, 185, 0.18), transparent 22%), radial-gradient(circle at bottom right, rgba(243, 156, 18, 0.16), transparent 22%), linear-gradient(150deg, #07111d 0%, #112640 45%, #0f1831 100%); color: #edf2f7; margin: 0; padding: 0; min-height: 100vh; } body::before, body::after { content: ''; position: fixed; border-radius: 50%; pointer-events: none; filter: blur(80px); opacity: 0.25; } body::before { width: 380px; height: 380px; top: -120px; left: -90px; background: rgba(41, 128, 185, 0.4); } body::after { width: 420px; height: 420px; bottom: -120px; right: -100px; background: rgba(243, 156, 18, 0.35); } header { background: rgba(10, 20, 40, 0.94); color: #f4f7fb; padding: 40px 20px; text-align: center; border-radius: 24px; width: min(100%, 960px); margin: 24px auto 32px auto; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35); position: relative; overflow: hidden; } header::before { content: ''; position: absolute; top: -30px; right: -60px; width: 220px; height: 220px; border-radius: 50%; background: rgba(243, 156, 18, 0.18); } header::after { content: ''; position: absolute; bottom: -40px; left: -60px; width: 180px; height: 180px; border-radius: 50%; background: rgba(41, 128, 185, 0.16); } header h1 { margin: 0; font-size: clamp(32px, 4vw, 46px); text-transform: uppercase; letter-spacing: 2px; color: #ffffff; line-height: 1.05; } main { background: rgba(8, 18, 34, 0.92); width: min(100%, 960px); margin: 0 auto 40px auto; padding: 36px; border-radius: 28px; box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35); border: 1px solid rgba(255,255,255,0.08); } main h2 { color: #f1c40f; margin-top: 0; text-transform: uppercase; font-size: 22px; letter-spacing: 1px; margin-bottom: 1rem; } /* ========================================= DISEÑO DE LA TABLA ========================================= */ table { width: 100%; margin-top: 20px; border-collapse: collapse; border-radius: 18px; overflow: hidden; box-shadow: 0 20px 40px rgba(0, 0, 0, 0.18); } th, td { padding: 16px 20px; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.08); } th { background-color: rgba(169, 50, 38, 0.95); color: #ffffff; text-transform: uppercase; letter-spacing: 1px; font-size: 14px; font-weight: 600; } tr { background-color: rgba(255,255,255,0.04); transition: background-color 0.3s ease, transform 0.2s ease; } tr:hover { background-color: rgba(243,156,18,0.12); transform: scale(1.01); box-shadow: 0 2px 12px rgba(0,0,0,0.14); } /* ========================================= ESTILOS DEL MENÚ MÁGICO (TUS BOTONES) ========================================= */ .navigation { width: min(100%, 420px); height: 72px; background: rgba(255,255,255,0.09); position: relative; display: flex; justify-content: center; align-items: center; border-radius: 24px; margin: 20px auto; box-shadow: 0 18px 30px rgba(0, 0, 0, 0.18); border: 1px solid rgba(255,255,255,0.1); } .navigation ul { display: flex; width: 100%; max-width: 380px; padding: 0; margin: 0; } .navigation ul li { position: relative; list-style: none; width: 70px; height: 70px; z-index: 1; } .navigation ul li a { position: relative; display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; text-align: center; font-weight: 600; text-decoration: none; color: #edf2f7; } .navigation ul li a .icon { position: relative; display: block; line-height: 75px; font-size: 1.35em; text-align: center; transition: 0.5s; color: #d1d8e0; } .navigation ul li a .text { position: absolute; color: #d1d8e0; font-weight: 500; font-size: 0.72em; letter-spacing: 0.05em; transition: 0.5s; opacity: 0; transform: translateY(20px); } .navigation ul li.active a .icon { transform: translateY(-32px); color: #f1c40f; } .navigation ul li.active a .text { opacity: 1; transform: translateY(10px); } .indicator { position: absolute; top: -50%; width: 70px; height: 70px; background: linear-gradient(135deg, #f1c40f, #e67e22); border-radius: 50%; border: 6px solid rgba(255,255,255,0.85); transition: 0.5s; } .indicator::before { content: ''; position: absolute; top: 50%; left: -22px; width: 20px; height: 20px; background: transparent; border-top-right-radius: 20px; box-shadow: 1px -10px 0 0 rgba(255,255,255,0.85); } .indicator::after { content: ''; position: absolute; top: 50%; right: -22px; width: 20px; height: 20px; background: transparent; border-top-left-radius: 20px; box-shadow: -1px -10px 0 0 rgba(255,255,255,0.85); } .navigation ul li:nth-child(1).active ~ .indicator { transform: translateX(calc(70px * 0)); } .navigation ul li:nth-child(2).active ~ .indicator { transform: translateX(calc(70px * 1)); } .navigation ul li:nth-child(3).active ~ .indicator { transform: translateX(calc(70px * 2)); } .navigation ul li:nth-child(4).active ~ .indicator { transform: translateX(calc(70px * 3)); } /* ========================================= DISEÑO RESPONSIVO (TELÉFONOS) ========================================= */ @media (max-width: 768px) { body { padding: 16px; } header { width: 100%; margin: 18px 0 24px 0; padding: 32px 18px; } main { width: 100%; padding: 24px; } .navigation { width: 100%; max-width: 360px; } } /* ========================================= ESTILOS DEL FORMULARIO DE REGISTRO ========================================= */ .formulario { display: grid; gap: 16px; max-width: 520px; margin: 16px auto 0 auto; } .formulario input, .formulario select { width: 100%; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.12); color: #edf2f7; padding: 16px 18px; border-radius: 18px; font-size: 15px; transition: border-color 0.3s ease, transform 0.2s ease; } .formulario input:focus, .formulario select:focus { border-color: #f1c40f; outline: none; transform: translateY(-1px); } .formulario button { background: linear-gradient(135deg, #f1c40f 0%, #f39c12 100%); color: #08101a; border: none; padding: 16px; border-radius: 999px; font-size: 16px; font-weight: 900; cursor: pointer; transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease; display: inline-flex; justify-content: center; align-items: center; gap: 10px; } .formulario button:hover { transform: translateY(-2px); box-shadow: 0 18px 32px rgba(243,156,18,0.3); } .formulario button:active { transform: translateY(0); } .texto-chivo { font-size: clamp(42px, 8vw, 64px); font-weight: 900; text-transform: uppercase; text-align: center; margin: 20px auto; background-image: linear-gradient(135deg, rgba(241,196,15,1), rgba(235,112,46,1)); background-clip: text; -webkit-background-clip: text; color: transparent; } @media (max-width: 768px) { .texto-chivo { font-size: clamp(32px, 10vw, 48px); } .formulario { max-width: 100%; } }