/* TIX Main Styles - Mobile Friendly */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.5; -webkit-font-smoothing: antialiased; }

/* Container */
.container { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }
@media (min-width: 576px) { .container { max-width: 540px; } }
@media (min-width: 768px) { .container { max-width: 720px; } }
@media (min-width: 992px) { .container { max-width: 960px; } }
@media (min-width: 1200px) { .container { max-width: 1140px; } }

/* Cards */
.card { transition: transform 0.3s; border: none; border-radius: 15px; background: white; box-shadow: 0 2px 10px rgba(0,0,0,0.05); margin-bottom: 20px; }
.card:hover { transform: translateY(-5px); }

/* Buttons */
.btn-primary { background: linear-gradient(135deg, #667eea, #764ba2); border: none; border-radius: 10px; padding: 12px 30px; transition: all 0.3s; }
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(102,126,234,0.4); }

/* Forms */
.form-control, .form-select { border-radius: 10px; border: 1px solid #e2e8f0; padding: 12px 15px; font-size: 16px; }
.form-control:focus { border-color: #667eea; box-shadow: 0 0 0 3px rgba(102,126,234,0.1); }

/* Footer */
.footer { background-color: #2d3748; color: white; padding: 50px 0; margin-top: 50px; }

/* Tables - Scrollable on mobile */
.table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* Mobile Responsive */
@media (max-width: 768px) {
    h1 { font-size: 1.8rem; }
    h2 { font-size: 1.5rem; }
    .hero-section { border-radius: 0; margin: 0 -15px 20px -15px; padding: 40px 20px; }
    .card-img-top { height: 180px; object-fit: cover; }
    .btn, .form-control { padding: 12px 15px; font-size: 16px !important; }
    .modal-footer { flex-direction: column; }
    .modal-footer .btn { width: 100%; margin: 5px 0; }
}

/* Utilities */
img { max-width: 100%; height: auto; }
.alert { border-radius: 10px; border: none; }