Spaces:
Running
Running
/* Premium Minimal Ticket Collection System */ | |
:root { | |
--primary-color: #1a1a1a; | |
--secondary-color: #6b7280; | |
--accent-color: #3b82f6; | |
--success-color: #10b981; | |
--warning-color: #f59e0b; | |
--danger-color: #ef4444; | |
--background-color: #fafbfc; | |
--card-background: #ffffff; | |
--border-color: #e5e7eb; | |
--text-primary: #111827; | |
--text-secondary: #6b7280; | |
--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); | |
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); | |
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); | |
} | |
* { | |
box-sizing: border-box; | |
} | |
body { | |
background-color: var(--background-color); | |
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; | |
font-size: 14px; | |
line-height: 1.6; | |
color: var(--text-primary); | |
margin: 0; | |
padding: 0; | |
} | |
/* Navigation */ | |
.navbar { | |
background-color: var(--card-background) ; | |
border-bottom: 1px solid var(--border-color); | |
box-shadow: none; | |
padding: 1rem 0; | |
} | |
.navbar-brand { | |
font-weight: 600; | |
font-size: 18px; | |
color: var(--text-primary) ; | |
display: flex; | |
align-items: center; | |
} | |
.navbar-brand i { | |
font-size: 20px; | |
margin-right: 8px; | |
color: var(--accent-color); | |
} | |
.navbar-nav .nav-link { | |
color: var(--text-secondary) ; | |
font-weight: 500; | |
transition: color 0.2s ease; | |
} | |
.navbar-nav .nav-link:hover { | |
color: var(--text-primary) ; | |
} | |
/* Hero Section - Minimal */ | |
.hero-section { | |
background: var(--card-background); | |
border: 1px solid var(--border-color); | |
border-radius: 12px; | |
padding: 3rem 2rem; | |
margin-bottom: 2rem; | |
text-align: center; | |
box-shadow: var(--shadow-sm); | |
} | |
.hero-section h1 { | |
font-size: 2.5rem; | |
font-weight: 600; | |
color: var(--text-primary); | |
margin-bottom: 1rem; | |
letter-spacing: -0.025em; | |
} | |
.hero-section .lead { | |
color: var(--text-secondary); | |
font-size: 1.1rem; | |
font-weight: 400; | |
max-width: 600px; | |
margin: 0 auto; | |
} | |
/* Feature Cards - Minimal */ | |
.feature-card { | |
background: var(--card-background); | |
border: 1px solid var(--border-color); | |
border-radius: 12px; | |
padding: 2rem 1.5rem; | |
transition: all 0.2s ease; | |
height: 100%; | |
text-align: center; | |
} | |
.feature-card:hover { | |
border-color: var(--accent-color); | |
transform: translateY(-2px); | |
box-shadow: var(--shadow-md); | |
} | |
.feature-icon i { | |
font-size: 2.5rem; | |
color: var(--accent-color); | |
margin-bottom: 1rem; | |
} | |
.feature-card h5 { | |
color: var(--text-primary); | |
font-weight: 600; | |
font-size: 1.1rem; | |
margin-bottom: 0.75rem; | |
} | |
.feature-card p { | |
color: var(--text-secondary); | |
font-size: 0.9rem; | |
margin: 0; | |
} | |
/* API Documentation */ | |
.api-documentation .card { | |
border: none; | |
border-radius: 15px; | |
} | |
.code-block { | |
font-family: 'Monaco', 'Consolas', 'Courier New', monospace; | |
font-size: 0.9rem; | |
line-height: 1.4; | |
overflow-x: auto; | |
} | |
.code-block code { | |
background: none ; | |
color: inherit ; | |
} | |
/* Stats Cards - Premium Minimal */ | |
.stats-card { | |
background: var(--card-background); | |
border: 1px solid var(--border-color); | |
border-radius: 12px; | |
padding: 1.5rem; | |
margin-bottom: 1rem; | |
box-shadow: var(--shadow-sm); | |
transition: all 0.2s ease; | |
display: flex; | |
flex-direction: column; | |
align-items: center; | |
text-align: center; | |
} | |
.stats-card:hover { | |
box-shadow: var(--shadow-md); | |
transform: translateY(-1px); | |
} | |
.stats-card .stats-icon { | |
font-size: 1.75rem; | |
color: var(--accent-color); | |
margin-bottom: 0.75rem; | |
opacity: 1; | |
} | |
.stats-card .stats-content h3 { | |
font-size: 2rem; | |
font-weight: 700; | |
margin: 0 0 0.25rem 0; | |
color: var(--text-primary); | |
} | |
.stats-card .stats-content p { | |
margin: 0; | |
font-size: 0.85rem; | |
color: var(--text-secondary); | |
font-weight: 500; | |
} | |
/* Table Styling - Premium Minimal */ | |
.table-responsive { | |
border-radius: 12px; | |
overflow: hidden; | |
border: 1px solid var(--border-color); | |
background: var(--card-background); | |
} | |
.table { | |
margin-bottom: 0; | |
font-size: 13px; | |
} | |
.table thead { | |
background-color: #f8fafc; | |
} | |
.table thead th { | |
border: none; | |
font-weight: 600; | |
cursor: pointer; | |
user-select: none; | |
padding: 1rem 0.75rem; | |
color: var(--text-primary); | |
font-size: 12px; | |
text-transform: uppercase; | |
letter-spacing: 0.025em; | |
border-bottom: 1px solid var(--border-color); | |
} | |
.table thead th:hover { | |
background-color: #f1f5f9; | |
} | |
.table thead th i.fas.fa-sort { | |
opacity: 0.4; | |
margin-left: 0.5rem; | |
transition: opacity 0.2s ease; | |
font-size: 10px; | |
} | |
.table thead th:hover i.fas.fa-sort { | |
opacity: 1; | |
} | |
.table tbody tr { | |
transition: background-color 0.2s ease; | |
border: none; | |
} | |
.table tbody tr:hover { | |
background-color: #f8fafc; | |
} | |
.table tbody td { | |
vertical-align: middle; | |
border-color: var(--border-color); | |
padding: 0.875rem 0.75rem; | |
color: var(--text-primary); | |
border-top: 1px solid #f1f5f9; | |
} | |
.table tbody td:first-child { | |
font-weight: 500; | |
} | |
/* Form Controls - Minimal */ | |
.table-controls { | |
background: var(--card-background); | |
padding: 1.5rem; | |
border-radius: 12px; | |
margin-bottom: 1.5rem; | |
border: 1px solid var(--border-color); | |
box-shadow: var(--shadow-sm); | |
} | |
.form-control, .form-select { | |
border-radius: 8px; | |
border: 1px solid var(--border-color); | |
transition: all 0.2s ease; | |
font-size: 14px; | |
padding: 0.625rem 0.875rem; | |
background-color: var(--card-background); | |
color: var(--text-primary); | |
} | |
.form-control:focus, .form-select:focus { | |
border-color: var(--accent-color); | |
box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1); | |
outline: none; | |
} | |
.form-control::placeholder { | |
color: var(--text-secondary); | |
opacity: 0.7; | |
} | |
/* Buttons - Premium Minimal */ | |
.btn { | |
border-radius: 8px; | |
font-weight: 500; | |
transition: all 0.2s ease; | |
border: 1px solid transparent; | |
padding: 0.625rem 1.25rem; | |
font-size: 14px; | |
display: inline-flex; | |
align-items: center; | |
gap: 0.5rem; | |
} | |
.btn:hover { | |
transform: translateY(-1px); | |
box-shadow: var(--shadow-md); | |
} | |
.btn-primary { | |
background: var(--accent-color); | |
border-color: var(--accent-color); | |
color: white; | |
} | |
.btn-primary:hover { | |
background: #2563eb; | |
border-color: #2563eb; | |
} | |
.btn-success { | |
background: var(--success-color); | |
border-color: var(--success-color); | |
color: white; | |
} | |
.btn-success:hover { | |
background: #059669; | |
border-color: #059669; | |
} | |
.btn-outline-primary { | |
background: transparent; | |
border-color: var(--accent-color); | |
color: var(--accent-color); | |
} | |
.btn-outline-primary:hover { | |
background: var(--accent-color); | |
color: white; | |
} | |
.btn-outline-secondary { | |
background: transparent; | |
border-color: var(--border-color); | |
color: var(--text-secondary); | |
} | |
.btn-outline-secondary:hover { | |
background: var(--secondary-color); | |
border-color: var(--secondary-color); | |
color: white; | |
} | |
.btn-outline-danger { | |
background: transparent; | |
border-color: var(--danger-color); | |
color: var(--danger-color); | |
} | |
.btn-outline-danger:hover { | |
background: var(--danger-color); | |
border-color: var(--danger-color); | |
color: white; | |
transform: none; | |
} | |
/* Cards - Premium Minimal */ | |
.card { | |
border: 1px solid var(--border-color); | |
border-radius: 12px; | |
box-shadow: var(--shadow-sm); | |
background: var(--card-background); | |
} | |
.card-header { | |
border: none; | |
border-bottom: 1px solid var(--border-color); | |
font-weight: 600; | |
background: var(--card-background); | |
padding: 1.5rem; | |
color: var(--text-primary); | |
} | |
.card-body { | |
padding: 1.5rem; | |
} | |
/* Badges */ | |
.badge { | |
border-radius: 6px; | |
font-weight: 500; | |
font-size: 12px; | |
} | |
/* Footer */ | |
footer { | |
margin-top: auto; | |
background: var(--card-background) ; | |
border-top: 1px solid var(--border-color); | |
color: var(--text-secondary) ; | |
} | |
footer p { | |
font-size: 13px; | |
color: var(--text-secondary) ; | |
} | |
footer i { | |
color: var(--accent-color); | |
} | |
/* Empty State */ | |
.text-center.py-5 { | |
padding: 3rem 1rem ; | |
} | |
.text-center.py-5 i { | |
opacity: 0.5; | |
} | |
/* Alerts */ | |
.alert { | |
border: none; | |
border-radius: 10px; | |
font-weight: 500; | |
} | |
.alert-dismissible .btn-close { | |
padding: 0.75rem 1rem; | |
} | |
/* Responsive Design */ | |
@media (max-width: 768px) { | |
.hero-section { | |
padding: 2rem 1rem; | |
text-align: center; | |
} | |
.hero-section h1 { | |
font-size: 2rem; | |
} | |
.stats-card { | |
text-align: center; | |
} | |
.table-responsive { | |
font-size: 0.875rem; | |
} | |
.d-flex.justify-content-between { | |
flex-direction: column; | |
gap: 1rem; | |
} | |
.d-flex.justify-content-between > div { | |
text-align: center; | |
} | |
} | |
@media (max-width: 576px) { | |
.container-fluid { | |
padding-left: 1rem; | |
padding-right: 1rem; | |
} | |
.btn-group-sm > .btn, .btn-sm { | |
font-size: 0.75rem; | |
} | |
.code-block { | |
font-size: 0.8rem; | |
padding: 0.75rem ; | |
} | |
} | |
/* Loading Animation */ | |
.loading { | |
opacity: 0.6; | |
pointer-events: none; | |
} | |
/* Success/Error States */ | |
.success-highlight { | |
background-color: rgba(40, 167, 69, 0.1) ; | |
border-left: 4px solid var(--success-color); | |
animation: highlight 2s ease-out; | |
} | |
.error-highlight { | |
background-color: rgba(220, 53, 69, 0.1) ; | |
border-left: 4px solid var(--danger-color); | |
animation: highlight 2s ease-out; | |
} | |
@keyframes highlight { | |
0% { | |
background-color: rgba(13, 110, 253, 0.2); | |
} | |
100% { | |
background-color: transparent; | |
} | |
} | |
/* Scrollbar Styling */ | |
::-webkit-scrollbar { | |
width: 6px; | |
height: 6px; | |
} | |
::-webkit-scrollbar-track { | |
background: #f1f1f1; | |
border-radius: 10px; | |
} | |
::-webkit-scrollbar-thumb { | |
background: #c1c1c1; | |
border-radius: 10px; | |
} | |
::-webkit-scrollbar-thumb:hover { | |
background: #a8a8a8; | |
} | |
/* Print Styles */ | |
@media print { | |
.navbar, .table-controls, .btn, footer { | |
display: none ; | |
} | |
.card { | |
box-shadow: none ; | |
border: 1px solid #dee2e6 ; | |
} | |
.table { | |
font-size: 0.8rem; | |
} | |
} | |