  [data-theme="dark"]{--jibu-primary:#FF6B35;--jibu-primary-dark:#E55A2B;--jibu-secondary:#0f0f1a;--jibu-secondary-light:#1a1a2e;--jibu-accent:#16213E;--jibu-dark:#0a0a14;--jibu-dark-light:#1a1a2e;--jibu-light:#111122;--jibu-white:#1a1a2e;--jibu-gray-50:#1e1e32;--jibu-gray-100:#252540;--jibu-gray-200:#2d2d4a;--jibu-gray-300:#3d3d5c;--jibu-gray-400:#5a5a7a;--jibu-gray-500:#7a7a9a;--jibu-gray-600:#9a9aba;--jibu-gray-700:#babada;--jibu-gray-800:#dadaf0;--jibu-gray-900:#f0f0ff;--jibu-shadow-sm:0 1px 3px rgba(0,0,0,0.3);--jibu-shadow:0 4px 12px rgba(0,0,0,0.4);--jibu-shadow-lg:0 8px 32px rgba(0,0,0,0.5);--jibu-shadow-xl:0 16px 48px rgba(0,0,0,0.6);}[data-theme="dark"] body{background:var(--jibu-dark);color:var(--jibu-gray-800);}[data-theme="dark"] .card,[data-theme="dark"] .card-header,[data-theme="dark"] .card-footer,[data-theme="dark"] .modal-content,[data-theme="dark"] .list-group-item,[data-theme="dark"] .dropdown-menu,[data-theme="dark"] .table{background-color:var(--jibu-white);color:var(--jibu-gray-800);}[data-theme="dark"] .table-light{background-color:var(--jibu-gray-100);}[data-theme="dark"] .table-light th{background-color:var(--jibu-gray-100);color:var(--jibu-gray-800);}[data-theme="dark"] .table td,[data-theme="dark"] .table th{border-color:var(--jibu-gray-300);}[data-theme="dark"] .text-dark{color:var(--jibu-gray-800) !important;}[data-theme="dark"] .bg-white{background-color:var(--jibu-white) !important;}[data-theme="dark"] .bg-light{background-color:var(--jibu-gray-100) !important;}[data-theme="dark"] .navbar-jibu{background:var(--jibu-secondary) !important;}[data-theme="dark"] .hero-section{background:linear-gradient(135deg,var(--jibu-dark) 0%,var(--jibu-secondary) 100%);} @keyframes fadeInUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}@keyframes fadeInDown{from{opacity:0;transform:translateY(-20px);}to{opacity:1;transform:translateY(0);}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-30px);}to{opacity:1;transform:translateX(0);}}@keyframes fadeInRight{from{opacity:0;transform:translateX(30px);}to{opacity:1;transform:translateX(0);}}@keyframes bounceIn{0%{opacity:0;transform:scale(0.3);}50%{transform:scale(1.05);}70%{transform:scale(0.9);}100%{opacity:1;transform:scale(1);}}@keyframes pulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(255,107,53,0.4);}50%{box-shadow:0 0 0 12px rgba(255,107,53,0);}}@keyframes slideInUp{from{opacity:0;transform:translateY(40px);}to{opacity:1;transform:translateY(0);}}@keyframes shake{0%,100%{transform:translateX(0);}10%,30%,50%,70%,90%{transform:translateX(-5px);}20%,40%,60%,80%{transform:translateX(5px);}}@keyframes tada{0%{transform:scale(1) rotate(0deg);}10%,20%{transform:scale(0.9) rotate(-3deg);}30%,50%,70%,90%{transform:scale(1.1) rotate(3deg);}40%,60%,80%{transform:scale(1.1) rotate(-3deg);}100%{transform:scale(1) rotate(0deg);}}@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}@keyframes shimmerBG{0%{background-position:-468px 0;}100%{background-position:468px 0;}}@keyframes ripple{to{transform:scale(4);opacity:0;}}@keyframes slideDown{from{opacity:0;max-height:0;}to{opacity:1;max-height:500px;}}@keyframes scaleX{from{transform:scaleX(0);}to{transform:scaleX(1);}}@keyframes orderPulse{0%,100%{border-left-color:var(--jibu-primary);}50%{border-left-color:#ffaa7a;}} .animate-fadeInUp{animation:fadeInUp 0.6s ease forwards;}.animate-fadeInDown{animation:fadeInDown 0.6s ease forwards;}.animate-fadeInLeft{animation:fadeInLeft 0.6s ease forwards;}.animate-fadeInRight{animation:fadeInRight 0.6s ease forwards;}.animate-bounceIn{animation:bounceIn 0.6s ease forwards;}.animate-pulseGlow{animation:pulseGlow 2s infinite;}.animate-slideInUp{animation:slideInUp 0.5s ease forwards;}.animate-shake{animation:shake 0.5s ease;}.animate-tada{animation:tada 0.6s ease;}.animate-float{animation:float 3s ease-in-out infinite;}.animate-scaleX{animation:scaleX 0.4s ease forwards;transform-origin:left;} .stagger-children > *:nth-child(1){animation-delay:0s;}.stagger-children > *:nth-child(2){animation-delay:0.08s;}.stagger-children > *:nth-child(3){animation-delay:0.16s;}.stagger-children > *:nth-child(4){animation-delay:0.24s;}.stagger-children > *:nth-child(5){animation-delay:0.32s;}.stagger-children > *:nth-child(6){animation-delay:0.40s;}.stagger-children > *:nth-child(7){animation-delay:0.48s;}.stagger-children > *:nth-child(8){animation-delay:0.56s;}.stagger-children > *:nth-child(9){animation-delay:0.64s;}.stagger-children > *:nth-child(10){animation-delay:0.72s;} .order-timeline-modern{position:relative;padding:0;}.order-timeline-modern .timeline-track{position:absolute;left:24px;top:0;bottom:0;width:3px;background:var(--jibu-gray-200);border-radius:3px;overflow:hidden;}.order-timeline-modern .timeline-track-fill{position:absolute;left:0;top:0;width:100%;background:linear-gradient(to bottom,var(--jibu-primary),var(--jibu-success));border-radius:3px;transition:height 0.8s ease;}.order-timeline-modern .timeline-step{position:relative;padding:0 0 24px 60px;}.order-timeline-modern .timeline-step:last-child{padding-bottom:0;}.order-timeline-modern .timeline-icon{position:absolute;left:12px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.7rem;background:var(--jibu-gray-200);color:var(--jibu-gray-500);border:3px solid #fff;z-index:2;transition:all 0.5s ease;box-shadow:0 2px 8px rgba(0,0,0,0.1);}.order-timeline-modern .timeline-step.completed .timeline-icon{background:var(--jibu-success);color:#fff;transform:scale(1.1);}.order-timeline-modern .timeline-step.active .timeline-icon{background:var(--jibu-primary);color:#fff;transform:scale(1.15);animation:pulseGlow 2s infinite;}.order-timeline-modern .timeline-label{font-weight:600;font-size:0.9rem;margin-bottom:2px;}.order-timeline-modern .timeline-time{font-size:0.75rem;color:var(--jibu-gray-500);}.order-timeline-modern .timeline-step.completed .timeline-label{color:var(--jibu-success);}.order-timeline-modern .timeline-step.active .timeline-label{color:var(--jibu-primary);} .new-order-banner{position:fixed;top:80px;right:20px;background:linear-gradient(135deg,var(--jibu-primary),var(--jibu-primary-dark));color:#fff;padding:16px 20px;border-radius:16px;box-shadow:0 8px 32px rgba(255,107,53,0.4);z-index:9998;max-width:380px;transform:translateX(120%);transition:transform 0.5s cubic-bezier(0.68,-0.55,0.265,1.55);cursor:pointer;}.new-order-banner.show{transform:translateX(0);}.new-order-banner .banner-icon{width:44px;height:44px;background:rgba(255,255,255,0.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;animation:tada 0.6s ease;}.new-order-banner .banner-close{position:absolute;top:8px;right:12px;background:none;border:none;color:rgba(255,255,255,0.7);font-size:0.8rem;cursor:pointer;} .animate-pulse-skeleton{animation:shimmerBG 1.5s infinite linear;background:linear-gradient(to right,var(--jibu-gray-100) 8%,var(--jibu-gray-200) 18%,var(--jibu-gray-100) 33%);background-size:800px 104px;}.skeleton-card{background:var(--jibu-white);border-radius:12px;overflow:hidden;box-shadow:var(--jibu-shadow-sm);}.skeleton-card .sk-image{height:160px;background:var(--jibu-gray-200);animation:shimmerBG 1.5s infinite linear;background:linear-gradient(to right,var(--jibu-gray-100) 8%,var(--jibu-gray-200) 18%,var(--jibu-gray-100) 33%);background-size:800px 104px;}.skeleton-card .sk-body{padding:16px;}.skeleton-card .sk-line{height:14px;margin-bottom:10px;border-radius:7px;animation:shimmerBG 1.5s infinite linear;background:linear-gradient(to right,var(--jibu-gray-100) 8%,var(--jibu-gray-200) 18%,var(--jibu-gray-100) 33%);background-size:800px 104px;}.skeleton-card .sk-line-sm{width:60%;}.skeleton-card .sk-line-md{width:80%;} .live-search-results{border-radius:12px;overflow:hidden;}.live-search-results a:last-child{border-bottom:none !important;}.live-search-results a:hover{background:rgba(255,107,53,0.05);} .cart-offcanvas{position:fixed;top:0;right:0;bottom:0;width:420px;max-width:100vw;background:var(--jibu-white);z-index:1060;transform:translateX(100%);transition:transform 0.35s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;box-shadow:-8px 0 40px rgba(0,0,0,0.15);}.cart-offcanvas.open{transform:translateX(0);}.cart-offcanvas-backdrop{position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:1055;opacity:0;pointer-events:none;transition:opacity 0.35s ease;backdrop-filter:blur(4px);}.cart-offcanvas-backdrop.show{opacity:1;pointer-events:all;}.cart-offcanvas-header{padding:16px 20px;border-bottom:1px solid var(--jibu-gray-200);display:flex;align-items:center;justify-content:space-between;}.cart-offcanvas-body{flex:1;overflow-y:auto;padding:16px 20px;}.cart-offcanvas-footer{padding:16px 20px;border-top:1px solid var(--jibu-gray-200);background:var(--jibu-gray-50);}.cart-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--jibu-gray-100);animation:fadeInUp 0.3s ease;}.cart-item:last-child{border-bottom:none;}.cart-item-image{width:50px;height:50px;border-radius:10px;object-fit:cover;flex-shrink:0;}.cart-item-info{flex:1;min-width:0;}.cart-item-name{font-weight:600;font-size:0.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.cart-item-price{font-size:0.8rem;color:var(--jibu-primary);font-weight:600;}.cart-item-qty{display:flex;align-items:center;gap:4px;}.cart-item-qty button{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--jibu-gray-300);background:var(--jibu-white);cursor:pointer;transition:all 0.2s;font-size:0.7rem;padding:0;}.cart-item-qty button:hover{background:var(--jibu-primary);color:#fff;border-color:var(--jibu-primary);}.cart-item-qty span{min-width:24px;text-align:center;font-weight:700;font-size:0.85rem;} .kds-order-card{transition:all 0.3s ease;border-left:4px solid var(--jibu-gray-300);position:relative;overflow:hidden;}.kds-order-card.new-order{animation:orderPulse 1.5s ease 3;border-left-color:var(--jibu-primary);background:linear-gradient(135deg,rgba(255,107,53,0.03),transparent);}.kds-order-card.urgent{border-left-color:var(--jibu-danger);}.kds-order-card .kds-timer{font-family:'Courier New',monospace;font-weight:700;font-size:0.9rem;padding:2px 10px;border-radius:50px;background:var(--jibu-gray-100);}.kds-order-card .kds-timer.urgent{color:var(--jibu-danger);background:rgba(220,53,69,0.1);animation:pulse 1.5s infinite;} .badge.badge-pulse{animation:pulseGlow 2s infinite;}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 14px;border-radius:50px;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.03em;transition:all 0.3s ease;}.status-badge .status-dot{width:6px;height:6px;border-radius:50%;display:inline-block;}.status-badge.status-pending{background:rgba(255,193,7,0.15);color:#c79500;}.status-badge.status-pending .status-dot{background:#ffc107;animation:pulse 1.5s infinite;}.status-badge.status-confirmed{background:rgba(13,110,253,0.15);color:#0a58ca;}.status-badge.status-confirmed .status-dot{background:#0d6efd;}.status-badge.status-preparing{background:rgba(253,126,20,0.15);color:#c95c00;}.status-badge.status-preparing .status-dot{background:#fd7e14;animation:pulse 1.5s infinite;}.status-badge.status-ready{background:rgba(13,157,88,0.15);color:#0a7a42;}.status-badge.status-ready .status-dot{background:#0F9D58;}.status-badge.status-out_for_delivery{background:rgba(111,66,193,0.15);color:#5a32a3;}.status-badge.status-out_for_delivery .status-dot{background:#6f42c1;animation:pulse 1.5s infinite;}.status-badge.status-delivered{background:rgba(13,157,88,0.15);color:#0a7a42;}.status-badge.status-delivered .status-dot{background:#0F9D58;}.status-badge.status-completed{background:rgba(13,157,88,0.15);color:#0a7a42;}.status-badge.status-completed .status-dot{background:#0F9D58;}.status-badge.status-cancelled{background:rgba(220,53,69,0.15);color:#a52834;}.status-badge.status-cancelled .status-dot{background:#dc3545;} .count-up{display:inline-block;transition:all 0.3s ease;}.animated-number{font-variant-numeric:tabular-nums;} .confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden;}.confetti-piece{position:absolute;width:10px;height:10px;top:-10px;animation:confettiFall linear forwards;}@keyframes confettiFall{0%{transform:translateY(0) rotate(0deg);opacity:1;}100%{transform:translateY(100vh) rotate(720deg);opacity:0;}} .progress-jibu{height:6px;border-radius:3px;overflow:hidden;background:var(--jibu-gray-200);}.progress-jibu .progress-bar-jibu{height:100%;background:linear-gradient(90deg,var(--jibu-primary),var(--jibu-primary-light));border-radius:3px;transition:width 0.8s ease;} .order-card-enhanced{transition:all 0.25s ease;border-left:4px solid transparent;position:relative;}.order-card-enhanced:hover{transform:translateX(4px);box-shadow:var(--jibu-shadow);}.order-card-enhanced .order-time{font-size:0.75rem;color:var(--jibu-gray-500);}.order-card-enhanced .order-items-preview{font-size:0.8rem;color:var(--jibu-gray-600);} .floating-cart-btn{position:fixed;bottom:80px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--jibu-primary);color:#fff;display:none;align-items:center;justify-content:center;font-size:1.3rem;box-shadow:0 4px 20px rgba(255,107,53,0.4);z-index:1020;cursor:pointer;border:none;transition:all 0.3s ease;}.floating-cart-btn:hover{transform:scale(1.1);box-shadow:0 6px 28px rgba(255,107,53,0.5);}.floating-cart-btn .cart-badge{position:absolute;top:-4px;right:-4px;background:var(--jibu-danger);color:#fff;font-size:0.65rem;padding:2px 6px;border-radius:50px;font-weight:700;min-width:20px;text-align:center;}@media (max-width:767.98px){.floating-cart-btn{display:flex;}} .table-status-indicator{width:12px;height:12px;border-radius:50%;display:inline-block;}.table-status-available{background:var(--jibu-success);}.table-status-occupied{background:var(--jibu-danger);animation:pulse 1.5s infinite;}.table-status-reserved{background:var(--jibu-warning);}.table-status-maintenance{background:var(--jibu-gray-400);} .toast-container .toast{margin-bottom:0.5rem;border-radius:12px !important;overflow:hidden;} .hover-lift{transition:transform 0.2s ease,box-shadow 0.2s ease;}.hover-lift:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,0.1);}.hover-glow:hover{box-shadow:0 0 20px rgba(255,107,53,0.2);}.hover-bg-light:hover{background:rgba(255,107,53,0.05);} .rating-interactive i.fa-star{cursor:pointer;transition:color 0.15s ease,transform 0.15s ease;}.rating-interactive i.fa-star:hover{transform:scale(1.2);} .notification-dot{width:8px;height:8px;border-radius:50%;background:var(--jibu-danger);position:absolute;top:0;right:-2px;animation:pulse 1.5s infinite;} .price-flash{animation:tada 0.6s ease;} .radar-dot{width:16px;height:16px;border-radius:50%;background:var(--jibu-primary);position:relative;}.radar-dot::after{content:'';position:absolute;top:-8px;left:-8px;width:32px;height:32px;border-radius:50%;border:2px solid var(--jibu-primary);animation:pulseGlow 2s infinite;} @keyframes statusFlash{0%{background-color:rgba(255,107,53,0.3);}100%{background-color:transparent;}}.status-changed{animation:statusFlash 2s ease;} .dark-mode-toggle{background:none;border:none;font-size:1.1rem;color:var(--jibu-gray-600);cursor:pointer;padding:6px 10px;border-radius:50px;transition:all 0.2s;}.dark-mode-toggle:hover{background:var(--jibu-gray-100);color:var(--jibu-primary);} .live-dot{width:10px;height:10px;border-radius:50%;background:#fff;display:inline-block;position:relative;box-shadow:0 0 8px rgba(255,255,255,.6);animation:livePulse 2s infinite;}.live-dot::before{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(255,255,255,.3);animation:waveRing 2s infinite;}.live-dot::after{content:'';position:absolute;inset:-10px;border-radius:50%;border:2px solid rgba(255,255,255,.15);animation:waveRing 2s infinite 1s;}@keyframes livePulse{0%,100%{transform:scale(1);box-shadow:0 0 8px rgba(255,255,255,.6);}50%{transform:scale(1.15);box-shadow:0 0 14px rgba(255,255,255,.9);}}@keyframes waveRing{0%{transform:scale(0.8);opacity:.8;}100%{transform:scale(2);opacity:0;}}.live-dot.offline{background:#dc3545;animation:none;box-shadow:none;}.live-dot.offline::before,.live-dot.offline::after{display:none;} .jibu-fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--jibu-primary);color:#fff;border:none;display:flex;align-items:center;justify-content:center;font-size:1.4rem;box-shadow:0 4px 20px rgba(255,107,53,0.4);cursor:pointer;z-index:1030;transition:all 0.3s ease;}.jibu-fab:hover{transform:scale(1.1);box-shadow:0 6px 28px rgba(255,107,53,0.5);}.jibu-fab .badge{position:absolute;top:-4px;right:-4px;} @media print{.dark-mode-toggle,#backToTop,.floating-cart-btn,.jibu-fab,.toast-container,.new-order-banner,.no-print{display:none !important;}} @media (max-width:575.98px){.cart-offcanvas{width:100vw;}.new-order-banner{left:10px;right:10px;max-width:none;}.order-timeline-modern .timeline-step{padding-left:50px;}} body{background-color:#f0efed !important;background-image:radial-gradient(ellipse at 20% 50%,rgba(252,96,17,.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(252,96,17,.02) 0%,transparent 50%);} .restaurants-hero{background:linear-gradient(135deg,#2A2B2C 0%,#4A4B4D 60%,#363738 100%);padding:5rem 0 6rem;position:relative;overflow:hidden;}.restaurants-hero h1{font-size:2rem;font-weight:800;color:#fff;letter-spacing:-0.5px;}.restaurants-hero p{color:rgba(255,255,255,.65);font-size:.95rem;max-width:500px;}.restaurants-hero .hero-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 16px;border-radius:50px;font-size:.78rem;font-weight:600;background:rgba(255,255,255,.1);color:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .2s;backdrop-filter:blur(4px);text-decoration:none;}.restaurants-hero .hero-chip:hover{background:var(--jibu-primary);border-color:var(--jibu-primary);transform:translateY(-1px);} .filter-sidebar{border:1px solid rgba(0,0,0,.06);border-radius:16px;background:#fffdf9;box-shadow:0 2px 12px rgba(0,0,0,.04);transition:all .3s ease;overflow:hidden;}.filter-sidebar:hover{box-shadow:0 8px 32px rgba(0,0,0,.07);border-color:rgba(252,96,17,.12);}.filter-sidebar .filter-header{padding:16px 18px 12px;border-bottom:1px solid rgba(0,0,0,.04);}.filter-sidebar .filter-body{padding:8px 18px 16px;}.filter-sidebar .filter-section{padding:10px 0;border-bottom:1px solid rgba(0,0,0,.04);}.filter-sidebar .filter-section:last-child{border-bottom:none;}.filter-sidebar .filter-section-title{font-size:.85rem;font-weight:800;color:var(--jibu-dark);margin-bottom:8px;display:flex;align-items:center;gap:6px;}.filter-sidebar .filter-section-title i{color:var(--jibu-primary);font-size:.85rem;}.filter-sidebar .form-select-sm,.filter-sidebar .form-check-label{font-size:.8rem;}.filter-sidebar .form-check-input:checked{background-color:var(--jibu-primary);border-color:var(--jibu-primary);}.filter-sidebar .form-check-input:focus{border-color:var(--jibu-primary);box-shadow:0 0 0 .2rem rgba(252,96,17,.15);}.filter-sidebar .form-select:focus{border-color:var(--jibu-primary);box-shadow:0 0 0 .2rem rgba(252,96,17,.15);} .restaurants-toolbar{background:rgba(255,255,255,.8);backdrop-filter:blur(12px);border-radius:14px;padding:12px 18px;margin-bottom:20px;border:1px solid rgba(0,0,0,.04);transition:box-shadow .3s;}.restaurants-toolbar .toolbar-label{font-size:.78rem;color:var(--jibu-gray-500);font-weight:500;}.restaurants-toolbar .toolbar-count{font-size:.85rem;font-weight:700;color:var(--jibu-dark);}.restaurants-toolbar .toolbar-btn{padding:6px 14px;border-radius:50px;font-size:.78rem;font-weight:600;border:1px solid var(--jibu-gray-200);background:#fff;color:var(--jibu-dark);transition:all .2s;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}.restaurants-toolbar .toolbar-btn:hover{border-color:var(--jibu-primary);color:var(--jibu-primary);background:rgba(252,96,17,.05);}.restaurants-toolbar .toolbar-btn.active{border-color:var(--jibu-primary);background:var(--jibu-primary);color:#fff;}.restaurants-toolbar .toolbar-select{border-radius:50px;font-size:.78rem;padding:6px 30px 6px 14px;border:1px solid var(--jibu-gray-200);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%234A4B4D' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 12px center;appearance:none;cursor:pointer;transition:all .2s;}.restaurants-toolbar .toolbar-select:hover{border-color:var(--jibu-primary);} .view-toggle .btn{padding:5px 10px;border-radius:8px;border:1px solid transparent;color:var(--jibu-gray-400);transition:all .2s;font-size:.85rem;}.view-toggle .btn:hover{color:var(--jibu-dark);background:rgba(0,0,0,.03);}.view-toggle .btn.active{color:var(--jibu-primary);background:rgba(252,96,17,.08);border-color:rgba(252,96,17,.15);} .filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px;}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 12px 4px 14px;border-radius:50px;font-size:.72rem;font-weight:600;background:rgba(252,96,17,.08);color:var(--jibu-primary);border:1px solid rgba(252,96,17,.15);transition:all .2s;cursor:default;}.filter-chip .remove-chip{cursor:pointer;opacity:.6;transition:opacity .2s;font-size:.7rem;}.filter-chip .remove-chip:hover{opacity:1;} .restaurant-card-modern{border:1px solid rgba(0,0,0,.06);border-radius:16px;overflow:hidden;background:#fff;transition:all .35s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px rgba(0,0,0,.07);height:100%;position:relative;}.restaurant-card-modern::before{content:'';position:absolute;inset:0;border-radius:16px;border:1px solid rgba(252,96,17,.08);opacity:0;transition:opacity .35s;pointer-events:none;}.restaurant-card-modern:hover{transform:translateY(-6px);box-shadow:0 12px 40px rgba(0,0,0,.1);border-color:rgba(252,96,17,.15);}.restaurant-card-modern:hover::before{opacity:1;}.restaurant-card-modern .card-media{position:relative;height:180px;overflow:hidden;}.restaurant-card-modern .card-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1);}.restaurant-card-modern:hover .card-media img{transform:scale(1.08);}.restaurant-card-modern .card-media .media-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.6));}.restaurant-card-modern .card-media .delivery-badge{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:50px;font-size:.7rem;font-weight:700;background:rgba(255,255,255,.92);backdrop-filter:blur(4px);color:var(--jibu-dark);box-shadow:0 2px 8px rgba(0,0,0,.1);}.restaurant-card-modern .card-media .delivery-badge i{color:var(--jibu-primary);font-size:.65rem;}.restaurant-card-modern .card-media .featured-badge{position:absolute;top:12px;right:12px;padding:4px 10px;border-radius:50px;font-size:.65rem;font-weight:700;background:linear-gradient(135deg,var(--jibu-primary),var(--jibu-primary-dark));color:#fff;box-shadow:0 2px 12px rgba(252,96,17,.35);}.restaurant-card-modern .card-media .distance-badge{position:absolute;bottom:12px;right:12px;padding:3px 10px;border-radius:50px;font-size:.68rem;font-weight:600;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);color:#fff;}.restaurant-card-modern .card-body{padding:16px;}.restaurant-card-modern .restaurant-logo{width:48px;height:48px;border-radius:12px;object-fit:cover;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.1);flex-shrink:0;margin-top:-36px;position:relative;z-index:2;background:#fff;}.restaurant-card-modern .restaurant-name{font-size:.95rem;font-weight:700;color:var(--jibu-dark);line-height:1.3;transition:color .2s;}.restaurant-card-modern:hover .restaurant-name{color:var(--jibu-primary);}.restaurant-card-modern .restaurant-meta{display:flex;align-items:center;gap:12px;margin-top:4px;}.restaurant-card-modern .restaurant-meta-item{font-size:.72rem;color:var(--jibu-gray-500);display:flex;align-items:center;gap:4px;}.restaurant-card-modern .restaurant-meta-item i{font-size:.6rem;color:var(--jibu-primary);}.restaurant-card-modern .rating-display{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:50px;background:rgba(255,215,0,.12);font-size:.75rem;font-weight:700;color:#b8960f;}.restaurant-card-modern .rating-display i{color:#f5b342;font-size:.65rem;}.restaurant-card-modern .restaurant-desc{font-size:.78rem;color:var(--jibu-gray-500);line-height:1.5;margin-top:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}.restaurant-card-modern .card-footer{padding:8px 16px 14px;background:transparent;border-top:1px solid rgba(0,0,0,.04);}.restaurant-card-modern .btn-view-menu{border-radius:50px;font-size:.78rem;font-weight:600;padding:8px 18px;background:linear-gradient(135deg,var(--jibu-primary),var(--jibu-primary-dark));color:#fff;border:none;transition:all .3s;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;}.restaurant-card-modern .btn-view-menu:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(252,96,17,.35);}.restaurant-card-modern .btn-view-menu:active{transform:translateY(0);} .card-skeleton{border:none;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.04);}.card-skeleton .sk-media{height:180px;background:linear-gradient(90deg,var(--jibu-gray-100) 25%,var(--jibu-gray-200) 50%,var(--jibu-gray-100) 75%);background-size:200% 100%;animation:shimmerBG 1.5s infinite;}.card-skeleton .sk-body{padding:16px;}.card-skeleton .sk-line{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--jibu-gray-100) 25%,var(--jibu-gray-200) 50%,var(--jibu-gray-100) 75%);background-size:200% 100%;animation:shimmerBG 1.5s infinite;margin-bottom:10px;}.card-skeleton .sk-line.w-40{width:40%;}.card-skeleton .sk-line.w-60{width:60%;}.card-skeleton .sk-line.w-80{width:80%;}.card-skeleton .sk-line.w-100{width:100%;}.card-skeleton .sk-line.sk-line-sm{height:8px;}.card-skeleton .sk-line.sk-line-lg{height:36px;border-radius:18px;}.card-skeleton .sk-avatar{width:48px;height:48px;border-radius:12px;background:linear-gradient(90deg,var(--jibu-gray-100) 25%,var(--jibu-gray-200) 50%,var(--jibu-gray-100) 75%);background-size:200% 100%;animation:shimmerBG 1.5s infinite;margin-top:-36px;position:relative;z-index:2;} .price-range{display:flex;align-items:center;gap:2px;font-size:.7rem;font-weight:700;color:var(--jibu-gray-400);}.price-range .dollar{color:var(--jibu-gray-300);transition:color .2s;}.price-range .dollar.active{color:var(--jibu-success);} .hours-badge{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:600;padding:2px 10px;border-radius:50px;}.hours-badge.open{background:#21540a;color:#fff;}.hours-badge.closed{background:rgba(220,53,69,.1);color:#a52834;}.hours-badge.closing{background:rgba(255,193,7,.15);color:#856404;}.hours-badge i{font-size:.55rem;} .promo-badge{position:absolute;bottom:12px;left:12px;display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:50px;font-size:.65rem;font-weight:700;background:linear-gradient(135deg,#ff6b35,#e0552b);color:#fff;box-shadow:0 2px 8px rgba(252,96,17,.3);z-index:2;} .delivery-fee-chip{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:600;padding:2px 8px;border-radius:4px;background:rgba(40,167,69,.08);color:#1e7e34;}.delivery-fee-chip.fee{background:rgba(252,96,17,.08);color:var(--jibu-primary);} .rating-count{font-size:.65rem;color:var(--jibu-gray-400);font-weight:500;} .cuisine-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;}.cuisine-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:50px;font-size:.65rem;font-weight:600;background:rgba(252,96,17,.07);color:var(--jibu-primary);transition:all .2s;}.cuisine-tag i{font-size:.55rem;} .min-order{font-size:.68rem;color:var(--jibu-gray-400);font-weight:500;}.min-order span{color:var(--jibu-dark);font-weight:600;} .card-actions{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid rgba(0,0,0,.04);} .btn-quick-add{width:32px;height:32px;border-radius:50%;border:1px solid var(--jibu-gray-200);background:#fff;color:var(--jibu-gray-400);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:.75rem;}.btn-quick-add:hover{background:var(--jibu-primary);border-color:var(--jibu-primary);color:#fff;} .quick-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;}.quick-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:8px;font-size:.72rem;font-weight:600;border:1.5px solid rgba(0,0,0,.07);background:#fff;color:var(--jibu-dark);cursor:pointer;transition:all .2s ease;width:100%;white-space:nowrap;}.quick-filter-btn i{font-size:.65rem;width:16px;text-align:center;color:var(--qfc,var(--jibu-primary));transition:color .2s;}.quick-filter-btn:hover{border-color:var(--qfc,var(--jibu-primary));background:color-mix(in srgb,var(--qfc,var(--jibu-primary)) 8%,#fff);transform:translateY(-1px);box-shadow:0 2px 6px rgba(0,0,0,.06);}.quick-filter-btn:hover i{color:var(--qfc,var(--jibu-primary));}.quick-filter-btn.active{border-color:var(--qfc,var(--jibu-primary));background:color-mix(in srgb,var(--qfc,var(--jibu-primary)) 14%,#fff);color:var(--qfc,var(--jibu-primary));box-shadow:0 2px 8px color-mix(in srgb,var(--qfc,var(--jibu-primary)) 20%,transparent);}.quick-filter-btn.active i{color:var(--qfc,var(--jibu-primary));} .price-tier-options{display:flex;gap:4px;}.price-tier-btn{flex:1;padding:6px 2px;border-radius:8px;font-size:.7rem;font-weight:700;text-align:center;border:1.5px solid var(--jibu-gray-200);background:#fff;color:var(--jibu-gray-400);cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:1px;line-height:1.2;}.price-tier-btn .tier-symbol{font-size:.7rem;font-weight:600;}.price-tier-btn .tier-sub{font-size:.6rem;font-weight:500;opacity:.65;}.price-tier-btn:hover{border-color:var(--jibu-gray-300);}.price-tier-btn.active{border-color:var(--jibu-primary);background:rgba(252,96,17,.08);color:var(--jibu-primary);} .restaurant-card-wrapper{animation:fadeInUp .5s ease forwards;opacity:0;}.restaurant-card-wrapper:nth-child(1){animation-delay:0s;}.restaurant-card-wrapper:nth-child(2){animation-delay:.06s;}.restaurant-card-wrapper:nth-child(3){animation-delay:.12s;}.restaurant-card-wrapper:nth-child(4){animation-delay:.18s;}.restaurant-card-wrapper:nth-child(5){animation-delay:.24s;}.restaurant-card-wrapper:nth-child(6){animation-delay:.3s;}.restaurant-card-wrapper:nth-child(7){animation-delay:.36s;}.restaurant-card-wrapper:nth-child(8){animation-delay:.42s;}.restaurant-card-wrapper:nth-child(9){animation-delay:.48s;}.restaurant-card-wrapper:nth-child(10){animation-delay:.54s;}.restaurant-card-wrapper:nth-child(11){animation-delay:.6s;}.restaurant-card-wrapper:nth-child(12){animation-delay:.66s;} .btn-near-me{position:relative;padding:6px 16px 6px 14px;border-radius:50px;font-size:.78rem;font-weight:600;border:1px solid rgba(252,96,17,.2);background:rgba(252,96,17,.06);color:var(--jibu-primary);transition:all .3s;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}.btn-near-me:hover{background:var(--jibu-primary);color:#fff;border-color:var(--jibu-primary);transform:translateY(-1px);box-shadow:0 4px 16px rgba(252,96,17,.25);}.btn-near-me.locating{pointer-events:none;opacity:.7;}.btn-near-me .locate-dot{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block;}.btn-near-me.locating .locate-dot{animation:pulse 1s infinite;} .filter-drawer-toggle{border-radius:50px;padding:8px 18px;font-size:.8rem;font-weight:600;border:1px solid var(--jibu-gray-200);background:#fff;color:var(--jibu-dark);transition:all .2s;display:inline-flex;align-items:center;gap:8px;}.filter-drawer-toggle:hover{border-color:var(--jibu-primary);color:var(--jibu-primary);}.filter-drawer-toggle .filter-count{background:var(--jibu-primary);color:#fff;border-radius:50px;padding:1px 7px;font-size:.65rem;font-weight:700;min-width:18px;text-align:center;} .filter-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1040;opacity:0;pointer-events:none;transition:opacity .3s;backdrop-filter:blur(4px);}.filter-overlay.show{opacity:1;pointer-events:all;}.filter-drawer{position:fixed;bottom:0;left:0;right:0;max-height:85vh;background:#fff;border-radius:20px 20px 0 0;z-index:1045;transform:translateY(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);overflow-y:auto;padding:20px;}.filter-drawer.show{transform:translateY(0);}.filter-drawer .filter-drawer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--jibu-gray-100);} .empty-state-modern{text-align:center;padding:60px 20px;}.empty-state-modern .empty-icon{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,rgba(252,96,17,.08),rgba(252,96,17,.03));display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:2.5rem;color:var(--jibu-primary);}.empty-state-modern h5{font-weight:700;color:var(--jibu-dark);margin-bottom:8px;}.empty-state-modern p{color:var(--jibu-gray-500);font-size:.88rem;max-width:360px;margin:0 auto 20px;} .loading-overlay{position:relative;min-height:300px;}.loading-overlay .loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:5;}.loading-overlay .loading-spinner .spinner{width:40px;height:40px;border-radius:50%;border:3px solid var(--jibu-gray-200);border-top-color:var(--jibu-primary);animation:spin .8s linear infinite;margin:0 auto 12px;}@keyframes spin{to{transform:rotate(360deg);}}.loading-overlay.loading-blur .restaurant-grid{opacity:.4;pointer-events:none;transition:opacity .3s;} .btn-clear-filters{border:none;background:none;color:var(--jibu-gray-500);font-size:.75rem;font-weight:600;padding:0;cursor:pointer;transition:color .2s;}.btn-clear-filters:hover{color:var(--jibu-danger);} .rating-option{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;cursor:pointer;transition:all .2s;}.rating-option:hover{background:rgba(252,96,17,.04);}.rating-option.active{background:rgba(252,96,17,.08);}.rating-option .rating-radio{width:16px;height:16px;border-radius:50%;border:2px solid var(--jibu-gray-300);display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0;}.rating-option.active .rating-radio{border-color:var(--jibu-primary);background:var(--jibu-primary);}.rating-option.active .rating-radio::after{content:'';width:6px;height:6px;border-radius:50%;background:#fff;} .pagination{gap:4px;}.pagination .page-link{border:none;border-radius:10px !important;margin:0;padding:8px 14px;font-size:.8rem;font-weight:600;color:var(--jibu-gray-500);transition:all .2s;box-shadow:none !important;}.pagination .page-link:hover{background:rgba(252,96,17,.08);color:var(--jibu-primary);}.pagination .page-item.active .page-link{background:linear-gradient(135deg,var(--jibu-primary),var(--jibu-primary-dark));color:#fff;box-shadow:0 4px 12px rgba(252,96,17,.25) !important;}.pagination .page-item.disabled .page-link{background:transparent;color:var(--jibu-gray-300);opacity:.5;}.pagination .page-item:first-child .page-link,.pagination .page-item:last-child .page-link{border-radius:10px !important;} @media (max-width:991.98px){.restaurants-hero{padding:1.5rem 0 1.5rem;}.restaurants-hero h1{font-size:1.5rem;}.restaurants-toolbar{flex-wrap:wrap;gap:8px;}}@media (max-width:767.98px){.restaurant-card-modern .card-media{height:160px;}.restaurants-toolbar .toolbar-label{display:none;}}  .card{border:none;box-shadow:0 2px 12px rgba(0,0,0,.06);border-radius:.85rem;transition:all .3s cubic-bezier(.4,0,.2,1);}.card:hover{box-shadow:0 8px 30px rgba(0,0,0,.08);}.card-header{background:transparent;border-bottom:1px solid rgba(0,0,0,.05);font-weight:700;font-size:.92rem;padding:1rem 1.25rem;border-radius:.85rem .85rem 0 0 !important;}.card-footer{background:transparent;border-top:1px solid rgba(0,0,0,.05);border-radius:0 0 .85rem .85rem !important;}.card-body{padding:1.25rem;} .stat-card{border-radius:1rem;padding:1.25rem;border:none;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;}.stat-card::after{content:'';position:absolute;top:-50%;right:-20%;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.06);}.stat-card:hover{transform:translateY(-3px);box-shadow:0 12px 35px rgba(0,0,0,.1);}.stat-card .stat-icon{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0;}.stat-card .stat-value{font-size:1.6rem;font-weight:800;line-height:1.2;letter-spacing:-.02em;}.stat-card .stat-label{font-size:.78rem;color:rgba(255,255,255,.7);font-weight:500;}.stat-card .stat-change{font-size:.7rem;font-weight:600;display:flex;align-items:center;gap:3px;} .status-badge-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 14px;border-radius:50px;font-size:.73rem;font-weight:600;line-height:1;}.status-badge-pill .sbp-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}.status-badge-pill.sbp-success{background:rgba(40,167,69,.12);color:#1a7a34;}.status-badge-pill.sbp-success .sbp-dot{background:#28a745;}.status-badge-pill.sbp-warning{background:rgba(255,193,7,.12);color:#b8860b;}.status-badge-pill.sbp-warning .sbp-dot{background:#ffc107;animation:pulse 1.5s infinite;}.status-badge-pill.sbp-danger{background:rgba(220,53,69,.12);color:#a52834;}.status-badge-pill.sbp-danger .sbp-dot{background:#dc3545;animation:pulse 1.5s infinite;}.status-badge-pill.sbp-info{background:rgba(23,162,184,.12);color:#0f7c8e;}.status-badge-pill.sbp-info .sbp-dot{background:#17a2b8;}.status-badge-pill.sbp-primary{background:rgba(252,96,17,.12);color:#c94d0a;}.status-badge-pill.sbp-primary .sbp-dot{background:#FC6011;animation:pulse 1.5s infinite;}.status-badge-pill.sbp-secondary{background:rgba(108,117,125,.12);color:#565d64;}.status-badge-pill.sbp-secondary .sbp-dot{background:#6c757d;} .btn{border-radius:.55rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;}.btn:active{transform:scale(.96);}.btn-jibu{background:linear-gradient(135deg,var(--jibu-primary),var(--jibu-primary-dark));border:none;color:#fff;}.btn-jibu:hover{background:linear-gradient(135deg,var(--jibu-primary-dark),var(--jibu-primary));color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px rgba(252,96,17,.3);}.btn-jibu:active{transform:translateY(0);}.btn-jibu-outline{border:2px solid var(--jibu-primary);color:var(--jibu-primary);background:transparent;}.btn-jibu-outline:hover{background:var(--jibu-primary);color:#fff;transform:translateY(-1px);box-shadow:0 4px 16px rgba(252,96,17,.2);}.btn-outline-jibu{border:2px solid var(--jibu-primary);color:var(--jibu-primary);background:transparent;}.btn-outline-jibu:hover{background:var(--jibu-primary);color:#fff;}.btn-sm{border-radius:.45rem;}.btn-lg{border-radius:.75rem;}.btn-rounded,.rounded-pill{border-radius:50rem !important;}.btn-ghost{background:transparent;border:none;color:var(--jibu-gray-500);}.btn-ghost:hover{background:rgba(0,0,0,.04);color:var(--jibu-dark);} .form-control,.form-select{border-radius:.6rem;border:1.5px solid rgba(0,0,0,.1);padding:.55rem 1rem;font-size:.9rem;transition:all .2s ease;}.form-control:focus,.form-select:focus{border-color:var(--jibu-primary);box-shadow:0 0 0 3px rgba(252,96,17,.12);}.form-control-sm{padding:.35rem .75rem;font-size:.82rem;border-radius:.45rem;}.form-control-lg{padding:.75rem 1.25rem;font-size:1rem;border-radius:.75rem;}.input-group-text{border-radius:.6rem 0 0 .6rem;border:1.5px solid rgba(0,0,0,.1);background:#f8f9fa;}.input-group .form-control{border-radius:0 .6rem .6rem 0;}.input-group .btn{border-radius:.6rem;}.form-check-input{border-radius:.25rem;border:1.5px solid rgba(0,0,0,.15);transition:all .15s;}.form-check-input:checked{background-color:var(--jibu-primary);border-color:var(--jibu-primary);}.form-check-input:focus{border-color:var(--jibu-primary);box-shadow:0 0 0 3px rgba(252,96,17,.12);}.form-switch .form-check-input{border-radius:2em;}.form-switch .form-check-input:checked{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");}.form-label{font-weight:600;font-size:.82rem;margin-bottom:.35rem;color:var(--jibu-dark);} .table{border-radius:.85rem;overflow:hidden;margin-bottom:0;}.table thead th{background:#f8f9fa;border-bottom:2px solid rgba(0,0,0,.05);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--jibu-gray-500);padding:.85rem 1rem;}.table td{padding:.8rem 1rem;vertical-align:middle;border-bottom:1px solid rgba(0,0,0,.04);font-size:.85rem;}.table tbody tr{transition:background .15s ease;}.table tbody tr:hover{background:rgba(252,96,17,.025);}.table tbody tr:last-child td{border-bottom:none;}.table-responsive{border-radius:.85rem;overflow:hidden;}.table-hover tbody tr:hover{background:rgba(252,96,17,.035);} .metric-card{background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:1rem;padding:1.25rem;transition:all .3s ease;}.metric-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.07);border-color:rgba(252,96,17,.1);}.metric-card .metric-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;}.metric-card .metric-value{font-size:1.4rem;font-weight:800;line-height:1.2;letter-spacing:-.02em;}.metric-card .metric-label{font-size:.75rem;color:var(--jibu-gray-500);font-weight:500;}.metric-card .metric-change{font-size:.68rem;font-weight:600;} .badge{font-weight:600;padding:.35em .7em;border-radius:50rem;}.badge-jibu{background:var(--jibu-primary);color:#fff;}.badge-soft-primary{background:rgba(252,96,17,.12);color:#c94d0a;}.badge-soft-success{background:rgba(40,167,69,.12);color:#1a7a34;}.badge-soft-warning{background:rgba(255,193,7,.12);color:#b8860b;}.badge-soft-danger{background:rgba(220,53,69,.12);color:#a52834;}.badge-soft-info{background:rgba(23,162,184,.12);color:#0f7c8e;}.badge-soft-secondary{background:rgba(108,117,125,.12);color:#565d64;} .page-header{margin-bottom:1.5rem;}.page-header h1,.page-header h2,.page-header h3{font-weight:800;color:var(--jibu-dark);letter-spacing:-.02em;}.page-header p{color:var(--jibu-gray-500);font-size:.9rem;max-width:540px;}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:.5rem;}.section-header h5{font-weight:700;color:var(--jibu-dark);margin:0;}.section-header .section-action{font-size:.8rem;font-weight:600;color:var(--jibu-primary);text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:all .2s;}.section-header .section-action:hover{gap:8px;} .list-group-item{border:none;border-bottom:1px solid rgba(0,0,0,.04);padding:.9rem 1.1rem;transition:background .15s;}.list-group-item:first-child{border-radius:.85rem .85rem 0 0;}.list-group-item:last-child{border-radius:0 0 .85rem .85rem;border-bottom:none;}.list-group-item:hover{background:rgba(252,96,17,.025);}.list-group-item-action{cursor:pointer;} .dropdown-menu{border:none;border-radius:.85rem;box-shadow:0 8px 40px rgba(0,0,0,.1);padding:.5rem;}.dropdown-menu .dropdown-item{border-radius:.55rem;padding:.55rem 1rem;font-size:.85rem;font-weight:500;transition:all .15s;}.dropdown-menu .dropdown-item:hover{background:rgba(252,96,17,.07);color:var(--jibu-primary);}.dropdown-menu .dropdown-item i{width:18px;text-align:center;}.dropdown-menu .dropdown-header{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--jibu-gray-500);padding:.5rem .75rem;}.dropdown-divider{margin:.3rem 0;opacity:.4;} .pagination .page-link{border:none;border-radius:.5rem !important;margin:0 2px;padding:.45rem .85rem;font-size:.8rem;font-weight:600;color:var(--jibu-gray-500);transition:all .2s;}.pagination .page-link:hover{background:rgba(252,96,17,.08);color:var(--jibu-primary);}.pagination .page-item.active .page-link{background:var(--jibu-primary);color:#fff;box-shadow:0 4px 12px rgba(252,96,17,.25);} .nav-tabs{border-bottom:1px solid rgba(0,0,0,.06);}.nav-tabs .nav-link{border:none;color:var(--jibu-gray-500);font-weight:600;font-size:.85rem;padding:.7rem 1.1rem;position:relative;transition:all .2s;}.nav-tabs .nav-link::after{content:'';position:absolute;bottom:-1px;left:50%;transform:translateX(-50%) scaleX(0);width:70%;height:3px;background:var(--jibu-primary);border-radius:3px 3px 0 0;transition:transform .2s;}.nav-tabs .nav-link:hover{color:var(--jibu-dark);}.nav-tabs .nav-link.active{color:var(--jibu-primary);background:transparent;}.nav-tabs .nav-link.active::after{transform:translateX(-50%) scaleX(1);}.tab-content{padding-top:1rem;} .alert{border:none;border-radius:.85rem;padding:1rem 1.25rem;font-size:.88rem;}.alert-primary{background:rgba(252,96,17,.1);color:#b33f00;}.alert-success{background:rgba(40,167,69,.1);color:#13682c;}.alert-danger{background:rgba(220,53,69,.1);color:#8a1c28;}.alert-warning{background:rgba(255,193,7,.1);color:#997404;}.alert-info{background:rgba(23,162,184,.1);color:#0a6c7a;} .progress{height:8px;border-radius:4px;background:rgba(0,0,0,.05);}.progress-bar{background:linear-gradient(90deg,var(--jibu-primary),var(--jibu-primary-light));border-radius:4px;} .modal-content{border:none;border-radius:1rem;box-shadow:0 24px 80px rgba(0,0,0,.15);}.modal-header{border-bottom:1px solid rgba(0,0,0,.05);padding:1.25rem 1.5rem;}.modal-header .btn-close{transition:transform .2s;}.modal-header .btn-close:hover{transform:rotate(90deg);}.modal-body{padding:1.5rem;}.modal-footer{border-top:1px solid rgba(0,0,0,.05);padding:1rem 1.5rem;} .empty-state{text-align:center;padding:3rem 1rem;}.empty-state .empty-icon{width:80px;height:80px;border-radius:50%;background:rgba(252,96,17,.07);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;font-size:2rem;color:var(--jibu-primary);}.empty-state h6{font-weight:700;color:var(--jibu-dark);}.empty-state p{color:var(--jibu-gray-500);font-size:.85rem;max-width:320px;margin:0 auto 1rem;} .toast-container .toast{border:none;border-radius:.85rem !important;box-shadow:0 8px 32px rgba(0,0,0,.1);overflow:hidden;}.toast-container .toast .toast-header{background:transparent;border-bottom:1px solid rgba(0,0,0,.04);font-weight:600;} .avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;}.avatar-sm{width:32px;height:32px;}.avatar-lg{width:56px;height:56px;}.avatar-xl{width:72px;height:72px;}.avatar-initials{display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--jibu-primary);color:#fff;font-weight:700;font-size:.9rem;} .spinner-jibu{width:40px;height:40px;border-radius:50%;border:3px solid rgba(252,96,17,.1);border-top-color:var(--jibu-primary);animation:spin .7s linear infinite;}.spinner-jibu-sm{width:20px;height:20px;border-width:2px;}.spinner-jibu-lg{width:56px;height:56px;border-width:4px;}@keyframes spin{to{transform:rotate(360deg);}} @keyframes pulse{0%,100%{opacity:1;}50%{opacity:.5;}} .text-muted{color:var(--jibu-gray-500) !important;}.text-jibu-primary{color:var(--jibu-primary) !important;}.bg-jibu-primary{background:var(--jibu-primary) !important;}.bg-jibu-soft{background:rgba(252,96,17,.06) !important;}.fw-800{font-weight:800;}.lh-1{line-height:1;}.ls-tight{letter-spacing:-.02em;}.tracking-wide{letter-spacing:.03em;} .form-control-lg,.form-select-lg{border-radius:.65rem !important;padding:.75rem 1.2rem !important;font-size:1rem !important;border-color:#dee2e6 !important;transition:border-color .2s ease,box-shadow .2s ease;}.form-control-lg:focus,.form-select-lg:focus,.form-control.border-2:focus,.form-select.border-2:focus{border-color:var(--jibu-primary) !important;box-shadow:0 0 0 3px rgba(252,96,17,.12) !important;}.form-control-lg.rounded-pill,.form-select-lg.rounded-pill{padding-left:1.2rem !important;padding-right:1.2rem !important;}.input-group .rounded-start-pill{border-top-left-radius:999px !important;border-bottom-left-radius:999px !important;}.input-group .rounded-end-pill{border-top-right-radius:999px !important;border-bottom-right-radius:999px !important;} .page-wrapper{padding:1.5rem 0;} .stat-card{border-radius:.85rem !important;padding:1.25rem;transition:transform .2s,box-shadow .2s;}.stat-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(0,0,0,.08) !important;}.stat-card .stat-icon{width:48px;height:48px;border-radius:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.2rem;}.admin-card{border-radius:.85rem !important;overflow:hidden;transition:transform .2s,box-shadow .2s;}.admin-card:hover{box-shadow:0 8px 25px rgba(0,0,0,.08) !important;}.admin-card .card-header{border-bottom:1px solid #e9ecef;padding:1rem 1.25rem;}.admin-table{margin-bottom:0;width:100%;}.admin-table thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#6c757d;font-weight:700;padding:.75rem 1rem;border-bottom:2px solid #e9ecef;background:#fafafa;}.admin-table td{padding:.75rem 1rem;vertical-align:middle;border-bottom:1px solid #f0efed;}.admin-table tbody tr:last-child td{border-bottom:none;}.admin-table tbody tr:hover{background:rgba(252,96,17,.03);} @media (max-width:767.98px){.card-body{padding:1rem;}.stat-card{padding:1rem;}.stat-card .stat-value{font-size:1.3rem;}.admin-page{padding:.75rem !important;}.table td,.table th{padding:.6rem .75rem;}.modal-body{padding:1rem;}.nav-tabs .nav-link{font-size:.8rem;padding:.6rem .8rem;}}