:root{--page-bg:#f4f7fa;--surface:#ffffff;--surface-strong:#0a192f;--text-main:#1e293b;--text-muted:#64748b;--text-light:#f8fafc;--accent:#0284c7;--accent-green:#10b981;--accent-red:#ef4444;--border:#e2e8f0;--card-shadow:0 4px 6px -1px rgb(0 0 0 / 0.05),0 2px 4px -2px rgb(0 0 0 / 0.05);--transition:all 0.3s ease}body{background-color:var(--page-bg);color:var(--text-main);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;overflow-x:hidden}.custom-navbar{background-color:var(--surface-strong);backdrop-filter:blur(8px);border-bottom:2px solid var(--accent);padding:0.8rem 1rem}.custom-navbar .navbar-brand{font-weight:800;color:var(--text-light) !important;display:flex;align-items:center;gap:10px}.custom-navbar .navbar-brand img{max-height:40px;object-fit:contain}.custom-navbar .nav-link{color:rgba(248,250,252,0.85) !important;font-weight:500;padding:0.5rem 1rem !important;border-radius:6px;transition:var(--transition)}.custom-navbar .nav-link:hover,.custom-navbar .nav-link:focus{color:var(--text-light) !important;background-color:rgba(2,132,199,0.2)}.hero-section{background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:var(--text-light);padding:80px 0;position:relative;overflow:hidden}.hero-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 80% 20%,rgba(2,132,199,0.15) 0%,transparent 50%);pointer-events:none}.hero-img{border-radius:14px;box-shadow:0 20px 25px -5px rgb(0 0 0 / 0.3);border:4px solid rgba(255,255,255,0.1);object-fit:cover}.section-title{position:relative;font-weight:700;color:var(--text-main);margin-bottom:2rem;padding-bottom:0.75rem}.section-title::after{content:'';position:absolute;left:0;bottom:0;width:50px;height:4px;background:linear-gradient(to right,var(--accent),var(--accent-red));border-radius:2px}.custom-card{background-color:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--card-shadow);transition:var(--transition);height:100%}.custom-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1)}.status-strip{background:linear-gradient(90deg,#0284c7 0%,#0369a1 100%);color:var(--text-light);border-radius:12px;padding:1.5rem;box-shadow:var(--card-shadow)}.status-badge{background-color:rgba(255,255,255,0.2);color:var(--text-light);padding:0.25rem 0.75rem;border-radius:50px;font-size:0.85rem;font-weight:600}.group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem}.group-header{background:linear-gradient(135deg,var(--accent) 0%,#1e40af 100%);color:var(--text-light);font-weight:bold;text-align:center;padding:0.75rem;border-top-left-radius:11px;border-top-right-radius:11px}.group-item{display:flex;justify-content:space-between;align-items:center;padding:0.65rem 1rem;border-bottom:1px solid var(--border)}.group-item:last-child{border-bottom:none}.schedule-row{border-left:4px solid var(--accent);background:var(--surface);padding:1rem;border-radius:0 8px 8px 0;box-shadow:var(--card-shadow);transition:var(--transition)}.schedule-row:hover{border-left-color:var(--accent-red);background-color:#f8fafc}.guide-section{background-color:#ffffff;border-radius:14px;padding:3rem;box-shadow:var(--card-shadow)}.faq-item{border:1px solid var(--border);border-radius:8px;background-color:var(--surface);margin-bottom:0.75rem;overflow:hidden}.faq-question{padding:1.25rem;font-weight:600;color:var(--text-main);cursor:pointer;display:flex;justify-content:space-between;align-items:center;background-color:#fafbfc;transition:var(--transition)}.faq-question:hover{background-color:#f1f5f9}.faq-answer{padding:1.25rem;color:var(--text-muted);border-top:1px solid var(--border);line-height:1.6}.custom-footer{background-color:var(--surface-strong);color:rgba(248,250,252,0.75);padding:4rem 0 2rem;border-top:4px solid var(--accent-red)}.custom-footer a{color:rgba(248,250,252,0.75);text-decoration:none;transition:var(--transition)}.custom-footer a:hover{color:var(--text-light);padding-left:4px}.table-responsive-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;border:1px solid var(--border)}@media (max-width:768px){.hero-section{padding:40px 0;text-align:center}.hero-img{margin-top:2rem}.guide-section{padding:1.5rem}}