| |
| |
| |
| |
|
|
|
|
|
|
| @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@700;800&display=swap');
|
|
|
|
|
| :root {
|
|
|
| --color-utm-maroon: #8B1538;
|
| --color-utm-maroon-dark: #6B0F2A;
|
| --color-utm-maroon-light: #A01D45;
|
| --color-utm-gold: #F4A900;
|
| --color-utm-gold-dark: #D49000;
|
| --color-utm-gold-light: #FFB820;
|
|
|
|
|
| --color-primary: var(--color-utm-maroon);
|
| --color-primary-dark: var(--color-utm-maroon-dark);
|
| --color-primary-light: var(--color-utm-maroon-light);
|
| --color-accent: var(--color-utm-gold);
|
| --color-accent-dark: var(--color-utm-gold-dark);
|
| --color-accent-light: var(--color-utm-gold-light);
|
|
|
|
|
| --color-success: #10B981;
|
| --color-error: #EF4444;
|
| --color-warning: #F59E0B;
|
| --color-info: #3B82F6;
|
|
|
|
|
| --color-bg: #0F0A15;
|
| --color-bg-secondary: #1A1425;
|
| --color-surface: rgba(139, 21, 56, 0.1);
|
| --color-surface-hover: rgba(139, 21, 56, 0.2);
|
| --color-text: #F9FAFB;
|
| --color-text-muted: #D1D5DB;
|
| --color-border: rgba(244, 169, 0, 0.2);
|
|
|
|
|
| --spacing-xs: 0.25rem;
|
| --spacing-sm: 0.5rem;
|
| --spacing-md: 1rem;
|
| --spacing-lg: 1.5rem;
|
| --spacing-xl: 2rem;
|
| --spacing-2xl: 3rem;
|
|
|
|
|
| --radius-sm: 0.375rem;
|
| --radius-md: 0.5rem;
|
| --radius-lg: 0.75rem;
|
| --radius-xl: 1rem;
|
|
|
|
|
| --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
|
| --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
|
| --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
|
| --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
|
|
|
|
|
| --transition-fast: 150ms ease-in-out;
|
| --transition-base: 300ms ease-in-out;
|
| --transition-slow: 500ms ease-in-out;
|
| }
|
|
|
|
|
| * {
|
| margin: 0;
|
| padding: 0;
|
| box-sizing: border-box;
|
| }
|
|
|
| body {
|
| font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
|
| background: linear-gradient(135deg, #0F0A15 0%, #1A1425 50%, #0F0A15 100%);
|
| background-attachment: fixed;
|
| color: var(--color-text);
|
| line-height: 1.6;
|
| min-height: 100vh;
|
| overflow-x: hidden;
|
| }
|
|
|
|
|
| body::before {
|
| content: '';
|
| position: fixed;
|
| top: 0;
|
| left: 0;
|
| width: 100%;
|
| height: 100%;
|
| background-image:
|
| radial-gradient(circle at 20% 50%, rgba(139, 21, 56, 0.1) 0%, transparent 50%),
|
| radial-gradient(circle at 80% 80%, rgba(244, 169, 0, 0.1) 0%, transparent 50%);
|
| pointer-events: none;
|
| z-index: 0;
|
| }
|
|
|
|
|
| h1,
|
| h2,
|
| h3,
|
| h4,
|
| h5,
|
| h6 {
|
| font-family: 'Outfit', 'Inter', sans-serif;
|
| font-weight: 700;
|
| line-height: 1.2;
|
| color: var(--color-text);
|
| }
|
|
|
| h1 {
|
| font-size: 2.5rem;
|
| background: linear-gradient(135deg, var(--color-utm-maroon) 0%, var(--color-utm-gold) 100%);
|
| -webkit-background-clip: text;
|
| -webkit-text-fill-color: transparent;
|
| background-clip: text;
|
| }
|
|
|
| h2 {
|
| font-size: 2rem;
|
| }
|
|
|
| h3 {
|
| font-size: 1.5rem;
|
| }
|
|
|
|
|
| .container {
|
| max-width: 1200px;
|
| margin: 0 auto;
|
| padding: 0 var(--spacing-lg);
|
| position: relative;
|
| z-index: 1;
|
| }
|
|
|
| .section {
|
| padding: var(--spacing-2xl) 0;
|
| position: relative;
|
| }
|
|
|
|
|
| .navbar {
|
| background: rgba(15, 10, 21, 0.95);
|
| backdrop-filter: blur(10px);
|
| border-bottom: 2px solid var(--color-utm-gold);
|
| padding: var(--spacing-md) 0;
|
| position: sticky;
|
| top: 0;
|
| z-index: 1000;
|
| box-shadow: 0 4px 20px rgba(139, 21, 56, 0.3);
|
| }
|
|
|
| .navbar-content {
|
| display: flex;
|
| justify-content: space-between;
|
| align-items: center;
|
| }
|
|
|
| .navbar-brand {
|
| font-family: 'Outfit', sans-serif;
|
| font-size: 1.75rem;
|
| font-weight: 800;
|
| background: linear-gradient(135deg, var(--color-utm-maroon) 0%, var(--color-utm-gold) 100%);
|
| -webkit-background-clip: text;
|
| -webkit-text-fill-color: transparent;
|
| background-clip: text;
|
| text-decoration: none;
|
| transition: transform var(--transition-fast);
|
| }
|
|
|
| .navbar-brand:hover {
|
| transform: scale(1.05);
|
| }
|
|
|
| .navbar-nav {
|
| display: flex;
|
| list-style: none;
|
| gap: var(--spacing-lg);
|
| align-items: center;
|
| }
|
|
|
| .navbar-link {
|
| color: var(--color-text);
|
| text-decoration: none;
|
| font-weight: 500;
|
| padding: var(--spacing-sm) var(--spacing-md);
|
| border-radius: var(--radius-md);
|
| transition: all var(--transition-fast);
|
| position: relative;
|
| }
|
|
|
| .navbar-link::after {
|
| content: '';
|
| position: absolute;
|
| bottom: 0;
|
| left: 50%;
|
| transform: translateX(-50%);
|
| width: 0;
|
| height: 2px;
|
| background: var(--color-utm-gold);
|
| transition: width var(--transition-fast);
|
| }
|
|
|
| .navbar-link:hover {
|
| color: var(--color-utm-gold);
|
| }
|
|
|
| .navbar-link:hover::after {
|
| width: 80%;
|
| }
|
|
|
|
|
| .glass-card {
|
| background: rgba(26, 20, 37, 0.7);
|
| backdrop-filter: blur(10px);
|
| border: 1px solid var(--color-border);
|
| border-radius: var(--radius-xl);
|
| padding: var(--spacing-xl);
|
| box-shadow:
|
| 0 8px 32px rgba(139, 21, 56, 0.2),
|
| inset 0 1px 0 rgba(244, 169, 0, 0.1);
|
| transition: all var(--transition-base);
|
| }
|
|
|
| .glass-card:hover {
|
| transform: translateY(-2px);
|
| box-shadow:
|
| 0 12px 40px rgba(139, 21, 56, 0.3),
|
| inset 0 1px 0 rgba(244, 169, 0, 0.2);
|
| border-color: rgba(244, 169, 0, 0.4);
|
| }
|
|
|
|
|
| .btn {
|
| display: inline-block;
|
| padding: 0.75rem 1.5rem;
|
| font-size: 1rem;
|
| font-weight: 600;
|
| text-align: center;
|
| text-decoration: none;
|
| border: none;
|
| border-radius: var(--radius-md);
|
| cursor: pointer;
|
| transition: all var(--transition-fast);
|
| position: relative;
|
| overflow: hidden;
|
| }
|
|
|
| .btn::before {
|
| content: '';
|
| position: absolute;
|
| top: 50%;
|
| left: 50%;
|
| width: 0;
|
| height: 0;
|
| border-radius: 50%;
|
| background: rgba(255, 255, 255, 0.1);
|
| transform: translate(-50%, -50%);
|
| transition: width 0.6s, height 0.6s;
|
| }
|
|
|
| .btn:hover::before {
|
| width: 300px;
|
| height: 300px;
|
| }
|
|
|
| .btn-primary {
|
| background: linear-gradient(135deg, var(--color-utm-maroon) 0%, var(--color-utm-maroon-dark) 100%);
|
| color: white;
|
| box-shadow: 0 4px 15px rgba(139, 21, 56, 0.4);
|
| }
|
|
|
| .btn-primary:hover {
|
| background: linear-gradient(135deg, var(--color-utm-maroon-light) 0%, var(--color-utm-maroon) 100%);
|
| box-shadow: 0 6px 20px rgba(139, 21, 56, 0.6);
|
| transform: translateY(-2px);
|
| }
|
|
|
| .btn-secondary {
|
| background: linear-gradient(135deg, var(--color-utm-gold) 0%, var(--color-utm-gold-dark) 100%);
|
| color: var(--color-utm-maroon-dark);
|
| box-shadow: 0 4px 15px rgba(244, 169, 0, 0.4);
|
| }
|
|
|
| .btn-secondary:hover {
|
| background: linear-gradient(135deg, var(--color-utm-gold-light) 0%, var(--color-utm-gold) 100%);
|
| box-shadow: 0 6px 20px rgba(244, 169, 0, 0.6);
|
| transform: translateY(-2px);
|
| }
|
|
|
| .btn-success {
|
| background: linear-gradient(135deg, var(--color-success) 0%, #059669 100%);
|
| color: white;
|
| box-shadow: 0 4px 15px rgba(16, 185, 129, 0.4);
|
| }
|
|
|
| .btn-success:hover {
|
| background: linear-gradient(135deg, #10B981 0%, var(--color-success) 100%);
|
| transform: translateY(-2px);
|
| }
|
|
|
| .btn-outline {
|
| background: transparent;
|
| color: var(--color-utm-gold);
|
| border: 2px solid var(--color-utm-gold);
|
| }
|
|
|
| .btn-outline:hover {
|
| background: var(--color-utm-gold);
|
| color: var(--color-utm-maroon-dark);
|
| }
|
|
|
| .btn:disabled {
|
| opacity: 0.5;
|
| cursor: not-allowed;
|
| }
|
|
|
|
|
| .form-group {
|
| margin-bottom: var(--spacing-lg);
|
| }
|
|
|
| .form-label {
|
| display: block;
|
| margin-bottom: var(--spacing-sm);
|
| font-weight: 600;
|
| color: var(--color-utm-gold);
|
| }
|
|
|
| .form-input,
|
| .form-select {
|
| width: 100%;
|
| padding: 0.75rem 1rem;
|
| background: rgba(26, 20, 37, 0.6);
|
| border: 1px solid var(--color-border);
|
| border-radius: var(--radius-md);
|
| color: var(--color-text);
|
| font-size: 1rem;
|
| transition: all var(--transition-fast);
|
| }
|
|
|
| .form-input:focus,
|
| .form-select:focus {
|
| outline: none;
|
| border-color: var(--color-utm-gold);
|
| box-shadow: 0 0 0 3px rgba(244, 169, 0, 0.1);
|
| background: rgba(26, 20, 37, 0.8);
|
| }
|
|
|
| .form-select option {
|
| background: #1A1425;
|
| color: var(--color-text);
|
| }
|
|
|
|
|
| .badge {
|
| display: inline-block;
|
| padding: 0.25rem 0.75rem;
|
| font-size: 0.875rem;
|
| font-weight: 600;
|
| border-radius: var(--radius-sm);
|
| background: rgba(139, 21, 56, 0.2);
|
| color: var(--color-utm-gold);
|
| border: 1px solid var(--color-utm-gold);
|
| }
|
|
|
| .badge-success {
|
| background: rgba(16, 185, 129, 0.2);
|
| color: var(--color-success);
|
| border-color: var(--color-success);
|
| }
|
|
|
| .badge-error {
|
| background: rgba(239, 68, 68, 0.2);
|
| color: var(--color-error);
|
| border-color: var(--color-error);
|
| }
|
|
|
|
|
| .code-display {
|
| font-family: 'Courier New', monospace;
|
| font-size: 4rem;
|
| font-weight: 800;
|
| text-align: center;
|
| padding: var(--spacing-xl);
|
| background: linear-gradient(135deg, var(--color-utm-maroon) 0%, var(--color-utm-gold) 100%);
|
| -webkit-background-clip: text;
|
| -webkit-text-fill-color: transparent;
|
| background-clip: text;
|
| letter-spacing: 1rem;
|
| text-shadow: 0 0 30px rgba(244, 169, 0, 0.5);
|
| }
|
|
|
|
|
| .text-center {
|
| text-align: center;
|
| }
|
|
|
| .text-right {
|
| text-align: right;
|
| }
|
|
|
| .text-muted {
|
| color: var(--color-text-muted);
|
| }
|
|
|
| .mt-1 {
|
| margin-top: var(--spacing-sm);
|
| }
|
|
|
| .mt-2 {
|
| margin-top: var(--spacing-md);
|
| }
|
|
|
| .mt-3 {
|
| margin-top: var(--spacing-lg);
|
| }
|
|
|
| .mb-1 {
|
| margin-bottom: var(--spacing-sm);
|
| }
|
|
|
| .mb-2 {
|
| margin-bottom: var(--spacing-md);
|
| }
|
|
|
| .mb-3 {
|
| margin-bottom: var(--spacing-lg);
|
| }
|
|
|
| .hidden {
|
| display: none !important;
|
| }
|
|
|
| .grid {
|
| display: grid;
|
| gap: var(--spacing-lg);
|
| }
|
|
|
| .grid-1 {
|
| grid-template-columns: 1fr;
|
| }
|
|
|
| .grid-2 {
|
| grid-template-columns: repeat(2, 1fr);
|
| }
|
|
|
| .grid-3 {
|
| grid-template-columns: repeat(3, 1fr);
|
| }
|
|
|
| .gap-1 {
|
| gap: var(--spacing-sm);
|
| }
|
|
|
| .gap-2 {
|
| gap: var(--spacing-md);
|
| }
|
|
|
| .flex-between {
|
| display: flex;
|
| justify-content: space-between;
|
| align-items: center;
|
| }
|
|
|
| .flex-center {
|
| display: flex;
|
| justify-content: center;
|
| align-items: center;
|
| }
|
|
|
|
|
| .loading-overlay {
|
| position: fixed;
|
| top: 0;
|
| left: 0;
|
| width: 100%;
|
| height: 100%;
|
| background: rgba(15, 10, 21, 0.9);
|
| display: flex;
|
| justify-content: center;
|
| align-items: center;
|
| z-index: 9999;
|
| }
|
|
|
| .spinner {
|
| width: 50px;
|
| height: 50px;
|
| border: 4px solid rgba(244, 169, 0, 0.2);
|
| border-top-color: var(--color-utm-gold);
|
| border-radius: 50%;
|
| animation: spin 1s linear infinite;
|
| }
|
|
|
| @keyframes spin {
|
| to {
|
| transform: rotate(360deg);
|
| }
|
| }
|
|
|
|
|
| .alert {
|
| padding: var(--spacing-md);
|
| border-radius: var(--radius-md);
|
| margin-bottom: var(--spacing-md);
|
| border-left: 4px solid;
|
| }
|
|
|
| .alert-error {
|
| background: rgba(239, 68, 68, 0.1);
|
| border-color: var(--color-error);
|
| color: #FCA5A5;
|
| }
|
|
|
| .alert-success {
|
| background: rgba(16, 185, 129, 0.1);
|
| border-color: var(--color-success);
|
| color: #6EE7B7;
|
| }
|
|
|
|
|
| .video-container {
|
| position: relative;
|
| border-radius: var(--radius-lg);
|
| overflow: hidden;
|
| border: 2px solid var(--color-utm-gold);
|
| }
|
|
|
| .video-preview {
|
| width: 100%;
|
| height: auto;
|
| display: block;
|
| }
|
|
|
|
|
| .status-badge {
|
| padding: var(--spacing-md);
|
| border-radius: var(--radius-md);
|
| border: 1px solid var(--color-border);
|
| background: rgba(26, 20, 37, 0.6);
|
| }
|
|
|
| .status-info {
|
| border-color: var(--color-utm-gold);
|
| background: rgba(244, 169, 0, 0.1);
|
| }
|
|
|
|
|
| @media (max-width: 768px) {
|
|
|
| .grid-2,
|
| .grid-3 {
|
| grid-template-columns: 1fr;
|
| }
|
|
|
| .navbar-nav {
|
| gap: var(--spacing-sm);
|
| font-size: 0.875rem;
|
| }
|
|
|
| h1 {
|
| font-size: 2rem;
|
| }
|
|
|
| h2 {
|
| font-size: 1.5rem;
|
| }
|
|
|
| .code-display {
|
| font-size: 2.5rem;
|
| letter-spacing: 0.5rem;
|
| }
|
| }
|
|
|
|
|
| @keyframes fadeIn {
|
| from {
|
| opacity: 0;
|
| transform: translateY(20px);
|
| }
|
|
|
| to {
|
| opacity: 1;
|
| transform: translateY(0);
|
| }
|
| }
|
|
|
| .glass-card {
|
| animation: fadeIn 0.5s ease-out;
|
| } |