[x-cloak] { display: none !important; }
.sidebar-expanded { margin-left: 240px; }
.sidebar-collapsed { margin-left: 48px; }
html.sidebar-is-collapsed .sidebar-expanded,
html.sidebar-is-collapsed .sidebar-collapsed { margin-left: 48px; }
html.sidebar-is-expanded .sidebar-expanded,
html.sidebar-is-expanded .sidebar-collapsed { margin-left: 240px; }
html.sidebar-is-collapsed aside.fixed { width: 48px; }
html.sidebar-is-expanded aside.fixed { width: 240px; }
html.sidebar-is-collapsed aside.fixed > div:first-child,
html.sidebar-is-collapsed aside.fixed nav a,
html.sidebar-is-collapsed aside.fixed .border-t a,
html.sidebar-is-collapsed aside.fixed .border-t button {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
    gap: 0;
}
@media (max-width: 1023px) {
    .sidebar-expanded, .sidebar-collapsed,
    html.sidebar-is-collapsed .sidebar-expanded,
    html.sidebar-is-collapsed .sidebar-collapsed,
    html.sidebar-is-expanded .sidebar-expanded,
    html.sidebar-is-expanded .sidebar-collapsed { margin-left: 0; }
    html.sidebar-is-collapsed aside.fixed,
    html.sidebar-is-expanded aside.fixed { width: 240px; }
}
/* Driver.js tour — brand styling */
.driver-overlay { transition: opacity 0.3s ease !important; }
.driver-active-element { transition: box-shadow 0.3s ease !important; }
.driver-popover {
    font-family: 'Inter', system-ui, sans-serif;
    background: #fff;
    border-radius: 1rem;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 20px 40px -8px rgba(25,47,91,0.15), 0 8px 16px -4px rgba(0,0,0,0.06);
    padding: 0;
    max-width: 340px;
    animation: sgt-popover-in 0.25s cubic-bezier(0.16,1,0.3,1);
}
@keyframes sgt-popover-in {
    from { opacity: 0; transform: translateY(6px) scale(0.97); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
.driver-popover-arrow { display: none; }
.driver-popover .driver-popover-title {
    font-size: 0.9375rem;
    font-weight: 700;
    color: #1e293b;
    padding: 1.25rem 1.25rem 0;
    margin: 0;
    line-height: 1.3;
}
.driver-popover .driver-popover-description {
    font-size: 0.8125rem;
    font-weight: 400;
    color: #64748b;
    line-height: 1.6;
    padding: 0.5rem 1.25rem 0;
    margin: 0;
}
.driver-popover-close-btn {
    position: absolute;
    top: 0.75rem; right: 0.75rem;
    width: 1.5rem; height: 1.5rem;
    display: flex; align-items: center; justify-content: center;
    border-radius: 0.5rem;
    color: #cbd5e1;
    font-size: 1.125rem;
    transition: all 0.15s;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
}
.driver-popover-close-btn:hover { color: #64748b; background: #f1f5f9; }
.driver-popover-footer {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem 1.25rem;
    margin: 0;
}
.driver-popover-progress-text {
    font-size: 0.6875rem;
    font-weight: 600;
    color: #94a3b8;
    background: #f1f5f9;
    padding: 0.2rem 0.5rem;
    border-radius: 0.375rem;
    margin-right: auto;
    letter-spacing: 0.02em;
}
.driver-popover-navigation-btns { display: flex; gap: 0.375rem; }
.driver-popover-footer button {
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    border-radius: 0.75rem !important;
    padding: 0.5rem 1rem !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    border: none !important;
    line-height: 1.3 !important;
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.driver-popover-footer .driver-popover-prev-btn {
    background: #fff;
    color: #64748b;
    border: 1px solid #e2e8f0;
}
.driver-popover-footer .driver-popover-prev-btn:hover { background: #f8fafc; color: #475569; border-color: #cbd5e1; }
.driver-popover-footer .driver-popover-next-btn {
    background: #192F5B;
    color: #fff;
}
.driver-popover-footer .driver-popover-next-btn:hover { background: #213F75; }
.driver-popover-footer button:active { transform: scale(0.97); }
/* Tour interactive step — pulse animation */
@keyframes sgt-tour-pulse {
    0%, 100% { box-shadow: 0 0 0 3px rgba(25, 47, 91, 0.6); }
    50% { box-shadow: 0 0 0 7px rgba(25, 47, 91, 0.15); }
}
.sgt-tour-pulse {
    animation: sgt-tour-pulse 1.2s ease-in-out infinite;
    position: relative;
    z-index: 100000;
    border-radius: 0.5rem;
}
